Web UI: width detection
This commit is contained in:
2 files changed
+18
-2
No files matched your search
@@ -1,14 +1,30 @@
|
||||
package com.jaytux.phoebench.clients
|
||||
|
||||
import androidx.compose.runtime.CompositionLocal
|
||||
import androidx.compose.runtime.CompositionLocalProvider
|
||||
import androidx.compose.runtime.LaunchedEffect
|
||||
import androidx.compose.runtime.getValue
|
||||
import androidx.compose.runtime.mutableStateOf
|
||||
import androidx.compose.runtime.remember
|
||||
import androidx.compose.runtime.setValue
|
||||
import androidx.compose.ui.ExperimentalComposeUiApi
|
||||
import androidx.compose.ui.platform.LocalWindowInfo
|
||||
import androidx.compose.ui.unit.dp
|
||||
import androidx.compose.ui.window.ComposeViewport
|
||||
import com.jaytux.phoebench.clients.theme.GlobalUiMode
|
||||
import com.jaytux.phoebench.clients.theme.UiMode
|
||||
import kotlinx.browser.document
|
||||
import kotlinx.browser.window
|
||||
|
||||
@OptIn(ExperimentalComposeUiApi::class)
|
||||
suspend fun main() {
|
||||
config = loadConfig()
|
||||
ComposeViewport(document.body!!) {
|
||||
App()
|
||||
val width = LocalWindowInfo.current.containerSize
|
||||
var mode by remember(width) { mutableStateOf(UiMode.fromDp(width.width.dp)) }
|
||||
|
||||
CompositionLocalProvider(GlobalUiMode provides mode) {
|
||||
App()
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user