Selaa lähdekoodia

improvements

improvements
Milan Jurkulak 2 vuotta sitten
vanhempi
sitoutus
8236c19709

+ 5 - 5
src/main/kotlin/eu/mjdev/desktop/Main.kt

@@ -5,7 +5,6 @@ import androidx.compose.runtime.CompositionLocalProvider
 import androidx.compose.runtime.rememberCoroutineScope
 import androidx.compose.ui.unit.dp
 import androidx.compose.ui.window.application
-import eu.mjdev.dadb.helpers.log
 import eu.mjdev.desktop.components.appsmenu.AppsMenu
 import eu.mjdev.desktop.components.controlcenter.ControlCenter
 import eu.mjdev.desktop.components.desktoppanel.DesktopPanel
@@ -22,14 +21,14 @@ fun main() = application(
         LocalDesktop provides DesktopProvider(scope)
     ) {
         MaterialTheme {
-            val api: DesktopProvider = LocalDesktop.current
+//            val api: DesktopProvider = LocalDesktop.current
             val controlCenterState = rememberVisibilityState()
             val panelState = rememberVisibilityState()
             val menuState = rememberVisibilityState()
             // todo : test
-            api.askGemini("How are you today?").let {
-                log { "Gemini answer: $it" }
-            }
+//            api.askGemini("How are you today?").let {
+//                log { "Gemini answer: $it" }
+//            }
             // todo : test
             MainWindow(
                 panelState = panelState,
@@ -38,6 +37,7 @@ fun main() = application(
             )
             DesktopPanel(
                 panelState = panelState,
+                menuState = menuState,
                 onMenuIconClicked = {
                     menuState.toggle()
                 }

+ 1 - 1
src/main/kotlin/eu/mjdev/desktop/components/appsmenu/AppsMenu.kt

@@ -108,7 +108,7 @@ fun AppsMenu(
                                     iconTint = Color.White
                                 ) { category ->
                                     items.value = api.appsProvider.categoriesAndApps[category.name]
-                                        ?: emptyList()
+                                        ?.sortedBy { it.name } ?: emptyList()
                                 }
                             }
                         }

+ 2 - 1
src/main/kotlin/eu/mjdev/desktop/components/desktoppanel/DesktopPanel.kt

@@ -52,6 +52,7 @@ fun DesktopPanel(
     panelState: VisibilityState = rememberVisibilityState(),
     enter: EnterTransition = fadeIn() + slideInVertically(initialOffsetY = { it }),
     exit: ExitTransition = slideOutVertically(targetOffsetY = { it }) + fadeOut(),
+    menuState: VisibilityState = rememberVisibilityState(),
     windowState: TopWindowState = rememberTopWindowState(
         position = api.currentUser.theme.panelLocation.alignment,
         size = api.containerSize.copy(height = panelHeight),
@@ -76,7 +77,7 @@ fun DesktopPanel(
 ) = TopWindow(
     windowState = windowState,
     onFocusChange = { hasFocus ->
-        if (!hasFocus) panelState.hide()
+        if (!hasFocus && !menuState.isVisible) panelState.hide()
     }
 ) {
     SlidingMenu(

+ 1 - 1
src/main/kotlin/eu/mjdev/desktop/windows/MainWindow.kt

@@ -21,7 +21,7 @@ import eu.mjdev.desktop.provider.DesktopProvider
 import eu.mjdev.desktop.provider.DesktopProvider.Companion.LocalDesktop
 
 @OptIn(ExperimentalFoundationApi::class)
-@Suppress("FunctionName")
+@Suppress("FunctionName", "DEPRECATION")
 @Preview
 @Composable
 fun MainWindow(