Skip to content

Commit 1e041eb

Browse files
committed
Merge branch 'linux-new-go-impl' into dev
2 parents fe54f7f + 5333cfb commit 1e041eb

26 files changed

Lines changed: 908 additions & 892 deletions

File tree

.gitmodules

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@
33
url = https://github.com/kdroidFilter/LibWindowsTray.git
44
[submodule "linuxlib"]
55
path = linuxlib
6-
url = https://github.com/kdroidFilter/LibLinuxTray.git
6+
url = https://github.com/kdroidFilter/ComposeNativeTrayLinuxLib

demo/build.gradle.kts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ kotlin {
3030

3131
compose.desktop {
3232
application {
33-
mainClass = "com.kdroid.composetray.demo.TrayAppDemoKt"
33+
mainClass = "com.kdroid.composetray.demo.DynamicTrayMenuKt"
3434
nativeDistributions {
3535
targetFormats(TargetFormat.Msi, TargetFormat.Deb, TargetFormat.Dmg)
3636
packageName = "tray-demo"
@@ -65,7 +65,7 @@ tasks.register("buildAndRunDemo") {
6565
}
6666

6767
linuxDebConfig {
68-
startupWMClass.set("com.kdroid.composetray.demo.TrayAppDemoKt")
68+
startupWMClass.set("com.kdroid.composetray.demo.DynamicTrayMenuKt")
6969
addComposeNativeTrayDeps()
7070
enableT64AlternativeDeps = true
7171
}

demo/src/jvmMain/kotlin/com/kdroid/composetray/demo/TrayAppDemo.kt

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import androidx.compose.foundation.layout.*
66
import androidx.compose.foundation.shape.RoundedCornerShape
77
import androidx.compose.material.icons.Icons
88
import androidx.compose.material.icons.filled.Book
9+
import androidx.compose.material.icons.filled.Window
910
import androidx.compose.material3.*
1011
import androidx.compose.runtime.*
1112
import androidx.compose.ui.Alignment.Companion.Center
@@ -17,6 +18,7 @@ import androidx.compose.ui.window.Window
1718
import androidx.compose.ui.window.application
1819
import androidx.compose.ui.window.rememberWindowState
1920
import com.kdroid.composetray.tray.api.ExperimentalTrayAppApi
21+
import com.kdroid.composetray.tray.api.Tray
2022
import com.kdroid.composetray.tray.api.TrayApp
2123
import com.kdroid.composetray.utils.WindowRaise
2224
import composenativetray.demo.generated.resources.Res
@@ -32,9 +34,10 @@ fun main() {
3234
application {
3335
var isWindowVisible by remember { mutableStateOf(true) }
3436
var textFieldValue by remember { mutableStateOf("") }
37+
var textFieldValue2 by remember { mutableStateOf("") }
3538

3639
TrayApp(
37-
icon = Icons.Default.Book,
40+
icon = Icons.Default.Window,
3841
tooltip = "TrayAppDemo",
3942
windowSize = DpSize(300.dp, 500.dp),
4043
visibleOnStart = true,
@@ -63,15 +66,16 @@ fun main() {
6366
Column(verticalArrangement = Arrangement.spacedBy(8.dp)) {
6467
Text("Your futur awesome compagnon App !", color = MaterialTheme.colorScheme.onBackground)
6568
TextField(
66-
value = textFieldValue,
67-
onValueChange = { textFieldValue = it },
69+
value = textFieldValue2,
70+
onValueChange = { textFieldValue2 = it },
6871
placeholder = { Text("Enter some text") }
6972
)
7073
}
7174
}
7275
}
7376
}
7477

78+
7579
if (isWindowVisible) {
7680
val state = rememberWindowState()
7781

linuxlib

maclib/tray.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ TRAY_API struct tray *tray_get_instance(void);
5858
TRAY_API int tray_init (struct tray *tray); /* 0 = OK, <0 = error */
5959
TRAY_API int tray_loop (int blocking); /* 0 = running, -1 = finished */
6060
TRAY_API void tray_update(struct tray *tray); /* refresh icon / menu */
61+
TRAY_API void tray_dispose(struct tray *tray); /* dispose a single instance */
6162
TRAY_API void tray_exit (void); /* free everything and exit */
6263

6364
/* -------------------------------------------------------------------------- */
@@ -74,6 +75,10 @@ TRAY_API const char *tray_get_notification_icons_region(void);
7475
TRAY_API int tray_get_status_item_position(int *x, int *y);
7576
TRAY_API const char *tray_get_status_item_region(void);
7677

78+
/* macOS: per-instance variants */
79+
TRAY_API int tray_get_status_item_position_for(struct tray *tray, int *x, int *y);
80+
TRAY_API const char *tray_get_status_item_region_for(struct tray *tray);
81+
7782
#ifdef __cplusplus
7883
} /* extern "C" */
7984
#endif

0 commit comments

Comments
 (0)