Releases: kdroidFilter/ComposeNativeTray
1.2.0
What's Changed
JNA completely removed ? JNI everywhere
The entire native layer has been rewritten. JNA has been fully removed on all three platforms (macOS, Linux, Windows) and replaced by JNI.
Linux native rewritten in C ~20x smaller
The Linux native library has been rewritten from Go to C, reducing the packaged binary size by approximately 20x.
Linux ARM64 support
Native Linux libraries are now compiled for both x86_64 and aarch64, bringing first-class support for Linux ARM64 devices.
GraalVM native-image compatibility
ComposeNativeTray is now compatible with Nucleus GraalVM native-image compilation. Reachability metadata, native-image properties, and a dedicated NativeLibraryLoader have been added to ensure proper resource extraction at runtime.
Build system restructured
- Native sources moved to
src/native/{macos,windows,linux}/with per-platform build scripts - Kotlin sources migrated from
commonMaintojvmMain - New reusable CI workflow for native builds
- Added Detekt + Ktlint for code quality
- Upgraded to Gradle 9.4.1
Bug fixes
- Fixed macOS Space behavior dispatch on main thread
- Fixed GraalVM JNI method lookup via
FindClasson interfaces
Full Changelog: v1.1.0...v1.2.0
1.1.0
What's Changed
- Fix macOS tray toggle and Space switching by @kdroidFilter in #373
- TrayApp Api is now in Alpha !
Full Changelog: v1.0.11...v1.1.0
1.0.11
What's Changed
- Remove off-screen initial position to fix RAM usage spike by @kdroidFilter in #372
Full Changelog: v1.0.10...v1.0.11
1.0.10
What's Changed
- Bump kotlin from 2.3.0 to 2.3.10 by @dependabot[bot] in #368
- Fix macOS context menu always appearing in dark mode by @kdroidFilter in #369
- Fix macOS window not appearing when switching Spaces by @kdroidFilter in #370
- Fix Windows tray window position on first display by @kdroidFilter in #371
Full Changelog: v1.0.9...v1.0.10
1.0.9
What's Changed
- Fix tray icon not appearing on Windows 10 by @kdroidFilter in #364
- Fix Windows build ignoring NATIVE_LIBS_OUTPUT_DIR by @kdroidFilter in #365
Full Changelog: v1.0.8...v1.0.9
1.0.8
What's Changed
- Fix macOS tray icon appearance on multi-monitor by @kdroidFilter in #359
- Add ProGuard/R8 rules documentation by @kdroidFilter in #360
- Fix KDE tray icon incorrect tooltip text by @kdroidFilter in #361
- Fix KDE tray window position on multi-monitor setups by @kdroidFilter in #362
- Fix Linux build script ignoring NATIVE_LIBS_OUTPUT_DIR by @kdroidFilter in #363
Full Changelog: v1.0.7...v1.0.8
1.0.7
What's Changed
- Fix TrayApp opening on wrong Space (macOS) by @kdroidFilter in #356
- Pre-compute tray position at click time to remove display latency by @kdroidFilter in #357
- Update Kotlin, Compose, and platformtools dependencies by @kdroidFilter in #358
Full Changelog: v1.0.6...v1.0.7
v1.0.6
What's Changed
- Auto-build native libraries locally on jvmProcessResources by @kdroidFilter in #353
- Fix macOS isMenuBarInDarkMode returning true in light mode by @kdroidFilter in #354
- Fix getTrayWindowPosition on external screens (macOS) by @kdroidFilter in #355
Full Changelog: v1.0.5...v1.0.6
1.0.5
What's Changed
- Compile native libs in the CI by @amir1376 in #342
- Fix the build-native job and update the maclib/build.sh by @amir1376 in #343
- Restructure CI workflows for native builds by @kdroidFilter in #352
New Contributors
Full Changelog: v1.0.4...v1.0.5
1.0.4
TrayApp : Adjust outside click detection for DPI scaling onj Windows
Full Changelog: v1.0.3...v1.0.4