some fixes & improvements

This commit is contained in:
2025-09-28 22:09:17 +03:00
parent 402e71cb60
commit 5266bf2dd8
7 changed files with 34 additions and 20 deletions
+1 -1
View File
@@ -2,7 +2,7 @@ FROM gradle:8.14.3-jdk21 AS builder
COPY --chown=gradle:gradle . /home/gradle/src COPY --chown=gradle:gradle . /home/gradle/src
WORKDIR /home/gradle/src WORKDIR /home/gradle/src
RUN gradle wasmJsBrowserDistribution --no-daemon RUN gradle composeCompatibilityBrowserDistribution --no-daemon
FROM nginx:alpine FROM nginx:alpine
COPY --from=builder /home/gradle/src/composeApp/build/dist/wasmJs/productionExecutable/ /usr/share/nginx/html COPY --from=builder /home/gradle/src/composeApp/build/dist/wasmJs/productionExecutable/ /usr/share/nginx/html
+6 -1
View File
@@ -26,6 +26,10 @@ tasks.withType<KotlinCompile>().configureEach {
} }
} }
compose.resources {
nameOfResClass = "R"
}
kotlin { kotlin {
androidTarget { androidTarget {
compilerOptions { compilerOptions {
@@ -74,7 +78,8 @@ kotlin {
commonMain.dependencies { commonMain.dependencies {
implementation(compose.runtime) implementation(compose.runtime)
implementation(compose.foundation) implementation(compose.foundation)
implementation(compose.material3) // implementation(compose.material3)
implementation(libs.material3)
implementation(compose.materialIconsExtended) implementation(compose.materialIconsExtended)
implementation(compose.components.resources) implementation(compose.components.resources)
implementation(libs.androidx.navigation.compose) implementation(libs.androidx.navigation.compose)
@@ -1,16 +1,11 @@
package dev.meloda.overseerr package dev.meloda.overseerr
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.width
import androidx.compose.material3.Surface import androidx.compose.material3.Surface
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.getValue import androidx.compose.runtime.getValue
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.unit.dp
import androidx.lifecycle.compose.collectAsStateWithLifecycle import androidx.lifecycle.compose.collectAsStateWithLifecycle
import dev.meloda.overseerr.datastore.SettingsController import dev.meloda.overseerr.datastore.SettingsController
import dev.meloda.overseerr.screens.main.MainScreen import dev.meloda.overseerr.screens.main.MainScreen
@@ -34,18 +29,9 @@ internal fun App() {
settingsController.loadAppSettings() settingsController.loadAppSettings()
} }
Box( AppTheme(themeMode = settings.themeMode) {
modifier = Modifier.fillMaxSize(), Surface(modifier = Modifier.fillMaxSize()) {
contentAlignment = Alignment.Center MainScreen()
) {
AppTheme(themeMode = settings.themeMode) {
Surface(
modifier = Modifier
.width(360.dp)
.height(640.dp)
) {
MainScreen()
}
} }
} }
} }
@@ -39,6 +39,7 @@ import dev.meloda.overseerr.screens.requests.presentation.RequestsScreen
import dev.meloda.overseerr.screens.settings.presentation.SettingsScreen import dev.meloda.overseerr.screens.settings.presentation.SettingsScreen
import dev.meloda.overseerr.theme.LocalHazeState import dev.meloda.overseerr.theme.LocalHazeState
import dev.meloda.overseerr.theme.LocalPadding import dev.meloda.overseerr.theme.LocalPadding
import dev.meloda.overseerr.theme.NavigationSettings
@OptIn(ExperimentalMaterial3Api::class, ExperimentalHazeMaterialsApi::class) @OptIn(ExperimentalMaterial3Api::class, ExperimentalHazeMaterialsApi::class)
@Composable @Composable
@@ -46,6 +47,7 @@ fun MainScreen() {
val hazeState = remember { HazeState(true) } val hazeState = remember { HazeState(true) }
val navController = rememberNavController() val navController = rememberNavController()
NavigationSettings(navController)
val navigationItems = remember { val navigationItems = remember {
listOf( listOf(
+19 -1
View File
@@ -1,4 +1,11 @@
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.width
import androidx.compose.ui.Alignment
import androidx.compose.ui.ExperimentalComposeUiApi import androidx.compose.ui.ExperimentalComposeUiApi
import androidx.compose.ui.Modifier
import androidx.compose.ui.unit.dp
import androidx.compose.ui.window.ComposeViewport import androidx.compose.ui.window.ComposeViewport
import dev.meloda.overseerr.App import dev.meloda.overseerr.App
import dev.meloda.overseerr.di.appModule import dev.meloda.overseerr.di.appModule
@@ -9,7 +16,18 @@ import org.koin.compose.KoinApplication
fun main() { fun main() {
ComposeViewport(document.body!!) { ComposeViewport(document.body!!) {
KoinApplication(application = { modules(appModule) }) { KoinApplication(application = { modules(appModule) }) {
App() Box(
modifier = Modifier.fillMaxSize(),
contentAlignment = Alignment.Center
) {
Box(
modifier = Modifier
.width(360.dp)
.height(640.dp)
) {
App()
}
}
} }
} }
} }
+1
View File
@@ -9,6 +9,7 @@ org.gradle.parallel=true
kotlin.code.style=official kotlin.code.style=official
kotlin.daemon.jvmargs=-Xmx4G kotlin.daemon.jvmargs=-Xmx4G
kotlin.native.ignoreDisabledTargets=true kotlin.native.ignoreDisabledTargets=true
kotlin.native.enableKlibsCrossCompilation=true
#Android #Android
android.useAndroidX=true android.useAndroidX=true
+2
View File
@@ -12,6 +12,7 @@ kotlinx-coroutines = "1.10.2"
ktor = "3.3.0" ktor = "3.3.0"
kotlinx-serialization = "1.9.0" kotlinx-serialization = "1.9.0"
koin = "4.1.1" koin = "4.1.1"
material3 = "1.9.0-beta06"
viewmodel-compose = "2.9.4" viewmodel-compose = "2.9.4"
haze = "1.6.10" haze = "1.6.10"
kstore = "1.0.0" kstore = "1.0.0"
@@ -50,6 +51,7 @@ kstore = { module = "io.github.xxfast:kstore", version.ref = "kstore" }
kstore-file = { module = "io.github.xxfast:kstore-file", version.ref = "kstore" } kstore-file = { module = "io.github.xxfast:kstore-file", version.ref = "kstore" }
kstore-storage = { module = "io.github.xxfast:kstore-storage", version.ref = "kstore" } kstore-storage = { module = "io.github.xxfast:kstore-storage", version.ref = "kstore" }
appdirs = { module = "net.harawata:appdirs", version.ref = "appdirs" } appdirs = { module = "net.harawata:appdirs", version.ref = "appdirs" }
material3 = { module = "org.jetbrains.compose.material3:material3", version.ref = "material3" }
napier = { module = "io.github.aakira:napier", version.ref = "napier" } napier = { module = "io.github.aakira:napier", version.ref = "napier" }
[plugins] [plugins]