File tree Expand file tree Collapse file tree 4 files changed +25
-17
lines changed Expand file tree Collapse file tree 4 files changed +25
-17
lines changed Original file line number Diff line number Diff line change @@ -6,6 +6,7 @@ plugins {
66 alias(libs.plugins.android.application) apply false
77 alias(libs.plugins.android.library) apply false
88 alias(libs.plugins.compose.compiler) apply false
9+ alias(libs.plugins.compose.hotReload) apply false
910 alias(libs.plugins.jetbrains.compose) apply false
1011 alias(libs.plugins.jetbrains.dokka) apply false
1112 alias(libs.plugins.kotlin.multiplatform) apply false
Original file line number Diff line number Diff line change @@ -13,6 +13,7 @@ import java.util.Properties
1313plugins {
1414 alias(libs.plugins.android.application)
1515 alias(libs.plugins.compose.compiler)
16+ alias(libs.plugins.compose.hotReload)
1617 alias(libs.plugins.jetbrains.compose)
1718 alias(libs.plugins.kotlin.multiplatform)
1819 alias(libs.plugins.spotless)
@@ -258,3 +259,7 @@ val generateVersionInfo by tasks.registering {
258259tasks.named(" generateComposeResClass" ).configure {
259260 dependsOn(generateVersionInfo)
260261}
262+
263+ tasks.named<JavaExec >(" hotRunDesktop" ) {
264+ jvmArgs(" -Dapp.mode=hot" )
265+ }
Original file line number Diff line number Diff line change @@ -13,20 +13,20 @@ import top.yukonga.miuix.kmp.example.generated.resources.Res
1313import top.yukonga.miuix.kmp.example.generated.resources.icon
1414import java.awt.Dimension
1515
16- fun main () =
17- application {
18- val state =
19- rememberWindowState(
20- size = DpSize ( 420 .dp, 840 .dp),
21- position = WindowPosition . Aligned ( Alignment . Center ),
22- )
23- Window (
24- state = state ,
25- onCloseRequest = ::exitApplication ,
26- title = " Miuix" ,
27- icon = painterResource(Res .drawable.icon),
28- ) {
29- window.minimumSize = Dimension (300 , 600 )
30- App ()
31- }
32- }
16+ fun main () = application {
17+ val state = rememberWindowState(
18+ size = DpSize ( 420 .dp, 840 .dp),
19+ position = WindowPosition . Aligned ( Alignment . Center ),
20+ )
21+ val isHotReloadMode = System .getProperty( " app.mode " ) == " hot "
22+ Window (
23+ state = state,
24+ onCloseRequest = ::exitApplication ,
25+ alwaysOnTop = isHotReloadMode ,
26+ title = " Miuix" ,
27+ icon = painterResource(Res .drawable.icon),
28+ ) {
29+ window.minimumSize = Dimension (300 , 600 )
30+ App ()
31+ }
32+ }
Original file line number Diff line number Diff line change @@ -3,6 +3,7 @@ android-gradle-plugin = "8.12.0"
33androidx-activity-compose = " 1.10.1"
44androidx-window = " 1.4.0"
55androidx-graphics-shapes = " 1.0.0-alpha09"
6+ compose-hotReload = " 1.0.0-beta04"
67compose-plugin = " 1.8.2"
78dokka = " 2.0.0"
89kotlin = " 2.2.0"
@@ -18,6 +19,7 @@ compose-window-size = { module = "org.jetbrains.compose.material3:material3-wind
1819android-application = { id = " com.android.application" , version.ref = " android-gradle-plugin" }
1920android-library = { id = " com.android.library" , version.ref = " android-gradle-plugin" }
2021compose-compiler = { id = " org.jetbrains.kotlin.plugin.compose" , version.ref = " kotlin" }
22+ compose-hotReload = { id = " org.jetbrains.compose.hot-reload" , version.ref = " compose-hotReload" }
2123jetbrains-compose = { id = " org.jetbrains.compose" , version.ref = " compose-plugin" }
2224jetbrains-dokka = { id = " org.jetbrains.dokka" , version.ref = " dokka" }
2325kotlin-multiplatform = { id = " org.jetbrains.kotlin.multiplatform" , version.ref = " kotlin" }
You can’t perform that action at this time.
0 commit comments