From c0b94d7ba3dca1757c6ef15a659cd8083ba11187 Mon Sep 17 00:00:00 2001
From: Elie Gambache
Date: Sun, 10 May 2026 13:35:20 +0300
Subject: [PATCH 01/30] Refactor: rename package from io.github.kdroidfilter to
dev.nucleusframework
---
.editorconfig | 2 +-
.github/FUNDING.yml | 2 +-
.github/workflows/release-desktop.yaml | 4 +-
.github/workflows/test-packaging.yaml | 4 +-
CLAUDE.md | 2 +-
IDEAL_API.md | 4 +-
README.md | 10 +-
aot-runtime/build.gradle.kts | 16 +-
.../nucleus/aot/runtime/AotRuntime.kt | 2 +-
.../nucleus/aot/runtime/ExecutableRuntime.kt | 5 +
.../nucleus/aot/runtime/ExecutableRuntime.kt | 5 -
.../nucleus/aot/runtime/AotRuntimeTest.kt | 2 +-
.../aot/runtime/ExecutableRuntimeTest.kt | 2 +-
autolaunch/build.gradle.kts | 16 +-
.../nucleus/autolaunch/AutoLaunch.kt | 14 +-
.../nucleus/autolaunch/AutoLaunchBackend.kt | 2 +-
.../nucleus/autolaunch/AutoLaunchConfig.kt | 4 +-
.../nucleus/autolaunch/AutoLaunchState.kt | 2 +-
.../autolaunch/linux/FlatpakPortalBackend.kt | 16 +-
.../autolaunch/linux/LinuxAutoLaunch.kt | 12 +-
.../linux/NativeAutoLaunchLinuxBridge.kt | 8 +-
.../autolaunch/linux/SystemdUserBackend.kt | 12 +-
.../macos/MacSMAppServiceBackend.kt | 14 +-
.../windows/MsixStartupTaskBackend.kt | 12 +-
.../windows/NativeAutoLaunchBridge.kt | 8 +-
.../windows/Win32RegistryBackend.kt | 12 +-
.../autolaunch/windows/WindowsAutoLaunch.kt | 8 +-
.../native/linux/nucleus_autolaunch_linux.c | 16 +-
.../native/windows/nucleus_autolaunch.cpp | 20 +-
.../reachability-metadata.json | 12 +
.../reachability-metadata.json | 12 -
.../autolaunch/Win32RegistryBackendTest.kt | 6 +-
config/detekt/detekt.yml | 6 +-
core-runtime/build.gradle.kts | 16 +-
.../nucleus/core/runtime/DeepLinkHandler.kt | 6 +-
.../nucleus/core/runtime/ExecutableRuntime.kt | 2 +-
.../core/runtime/LinuxDesktopEnvironment.kt | 2 +-
.../core/runtime/NativeLibraryLoader.kt | 2 +-
.../nucleus/core/runtime/NucleusApp.kt | 4 +-
.../nucleus/core/runtime/Platform.kt | 2 +-
.../core/runtime/SingleInstanceManager.kt | 8 +-
.../core/runtime/tools/AppIdProvider.kt | 2 +-
.../runtime/tools/LinuxDesktopFileDetector.kt | 4 +-
.../nucleus/core/runtime/tools/Logger.kt | 12 +-
.../core/runtime/ExecutableRuntimeTest.kt | 2 +-
.../nucleus/core/runtime/NucleusAppTest.kt | 2 +-
.../core/runtime/SingleInstanceHolder.kt | 2 +-
.../SingleInstanceManagerEndToEndTest.kt | 4 +-
darkmode-detector/build.gradle.kts | 16 +-
.../darkmodedetector/IsSystemInDarkMode.kt | 10 +-
.../nucleus/darkmodedetector/Logger.kt | 4 +-
.../linux/LinuxPortalThemeDetector.kt | 4 +-
.../linux/NativeLinuxBridge.kt | 6 +-
.../mac/MacOSThemeDetector.kt | 4 +-
.../mac/NativeDarkModeBridge.kt | 6 +-
.../windows/NativeWindowsBridge.kt | 6 +-
.../windows/WindowsThemeDetector.kt | 4 +-
.../main/native/linux/nucleus_linux_theme.c | 8 +-
.../main/native/macos/NucleusDarkModeBridge.m | 8 +-
.../native/windows/nucleus_windows_theme.c | 8 +-
.../reachability-metadata.json | 6 +-
decorated-window-awt/build.gradle.kts | 16 +-
.../nucleus/window/AwtDecoratedWindow.kt | 10 +-
.../nucleus/window/AwtTitleBar.kt | 6 +-
.../nucleus/window/DecoratedDialogCore.kt | 10 +-
.../nucleus/window/DialogTitleBarImpl.kt | 6 +-
.../nucleus/window/WindowControlArea.kt | 12 +-
.../window/WindowsWindowControlArea.kt | 6 +-
.../window/internal/MinimumSizeSupport.kt | 2 +-
decorated-window-core/build.gradle.kts | 16 +-
.../nucleus/window/ControlButtonsDirection.kt | 2 +-
.../nucleus/window/DecoratedDialogTypes.kt | 2 +-
.../nucleus/window/DecoratedWindowCore.kt | 2 +-
.../window/NativeLayoutDirectionBridge.kt | 4 +-
.../window/NucleusDecoratedWindowTheme.kt | 22 +-
.../nucleus/window/TitleBarCore.kt | 8 +-
.../nucleus/window/TitleBarLinuxCommon.kt | 8 +-
.../nucleus/window/TitleBarModifiers.kt | 4 +-
.../nucleus/window/icons/linux/gnome/Close.kt | 4 +-
.../window/icons/linux/gnome/CloseDark.kt | 4 +-
.../window/icons/linux/gnome/CloseHover.kt | 4 +-
.../icons/linux/gnome/CloseHoverDark.kt | 4 +-
.../window/icons/linux/gnome/CloseInactive.kt | 4 +-
.../icons/linux/gnome/CloseInactiveDark.kt | 4 +-
.../window/icons/linux/gnome/ClosePressed.kt | 4 +-
.../icons/linux/gnome/ClosePressedDark.kt | 4 +-
.../linux/gnome/GnomeControlButtonsIcons.kt | 3 +
.../window/icons/linux/gnome/Maximize.kt | 4 +-
.../window/icons/linux/gnome/MaximizeDark.kt | 4 +-
.../window/icons/linux/gnome/MaximizeHover.kt | 4 +-
.../icons/linux/gnome/MaximizeHoverDark.kt | 4 +-
.../icons/linux/gnome/MaximizeInactive.kt | 4 +-
.../icons/linux/gnome/MaximizeInactiveDark.kt | 4 +-
.../icons/linux/gnome/MaximizePressed.kt | 4 +-
.../icons/linux/gnome/MaximizePressedDark.kt | 4 +-
.../window/icons/linux/gnome/Minimize.kt | 4 +-
.../window/icons/linux/gnome/MinimizeDark.kt | 4 +-
.../window/icons/linux/gnome/MinimizeHover.kt | 4 +-
.../icons/linux/gnome/MinimizeHoverDark.kt | 4 +-
.../icons/linux/gnome/MinimizeInactive.kt | 4 +-
.../icons/linux/gnome/MinimizeInactiveDark.kt | 4 +-
.../icons/linux/gnome/MinimizePressed.kt | 4 +-
.../icons/linux/gnome/MinimizePressedDark.kt | 4 +-
.../window/icons/linux/gnome/Restore.kt | 4 +-
.../window/icons/linux/gnome/RestoreDark.kt | 4 +-
.../window/icons/linux/gnome/RestoreHover.kt | 4 +-
.../icons/linux/gnome/RestoreHoverDark.kt | 4 +-
.../icons/linux/gnome/RestoreInactive.kt | 4 +-
.../icons/linux/gnome/RestoreInactiveDark.kt | 4 +-
.../icons/linux/gnome/RestorePressed.kt | 4 +-
.../icons/linux/gnome/RestorePressedDark.kt | 4 +-
.../nucleus/window/icons/linux/kde/Close.kt | 4 +-
.../window/icons/linux/kde/CloseDark.kt | 4 +-
.../window/icons/linux/kde/CloseHover.kt | 4 +-
.../icons/linux/kde/CloseHoverFocused.kt | 4 +-
.../window/icons/linux/kde/CloseInactive.kt | 4 +-
.../icons/linux/kde/CloseInactiveDark.kt | 4 +-
.../window/icons/linux/kde/ClosePressed.kt | 4 +-
.../icons/linux/kde/ClosePressedFocused.kt | 4 +-
.../icons/linux/kde/KdeControlButtonsIcons.kt | 3 +
.../window/icons/linux/kde/Maximize.kt | 4 +-
.../window/icons/linux/kde/MaximizeDark.kt | 4 +-
.../window/icons/linux/kde/MaximizeHover.kt | 4 +-
.../icons/linux/kde/MaximizeHoverDark.kt | 4 +-
.../icons/linux/kde/MaximizeInactive.kt | 4 +-
.../window/icons/linux/kde/MaximizePressed.kt | 4 +-
.../icons/linux/kde/MaximizePressedDark.kt | 4 +-
.../window/icons/linux/kde/Minimize.kt | 4 +-
.../window/icons/linux/kde/MinimizeDark.kt | 4 +-
.../window/icons/linux/kde/MinimizeHover.kt | 4 +-
.../icons/linux/kde/MinimizeHoverDark.kt | 4 +-
.../icons/linux/kde/MinimizeInactive.kt | 4 +-
.../window/icons/linux/kde/MinimizePressed.kt | 4 +-
.../icons/linux/kde/MinimizePressedDark.kt | 4 +-
.../nucleus/window/icons/linux/kde/Restore.kt | 4 +-
.../window/icons/linux/kde/RestoreDark.kt | 4 +-
.../window/icons/linux/kde/RestoreHover.kt | 4 +-
.../icons/linux/kde/RestoreHoverDark.kt | 4 +-
.../window/icons/linux/kde/RestoreInactive.kt | 4 +-
.../window/icons/linux/kde/RestorePressed.kt | 4 +-
.../icons/linux/kde/RestorePressedDark.kt | 4 +-
.../nucleus/window/icons/windows/Close.kt | 4 +-
.../nucleus/window/icons/windows/CloseDark.kt | 4 +-
.../window/icons/windows/CloseFullscreen.kt | 4 +-
.../icons/windows/CloseFullscreenDark.kt | 4 +-
.../icons/windows/CloseFullscreenInactive.kt | 4 +-
.../windows/CloseFullscreenInactiveDark.kt | 4 +-
.../window/icons/windows/CloseHover.kt | 4 +-
.../window/icons/windows/CloseInactive.kt | 4 +-
.../window/icons/windows/CloseInactiveDark.kt | 4 +-
.../nucleus/window/icons/windows/Maximize.kt | 4 +-
.../window/icons/windows/MaximizeDark.kt | 4 +-
.../window/icons/windows/MaximizeInactive.kt | 4 +-
.../icons/windows/MaximizeInactiveDark.kt | 4 +-
.../nucleus/window/icons/windows/Minimize.kt | 4 +-
.../window/icons/windows/MinimizeDark.kt | 4 +-
.../window/icons/windows/MinimizeInactive.kt | 4 +-
.../icons/windows/MinimizeInactiveDark.kt | 4 +-
.../nucleus/window/icons/windows/Restore.kt | 4 +-
.../window/icons/windows/RestoreDark.kt | 4 +-
.../window/icons/windows/RestoreInactive.kt | 4 +-
.../icons/windows/RestoreInactiveDark.kt | 4 +-
.../windows/WindowsControlButtonIcons.kt | 3 +
.../nucleus/window/internal/ColorUtils.kt | 2 +-
.../window/internal/InsideBorderModifier.kt | 2 +-
.../window/styling/DecoratedWindowStyling.kt | 6 +-
.../nucleus/window/styling/TitleBarStyling.kt | 6 +-
.../window/utils/linux/LinuxButtonLayout.kt | 6 +-
.../utils/linux/LinuxTitleBarIconSet.kt | 10 +-
.../utils/windows/WindowsTitleBarIconSet.kt | 48 +-
.../linux/gnome/GnomeControlButtonsIcons.kt | 3 -
.../icons/linux/kde/KdeControlButtonsIcons.kt | 3 -
.../windows/WindowsControlButtonIcons.kt | 3 -
.../linux/nucleus_layout_direction_linux.c | 10 +-
.../macos/NucleusLayoutDirectionBridge.m | 2 +-
.../nucleus_layout_direction_windows.c | 2 +-
.../reachability-metadata.json | 2 +-
decorated-window-jbr/build.gradle.kts | 16 +-
.../nucleus/window/DecoratedDialog.kt | 4 +-
.../nucleus/window/DecoratedWindow.kt | 8 +-
.../nucleus/window/DialogTitleBar.Linux.kt | 6 +-
.../nucleus/window/DialogTitleBar.MacOS.kt | 8 +-
.../nucleus/window/DialogTitleBar.Windows.kt | 10 +-
.../nucleus/window/DialogTitleBar.kt | 8 +-
.../nucleus/window/TitleBar.Linux.kt | 4 +-
.../nucleus/window/TitleBar.MacOS.kt | 10 +-
.../nucleus/window/TitleBar.Windows.kt | 10 +-
.../nucleus/window/TitleBar.kt | 8 +-
.../window/utils/ClientRegionHelper.kt | 10 +-
.../nucleus/window/utils/macos/MacUtil.kt | 2 +-
.../window/utils/macos/NativeMacBridge.kt | 4 +-
.../src/main/native/macos/NucleusMacBridge.m | 4 +-
decorated-window-jewel/build.gradle.kts | 16 +-
.../nucleus/window/jewel/JewelColorMapping.kt | 18 +-
.../window/jewel/JewelDecoratedDialog.kt | 8 +-
.../window/jewel/JewelDecoratedWindow.kt | 16 +-
.../window/jewel/JewelDialogTitleBar.kt | 16 +-
.../nucleus/window/jewel/JewelTitleBar.kt | 16 +-
decorated-window-jni/build.gradle.kts | 16 +-
.../nucleus/window/DecoratedDialog.kt | 4 +-
.../nucleus/window/DecoratedWindow.kt | 14 +-
.../nucleus/window/DialogTitleBar.Linux.kt | 8 +-
.../nucleus/window/DialogTitleBar.MacOS.kt | 10 +-
.../nucleus/window/DialogTitleBar.Windows.kt | 10 +-
.../nucleus/window/DialogTitleBar.kt | 8 +-
.../nucleus/window/TitleBar.Linux.kt | 6 +-
.../nucleus/window/TitleBar.MacOS.kt | 10 +-
.../nucleus/window/TitleBar.Windows.kt | 10 +-
.../nucleus/window/TitleBar.kt | 8 +-
.../utils/linux/JniLinuxWindowBridge.kt | 4 +-
.../utils/macos/JniMacTitleBarBridge.kt | 4 +-
.../window/utils/macos/JniMacWindowUtil.kt | 2 +-
.../windows/JniWindowsDecorationBridge.kt | 4 +-
.../utils/windows/JniWindowsWindowUtil.kt | 2 +-
.../main/native/linux/nucleus_linux_window.c | 8 +-
.../src/main/native/macos/JniMacTitleBar.m | 30 +-
.../windows/nucleus_windows_decoration.c | 28 +-
.../reachability-metadata.json | 4 +-
decorated-window-material2/build.gradle.kts | 16 +-
.../window/material2/MaterialColorMapping.kt | 18 +-
.../material2/MaterialDecoratedDialog.kt | 8 +-
.../material2/MaterialDecoratedWindow.kt | 16 +-
.../material2/MaterialDialogTitleBar.kt | 16 +-
.../window/material2/MaterialTitleBar.kt | 16 +-
decorated-window-material3/build.gradle.kts | 16 +-
.../window/material/MaterialColorMapping.kt | 18 +-
.../material/MaterialDecoratedDialog.kt | 14 +-
.../material/MaterialDecoratedWindow.kt | 16 +-
.../window/material/MaterialDialogTitleBar.kt | 16 +-
.../window/material/MaterialTitleBar.kt | 16 +-
decorated-window-tao/build.gradle.kts | 16 +-
.../nucleus/window/DialogTitleBar.kt | 34 +-
.../nucleus/window/TitleBar.kt | 44 +-
.../nucleus/window/tao/ApplicationScope.kt | 2 +-
.../nucleus/window/tao/DecoratedDialog.kt | 6 +-
.../nucleus/window/tao/DecoratedWindow.kt | 24 +-
.../window/tao/DecoratedWindowComposable.kt | 4 +-
.../window/tao/FullscreenTitleBarHolder.kt | 2 +-
.../nucleus/window/tao/MacOSStyle.kt | 4 +-
.../nucleus/window/tao/NativeMetalBridge.kt | 6 +-
.../window/tao/NativeTaoA11yWindowsBridge.kt | 4 +-
.../nucleus/window/tao/NativeTaoBridge.kt | 4 +-
.../nucleus/window/tao/NativeTaoEglBridge.kt | 6 +-
.../nucleus/window/tao/NativeTaoGlBridge.kt | 4 +-
.../window/tao/NativeTaoLinuxDndBridge.kt | 4 +-
.../window/tao/NativeTaoLinuxTouchBridge.kt | 4 +-
.../window/tao/NativeTaoLinuxWidgetBridge.kt | 4 +-
.../window/tao/NativeTaoMacOsDecoBridge.kt | 4 +-
.../window/tao/NativeTaoMacOsDndBridge.kt | 4 +-
.../tao/NativeTaoMacOsNativeViewBridge.kt | 4 +-
.../window/tao/NativeTaoWindowsDecoBridge.kt | 4 +-
.../window/tao/NativeTaoWindowsDndBridge.kt | 4 +-
.../tao/NativeTaoWindowsNativeViewBridge.kt | 4 +-
.../tao/NativeTaoWindowsOverlayBridge.kt | 4 +-
.../nucleus/window/tao/NativeView.kt | 12 +-
.../window/tao/NativeViewOverlayController.kt | 12 +-
.../NativeViewOverlayController.windows.kt | 10 +-
.../nucleus/window/tao/NucleusPlatformView.kt | 2 +-
.../window/tao/OverlayInteractionModifier.kt | 4 +-
.../nucleus/window/tao/PainterToRgba.kt | 2 +-
.../nucleus/window/tao/PopupNativeBridge.kt | 4 +-
.../window/tao/PopupNativeBridge.windows.kt | 4 +-
.../nucleus/window/tao/TaoAccessibility.kt | 4 +-
.../nucleus/window/tao/TaoApplication.kt | 2 +-
.../window/tao/TaoApplicationCompose.kt | 2 +-
.../nucleus/window/tao/TaoCursorMapping.kt | 2 +-
.../window/tao/TaoDecoratedDialogScope.kt | 4 +-
.../window/tao/TaoDecoratedWindowScope.kt | 4 +-
.../nucleus/window/tao/TaoDeepLinkBridge.kt | 2 +-
.../nucleus/window/tao/TaoDnDDiagnostics.kt | 2 +-
.../window/tao/TaoDragAndDropManager.kt | 2 +-
.../window/tao/TaoDragAndDropPayload.kt | 2 +-
.../window/tao/TaoFilesTransferable.kt | 2 +-
.../nucleus/window/tao/TaoLinuxUriHandler.kt | 2 +-
.../nucleus/window/tao/TaoMainDispatcher.kt | 2 +-
.../window/tao/TaoSemanticsObserver.kt | 2 +-
.../nucleus/window/tao/TaoSyntheticAwtDnd.kt | 2 +-
.../nucleus/window/tao/TaoWindow.kt | 4 +-
.../window/tao/UndecoratedWindowBorder.kt | 10 +-
.../nucleus/window/tao/WindowControlsLinux.kt | 16 +-
.../window/tao/WindowControlsWindows.kt | 50 +-
.../window/tao/render/GlSceneRenderer.kt | 2 +-
.../nucleus/window/tao/render/MetalFrame.kt | 2 +-
.../window/tao/render/MetalSceneRenderer.kt | 4 +-
.../tao/render/TaoComposeSceneContext.kt | 2 +-
.../render/TaoComposeSceneContextWindows.kt | 2 +-
.../window/tao/render/TaoComposeSceneHost.kt | 108 +--
.../tao/render/TaoComposeSceneHostLinux.kt | 138 ++--
.../tao/render/TaoComposeSceneHostWindows.kt | 140 ++--
.../tao/render/TaoInteropTransaction.kt | 2 +-
.../tao/render/TaoLinuxOverlayController.kt | 8 +-
.../window/tao/render/TaoNativeWireFormat.kt | 2 +-
.../nucleus/window/tao/render/TaoPopupHost.kt | 2 +-
.../window/tao/render/TaoPopupHostWindows.kt | 2 +-
.../window/tao/render/TaoPopupSceneLayer.kt | 6 +-
.../tao/render/TaoPopupSceneLayerWindows.kt | 4 +-
.../window/tao/render/TaoSyntheticKey.kt | 2 +-
.../src/main/native/linux/nucleus_tao_egl.c | 22 +-
.../native/linux/nucleus_tao_linux_widget.c | 16 +-
.../src/main/native/macos/NucleusTaoMetal.m | 50 +-
.../src/main/native/macos/decoration.m | 12 +-
.../src/main/native/macos/dnd.m | 6 +-
.../src/main/native/macos/native_view.m | 20 +-
.../src/main/native/macos/popup_panel.m | 28 +-
.../src/main/native/src/cursor.rs | 2 +-
.../main/native/src/platform/linux/a11y.rs | 28 +-
.../native/src/platform/linux/decoration.rs | 4 +-
.../src/main/native/src/platform/linux/dnd.rs | 6 +-
.../main/native/src/platform/linux/handles.rs | 4 +-
.../main/native/src/platform/linux/monitor.rs | 4 +-
.../main/native/src/platform/linux/touch.rs | 4 +-
.../main/native/src/platform/macos/a11y.rs | 30 +-
.../native/src/platform/macos/apple_events.rs | 4 +-
.../main/native/src/platform/macos/handles.rs | 2 +-
.../src/main/native/src/platform/macos/ime.rs | 4 +-
.../native/src/platform/macos/text_overlay.rs | 4 +-
.../main/native/src/platform/windows/a11y.rs | 30 +-
.../native/src/platform/windows/handles.rs | 2 +-
.../src/main/native/src/window_jni.rs | 48 +-
.../src/main/native/windows/nucleus_tao_dnd.c | 6 +-
.../src/main/native/windows/nucleus_tao_gl.c | 16 +-
.../native/windows/nucleus_tao_windows_deco.c | 22 +-
.../windows/nucleus_tao_windows_native_view.c | 10 +-
.../windows/nucleus_tao_windows_overlay.c | 18 +-
.../windows/nucleus_tao_windows_popup.c | 20 +-
.../reachability-metadata.json | 68 +-
docs/auto-update.md | 32 +-
docs/changelog.md | 18 +-
docs/ci-cd.md | 38 +-
docs/comparison/packaging.md | 38 +-
docs/getting-started.md | 14 +-
docs/graalvm/runtime-bootstrap.md | 4 +-
docs/graalvm/tasks-ci.md | 8 +-
docs/index.md | 18 +-
docs/install-linux.sh | 2 +-
docs/install.sh | 2 +-
docs/llm.md | 2 +-
docs/llms-full.txt | 634 +++++++++---------
docs/llms.txt | 310 ++++-----
docs/migration.md | 14 +-
docs/native-access/index.md | 12 +-
docs/native-access/usage.md | 2 +-
docs/nucleus-application-plan.md | 2 +-
docs/runtime/aot-cache.md | 10 +-
docs/runtime/app-metadata.md | 4 +-
docs/runtime/autolaunch.md | 12 +-
docs/runtime/darkmode-detector.md | 12 +-
docs/runtime/decorated-window-jewel.md | 2 +-
docs/runtime/decorated-window-material2.md | 2 +-
docs/runtime/decorated-window-material3.md | 2 +-
docs/runtime/decorated-window-tao.md | 6 +-
docs/runtime/decorated-window.md | 20 +-
docs/runtime/deep-links.md | 4 +-
docs/runtime/energy-manager.md | 6 +-
docs/runtime/executable-type.md | 6 +-
docs/runtime/freedesktop-icons.md | 12 +-
docs/runtime/global-hotkey.md | 20 +-
docs/runtime/index.md | 136 ++--
docs/runtime/launcher-linux.md | 12 +-
docs/runtime/launcher-macos.md | 10 +-
docs/runtime/launcher-windows.md | 30 +-
docs/runtime/linux-hidpi.md | 6 +-
docs/runtime/media-control.md | 10 +-
docs/runtime/menu-macos.md | 16 +-
docs/runtime/native-http.md | 18 +-
docs/runtime/native-ssl.md | 10 +-
docs/runtime/notification-common.md | 6 +-
docs/runtime/notification-linux.md | 10 +-
docs/runtime/notification-macos.md | 8 +-
docs/runtime/notification-windows.md | 8 +-
docs/runtime/nucleus-application.md | 10 +-
docs/runtime/scheduler.md | 8 +-
docs/runtime/service-management-macos.md | 4 +-
docs/runtime/single-instance.md | 4 +-
docs/runtime/system-color.md | 14 +-
docs/runtime/system-info.md | 6 +-
docs/runtime/system-tray/index.md | 4 +-
docs/runtime/taskbar-progress.md | 4 +-
docs/targets/linux.md | 2 +-
energy-manager/build.gradle.kts | 16 +-
.../nucleus/energymanager/EnergyManager.kt | 10 +-
.../energymanager/PlatformEnergyManager.kt | 2 +-
.../energymanager/linux/LinuxEnergyManager.kt | 6 +-
.../linux/NativeLinuxEnergyBridge.kt | 4 +-
.../energymanager/macos/MacOsEnergyManager.kt | 6 +-
.../macos/NativeMacOsEnergyBridge.kt | 4 +-
.../windows/NativeWindowsEnergyBridge.kt | 4 +-
.../windows/WindowsEnergyManager.kt | 6 +-
.../native/linux/nucleus_energy_manager.c | 20 +-
.../native/macos/nucleus_energy_manager.c | 20 +-
.../native/windows/nucleus_energy_manager.c | 20 +-
.../energymanager/EnergyManagerTest.kt | 2 +-
example/build.gradle.kts | 34 +-
.../com/example/demo/AutoLaunchScreen.kt | 10 +-
.../example/demo/CommonNotificationsScreen.kt | 8 +-
.../com/example/demo/GlobalHotKeyScreen.kt | 10 +-
.../kotlin/com/example/demo/LauncherScreen.kt | 10 +-
.../example/demo/LinuxNotificationsScreen.kt | 24 +-
.../com/example/demo/MacLaunchDiagnostic.kt | 2 +-
.../com/example/demo/MacOsLauncherScreen.kt | 4 +-
.../com/example/demo/MacOsMenuScreen.kt | 26 +-
.../src/main/kotlin/com/example/demo/Main.kt | 52 +-
.../com/example/demo/MediaControlScreen.kt | 12 +-
.../com/example/demo/NotificationsScreen.kt | 40 +-
.../com/example/demo/TaskbarProgressScreen.kt | 20 +-
.../com/example/demo/WindowsBadgeScreen.kt | 20 +-
.../demo/WindowsNotificationsScreen.kt | 46 +-
freedesktop-icons/build.gradle.kts | 16 +-
.../freedesktop/icons/FreedesktopIcon.kt | 2 +-
global-hotkey/build.gradle.kts | 16 +-
.../globalhotkey/GlobalHotKeyManager.kt | 10 +-
.../nucleus/globalhotkey/HotKeyListener.kt | 2 +-
.../nucleus/globalhotkey/HotKeyModifier.kt | 2 +-
.../nucleus/globalhotkey/MediaKey.kt | 2 +-
.../linux/NativeLinuxHotKeyBridge.kt | 6 +-
.../macos/NativeMacOsHotKeyBridge.kt | 6 +-
.../windows/NativeWindowsHotKeyBridge.kt | 6 +-
.../linux/nucleus_global_hotkey_linux.c | 8 +-
.../macos/nucleus_global_hotkey_macos.m | 8 +-
.../native/windows/nucleus_global_hotkey.cpp | 8 +-
.../reachability-metadata.json | 6 +-
graalvm-runtime/build.gradle.kts | 16 +-
.../font/FcFontManagerSubstitution.java | 2 +-
.../font/FontCreateFontSubstitution.java | 2 +-
.../nucleus/graalvm/font/IsLinux.java | 2 +-
.../nucleus/graalvm/font/IsWindows.java | 2 +-
.../graalvm/font/IsWindowsOrLinux.java | 2 +-
.../font/Win32FontManagerSubstitution.java | 2 +-
.../graalvm/wmclass/AppNameResolver.java | 2 +-
.../nucleus/graalvm/wmclass/IsLinux.java | 2 +-
.../wmclass/XToolkitAppNameSubstitution.java | 2 +-
.../nucleus/graalvm/GraalVmInitializer.kt | 4 +-
.../native-image.properties | 0
jewel-sample/build.gradle.kts | 16 +-
jewel-sample/proguard-rules.pro | 36 +-
.../src/main/kotlin/jewelsample/Main.kt | 16 +-
.../kotlin/jewelsample/view/TitleBarView.kt | 8 +-
jewel-sample/src/main/packaging/Info.plist | 2 +-
launcher-linux/build.gradle.kts | 16 +-
.../nucleus/launcher/linux/DbusmenuItem.kt | 4 +-
.../launcher/linux/LauncherProperties.kt | 2 +-
.../launcher/linux/LinuxLauncherEntry.kt | 2 +-
.../nucleus/launcher/linux/LinuxQuicklist.kt | 2 +-
.../linux/NativeLinuxLauncherBridge.kt | 4 +-
.../native/linux/nucleus_launcher_linux.c | 14 +-
launcher-macos/build.gradle.kts | 16 +-
.../nucleus/launcher/macos/DockMenuItem.kt | 2 +-
.../launcher/macos/DockMenuListener.kt | 2 +-
.../nucleus/launcher/macos/MacOsDockMenu.kt | 2 +-
.../macos/NativeMacOsDockMenuBridge.kt | 4 +-
.../native/macos/nucleus_launcher_macos.m | 6 +-
launcher-windows/build.gradle.kts | 16 +-
.../nucleus/launcher/windows/BadgeGlyph.kt | 2 +-
.../launcher/windows/JumpListCategory.kt | 2 +-
.../nucleus/launcher/windows/JumpListItem.kt | 2 +-
.../nucleus/launcher/windows/KnownCategory.kt | 2 +-
.../windows/NativeWindowsBadgeBridge.kt | 4 +-
.../windows/NativeWindowsJumpListBridge.kt | 4 +-
.../windows/NativeWindowsTaskbarBridge.kt | 4 +-
.../nucleus/launcher/windows/StockIcon.kt | 2 +-
.../launcher/windows/TaskbarIconSource.kt | 2 +-
.../launcher/windows/ThumbBarClickListener.kt | 2 +-
.../windows/ThumbnailToolbarButton.kt | 2 +-
.../launcher/windows/WindowsBadgeManager.kt | 6 +-
.../windows/WindowsJumpListManager.kt | 6 +-
.../launcher/windows/WindowsOverlayIcon.kt | 2 +-
.../windows/WindowsThumbnailToolbar.kt | 2 +-
.../windows/nucleus_launcher_windows.cpp | 42 +-
.../reachability-metadata.json | 8 +-
linux-hidpi/build.gradle.kts | 16 +-
.../nucleus/hidpi/HiDpiLinuxBridge.kt | 4 +-
.../nucleus/hidpi/LinuxHiDpi.kt | 2 +-
.../main/native/linux/nucleus_hidpi_linux.c | 4 +-
.../native-image.properties | 1 +
.../native-image.properties | 1 -
media-control/build.gradle.kts | 16 +-
.../media/control/MediaControlEvent.kt | 2 +-
.../media/control/MediaControlService.kt | 16 +-
.../nucleus/media/control/MediaMetadata.kt | 2 +-
.../media/control/MediaPlaybackStatus.kt | 2 +-
.../media/control/linux/NativeLinuxBridge.kt | 4 +-
.../media/control/macos/NativeMacOsBridge.kt | 4 +-
.../control/windows/NativeWindowsBridge.kt | 4 +-
.../linux/nucleus_media_control_linux.c | 16 +-
.../macos/nucleus_media_control_macos.m | 14 +-
.../windows/nucleus_media_control_windows.cpp | 14 +-
.../reachability-metadata.json | 6 +-
menu-macos/build.gradle.kts | 16 +-
.../nucleus/menu/macos/NativeMenuBar.kt | 2 +-
.../nucleus/menu/macos/NativeNsMenuBridge.kt | 4 +-
.../nucleus/menu/macos/NsMenu.kt | 2 +-
.../nucleus/menu/macos/NsMenuDelegate.kt | 2 +-
.../nucleus/menu/macos/NsMenuItem.kt | 2 +-
.../nucleus/menu/macos/NsMenuItemBadge.kt | 2 +-
.../nucleus/menu/macos/NsMenuTypes.kt | 8 +-
.../main/native/macos/nucleus_menu_macos.m | 4 +-
.../reachability-metadata.json | 2 +-
mkdocs.yml | 8 +-
native-http-ktor/build.gradle.kts | 16 +-
.../nativehttp/ktor/NativeSslKtorExtension.kt | 4 +-
.../ktor/NativeSslKtorExtensionTest.kt | 2 +-
native-http-okhttp/build.gradle.kts | 16 +-
.../nativehttp/okhttp/NativeOkHttpClient.kt | 4 +-
.../okhttp/NativeOkHttpClientTest.kt | 2 +-
native-http/build.gradle.kts | 16 +-
.../nucleus/nativehttp/NativeHttpClient.kt | 4 +-
.../nativehttp/NativeHttpClientTest.kt | 2 +-
native-ssl/build.gradle.kts | 16 +-
.../nucleus/nativessl/Logger.kt | 4 +-
.../nativessl/NativeCertificateProvider.kt | 10 +-
.../nucleus/nativessl/NativeTrustManager.kt | 2 +-
.../linux/LinuxCertificateProvider.kt | 4 +-
.../nucleus/nativessl/mac/NativeSslBridge.kt | 6 +-
.../windows/WindowsCertificateProvider.kt | 4 +-
.../nativessl/windows/WindowsSslBridge.kt | 6 +-
.../src/main/native/macos/NucleusSslBridge.m | 2 +-
.../main/native/windows/NucleusSslBridge.c | 2 +-
.../nucleus/nativessl/NativeSslTest.kt | 10 +-
notification-common/build.gradle.kts | 16 +-
.../notification/common/DismissReason.kt | 2 +-
.../notification/common/Notification.kt | 2 +-
.../notification/common/NotificationHandle.kt | 4 +-
.../common/NotificationManager.kt | 6 +-
.../notification/common/NotificationResult.kt | 2 +-
.../common/internal/CallbackRegistry.kt | 2 +-
.../common/internal/DispatcherFactory.kt | 2 +-
.../common/internal/LinuxDispatcher.kt | 28 +-
.../common/internal/MacOsDispatcher.kt | 38 +-
.../common/internal/NotificationCallbacks.kt | 4 +-
.../common/internal/PlatformDispatcher.kt | 14 +
.../common/internal/WindowsDispatcher.kt | 22 +-
.../common/internal/PlatformDispatcher.kt | 14 -
notification-linux/build.gradle.kts | 16 +-
.../nucleus/notification/linux/Enums.kt | 2 +-
.../linux/LinuxNotificationCenter.kt | 2 +-
.../linux/LinuxNotificationListener.kt | 2 +-
.../nucleus/notification/linux/Model.kt | 4 +-
.../linux/NativeLinuxNotificationBridge.kt | 4 +-
.../notification/linux/NotificationSound.kt | 2 +-
.../native/linux/nucleus_notification_linux.c | 14 +-
notification-macos/build.gradle.kts | 16 +-
.../nucleus/notification/Enums.kt | 2 +-
.../nucleus/notification/Model.kt | 2 +-
.../notification/NotificationCenter.kt | 6 +-
.../NotificationCenterDelegate.kt | 2 +-
.../macos/NativeMacNotificationBridge.kt | 34 +-
.../native/macos/NucleusNotificationBridge.m | 30 +-
.../reachability-metadata.json | 2 +-
notification-windows/build.gradle.kts | 16 +-
.../nucleus/notification/windows/Enums.kt | 2 +-
.../nucleus/notification/windows/Model.kt | 2 +-
.../NativeWindowsNotificationBridge.kt | 4 +-
.../notification/windows/ToastContentDsl.kt | 2 +-
.../windows/ToastNotificationListener.kt | 2 +-
.../notification/windows/ToastXmlBuilder.kt | 2 +-
.../windows/WindowsNotificationCenter.kt | 6 +-
.../windows/nucleus_notification_windows.cpp | 18 +-
.../reachability-metadata.json | 2 +-
nucleus-application/build.gradle.kts | 16 +-
.../application/AwtDialogNucleusWindow.kt | 2 +-
.../nucleus/application/AwtNucleusWindow.kt | 2 +-
.../nucleus/application/DecoratedDialog.kt | 10 +-
.../nucleus/application/DecoratedWindow.kt | 10 +-
.../nucleus/application/NucleusApplication.kt | 6 +-
.../application/NucleusApplicationScope.kt | 8 +-
.../nucleus/application/NucleusBackend.kt | 2 +-
.../nucleus/application/NucleusWindow.kt | 8 +-
.../nucleus/application/TaoNucleusWindow.kt | 6 +-
.../internal/TaoDecoratedDialogAdapter.kt | 30 +-
.../internal/TaoDecoratedWindowAdapter.kt | 28 +-
.../application/internal/TaoLauncher.kt | 14 +-
plugin-build/gradle.properties | 10 +-
plugin-build/plugin/build.gradle.kts | 4 +-
.../plugin/config/ktlint/baseline.xml | 82 +--
plugin-build/plugin/detekt-baseline-main.xml | 24 +-
plugin-build/plugin/detekt-baseline.xml | 22 +-
.../application/internal/JdkVersionProbe.java | 2 +-
.../nucleus/ExperimentalNucleusLibrary.kt | 4 +-
.../kdroidfilter/nucleus/NucleusExtension.kt | 8 +-
.../kdroidfilter/nucleus/NucleusPlugin.kt | 12 +-
.../application/dsl/AbstractDistributions.kt | 2 +-
.../application/dsl/AppImageCategory.kt | 2 +-
.../application/dsl/AppImageSettings.kt | 2 +-
.../desktop/application/dsl/AppXSettings.kt | 2 +-
.../application/dsl/CompressionLevel.kt | 2 +-
.../desktop/application/dsl/DmgSettings.kt | 2 +-
.../application/dsl/FileAssociation.kt | 2 +-
.../application/dsl/FlatpakSettings.kt | 2 +-
.../application/dsl/GraalvmSettings.kt | 8 +-
.../desktop/application/dsl/JvmApplication.kt | 2 +-
.../dsl/JvmApplicationBuildTypes.kt | 4 +-
.../dsl/JvmApplicationDistributions.kt | 2 +-
.../application/dsl/LaunchAgentSettings.kt | 2 +-
.../dsl/MacOSNotarizationSettings.kt | 6 +-
.../application/dsl/MacOSSigningSettings.kt | 8 +-
.../application/dsl/NativeApplication.kt | 2 +-
.../dsl/NativeApplicationDistributions.kt | 2 +-
.../desktop/application/dsl/NsisSettings.kt | 2 +-
.../application/dsl/PlatformSettings.kt | 2 +-
.../application/dsl/ProguardSettings.kt | 6 +-
.../desktop/application/dsl/PublishMode.kt | 2 +-
.../application/dsl/PublishSettings.kt | 2 +-
.../desktop/application/dsl/ReleaseChannel.kt | 2 +-
.../desktop/application/dsl/ReleaseType.kt | 2 +-
.../application/dsl/SigningAlgorithm.kt | 2 +-
.../application/dsl/SnapCompression.kt | 2 +-
.../application/dsl/SnapConfinement.kt | 2 +-
.../desktop/application/dsl/SnapGrade.kt | 2 +-
.../desktop/application/dsl/SnapPlug.kt | 2 +-
.../desktop/application/dsl/SnapSettings.kt | 2 +-
.../desktop/application/dsl/TargetFormat.kt | 6 +-
.../application/dsl/WindowsSigningSettings.kt | 2 +-
.../internal/AnalyzeStaticMetadataTask.kt | 12 +-
.../internal/CleanNativeLibsTransform.kt | 18 +-
.../internal/CleanupGraalvmMetadataTask.kt | 2 +-
.../internal/DmgBackgroundPadding.kt | 2 +-
.../application/internal/ExecutableType.kt | 4 +-
.../internal/ExternalToolRunner.kt | 4 +-
.../internal/FilterLibraryMetadataTask.kt | 2 +-
.../application/internal/InfoPlistBuilder.kt | 4 +-
.../internal/JvmApplicationContext.kt | 22 +-
.../internal/JvmApplicationData.kt | 10 +-
.../internal/JvmApplicationInternal.kt | 12 +-
.../internal/JvmApplicationRuntimeFiles.kt | 2 +-
.../internal/JvmRuntimeProperties.kt | 2 +-
.../desktop/application/internal/JvmTasks.kt | 6 +-
.../internal/LaunchAgentPlistGenerator.kt | 6 +-
.../application/internal/MacAssetsTool.kt | 4 +-
.../application/internal/MacOsMachOPatcher.kt | 2 +-
.../desktop/application/internal/MacSigner.kt | 10 +-
.../application/internal/MacSigningHelper.kt | 4 +-
.../application/internal/MultiOutputStream.kt | 2 +-
.../internal/NativeLibArchDetector.kt | 2 +-
.../internal/NotarizationRequestInfo.kt | 2 +-
.../internal/NucleusProjectProperties.kt | 8 +-
.../internal/NucleusSystemProperties.kt | 2 +-
.../internal/PatchedJavaLauncher.kt | 2 +-
.../ResolveReachabilityMetadataTask.kt | 2 +-
.../internal/RuntimeCompressionLevel.kt | 2 +-
.../internal/UpdateYmlGenerator.kt | 2 +-
.../internal/WindowsKitsLocator.kt | 2 +-
.../internal/analyzer/AnalysisReport.kt | 2 +-
.../internal/analyzer/AnalysisResult.kt | 2 +-
.../internal/analyzer/BytecodeAnalyzer.kt | 24 +-
.../internal/analyzer/OracleRepoParser.kt | 2 +-
.../internal/analyzer/ResultComparator.kt | 2 +-
.../detectors/ClassForNameDetector.kt | 4 +-
.../analyzer/detectors/JarResourceDetector.kt | 4 +-
.../detectors/KotlinSerializableDetector.kt | 6 +-
.../detectors/MethodHandleDetector.kt | 6 +-
.../detectors/NativeMethodDetector.kt | 6 +-
.../analyzer/detectors/ProxyDetector.kt | 4 +-
.../detectors/ReflectionApiDetector.kt | 6 +-
.../detectors/ResourceAccessDetector.kt | 4 +-
.../detectors/ResourceBundleDetector.kt | 4 +-
.../detectors/ServiceLoaderDetector.kt | 8 +-
.../application/internal/cliArgUtils.kt | 4 +-
.../application/internal/configureDesktop.kt | 14 +-
.../internal/configureGraalvmApplication.kt | 34 +-
.../internal/configureJvmApplication.kt | 80 +--
.../internal/configureNativeApplication.kt | 22 +-
.../application/internal/dirLayoutUtils.kt | 4 +-
.../ElectronBuilderConfigGenerator.kt | 30 +-
.../ElectronBuilderToolManager.kt | 2 +-
.../electronbuilder/NodeJsDetector.kt | 6 +-
.../internal/files/FileCopyingProcessor.kt | 2 +-
.../files/MacJarSignFileCopyingProcessor.kt | 4 +-
.../files/SimpleFileCopyingProcessor.kt | 2 +-
.../application/internal/files/fileUtils.kt | 8 +-
.../internal/mergeNativeImageConfig.kt | 2 +-
.../application/internal/packageVersions.kt | 8 +-
.../internal/resolveMetadataRepository.kt | 2 +-
.../ValidatedMacOSNotarizationSettings.kt | 6 +-
.../ValidatedMacOSSigningSettings.kt | 10 +-
.../internal/validation/validateBundleID.kt | 2 +-
.../validation/validatePackageVersions.kt | 12 +-
.../AbstractCheckNativeDistributionRuntime.kt | 24 +-
.../AbstractElectronBuilderPackageTask.kt | 62 +-
.../tasks/AbstractExtractNativeLibsTask.kt | 10 +-
.../tasks/AbstractGenerateAotCacheTask.kt | 8 +-
.../AbstractGenerateAppPropertiesTask.kt | 2 +-
.../application/tasks/AbstractJLinkTask.kt | 14 +-
.../application/tasks/AbstractJPackageTask.kt | 92 +--
.../tasks/AbstractJvmToolOperationTask.kt | 8 +-
...ctNativeMacApplicationPackageAppDirTask.kt | 16 +-
...tractNativeMacApplicationPackageDmgTask.kt | 16 +-
...AbstractNativeMacApplicationPackageTask.kt | 6 +-
.../tasks/AbstractNotarizationTask.kt | 24 +-
.../tasks/AbstractPatchCaCertificatesTask.kt | 6 +-
.../tasks/AbstractPatchMacJvmTask.kt | 4 +-
.../application/tasks/AbstractProguardTask.kt | 12 +-
.../application/tasks/AbstractRunAppXTask.kt | 4 +-
.../tasks/AbstractRunDistributableTask.kt | 12 +-
.../AbstractStripNativeLibsFromJarsTask.kt | 8 +-
.../tasks/AbstractSuggestModulesTask.kt | 14 +-
.../desktop/tasks/AbstractJarsFlattenTask.kt | 10 +-
.../desktop/tasks/AbstractNucleusTask.kt | 8 +-
...ctUnpackDefaultApplicationResourcesTask.kt | 8 +-
.../internal/checkExperimentalTargets.kt | 4 +-
.../ComposeCompilerArtifactProvider.kt | 4 +-
.../nucleus/internal/IdeaImportTask.kt | 2 +-
.../kdroidfilter/nucleus/internal/Version.kt | 2 +-
.../nucleus/internal/constants.kt | 4 +-
.../nucleus/internal/projectExtensions.kt | 4 +-
.../nucleus/internal/requiredDslProperty.kt | 2 +-
.../nucleus/internal/utils/diagnosticUtils.kt | 2 +-
.../nucleus/internal/utils/fileUtils.kt | 2 +-
.../nucleus/internal/utils/gradleUtils.kt | 4 +-
.../nucleus/internal/utils/osUtils.kt | 6 +-
.../nucleus/internal/utils/providerUtils.kt | 2 +-
.../nucleus/internal/utils/stringUtils.kt | 2 +-
.../nucleus/internal/utils/taskUtils.kt | 2 +-
.../default-compose-desktop-rules.pro | 60 +-
.../library-metadata/compose-mediaplayer.json | 6 +-
.../library-metadata/compose-webview-wry.json | 116 ++--
.../graalvm/library-metadata/knotify.json | 26 +-
.../library-metadata/platformtools.json | 4 +-
.../internal/DmgBackgroundPaddingTest.kt | 2 +-
.../BytecodeAnalyzerIntegrationTest.kt | 2 +-
.../analyzer/ClassForNameDetectorTest.kt | 6 +-
.../analyzer/NativeMethodDetectorTest.kt | 4 +-
.../analyzer/OracleRepoCoverageTest.kt | 2 +-
.../analyzer/ReflectionApiDetectorTest.kt | 2 +-
.../internal/analyzer/ResourceDetectorTest.kt | 2 +-
.../analyzer/ServiceLoaderDetectorTest.kt | 4 +-
.../internal/analyzer/ZayitAnalyzerTest.kt | 2 +-
sample-cmp/build.gradle.kts | 2 +-
sample-jni/build.gradle.kts | 6 +-
.../nucleusframework}/samplejni/ActionsTab.kt | 4 +-
.../nucleusframework}/samplejni/Main.kt | 34 +-
.../nucleusframework}/sampleshared/A11yTab.kt | 2 +-
.../nucleusframework}/sampleshared/Common.kt | 2 +-
.../sampleshared/ComplexTab.kt | 2 +-
.../sampleshared/EventsTab.kt | 2 +-
.../sampleshared/FancyDemo.kt | 2 +-
.../sampleshared/ScrollTab.kt | 2 +-
.../nucleusframework}/sampleshared/ZoomTab.kt | 2 +-
sample-tao/build.gradle.kts | 10 +-
.../nucleusframework}/sampletao/ActionsTab.kt | 4 +-
.../nucleusframework}/sampletao/Main.kt | 26 +-
.../sampletao/SampleSwiftUIBridge.kt | 4 +-
.../sampletao/SampleWebViewBridge.kt | 4 +-
.../sampletao/SampleWebViewController.kt | 4 +-
.../sampletao/SampleWebViewLinuxBridge.kt | 4 +-
.../sampletao/SampleWebViewWindowsBridge.kt | 4 +-
.../nucleusframework}/sampletao/SwiftUITab.kt | 10 +-
.../nucleusframework}/sampletao/WebViewTab.kt | 12 +-
.../src/main/native/linux/sample_webview.c | 20 +-
.../src/main/native/macos/sample_webview.m | 20 +-
.../main/native/windows/sample_webview.cpp | 24 +-
scheduler-demo/build.gradle.kts | 12 +-
.../src/main/kotlin/schedulerdemo/Main.kt | 10 +-
.../kotlin/schedulerdemo/SchedulerDemoView.kt | 8 +-
.../kotlin/schedulerdemo/task/SampleTasks.kt | 10 +-
scheduler-testing/build.gradle.kts | 16 +-
.../testing/TestConstraintChecker.kt | 16 +-
.../testing/TestDesktopTaskScheduler.kt | 36 +-
.../scheduler/testing/TestTaskRunner.kt | 12 +-
.../scheduler/testing/SchedulerTestingTest.kt | 30 +-
scheduler/build.gradle.kts | 16 +-
.../nucleus/scheduler/Constraints.kt | 2 +-
.../nucleus/scheduler/CronExpression.kt | 2 +-
.../nucleus/scheduler/DesktopBootReceiver.kt | 20 +-
.../nucleus/scheduler/DesktopTask.kt | 2 +-
.../nucleus/scheduler/DesktopTaskScheduler.kt | 16 +-
.../nucleus/scheduler/ExistingTaskPolicy.kt | 2 +-
.../nucleus/scheduler/InternalSchedulerApi.kt | 2 +-
.../nucleus/scheduler/LastTaskResult.kt | 2 +-
.../nucleus/scheduler/RetryPolicy.kt | 2 +-
.../nucleus/scheduler/TaskContext.kt | 2 +-
.../nucleus/scheduler/TaskData.kt | 2 +-
.../nucleus/scheduler/TaskId.kt | 2 +-
.../nucleus/scheduler/TaskInfo.kt | 2 +-
.../nucleus/scheduler/TaskRegistry.kt | 2 +-
.../nucleus/scheduler/TaskRequest.kt | 2 +-
.../nucleus/scheduler/TaskResult.kt | 2 +-
.../scheduler/internal/ConstraintChecker.kt | 6 +-
.../internal/LinuxSystemdScheduler.kt | 18 +-
.../internal/LinuxSystemdSchedulerJni.kt | 4 +-
.../internal/MacOSLaunchdScheduler.kt | 22 +-
.../internal/MacOSLaunchdSchedulerJni.kt | 4 +-
.../scheduler/internal/NoopScheduler.kt | 10 +-
.../scheduler/internal/PlatformScheduler.kt | 10 +-
.../internal/SystemInfoConstraintChecker.kt | 12 +-
.../scheduler/internal/TaskMetadataStore.kt | 16 +-
.../scheduler/internal/TaskWrapperScript.kt | 6 +-
.../internal/WindowsTaskScheduler.kt | 18 +-
.../internal/WindowsTaskSchedulerJni.kt | 4 +-
.../native/linux/nucleus_scheduler_linux.c | 2 +-
.../src/main/native/macos/nucleus_scheduler.m | 2 +-
.../main/native/windows/nucleus_scheduler.cpp | 4 +-
.../reachability-metadata.json | 6 +-
.../internal/AppendCalendarIntervalTest.kt | 2 +-
.../scheduler/internal/BuildTimerUnitTest.kt | 8 +-
.../internal/ConvertCronToSchtasksTest.kt | 2 +-
scripts/generate-llms-docs.py | 8 +-
service-management-demo/build.gradle.kts | 8 +-
.../main/kotlin/servicemanagementdemo/Main.kt | 8 +-
service-management-macos/build.gradle.kts | 16 +-
.../nucleus/servicemanagement/AppService.kt | 2 +-
.../servicemanagement/AppServiceException.kt | 2 +-
.../servicemanagement/AppServiceManager.kt | 4 +-
.../servicemanagement/AppServiceStatus.kt | 2 +-
.../macos/NativeMacServiceManagementBridge.kt | 4 +-
.../macos/NucleusServiceManagementBridge.m | 12 +-
.../reachability-metadata.json | 2 +-
sf-symbols/build.gradle.kts | 16 +-
.../nucleus/sfsymbols/SFSymbol.kt | 2 +-
.../nucleus/sfsymbols/SFSymbolArrows.kt | 2 +-
.../nucleus/sfsymbols/SFSymbolCommerce.kt | 2 +-
.../sfsymbols/SFSymbolCommunication.kt | 2 +-
.../nucleus/sfsymbols/SFSymbolConnectivity.kt | 2 +-
.../nucleus/sfsymbols/SFSymbolDevices.kt | 2 +-
.../nucleus/sfsymbols/SFSymbolGeneral.kt | 2 +-
.../nucleus/sfsymbols/SFSymbolHealth.kt | 2 +-
.../nucleus/sfsymbols/SFSymbolHuman.kt | 2 +-
.../nucleus/sfsymbols/SFSymbolLetters.kt | 2 +-
.../nucleus/sfsymbols/SFSymbolLocation.kt | 2 +-
.../nucleus/sfsymbols/SFSymbolMedia.kt | 2 +-
.../nucleus/sfsymbols/SFSymbolNumbers.kt | 2 +-
.../sfsymbols/SFSymbolObjectsAndTools.kt | 2 +-
.../nucleus/sfsymbols/SFSymbolPower.kt | 2 +-
.../nucleus/sfsymbols/SFSymbolSecurity.kt | 2 +-
.../nucleus/sfsymbols/SFSymbolShapes.kt | 2 +-
.../nucleus/sfsymbols/SFSymbolStatus.kt | 2 +-
.../sfsymbols/SFSymbolTextFormatting.kt | 2 +-
.../nucleus/sfsymbols/SFSymbolTime.kt | 2 +-
.../sfsymbols/SFSymbolTransportation.kt | 2 +-
.../nucleus/sfsymbols/SFSymbolWeather.kt | 2 +-
system-color/build.gradle.kts | 16 +-
.../nucleus/systemcolor/Logger.kt | 4 +-
.../nucleus/systemcolor/SystemColor.kt | 22 +-
.../systemcolor/linux/LinuxSystemColor.kt | 4 +-
.../linux/NativeLinuxSystemColorBridge.kt | 6 +-
.../nucleus/systemcolor/mac/MacSystemColor.kt | 4 +-
.../mac/NativeMacSystemColorBridge.kt | 6 +-
.../windows/NativeWindowsSystemColorBridge.kt | 6 +-
.../systemcolor/windows/WindowsSystemColor.kt | 4 +-
.../native/linux/nucleus_systemcolor_linux.c | 14 +-
.../native/macos/NucleusSystemColorBridge.m | 14 +-
.../windows/nucleus_systemcolor_windows.c | 14 +-
.../reachability-metadata.json | 6 +-
system-info-demo/build.gradle.kts | 16 +-
.../src/main/kotlin/systeminfodemo/Main.kt | 4 +-
.../kotlin/systeminfodemo/ui/AppContent.kt | 8 +-
.../main/kotlin/systeminfodemo/ui/Theme.kt | 4 +-
.../systeminfodemo/ui/panels/NetworkPanel.kt | 2 +-
.../systeminfodemo/ui/panels/OverviewPanel.kt | 2 +-
.../viewmodel/SystemInfoViewModel.kt | 28 +-
system-info/build.gradle.kts | 16 +-
.../nucleus/systeminfo/PlatformSystemInfo.kt | 50 ++
.../nucleus/systeminfo/SystemInfo.kt | 38 +-
.../systeminfo/linux/LinuxSystemInfo.kt | 36 +-
.../linux/NativeLinuxSystemInfoBridge.kt | 4 +-
.../systeminfo/macos/MacOsSystemInfo.kt | 36 +-
.../macos/NativeMacOsSystemInfoBridge.kt | 4 +-
.../nucleus/systeminfo/model/BatteryInfo.kt | 2 +-
.../nucleus/systeminfo/model/BatteryState.kt | 2 +-
.../nucleus/systeminfo/model/ComponentInfo.kt | 2 +-
.../systeminfo/model/ConnectivityInfo.kt | 2 +-
.../nucleus/systeminfo/model/CpuGlobalInfo.kt | 2 +-
.../nucleus/systeminfo/model/CpuInfo.kt | 2 +-
.../nucleus/systeminfo/model/DiskInfo.kt | 2 +-
.../nucleus/systeminfo/model/GpuInfo.kt | 2 +-
.../nucleus/systeminfo/model/MemoryInfo.kt | 2 +-
.../systeminfo/model/MotherboardInfo.kt | 2 +-
.../systeminfo/model/NetworkInterfaceInfo.kt | 2 +-
.../nucleus/systeminfo/model/OsInfo.kt | 2 +-
.../nucleus/systeminfo/model/ProcessInfo.kt | 2 +-
.../nucleus/systeminfo/model/ProductInfo.kt | 2 +-
.../nucleus/systeminfo/model/UserInfo.kt | 2 +-
.../windows/NativeWindowsSystemInfoBridge.kt | 4 +-
.../systeminfo/windows/WindowsSystemInfo.kt | 36 +-
.../nucleus/systeminfo/PlatformSystemInfo.kt | 50 --
.../linux/nucleus_system_info_battery.c | 30 +-
.../native/linux/nucleus_system_info_common.h | 2 +-
.../linux/nucleus_system_info_component.c | 10 +-
.../linux/nucleus_system_info_connectivity.c | 4 +-
.../native/linux/nucleus_system_info_cpu.c | 16 +-
.../native/linux/nucleus_system_info_disk.c | 18 +-
.../native/linux/nucleus_system_info_gpu.c | 30 +-
.../linux/nucleus_system_info_hardware.c | 24 +-
.../native/linux/nucleus_system_info_idle.c | 2 +-
.../native/linux/nucleus_system_info_memory.c | 14 +-
.../linux/nucleus_system_info_network.c | 8 +-
.../native/linux/nucleus_system_info_os.c | 18 +-
.../linux/nucleus_system_info_process.c | 32 +-
.../native/linux/nucleus_system_info_user.c | 10 +-
.../macos/nucleus_system_info_battery.c | 30 +-
.../native/macos/nucleus_system_info_common.h | 2 +-
.../macos/nucleus_system_info_component.c | 10 +-
.../macos/nucleus_system_info_connectivity.c | 4 +-
.../native/macos/nucleus_system_info_cpu.c | 16 +-
.../native/macos/nucleus_system_info_disk.c | 18 +-
.../native/macos/nucleus_system_info_gpu.c | 30 +-
.../macos/nucleus_system_info_hardware.c | 24 +-
.../native/macos/nucleus_system_info_idle.c | 2 +-
.../native/macos/nucleus_system_info_memory.c | 14 +-
.../macos/nucleus_system_info_network.c | 8 +-
.../native/macos/nucleus_system_info_os.c | 18 +-
.../macos/nucleus_system_info_process.c | 32 +-
.../native/macos/nucleus_system_info_user.c | 10 +-
.../windows/nucleus_system_info_battery.c | 30 +-
.../windows/nucleus_system_info_common.h | 2 +-
.../windows/nucleus_system_info_component.c | 10 +-
.../nucleus_system_info_connectivity.c | 4 +-
.../native/windows/nucleus_system_info_cpu.c | 16 +-
.../native/windows/nucleus_system_info_disk.c | 18 +-
.../native/windows/nucleus_system_info_gpu.c | 30 +-
.../windows/nucleus_system_info_hardware.c | 24 +-
.../native/windows/nucleus_system_info_idle.c | 2 +-
.../windows/nucleus_system_info_memory.c | 14 +-
.../windows/nucleus_system_info_network.c | 20 +-
.../native/windows/nucleus_system_info_os.c | 18 +-
.../windows/nucleus_system_info_process.c | 52 +-
.../native/windows/nucleus_system_info_user.c | 10 +-
.../reachability-metadata.json | 19 +
.../reachability-metadata.json | 19 -
.../nucleus/systeminfo/SystemInfoSmokeTest.kt | 2 +-
.../nucleus/systeminfo/SystemInfoTest.kt | 2 +-
taskbar-progress-tao/build.gradle.kts | 16 +-
.../tao/NucleusTaskbarProgress.kt | 8 +-
.../taskbarprogress/tao/TaoTaskbarProgress.kt | 10 +-
taskbar-progress/build.gradle.kts | 16 +-
.../taskbarprogress/TaskbarProgress.kt | 12 +-
.../linux/LinuxDesktopFileDetector.kt | 4 +-
.../linux/NativeLinuxTaskbarBridge.kt | 6 +-
.../macos/NativeMacOsTaskbarBridge.kt | 4 +-
.../windows/NativeWindowsTaskbarBridge.kt | 4 +-
.../macos/nucleus_taskbar_progress_macos.m | 8 +-
.../native/windows/nucleus_taskbar_progress.c | 12 +-
tmp/souvlaki | 1 -
updater-runtime/build.gradle.kts | 16 +-
.../nucleus/updater/DownloadProgress.kt | 2 +-
.../nucleus/updater/NucleusUpdater.kt | 30 +-
.../nucleus/updater/UpdateEvent.kt | 2 +-
.../nucleus/updater/UpdateInfo.kt | 2 +-
.../nucleus/updater/UpdateLevel.kt | 2 +-
.../nucleus/updater/UpdateResult.kt | 4 +-
.../nucleus/updater/UpdaterConfig.kt | 8 +-
.../nucleus/updater/Version.kt | 2 +-
.../updater/exception/UpdateException.kt | 2 +-
.../updater/internal/ChecksumVerifier.kt | 2 +-
.../nucleus/updater/internal/FileSelector.kt | 4 +-
.../nucleus/updater/internal/PlatformInfo.kt | 4 +-
.../updater/internal/PlatformInstaller.kt | 4 +-
.../nucleus/updater/internal/UpdateMarker.kt | 4 +-
.../nucleus/updater/internal/YamlParser.kt | 4 +-
.../updater/provider/GenericProvider.kt | 4 +-
.../updater/provider/GitHubProvider.kt | 4 +-
.../updater/provider/UpdateProvider.kt | 4 +-
.../nucleus/updater/ChecksumVerifierTest.kt | 4 +-
.../nucleus/updater/FakeUpdateProvider.kt | 6 +-
.../nucleus/updater/FileSelectorTest.kt | 10 +-
.../nucleus/updater/UpdateEventTest.kt | 4 +-
.../nucleus/updater/UpdateMarkerTest.kt | 4 +-
.../nucleus/updater/VersionTest.kt | 2 +-
.../nucleus/updater/YamlParserTest.kt | 6 +-
958 files changed, 4846 insertions(+), 4847 deletions(-)
rename aot-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/aot/runtime/AotRuntime.kt (94%)
create mode 100644 aot-runtime/src/main/kotlin/dev/nucleusframework/nucleus/aot/runtime/ExecutableRuntime.kt
delete mode 100644 aot-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/aot/runtime/ExecutableRuntime.kt
rename aot-runtime/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/aot/runtime/AotRuntimeTest.kt (96%)
rename aot-runtime/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/aot/runtime/ExecutableRuntimeTest.kt (98%)
rename autolaunch/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/autolaunch/AutoLaunch.kt (94%)
rename autolaunch/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/autolaunch/AutoLaunchBackend.kt (96%)
rename autolaunch/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/autolaunch/AutoLaunchConfig.kt (90%)
rename autolaunch/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/autolaunch/AutoLaunchState.kt (97%)
rename autolaunch/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/autolaunch/linux/FlatpakPortalBackend.kt (93%)
rename autolaunch/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/autolaunch/linux/LinuxAutoLaunch.kt (83%)
rename autolaunch/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/autolaunch/linux/NativeAutoLaunchLinuxBridge.kt (94%)
rename autolaunch/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/autolaunch/linux/SystemdUserBackend.kt (94%)
rename autolaunch/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/autolaunch/macos/MacSMAppServiceBackend.kt (90%)
rename autolaunch/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/autolaunch/windows/MsixStartupTaskBackend.kt (89%)
rename autolaunch/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/autolaunch/windows/NativeAutoLaunchBridge.kt (93%)
rename autolaunch/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/autolaunch/windows/Win32RegistryBackend.kt (88%)
rename autolaunch/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/autolaunch/windows/WindowsAutoLaunch.kt (81%)
create mode 100644 autolaunch/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.autolaunch/reachability-metadata.json
delete mode 100644 autolaunch/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.autolaunch/reachability-metadata.json
rename autolaunch/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/autolaunch/Win32RegistryBackendTest.kt (91%)
rename core-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/core/runtime/DeepLinkHandler.kt (96%)
rename core-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/core/runtime/ExecutableRuntime.kt (98%)
rename core-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/core/runtime/LinuxDesktopEnvironment.kt (94%)
rename core-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/core/runtime/NativeLibraryLoader.kt (99%)
rename core-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/core/runtime/NucleusApp.kt (97%)
rename core-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/core/runtime/Platform.kt (93%)
rename core-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/core/runtime/SingleInstanceManager.kt (97%)
rename core-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/core/runtime/tools/AppIdProvider.kt (97%)
rename core-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/core/runtime/tools/LinuxDesktopFileDetector.kt (97%)
rename core-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/core/runtime/tools/Logger.kt (81%)
rename core-runtime/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/core/runtime/ExecutableRuntimeTest.kt (98%)
rename core-runtime/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/core/runtime/NucleusAppTest.kt (97%)
rename core-runtime/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/core/runtime/SingleInstanceHolder.kt (97%)
rename core-runtime/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/core/runtime/SingleInstanceManagerEndToEndTest.kt (98%)
rename darkmode-detector/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/darkmodedetector/IsSystemInDarkMode.kt (64%)
rename darkmode-detector/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/darkmodedetector/Logger.kt (79%)
rename darkmode-detector/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/darkmodedetector/linux/LinuxPortalThemeDetector.kt (94%)
rename darkmode-detector/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/darkmodedetector/linux/NativeLinuxBridge.kt (83%)
rename darkmode-detector/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/darkmodedetector/mac/MacOSThemeDetector.kt (93%)
rename darkmode-detector/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/darkmodedetector/mac/NativeDarkModeBridge.kt (83%)
rename darkmode-detector/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/darkmodedetector/windows/NativeWindowsBridge.kt (83%)
rename darkmode-detector/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/darkmodedetector/windows/WindowsThemeDetector.kt (93%)
rename darkmode-detector/src/main/resources/META-INF/native-image/{io.github.kdroidfilter => dev.nucleusframework}/nucleus.darkmode-detector/reachability-metadata.json (74%)
rename decorated-window-awt/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/AwtDecoratedWindow.kt (97%)
rename decorated-window-awt/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/AwtTitleBar.kt (95%)
rename decorated-window-awt/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/DecoratedDialogCore.kt (96%)
rename decorated-window-awt/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/DialogTitleBarImpl.kt (87%)
rename decorated-window-awt/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/WindowControlArea.kt (95%)
rename decorated-window-awt/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/WindowsWindowControlArea.kt (97%)
rename decorated-window-awt/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/internal/MinimumSizeSupport.kt (98%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/ControlButtonsDirection.kt (97%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/DecoratedDialogTypes.kt (97%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/DecoratedWindowCore.kt (99%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/NativeLayoutDirectionBridge.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/NucleusDecoratedWindowTheme.kt (84%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/TitleBarCore.kt (98%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/TitleBarLinuxCommon.kt (79%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/TitleBarModifiers.kt (96%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/Close.kt (90%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/CloseDark.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/CloseHover.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/CloseHoverDark.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/CloseInactive.kt (88%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/CloseInactiveDark.kt (88%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/ClosePressed.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/ClosePressedDark.kt (91%)
create mode 100644 decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/GnomeControlButtonsIcons.kt
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/Maximize.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/MaximizeDark.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/MaximizeHover.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/MaximizeHoverDark.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/MaximizeInactive.kt (88%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/MaximizeInactiveDark.kt (89%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/MaximizePressed.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/MaximizePressedDark.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/Minimize.kt (90%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/MinimizeDark.kt (90%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/MinimizeHover.kt (90%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/MinimizeHoverDark.kt (90%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/MinimizeInactive.kt (86%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/MinimizeInactiveDark.kt (86%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/MinimizePressed.kt (90%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/MinimizePressedDark.kt (90%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/Restore.kt (92%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/RestoreDark.kt (92%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/RestoreHover.kt (92%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/RestoreHoverDark.kt (92%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/RestoreInactive.kt (90%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/RestoreInactiveDark.kt (90%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/RestorePressed.kt (92%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/gnome/RestorePressedDark.kt (92%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/Close.kt (87%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/CloseDark.kt (88%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/CloseHover.kt (90%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/CloseHoverFocused.kt (90%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/CloseInactive.kt (88%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/CloseInactiveDark.kt (88%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/ClosePressed.kt (90%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/ClosePressedFocused.kt (91%)
create mode 100644 decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/KdeControlButtonsIcons.kt
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/Maximize.kt (88%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/MaximizeDark.kt (88%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/MaximizeHover.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/MaximizeHoverDark.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/MaximizeInactive.kt (89%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/MaximizePressed.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/MaximizePressedDark.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/Minimize.kt (88%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/MinimizeDark.kt (88%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/MinimizeHover.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/MinimizeHoverDark.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/MinimizeInactive.kt (89%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/MinimizePressed.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/MinimizePressedDark.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/Restore.kt (89%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/RestoreDark.kt (89%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/RestoreHover.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/RestoreHoverDark.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/RestoreInactive.kt (89%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/RestorePressed.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/linux/kde/RestorePressedDark.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/Close.kt (89%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/CloseDark.kt (89%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/CloseFullscreen.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/CloseFullscreenDark.kt (92%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/CloseFullscreenInactive.kt (92%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/CloseFullscreenInactiveDark.kt (92%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/CloseHover.kt (91%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/CloseInactive.kt (90%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/CloseInactiveDark.kt (90%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/Maximize.kt (87%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/MaximizeDark.kt (88%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/MaximizeInactive.kt (88%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/MaximizeInactiveDark.kt (88%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/Minimize.kt (87%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/MinimizeDark.kt (87%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/MinimizeInactive.kt (87%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/MinimizeInactiveDark.kt (88%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/Restore.kt (92%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/RestoreDark.kt (92%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/RestoreInactive.kt (93%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/icons/windows/RestoreInactiveDark.kt (93%)
create mode 100644 decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/WindowsControlButtonIcons.kt
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/internal/ColorUtils.kt (86%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/internal/InsideBorderModifier.kt (95%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/styling/DecoratedWindowStyling.kt (83%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/styling/TitleBarStyling.kt (88%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/utils/linux/LinuxButtonLayout.kt (96%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/utils/linux/LinuxTitleBarIconSet.kt (93%)
rename decorated-window-core/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/utils/windows/WindowsTitleBarIconSet.kt (61%)
delete mode 100644 decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/GnomeControlButtonsIcons.kt
delete mode 100644 decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/KdeControlButtonsIcons.kt
delete mode 100644 decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/WindowsControlButtonIcons.kt
rename decorated-window-core/src/main/resources/META-INF/native-image/{io.github.kdroidfilter => dev.nucleusframework}/nucleus.decorated-window-core/reachability-metadata.json (86%)
rename decorated-window-jbr/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/DecoratedDialog.kt (96%)
rename decorated-window-jbr/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/DecoratedWindow.kt (87%)
rename decorated-window-jbr/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/DialogTitleBar.Linux.kt (91%)
rename decorated-window-jbr/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/DialogTitleBar.MacOS.kt (85%)
rename decorated-window-jbr/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/DialogTitleBar.Windows.kt (85%)
rename {decorated-window-jni/src/main/kotlin/io/github/kdroidfilter => decorated-window-jbr/src/main/kotlin/dev/nucleusframework}/nucleus/window/DialogTitleBar.kt (87%)
rename decorated-window-jbr/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/TitleBar.Linux.kt (95%)
rename decorated-window-jbr/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/TitleBar.MacOS.kt (88%)
rename decorated-window-jbr/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/TitleBar.Windows.kt (85%)
rename decorated-window-jbr/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/TitleBar.kt (88%)
rename decorated-window-jbr/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/utils/ClientRegionHelper.kt (94%)
rename decorated-window-jbr/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/utils/macos/MacUtil.kt (97%)
rename decorated-window-jbr/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/utils/macos/NativeMacBridge.kt (74%)
rename decorated-window-jewel/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/jewel/JewelColorMapping.kt (76%)
rename decorated-window-jewel/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/jewel/JewelDecoratedDialog.kt (85%)
rename decorated-window-jewel/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/jewel/JewelDecoratedWindow.kt (87%)
rename decorated-window-jewel/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/jewel/JewelDialogTitleBar.kt (65%)
rename decorated-window-jewel/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/jewel/JewelTitleBar.kt (67%)
rename decorated-window-jni/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/DecoratedDialog.kt (95%)
rename decorated-window-jni/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/DecoratedWindow.kt (97%)
rename decorated-window-jni/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/DialogTitleBar.Linux.kt (95%)
rename decorated-window-jni/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/DialogTitleBar.MacOS.kt (85%)
rename decorated-window-jni/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/DialogTitleBar.Windows.kt (85%)
rename {decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter => decorated-window-jni/src/main/kotlin/dev/nucleusframework}/nucleus/window/DialogTitleBar.kt (87%)
rename decorated-window-jni/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/TitleBar.Linux.kt (97%)
rename decorated-window-jni/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/TitleBar.MacOS.kt (97%)
rename decorated-window-jni/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/TitleBar.Windows.kt (96%)
rename decorated-window-jni/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/TitleBar.kt (90%)
rename decorated-window-jni/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/utils/linux/JniLinuxWindowBridge.kt (89%)
rename decorated-window-jni/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/utils/macos/JniMacTitleBarBridge.kt (97%)
rename decorated-window-jni/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/utils/macos/JniMacWindowUtil.kt (98%)
rename decorated-window-jni/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/utils/windows/JniWindowsDecorationBridge.kt (96%)
rename decorated-window-jni/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/utils/windows/JniWindowsWindowUtil.kt (88%)
rename decorated-window-jni/src/main/resources/META-INF/native-image/{io.github.kdroidfilter => dev.nucleusframework}/nucleus.decorated-window-jni/reachability-metadata.json (82%)
rename decorated-window-material2/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/material2/MaterialColorMapping.kt (74%)
rename decorated-window-material2/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/material2/MaterialDecoratedDialog.kt (85%)
rename decorated-window-material2/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/material2/MaterialDecoratedWindow.kt (86%)
rename decorated-window-material2/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/material2/MaterialDialogTitleBar.kt (64%)
rename decorated-window-material2/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/material2/MaterialTitleBar.kt (72%)
rename decorated-window-material3/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/material/MaterialColorMapping.kt (75%)
rename decorated-window-material3/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/material/MaterialDecoratedDialog.kt (87%)
rename decorated-window-material3/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/material/MaterialDecoratedWindow.kt (88%)
rename decorated-window-material3/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/material/MaterialDialogTitleBar.kt (64%)
rename decorated-window-material3/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/material/MaterialTitleBar.kt (72%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/DialogTitleBar.kt (89%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/TitleBar.kt (93%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/ApplicationScope.kt (91%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/DecoratedDialog.kt (98%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/DecoratedWindow.kt (96%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/DecoratedWindowComposable.kt (99%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/FullscreenTitleBarHolder.kt (98%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/MacOSStyle.kt (85%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/NativeMetalBridge.kt (98%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/NativeTaoA11yWindowsBridge.kt (89%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/NativeTaoBridge.kt (99%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/NativeTaoEglBridge.kt (96%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/NativeTaoGlBridge.kt (93%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/NativeTaoLinuxDndBridge.kt (96%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/NativeTaoLinuxTouchBridge.kt (97%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/NativeTaoLinuxWidgetBridge.kt (97%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/NativeTaoMacOsDecoBridge.kt (96%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/NativeTaoMacOsDndBridge.kt (96%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/NativeTaoMacOsNativeViewBridge.kt (97%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/NativeTaoWindowsDecoBridge.kt (95%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/NativeTaoWindowsDndBridge.kt (95%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/NativeTaoWindowsNativeViewBridge.kt (93%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/NativeTaoWindowsOverlayBridge.kt (96%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/NativeView.kt (97%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/NativeViewOverlayController.kt (97%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/NativeViewOverlayController.windows.kt (98%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/NucleusPlatformView.kt (98%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/OverlayInteractionModifier.kt (97%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/PainterToRgba.kt (97%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/PopupNativeBridge.kt (98%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/PopupNativeBridge.windows.kt (95%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/TaoAccessibility.kt (99%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/TaoApplication.kt (98%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/TaoApplicationCompose.kt (98%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/TaoCursorMapping.kt (97%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/TaoDecoratedDialogScope.kt (75%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/TaoDecoratedWindowScope.kt (82%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/TaoDeepLinkBridge.kt (97%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/TaoDnDDiagnostics.kt (93%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/TaoDragAndDropManager.kt (99%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/TaoDragAndDropPayload.kt (91%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/TaoFilesTransferable.kt (97%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/TaoLinuxUriHandler.kt (95%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/TaoMainDispatcher.kt (99%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/TaoSemanticsObserver.kt (99%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/TaoSyntheticAwtDnd.kt (98%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/TaoWindow.kt (99%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/UndecoratedWindowBorder.kt (82%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/WindowControlsLinux.kt (93%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/WindowControlsWindows.kt (82%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/render/GlSceneRenderer.kt (97%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/render/MetalFrame.kt (92%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/render/MetalSceneRenderer.kt (96%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/render/TaoComposeSceneContext.kt (96%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/render/TaoComposeSceneContextWindows.kt (95%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/render/TaoComposeSceneHost.kt (92%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/render/TaoComposeSceneHostLinux.kt (90%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/render/TaoComposeSceneHostWindows.kt (86%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/render/TaoInteropTransaction.kt (96%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/render/TaoLinuxOverlayController.kt (97%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/render/TaoNativeWireFormat.kt (94%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/render/TaoPopupHost.kt (97%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/render/TaoPopupHostWindows.kt (98%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/render/TaoPopupSceneLayer.kt (98%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/render/TaoPopupSceneLayerWindows.kt (98%)
rename decorated-window-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/window/tao/render/TaoSyntheticKey.kt (97%)
rename decorated-window-tao/src/main/resources/META-INF/native-image/{io.github.kdroidfilter => dev.nucleusframework}/nucleus.decorated-window-tao/reachability-metadata.json (77%)
rename energy-manager/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/energymanager/EnergyManager.kt (94%)
rename energy-manager/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/energymanager/PlatformEnergyManager.kt (93%)
rename energy-manager/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/energymanager/linux/LinuxEnergyManager.kt (91%)
rename energy-manager/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/energymanager/linux/NativeLinuxEnergyBridge.kt (87%)
rename energy-manager/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/energymanager/macos/MacOsEnergyManager.kt (91%)
rename energy-manager/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/energymanager/macos/NativeMacOsEnergyBridge.kt (87%)
rename energy-manager/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/energymanager/windows/NativeWindowsEnergyBridge.kt (87%)
rename energy-manager/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/energymanager/windows/WindowsEnergyManager.kt (91%)
rename energy-manager/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/energymanager/EnergyManagerTest.kt (99%)
rename freedesktop-icons/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/freedesktop/icons/FreedesktopIcon.kt (99%)
rename global-hotkey/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/globalhotkey/GlobalHotKeyManager.kt (96%)
rename global-hotkey/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/globalhotkey/HotKeyListener.kt (87%)
rename global-hotkey/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/globalhotkey/HotKeyModifier.kt (93%)
rename global-hotkey/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/globalhotkey/MediaKey.kt (89%)
rename global-hotkey/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/globalhotkey/linux/NativeLinuxHotKeyBridge.kt (86%)
rename global-hotkey/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/globalhotkey/macos/NativeMacOsHotKeyBridge.kt (90%)
rename global-hotkey/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/globalhotkey/windows/NativeWindowsHotKeyBridge.kt (90%)
rename global-hotkey/src/main/resources/META-INF/native-image/{io.github.kdroidfilter => dev.nucleusframework}/nucleus.global-hotkey/reachability-metadata.json (71%)
rename graalvm-runtime/src/main/java/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/graalvm/font/FcFontManagerSubstitution.java (96%)
rename graalvm-runtime/src/main/java/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/graalvm/font/FontCreateFontSubstitution.java (96%)
rename graalvm-runtime/src/main/java/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/graalvm/font/IsLinux.java (86%)
rename graalvm-runtime/src/main/java/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/graalvm/font/IsWindows.java (86%)
rename graalvm-runtime/src/main/java/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/graalvm/font/IsWindowsOrLinux.java (88%)
rename graalvm-runtime/src/main/java/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/graalvm/font/Win32FontManagerSubstitution.java (95%)
rename graalvm-runtime/src/main/java/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/graalvm/wmclass/AppNameResolver.java (98%)
rename graalvm-runtime/src/main/java/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/graalvm/wmclass/IsLinux.java (85%)
rename graalvm-runtime/src/main/java/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/graalvm/wmclass/XToolkitAppNameSubstitution.java (94%)
rename graalvm-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/graalvm/GraalVmInitializer.kt (96%)
rename graalvm-runtime/src/main/resources/META-INF/native-image/{io.github.kdroidfilter => dev.nucleusframework}/nucleus.graalvm-runtime/native-image.properties (100%)
rename launcher-linux/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/linux/DbusmenuItem.kt (94%)
rename launcher-linux/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/linux/LauncherProperties.kt (94%)
rename launcher-linux/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/linux/LinuxLauncherEntry.kt (98%)
rename launcher-linux/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/linux/LinuxQuicklist.kt (98%)
rename launcher-linux/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/linux/NativeLinuxLauncherBridge.kt (94%)
rename launcher-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/macos/DockMenuItem.kt (94%)
rename launcher-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/macos/DockMenuListener.kt (78%)
rename launcher-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/macos/MacOsDockMenu.kt (97%)
rename launcher-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/macos/NativeMacOsDockMenuBridge.kt (85%)
rename launcher-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/windows/BadgeGlyph.kt (92%)
rename launcher-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/windows/JumpListCategory.kt (87%)
rename launcher-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/windows/JumpListItem.kt (95%)
rename launcher-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/windows/KnownCategory.kt (87%)
rename launcher-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/windows/NativeWindowsBadgeBridge.kt (83%)
rename launcher-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/windows/NativeWindowsJumpListBridge.kt (91%)
rename launcher-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/windows/NativeWindowsTaskbarBridge.kt (92%)
rename launcher-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/windows/StockIcon.kt (98%)
rename launcher-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/windows/TaskbarIconSource.kt (93%)
rename launcher-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/windows/ThumbBarClickListener.kt (83%)
rename launcher-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/windows/ThumbnailToolbarButton.kt (97%)
rename launcher-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/windows/WindowsBadgeManager.kt (96%)
rename launcher-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/windows/WindowsJumpListManager.kt (97%)
rename launcher-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/windows/WindowsOverlayIcon.kt (98%)
rename launcher-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/launcher/windows/WindowsThumbnailToolbar.kt (99%)
rename launcher-windows/src/main/resources/META-INF/native-image/{io.github.kdroidfilter => dev.nucleusframework}/nucleus.launcher-windows/reachability-metadata.json (54%)
rename linux-hidpi/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/hidpi/HiDpiLinuxBridge.kt (88%)
rename linux-hidpi/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/hidpi/LinuxHiDpi.kt (98%)
create mode 100644 linux-hidpi/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.linux-hidpi/native-image.properties
delete mode 100644 linux-hidpi/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.linux-hidpi/native-image.properties
rename media-control/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/media/control/MediaControlEvent.kt (96%)
rename media-control/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/media/control/MediaControlService.kt (95%)
rename media-control/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/media/control/MediaMetadata.kt (92%)
rename media-control/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/media/control/MediaPlaybackStatus.kt (89%)
rename media-control/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/media/control/linux/NativeLinuxBridge.kt (92%)
rename media-control/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/media/control/macos/NativeMacOsBridge.kt (92%)
rename media-control/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/media/control/windows/NativeWindowsBridge.kt (92%)
rename media-control/src/main/resources/META-INF/native-image/{io.github.kdroidfilter => dev.nucleusframework}/nucleus.media-control/reachability-metadata.json (89%)
rename menu-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/menu/macos/NativeMenuBar.kt (99%)
rename menu-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/menu/macos/NativeNsMenuBridge.kt (98%)
rename menu-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/menu/macos/NsMenu.kt (99%)
rename menu-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/menu/macos/NsMenuDelegate.kt (95%)
rename menu-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/menu/macos/NsMenuItem.kt (99%)
rename menu-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/menu/macos/NsMenuItemBadge.kt (96%)
rename menu-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/menu/macos/NsMenuTypes.kt (94%)
rename menu-macos/src/main/resources/META-INF/native-image/{io.github.kdroidfilter => dev.nucleusframework}/nucleus.menu-macos/reachability-metadata.json (91%)
rename native-http-ktor/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/nativehttp/ktor/NativeSslKtorExtension.kt (93%)
rename native-http-ktor/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/nativehttp/ktor/NativeSslKtorExtensionTest.kt (95%)
rename native-http-okhttp/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/nativehttp/okhttp/NativeOkHttpClient.kt (73%)
rename native-http-okhttp/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/nativehttp/okhttp/NativeOkHttpClientTest.kt (90%)
rename native-http/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/nativehttp/NativeHttpClient.kt (82%)
rename native-http/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/nativehttp/NativeHttpClientTest.kt (92%)
rename native-ssl/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/nativessl/Logger.kt (80%)
rename native-ssl/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/nativessl/NativeCertificateProvider.kt (77%)
rename native-ssl/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/nativessl/NativeTrustManager.kt (97%)
rename native-ssl/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/nativessl/linux/LinuxCertificateProvider.kt (97%)
rename native-ssl/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/nativessl/mac/NativeSslBridge.kt (84%)
rename native-ssl/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/nativessl/windows/WindowsCertificateProvider.kt (96%)
rename native-ssl/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/nativessl/windows/WindowsSslBridge.kt (83%)
rename native-ssl/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/nativessl/NativeSslTest.kt (97%)
rename notification-common/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/common/DismissReason.kt (88%)
rename notification-common/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/common/Notification.kt (98%)
rename notification-common/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/common/NotificationHandle.kt (75%)
rename notification-common/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/common/NotificationManager.kt (87%)
rename notification-common/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/common/NotificationResult.kt (85%)
rename notification-common/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/common/internal/CallbackRegistry.kt (87%)
rename notification-common/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/common/internal/DispatcherFactory.kt (92%)
rename notification-common/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/common/internal/LinuxDispatcher.kt (82%)
rename notification-common/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/common/internal/MacOsDispatcher.kt (85%)
rename notification-common/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/common/internal/NotificationCallbacks.kt (60%)
create mode 100644 notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/PlatformDispatcher.kt
rename notification-common/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/common/internal/WindowsDispatcher.kt (89%)
delete mode 100644 notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/PlatformDispatcher.kt
rename notification-linux/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/linux/Enums.kt (94%)
rename notification-linux/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/linux/LinuxNotificationCenter.kt (98%)
rename notification-linux/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/linux/LinuxNotificationListener.kt (96%)
rename notification-linux/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/linux/Model.kt (97%)
rename notification-linux/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/linux/NativeLinuxNotificationBridge.kt (95%)
rename notification-linux/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/linux/NotificationSound.kt (99%)
rename notification-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/Enums.kt (98%)
rename notification-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/Model.kt (99%)
rename notification-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/NotificationCenter.kt (98%)
rename notification-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/NotificationCenterDelegate.kt (95%)
rename notification-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/macos/NativeMacNotificationBridge.kt (92%)
rename notification-macos/src/main/resources/META-INF/native-image/{io.github.kdroidfilter => dev.nucleusframework}/nucleus.notification-macos/reachability-metadata.json (96%)
rename notification-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/windows/Enums.kt (98%)
rename notification-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/windows/Model.kt (99%)
rename notification-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/windows/NativeWindowsNotificationBridge.kt (98%)
rename notification-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/windows/ToastContentDsl.kt (99%)
rename notification-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/windows/ToastNotificationListener.kt (95%)
rename notification-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/windows/ToastXmlBuilder.kt (99%)
rename notification-windows/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/notification/windows/WindowsNotificationCenter.kt (98%)
rename notification-windows/src/main/resources/META-INF/native-image/{io.github.kdroidfilter => dev.nucleusframework}/nucleus.notification-windows/reachability-metadata.json (91%)
rename nucleus-application/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/application/AwtDialogNucleusWindow.kt (98%)
rename nucleus-application/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/application/AwtNucleusWindow.kt (99%)
rename nucleus-application/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/application/DecoratedDialog.kt (89%)
rename nucleus-application/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/application/DecoratedWindow.kt (90%)
rename nucleus-application/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/application/NucleusApplication.kt (92%)
rename nucleus-application/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/application/NucleusApplicationScope.kt (89%)
rename nucleus-application/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/application/NucleusBackend.kt (95%)
rename nucleus-application/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/application/NucleusWindow.kt (91%)
rename nucleus-application/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/application/TaoNucleusWindow.kt (95%)
rename nucleus-application/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/application/internal/TaoDecoratedDialogAdapter.kt (75%)
rename nucleus-application/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/application/internal/TaoDecoratedWindowAdapter.kt (78%)
rename nucleus-application/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/application/internal/TaoLauncher.kt (70%)
rename sample-jni/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/samplejni/ActionsTab.kt (97%)
rename sample-jni/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/samplejni/Main.kt (88%)
rename sample-shared/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/sampleshared/A11yTab.kt (99%)
rename sample-shared/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/sampleshared/Common.kt (98%)
rename sample-shared/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/sampleshared/ComplexTab.kt (99%)
rename sample-shared/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/sampleshared/EventsTab.kt (98%)
rename sample-shared/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/sampleshared/FancyDemo.kt (99%)
rename sample-shared/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/sampleshared/ScrollTab.kt (98%)
rename sample-shared/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/sampleshared/ZoomTab.kt (99%)
rename sample-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/sampletao/ActionsTab.kt (99%)
rename sample-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/sampletao/Main.kt (94%)
rename sample-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/sampletao/SampleSwiftUIBridge.kt (97%)
rename sample-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/sampletao/SampleWebViewBridge.kt (88%)
rename sample-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/sampletao/SampleWebViewController.kt (97%)
rename sample-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/sampletao/SampleWebViewLinuxBridge.kt (91%)
rename sample-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/sampletao/SampleWebViewWindowsBridge.kt (96%)
rename sample-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/sampletao/SwiftUITab.kt (95%)
rename sample-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/sampletao/WebViewTab.kt (97%)
rename scheduler-testing/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/testing/TestConstraintChecker.kt (87%)
rename scheduler-testing/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/testing/TestDesktopTaskScheduler.kt (92%)
rename scheduler-testing/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/testing/TestTaskRunner.kt (79%)
rename scheduler-testing/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/testing/SchedulerTestingTest.kt (95%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/Constraints.kt (98%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/CronExpression.kt (97%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/DesktopBootReceiver.kt (91%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/DesktopTask.kt (93%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/DesktopTaskScheduler.kt (86%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/ExistingTaskPolicy.kt (96%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/InternalSchedulerApi.kt (92%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/LastTaskResult.kt (96%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/RetryPolicy.kt (96%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/TaskContext.kt (95%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/TaskData.kt (98%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/TaskId.kt (94%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/TaskInfo.kt (95%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/TaskRegistry.kt (97%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/TaskRequest.kt (99%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/TaskResult.kt (93%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/internal/ConstraintChecker.kt (79%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/internal/LinuxSystemdScheduler.kt (96%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/internal/LinuxSystemdSchedulerJni.kt (92%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/internal/MacOSLaunchdScheduler.kt (97%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/internal/MacOSLaunchdSchedulerJni.kt (95%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/internal/NoopScheduler.kt (64%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/internal/PlatformScheduler.kt (75%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/internal/SystemInfoConstraintChecker.kt (89%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/internal/TaskMetadataStore.kt (96%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/internal/TaskWrapperScript.kt (97%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/internal/WindowsTaskScheduler.kt (96%)
rename scheduler/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/internal/WindowsTaskSchedulerJni.kt (96%)
rename scheduler/src/main/resources/META-INF/native-image/{io.github.kdroidfilter => dev.nucleusframework}/nucleus.scheduler/reachability-metadata.json (94%)
rename scheduler/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/internal/AppendCalendarIntervalTest.kt (97%)
rename scheduler/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/internal/BuildTimerUnitTest.kt (92%)
rename scheduler/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/scheduler/internal/ConvertCronToSchtasksTest.kt (97%)
rename service-management-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/servicemanagement/AppService.kt (97%)
rename service-management-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/servicemanagement/AppServiceException.kt (71%)
rename service-management-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/servicemanagement/AppServiceManager.kt (96%)
rename service-management-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/servicemanagement/AppServiceStatus.kt (93%)
rename service-management-macos/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/servicemanagement/macos/NativeMacServiceManagementBridge.kt (95%)
rename service-management-macos/src/main/resources/META-INF/native-image/{io.github.kdroidfilter => dev.nucleusframework}/nucleus.service-management-macos/reachability-metadata.json (71%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbol.kt (93%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolArrows.kt (99%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolCommerce.kt (99%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolCommunication.kt (99%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolConnectivity.kt (96%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolDevices.kt (99%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolGeneral.kt (99%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolHealth.kt (98%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolHuman.kt (99%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolLetters.kt (99%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolLocation.kt (97%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolMedia.kt (99%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolNumbers.kt (99%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolObjectsAndTools.kt (99%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolPower.kt (98%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolSecurity.kt (98%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolShapes.kt (99%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolStatus.kt (99%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolTextFormatting.kt (99%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolTime.kt (98%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolTransportation.kt (99%)
rename sf-symbols/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/sfsymbols/SFSymbolWeather.kt (99%)
rename system-color/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systemcolor/Logger.kt (79%)
rename system-color/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systemcolor/SystemColor.kt (64%)
rename system-color/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systemcolor/linux/LinuxSystemColor.kt (95%)
rename system-color/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systemcolor/linux/NativeLinuxSystemColorBridge.kt (92%)
rename system-color/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systemcolor/mac/MacSystemColor.kt (95%)
rename system-color/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systemcolor/mac/NativeMacSystemColorBridge.kt (93%)
rename system-color/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systemcolor/windows/NativeWindowsSystemColorBridge.kt (93%)
rename system-color/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systemcolor/windows/WindowsSystemColor.kt (95%)
rename system-color/src/main/resources/META-INF/native-image/{io.github.kdroidfilter => dev.nucleusframework}/nucleus.system-color/reachability-metadata.json (79%)
create mode 100644 system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/PlatformSystemInfo.kt
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/SystemInfo.kt (54%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/linux/LinuxSystemInfo.kt (93%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/linux/NativeLinuxSystemInfoBridge.kt (98%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/macos/MacOsSystemInfo.kt (93%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/macos/NativeMacOsSystemInfoBridge.kt (98%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/model/BatteryInfo.kt (89%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/model/BatteryState.kt (59%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/model/ComponentInfo.kt (69%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/model/ConnectivityInfo.kt (77%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/model/CpuGlobalInfo.kt (68%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/model/CpuInfo.kt (72%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/model/DiskInfo.kt (81%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/model/GpuInfo.kt (89%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/model/MemoryInfo.kt (78%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/model/MotherboardInfo.kt (74%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/model/NetworkInterfaceInfo.kt (84%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/model/OsInfo.kt (82%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/model/ProcessInfo.kt (85%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/model/ProductInfo.kt (78%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/model/UserInfo.kt (68%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/windows/NativeWindowsSystemInfoBridge.kt (98%)
rename system-info/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/windows/WindowsSystemInfo.kt (93%)
delete mode 100644 system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/PlatformSystemInfo.kt
create mode 100644 system-info/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.system-info/reachability-metadata.json
delete mode 100644 system-info/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.system-info/reachability-metadata.json
rename system-info/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/SystemInfoSmokeTest.kt (99%)
rename system-info/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/systeminfo/SystemInfoTest.kt (98%)
rename taskbar-progress-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/taskbarprogress/tao/NucleusTaskbarProgress.kt (94%)
rename taskbar-progress-tao/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/taskbarprogress/tao/TaoTaskbarProgress.kt (91%)
rename taskbar-progress/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/taskbarprogress/TaskbarProgress.kt (96%)
rename taskbar-progress/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/taskbarprogress/linux/LinuxDesktopFileDetector.kt (51%)
rename taskbar-progress/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/taskbarprogress/linux/NativeLinuxTaskbarBridge.kt (88%)
rename taskbar-progress/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/taskbarprogress/macos/NativeMacOsTaskbarBridge.kt (81%)
rename taskbar-progress/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/taskbarprogress/windows/NativeWindowsTaskbarBridge.kt (88%)
delete mode 160000 tmp/souvlaki
rename updater-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/DownloadProgress.kt (77%)
rename updater-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/NucleusUpdater.kt (91%)
rename updater-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/UpdateEvent.kt (85%)
rename updater-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/UpdateInfo.kt (86%)
rename updater-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/UpdateLevel.kt (62%)
rename updater-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/UpdateResult.kt (69%)
rename updater-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/UpdaterConfig.kt (79%)
rename updater-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/Version.kt (98%)
rename updater-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/exception/UpdateException.kt (91%)
rename updater-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/internal/ChecksumVerifier.kt (93%)
rename updater-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/internal/FileSelector.kt (96%)
rename updater-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/internal/PlatformInfo.kt (86%)
rename updater-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/internal/PlatformInstaller.kt (98%)
rename updater-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/internal/UpdateMarker.kt (95%)
rename updater-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/internal/YamlParser.kt (96%)
rename updater-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/provider/GenericProvider.kt (87%)
rename updater-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/provider/GitHubProvider.kt (90%)
rename updater-runtime/src/main/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/provider/UpdateProvider.kt (70%)
rename updater-runtime/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/ChecksumVerifierTest.kt (94%)
rename updater-runtime/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/FakeUpdateProvider.kt (66%)
rename updater-runtime/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/FileSelectorTest.kt (94%)
rename updater-runtime/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/UpdateEventTest.kt (95%)
rename updater-runtime/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/UpdateMarkerTest.kt (94%)
rename updater-runtime/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/VersionTest.kt (98%)
rename updater-runtime/src/test/kotlin/{io/github/kdroidfilter => dev/nucleusframework}/nucleus/updater/YamlParserTest.kt (95%)
diff --git a/.editorconfig b/.editorconfig
index 59257f1f0..ea47e2b2c 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -14,7 +14,7 @@ indent_size = 2
max_line_length = 120
ktlint_standard_backing-property-naming = disabled
ktlint_standard_function-naming = disabled
-ij_kotlin_packages_to_use_import_on_demand = io.github.kdroidfilter.nucleus.window.icons.**
+ij_kotlin_packages_to_use_import_on_demand = dev.nucleusframework.nucleus.window.icons.**
[**/generated/**]
ktlint = disabled
diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml
index b3936b959..589f933f6 100644
--- a/.github/FUNDING.yml
+++ b/.github/FUNDING.yml
@@ -1,2 +1,2 @@
-github: kdroidFilter
+github: nucleusframework
ko_fi: lomityaesh
diff --git a/.github/workflows/release-desktop.yaml b/.github/workflows/release-desktop.yaml
index 3fbd6ed10..79fe803d1 100644
--- a/.github/workflows/release-desktop.yaml
+++ b/.github/workflows/release-desktop.yaml
@@ -33,10 +33,10 @@ jobs:
node-version: '22' # npm 11 (Node 24) has ECOMPROMISED bugs on Windows ARM64
- os: macos-latest
arch: arm64
- jbr-download-url: 'https://github.com/kdroidFilter/JetBrainsRuntime/releases/download/v25.0.2b329.66-rtl/jdk-macos-aarch64.tar.gz'
+ jbr-download-url: 'https://github.com/nucleusframework/JetBrainsRuntime/releases/download/v25.0.2b329.66-rtl/jdk-macos-aarch64.tar.gz'
- os: macos-15-intel
arch: amd64
- jbr-download-url: 'https://github.com/kdroidFilter/JetBrainsRuntime/releases/download/v25.0.2b329.66-rtl/jdk-macos-x64.tar.gz'
+ jbr-download-url: 'https://github.com/nucleusframework/JetBrainsRuntime/releases/download/v25.0.2b329.66-rtl/jdk-macos-x64.tar.gz'
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
diff --git a/.github/workflows/test-packaging.yaml b/.github/workflows/test-packaging.yaml
index bd373530e..accc9096a 100644
--- a/.github/workflows/test-packaging.yaml
+++ b/.github/workflows/test-packaging.yaml
@@ -38,11 +38,11 @@ jobs:
- name: macOS ARM64
os: macos-latest
arch: arm64
- jbr-download-url: 'https://github.com/kdroidFilter/JetBrainsRuntime/releases/download/v25.0.2b329.66-rtl/jdk-macos-aarch64.tar.gz'
+ jbr-download-url: 'https://github.com/nucleusframework/JetBrainsRuntime/releases/download/v25.0.2b329.66-rtl/jdk-macos-aarch64.tar.gz'
- name: macOS Intel
os: macos-15-intel
arch: amd64
- jbr-download-url: 'https://github.com/kdroidFilter/JetBrainsRuntime/releases/download/v25.0.2b329.66-rtl/jdk-macos-x64.tar.gz'
+ jbr-download-url: 'https://github.com/nucleusframework/JetBrainsRuntime/releases/download/v25.0.2b329.66-rtl/jdk-macos-x64.tar.gz'
steps:
- name: Checkout Repo
diff --git a/CLAUDE.md b/CLAUDE.md
index 284e3fa1c..71af806ca 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -63,7 +63,7 @@ When creating a new module with platform-specific JNI libraries, all steps below
1. **Native source** — `/src/main/native/{linux,macos,windows}/` with `build.sh`/`build.bat` + C/ObjC source. Library name: `nucleus_`. Linux: prefer `dlopen` over hard compile-time deps.
2. **Build output** — scripts must place binaries in `/src/main/resources/nucleus/native/{linux-x64,linux-aarch64,darwin-x64,darwin-aarch64,win32-x64,win32-aarch64}/`. Build scripts must also clear the `NativeLibraryLoader` cache (`~/.cache/nucleus/native//`) after compilation, otherwise the loader serves the stale cached copy instead of the freshly built library.
3. **Kotlin JNI bridge** — `internal object` using `NativeLibraryLoader.load()` with `@JvmStatic external` methods. Always provide a Kotlin fallback when native lib is unavailable.
-4. **GraalVM reachability metadata** — create `/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus./reachability-metadata.json` declaring all JNI-accessible classes/methods. Without this, native-image silently eliminates the bridge.
+4. **GraalVM reachability metadata** — create `/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus./reachability-metadata.json` declaring all JNI-accessible classes/methods. Without this, native-image silently eliminates the bridge.
5. **CI build** (`build-natives.yaml`) — add build + verify + upload steps for each platform (Windows, macOS, Linux matrix x64+aarch64). Artifact naming: `-`.
6. **CI consumers** — add download step + EXPECTED verify entries (all 6 arch paths) in **every** consumer workflow: `pre-merge.yaml`, `publish-maven.yaml`, `publish-plugin.yaml`, `test-packaging.yaml`, `test-graalvm.yaml`, `release-graalvm.yaml`.
diff --git a/IDEAL_API.md b/IDEAL_API.md
index 498e9db30..393e82175 100644
--- a/IDEAL_API.md
+++ b/IDEAL_API.md
@@ -20,7 +20,7 @@ Everything else stays exactly as it is today. Each OS integration keeps its nati
```kotlin
plugins {
- id("io.github.kdroidfilter.nucleus") version "1.4.0"
+ id("dev.nucleusframework.nucleus") version "1.4.0"
}
nucleus {
@@ -33,7 +33,7 @@ nucleus {
dependencies {
implementation(compose.desktop.currentOs)
- implementation("io.github.kdroidfilter:nucleus.application-runtime:1.4.0")
+ implementation("dev.nucleusframework:nucleus.application-runtime:1.4.0")
}
```
diff --git a/README.md b/README.md
index a4502fa36..a469ca8db 100644
--- a/README.md
+++ b/README.md
@@ -4,10 +4,10 @@
# Nucleus
-[](https://plugins.gradle.org/plugin/io.github.kdroidfilter.nucleus)
-[](https://central.sonatype.com/search?q=io.github.kdroidfilter.nucleus)
-[](https://github.com/kdroidFilter/Nucleus/actions/workflows/pre-merge.yaml)
-[](https://github.com/kdroidFilter/Nucleus/blob/main/LICENSE)
+[](https://plugins.gradle.org/plugin/dev.nucleusframework.nucleus)
+[](https://central.sonatype.com/search?q=dev.nucleusframework.nucleus)
+[](https://github.com/nucleusframework/Nucleus/actions/workflows/pre-merge.yaml)
+[](https://github.com/nucleusframework/Nucleus/blob/main/LICENSE)


@@ -65,7 +65,7 @@ Java evolved into Kotlin. JavaScript evolved into TypeScript. Desktop developmen
```kotlin
plugins {
- id("io.github.kdroidfilter.nucleus") version ""
+ id("dev.nucleusframework.nucleus") version ""
}
nucleus.application {
diff --git a/aot-runtime/build.gradle.kts b/aot-runtime/build.gradle.kts
index 48c798e46..58252906f 100644
--- a/aot-runtime/build.gradle.kts
+++ b/aot-runtime/build.gradle.kts
@@ -30,12 +30,12 @@ kotlin {
}
mavenPublishing {
- coordinates("io.github.kdroidfilter", "nucleus.aot-runtime", publishVersion)
+ coordinates("dev.nucleusframework", "nucleus.aot-runtime", publishVersion)
pom {
name.set("Nucleus AOT Runtime")
description.set("AOT runtime library for the Nucleus Gradle plugin")
- url.set("https://github.com/kdroidFilter/Nucleus")
+ url.set("https://github.com/nucleusframework/Nucleus")
licenses {
license {
@@ -46,16 +46,16 @@ mavenPublishing {
developers {
developer {
- id.set("kdroidfilter")
- name.set("kdroidFilter")
- url.set("https://github.com/kdroidFilter")
+ id.set("nucleusframework")
+ name.set("nucleusframework")
+ url.set("https://github.com/nucleusframework")
}
}
scm {
- url.set("https://github.com/kdroidFilter/Nucleus")
- connection.set("scm:git:git://github.com/kdroidFilter/Nucleus.git")
- developerConnection.set("scm:git:ssh://git@github.com/kdroidFilter/Nucleus.git")
+ url.set("https://github.com/nucleusframework/Nucleus")
+ connection.set("scm:git:git://github.com/nucleusframework/Nucleus.git")
+ developerConnection.set("scm:git:ssh://git@github.com/nucleusframework/Nucleus.git")
}
}
diff --git a/aot-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/aot/runtime/AotRuntime.kt b/aot-runtime/src/main/kotlin/dev/nucleusframework/nucleus/aot/runtime/AotRuntime.kt
similarity index 94%
rename from aot-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/aot/runtime/AotRuntime.kt
rename to aot-runtime/src/main/kotlin/dev/nucleusframework/nucleus/aot/runtime/AotRuntime.kt
index 5f387c6b7..c56d8afa2 100644
--- a/aot-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/aot/runtime/AotRuntime.kt
+++ b/aot-runtime/src/main/kotlin/dev/nucleusframework/nucleus/aot/runtime/AotRuntime.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.aot.runtime
+package dev.nucleusframework.nucleus.aot.runtime
public enum class AotRuntimeMode {
OFF,
diff --git a/aot-runtime/src/main/kotlin/dev/nucleusframework/nucleus/aot/runtime/ExecutableRuntime.kt b/aot-runtime/src/main/kotlin/dev/nucleusframework/nucleus/aot/runtime/ExecutableRuntime.kt
new file mode 100644
index 000000000..7cf2e9978
--- /dev/null
+++ b/aot-runtime/src/main/kotlin/dev/nucleusframework/nucleus/aot/runtime/ExecutableRuntime.kt
@@ -0,0 +1,5 @@
+package dev.nucleusframework.nucleus.aot.runtime
+
+public typealias ExecutableType = dev.nucleusframework.nucleus.core.runtime.ExecutableType
+
+public typealias ExecutableRuntime = dev.nucleusframework.nucleus.core.runtime.ExecutableRuntime
diff --git a/aot-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/aot/runtime/ExecutableRuntime.kt b/aot-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/aot/runtime/ExecutableRuntime.kt
deleted file mode 100644
index f77e3ea13..000000000
--- a/aot-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/aot/runtime/ExecutableRuntime.kt
+++ /dev/null
@@ -1,5 +0,0 @@
-package io.github.kdroidfilter.nucleus.aot.runtime
-
-public typealias ExecutableType = io.github.kdroidfilter.nucleus.core.runtime.ExecutableType
-
-public typealias ExecutableRuntime = io.github.kdroidfilter.nucleus.core.runtime.ExecutableRuntime
diff --git a/aot-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/aot/runtime/AotRuntimeTest.kt b/aot-runtime/src/test/kotlin/dev/nucleusframework/nucleus/aot/runtime/AotRuntimeTest.kt
similarity index 96%
rename from aot-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/aot/runtime/AotRuntimeTest.kt
rename to aot-runtime/src/test/kotlin/dev/nucleusframework/nucleus/aot/runtime/AotRuntimeTest.kt
index 918203841..f0006e7c6 100644
--- a/aot-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/aot/runtime/AotRuntimeTest.kt
+++ b/aot-runtime/src/test/kotlin/dev/nucleusframework/nucleus/aot/runtime/AotRuntimeTest.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.aot.runtime
+package dev.nucleusframework.nucleus.aot.runtime
import org.junit.Assert.assertEquals
import org.junit.Assert.assertNull
diff --git a/aot-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/aot/runtime/ExecutableRuntimeTest.kt b/aot-runtime/src/test/kotlin/dev/nucleusframework/nucleus/aot/runtime/ExecutableRuntimeTest.kt
similarity index 98%
rename from aot-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/aot/runtime/ExecutableRuntimeTest.kt
rename to aot-runtime/src/test/kotlin/dev/nucleusframework/nucleus/aot/runtime/ExecutableRuntimeTest.kt
index 596273d87..25b2e0bad 100644
--- a/aot-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/aot/runtime/ExecutableRuntimeTest.kt
+++ b/aot-runtime/src/test/kotlin/dev/nucleusframework/nucleus/aot/runtime/ExecutableRuntimeTest.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.aot.runtime
+package dev.nucleusframework.nucleus.aot.runtime
import org.junit.Assert.assertEquals
import org.junit.Assert.assertFalse
diff --git a/autolaunch/build.gradle.kts b/autolaunch/build.gradle.kts
index 17c4fbab0..a56640045 100644
--- a/autolaunch/build.gradle.kts
+++ b/autolaunch/build.gradle.kts
@@ -75,12 +75,12 @@ tasks.configureEach {
}
mavenPublishing {
- coordinates("io.github.kdroidfilter", "nucleus.autolaunch", publishVersion)
+ coordinates("dev.nucleusframework", "nucleus.autolaunch", publishVersion)
pom {
name.set("Nucleus Autolaunch")
description.set("Cross-platform auto-launch at user login for JVM desktop applications")
- url.set("https://github.com/kdroidFilter/Nucleus")
+ url.set("https://github.com/nucleusframework/Nucleus")
licenses {
license {
@@ -91,16 +91,16 @@ mavenPublishing {
developers {
developer {
- id.set("kdroidfilter")
- name.set("kdroidFilter")
- url.set("https://github.com/kdroidFilter")
+ id.set("nucleusframework")
+ name.set("nucleusframework")
+ url.set("https://github.com/nucleusframework")
}
}
scm {
- url.set("https://github.com/kdroidFilter/Nucleus")
- connection.set("scm:git:git://github.com/kdroidFilter/Nucleus.git")
- developerConnection.set("scm:git:ssh://git@github.com/kdroidFilter/Nucleus.git")
+ url.set("https://github.com/nucleusframework/Nucleus")
+ connection.set("scm:git:git://github.com/nucleusframework/Nucleus.git")
+ developerConnection.set("scm:git:ssh://git@github.com/nucleusframework/Nucleus.git")
}
}
diff --git a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/AutoLaunch.kt b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/AutoLaunch.kt
similarity index 94%
rename from autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/AutoLaunch.kt
rename to autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/AutoLaunch.kt
index 2dc0a8906..0742cc71e 100644
--- a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/AutoLaunch.kt
+++ b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/AutoLaunch.kt
@@ -1,13 +1,13 @@
-package io.github.kdroidfilter.nucleus.autolaunch
+package dev.nucleusframework.nucleus.autolaunch
-import io.github.kdroidfilter.nucleus.autolaunch.linux.LinuxAutoLaunch
-import io.github.kdroidfilter.nucleus.autolaunch.windows.NativeAutoLaunchBridge
-import io.github.kdroidfilter.nucleus.autolaunch.windows.WindowsAutoLaunch
-import io.github.kdroidfilter.nucleus.core.runtime.ExecutableRuntime
-import io.github.kdroidfilter.nucleus.core.runtime.ExecutableType
+import dev.nucleusframework.nucleus.autolaunch.linux.LinuxAutoLaunch
+import dev.nucleusframework.nucleus.autolaunch.windows.NativeAutoLaunchBridge
+import dev.nucleusframework.nucleus.autolaunch.windows.WindowsAutoLaunch
+import dev.nucleusframework.nucleus.core.runtime.ExecutableRuntime
+import dev.nucleusframework.nucleus.core.runtime.ExecutableType
private const val MAC_SMAPPSERVICE_BACKEND_CLASS =
- "io.github.kdroidfilter.nucleus.autolaunch.macos.MacSMAppServiceBackend"
+ "dev.nucleusframework.nucleus.autolaunch.macos.MacSMAppServiceBackend"
/**
* Cross-platform auto-launch at user login.
diff --git a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/AutoLaunchBackend.kt b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/AutoLaunchBackend.kt
similarity index 96%
rename from autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/AutoLaunchBackend.kt
rename to autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/AutoLaunchBackend.kt
index 2e26b2674..0d275b9a0 100644
--- a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/AutoLaunchBackend.kt
+++ b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/AutoLaunchBackend.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.autolaunch
+package dev.nucleusframework.nucleus.autolaunch
/** Internal SPI implemented by each platform/packaging backend. */
internal interface AutoLaunchBackend {
diff --git a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/AutoLaunchConfig.kt b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/AutoLaunchConfig.kt
similarity index 90%
rename from autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/AutoLaunchConfig.kt
rename to autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/AutoLaunchConfig.kt
index 87f8b3287..c70067211 100644
--- a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/AutoLaunchConfig.kt
+++ b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/AutoLaunchConfig.kt
@@ -1,7 +1,7 @@
-package io.github.kdroidfilter.nucleus.autolaunch
+package dev.nucleusframework.nucleus.autolaunch
/**
- * Optional overrides for auto-launch. Defaults fall back to [io.github.kdroidfilter.nucleus.core.runtime.NucleusApp].
+ * Optional overrides for auto-launch. Defaults fall back to [dev.nucleusframework.nucleus.core.runtime.NucleusApp].
*
* Configure before the first call to [AutoLaunch.state]/`enable`/`disable`:
* ```
diff --git a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/AutoLaunchState.kt b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/AutoLaunchState.kt
similarity index 97%
rename from autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/AutoLaunchState.kt
rename to autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/AutoLaunchState.kt
index a4e1a1898..1919ce901 100644
--- a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/AutoLaunchState.kt
+++ b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/AutoLaunchState.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.autolaunch
+package dev.nucleusframework.nucleus.autolaunch
/**
* The current state of auto-launch at user login for this application.
diff --git a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/linux/FlatpakPortalBackend.kt b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/linux/FlatpakPortalBackend.kt
similarity index 93%
rename from autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/linux/FlatpakPortalBackend.kt
rename to autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/linux/FlatpakPortalBackend.kt
index d79d38cc0..a2e807d25 100644
--- a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/linux/FlatpakPortalBackend.kt
+++ b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/linux/FlatpakPortalBackend.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.autolaunch.linux
-
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchBackend
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchConfig
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchResult
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchState
-import io.github.kdroidfilter.nucleus.autolaunch.containsAutostartMarker
-import io.github.kdroidfilter.nucleus.core.runtime.NucleusApp
+package dev.nucleusframework.nucleus.autolaunch.linux
+
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchBackend
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchConfig
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchResult
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchState
+import dev.nucleusframework.nucleus.autolaunch.containsAutostartMarker
+import dev.nucleusframework.nucleus.core.runtime.NucleusApp
import java.io.IOException
import java.nio.file.Path
import kotlin.io.path.createDirectories
diff --git a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/linux/LinuxAutoLaunch.kt b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/linux/LinuxAutoLaunch.kt
similarity index 83%
rename from autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/linux/LinuxAutoLaunch.kt
rename to autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/linux/LinuxAutoLaunch.kt
index 0b5f8a980..19b84d433 100644
--- a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/linux/LinuxAutoLaunch.kt
+++ b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/linux/LinuxAutoLaunch.kt
@@ -1,9 +1,9 @@
-package io.github.kdroidfilter.nucleus.autolaunch.linux
+package dev.nucleusframework.nucleus.autolaunch.linux
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchBackend
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchResult
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchState
-import io.github.kdroidfilter.nucleus.core.runtime.ExecutableRuntime
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchBackend
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchResult
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchState
+import dev.nucleusframework.nucleus.core.runtime.ExecutableRuntime
/**
* Linux dispatcher. Chooses between systemd user service (host) and
@@ -16,7 +16,7 @@ import io.github.kdroidfilter.nucleus.core.runtime.ExecutableRuntime
* **Flatpak** — [FlatpakPortalBackend]
* - the sandbox cannot reach the host's systemd; portal is the only option
* - detects login launch via the CLI marker
- * ([io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchConfig.autostartArgument])
+ * ([dev.nucleusframework.nucleus.autolaunch.AutoLaunchConfig.autostartArgument])
* injected into the portal's `commandline` (safe: `flatpak run ` has no spaces,
* so the portal's quoting bug on `Exec=` does not strike)
*/
diff --git a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/linux/NativeAutoLaunchLinuxBridge.kt b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/linux/NativeAutoLaunchLinuxBridge.kt
similarity index 94%
rename from autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/linux/NativeAutoLaunchLinuxBridge.kt
rename to autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/linux/NativeAutoLaunchLinuxBridge.kt
index 8695d77a5..32d91b75b 100644
--- a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/linux/NativeAutoLaunchLinuxBridge.kt
+++ b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/linux/NativeAutoLaunchLinuxBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.autolaunch.linux
+package dev.nucleusframework.nucleus.autolaunch.linux
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
private const val LIBRARY_NAME = "nucleus_autolaunch_linux"
@@ -14,8 +14,8 @@ private const val LIBRARY_NAME = "nucleus_autolaunch_linux"
* talk to the host's systemd) — [requestBackground].
*
* All methods return status codes instead of throwing; the Kotlin side maps them
- * to [io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchState] /
- * [io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchResult].
+ * to [dev.nucleusframework.nucleus.autolaunch.AutoLaunchState] /
+ * [dev.nucleusframework.nucleus.autolaunch.AutoLaunchResult].
*/
@Suppress("TooManyFunctions")
internal object NativeAutoLaunchLinuxBridge {
diff --git a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/linux/SystemdUserBackend.kt b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/linux/SystemdUserBackend.kt
similarity index 94%
rename from autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/linux/SystemdUserBackend.kt
rename to autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/linux/SystemdUserBackend.kt
index 0f8bf8af0..92bfb53f9 100644
--- a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/linux/SystemdUserBackend.kt
+++ b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/linux/SystemdUserBackend.kt
@@ -1,10 +1,10 @@
-package io.github.kdroidfilter.nucleus.autolaunch.linux
+package dev.nucleusframework.nucleus.autolaunch.linux
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchBackend
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchConfig
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchResult
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchState
-import io.github.kdroidfilter.nucleus.core.runtime.NucleusApp
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchBackend
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchConfig
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchResult
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchState
+import dev.nucleusframework.nucleus.core.runtime.NucleusApp
import java.io.IOException
import java.nio.file.Files
import java.nio.file.Path
diff --git a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/macos/MacSMAppServiceBackend.kt b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/macos/MacSMAppServiceBackend.kt
similarity index 90%
rename from autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/macos/MacSMAppServiceBackend.kt
rename to autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/macos/MacSMAppServiceBackend.kt
index 8872f32d2..ddd06d783 100644
--- a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/macos/MacSMAppServiceBackend.kt
+++ b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/macos/MacSMAppServiceBackend.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.autolaunch.macos
+package dev.nucleusframework.nucleus.autolaunch.macos
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchBackend
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchResult
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchState
-import io.github.kdroidfilter.nucleus.servicemanagement.AppService
-import io.github.kdroidfilter.nucleus.servicemanagement.AppServiceManager
-import io.github.kdroidfilter.nucleus.servicemanagement.AppServiceStatus
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchBackend
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchResult
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchState
+import dev.nucleusframework.nucleus.servicemanagement.AppService
+import dev.nucleusframework.nucleus.servicemanagement.AppServiceManager
+import dev.nucleusframework.nucleus.servicemanagement.AppServiceStatus
/**
* Unified macOS backend using `SMAppService.mainApp` (macOS 13.0+).
diff --git a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/windows/MsixStartupTaskBackend.kt b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/windows/MsixStartupTaskBackend.kt
similarity index 89%
rename from autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/windows/MsixStartupTaskBackend.kt
rename to autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/windows/MsixStartupTaskBackend.kt
index b4c88ee90..c0dda7f12 100644
--- a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/windows/MsixStartupTaskBackend.kt
+++ b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/windows/MsixStartupTaskBackend.kt
@@ -1,10 +1,10 @@
-package io.github.kdroidfilter.nucleus.autolaunch.windows
+package dev.nucleusframework.nucleus.autolaunch.windows
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchBackend
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchConfig
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchResult
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchState
-import io.github.kdroidfilter.nucleus.core.runtime.NucleusApp
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchBackend
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchConfig
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchResult
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchState
+import dev.nucleusframework.nucleus.core.runtime.NucleusApp
/**
* MSIX / packaged desktop backend. Requires ``
diff --git a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/windows/NativeAutoLaunchBridge.kt b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/windows/NativeAutoLaunchBridge.kt
similarity index 93%
rename from autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/windows/NativeAutoLaunchBridge.kt
rename to autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/windows/NativeAutoLaunchBridge.kt
index d64590a31..1a928058e 100644
--- a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/windows/NativeAutoLaunchBridge.kt
+++ b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/windows/NativeAutoLaunchBridge.kt
@@ -1,13 +1,13 @@
-package io.github.kdroidfilter.nucleus.autolaunch.windows
+package dev.nucleusframework.nucleus.autolaunch.windows
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
private const val LIBRARY_NAME = "nucleus_autolaunch"
/**
* JNI bridge. All methods return status codes instead of throwing — the
- * Kotlin side maps them to [io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchState] /
- * [io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchResult].
+ * Kotlin side maps them to [dev.nucleusframework.nucleus.autolaunch.AutoLaunchState] /
+ * [dev.nucleusframework.nucleus.autolaunch.AutoLaunchResult].
*/
@Suppress("TooManyFunctions")
internal object NativeAutoLaunchBridge {
diff --git a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/windows/Win32RegistryBackend.kt b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/windows/Win32RegistryBackend.kt
similarity index 88%
rename from autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/windows/Win32RegistryBackend.kt
rename to autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/windows/Win32RegistryBackend.kt
index 366b76b54..2c31e79f8 100644
--- a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/windows/Win32RegistryBackend.kt
+++ b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/windows/Win32RegistryBackend.kt
@@ -1,10 +1,10 @@
-package io.github.kdroidfilter.nucleus.autolaunch.windows
+package dev.nucleusframework.nucleus.autolaunch.windows
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchBackend
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchConfig
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchResult
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchState
-import io.github.kdroidfilter.nucleus.core.runtime.NucleusApp
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchBackend
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchConfig
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchResult
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchState
+import dev.nucleusframework.nucleus.core.runtime.NucleusApp
/**
* Registry-based backend for classic Win32 apps (MSI / NSIS / portable).
diff --git a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/windows/WindowsAutoLaunch.kt b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/windows/WindowsAutoLaunch.kt
similarity index 81%
rename from autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/windows/WindowsAutoLaunch.kt
rename to autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/windows/WindowsAutoLaunch.kt
index b72694b7f..1a39ca61c 100644
--- a/autolaunch/src/main/kotlin/io/github/kdroidfilter/nucleus/autolaunch/windows/WindowsAutoLaunch.kt
+++ b/autolaunch/src/main/kotlin/dev/nucleusframework/nucleus/autolaunch/windows/WindowsAutoLaunch.kt
@@ -1,8 +1,8 @@
-package io.github.kdroidfilter.nucleus.autolaunch.windows
+package dev.nucleusframework.nucleus.autolaunch.windows
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchBackend
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchResult
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchState
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchBackend
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchResult
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchState
/**
* Windows dispatcher. Chooses between MSIX StartupTask API and Win32 registry
diff --git a/autolaunch/src/main/native/linux/nucleus_autolaunch_linux.c b/autolaunch/src/main/native/linux/nucleus_autolaunch_linux.c
index 13afdfae9..565737390 100644
--- a/autolaunch/src/main/native/linux/nucleus_autolaunch_linux.c
+++ b/autolaunch/src/main/native/linux/nucleus_autolaunch_linux.c
@@ -160,7 +160,7 @@ static void on_response_signal(GDBusConnection *c,
/* ==== nativeIsPortalAvailable ========================================== */
JNIEXPORT jboolean JNICALL
-Java_io_github_kdroidfilter_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge_nativeIsPortalAvailable(
+Java_dev_nucleusframework_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge_nativeIsPortalAvailable(
JNIEnv *env, jclass clazz)
{
(void)env; (void)clazz;
@@ -196,7 +196,7 @@ Java_io_github_kdroidfilter_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge
*/
JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge_nativeRequestBackground(
+Java_dev_nucleusframework_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge_nativeRequestBackground(
JNIEnv *env, jclass clazz,
jboolean enable,
jobjectArray j_commandline,
@@ -391,7 +391,7 @@ static int systemd_reload(GDBusConnection *conn) {
/* ==== nativeWriteUnitFile ============================================== */
JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge_nativeWriteUnitFile(
+Java_dev_nucleusframework_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge_nativeWriteUnitFile(
JNIEnv *env, jclass clazz,
jstring j_unit_name, jstring j_content)
{
@@ -431,7 +431,7 @@ Java_io_github_kdroidfilter_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge
/* ==== nativeDeleteUnitFile ============================================= */
JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge_nativeDeleteUnitFile(
+Java_dev_nucleusframework_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge_nativeDeleteUnitFile(
JNIEnv *env, jclass clazz, jstring j_unit_name)
{
(void)clazz;
@@ -452,7 +452,7 @@ Java_io_github_kdroidfilter_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge
/* ==== nativeEnableUnit ================================================= */
JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge_nativeEnableUnit(
+Java_dev_nucleusframework_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge_nativeEnableUnit(
JNIEnv *env, jclass clazz, jstring j_unit_name)
{
(void)clazz;
@@ -494,7 +494,7 @@ Java_io_github_kdroidfilter_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge
/* ==== nativeDisableUnit ================================================ */
JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge_nativeDisableUnit(
+Java_dev_nucleusframework_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge_nativeDisableUnit(
JNIEnv *env, jclass clazz, jstring j_unit_name)
{
(void)clazz;
@@ -537,7 +537,7 @@ Java_io_github_kdroidfilter_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge
/* ==== nativeGetUnitFileState =========================================== */
JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge_nativeGetUnitFileState(
+Java_dev_nucleusframework_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge_nativeGetUnitFileState(
JNIEnv *env, jclass clazz, jstring j_unit_name)
{
(void)clazz;
@@ -589,7 +589,7 @@ Java_io_github_kdroidfilter_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge
/* ==== nativeGetDiagnostic ============================================== */
JNIEXPORT jstring JNICALL
-Java_io_github_kdroidfilter_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge_nativeGetDiagnostic(
+Java_dev_nucleusframework_nucleus_autolaunch_linux_NativeAutoLaunchLinuxBridge_nativeGetDiagnostic(
JNIEnv *env, jclass clazz)
{
(void)clazz;
diff --git a/autolaunch/src/main/native/windows/nucleus_autolaunch.cpp b/autolaunch/src/main/native/windows/nucleus_autolaunch.cpp
index b5a802f73..ffe469611 100644
--- a/autolaunch/src/main/native/windows/nucleus_autolaunch.cpp
+++ b/autolaunch/src/main/native/windows/nucleus_autolaunch.cpp
@@ -119,7 +119,7 @@ static bool isCurrentProcessPackaged() {
}
extern "C" JNIEXPORT jboolean JNICALL
-Java_io_github_kdroidfilter_nucleus_autolaunch_windows_NativeAutoLaunchBridge_nativeIsPackaged(
+Java_dev_nucleusframework_nucleus_autolaunch_windows_NativeAutoLaunchBridge_nativeIsPackaged(
JNIEnv *env, jclass clazz) {
(void)env; (void)clazz;
bool p = isCurrentProcessPackaged();
@@ -128,7 +128,7 @@ Java_io_github_kdroidfilter_nucleus_autolaunch_windows_NativeAutoLaunchBridge_na
}
extern "C" JNIEXPORT jstring JNICALL
-Java_io_github_kdroidfilter_nucleus_autolaunch_windows_NativeAutoLaunchBridge_nativeGetDiagnostic(
+Java_dev_nucleusframework_nucleus_autolaunch_windows_NativeAutoLaunchBridge_nativeGetDiagnostic(
JNIEnv *env, jclass clazz) {
(void)clazz;
std::lock_guard lock(g_diagMutex);
@@ -146,7 +146,7 @@ static const wchar_t *SA_RUN_KEY =
// Returns: 0 = not present, 1 = enabled, 2 = disabled-by-user, -1 = error
extern "C" JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_autolaunch_windows_NativeAutoLaunchBridge_nativeRegReadState(
+Java_dev_nucleusframework_nucleus_autolaunch_windows_NativeAutoLaunchBridge_nativeRegReadState(
JNIEnv *env, jclass clazz, jstring jValueName) {
(void)clazz;
std::wstring name = toWString(env, jValueName);
@@ -184,7 +184,7 @@ Java_io_github_kdroidfilter_nucleus_autolaunch_windows_NativeAutoLaunchBridge_na
}
extern "C" JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_autolaunch_windows_NativeAutoLaunchBridge_nativeRegWriteRun(
+Java_dev_nucleusframework_nucleus_autolaunch_windows_NativeAutoLaunchBridge_nativeRegWriteRun(
JNIEnv *env, jclass clazz, jstring jValueName, jstring jCommand) {
(void)clazz;
std::wstring name = toWString(env, jValueName);
@@ -204,7 +204,7 @@ Java_io_github_kdroidfilter_nucleus_autolaunch_windows_NativeAutoLaunchBridge_na
}
extern "C" JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_autolaunch_windows_NativeAutoLaunchBridge_nativeRegDeleteRun(
+Java_dev_nucleusframework_nucleus_autolaunch_windows_NativeAutoLaunchBridge_nativeRegDeleteRun(
JNIEnv *env, jclass clazz, jstring jValueName, jboolean alsoSa) {
(void)clazz;
std::wstring name = toWString(env, jValueName);
@@ -287,7 +287,7 @@ static HRESULT findStartupTask(const std::wstring &taskId, ComPtr
}
extern "C" JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_autolaunch_windows_NativeAutoLaunchBridge_nativeMsixGetState(
+Java_dev_nucleusframework_nucleus_autolaunch_windows_NativeAutoLaunchBridge_nativeMsixGetState(
JNIEnv *env, jclass clazz, jstring jTaskId) {
(void)clazz;
std::wstring taskId = toWString(env, jTaskId);
@@ -303,7 +303,7 @@ Java_io_github_kdroidfilter_nucleus_autolaunch_windows_NativeAutoLaunchBridge_na
}
extern "C" JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_autolaunch_windows_NativeAutoLaunchBridge_nativeMsixRequestEnable(
+Java_dev_nucleusframework_nucleus_autolaunch_windows_NativeAutoLaunchBridge_nativeMsixRequestEnable(
JNIEnv *env, jclass clazz, jstring jTaskId) {
(void)clazz;
std::wstring taskId = toWString(env, jTaskId);
@@ -336,7 +336,7 @@ Java_io_github_kdroidfilter_nucleus_autolaunch_windows_NativeAutoLaunchBridge_na
// frameworks (rarely) may interfere.
extern "C" JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_autolaunch_windows_NativeAutoLaunchBridge_nativeIsStartupActivation(
+Java_dev_nucleusframework_nucleus_autolaunch_windows_NativeAutoLaunchBridge_nativeIsStartupActivation(
JNIEnv *env, jclass clazz) {
(void)env; (void)clazz;
@@ -463,7 +463,7 @@ static bool resolveExternalAncestorName(wchar_t *outName, size_t cchName) {
}
extern "C" JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_autolaunch_windows_NativeAutoLaunchBridge_nativeIsLaunchedByTaskScheduler(
+Java_dev_nucleusframework_nucleus_autolaunch_windows_NativeAutoLaunchBridge_nativeIsLaunchedByTaskScheduler(
JNIEnv *env, jclass clazz) {
(void)env; (void)clazz;
@@ -488,7 +488,7 @@ Java_io_github_kdroidfilter_nucleus_autolaunch_windows_NativeAutoLaunchBridge_na
}
extern "C" JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_autolaunch_windows_NativeAutoLaunchBridge_nativeMsixDisable(
+Java_dev_nucleusframework_nucleus_autolaunch_windows_NativeAutoLaunchBridge_nativeMsixDisable(
JNIEnv *env, jclass clazz, jstring jTaskId) {
(void)clazz;
std::wstring taskId = toWString(env, jTaskId);
diff --git a/autolaunch/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.autolaunch/reachability-metadata.json b/autolaunch/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.autolaunch/reachability-metadata.json
new file mode 100644
index 000000000..0e3597206
--- /dev/null
+++ b/autolaunch/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.autolaunch/reachability-metadata.json
@@ -0,0 +1,12 @@
+{
+ "reflection": [
+ {
+ "type": "dev.nucleusframework.nucleus.autolaunch.windows.NativeAutoLaunchBridge",
+ "jniAccessible": true
+ },
+ {
+ "type": "dev.nucleusframework.nucleus.autolaunch.linux.NativeAutoLaunchLinuxBridge",
+ "jniAccessible": true
+ }
+ ]
+}
diff --git a/autolaunch/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.autolaunch/reachability-metadata.json b/autolaunch/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.autolaunch/reachability-metadata.json
deleted file mode 100644
index 4fa7e897b..000000000
--- a/autolaunch/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.autolaunch/reachability-metadata.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "reflection": [
- {
- "type": "io.github.kdroidfilter.nucleus.autolaunch.windows.NativeAutoLaunchBridge",
- "jniAccessible": true
- },
- {
- "type": "io.github.kdroidfilter.nucleus.autolaunch.linux.NativeAutoLaunchLinuxBridge",
- "jniAccessible": true
- }
- ]
-}
diff --git a/autolaunch/src/test/kotlin/io/github/kdroidfilter/nucleus/autolaunch/Win32RegistryBackendTest.kt b/autolaunch/src/test/kotlin/dev/nucleusframework/nucleus/autolaunch/Win32RegistryBackendTest.kt
similarity index 91%
rename from autolaunch/src/test/kotlin/io/github/kdroidfilter/nucleus/autolaunch/Win32RegistryBackendTest.kt
rename to autolaunch/src/test/kotlin/dev/nucleusframework/nucleus/autolaunch/Win32RegistryBackendTest.kt
index 3104edd78..7eeb9d91c 100644
--- a/autolaunch/src/test/kotlin/io/github/kdroidfilter/nucleus/autolaunch/Win32RegistryBackendTest.kt
+++ b/autolaunch/src/test/kotlin/dev/nucleusframework/nucleus/autolaunch/Win32RegistryBackendTest.kt
@@ -1,7 +1,7 @@
-package io.github.kdroidfilter.nucleus.autolaunch
+package dev.nucleusframework.nucleus.autolaunch
-import io.github.kdroidfilter.nucleus.autolaunch.windows.NativeAutoLaunchBridge
-import io.github.kdroidfilter.nucleus.autolaunch.windows.Win32RegistryBackend
+import dev.nucleusframework.nucleus.autolaunch.windows.NativeAutoLaunchBridge
+import dev.nucleusframework.nucleus.autolaunch.windows.Win32RegistryBackend
import kotlin.test.AfterTest
import kotlin.test.BeforeTest
import kotlin.test.Test
diff --git a/config/detekt/detekt.yml b/config/detekt/detekt.yml
index 80a3d6bca..adda197f2 100644
--- a/config/detekt/detekt.yml
+++ b/config/detekt/detekt.yml
@@ -856,6 +856,6 @@ style:
active: true
excludeImports:
- 'java.util.*'
- - 'io.github.kdroidfilter.nucleus.window.icons.linux.gnome.*'
- - 'io.github.kdroidfilter.nucleus.window.icons.linux.kde.*'
- - 'io.github.kdroidfilter.nucleus.window.icons.windows.*'
+ - 'dev.nucleusframework.nucleus.window.icons.linux.gnome.*'
+ - 'dev.nucleusframework.nucleus.window.icons.linux.kde.*'
+ - 'dev.nucleusframework.nucleus.window.icons.windows.*'
diff --git a/core-runtime/build.gradle.kts b/core-runtime/build.gradle.kts
index f1ec123bf..40494b3aa 100644
--- a/core-runtime/build.gradle.kts
+++ b/core-runtime/build.gradle.kts
@@ -29,12 +29,12 @@ kotlin {
}
mavenPublishing {
- coordinates("io.github.kdroidfilter", "nucleus.core-runtime", publishVersion)
+ coordinates("dev.nucleusframework", "nucleus.core-runtime", publishVersion)
pom {
name.set("Nucleus Core Runtime")
description.set("Core runtime library for the Nucleus Gradle plugin")
- url.set("https://github.com/kdroidFilter/Nucleus")
+ url.set("https://github.com/nucleusframework/Nucleus")
licenses {
license {
@@ -45,16 +45,16 @@ mavenPublishing {
developers {
developer {
- id.set("kdroidfilter")
- name.set("kdroidFilter")
- url.set("https://github.com/kdroidFilter")
+ id.set("nucleusframework")
+ name.set("nucleusframework")
+ url.set("https://github.com/nucleusframework")
}
}
scm {
- url.set("https://github.com/kdroidFilter/Nucleus")
- connection.set("scm:git:git://github.com/kdroidFilter/Nucleus.git")
- developerConnection.set("scm:git:ssh://git@github.com/kdroidFilter/Nucleus.git")
+ url.set("https://github.com/nucleusframework/Nucleus")
+ connection.set("scm:git:git://github.com/nucleusframework/Nucleus.git")
+ developerConnection.set("scm:git:ssh://git@github.com/nucleusframework/Nucleus.git")
}
}
diff --git a/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/DeepLinkHandler.kt b/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/DeepLinkHandler.kt
similarity index 96%
rename from core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/DeepLinkHandler.kt
rename to core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/DeepLinkHandler.kt
index 223206125..b4b66e225 100644
--- a/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/DeepLinkHandler.kt
+++ b/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/DeepLinkHandler.kt
@@ -1,7 +1,7 @@
-package io.github.kdroidfilter.nucleus.core.runtime
+package dev.nucleusframework.nucleus.core.runtime
-import io.github.kdroidfilter.nucleus.core.runtime.tools.debugln
-import io.github.kdroidfilter.nucleus.core.runtime.tools.errorln
+import dev.nucleusframework.nucleus.core.runtime.tools.debugln
+import dev.nucleusframework.nucleus.core.runtime.tools.errorln
import java.awt.Desktop
import java.io.IOException
import java.net.URI
diff --git a/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/ExecutableRuntime.kt b/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/ExecutableRuntime.kt
similarity index 98%
rename from core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/ExecutableRuntime.kt
rename to core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/ExecutableRuntime.kt
index ccb4df9e1..d2b26da54 100644
--- a/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/ExecutableRuntime.kt
+++ b/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/ExecutableRuntime.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.core.runtime
+package dev.nucleusframework.nucleus.core.runtime
import java.io.File
diff --git a/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/LinuxDesktopEnvironment.kt b/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/LinuxDesktopEnvironment.kt
similarity index 94%
rename from core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/LinuxDesktopEnvironment.kt
rename to core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/LinuxDesktopEnvironment.kt
index 3e1f0688b..b90102cc3 100644
--- a/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/LinuxDesktopEnvironment.kt
+++ b/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/LinuxDesktopEnvironment.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.core.runtime
+package dev.nucleusframework.nucleus.core.runtime
import java.util.Locale
diff --git a/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/NativeLibraryLoader.kt b/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/NativeLibraryLoader.kt
similarity index 99%
rename from core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/NativeLibraryLoader.kt
rename to core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/NativeLibraryLoader.kt
index 62e497e7d..d5f2d7808 100644
--- a/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/NativeLibraryLoader.kt
+++ b/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/NativeLibraryLoader.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.core.runtime
+package dev.nucleusframework.nucleus.core.runtime
import java.net.JarURLConnection
import java.nio.file.Files
diff --git a/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/NucleusApp.kt b/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/NucleusApp.kt
similarity index 97%
rename from core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/NucleusApp.kt
rename to core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/NucleusApp.kt
index a4486f586..7e49a68a3 100644
--- a/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/NucleusApp.kt
+++ b/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/NucleusApp.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.core.runtime
+package dev.nucleusframework.nucleus.core.runtime
-import io.github.kdroidfilter.nucleus.core.runtime.tools.AppIdProvider
+import dev.nucleusframework.nucleus.core.runtime.tools.AppIdProvider
import java.util.Properties
/**
diff --git a/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/Platform.kt b/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/Platform.kt
similarity index 93%
rename from core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/Platform.kt
rename to core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/Platform.kt
index c15643748..d76f07127 100644
--- a/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/Platform.kt
+++ b/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/Platform.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.core.runtime
+package dev.nucleusframework.nucleus.core.runtime
import java.util.Locale
diff --git a/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/SingleInstanceManager.kt b/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/SingleInstanceManager.kt
similarity index 97%
rename from core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/SingleInstanceManager.kt
rename to core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/SingleInstanceManager.kt
index 6ca8a46d3..640feb041 100644
--- a/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/SingleInstanceManager.kt
+++ b/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/SingleInstanceManager.kt
@@ -1,8 +1,8 @@
-package io.github.kdroidfilter.nucleus.core.runtime
+package dev.nucleusframework.nucleus.core.runtime
-import io.github.kdroidfilter.nucleus.core.runtime.tools.AppIdProvider
-import io.github.kdroidfilter.nucleus.core.runtime.tools.debugln
-import io.github.kdroidfilter.nucleus.core.runtime.tools.errorln
+import dev.nucleusframework.nucleus.core.runtime.tools.AppIdProvider
+import dev.nucleusframework.nucleus.core.runtime.tools.debugln
+import dev.nucleusframework.nucleus.core.runtime.tools.errorln
import java.io.File
import java.io.IOException
import java.io.RandomAccessFile
diff --git a/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/tools/AppIdProvider.kt b/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/tools/AppIdProvider.kt
similarity index 97%
rename from core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/tools/AppIdProvider.kt
rename to core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/tools/AppIdProvider.kt
index 43dcc4813..62c245c6d 100644
--- a/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/tools/AppIdProvider.kt
+++ b/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/tools/AppIdProvider.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.core.runtime.tools
+package dev.nucleusframework.nucleus.core.runtime.tools
/**
* Provides a unique, stable application identifier to namespace shared resources
diff --git a/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/tools/LinuxDesktopFileDetector.kt b/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/tools/LinuxDesktopFileDetector.kt
similarity index 97%
rename from core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/tools/LinuxDesktopFileDetector.kt
rename to core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/tools/LinuxDesktopFileDetector.kt
index 481c1a3b5..21e01542e 100644
--- a/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/tools/LinuxDesktopFileDetector.kt
+++ b/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/tools/LinuxDesktopFileDetector.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.core.runtime.tools
+package dev.nucleusframework.nucleus.core.runtime.tools
-import io.github.kdroidfilter.nucleus.core.runtime.NucleusApp
+import dev.nucleusframework.nucleus.core.runtime.NucleusApp
import java.io.File
import java.nio.file.Files
import java.nio.file.Path
diff --git a/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/tools/Logger.kt b/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/tools/Logger.kt
similarity index 81%
rename from core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/tools/Logger.kt
rename to core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/tools/Logger.kt
index ec4062023..8733b5f81 100644
--- a/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/tools/Logger.kt
+++ b/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/tools/Logger.kt
@@ -1,10 +1,10 @@
-package io.github.kdroidfilter.nucleus.core.runtime.tools
+package dev.nucleusframework.nucleus.core.runtime.tools
-import io.github.kdroidfilter.nucleus.core.runtime.tools.ComposeNativeTrayLoggingLevel.Companion.DEBUG
-import io.github.kdroidfilter.nucleus.core.runtime.tools.ComposeNativeTrayLoggingLevel.Companion.ERROR
-import io.github.kdroidfilter.nucleus.core.runtime.tools.ComposeNativeTrayLoggingLevel.Companion.INFO
-import io.github.kdroidfilter.nucleus.core.runtime.tools.ComposeNativeTrayLoggingLevel.Companion.VERBOSE
-import io.github.kdroidfilter.nucleus.core.runtime.tools.ComposeNativeTrayLoggingLevel.Companion.WARN
+import dev.nucleusframework.nucleus.core.runtime.tools.ComposeNativeTrayLoggingLevel.Companion.DEBUG
+import dev.nucleusframework.nucleus.core.runtime.tools.ComposeNativeTrayLoggingLevel.Companion.ERROR
+import dev.nucleusframework.nucleus.core.runtime.tools.ComposeNativeTrayLoggingLevel.Companion.INFO
+import dev.nucleusframework.nucleus.core.runtime.tools.ComposeNativeTrayLoggingLevel.Companion.VERBOSE
+import dev.nucleusframework.nucleus.core.runtime.tools.ComposeNativeTrayLoggingLevel.Companion.WARN
import java.time.LocalDateTime
import java.time.format.DateTimeFormatter
diff --git a/core-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/core/runtime/ExecutableRuntimeTest.kt b/core-runtime/src/test/kotlin/dev/nucleusframework/nucleus/core/runtime/ExecutableRuntimeTest.kt
similarity index 98%
rename from core-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/core/runtime/ExecutableRuntimeTest.kt
rename to core-runtime/src/test/kotlin/dev/nucleusframework/nucleus/core/runtime/ExecutableRuntimeTest.kt
index 61df2596c..8e755a39e 100644
--- a/core-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/core/runtime/ExecutableRuntimeTest.kt
+++ b/core-runtime/src/test/kotlin/dev/nucleusframework/nucleus/core/runtime/ExecutableRuntimeTest.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.core.runtime
+package dev.nucleusframework.nucleus.core.runtime
import org.junit.Assert.assertEquals
import org.junit.Assert.assertFalse
diff --git a/core-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/core/runtime/NucleusAppTest.kt b/core-runtime/src/test/kotlin/dev/nucleusframework/nucleus/core/runtime/NucleusAppTest.kt
similarity index 97%
rename from core-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/core/runtime/NucleusAppTest.kt
rename to core-runtime/src/test/kotlin/dev/nucleusframework/nucleus/core/runtime/NucleusAppTest.kt
index 15f0db6a9..f5bea0b74 100644
--- a/core-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/core/runtime/NucleusAppTest.kt
+++ b/core-runtime/src/test/kotlin/dev/nucleusframework/nucleus/core/runtime/NucleusAppTest.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.core.runtime
+package dev.nucleusframework.nucleus.core.runtime
import org.junit.Assert.assertEquals
import org.junit.Assert.assertFalse
diff --git a/core-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/core/runtime/SingleInstanceHolder.kt b/core-runtime/src/test/kotlin/dev/nucleusframework/nucleus/core/runtime/SingleInstanceHolder.kt
similarity index 97%
rename from core-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/core/runtime/SingleInstanceHolder.kt
rename to core-runtime/src/test/kotlin/dev/nucleusframework/nucleus/core/runtime/SingleInstanceHolder.kt
index 0b1a56e60..ac2cc7dd8 100644
--- a/core-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/core/runtime/SingleInstanceHolder.kt
+++ b/core-runtime/src/test/kotlin/dev/nucleusframework/nucleus/core/runtime/SingleInstanceHolder.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.core.runtime
+package dev.nucleusframework.nucleus.core.runtime
import java.nio.file.Paths
diff --git a/core-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/core/runtime/SingleInstanceManagerEndToEndTest.kt b/core-runtime/src/test/kotlin/dev/nucleusframework/nucleus/core/runtime/SingleInstanceManagerEndToEndTest.kt
similarity index 98%
rename from core-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/core/runtime/SingleInstanceManagerEndToEndTest.kt
rename to core-runtime/src/test/kotlin/dev/nucleusframework/nucleus/core/runtime/SingleInstanceManagerEndToEndTest.kt
index 400d78d11..1053b1cf2 100644
--- a/core-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/core/runtime/SingleInstanceManagerEndToEndTest.kt
+++ b/core-runtime/src/test/kotlin/dev/nucleusframework/nucleus/core/runtime/SingleInstanceManagerEndToEndTest.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.core.runtime
+package dev.nucleusframework.nucleus.core.runtime
import org.junit.After
import org.junit.Assert.assertEquals
@@ -196,7 +196,7 @@ class SingleInstanceManagerEndToEndTest {
javaBin,
"-cp",
classpath,
- "io.github.kdroidfilter.nucleus.core.runtime.SingleInstanceHolderKt",
+ "dev.nucleusframework.nucleus.core.runtime.SingleInstanceHolderKt",
tempDir.toAbsolutePath().toString(),
lockIdentifier,
)
diff --git a/darkmode-detector/build.gradle.kts b/darkmode-detector/build.gradle.kts
index e8007f51b..dae11c5f0 100644
--- a/darkmode-detector/build.gradle.kts
+++ b/darkmode-detector/build.gradle.kts
@@ -103,12 +103,12 @@ tasks.configureEach {
}
mavenPublishing {
- coordinates("io.github.kdroidfilter", "nucleus.darkmode-detector", publishVersion)
+ coordinates("dev.nucleusframework", "nucleus.darkmode-detector", publishVersion)
pom {
name.set("Nucleus Dark Mode Detector")
description.set("Reactive dark mode detection for Compose Desktop across Windows, macOS and Linux")
- url.set("https://github.com/kdroidFilter/Nucleus")
+ url.set("https://github.com/nucleusframework/Nucleus")
licenses {
license {
@@ -119,16 +119,16 @@ mavenPublishing {
developers {
developer {
- id.set("kdroidfilter")
- name.set("kdroidFilter")
- url.set("https://github.com/kdroidFilter")
+ id.set("nucleusframework")
+ name.set("nucleusframework")
+ url.set("https://github.com/nucleusframework")
}
}
scm {
- url.set("https://github.com/kdroidFilter/Nucleus")
- connection.set("scm:git:git://github.com/kdroidFilter/Nucleus.git")
- developerConnection.set("scm:git:ssh://git@github.com/kdroidFilter/Nucleus.git")
+ url.set("https://github.com/nucleusframework/Nucleus")
+ connection.set("scm:git:git://github.com/nucleusframework/Nucleus.git")
+ developerConnection.set("scm:git:ssh://git@github.com/nucleusframework/Nucleus.git")
}
}
diff --git a/darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/IsSystemInDarkMode.kt b/darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/IsSystemInDarkMode.kt
similarity index 64%
rename from darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/IsSystemInDarkMode.kt
rename to darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/IsSystemInDarkMode.kt
index a1f669a1c..b9daa35e8 100644
--- a/darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/IsSystemInDarkMode.kt
+++ b/darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/IsSystemInDarkMode.kt
@@ -1,12 +1,12 @@
-package io.github.kdroidfilter.nucleus.darkmodedetector
+package dev.nucleusframework.nucleus.darkmodedetector
import androidx.compose.foundation.isSystemInDarkTheme
import androidx.compose.runtime.Composable
import androidx.compose.ui.platform.LocalInspectionMode
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
-import io.github.kdroidfilter.nucleus.darkmodedetector.linux.isLinuxInDarkMode
-import io.github.kdroidfilter.nucleus.darkmodedetector.mac.isMacOsInDarkMode
-import io.github.kdroidfilter.nucleus.darkmodedetector.windows.isWindowsInDarkMode
+import dev.nucleusframework.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.darkmodedetector.linux.isLinuxInDarkMode
+import dev.nucleusframework.nucleus.darkmodedetector.mac.isMacOsInDarkMode
+import dev.nucleusframework.nucleus.darkmodedetector.windows.isWindowsInDarkMode
/**
* Composable function that returns whether the system is in dark mode.
diff --git a/darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/Logger.kt b/darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/Logger.kt
similarity index 79%
rename from darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/Logger.kt
rename to darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/Logger.kt
index ce2806c4f..1f508f7c5 100644
--- a/darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/Logger.kt
+++ b/darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/Logger.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.darkmodedetector
+package dev.nucleusframework.nucleus.darkmodedetector
-import io.github.kdroidfilter.nucleus.core.runtime.tools.allowNucleusRuntimeLogging
+import dev.nucleusframework.nucleus.core.runtime.tools.allowNucleusRuntimeLogging
internal fun debugln(
tag: String,
diff --git a/darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/linux/LinuxPortalThemeDetector.kt b/darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/linux/LinuxPortalThemeDetector.kt
similarity index 94%
rename from darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/linux/LinuxPortalThemeDetector.kt
rename to darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/linux/LinuxPortalThemeDetector.kt
index 789c3b15c..f71a9cb60 100644
--- a/darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/linux/LinuxPortalThemeDetector.kt
+++ b/darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/linux/LinuxPortalThemeDetector.kt
@@ -1,10 +1,10 @@
-package io.github.kdroidfilter.nucleus.darkmodedetector.linux
+package dev.nucleusframework.nucleus.darkmodedetector.linux
import androidx.compose.runtime.Composable
import androidx.compose.runtime.DisposableEffect
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
-import io.github.kdroidfilter.nucleus.darkmodedetector.debugln
+import dev.nucleusframework.nucleus.darkmodedetector.debugln
import java.util.function.Consumer
private const val TAG = "LinuxPortalThemeDetector"
diff --git a/darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/linux/NativeLinuxBridge.kt b/darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/linux/NativeLinuxBridge.kt
similarity index 83%
rename from darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/linux/NativeLinuxBridge.kt
rename to darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/linux/NativeLinuxBridge.kt
index 0aaf552a6..06d200d6a 100644
--- a/darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/linux/NativeLinuxBridge.kt
+++ b/darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/linux/NativeLinuxBridge.kt
@@ -1,7 +1,7 @@
-package io.github.kdroidfilter.nucleus.darkmodedetector.linux
+package dev.nucleusframework.nucleus.darkmodedetector.linux
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
-import io.github.kdroidfilter.nucleus.darkmodedetector.debugln
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.darkmodedetector.debugln
import java.util.concurrent.ConcurrentHashMap
import java.util.function.Consumer
diff --git a/darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/mac/MacOSThemeDetector.kt b/darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/mac/MacOSThemeDetector.kt
similarity index 93%
rename from darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/mac/MacOSThemeDetector.kt
rename to darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/mac/MacOSThemeDetector.kt
index 491afef23..70c259e14 100644
--- a/darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/mac/MacOSThemeDetector.kt
+++ b/darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/mac/MacOSThemeDetector.kt
@@ -1,10 +1,10 @@
-package io.github.kdroidfilter.nucleus.darkmodedetector.mac
+package dev.nucleusframework.nucleus.darkmodedetector.mac
import androidx.compose.runtime.Composable
import androidx.compose.runtime.DisposableEffect
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
-import io.github.kdroidfilter.nucleus.darkmodedetector.debugln
+import dev.nucleusframework.nucleus.darkmodedetector.debugln
import java.util.function.Consumer
private const val TAG = "MacOSThemeDetector"
diff --git a/darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/mac/NativeDarkModeBridge.kt b/darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/mac/NativeDarkModeBridge.kt
similarity index 83%
rename from darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/mac/NativeDarkModeBridge.kt
rename to darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/mac/NativeDarkModeBridge.kt
index 652023752..4cfd6e486 100644
--- a/darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/mac/NativeDarkModeBridge.kt
+++ b/darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/mac/NativeDarkModeBridge.kt
@@ -1,7 +1,7 @@
-package io.github.kdroidfilter.nucleus.darkmodedetector.mac
+package dev.nucleusframework.nucleus.darkmodedetector.mac
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
-import io.github.kdroidfilter.nucleus.darkmodedetector.debugln
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.darkmodedetector.debugln
import java.util.concurrent.ConcurrentHashMap
import java.util.function.Consumer
diff --git a/darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/windows/NativeWindowsBridge.kt b/darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/windows/NativeWindowsBridge.kt
similarity index 83%
rename from darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/windows/NativeWindowsBridge.kt
rename to darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/windows/NativeWindowsBridge.kt
index 65d118e49..728ba2848 100644
--- a/darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/windows/NativeWindowsBridge.kt
+++ b/darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/windows/NativeWindowsBridge.kt
@@ -1,7 +1,7 @@
-package io.github.kdroidfilter.nucleus.darkmodedetector.windows
+package dev.nucleusframework.nucleus.darkmodedetector.windows
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
-import io.github.kdroidfilter.nucleus.darkmodedetector.debugln
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.darkmodedetector.debugln
import java.util.concurrent.ConcurrentHashMap
import java.util.function.Consumer
diff --git a/darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/windows/WindowsThemeDetector.kt b/darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/windows/WindowsThemeDetector.kt
similarity index 93%
rename from darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/windows/WindowsThemeDetector.kt
rename to darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/windows/WindowsThemeDetector.kt
index 9dbe098ed..994e6f791 100644
--- a/darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/windows/WindowsThemeDetector.kt
+++ b/darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/windows/WindowsThemeDetector.kt
@@ -1,10 +1,10 @@
-package io.github.kdroidfilter.nucleus.darkmodedetector.windows
+package dev.nucleusframework.nucleus.darkmodedetector.windows
import androidx.compose.runtime.Composable
import androidx.compose.runtime.DisposableEffect
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
-import io.github.kdroidfilter.nucleus.darkmodedetector.debugln
+import dev.nucleusframework.nucleus.darkmodedetector.debugln
import java.util.function.Consumer
private const val TAG = "WindowsThemeDetector"
diff --git a/darkmode-detector/src/main/native/linux/nucleus_linux_theme.c b/darkmode-detector/src/main/native/linux/nucleus_linux_theme.c
index 8ccd20fd0..3886d8314 100644
--- a/darkmode-detector/src/main/native/linux/nucleus_linux_theme.c
+++ b/darkmode-detector/src/main/native/linux/nucleus_linux_theme.c
@@ -120,7 +120,7 @@ static jboolean read_color_scheme(void) {
/* nativeIsDark() */
/* ------------------------------------------------------------------ */
JNIEXPORT jboolean JNICALL
-Java_io_github_kdroidfilter_nucleus_darkmodedetector_linux_NativeLinuxBridge_nativeIsDark(
+Java_dev_nucleusframework_nucleus_darkmodedetector_linux_NativeLinuxBridge_nativeIsDark(
JNIEnv *env, jclass clazz)
{
(void)env; (void)clazz;
@@ -146,7 +146,7 @@ static void notify_java(jboolean isDark) {
}
jclass bridgeClass = (*env)->FindClass(env,
- "io/github/kdroidfilter/nucleus/darkmodedetector/linux/NativeLinuxBridge");
+ "dev/nucleusframework/nucleus/darkmodedetector/linux/NativeLinuxBridge");
if (bridgeClass != NULL) {
jmethodID method = (*env)->GetStaticMethodID(env,
bridgeClass, "onThemeChanged", "(Z)V");
@@ -261,7 +261,7 @@ static void *monitor_thread(void *arg) {
/* nativeStartObserving() */
/* ------------------------------------------------------------------ */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_darkmodedetector_linux_NativeLinuxBridge_nativeStartObserving(
+Java_dev_nucleusframework_nucleus_darkmodedetector_linux_NativeLinuxBridge_nativeStartObserving(
JNIEnv *env, jclass clazz)
{
(void)env; (void)clazz;
@@ -275,7 +275,7 @@ Java_io_github_kdroidfilter_nucleus_darkmodedetector_linux_NativeLinuxBridge_nat
/* nativeStopObserving() */
/* ------------------------------------------------------------------ */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_darkmodedetector_linux_NativeLinuxBridge_nativeStopObserving(
+Java_dev_nucleusframework_nucleus_darkmodedetector_linux_NativeLinuxBridge_nativeStopObserving(
JNIEnv *env, jclass clazz)
{
(void)env; (void)clazz;
diff --git a/darkmode-detector/src/main/native/macos/NucleusDarkModeBridge.m b/darkmode-detector/src/main/native/macos/NucleusDarkModeBridge.m
index 292ff29ea..18a41492c 100644
--- a/darkmode-detector/src/main/native/macos/NucleusDarkModeBridge.m
+++ b/darkmode-detector/src/main/native/macos/NucleusDarkModeBridge.m
@@ -13,7 +13,7 @@ JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) {
}
JNIEXPORT jboolean JNICALL
-Java_io_github_kdroidfilter_nucleus_darkmodedetector_mac_NativeDarkModeBridge_nativeIsDark(
+Java_dev_nucleusframework_nucleus_darkmodedetector_mac_NativeDarkModeBridge_nativeIsDark(
JNIEnv *env, jclass clazz) {
@autoreleasepool {
NSString *style = [[NSUserDefaults standardUserDefaults]
@@ -27,7 +27,7 @@ JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) {
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_darkmodedetector_mac_NativeDarkModeBridge_nativeStartObserving(
+Java_dev_nucleusframework_nucleus_darkmodedetector_mac_NativeDarkModeBridge_nativeStartObserving(
JNIEnv *env, jclass clazz) {
if (g_observer != nil) return; // already observing
@@ -58,7 +58,7 @@ JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) {
? JNI_TRUE : JNI_FALSE;
jclass bridgeClass = (*cbEnv)->FindClass(cbEnv,
- "io/github/kdroidfilter/nucleus/darkmodedetector/mac/NativeDarkModeBridge");
+ "dev/nucleusframework/nucleus/darkmodedetector/mac/NativeDarkModeBridge");
if (bridgeClass != NULL) {
jmethodID method = (*cbEnv)->GetStaticMethodID(cbEnv,
bridgeClass, "onThemeChanged", "(Z)V");
@@ -79,7 +79,7 @@ JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) {
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_darkmodedetector_mac_NativeDarkModeBridge_nativeStopObserving(
+Java_dev_nucleusframework_nucleus_darkmodedetector_mac_NativeDarkModeBridge_nativeStopObserving(
JNIEnv *env, jclass clazz) {
if (g_observer != nil) {
[[NSDistributedNotificationCenter defaultCenter] removeObserver:g_observer];
diff --git a/darkmode-detector/src/main/native/windows/nucleus_windows_theme.c b/darkmode-detector/src/main/native/windows/nucleus_windows_theme.c
index 99a55abff..0e8e40b97 100644
--- a/darkmode-detector/src/main/native/windows/nucleus_windows_theme.c
+++ b/darkmode-detector/src/main/native/windows/nucleus_windows_theme.c
@@ -58,7 +58,7 @@ static jboolean is_dark(void) {
/* nativeIsDark() */
/* ------------------------------------------------------------------ */
JNIEXPORT jboolean JNICALL
-Java_io_github_kdroidfilter_nucleus_darkmodedetector_windows_NativeWindowsBridge_nativeIsDark(
+Java_dev_nucleusframework_nucleus_darkmodedetector_windows_NativeWindowsBridge_nativeIsDark(
JNIEnv *env, jclass clazz)
{
(void)env; (void)clazz;
@@ -84,7 +84,7 @@ static void notify_java(jboolean isDark) {
}
jclass bridgeClass = (*env)->FindClass(env,
- "io/github/kdroidfilter/nucleus/darkmodedetector/windows/NativeWindowsBridge");
+ "dev/nucleusframework/nucleus/darkmodedetector/windows/NativeWindowsBridge");
if (bridgeClass != NULL) {
jmethodID method = (*env)->GetStaticMethodID(env,
bridgeClass, "onThemeChanged", "(Z)V");
@@ -156,7 +156,7 @@ static DWORD WINAPI monitor_thread(LPVOID arg) {
/* nativeStartObserving() */
/* ------------------------------------------------------------------ */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_darkmodedetector_windows_NativeWindowsBridge_nativeStartObserving(
+Java_dev_nucleusframework_nucleus_darkmodedetector_windows_NativeWindowsBridge_nativeStartObserving(
JNIEnv *env, jclass clazz)
{
(void)env; (void)clazz;
@@ -183,7 +183,7 @@ Java_io_github_kdroidfilter_nucleus_darkmodedetector_windows_NativeWindowsBridge
/* nativeStopObserving() */
/* ------------------------------------------------------------------ */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_darkmodedetector_windows_NativeWindowsBridge_nativeStopObserving(
+Java_dev_nucleusframework_nucleus_darkmodedetector_windows_NativeWindowsBridge_nativeStopObserving(
JNIEnv *env, jclass clazz)
{
(void)env; (void)clazz;
diff --git a/darkmode-detector/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.darkmode-detector/reachability-metadata.json b/darkmode-detector/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.darkmode-detector/reachability-metadata.json
similarity index 74%
rename from darkmode-detector/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.darkmode-detector/reachability-metadata.json
rename to darkmode-detector/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.darkmode-detector/reachability-metadata.json
index fce166022..ae479c65f 100644
--- a/darkmode-detector/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.darkmode-detector/reachability-metadata.json
+++ b/darkmode-detector/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.darkmode-detector/reachability-metadata.json
@@ -1,7 +1,7 @@
{
"reflection": [
{
- "type": "io.github.kdroidfilter.nucleus.darkmodedetector.windows.NativeWindowsBridge",
+ "type": "dev.nucleusframework.nucleus.darkmodedetector.windows.NativeWindowsBridge",
"jniAccessible": true,
"methods": [
{
@@ -13,7 +13,7 @@
]
},
{
- "type": "io.github.kdroidfilter.nucleus.darkmodedetector.mac.NativeDarkModeBridge",
+ "type": "dev.nucleusframework.nucleus.darkmodedetector.mac.NativeDarkModeBridge",
"jniAccessible": true,
"methods": [
{
@@ -25,7 +25,7 @@
]
},
{
- "type": "io.github.kdroidfilter.nucleus.darkmodedetector.linux.NativeLinuxBridge",
+ "type": "dev.nucleusframework.nucleus.darkmodedetector.linux.NativeLinuxBridge",
"jniAccessible": true,
"methods": [
{
diff --git a/decorated-window-awt/build.gradle.kts b/decorated-window-awt/build.gradle.kts
index ebf5a64ff..5be57f45a 100644
--- a/decorated-window-awt/build.gradle.kts
+++ b/decorated-window-awt/build.gradle.kts
@@ -32,14 +32,14 @@ kotlin {
}
mavenPublishing {
- coordinates("io.github.kdroidfilter", "nucleus.decorated-window-awt", publishVersion)
+ coordinates("dev.nucleusframework", "nucleus.decorated-window-awt", publishVersion)
pom {
name.set("Nucleus Decorated Window AWT")
description.set(
"AWT/Compose Desktop integration of Nucleus Decorated Window (consumed by JBR and JNI backends)",
)
- url.set("https://github.com/kdroidFilter/Nucleus")
+ url.set("https://github.com/nucleusframework/Nucleus")
licenses {
license {
@@ -50,16 +50,16 @@ mavenPublishing {
developers {
developer {
- id.set("kdroidfilter")
- name.set("kdroidFilter")
- url.set("https://github.com/kdroidFilter")
+ id.set("nucleusframework")
+ name.set("nucleusframework")
+ url.set("https://github.com/nucleusframework")
}
}
scm {
- url.set("https://github.com/kdroidFilter/Nucleus")
- connection.set("scm:git:git://github.com/kdroidFilter/Nucleus.git")
- developerConnection.set("scm:git:ssh://git@github.com/kdroidFilter/Nucleus.git")
+ url.set("https://github.com/nucleusframework/Nucleus")
+ connection.set("scm:git:git://github.com/nucleusframework/Nucleus.git")
+ developerConnection.set("scm:git:ssh://git@github.com/nucleusframework/Nucleus.git")
}
}
diff --git a/decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/AwtDecoratedWindow.kt b/decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/AwtDecoratedWindow.kt
similarity index 97%
rename from decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/AwtDecoratedWindow.kt
rename to decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/AwtDecoratedWindow.kt
index 743a1d119..b6f5b66a6 100644
--- a/decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/AwtDecoratedWindow.kt
+++ b/decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/AwtDecoratedWindow.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.foundation.background
import androidx.compose.foundation.shape.RoundedCornerShape
@@ -21,10 +21,10 @@ import androidx.compose.ui.unit.LayoutDirection
import androidx.compose.ui.unit.dp
import androidx.compose.ui.window.FrameWindowScope
import androidx.compose.ui.window.WindowPlacement
-import io.github.kdroidfilter.nucleus.core.runtime.LinuxDesktopEnvironment
-import io.github.kdroidfilter.nucleus.window.internal.insideBorder
-import io.github.kdroidfilter.nucleus.window.styling.LocalDecoratedWindowStyle
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.core.runtime.LinuxDesktopEnvironment
+import dev.nucleusframework.nucleus.window.internal.insideBorder
+import dev.nucleusframework.nucleus.window.styling.LocalDecoratedWindowStyle
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
import java.awt.ComponentOrientation
import java.awt.Desktop
import java.awt.Frame
diff --git a/decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/AwtTitleBar.kt b/decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/AwtTitleBar.kt
similarity index 95%
rename from decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/AwtTitleBar.kt
rename to decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/AwtTitleBar.kt
index 9bad1365b..735cdbe85 100644
--- a/decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/AwtTitleBar.kt
+++ b/decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/AwtTitleBar.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.runtime.Composable
@@ -10,8 +10,8 @@ import androidx.compose.ui.input.pointer.pointerInput
import androidx.compose.ui.platform.LocalLayoutDirection
import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.LayoutDirection
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
import kotlinx.coroutines.currentCoroutineContext
import kotlinx.coroutines.isActive
import java.awt.Window
diff --git a/decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedDialogCore.kt b/decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedDialogCore.kt
similarity index 96%
rename from decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedDialogCore.kt
rename to decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedDialogCore.kt
index ff9547641..389080fd5 100644
--- a/decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedDialogCore.kt
+++ b/decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedDialogCore.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.foundation.background
import androidx.compose.foundation.shape.RoundedCornerShape
@@ -26,10 +26,10 @@ import androidx.compose.ui.unit.Constraints
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.offset
import androidx.compose.ui.window.DialogWindowScope
-import io.github.kdroidfilter.nucleus.core.runtime.LinuxDesktopEnvironment
-import io.github.kdroidfilter.nucleus.window.internal.insideBorder
-import io.github.kdroidfilter.nucleus.window.styling.LocalDecoratedWindowStyle
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.core.runtime.LinuxDesktopEnvironment
+import dev.nucleusframework.nucleus.window.internal.insideBorder
+import dev.nucleusframework.nucleus.window.styling.LocalDecoratedWindowStyle
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
import java.awt.event.ComponentEvent
import java.awt.event.ComponentListener
import java.awt.event.WindowAdapter
diff --git a/decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBarImpl.kt b/decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBarImpl.kt
similarity index 87%
rename from decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBarImpl.kt
rename to decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBarImpl.kt
index 5cb1a9e75..5fdcf7fd6 100644
--- a/decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBarImpl.kt
+++ b/decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBarImpl.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.runtime.Composable
@@ -7,8 +7,8 @@ import androidx.compose.ui.graphics.Color
import androidx.compose.ui.platform.LocalLayoutDirection
import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.LayoutDirection
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
@Suppress("FunctionNaming", "LongParameterList")
@Composable
diff --git a/decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/WindowControlArea.kt b/decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/WindowControlArea.kt
similarity index 95%
rename from decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/WindowControlArea.kt
rename to decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/WindowControlArea.kt
index 8704f5458..01d21299e 100644
--- a/decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/WindowControlArea.kt
+++ b/decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/WindowControlArea.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.foundation.Image
import androidx.compose.foundation.clickable
@@ -23,11 +23,11 @@ import androidx.compose.ui.input.pointer.PointerEventType
import androidx.compose.ui.input.pointer.onPointerEvent
import androidx.compose.ui.platform.LocalLayoutDirection
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.core.runtime.LinuxDesktopEnvironment
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
-import io.github.kdroidfilter.nucleus.window.utils.linux.LinuxTitleBarButton
-import io.github.kdroidfilter.nucleus.window.utils.linux.linuxTitleBarIcons
-import io.github.kdroidfilter.nucleus.window.utils.linux.rememberLinuxButtonLayout
+import dev.nucleusframework.nucleus.core.runtime.LinuxDesktopEnvironment
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.utils.linux.LinuxTitleBarButton
+import dev.nucleusframework.nucleus.window.utils.linux.linuxTitleBarIcons
+import dev.nucleusframework.nucleus.window.utils.linux.rememberLinuxButtonLayout
import java.awt.Frame
import java.awt.event.WindowEvent
diff --git a/decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/WindowsWindowControlArea.kt b/decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/WindowsWindowControlArea.kt
similarity index 97%
rename from decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/WindowsWindowControlArea.kt
rename to decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/WindowsWindowControlArea.kt
index eeda78e26..bad9f95e3 100644
--- a/decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/WindowsWindowControlArea.kt
+++ b/decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/WindowsWindowControlArea.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.foundation.Image
import androidx.compose.foundation.background
@@ -24,8 +24,8 @@ import androidx.compose.ui.input.pointer.PointerEventType
import androidx.compose.ui.input.pointer.onPointerEvent
import androidx.compose.ui.platform.LocalLayoutDirection
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
-import io.github.kdroidfilter.nucleus.window.utils.windows.windowsTitleBarIcons
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.utils.windows.windowsTitleBarIcons
import java.awt.Frame
import java.awt.event.WindowEvent
diff --git a/decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/internal/MinimumSizeSupport.kt b/decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/internal/MinimumSizeSupport.kt
similarity index 98%
rename from decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/internal/MinimumSizeSupport.kt
rename to decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/internal/MinimumSizeSupport.kt
index a1bcf2db2..20d7fb61e 100644
--- a/decorated-window-awt/src/main/kotlin/io/github/kdroidfilter/nucleus/window/internal/MinimumSizeSupport.kt
+++ b/decorated-window-awt/src/main/kotlin/dev/nucleusframework/nucleus/window/internal/MinimumSizeSupport.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.internal
+package dev.nucleusframework.nucleus.window.internal
import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
diff --git a/decorated-window-core/build.gradle.kts b/decorated-window-core/build.gradle.kts
index b8a1892af..32fe15f9a 100644
--- a/decorated-window-core/build.gradle.kts
+++ b/decorated-window-core/build.gradle.kts
@@ -85,12 +85,12 @@ kotlin {
}
mavenPublishing {
- coordinates("io.github.kdroidfilter", "nucleus.decorated-window-core", publishVersion)
+ coordinates("dev.nucleusframework", "nucleus.decorated-window-core", publishVersion)
pom {
name.set("Nucleus Decorated Window Core")
description.set("Shared types, layout, styling, and resources for Nucleus Decorated Window")
- url.set("https://github.com/kdroidFilter/Nucleus")
+ url.set("https://github.com/nucleusframework/Nucleus")
licenses {
license {
@@ -101,16 +101,16 @@ mavenPublishing {
developers {
developer {
- id.set("kdroidfilter")
- name.set("kdroidFilter")
- url.set("https://github.com/kdroidFilter")
+ id.set("nucleusframework")
+ name.set("nucleusframework")
+ url.set("https://github.com/nucleusframework")
}
}
scm {
- url.set("https://github.com/kdroidFilter/Nucleus")
- connection.set("scm:git:git://github.com/kdroidFilter/Nucleus.git")
- developerConnection.set("scm:git:ssh://git@github.com/kdroidFilter/Nucleus.git")
+ url.set("https://github.com/nucleusframework/Nucleus")
+ connection.set("scm:git:git://github.com/nucleusframework/Nucleus.git")
+ developerConnection.set("scm:git:ssh://git@github.com/nucleusframework/Nucleus.git")
}
}
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/ControlButtonsDirection.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/ControlButtonsDirection.kt
similarity index 97%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/ControlButtonsDirection.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/ControlButtonsDirection.kt
index 6f971f51f..a81d10c9b 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/ControlButtonsDirection.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/ControlButtonsDirection.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.runtime.Composable
import androidx.compose.ui.platform.LocalLayoutDirection
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedDialogTypes.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedDialogTypes.kt
similarity index 97%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedDialogTypes.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedDialogTypes.kt
index 494a3292f..691f4cb9d 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedDialogTypes.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedDialogTypes.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.runtime.Immutable
import androidx.compose.runtime.ProvidableCompositionLocal
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedWindowCore.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedWindowCore.kt
similarity index 99%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedWindowCore.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedWindowCore.kt
index 46e830eea..8a06af27b 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedWindowCore.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedWindowCore.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.runtime.Immutable
import androidx.compose.runtime.ProvidableCompositionLocal
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/NativeLayoutDirectionBridge.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/NativeLayoutDirectionBridge.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/NativeLayoutDirectionBridge.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/NativeLayoutDirectionBridge.kt
index fbd38b098..213a4f5d8 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/NativeLayoutDirectionBridge.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/NativeLayoutDirectionBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
import java.util.concurrent.ConcurrentHashMap
import java.util.function.Consumer
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/NucleusDecoratedWindowTheme.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/NucleusDecoratedWindowTheme.kt
similarity index 84%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/NucleusDecoratedWindowTheme.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/NucleusDecoratedWindowTheme.kt
index 5f4d27824..52888c9e4 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/NucleusDecoratedWindowTheme.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/NucleusDecoratedWindowTheme.kt
@@ -1,20 +1,20 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.runtime.Composable
import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.unit.DpSize
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.core.runtime.LinuxDesktopEnvironment
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
-import io.github.kdroidfilter.nucleus.window.styling.DecoratedWindowColors
-import io.github.kdroidfilter.nucleus.window.styling.DecoratedWindowMetrics
-import io.github.kdroidfilter.nucleus.window.styling.DecoratedWindowStyle
-import io.github.kdroidfilter.nucleus.window.styling.LocalDecoratedWindowStyle
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarColors
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarMetrics
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.core.runtime.LinuxDesktopEnvironment
+import dev.nucleusframework.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.window.styling.DecoratedWindowColors
+import dev.nucleusframework.nucleus.window.styling.DecoratedWindowMetrics
+import dev.nucleusframework.nucleus.window.styling.DecoratedWindowStyle
+import dev.nucleusframework.nucleus.window.styling.LocalDecoratedWindowStyle
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarColors
+import dev.nucleusframework.nucleus.window.styling.TitleBarMetrics
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
val LocalIsDarkTheme = androidx.compose.runtime.staticCompositionLocalOf { true }
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBarCore.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBarCore.kt
similarity index 98%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBarCore.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBarCore.kt
index f2f39eacb..0ab7476eb 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBarCore.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBarCore.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Box
@@ -41,9 +41,9 @@ import androidx.compose.ui.unit.Density
import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.LayoutDirection
import androidx.compose.ui.unit.offset
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
import kotlinx.coroutines.currentCoroutineContext
import kotlinx.coroutines.isActive
import kotlin.math.max
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBarLinuxCommon.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBarLinuxCommon.kt
similarity index 79%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBarLinuxCommon.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBarLinuxCommon.kt
index 9533d3398..7aa0d1c13 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBarLinuxCommon.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBarLinuxCommon.kt
@@ -1,13 +1,13 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.runtime.Composable
import androidx.compose.runtime.remember
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.core.runtime.LinuxDesktopEnvironment
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
-import io.github.kdroidfilter.nucleus.window.utils.linux.LinuxButtonLayout
+import dev.nucleusframework.nucleus.core.runtime.LinuxDesktopEnvironment
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.utils.linux.LinuxButtonLayout
@Composable
fun createLinuxTitleBarStyle(style: TitleBarStyle): TitleBarStyle =
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBarModifiers.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBarModifiers.kt
similarity index 96%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBarModifiers.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBarModifiers.kt
index e45b9e3b1..38e6477cf 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBarModifiers.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBarModifiers.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.ui.Modifier
import androidx.compose.ui.node.ModifierNodeElement
@@ -69,7 +69,7 @@ fun Modifier.hasNewFullscreenControls(): Boolean =
* - **JBR**: installs a hidden NSToolbar via JBR's CustomTitleBar so AppKit
* applies the larger corner-radius style.
* - **JNI**: same NSToolbar install path via the JNI bridge.
- * - **Tao**: alternative path is the [io.github.kdroidfilter.nucleus.window.tao.MacOSStyle]
+ * - **Tao**: alternative path is the [dev.nucleusframework.nucleus.window.tao.MacOSStyle]
* enum on `openDecoratedWindow`; the modifier is read by tao's TitleBar for
* parity but the window-creation enum takes precedence.
*
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/Close.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/Close.kt
similarity index 90%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/Close.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/Close.kt
index 1c9e7087e..56791a2af 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/Close.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/Close.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.Close: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/CloseDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/CloseDark.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/CloseDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/CloseDark.kt
index 098cb18ef..70854b0ee 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/CloseDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/CloseDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.CloseDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/CloseHover.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/CloseHover.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/CloseHover.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/CloseHover.kt
index 47739c1e4..88409f848 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/CloseHover.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/CloseHover.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.CloseHover: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/CloseHoverDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/CloseHoverDark.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/CloseHoverDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/CloseHoverDark.kt
index 2d8604cc4..7e41c7d50 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/CloseHoverDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/CloseHoverDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.CloseHoverDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/CloseInactive.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/CloseInactive.kt
similarity index 88%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/CloseInactive.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/CloseInactive.kt
index 2b69f9450..abb5a2898 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/CloseInactive.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/CloseInactive.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.CloseInactive: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/CloseInactiveDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/CloseInactiveDark.kt
similarity index 88%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/CloseInactiveDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/CloseInactiveDark.kt
index 79ae285f8..b0091625a 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/CloseInactiveDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/CloseInactiveDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.CloseInactiveDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/ClosePressed.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/ClosePressed.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/ClosePressed.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/ClosePressed.kt
index b72802bcc..74b9d8a22 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/ClosePressed.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/ClosePressed.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.ClosePressed: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/ClosePressedDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/ClosePressedDark.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/ClosePressedDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/ClosePressedDark.kt
index 734f0d65d..a0298733c 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/ClosePressedDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/ClosePressedDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.ClosePressedDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/GnomeControlButtonsIcons.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/GnomeControlButtonsIcons.kt
new file mode 100644
index 000000000..c57f92d82
--- /dev/null
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/GnomeControlButtonsIcons.kt
@@ -0,0 +1,3 @@
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
+
+object GnomeControlButtonsIcons
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/Maximize.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/Maximize.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/Maximize.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/Maximize.kt
index 4fa4b3f27..3c27684db 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/Maximize.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/Maximize.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.Maximize: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizeDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizeDark.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizeDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizeDark.kt
index 992426dc1..eab3ad6ca 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizeDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizeDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.MaximizeDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizeHover.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizeHover.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizeHover.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizeHover.kt
index b0e92f3b8..09e2449d0 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizeHover.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizeHover.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.MaximizeHover: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizeHoverDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizeHoverDark.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizeHoverDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizeHoverDark.kt
index 6a93a2520..df336ffa9 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizeHoverDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizeHoverDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.MaximizeHoverDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizeInactive.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizeInactive.kt
similarity index 88%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizeInactive.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizeInactive.kt
index 09242253c..1fed374e4 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizeInactive.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizeInactive.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.MaximizeInactive: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizeInactiveDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizeInactiveDark.kt
similarity index 89%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizeInactiveDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizeInactiveDark.kt
index 397d084db..55733f31a 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizeInactiveDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizeInactiveDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.MaximizeInactiveDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizePressed.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizePressed.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizePressed.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizePressed.kt
index b428e92d4..f793ba6fc 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizePressed.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizePressed.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.MaximizePressed: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizePressedDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizePressedDark.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizePressedDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizePressedDark.kt
index baf0b8306..951169a46 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MaximizePressedDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MaximizePressedDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.MaximizePressedDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/Minimize.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/Minimize.kt
similarity index 90%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/Minimize.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/Minimize.kt
index 822ebfeb3..42f65aa71 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/Minimize.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/Minimize.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.Minimize: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizeDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizeDark.kt
similarity index 90%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizeDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizeDark.kt
index 3b5cfa0f1..d6999c5d8 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizeDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizeDark.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.MinimizeDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizeHover.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizeHover.kt
similarity index 90%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizeHover.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizeHover.kt
index c22542317..6739fab92 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizeHover.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizeHover.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.MinimizeHover: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizeHoverDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizeHoverDark.kt
similarity index 90%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizeHoverDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizeHoverDark.kt
index 89870d66b..a48575752 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizeHoverDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizeHoverDark.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.MinimizeHoverDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizeInactive.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizeInactive.kt
similarity index 86%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizeInactive.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizeInactive.kt
index aceec69a3..925cdc18c 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizeInactive.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizeInactive.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.MinimizeInactive: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizeInactiveDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizeInactiveDark.kt
similarity index 86%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizeInactiveDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizeInactiveDark.kt
index e26eb9283..d45837ab0 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizeInactiveDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizeInactiveDark.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.MinimizeInactiveDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizePressed.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizePressed.kt
similarity index 90%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizePressed.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizePressed.kt
index 934e22d06..13abefa0a 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizePressed.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizePressed.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.MinimizePressed: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizePressedDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizePressedDark.kt
similarity index 90%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizePressedDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizePressedDark.kt
index 19c0fcbe7..15d841488 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/MinimizePressedDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/MinimizePressedDark.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.MinimizePressedDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/Restore.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/Restore.kt
similarity index 92%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/Restore.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/Restore.kt
index bec21dc69..435646104 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/Restore.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/Restore.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.Restore: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestoreDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestoreDark.kt
similarity index 92%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestoreDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestoreDark.kt
index 567d63cc0..2cda6fc4d 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestoreDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestoreDark.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.RestoreDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestoreHover.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestoreHover.kt
similarity index 92%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestoreHover.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestoreHover.kt
index 97a7122f5..6fdf85660 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestoreHover.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestoreHover.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.RestoreHover: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestoreHoverDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestoreHoverDark.kt
similarity index 92%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestoreHoverDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestoreHoverDark.kt
index 895396154..d4602d0f0 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestoreHoverDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestoreHoverDark.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.RestoreHoverDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestoreInactive.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestoreInactive.kt
similarity index 90%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestoreInactive.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestoreInactive.kt
index 75a36d75e..0abb95b6d 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestoreInactive.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestoreInactive.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.RestoreInactive: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestoreInactiveDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestoreInactiveDark.kt
similarity index 90%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestoreInactiveDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestoreInactiveDark.kt
index 81d20165b..7b5a15927 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestoreInactiveDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestoreInactiveDark.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.RestoreInactiveDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestorePressed.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestorePressed.kt
similarity index 92%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestorePressed.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestorePressed.kt
index 644767a8b..19b9a6af5 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestorePressed.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestorePressed.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.RestorePressed: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestorePressedDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestorePressedDark.kt
similarity index 92%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestorePressedDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestorePressedDark.kt
index 526c11b8f..54abdec03 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/RestorePressedDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/gnome/RestorePressedDark.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
+package dev.nucleusframework.nucleus.window.icons.linux.gnome
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.GnomeControlButtonsIcons
val GnomeControlButtonsIcons.RestorePressedDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/Close.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/Close.kt
similarity index 87%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/Close.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/Close.kt
index 3ffa995fe..a3606a535 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/Close.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/Close.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.Close: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/CloseDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/CloseDark.kt
similarity index 88%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/CloseDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/CloseDark.kt
index f34709fbf..512eb1ce3 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/CloseDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/CloseDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.CloseDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/CloseHover.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/CloseHover.kt
similarity index 90%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/CloseHover.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/CloseHover.kt
index ac5213cb4..b5e30253f 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/CloseHover.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/CloseHover.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.CloseHover: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/CloseHoverFocused.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/CloseHoverFocused.kt
similarity index 90%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/CloseHoverFocused.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/CloseHoverFocused.kt
index 4b1725d59..e3b9dfbf9 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/CloseHoverFocused.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/CloseHoverFocused.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.CloseHoverFocused: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/CloseInactive.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/CloseInactive.kt
similarity index 88%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/CloseInactive.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/CloseInactive.kt
index d3bdc7a22..85ebfe553 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/CloseInactive.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/CloseInactive.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.CloseInactive: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/CloseInactiveDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/CloseInactiveDark.kt
similarity index 88%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/CloseInactiveDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/CloseInactiveDark.kt
index 7c953047f..a61dd8621 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/CloseInactiveDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/CloseInactiveDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.CloseInactiveDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/ClosePressed.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/ClosePressed.kt
similarity index 90%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/ClosePressed.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/ClosePressed.kt
index ad67def73..20a94c58b 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/ClosePressed.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/ClosePressed.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.ClosePressed: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/ClosePressedFocused.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/ClosePressedFocused.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/ClosePressedFocused.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/ClosePressedFocused.kt
index 67280b12c..3a45f7049 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/ClosePressedFocused.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/ClosePressedFocused.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.ClosePressedFocused: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/KdeControlButtonsIcons.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/KdeControlButtonsIcons.kt
new file mode 100644
index 000000000..612ac7704
--- /dev/null
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/KdeControlButtonsIcons.kt
@@ -0,0 +1,3 @@
+package dev.nucleusframework.nucleus.window.icons.linux.kde
+
+object KdeControlButtonsIcons
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/Maximize.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/Maximize.kt
similarity index 88%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/Maximize.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/Maximize.kt
index a72882abd..3089064bc 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/Maximize.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/Maximize.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.Maximize: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MaximizeDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MaximizeDark.kt
similarity index 88%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MaximizeDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MaximizeDark.kt
index 293479a7a..37634fb79 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MaximizeDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MaximizeDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.MaximizeDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MaximizeHover.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MaximizeHover.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MaximizeHover.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MaximizeHover.kt
index e88298b29..28c84c9b1 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MaximizeHover.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MaximizeHover.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.MaximizeHover: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MaximizeHoverDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MaximizeHoverDark.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MaximizeHoverDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MaximizeHoverDark.kt
index 6cc6273b0..4ebe94202 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MaximizeHoverDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MaximizeHoverDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.MaximizeHoverDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MaximizeInactive.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MaximizeInactive.kt
similarity index 89%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MaximizeInactive.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MaximizeInactive.kt
index a640b5545..3283ef560 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MaximizeInactive.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MaximizeInactive.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.MaximizeInactive: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MaximizePressed.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MaximizePressed.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MaximizePressed.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MaximizePressed.kt
index 311277f3c..b9c539a0f 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MaximizePressed.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MaximizePressed.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.MaximizePressed: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MaximizePressedDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MaximizePressedDark.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MaximizePressedDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MaximizePressedDark.kt
index 3c82c7ada..f6fdd7abb 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MaximizePressedDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MaximizePressedDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.MaximizePressedDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/Minimize.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/Minimize.kt
similarity index 88%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/Minimize.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/Minimize.kt
index e73c1e16f..530905a1b 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/Minimize.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/Minimize.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.Minimize: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MinimizeDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MinimizeDark.kt
similarity index 88%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MinimizeDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MinimizeDark.kt
index 3f8f57bab..32ccbe690 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MinimizeDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MinimizeDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.MinimizeDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MinimizeHover.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MinimizeHover.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MinimizeHover.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MinimizeHover.kt
index aec57cc91..d427d8c1e 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MinimizeHover.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MinimizeHover.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.MinimizeHover: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MinimizeHoverDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MinimizeHoverDark.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MinimizeHoverDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MinimizeHoverDark.kt
index c7eb40db3..b4167ce72 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MinimizeHoverDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MinimizeHoverDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.MinimizeHoverDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MinimizeInactive.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MinimizeInactive.kt
similarity index 89%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MinimizeInactive.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MinimizeInactive.kt
index 397b8cd07..245b8955b 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MinimizeInactive.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MinimizeInactive.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.MinimizeInactive: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MinimizePressed.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MinimizePressed.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MinimizePressed.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MinimizePressed.kt
index f2ab64238..218eeb07a 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MinimizePressed.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MinimizePressed.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.MinimizePressed: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MinimizePressedDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MinimizePressedDark.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MinimizePressedDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MinimizePressedDark.kt
index d618a3601..44a72b5e5 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/MinimizePressedDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/MinimizePressedDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.MinimizePressedDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/Restore.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/Restore.kt
similarity index 89%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/Restore.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/Restore.kt
index 98e0c3d34..8301917a2 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/Restore.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/Restore.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.Restore: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/RestoreDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/RestoreDark.kt
similarity index 89%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/RestoreDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/RestoreDark.kt
index e0f69d92a..8f22116cf 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/RestoreDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/RestoreDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.RestoreDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/RestoreHover.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/RestoreHover.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/RestoreHover.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/RestoreHover.kt
index ca7233aca..486497f25 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/RestoreHover.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/RestoreHover.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.RestoreHover: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/RestoreHoverDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/RestoreHoverDark.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/RestoreHoverDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/RestoreHoverDark.kt
index 9d6d57e77..c1165f8c2 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/RestoreHoverDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/RestoreHoverDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.RestoreHoverDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/RestoreInactive.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/RestoreInactive.kt
similarity index 89%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/RestoreInactive.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/RestoreInactive.kt
index abc7117a8..3ec850011 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/RestoreInactive.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/RestoreInactive.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.RestoreInactive: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/RestorePressed.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/RestorePressed.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/RestorePressed.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/RestorePressed.kt
index 0cc3596f1..9f711fd89 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/RestorePressed.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/RestorePressed.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.RestorePressed: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/RestorePressedDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/RestorePressedDark.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/RestorePressedDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/RestorePressedDark.kt
index 2c2c52359..fa9b4bae9 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/RestorePressedDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/linux/kde/RestorePressedDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
+package dev.nucleusframework.nucleus.window.icons.linux.kde
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
@@ -7,7 +7,7 @@ import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
+import dev.nucleusframework.nucleus.window.icons.linux.kde.KdeControlButtonsIcons
val KdeControlButtonsIcons.RestorePressedDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/Close.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/Close.kt
similarity index 89%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/Close.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/Close.kt
index e33da5490..f15d69d29 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/Close.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/Close.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.Close: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseDark.kt
similarity index 89%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseDark.kt
index 2651f968f..363d56f1b 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseDark.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.CloseDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseFullscreen.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseFullscreen.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseFullscreen.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseFullscreen.kt
index a87089811..b74e22670 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseFullscreen.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseFullscreen.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.CloseFullscreen: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseFullscreenDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseFullscreenDark.kt
similarity index 92%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseFullscreenDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseFullscreenDark.kt
index 1e84026b9..32f03c355 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseFullscreenDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseFullscreenDark.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.CloseFullscreenDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseFullscreenInactive.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseFullscreenInactive.kt
similarity index 92%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseFullscreenInactive.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseFullscreenInactive.kt
index 16c2660b1..24370cc45 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseFullscreenInactive.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseFullscreenInactive.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.CloseFullscreenInactive: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseFullscreenInactiveDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseFullscreenInactiveDark.kt
similarity index 92%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseFullscreenInactiveDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseFullscreenInactiveDark.kt
index 7a6a32a23..0e5c276f0 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseFullscreenInactiveDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseFullscreenInactiveDark.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.CloseFullscreenInactiveDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseHover.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseHover.kt
similarity index 91%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseHover.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseHover.kt
index 344e39a01..3b0f78669 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseHover.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseHover.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.PathFillType
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.CloseHover: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseInactive.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseInactive.kt
similarity index 90%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseInactive.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseInactive.kt
index eb4aa2e18..ddd1c89cc 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseInactive.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseInactive.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.CloseInactive: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseInactiveDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseInactiveDark.kt
similarity index 90%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseInactiveDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseInactiveDark.kt
index f8086056a..92a6c5e4b 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/CloseInactiveDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/CloseInactiveDark.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.CloseInactiveDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/Maximize.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/Maximize.kt
similarity index 87%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/Maximize.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/Maximize.kt
index 3d9a8fdb7..d50831bd5 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/Maximize.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/Maximize.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.Maximize: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/MaximizeDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/MaximizeDark.kt
similarity index 88%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/MaximizeDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/MaximizeDark.kt
index 99ff5cf90..936a6a50d 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/MaximizeDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/MaximizeDark.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.MaximizeDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/MaximizeInactive.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/MaximizeInactive.kt
similarity index 88%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/MaximizeInactive.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/MaximizeInactive.kt
index 331fb4073..d1845fd5e 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/MaximizeInactive.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/MaximizeInactive.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.MaximizeInactive: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/MaximizeInactiveDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/MaximizeInactiveDark.kt
similarity index 88%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/MaximizeInactiveDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/MaximizeInactiveDark.kt
index d1f7f4775..465c25835 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/MaximizeInactiveDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/MaximizeInactiveDark.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.MaximizeInactiveDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/Minimize.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/Minimize.kt
similarity index 87%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/Minimize.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/Minimize.kt
index 2b7cf8869..6e9c18ec5 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/Minimize.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/Minimize.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.Minimize: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/MinimizeDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/MinimizeDark.kt
similarity index 87%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/MinimizeDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/MinimizeDark.kt
index 9d6b43c7a..6f8cceff0 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/MinimizeDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/MinimizeDark.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.MinimizeDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/MinimizeInactive.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/MinimizeInactive.kt
similarity index 87%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/MinimizeInactive.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/MinimizeInactive.kt
index 2f8a6b7b3..365ff8468 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/MinimizeInactive.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/MinimizeInactive.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.MinimizeInactive: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/MinimizeInactiveDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/MinimizeInactiveDark.kt
similarity index 88%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/MinimizeInactiveDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/MinimizeInactiveDark.kt
index bc065ebf0..70c95a69f 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/MinimizeInactiveDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/MinimizeInactiveDark.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.MinimizeInactiveDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/Restore.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/Restore.kt
similarity index 92%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/Restore.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/Restore.kt
index c4093a06f..adff53c86 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/Restore.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/Restore.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.PathFillType
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.Restore: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/RestoreDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/RestoreDark.kt
similarity index 92%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/RestoreDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/RestoreDark.kt
index 2c347a594..b0ef813ec 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/RestoreDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/RestoreDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.PathFillType
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.RestoreDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/RestoreInactive.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/RestoreInactive.kt
similarity index 93%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/RestoreInactive.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/RestoreInactive.kt
index bd1bf0327..da4532115 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/RestoreInactive.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/RestoreInactive.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.PathFillType
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.RestoreInactive: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/RestoreInactiveDark.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/RestoreInactiveDark.kt
similarity index 93%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/RestoreInactiveDark.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/RestoreInactiveDark.kt
index 1d1ab7bdb..f5e1789b7 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/RestoreInactiveDark.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/RestoreInactiveDark.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
+package dev.nucleusframework.nucleus.window.icons.windows
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.PathFillType
@@ -6,7 +6,7 @@ import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
val WindowsControlButtonIcons.RestoreInactiveDark: ImageVector
get() {
diff --git a/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/WindowsControlButtonIcons.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/WindowsControlButtonIcons.kt
new file mode 100644
index 000000000..526f7e17c
--- /dev/null
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/icons/windows/WindowsControlButtonIcons.kt
@@ -0,0 +1,3 @@
+package dev.nucleusframework.nucleus.window.icons.windows
+
+object WindowsControlButtonIcons
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/internal/ColorUtils.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/internal/ColorUtils.kt
similarity index 86%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/internal/ColorUtils.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/internal/ColorUtils.kt
index 3d45d5956..f8afef63b 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/internal/ColorUtils.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/internal/ColorUtils.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.internal
+package dev.nucleusframework.nucleus.window.internal
import androidx.compose.ui.graphics.Color
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/internal/InsideBorderModifier.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/internal/InsideBorderModifier.kt
similarity index 95%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/internal/InsideBorderModifier.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/internal/InsideBorderModifier.kt
index 0438e36fd..cdc469ee6 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/internal/InsideBorderModifier.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/internal/InsideBorderModifier.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.internal
+package dev.nucleusframework.nucleus.window.internal
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.drawWithContent
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/styling/DecoratedWindowStyling.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/styling/DecoratedWindowStyling.kt
similarity index 83%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/styling/DecoratedWindowStyling.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/styling/DecoratedWindowStyling.kt
index ee70ed707..7c0ca12c4 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/styling/DecoratedWindowStyling.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/styling/DecoratedWindowStyling.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.styling
+package dev.nucleusframework.nucleus.window.styling
import androidx.compose.runtime.Composable
import androidx.compose.runtime.State
@@ -7,7 +7,7 @@ import androidx.compose.runtime.staticCompositionLocalOf
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.DecoratedWindowState
+import dev.nucleusframework.nucleus.window.DecoratedWindowState
data class DecoratedWindowStyle(
val colors: DecoratedWindowColors,
@@ -34,6 +34,6 @@ data class DecoratedWindowMetrics(
val LocalDecoratedWindowStyle =
staticCompositionLocalOf {
- io.github.kdroidfilter.nucleus.window.DecoratedWindowDefaults
+ dev.nucleusframework.nucleus.window.DecoratedWindowDefaults
.darkWindowStyle()
}
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/styling/TitleBarStyling.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/styling/TitleBarStyling.kt
similarity index 88%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/styling/TitleBarStyling.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/styling/TitleBarStyling.kt
index 4f1a7ef66..355827eed 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/styling/TitleBarStyling.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/styling/TitleBarStyling.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.styling
+package dev.nucleusframework.nucleus.window.styling
import androidx.compose.runtime.Composable
import androidx.compose.runtime.State
@@ -8,7 +8,7 @@ import androidx.compose.ui.graphics.Color
import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.DpSize
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.DecoratedWindowState
+import dev.nucleusframework.nucleus.window.DecoratedWindowState
data class TitleBarStyle(
val colors: TitleBarColors,
@@ -41,6 +41,6 @@ data class TitleBarMetrics(
val LocalTitleBarStyle =
staticCompositionLocalOf {
- io.github.kdroidfilter.nucleus.window.DecoratedWindowDefaults
+ dev.nucleusframework.nucleus.window.DecoratedWindowDefaults
.darkTitleBarStyle()
}
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/linux/LinuxButtonLayout.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/linux/LinuxButtonLayout.kt
similarity index 96%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/linux/LinuxButtonLayout.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/linux/LinuxButtonLayout.kt
index f62e96550..c59c68a26 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/linux/LinuxButtonLayout.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/linux/LinuxButtonLayout.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window.utils.linux
+package dev.nucleusframework.nucleus.window.utils.linux
import androidx.compose.runtime.Composable
import androidx.compose.runtime.DisposableEffect
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
-import io.github.kdroidfilter.nucleus.core.runtime.LinuxDesktopEnvironment
-import io.github.kdroidfilter.nucleus.window.NativeLayoutDirectionBridge
+import dev.nucleusframework.nucleus.core.runtime.LinuxDesktopEnvironment
+import dev.nucleusframework.nucleus.window.NativeLayoutDirectionBridge
import java.util.function.Consumer
/**
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/linux/LinuxTitleBarIconSet.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/linux/LinuxTitleBarIconSet.kt
similarity index 93%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/linux/LinuxTitleBarIconSet.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/linux/LinuxTitleBarIconSet.kt
index 499191dc5..8e3bc823f 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/linux/LinuxTitleBarIconSet.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/linux/LinuxTitleBarIconSet.kt
@@ -1,13 +1,13 @@
-package io.github.kdroidfilter.nucleus.window.utils.linux
+package dev.nucleusframework.nucleus.window.utils.linux
import androidx.compose.runtime.Composable
import androidx.compose.ui.graphics.painter.Painter
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.rememberVectorPainter
-import io.github.kdroidfilter.nucleus.core.runtime.LinuxDesktopEnvironment
-import io.github.kdroidfilter.nucleus.window.LocalIsDarkTheme
-import io.github.kdroidfilter.nucleus.window.icons.linux.gnome.*
-import io.github.kdroidfilter.nucleus.window.icons.linux.kde.*
+import dev.nucleusframework.nucleus.core.runtime.LinuxDesktopEnvironment
+import dev.nucleusframework.nucleus.window.LocalIsDarkTheme
+import dev.nucleusframework.nucleus.window.icons.linux.gnome.*
+import dev.nucleusframework.nucleus.window.icons.linux.kde.*
data class LinuxTitleBarIconSet(
val close: Painter,
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/windows/WindowsTitleBarIconSet.kt b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/windows/WindowsTitleBarIconSet.kt
similarity index 61%
rename from decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/windows/WindowsTitleBarIconSet.kt
rename to decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/windows/WindowsTitleBarIconSet.kt
index 4e68bef22..5ec69a401 100644
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/windows/WindowsTitleBarIconSet.kt
+++ b/decorated-window-core/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/windows/WindowsTitleBarIconSet.kt
@@ -1,31 +1,31 @@
-package io.github.kdroidfilter.nucleus.window.utils.windows
+package dev.nucleusframework.nucleus.window.utils.windows
import androidx.compose.runtime.Composable
import androidx.compose.ui.graphics.painter.Painter
import androidx.compose.ui.graphics.vector.rememberVectorPainter
-import io.github.kdroidfilter.nucleus.window.LocalIsDarkTheme
-import io.github.kdroidfilter.nucleus.window.icons.windows.Close
-import io.github.kdroidfilter.nucleus.window.icons.windows.CloseDark
-import io.github.kdroidfilter.nucleus.window.icons.windows.CloseFullscreen
-import io.github.kdroidfilter.nucleus.window.icons.windows.CloseFullscreenDark
-import io.github.kdroidfilter.nucleus.window.icons.windows.CloseFullscreenInactive
-import io.github.kdroidfilter.nucleus.window.icons.windows.CloseFullscreenInactiveDark
-import io.github.kdroidfilter.nucleus.window.icons.windows.CloseHover
-import io.github.kdroidfilter.nucleus.window.icons.windows.CloseInactive
-import io.github.kdroidfilter.nucleus.window.icons.windows.CloseInactiveDark
-import io.github.kdroidfilter.nucleus.window.icons.windows.Maximize
-import io.github.kdroidfilter.nucleus.window.icons.windows.MaximizeDark
-import io.github.kdroidfilter.nucleus.window.icons.windows.MaximizeInactive
-import io.github.kdroidfilter.nucleus.window.icons.windows.MaximizeInactiveDark
-import io.github.kdroidfilter.nucleus.window.icons.windows.Minimize
-import io.github.kdroidfilter.nucleus.window.icons.windows.MinimizeDark
-import io.github.kdroidfilter.nucleus.window.icons.windows.MinimizeInactive
-import io.github.kdroidfilter.nucleus.window.icons.windows.MinimizeInactiveDark
-import io.github.kdroidfilter.nucleus.window.icons.windows.Restore
-import io.github.kdroidfilter.nucleus.window.icons.windows.RestoreDark
-import io.github.kdroidfilter.nucleus.window.icons.windows.RestoreInactive
-import io.github.kdroidfilter.nucleus.window.icons.windows.RestoreInactiveDark
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.LocalIsDarkTheme
+import dev.nucleusframework.nucleus.window.icons.windows.Close
+import dev.nucleusframework.nucleus.window.icons.windows.CloseDark
+import dev.nucleusframework.nucleus.window.icons.windows.CloseFullscreen
+import dev.nucleusframework.nucleus.window.icons.windows.CloseFullscreenDark
+import dev.nucleusframework.nucleus.window.icons.windows.CloseFullscreenInactive
+import dev.nucleusframework.nucleus.window.icons.windows.CloseFullscreenInactiveDark
+import dev.nucleusframework.nucleus.window.icons.windows.CloseHover
+import dev.nucleusframework.nucleus.window.icons.windows.CloseInactive
+import dev.nucleusframework.nucleus.window.icons.windows.CloseInactiveDark
+import dev.nucleusframework.nucleus.window.icons.windows.Maximize
+import dev.nucleusframework.nucleus.window.icons.windows.MaximizeDark
+import dev.nucleusframework.nucleus.window.icons.windows.MaximizeInactive
+import dev.nucleusframework.nucleus.window.icons.windows.MaximizeInactiveDark
+import dev.nucleusframework.nucleus.window.icons.windows.Minimize
+import dev.nucleusframework.nucleus.window.icons.windows.MinimizeDark
+import dev.nucleusframework.nucleus.window.icons.windows.MinimizeInactive
+import dev.nucleusframework.nucleus.window.icons.windows.MinimizeInactiveDark
+import dev.nucleusframework.nucleus.window.icons.windows.Restore
+import dev.nucleusframework.nucleus.window.icons.windows.RestoreDark
+import dev.nucleusframework.nucleus.window.icons.windows.RestoreInactive
+import dev.nucleusframework.nucleus.window.icons.windows.RestoreInactiveDark
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
data class WindowsTitleBarIconSet(
val close: Painter,
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/GnomeControlButtonsIcons.kt b/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/GnomeControlButtonsIcons.kt
deleted file mode 100644
index d4c2d472a..000000000
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/gnome/GnomeControlButtonsIcons.kt
+++ /dev/null
@@ -1,3 +0,0 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.gnome
-
-object GnomeControlButtonsIcons
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/KdeControlButtonsIcons.kt b/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/KdeControlButtonsIcons.kt
deleted file mode 100644
index 0be95b2fb..000000000
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/linux/kde/KdeControlButtonsIcons.kt
+++ /dev/null
@@ -1,3 +0,0 @@
-package io.github.kdroidfilter.nucleus.window.icons.linux.kde
-
-object KdeControlButtonsIcons
diff --git a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/WindowsControlButtonIcons.kt b/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/WindowsControlButtonIcons.kt
deleted file mode 100644
index 23de4f7b6..000000000
--- a/decorated-window-core/src/main/kotlin/io/github/kdroidfilter/nucleus/window/icons/windows/WindowsControlButtonIcons.kt
+++ /dev/null
@@ -1,3 +0,0 @@
-package io.github.kdroidfilter.nucleus.window.icons.windows
-
-object WindowsControlButtonIcons
diff --git a/decorated-window-core/src/main/native/linux/nucleus_layout_direction_linux.c b/decorated-window-core/src/main/native/linux/nucleus_layout_direction_linux.c
index 06b947a4d..ea477f538 100644
--- a/decorated-window-core/src/main/native/linux/nucleus_layout_direction_linux.c
+++ b/decorated-window-core/src/main/native/linux/nucleus_layout_direction_linux.c
@@ -107,7 +107,7 @@ static int detect_rtl_via_locale(void) {
}
JNIEXPORT jboolean JNICALL
-Java_io_github_kdroidfilter_nucleus_window_NativeLayoutDirectionBridge_nativeIsRTL(
+Java_dev_nucleusframework_nucleus_window_NativeLayoutDirectionBridge_nativeIsRTL(
JNIEnv *env, jclass clazz)
{
(void)env; (void)clazz;
@@ -177,7 +177,7 @@ static char *readGnomeButtonLayout(void) {
}
JNIEXPORT jstring JNICALL
-Java_io_github_kdroidfilter_nucleus_window_NativeLayoutDirectionBridge_nativeGetButtonLayout(
+Java_dev_nucleusframework_nucleus_window_NativeLayoutDirectionBridge_nativeGetButtonLayout(
JNIEnv *env, jclass clazz)
{
(void)clazz;
@@ -224,7 +224,7 @@ static void notify_button_layout(const char *layout) {
}
jclass bridgeClass = (*env)->FindClass(env,
- "io/github/kdroidfilter/nucleus/window/NativeLayoutDirectionBridge");
+ "dev/nucleusframework/nucleus/window/NativeLayoutDirectionBridge");
if (bridgeClass != NULL) {
jmethodID method = (*env)->GetStaticMethodID(env,
bridgeClass, "onButtonLayoutChanged", "(Ljava/lang/String;)V");
@@ -358,7 +358,7 @@ static void *button_layout_monitor_thread(void *arg) {
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_NativeLayoutDirectionBridge_nativeStartButtonLayoutObserving(
+Java_dev_nucleusframework_nucleus_window_NativeLayoutDirectionBridge_nativeStartButtonLayoutObserving(
JNIEnv *env, jclass clazz)
{
(void)env; (void)clazz;
@@ -369,7 +369,7 @@ Java_io_github_kdroidfilter_nucleus_window_NativeLayoutDirectionBridge_nativeSta
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_NativeLayoutDirectionBridge_nativeStopButtonLayoutObserving(
+Java_dev_nucleusframework_nucleus_window_NativeLayoutDirectionBridge_nativeStopButtonLayoutObserving(
JNIEnv *env, jclass clazz)
{
(void)env; (void)clazz;
diff --git a/decorated-window-core/src/main/native/macos/NucleusLayoutDirectionBridge.m b/decorated-window-core/src/main/native/macos/NucleusLayoutDirectionBridge.m
index 9537295b2..923a20441 100644
--- a/decorated-window-core/src/main/native/macos/NucleusLayoutDirectionBridge.m
+++ b/decorated-window-core/src/main/native/macos/NucleusLayoutDirectionBridge.m
@@ -2,7 +2,7 @@
#include
JNIEXPORT jboolean JNICALL
-Java_io_github_kdroidfilter_nucleus_window_NativeLayoutDirectionBridge_nativeIsRTL(
+Java_dev_nucleusframework_nucleus_window_NativeLayoutDirectionBridge_nativeIsRTL(
JNIEnv *env, jclass clazz) {
@autoreleasepool {
NSString *language = [[NSLocale preferredLanguages] firstObject];
diff --git a/decorated-window-core/src/main/native/windows/nucleus_layout_direction_windows.c b/decorated-window-core/src/main/native/windows/nucleus_layout_direction_windows.c
index de822113e..8fb5cacfb 100644
--- a/decorated-window-core/src/main/native/windows/nucleus_layout_direction_windows.c
+++ b/decorated-window-core/src/main/native/windows/nucleus_layout_direction_windows.c
@@ -22,7 +22,7 @@ BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved) {
}
JNIEXPORT jboolean JNICALL
-Java_io_github_kdroidfilter_nucleus_window_NativeLayoutDirectionBridge_nativeIsRTL(
+Java_dev_nucleusframework_nucleus_window_NativeLayoutDirectionBridge_nativeIsRTL(
JNIEnv *env, jclass clazz)
{
(void)env; (void)clazz;
diff --git a/decorated-window-core/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.decorated-window-core/reachability-metadata.json b/decorated-window-core/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.decorated-window-core/reachability-metadata.json
similarity index 86%
rename from decorated-window-core/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.decorated-window-core/reachability-metadata.json
rename to decorated-window-core/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.decorated-window-core/reachability-metadata.json
index d04bde841..ac1295b3e 100644
--- a/decorated-window-core/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.decorated-window-core/reachability-metadata.json
+++ b/decorated-window-core/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.decorated-window-core/reachability-metadata.json
@@ -1,7 +1,7 @@
{
"reflection": [
{
- "type": "io.github.kdroidfilter.nucleus.window.NativeLayoutDirectionBridge",
+ "type": "dev.nucleusframework.nucleus.window.NativeLayoutDirectionBridge",
"jniAccessible": true,
"methods": [
{
diff --git a/decorated-window-jbr/build.gradle.kts b/decorated-window-jbr/build.gradle.kts
index da7bc84d2..333e3d444 100644
--- a/decorated-window-jbr/build.gradle.kts
+++ b/decorated-window-jbr/build.gradle.kts
@@ -58,12 +58,12 @@ tasks.configureEach {
}
mavenPublishing {
- coordinates("io.github.kdroidfilter", "nucleus.decorated-window-jbr", publishVersion)
+ coordinates("dev.nucleusframework", "nucleus.decorated-window-jbr", publishVersion)
pom {
name.set("Nucleus Decorated Window JBR")
description.set("JBR-based custom decorated window with native title bar for Compose Desktop")
- url.set("https://github.com/kdroidFilter/Nucleus")
+ url.set("https://github.com/nucleusframework/Nucleus")
licenses {
license {
@@ -74,16 +74,16 @@ mavenPublishing {
developers {
developer {
- id.set("kdroidfilter")
- name.set("kdroidFilter")
- url.set("https://github.com/kdroidFilter")
+ id.set("nucleusframework")
+ name.set("nucleusframework")
+ url.set("https://github.com/nucleusframework")
}
}
scm {
- url.set("https://github.com/kdroidFilter/Nucleus")
- connection.set("scm:git:git://github.com/kdroidFilter/Nucleus.git")
- developerConnection.set("scm:git:ssh://git@github.com/kdroidFilter/Nucleus.git")
+ url.set("https://github.com/nucleusframework/Nucleus")
+ connection.set("scm:git:git://github.com/nucleusframework/Nucleus.git")
+ developerConnection.set("scm:git:ssh://git@github.com/nucleusframework/Nucleus.git")
}
}
diff --git a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedDialog.kt b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedDialog.kt
similarity index 96%
rename from decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedDialog.kt
rename to decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedDialog.kt
index 7500a67c4..ab4dd982e 100644
--- a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedDialog.kt
+++ b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedDialog.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.runtime.Composable
import androidx.compose.runtime.remember
@@ -10,7 +10,7 @@ import androidx.compose.ui.window.DialogWindow
import androidx.compose.ui.window.WindowPosition
import androidx.compose.ui.window.rememberDialogState
import com.jetbrains.JBR
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.core.runtime.Platform
@Suppress("FunctionNaming", "LongParameterList")
@Composable
diff --git a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedWindow.kt b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedWindow.kt
similarity index 87%
rename from decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedWindow.kt
rename to decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedWindow.kt
index 79f6e517f..06930ce79 100644
--- a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedWindow.kt
+++ b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedWindow.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.runtime.Composable
import androidx.compose.runtime.remember
@@ -9,9 +9,9 @@ import androidx.compose.ui.window.Window
import androidx.compose.ui.window.WindowState
import androidx.compose.ui.window.rememberWindowState
import com.jetbrains.JBR
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
-import io.github.kdroidfilter.nucleus.window.internal.InstallMinimumSizeAfterCentering
-import io.github.kdroidfilter.nucleus.window.internal.inflateToMinimumSize
+import dev.nucleusframework.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.window.internal.InstallMinimumSizeAfterCentering
+import dev.nucleusframework.nucleus.window.internal.inflateToMinimumSize
@Suppress("FunctionNaming", "LongParameterList")
@Composable
diff --git a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.Linux.kt b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.Linux.kt
similarity index 91%
rename from decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.Linux.kt
rename to decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.Linux.kt
index 25bd1b619..5d5f76f46 100644
--- a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.Linux.kt
+++ b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.Linux.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.runtime.Composable
@@ -11,8 +11,8 @@ import androidx.compose.ui.input.pointer.PointerEventType
import androidx.compose.ui.input.pointer.onPointerEvent
import androidx.compose.ui.unit.dp
import com.jetbrains.JBR
-import io.github.kdroidfilter.nucleus.core.runtime.LinuxDesktopEnvironment
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.core.runtime.LinuxDesktopEnvironment
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
import java.awt.event.MouseEvent
@OptIn(ExperimentalComposeUiApi::class)
diff --git a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.MacOS.kt b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.MacOS.kt
similarity index 85%
rename from decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.MacOS.kt
rename to decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.MacOS.kt
index af774831d..eb43c4fe8 100644
--- a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.MacOS.kt
+++ b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.MacOS.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.runtime.Composable
@@ -8,9 +8,9 @@ import androidx.compose.ui.graphics.Color
import androidx.compose.ui.unit.LayoutDirection
import androidx.compose.ui.unit.dp
import com.jetbrains.JBR
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
-import io.github.kdroidfilter.nucleus.window.utils.WindowMouseEventEffect
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.utils.WindowMouseEventEffect
@Suppress("FunctionNaming")
@Composable
diff --git a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.Windows.kt b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.Windows.kt
similarity index 85%
rename from decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.Windows.kt
rename to decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.Windows.kt
index 47624ae84..bd3d503bc 100644
--- a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.Windows.kt
+++ b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.Windows.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.Spacer
@@ -10,10 +10,10 @@ import androidx.compose.ui.graphics.Color
import androidx.compose.ui.unit.LayoutDirection
import androidx.compose.ui.unit.dp
import com.jetbrains.JBR
-import io.github.kdroidfilter.nucleus.window.internal.isDark
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
-import io.github.kdroidfilter.nucleus.window.utils.WindowMouseEventEffect
+import dev.nucleusframework.nucleus.window.internal.isDark
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.utils.WindowMouseEventEffect
@Suppress("FunctionNaming")
@Composable
diff --git a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.kt b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.kt
similarity index 87%
rename from decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.kt
rename to decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.kt
index df254e6b8..3452c9d92 100644
--- a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.kt
+++ b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.runtime.Composable
import androidx.compose.runtime.CompositionLocalProvider
@@ -6,9 +6,9 @@ import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.remember
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
@Suppress("FunctionNaming")
@Composable
diff --git a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.Linux.kt b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.Linux.kt
similarity index 95%
rename from decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.Linux.kt
rename to decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.Linux.kt
index 664b0e0da..fa0d01d17 100644
--- a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.Linux.kt
+++ b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.Linux.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.runtime.Composable
import androidx.compose.ui.ExperimentalComposeUiApi
@@ -10,7 +10,7 @@ import androidx.compose.ui.input.pointer.PointerEventType
import androidx.compose.ui.input.pointer.onPointerEvent
import androidx.compose.ui.platform.LocalViewConfiguration
import com.jetbrains.JBR
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
import java.awt.Frame
import java.awt.event.MouseEvent
diff --git a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.MacOS.kt b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.MacOS.kt
similarity index 88%
rename from decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.MacOS.kt
rename to decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.MacOS.kt
index 77594e758..f59ae257b 100644
--- a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.MacOS.kt
+++ b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.MacOS.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.runtime.Composable
@@ -9,10 +9,10 @@ import androidx.compose.ui.graphics.toArgb
import androidx.compose.ui.unit.LayoutDirection
import androidx.compose.ui.unit.dp
import com.jetbrains.JBR
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
-import io.github.kdroidfilter.nucleus.window.utils.WindowMouseEventEffect
-import io.github.kdroidfilter.nucleus.window.utils.macos.MacUtil
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.utils.WindowMouseEventEffect
+import dev.nucleusframework.nucleus.window.utils.macos.MacUtil
@Suppress("FunctionNaming")
@Composable
diff --git a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.Windows.kt b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.Windows.kt
similarity index 85%
rename from decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.Windows.kt
rename to decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.Windows.kt
index df693338c..a54c82d00 100644
--- a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.Windows.kt
+++ b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.Windows.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.Spacer
@@ -10,10 +10,10 @@ import androidx.compose.ui.graphics.Color
import androidx.compose.ui.unit.LayoutDirection
import androidx.compose.ui.unit.dp
import com.jetbrains.JBR
-import io.github.kdroidfilter.nucleus.window.internal.isDark
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
-import io.github.kdroidfilter.nucleus.window.utils.WindowMouseEventEffect
+import dev.nucleusframework.nucleus.window.internal.isDark
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.utils.WindowMouseEventEffect
@Suppress("FunctionNaming")
@Composable
diff --git a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.kt b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.kt
similarity index 88%
rename from decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.kt
rename to decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.kt
index de43d200a..97e352db6 100644
--- a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.kt
+++ b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
/**
* Platform-aware title bar for [DecoratedWindow].
diff --git a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/ClientRegionHelper.kt b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/ClientRegionHelper.kt
similarity index 94%
rename from decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/ClientRegionHelper.kt
rename to decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/ClientRegionHelper.kt
index 4a4665c59..b1b679637 100644
--- a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/ClientRegionHelper.kt
+++ b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/ClientRegionHelper.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.utils
+package dev.nucleusframework.nucleus.window.utils
import androidx.compose.runtime.Composable
import androidx.compose.runtime.DisposableEffect
@@ -14,10 +14,10 @@ import androidx.compose.ui.node.currentValueOf
import androidx.compose.ui.platform.InspectorInfo
import androidx.compose.ui.unit.toSize
import com.jetbrains.WindowDecorations
-import io.github.kdroidfilter.nucleus.window.AwtDecoratedDialogScope
-import io.github.kdroidfilter.nucleus.window.AwtDecoratedWindowScope
-import io.github.kdroidfilter.nucleus.window.LocalTitleBarInfo
-import io.github.kdroidfilter.nucleus.window.TitleBarInfo
+import dev.nucleusframework.nucleus.window.AwtDecoratedDialogScope
+import dev.nucleusframework.nucleus.window.AwtDecoratedWindowScope
+import dev.nucleusframework.nucleus.window.LocalTitleBarInfo
+import dev.nucleusframework.nucleus.window.TitleBarInfo
import java.awt.Window
import java.awt.event.MouseAdapter
import java.awt.event.MouseEvent
diff --git a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/macos/MacUtil.kt b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/macos/MacUtil.kt
similarity index 97%
rename from decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/macos/MacUtil.kt
rename to decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/macos/MacUtil.kt
index f8e112a94..8af6ae75c 100644
--- a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/macos/MacUtil.kt
+++ b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/macos/MacUtil.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.utils.macos
+package dev.nucleusframework.nucleus.window.utils.macos
import java.awt.Component
import java.awt.Window
diff --git a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/macos/NativeMacBridge.kt b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/macos/NativeMacBridge.kt
similarity index 74%
rename from decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/macos/NativeMacBridge.kt
rename to decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/macos/NativeMacBridge.kt
index 41f5b06ba..e9a4283a7 100644
--- a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/macos/NativeMacBridge.kt
+++ b/decorated-window-jbr/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/macos/NativeMacBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.utils.macos
+package dev.nucleusframework.nucleus.window.utils.macos
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
private const val LIBRARY_NAME = "nucleus_macos"
diff --git a/decorated-window-jbr/src/main/native/macos/NucleusMacBridge.m b/decorated-window-jbr/src/main/native/macos/NucleusMacBridge.m
index fece2ef6b..2a6962544 100644
--- a/decorated-window-jbr/src/main/native/macos/NucleusMacBridge.m
+++ b/decorated-window-jbr/src/main/native/macos/NucleusMacBridge.m
@@ -2,7 +2,7 @@
#include
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_macos_NativeMacBridge_nativeUpdateColors(
+Java_dev_nucleusframework_nucleus_window_utils_macos_NativeMacBridge_nativeUpdateColors(
JNIEnv *env, jclass clazz, jlong nsWindowPtr) {
if (nsWindowPtr == 0) return;
NSWindow *window = (__bridge NSWindow *)(void *)nsWindowPtr;
@@ -17,7 +17,7 @@
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_macos_NativeMacBridge_nativeUpdateFullScreenButtons(
+Java_dev_nucleusframework_nucleus_window_utils_macos_NativeMacBridge_nativeUpdateFullScreenButtons(
JNIEnv *env, jclass clazz, jlong nsWindowPtr) {
if (nsWindowPtr == 0) return;
NSWindow *window = (__bridge NSWindow *)(void *)nsWindowPtr;
diff --git a/decorated-window-jewel/build.gradle.kts b/decorated-window-jewel/build.gradle.kts
index 76f7f6795..fe9ba0b0d 100644
--- a/decorated-window-jewel/build.gradle.kts
+++ b/decorated-window-jewel/build.gradle.kts
@@ -38,12 +38,12 @@ kotlin {
}
mavenPublishing {
- coordinates("io.github.kdroidfilter", "nucleus.decorated-window-jewel", publishVersion)
+ coordinates("dev.nucleusframework", "nucleus.decorated-window-jewel", publishVersion)
pom {
name.set("Nucleus Jewel Decorated Window")
description.set("Jewel (IntelliJ theme) integration for Nucleus Decorated Window")
- url.set("https://github.com/kdroidFilter/Nucleus")
+ url.set("https://github.com/nucleusframework/Nucleus")
licenses {
license {
@@ -54,16 +54,16 @@ mavenPublishing {
developers {
developer {
- id.set("kdroidfilter")
- name.set("kdroidFilter")
- url.set("https://github.com/kdroidFilter")
+ id.set("nucleusframework")
+ name.set("nucleusframework")
+ url.set("https://github.com/nucleusframework")
}
}
scm {
- url.set("https://github.com/kdroidFilter/Nucleus")
- connection.set("scm:git:git://github.com/kdroidFilter/Nucleus.git")
- developerConnection.set("scm:git:ssh://git@github.com/kdroidFilter/Nucleus.git")
+ url.set("https://github.com/nucleusframework/Nucleus")
+ connection.set("scm:git:git://github.com/nucleusframework/Nucleus.git")
+ developerConnection.set("scm:git:ssh://git@github.com/nucleusframework/Nucleus.git")
}
}
diff --git a/decorated-window-jewel/src/main/kotlin/io/github/kdroidfilter/nucleus/window/jewel/JewelColorMapping.kt b/decorated-window-jewel/src/main/kotlin/dev/nucleusframework/nucleus/window/jewel/JewelColorMapping.kt
similarity index 76%
rename from decorated-window-jewel/src/main/kotlin/io/github/kdroidfilter/nucleus/window/jewel/JewelColorMapping.kt
rename to decorated-window-jewel/src/main/kotlin/dev/nucleusframework/nucleus/window/jewel/JewelColorMapping.kt
index f7ba8458d..c5e9a384c 100644
--- a/decorated-window-jewel/src/main/kotlin/io/github/kdroidfilter/nucleus/window/jewel/JewelColorMapping.kt
+++ b/decorated-window-jewel/src/main/kotlin/dev/nucleusframework/nucleus/window/jewel/JewelColorMapping.kt
@@ -1,17 +1,17 @@
-package io.github.kdroidfilter.nucleus.window.jewel
+package dev.nucleusframework.nucleus.window.jewel
import androidx.compose.runtime.Composable
import androidx.compose.runtime.remember
import androidx.compose.ui.unit.DpSize
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.core.runtime.LinuxDesktopEnvironment
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
-import io.github.kdroidfilter.nucleus.window.styling.DecoratedWindowColors
-import io.github.kdroidfilter.nucleus.window.styling.DecoratedWindowMetrics
-import io.github.kdroidfilter.nucleus.window.styling.DecoratedWindowStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarColors
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarMetrics
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.core.runtime.LinuxDesktopEnvironment
+import dev.nucleusframework.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.window.styling.DecoratedWindowColors
+import dev.nucleusframework.nucleus.window.styling.DecoratedWindowMetrics
+import dev.nucleusframework.nucleus.window.styling.DecoratedWindowStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarColors
+import dev.nucleusframework.nucleus.window.styling.TitleBarMetrics
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
import org.jetbrains.jewel.foundation.theme.JewelTheme
private const val INACTIVE_BORDER_ALPHA = 0.5f
diff --git a/decorated-window-jewel/src/main/kotlin/io/github/kdroidfilter/nucleus/window/jewel/JewelDecoratedDialog.kt b/decorated-window-jewel/src/main/kotlin/dev/nucleusframework/nucleus/window/jewel/JewelDecoratedDialog.kt
similarity index 85%
rename from decorated-window-jewel/src/main/kotlin/io/github/kdroidfilter/nucleus/window/jewel/JewelDecoratedDialog.kt
rename to decorated-window-jewel/src/main/kotlin/dev/nucleusframework/nucleus/window/jewel/JewelDecoratedDialog.kt
index 704746be7..ad4e53f1a 100644
--- a/decorated-window-jewel/src/main/kotlin/io/github/kdroidfilter/nucleus/window/jewel/JewelDecoratedDialog.kt
+++ b/decorated-window-jewel/src/main/kotlin/dev/nucleusframework/nucleus/window/jewel/JewelDecoratedDialog.kt
@@ -1,13 +1,13 @@
-package io.github.kdroidfilter.nucleus.window.jewel
+package dev.nucleusframework.nucleus.window.jewel
import androidx.compose.runtime.Composable
import androidx.compose.ui.graphics.painter.Painter
import androidx.compose.ui.input.key.KeyEvent
import androidx.compose.ui.window.DialogState
import androidx.compose.ui.window.rememberDialogState
-import io.github.kdroidfilter.nucleus.window.DecoratedDialog
-import io.github.kdroidfilter.nucleus.window.DecoratedDialogScope
-import io.github.kdroidfilter.nucleus.window.NucleusDecoratedWindowTheme
+import dev.nucleusframework.nucleus.window.DecoratedDialog
+import dev.nucleusframework.nucleus.window.DecoratedDialogScope
+import dev.nucleusframework.nucleus.window.NucleusDecoratedWindowTheme
import org.jetbrains.jewel.foundation.theme.JewelTheme
@Suppress("FunctionNaming", "LongParameterList")
diff --git a/decorated-window-jewel/src/main/kotlin/io/github/kdroidfilter/nucleus/window/jewel/JewelDecoratedWindow.kt b/decorated-window-jewel/src/main/kotlin/dev/nucleusframework/nucleus/window/jewel/JewelDecoratedWindow.kt
similarity index 87%
rename from decorated-window-jewel/src/main/kotlin/io/github/kdroidfilter/nucleus/window/jewel/JewelDecoratedWindow.kt
rename to decorated-window-jewel/src/main/kotlin/dev/nucleusframework/nucleus/window/jewel/JewelDecoratedWindow.kt
index f5e2fc96f..102880a46 100644
--- a/decorated-window-jewel/src/main/kotlin/io/github/kdroidfilter/nucleus/window/jewel/JewelDecoratedWindow.kt
+++ b/decorated-window-jewel/src/main/kotlin/dev/nucleusframework/nucleus/window/jewel/JewelDecoratedWindow.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.jewel
+package dev.nucleusframework.nucleus.window.jewel
import androidx.compose.runtime.Composable
import androidx.compose.ui.graphics.luminance
@@ -8,14 +8,14 @@ import androidx.compose.ui.unit.DpSize
import androidx.compose.ui.window.ApplicationScope
import androidx.compose.ui.window.WindowState
import androidx.compose.ui.window.rememberWindowState
-import io.github.kdroidfilter.nucleus.application.NucleusApplicationScope
-import io.github.kdroidfilter.nucleus.application.NucleusDecoratedWindowScope
-import io.github.kdroidfilter.nucleus.window.AwtDecoratedWindowScope
-import io.github.kdroidfilter.nucleus.window.DecoratedWindow
-import io.github.kdroidfilter.nucleus.window.NucleusDecoratedWindowTheme
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.application.NucleusApplicationScope
+import dev.nucleusframework.nucleus.application.NucleusDecoratedWindowScope
+import dev.nucleusframework.nucleus.window.AwtDecoratedWindowScope
+import dev.nucleusframework.nucleus.window.DecoratedWindow
+import dev.nucleusframework.nucleus.window.NucleusDecoratedWindowTheme
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
import org.jetbrains.jewel.foundation.theme.JewelTheme
-import io.github.kdroidfilter.nucleus.application.DecoratedWindow as NucleusDecoratedWindowFn
+import dev.nucleusframework.nucleus.application.DecoratedWindow as NucleusDecoratedWindowFn
private const val LUMINANCE_THRESHOLD = 0.5f
diff --git a/decorated-window-jewel/src/main/kotlin/io/github/kdroidfilter/nucleus/window/jewel/JewelDialogTitleBar.kt b/decorated-window-jewel/src/main/kotlin/dev/nucleusframework/nucleus/window/jewel/JewelDialogTitleBar.kt
similarity index 65%
rename from decorated-window-jewel/src/main/kotlin/io/github/kdroidfilter/nucleus/window/jewel/JewelDialogTitleBar.kt
rename to decorated-window-jewel/src/main/kotlin/dev/nucleusframework/nucleus/window/jewel/JewelDialogTitleBar.kt
index 61c52f4da..6af3781a1 100644
--- a/decorated-window-jewel/src/main/kotlin/io/github/kdroidfilter/nucleus/window/jewel/JewelDialogTitleBar.kt
+++ b/decorated-window-jewel/src/main/kotlin/dev/nucleusframework/nucleus/window/jewel/JewelDialogTitleBar.kt
@@ -1,16 +1,16 @@
-package io.github.kdroidfilter.nucleus.window.jewel
+package dev.nucleusframework.nucleus.window.jewel
import androidx.compose.runtime.Composable
import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
-import io.github.kdroidfilter.nucleus.window.ControlButtonsDirection
-import io.github.kdroidfilter.nucleus.window.DecoratedDialogScope
-import io.github.kdroidfilter.nucleus.window.DecoratedDialogState
-import io.github.kdroidfilter.nucleus.window.DialogTitleBar
-import io.github.kdroidfilter.nucleus.window.TitleBarScope
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.ControlButtonsDirection
+import dev.nucleusframework.nucleus.window.DecoratedDialogScope
+import dev.nucleusframework.nucleus.window.DecoratedDialogState
+import dev.nucleusframework.nucleus.window.DialogTitleBar
+import dev.nucleusframework.nucleus.window.TitleBarScope
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
import org.jetbrains.jewel.foundation.theme.LocalContentColor
@Suppress("FunctionNaming")
diff --git a/decorated-window-jewel/src/main/kotlin/io/github/kdroidfilter/nucleus/window/jewel/JewelTitleBar.kt b/decorated-window-jewel/src/main/kotlin/dev/nucleusframework/nucleus/window/jewel/JewelTitleBar.kt
similarity index 67%
rename from decorated-window-jewel/src/main/kotlin/io/github/kdroidfilter/nucleus/window/jewel/JewelTitleBar.kt
rename to decorated-window-jewel/src/main/kotlin/dev/nucleusframework/nucleus/window/jewel/JewelTitleBar.kt
index 1004fb60d..155fd8313 100644
--- a/decorated-window-jewel/src/main/kotlin/io/github/kdroidfilter/nucleus/window/jewel/JewelTitleBar.kt
+++ b/decorated-window-jewel/src/main/kotlin/dev/nucleusframework/nucleus/window/jewel/JewelTitleBar.kt
@@ -1,16 +1,16 @@
-package io.github.kdroidfilter.nucleus.window.jewel
+package dev.nucleusframework.nucleus.window.jewel
import androidx.compose.runtime.Composable
import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
-import io.github.kdroidfilter.nucleus.window.ControlButtonsDirection
-import io.github.kdroidfilter.nucleus.window.DecoratedWindowScope
-import io.github.kdroidfilter.nucleus.window.DecoratedWindowState
-import io.github.kdroidfilter.nucleus.window.TitleBar
-import io.github.kdroidfilter.nucleus.window.TitleBarScope
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.ControlButtonsDirection
+import dev.nucleusframework.nucleus.window.DecoratedWindowScope
+import dev.nucleusframework.nucleus.window.DecoratedWindowState
+import dev.nucleusframework.nucleus.window.TitleBar
+import dev.nucleusframework.nucleus.window.TitleBarScope
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
import org.jetbrains.jewel.foundation.theme.LocalContentColor
@Suppress("FunctionNaming")
diff --git a/decorated-window-jni/build.gradle.kts b/decorated-window-jni/build.gradle.kts
index eb3c45be6..f7455b444 100644
--- a/decorated-window-jni/build.gradle.kts
+++ b/decorated-window-jni/build.gradle.kts
@@ -83,12 +83,12 @@ tasks.configureEach {
}
mavenPublishing {
- coordinates("io.github.kdroidfilter", "nucleus.decorated-window-jni", publishVersion)
+ coordinates("dev.nucleusframework", "nucleus.decorated-window-jni", publishVersion)
pom {
name.set("Nucleus Decorated Window JNI")
description.set("JBR-free custom decorated window with native title bar for Compose Desktop (via JNI)")
- url.set("https://github.com/kdroidFilter/Nucleus")
+ url.set("https://github.com/nucleusframework/Nucleus")
licenses {
license {
@@ -99,16 +99,16 @@ mavenPublishing {
developers {
developer {
- id.set("kdroidfilter")
- name.set("kdroidFilter")
- url.set("https://github.com/kdroidFilter")
+ id.set("nucleusframework")
+ name.set("nucleusframework")
+ url.set("https://github.com/nucleusframework")
}
}
scm {
- url.set("https://github.com/kdroidFilter/Nucleus")
- connection.set("scm:git:git://github.com/kdroidFilter/Nucleus.git")
- developerConnection.set("scm:git:ssh://git@github.com/kdroidFilter/Nucleus.git")
+ url.set("https://github.com/nucleusframework/Nucleus")
+ connection.set("scm:git:git://github.com/nucleusframework/Nucleus.git")
+ developerConnection.set("scm:git:ssh://git@github.com/nucleusframework/Nucleus.git")
}
}
diff --git a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedDialog.kt b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedDialog.kt
similarity index 95%
rename from decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedDialog.kt
rename to decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedDialog.kt
index ef744bbf9..220811b0e 100644
--- a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedDialog.kt
+++ b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedDialog.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.runtime.Composable
import androidx.compose.runtime.remember
@@ -9,7 +9,7 @@ import androidx.compose.ui.window.DialogState
import androidx.compose.ui.window.DialogWindow
import androidx.compose.ui.window.WindowPosition
import androidx.compose.ui.window.rememberDialogState
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.core.runtime.Platform
@Suppress("FunctionNaming", "LongParameterList")
@Composable
diff --git a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedWindow.kt b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedWindow.kt
similarity index 97%
rename from decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedWindow.kt
rename to decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedWindow.kt
index 1676af809..543791332 100644
--- a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DecoratedWindow.kt
+++ b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/DecoratedWindow.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.animation.core.animateDpAsState
import androidx.compose.animation.core.tween
@@ -33,12 +33,12 @@ import androidx.compose.ui.window.WindowPlacement
import androidx.compose.ui.window.WindowPosition
import androidx.compose.ui.window.WindowState
import androidx.compose.ui.window.rememberWindowState
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
-import io.github.kdroidfilter.nucleus.window.internal.InstallMinimumSizeAfterCentering
-import io.github.kdroidfilter.nucleus.window.internal.inflateToMinimumSize
-import io.github.kdroidfilter.nucleus.window.utils.linux.JniLinuxWindowBridge
-import io.github.kdroidfilter.nucleus.window.utils.windows.JniWindowsDecorationBridge
-import io.github.kdroidfilter.nucleus.window.utils.windows.JniWindowsWindowUtil
+import dev.nucleusframework.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.window.internal.InstallMinimumSizeAfterCentering
+import dev.nucleusframework.nucleus.window.internal.inflateToMinimumSize
+import dev.nucleusframework.nucleus.window.utils.linux.JniLinuxWindowBridge
+import dev.nucleusframework.nucleus.window.utils.windows.JniWindowsDecorationBridge
+import dev.nucleusframework.nucleus.window.utils.windows.JniWindowsWindowUtil
import java.awt.Frame
import java.awt.GraphicsEnvironment
import java.awt.Toolkit
diff --git a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.Linux.kt b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.Linux.kt
similarity index 95%
rename from decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.Linux.kt
rename to decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.Linux.kt
index ab5c86f2c..51effb80c 100644
--- a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.Linux.kt
+++ b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.Linux.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.Spacer
@@ -12,9 +12,9 @@ import androidx.compose.ui.input.pointer.PointerEventPass
import androidx.compose.ui.input.pointer.PointerEventType
import androidx.compose.ui.input.pointer.onPointerEvent
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.core.runtime.LinuxDesktopEnvironment
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
-import io.github.kdroidfilter.nucleus.window.utils.linux.JniLinuxWindowBridge
+import dev.nucleusframework.nucleus.core.runtime.LinuxDesktopEnvironment
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.utils.linux.JniLinuxWindowBridge
import java.awt.MouseInfo
@OptIn(ExperimentalComposeUiApi::class)
diff --git a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.MacOS.kt b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.MacOS.kt
similarity index 85%
rename from decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.MacOS.kt
rename to decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.MacOS.kt
index 480dc7244..213c46fc2 100644
--- a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.MacOS.kt
+++ b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.MacOS.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.Spacer
@@ -8,10 +8,10 @@ import androidx.compose.runtime.DisposableEffect
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
-import io.github.kdroidfilter.nucleus.window.utils.macos.JniMacTitleBarBridge
-import io.github.kdroidfilter.nucleus.window.utils.macos.JniMacWindowUtil
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.utils.macos.JniMacTitleBarBridge
+import dev.nucleusframework.nucleus.window.utils.macos.JniMacWindowUtil
@Suppress("FunctionNaming")
@Composable
diff --git a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.Windows.kt b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.Windows.kt
similarity index 85%
rename from decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.Windows.kt
rename to decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.Windows.kt
index a15078c23..e95d40c49 100644
--- a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.Windows.kt
+++ b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.Windows.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.Spacer
@@ -10,10 +10,10 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.toArgb
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
-import io.github.kdroidfilter.nucleus.window.utils.windows.JniWindowsDecorationBridge
-import io.github.kdroidfilter.nucleus.window.utils.windows.JniWindowsWindowUtil
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.utils.windows.JniWindowsDecorationBridge
+import dev.nucleusframework.nucleus.window.utils.windows.JniWindowsWindowUtil
@Suppress("FunctionNaming")
@Composable
diff --git a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.kt b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.kt
similarity index 87%
rename from decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.kt
rename to decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.kt
index df254e6b8..3452c9d92 100644
--- a/decorated-window-jbr/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.kt
+++ b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.runtime.Composable
import androidx.compose.runtime.CompositionLocalProvider
@@ -6,9 +6,9 @@ import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.remember
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
@Suppress("FunctionNaming")
@Composable
diff --git a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.Linux.kt b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.Linux.kt
similarity index 97%
rename from decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.Linux.kt
rename to decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.Linux.kt
index c089a1197..a5c15f489 100644
--- a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.Linux.kt
+++ b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.Linux.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.Spacer
@@ -14,8 +14,8 @@ import androidx.compose.ui.input.pointer.PointerEventType
import androidx.compose.ui.input.pointer.onPointerEvent
import androidx.compose.ui.platform.LocalViewConfiguration
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
-import io.github.kdroidfilter.nucleus.window.utils.linux.JniLinuxWindowBridge
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.utils.linux.JniLinuxWindowBridge
import java.awt.Frame
import java.awt.MouseInfo
diff --git a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.MacOS.kt b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.MacOS.kt
similarity index 97%
rename from decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.MacOS.kt
rename to decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.MacOS.kt
index b911a1a81..bc2a7968b 100644
--- a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.MacOS.kt
+++ b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.MacOS.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.animation.core.animateDpAsState
import androidx.compose.animation.core.tween
@@ -24,10 +24,10 @@ import androidx.compose.ui.platform.LocalViewConfiguration
import androidx.compose.ui.unit.LayoutDirection
import androidx.compose.ui.unit.dp
import androidx.compose.ui.zIndex
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
-import io.github.kdroidfilter.nucleus.window.utils.macos.JniMacTitleBarBridge
-import io.github.kdroidfilter.nucleus.window.utils.macos.JniMacWindowUtil
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.utils.macos.JniMacTitleBarBridge
+import dev.nucleusframework.nucleus.window.utils.macos.JniMacWindowUtil
import kotlinx.coroutines.isActive
import kotlin.coroutines.coroutineContext
diff --git a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.Windows.kt b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.Windows.kt
similarity index 96%
rename from decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.Windows.kt
rename to decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.Windows.kt
index 8986f480f..be4afea63 100644
--- a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.Windows.kt
+++ b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.Windows.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.Spacer
@@ -18,10 +18,10 @@ import androidx.compose.ui.input.pointer.onPointerEvent
import androidx.compose.ui.platform.LocalDensity
import androidx.compose.ui.platform.LocalViewConfiguration
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
-import io.github.kdroidfilter.nucleus.window.utils.windows.JniWindowsDecorationBridge
-import io.github.kdroidfilter.nucleus.window.utils.windows.JniWindowsWindowUtil
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.utils.windows.JniWindowsDecorationBridge
+import dev.nucleusframework.nucleus.window.utils.windows.JniWindowsWindowUtil
import java.awt.Frame
@OptIn(ExperimentalComposeUiApi::class)
diff --git a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.kt b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.kt
similarity index 90%
rename from decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.kt
rename to decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.kt
index 28b0eeffe..49c8a74f0 100644
--- a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.kt
+++ b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.kt
@@ -1,11 +1,11 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
/**
* Platform-aware title bar for [DecoratedWindow].
diff --git a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/linux/JniLinuxWindowBridge.kt b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/linux/JniLinuxWindowBridge.kt
similarity index 89%
rename from decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/linux/JniLinuxWindowBridge.kt
rename to decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/linux/JniLinuxWindowBridge.kt
index 7b9c32cdf..2ecba9e57 100644
--- a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/linux/JniLinuxWindowBridge.kt
+++ b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/linux/JniLinuxWindowBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.utils.linux
+package dev.nucleusframework.nucleus.window.utils.linux
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
private const val LIBRARY_NAME = "nucleus_linux_jni"
diff --git a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/macos/JniMacTitleBarBridge.kt b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/macos/JniMacTitleBarBridge.kt
similarity index 97%
rename from decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/macos/JniMacTitleBarBridge.kt
rename to decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/macos/JniMacTitleBarBridge.kt
index 06007c331..12142bd25 100644
--- a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/macos/JniMacTitleBarBridge.kt
+++ b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/macos/JniMacTitleBarBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.utils.macos
+package dev.nucleusframework.nucleus.window.utils.macos
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow
import java.util.concurrent.ConcurrentHashMap
diff --git a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/macos/JniMacWindowUtil.kt b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/macos/JniMacWindowUtil.kt
similarity index 98%
rename from decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/macos/JniMacWindowUtil.kt
rename to decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/macos/JniMacWindowUtil.kt
index 09e9b730d..800fbbc7f 100644
--- a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/macos/JniMacWindowUtil.kt
+++ b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/macos/JniMacWindowUtil.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.utils.macos
+package dev.nucleusframework.nucleus.window.utils.macos
import java.awt.Component
import java.awt.Window
diff --git a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/windows/JniWindowsDecorationBridge.kt b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/windows/JniWindowsDecorationBridge.kt
similarity index 96%
rename from decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/windows/JniWindowsDecorationBridge.kt
rename to decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/windows/JniWindowsDecorationBridge.kt
index 056c3ef7c..16b967158 100644
--- a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/windows/JniWindowsDecorationBridge.kt
+++ b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/windows/JniWindowsDecorationBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.utils.windows
+package dev.nucleusframework.nucleus.window.utils.windows
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
private const val LIBRARY_NAME = "nucleus_windows_decoration"
diff --git a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/windows/JniWindowsWindowUtil.kt b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/windows/JniWindowsWindowUtil.kt
similarity index 88%
rename from decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/windows/JniWindowsWindowUtil.kt
rename to decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/windows/JniWindowsWindowUtil.kt
index e00ed0799..aa66d7383 100644
--- a/decorated-window-jni/src/main/kotlin/io/github/kdroidfilter/nucleus/window/utils/windows/JniWindowsWindowUtil.kt
+++ b/decorated-window-jni/src/main/kotlin/dev/nucleusframework/nucleus/window/utils/windows/JniWindowsWindowUtil.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.utils.windows
+package dev.nucleusframework.nucleus.window.utils.windows
import java.awt.Window
diff --git a/decorated-window-jni/src/main/native/linux/nucleus_linux_window.c b/decorated-window-jni/src/main/native/linux/nucleus_linux_window.c
index 539bf6aeb..d7d0603c0 100644
--- a/decorated-window-jni/src/main/native/linux/nucleus_linux_window.c
+++ b/decorated-window-jni/src/main/native/linux/nucleus_linux_window.c
@@ -178,7 +178,7 @@ static void awtUnlock(JNIEnv *env) {
/* move. This gives us snap/tile support and native drag feel. */
/* ------------------------------------------------------------------ */
JNIEXPORT jboolean JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_linux_JniLinuxWindowBridge_nativeStartWindowMove(
+Java_dev_nucleusframework_nucleus_window_utils_linux_JniLinuxWindowBridge_nativeStartWindowMove(
JNIEnv *env, jclass clazz, jobject awtWindow, jint rootX, jint rootY, jint button)
{
Display *display = getAwtDisplay(env);
@@ -251,7 +251,7 @@ Java_io_github_kdroidfilter_nucleus_window_utils_linux_JniLinuxWindowBridge_nati
/* _NET_WM_STATE ClientMessage to the root window. */
/* ------------------------------------------------------------------ */
JNIEXPORT jboolean JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_linux_JniLinuxWindowBridge_nativeSetFullscreen(
+Java_dev_nucleusframework_nucleus_window_utils_linux_JniLinuxWindowBridge_nativeSetFullscreen(
JNIEnv *env, jclass clazz, jobject awtWindow, jboolean fullscreen)
{
Display *display = getAwtDisplay(env);
@@ -294,7 +294,7 @@ Java_io_github_kdroidfilter_nucleus_window_utils_linux_JniLinuxWindowBridge_nati
/* Checks if _NET_WM_STATE_FULLSCREEN is set on the window. */
/* ------------------------------------------------------------------ */
JNIEXPORT jboolean JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_linux_JniLinuxWindowBridge_nativeIsFullscreen(
+Java_dev_nucleusframework_nucleus_window_utils_linux_JniLinuxWindowBridge_nativeIsFullscreen(
JNIEnv *env, jclass clazz, jobject awtWindow)
{
Display *display = getAwtDisplay(env);
@@ -342,7 +342,7 @@ Java_io_github_kdroidfilter_nucleus_window_utils_linux_JniLinuxWindowBridge_nati
/* Checks if the WM advertises _NET_WM_MOVERESIZE in _NET_SUPPORTED. */
/* ------------------------------------------------------------------ */
JNIEXPORT jboolean JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_linux_JniLinuxWindowBridge_nativeIsWmMoveResizeSupported(
+Java_dev_nucleusframework_nucleus_window_utils_linux_JniLinuxWindowBridge_nativeIsWmMoveResizeSupported(
JNIEnv *env, jclass clazz, jobject awtWindow)
{
Display *display = getAwtDisplay(env);
diff --git a/decorated-window-jni/src/main/native/macos/JniMacTitleBar.m b/decorated-window-jni/src/main/native/macos/JniMacTitleBar.m
index 83f28039a..70d05999f 100644
--- a/decorated-window-jni/src/main/native/macos/JniMacTitleBar.m
+++ b/decorated-window-jni/src/main/native/macos/JniMacTitleBar.m
@@ -67,7 +67,7 @@ static void ensureJVMCached(JNIEnv *env) {
dispatch_once(&onceToken, ^{
(*env)->GetJavaVM(env, &sJVM);
jclass local = (*env)->FindClass(env,
- "io/github/kdroidfilter/nucleus/window/utils/macos/JniMacTitleBarBridge");
+ "dev/nucleusframework/nucleus/window/utils/macos/JniMacTitleBarBridge");
if (local) {
sBridgeClass = (*env)->NewGlobalRef(env, local);
(*env)->DeleteLocalRef(env, local);
@@ -1021,13 +1021,13 @@ static jlong getNSWindowPtrFromAWTWindow(JNIEnv *env, jobject awtWindow) {
// ─── JNI exports ────────────────────────────────────────────────────────────────
JNIEXPORT jlong JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeGetNSWindowPtr(
+Java_dev_nucleusframework_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeGetNSWindowPtr(
JNIEnv *env, jclass clazz, jobject awtWindow) {
return getNSWindowPtrFromAWTWindow(env, awtWindow);
}
JNIEXPORT jfloat JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeApplyTitleBar(
+Java_dev_nucleusframework_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeApplyTitleBar(
JNIEnv *env, jclass clazz, jlong nsWindowPtr, jfloat heightPt) {
if (nsWindowPtr == 0) return 0.0f;
@@ -1086,7 +1086,7 @@ static jlong getNSWindowPtrFromAWTWindow(JNIEnv *env, jobject awtWindow) {
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeResetTitleBar(
+Java_dev_nucleusframework_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeResetTitleBar(
JNIEnv *env, jclass clazz, jlong nsWindowPtr) {
if (nsWindowPtr == 0) return;
@@ -1131,7 +1131,7 @@ static jlong getNSWindowPtrFromAWTWindow(JNIEnv *env, jobject awtWindow) {
// Called from Kotlin on each layout pass during fullscreen to keep
// the replacement buttons positioned correctly.
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeUpdateFullScreenButtons(
+Java_dev_nucleusframework_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeUpdateFullScreenButtons(
JNIEnv *env, jclass clazz, jlong nsWindowPtr) {
if (nsWindowPtr == 0) return;
@@ -1153,7 +1153,7 @@ static jlong getNSWindowPtrFromAWTWindow(JNIEnv *env, jobject awtWindow) {
// respecting the user's system preference (AppleActionOnDoubleClick).
// Called from Compose when an unconsumed double-click is detected.
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_macos_JniMacTitleBarBridge_nativePerformTitleBarDoubleClickAction(
+Java_dev_nucleusframework_nucleus_window_utils_macos_JniMacTitleBarBridge_nativePerformTitleBarDoubleClickAction(
JNIEnv *env, jclass clazz, jlong nsWindowPtr) {
if (nsWindowPtr == 0) return;
@@ -1181,7 +1181,7 @@ static jlong getNSWindowPtrFromAWTWindow(JNIEnv *env, jobject awtWindow) {
// Called from the EDT when Compose detects an unconsumed drag in the title bar.
// This mirrors JBR's forceHitTest(false) path where Compose decides the drag.
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeStartWindowDrag(
+Java_dev_nucleusframework_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeStartWindowDrag(
JNIEnv *env, jclass clazz, jlong nsWindowPtr) {
if (nsWindowPtr == 0) return;
@@ -1221,7 +1221,7 @@ static jlong getNSWindowPtrFromAWTWindow(JNIEnv *env, jobject awtWindow) {
// in fullscreen — mirroring Safari's fullscreen title bar behavior.
// Also installs/removes the menu bar event monitor if already in fullscreen.
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeSetNewFullscreenControls(
+Java_dev_nucleusframework_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeSetNewFullscreenControls(
JNIEnv *env, jclass clazz, jlong nsWindowPtr, jboolean enabled) {
if (nsWindowPtr == 0) return;
@@ -1253,7 +1253,7 @@ static jlong getNSWindowPtrFromAWTWindow(JNIEnv *env, jobject awtWindow) {
// Returns the last known menu bar offset in points.
// Reads the value stored by the native event monitor (thread-safe).
JNIEXPORT jfloat JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeGetMenuBarOffset(
+Java_dev_nucleusframework_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeGetMenuBarOffset(
JNIEnv *env, jclass clazz, jlong nsWindowPtr) {
if (nsWindowPtr == 0) return 0.0f;
@@ -1266,7 +1266,7 @@ static jlong getNSWindowPtrFromAWTWindow(JNIEnv *env, jobject awtWindow) {
// can position the traffic-light buttons at the same Y offset,
// keeping native buttons and Compose title bar perfectly in sync.
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeSetMenuBarOffset(
+Java_dev_nucleusframework_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeSetMenuBarOffset(
JNIEnv *env, jclass clazz, jlong nsWindowPtr, jfloat offsetPt) {
if (nsWindowPtr == 0) return;
@@ -1293,7 +1293,7 @@ static jlong getNSWindowPtrFromAWTWindow(JNIEnv *env, jobject awtWindow) {
// changes on every mouse event and notifies Kotlin via JNI callback.
// Event-driven: no timer, no polling.
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeInstallMenuBarMonitor(
+Java_dev_nucleusframework_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeInstallMenuBarMonitor(
JNIEnv *env, jclass clazz, jlong nsWindowPtr) {
if (nsWindowPtr == 0) return;
@@ -1314,7 +1314,7 @@ static jlong getNSWindowPtrFromAWTWindow(JNIEnv *env, jobject awtWindow) {
// Removes the native event monitor and clears the stored raw offset.
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeRemoveMenuBarMonitor(
+Java_dev_nucleusframework_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeRemoveMenuBarMonitor(
JNIEnv *env, jclass clazz, jlong nsWindowPtr) {
if (nsWindowPtr == 0) return;
@@ -1341,7 +1341,7 @@ static jlong getNSWindowPtrFromAWTWindow(JNIEnv *env, jobject awtWindow) {
// Also stores the preference so the fullscreen observer can manage the toolbar
// around fullscreen transitions (remove before enter, reinstall after).
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeSetLargeCornerRadius(
+Java_dev_nucleusframework_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeSetLargeCornerRadius(
JNIEnv *env, jclass clazz, jlong nsWindowPtr, jboolean enabled) {
if (nsWindowPtr == 0) return;
@@ -1398,7 +1398,7 @@ static jlong getNSWindowPtrFromAWTWindow(JNIEnv *env, jobject awtWindow) {
// starts tearing down, to prevent notifyMenuBarOffsetChanged from calling
// CallStaticVoidMethod on a half-destroyed JVM.
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeShutdown(
+Java_dev_nucleusframework_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeShutdown(
JNIEnv *env, jclass clazz) {
// Signal all pending dispatch_async blocks to bail out immediately.
@@ -1429,7 +1429,7 @@ static jlong getNSWindowPtrFromAWTWindow(JNIEnv *env, jobject awtWindow) {
// of the title bar, mirroring the layout for RTL locales (Hebrew, Arabic, etc.).
// Re-applies constraints immediately so the change is visible without delay.
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeSetRTL(
+Java_dev_nucleusframework_nucleus_window_utils_macos_JniMacTitleBarBridge_nativeSetRTL(
JNIEnv *env, jclass clazz, jlong nsWindowPtr, jboolean rtl) {
if (nsWindowPtr == 0) return;
diff --git a/decorated-window-jni/src/main/native/windows/nucleus_windows_decoration.c b/decorated-window-jni/src/main/native/windows/nucleus_windows_decoration.c
index 99aff0a6a..54c508af7 100644
--- a/decorated-window-jni/src/main/native/windows/nucleus_windows_decoration.c
+++ b/decorated-window-jni/src/main/native/windows/nucleus_windows_decoration.c
@@ -528,14 +528,14 @@ BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved) {
/* JNI exports */
/* ================================================================== */
-/* Package: io.github.kdroidfilter.nucleus.window.utils.windows */
+/* Package: dev.nucleusframework.nucleus.window.utils.windows */
/* Class: JniWindowsDecorationBridge */
/* -------------------------------------------------------------- */
/* nativeInstallDecoration(long hwnd, int titleBarHeightPx) */
/* -------------------------------------------------------------- */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeInstallDecoration(
+Java_dev_nucleusframework_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeInstallDecoration(
JNIEnv *env, jclass clazz, jlong hwndLong, jint titleBarHeightPx)
{
HWND hwnd = (HWND)(uintptr_t)hwndLong;
@@ -605,7 +605,7 @@ Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBri
/* nativeUninstallDecoration(long hwnd) */
/* -------------------------------------------------------------- */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeUninstallDecoration(
+Java_dev_nucleusframework_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeUninstallDecoration(
JNIEnv *env, jclass clazz, jlong hwndLong)
{
HWND hwnd = (HWND)(uintptr_t)hwndLong;
@@ -645,7 +645,7 @@ Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBri
/* nativeSetForceHitTestClient(long hwnd, boolean force) */
/* -------------------------------------------------------------- */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeSetForceHitTestClient(
+Java_dev_nucleusframework_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeSetForceHitTestClient(
JNIEnv *env, jclass clazz, jlong hwndLong, jboolean force)
{
HWND hwnd = (HWND)(uintptr_t)hwndLong;
@@ -661,7 +661,7 @@ Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBri
/* nativeSetTitleBarHeight(long hwnd, int heightPx) */
/* -------------------------------------------------------------- */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeSetTitleBarHeight(
+Java_dev_nucleusframework_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeSetTitleBarHeight(
JNIEnv *env, jclass clazz, jlong hwndLong, jint heightPx)
{
HWND hwnd = (HWND)(uintptr_t)hwndLong;
@@ -680,7 +680,7 @@ Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBri
/* title bar background. */
/* -------------------------------------------------------------- */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeStartDrag(
+Java_dev_nucleusframework_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeStartDrag(
JNIEnv *env, jclass clazz, jlong hwndLong)
{
HWND hwnd = (HWND)(uintptr_t)hwndLong;
@@ -702,7 +702,7 @@ Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBri
/* classes are accessible without --add-opens. */
/* -------------------------------------------------------------- */
JNIEXPORT jlong JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeGetHwnd(
+Java_dev_nucleusframework_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeGetHwnd(
JNIEnv *env, jclass clazz, jobject awtWindow)
{
if (!awtWindow) return 0;
@@ -830,7 +830,7 @@ static LRESULT CALLBACK dialogDecoWndProc(
/* Windows 11 22000+ only; silently ignored on older Windows. */
/* -------------------------------------------------------------- */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeApplyDialogStyle(
+Java_dev_nucleusframework_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeApplyDialogStyle(
JNIEnv *env, jclass clazz, jlong hwndLong)
{
HWND hwnd = (HWND)(uintptr_t)hwndLong;
@@ -869,7 +869,7 @@ Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBri
/* Exit: restores saved style/exstyle/placement. */
/* -------------------------------------------------------------- */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeSetFullscreen(
+Java_dev_nucleusframework_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeSetFullscreen(
JNIEnv *env, jclass clazz, jlong hwndLong, jboolean fullscreen)
{
HWND hwnd = (HWND)(uintptr_t)hwndLong;
@@ -982,7 +982,7 @@ Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBri
/* Returns true if the window is in native fullscreen mode. */
/* -------------------------------------------------------------- */
JNIEXPORT jboolean JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeIsFullscreen(
+Java_dev_nucleusframework_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeIsFullscreen(
JNIEnv *env, jclass clazz, jlong hwndLong)
{
HWND hwnd = (HWND)(uintptr_t)hwndLong;
@@ -1002,7 +1002,7 @@ Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBri
/* Windows 10 build 17763+. Silently ignored on older versions. */
/* -------------------------------------------------------------- */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeSetBackgroundColor(
+Java_dev_nucleusframework_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeSetBackgroundColor(
JNIEnv *env, jclass clazz, jlong hwndLong, jint argb)
{
HWND hwnd = (HWND)(uintptr_t)hwndLong;
@@ -1040,7 +1040,7 @@ Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBri
/* Returns debug counters as a string for diagnostics. */
/* -------------------------------------------------------------- */
JNIEXPORT jstring JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeGetDebugInfo(
+Java_dev_nucleusframework_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeGetDebugInfo(
JNIEnv *env, jclass clazz, jlong hwndLong)
{
HWND hwnd = (HWND)(uintptr_t)hwndLong;
@@ -1068,7 +1068,7 @@ Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBri
/* Pass (0, 0) to disable the override and fall back to AWT. */
/* -------------------------------------------------------------- */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeSetMinimumSize(
+Java_dev_nucleusframework_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeSetMinimumSize(
JNIEnv *env, jclass clazz, jlong hwndLong, jint widthPx, jint heightPx)
{
HWND hwnd = (HWND)(uintptr_t)hwndLong;
@@ -1088,7 +1088,7 @@ Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBri
/* Pass (0, 0) to disable the override and fall back to AWT. */
/* -------------------------------------------------------------- */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeSetMaximumSize(
+Java_dev_nucleusframework_nucleus_window_utils_windows_JniWindowsDecorationBridge_nativeSetMaximumSize(
JNIEnv *env, jclass clazz, jlong hwndLong, jint widthPx, jint heightPx)
{
HWND hwnd = (HWND)(uintptr_t)hwndLong;
diff --git a/decorated-window-jni/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.decorated-window-jni/reachability-metadata.json b/decorated-window-jni/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.decorated-window-jni/reachability-metadata.json
similarity index 82%
rename from decorated-window-jni/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.decorated-window-jni/reachability-metadata.json
rename to decorated-window-jni/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.decorated-window-jni/reachability-metadata.json
index 980b11074..8c6a07bc1 100644
--- a/decorated-window-jni/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.decorated-window-jni/reachability-metadata.json
+++ b/decorated-window-jni/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.decorated-window-jni/reachability-metadata.json
@@ -1,7 +1,7 @@
{
"reflection": [
{
- "type": "io.github.kdroidfilter.nucleus.window.utils.macos.JniMacTitleBarBridge",
+ "type": "dev.nucleusframework.nucleus.window.utils.macos.JniMacTitleBarBridge",
"jniAccessible": true,
"methods": [
{
@@ -14,7 +14,7 @@
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.utils.windows.JniWindowsDecorationBridge",
+ "type": "dev.nucleusframework.nucleus.window.utils.windows.JniWindowsDecorationBridge",
"jniAccessible": true,
"methods": [
{
diff --git a/decorated-window-material2/build.gradle.kts b/decorated-window-material2/build.gradle.kts
index 8270205db..87d12dc60 100644
--- a/decorated-window-material2/build.gradle.kts
+++ b/decorated-window-material2/build.gradle.kts
@@ -37,12 +37,12 @@ kotlin {
}
mavenPublishing {
- coordinates("io.github.kdroidfilter", "nucleus.decorated-window-material2", publishVersion)
+ coordinates("dev.nucleusframework", "nucleus.decorated-window-material2", publishVersion)
pom {
name.set("Nucleus Material 2 Decorated Window")
description.set("Material 2 integration for Nucleus Decorated Window")
- url.set("https://github.com/kdroidFilter/Nucleus")
+ url.set("https://github.com/nucleusframework/Nucleus")
licenses {
license {
@@ -53,16 +53,16 @@ mavenPublishing {
developers {
developer {
- id.set("kdroidfilter")
- name.set("kdroidFilter")
- url.set("https://github.com/kdroidFilter")
+ id.set("nucleusframework")
+ name.set("nucleusframework")
+ url.set("https://github.com/nucleusframework")
}
}
scm {
- url.set("https://github.com/kdroidFilter/Nucleus")
- connection.set("scm:git:git://github.com/kdroidFilter/Nucleus.git")
- developerConnection.set("scm:git:ssh://git@github.com/kdroidFilter/Nucleus.git")
+ url.set("https://github.com/nucleusframework/Nucleus")
+ connection.set("scm:git:git://github.com/nucleusframework/Nucleus.git")
+ developerConnection.set("scm:git:ssh://git@github.com/nucleusframework/Nucleus.git")
}
}
diff --git a/decorated-window-material2/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material2/MaterialColorMapping.kt b/decorated-window-material2/src/main/kotlin/dev/nucleusframework/nucleus/window/material2/MaterialColorMapping.kt
similarity index 74%
rename from decorated-window-material2/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material2/MaterialColorMapping.kt
rename to decorated-window-material2/src/main/kotlin/dev/nucleusframework/nucleus/window/material2/MaterialColorMapping.kt
index 26da08f5f..ac5a537ee 100644
--- a/decorated-window-material2/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material2/MaterialColorMapping.kt
+++ b/decorated-window-material2/src/main/kotlin/dev/nucleusframework/nucleus/window/material2/MaterialColorMapping.kt
@@ -1,18 +1,18 @@
-package io.github.kdroidfilter.nucleus.window.material2
+package dev.nucleusframework.nucleus.window.material2
import androidx.compose.material.Colors
import androidx.compose.runtime.Composable
import androidx.compose.runtime.remember
import androidx.compose.ui.unit.DpSize
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.core.runtime.LinuxDesktopEnvironment
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
-import io.github.kdroidfilter.nucleus.window.styling.DecoratedWindowColors
-import io.github.kdroidfilter.nucleus.window.styling.DecoratedWindowMetrics
-import io.github.kdroidfilter.nucleus.window.styling.DecoratedWindowStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarColors
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarMetrics
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.core.runtime.LinuxDesktopEnvironment
+import dev.nucleusframework.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.window.styling.DecoratedWindowColors
+import dev.nucleusframework.nucleus.window.styling.DecoratedWindowMetrics
+import dev.nucleusframework.nucleus.window.styling.DecoratedWindowStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarColors
+import dev.nucleusframework.nucleus.window.styling.TitleBarMetrics
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
private const val BORDER_ALPHA = 0.12f
private const val INACTIVE_BORDER_ALPHA = 0.06f
diff --git a/decorated-window-material2/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material2/MaterialDecoratedDialog.kt b/decorated-window-material2/src/main/kotlin/dev/nucleusframework/nucleus/window/material2/MaterialDecoratedDialog.kt
similarity index 85%
rename from decorated-window-material2/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material2/MaterialDecoratedDialog.kt
rename to decorated-window-material2/src/main/kotlin/dev/nucleusframework/nucleus/window/material2/MaterialDecoratedDialog.kt
index bbff3974a..803030c94 100644
--- a/decorated-window-material2/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material2/MaterialDecoratedDialog.kt
+++ b/decorated-window-material2/src/main/kotlin/dev/nucleusframework/nucleus/window/material2/MaterialDecoratedDialog.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.material2
+package dev.nucleusframework.nucleus.window.material2
import androidx.compose.material.MaterialTheme
import androidx.compose.runtime.Composable
@@ -6,9 +6,9 @@ import androidx.compose.ui.graphics.painter.Painter
import androidx.compose.ui.input.key.KeyEvent
import androidx.compose.ui.window.DialogState
import androidx.compose.ui.window.rememberDialogState
-import io.github.kdroidfilter.nucleus.window.DecoratedDialog
-import io.github.kdroidfilter.nucleus.window.DecoratedDialogScope
-import io.github.kdroidfilter.nucleus.window.NucleusDecoratedWindowTheme
+import dev.nucleusframework.nucleus.window.DecoratedDialog
+import dev.nucleusframework.nucleus.window.DecoratedDialogScope
+import dev.nucleusframework.nucleus.window.NucleusDecoratedWindowTheme
@Suppress("FunctionNaming", "LongParameterList")
@Composable
diff --git a/decorated-window-material2/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material2/MaterialDecoratedWindow.kt b/decorated-window-material2/src/main/kotlin/dev/nucleusframework/nucleus/window/material2/MaterialDecoratedWindow.kt
similarity index 86%
rename from decorated-window-material2/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material2/MaterialDecoratedWindow.kt
rename to decorated-window-material2/src/main/kotlin/dev/nucleusframework/nucleus/window/material2/MaterialDecoratedWindow.kt
index 76f87eef6..4ffec1ee1 100644
--- a/decorated-window-material2/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material2/MaterialDecoratedWindow.kt
+++ b/decorated-window-material2/src/main/kotlin/dev/nucleusframework/nucleus/window/material2/MaterialDecoratedWindow.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.material2
+package dev.nucleusframework.nucleus.window.material2
import androidx.compose.material.MaterialTheme
import androidx.compose.runtime.Composable
@@ -7,13 +7,13 @@ import androidx.compose.ui.input.key.KeyEvent
import androidx.compose.ui.unit.DpSize
import androidx.compose.ui.window.WindowState
import androidx.compose.ui.window.rememberWindowState
-import io.github.kdroidfilter.nucleus.application.NucleusApplicationScope
-import io.github.kdroidfilter.nucleus.application.NucleusDecoratedWindowScope
-import io.github.kdroidfilter.nucleus.window.AwtDecoratedWindowScope
-import io.github.kdroidfilter.nucleus.window.DecoratedWindow
-import io.github.kdroidfilter.nucleus.window.NucleusDecoratedWindowTheme
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
-import io.github.kdroidfilter.nucleus.application.DecoratedWindow as NucleusDecoratedWindow
+import dev.nucleusframework.nucleus.application.NucleusApplicationScope
+import dev.nucleusframework.nucleus.application.NucleusDecoratedWindowScope
+import dev.nucleusframework.nucleus.window.AwtDecoratedWindowScope
+import dev.nucleusframework.nucleus.window.DecoratedWindow
+import dev.nucleusframework.nucleus.window.NucleusDecoratedWindowTheme
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.application.DecoratedWindow as NucleusDecoratedWindow
@Suppress("FunctionNaming", "LongParameterList")
@Composable
diff --git a/decorated-window-material2/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material2/MaterialDialogTitleBar.kt b/decorated-window-material2/src/main/kotlin/dev/nucleusframework/nucleus/window/material2/MaterialDialogTitleBar.kt
similarity index 64%
rename from decorated-window-material2/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material2/MaterialDialogTitleBar.kt
rename to decorated-window-material2/src/main/kotlin/dev/nucleusframework/nucleus/window/material2/MaterialDialogTitleBar.kt
index 19e5302ea..64560d8ff 100644
--- a/decorated-window-material2/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material2/MaterialDialogTitleBar.kt
+++ b/decorated-window-material2/src/main/kotlin/dev/nucleusframework/nucleus/window/material2/MaterialDialogTitleBar.kt
@@ -1,17 +1,17 @@
-package io.github.kdroidfilter.nucleus.window.material2
+package dev.nucleusframework.nucleus.window.material2
import androidx.compose.material.LocalContentColor
import androidx.compose.runtime.Composable
import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
-import io.github.kdroidfilter.nucleus.window.ControlButtonsDirection
-import io.github.kdroidfilter.nucleus.window.DecoratedDialogScope
-import io.github.kdroidfilter.nucleus.window.DecoratedDialogState
-import io.github.kdroidfilter.nucleus.window.DialogTitleBar
-import io.github.kdroidfilter.nucleus.window.TitleBarScope
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.ControlButtonsDirection
+import dev.nucleusframework.nucleus.window.DecoratedDialogScope
+import dev.nucleusframework.nucleus.window.DecoratedDialogState
+import dev.nucleusframework.nucleus.window.DialogTitleBar
+import dev.nucleusframework.nucleus.window.TitleBarScope
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
@Suppress("FunctionNaming")
@Composable
diff --git a/decorated-window-material2/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material2/MaterialTitleBar.kt b/decorated-window-material2/src/main/kotlin/dev/nucleusframework/nucleus/window/material2/MaterialTitleBar.kt
similarity index 72%
rename from decorated-window-material2/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material2/MaterialTitleBar.kt
rename to decorated-window-material2/src/main/kotlin/dev/nucleusframework/nucleus/window/material2/MaterialTitleBar.kt
index 909b3e3be..830853c63 100644
--- a/decorated-window-material2/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material2/MaterialTitleBar.kt
+++ b/decorated-window-material2/src/main/kotlin/dev/nucleusframework/nucleus/window/material2/MaterialTitleBar.kt
@@ -1,17 +1,17 @@
-package io.github.kdroidfilter.nucleus.window.material2
+package dev.nucleusframework.nucleus.window.material2
import androidx.compose.material.LocalContentColor
import androidx.compose.runtime.Composable
import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
-import io.github.kdroidfilter.nucleus.window.ControlButtonsDirection
-import io.github.kdroidfilter.nucleus.window.DecoratedWindowScope
-import io.github.kdroidfilter.nucleus.window.DecoratedWindowState
-import io.github.kdroidfilter.nucleus.window.TitleBar
-import io.github.kdroidfilter.nucleus.window.TitleBarScope
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.ControlButtonsDirection
+import dev.nucleusframework.nucleus.window.DecoratedWindowScope
+import dev.nucleusframework.nucleus.window.DecoratedWindowState
+import dev.nucleusframework.nucleus.window.TitleBar
+import dev.nucleusframework.nucleus.window.TitleBarScope
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
/**
* Material 2 themed title bar.
diff --git a/decorated-window-material3/build.gradle.kts b/decorated-window-material3/build.gradle.kts
index bd60ac58c..711906853 100644
--- a/decorated-window-material3/build.gradle.kts
+++ b/decorated-window-material3/build.gradle.kts
@@ -38,12 +38,12 @@ kotlin {
}
mavenPublishing {
- coordinates("io.github.kdroidfilter", "nucleus.decorated-window-material3", publishVersion)
+ coordinates("dev.nucleusframework", "nucleus.decorated-window-material3", publishVersion)
pom {
name.set("Nucleus Material Decorated Window")
description.set("Material 3 integration for Nucleus Decorated Window")
- url.set("https://github.com/kdroidFilter/Nucleus")
+ url.set("https://github.com/nucleusframework/Nucleus")
licenses {
license {
@@ -54,16 +54,16 @@ mavenPublishing {
developers {
developer {
- id.set("kdroidfilter")
- name.set("kdroidFilter")
- url.set("https://github.com/kdroidFilter")
+ id.set("nucleusframework")
+ name.set("nucleusframework")
+ url.set("https://github.com/nucleusframework")
}
}
scm {
- url.set("https://github.com/kdroidFilter/Nucleus")
- connection.set("scm:git:git://github.com/kdroidFilter/Nucleus.git")
- developerConnection.set("scm:git:ssh://git@github.com/kdroidFilter/Nucleus.git")
+ url.set("https://github.com/nucleusframework/Nucleus")
+ connection.set("scm:git:git://github.com/nucleusframework/Nucleus.git")
+ developerConnection.set("scm:git:ssh://git@github.com/nucleusframework/Nucleus.git")
}
}
diff --git a/decorated-window-material3/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material/MaterialColorMapping.kt b/decorated-window-material3/src/main/kotlin/dev/nucleusframework/nucleus/window/material/MaterialColorMapping.kt
similarity index 75%
rename from decorated-window-material3/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material/MaterialColorMapping.kt
rename to decorated-window-material3/src/main/kotlin/dev/nucleusframework/nucleus/window/material/MaterialColorMapping.kt
index 343256ca8..e24afa3ed 100644
--- a/decorated-window-material3/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material/MaterialColorMapping.kt
+++ b/decorated-window-material3/src/main/kotlin/dev/nucleusframework/nucleus/window/material/MaterialColorMapping.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.material
+package dev.nucleusframework.nucleus.window.material
import androidx.compose.material3.ColorScheme
import androidx.compose.runtime.Composable
@@ -6,14 +6,14 @@ import androidx.compose.runtime.remember
import androidx.compose.ui.graphics.luminance
import androidx.compose.ui.unit.DpSize
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.core.runtime.LinuxDesktopEnvironment
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
-import io.github.kdroidfilter.nucleus.window.styling.DecoratedWindowColors
-import io.github.kdroidfilter.nucleus.window.styling.DecoratedWindowMetrics
-import io.github.kdroidfilter.nucleus.window.styling.DecoratedWindowStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarColors
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarMetrics
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.core.runtime.LinuxDesktopEnvironment
+import dev.nucleusframework.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.window.styling.DecoratedWindowColors
+import dev.nucleusframework.nucleus.window.styling.DecoratedWindowMetrics
+import dev.nucleusframework.nucleus.window.styling.DecoratedWindowStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarColors
+import dev.nucleusframework.nucleus.window.styling.TitleBarMetrics
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
private const val INACTIVE_BORDER_ALPHA = 0.5f
private const val DARK_LUMINANCE_THRESHOLD = 0.5f
diff --git a/decorated-window-material3/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material/MaterialDecoratedDialog.kt b/decorated-window-material3/src/main/kotlin/dev/nucleusframework/nucleus/window/material/MaterialDecoratedDialog.kt
similarity index 87%
rename from decorated-window-material3/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material/MaterialDecoratedDialog.kt
rename to decorated-window-material3/src/main/kotlin/dev/nucleusframework/nucleus/window/material/MaterialDecoratedDialog.kt
index d7787e93d..7f3238dc9 100644
--- a/decorated-window-material3/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material/MaterialDecoratedDialog.kt
+++ b/decorated-window-material3/src/main/kotlin/dev/nucleusframework/nucleus/window/material/MaterialDecoratedDialog.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.material
+package dev.nucleusframework.nucleus.window.material
import androidx.compose.material3.MaterialTheme
import androidx.compose.runtime.Composable
@@ -7,12 +7,12 @@ import androidx.compose.ui.input.key.KeyEvent
import androidx.compose.ui.window.ApplicationScope
import androidx.compose.ui.window.DialogState
import androidx.compose.ui.window.rememberDialogState
-import io.github.kdroidfilter.nucleus.application.NucleusApplicationScope
-import io.github.kdroidfilter.nucleus.application.NucleusDecoratedDialogScope
-import io.github.kdroidfilter.nucleus.window.AwtDecoratedDialogScope
-import io.github.kdroidfilter.nucleus.window.DecoratedDialog
-import io.github.kdroidfilter.nucleus.window.NucleusDecoratedWindowTheme
-import io.github.kdroidfilter.nucleus.application.DecoratedDialog as NucleusDecoratedDialog
+import dev.nucleusframework.nucleus.application.NucleusApplicationScope
+import dev.nucleusframework.nucleus.application.NucleusDecoratedDialogScope
+import dev.nucleusframework.nucleus.window.AwtDecoratedDialogScope
+import dev.nucleusframework.nucleus.window.DecoratedDialog
+import dev.nucleusframework.nucleus.window.NucleusDecoratedWindowTheme
+import dev.nucleusframework.nucleus.application.DecoratedDialog as NucleusDecoratedDialog
/** AWT-backed (JBR / JNI) Material 3 wrapper for [DecoratedDialog]. */
@Suppress("FunctionNaming", "LongParameterList")
diff --git a/decorated-window-material3/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material/MaterialDecoratedWindow.kt b/decorated-window-material3/src/main/kotlin/dev/nucleusframework/nucleus/window/material/MaterialDecoratedWindow.kt
similarity index 88%
rename from decorated-window-material3/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material/MaterialDecoratedWindow.kt
rename to decorated-window-material3/src/main/kotlin/dev/nucleusframework/nucleus/window/material/MaterialDecoratedWindow.kt
index b52d99726..b3c024f0e 100644
--- a/decorated-window-material3/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material/MaterialDecoratedWindow.kt
+++ b/decorated-window-material3/src/main/kotlin/dev/nucleusframework/nucleus/window/material/MaterialDecoratedWindow.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.material
+package dev.nucleusframework.nucleus.window.material
import androidx.compose.material3.MaterialTheme
import androidx.compose.runtime.Composable
@@ -8,13 +8,13 @@ import androidx.compose.ui.unit.DpSize
import androidx.compose.ui.window.ApplicationScope
import androidx.compose.ui.window.WindowState
import androidx.compose.ui.window.rememberWindowState
-import io.github.kdroidfilter.nucleus.application.NucleusApplicationScope
-import io.github.kdroidfilter.nucleus.application.NucleusDecoratedWindowScope
-import io.github.kdroidfilter.nucleus.window.AwtDecoratedWindowScope
-import io.github.kdroidfilter.nucleus.window.DecoratedWindow
-import io.github.kdroidfilter.nucleus.window.NucleusDecoratedWindowTheme
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
-import io.github.kdroidfilter.nucleus.application.DecoratedWindow as NucleusDecoratedWindow
+import dev.nucleusframework.nucleus.application.NucleusApplicationScope
+import dev.nucleusframework.nucleus.application.NucleusDecoratedWindowScope
+import dev.nucleusframework.nucleus.window.AwtDecoratedWindowScope
+import dev.nucleusframework.nucleus.window.DecoratedWindow
+import dev.nucleusframework.nucleus.window.NucleusDecoratedWindowTheme
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.application.DecoratedWindow as NucleusDecoratedWindow
/**
* Material 3 wrapper around the AWT-based `DecoratedWindow` (JBR / JNI
diff --git a/decorated-window-material3/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material/MaterialDialogTitleBar.kt b/decorated-window-material3/src/main/kotlin/dev/nucleusframework/nucleus/window/material/MaterialDialogTitleBar.kt
similarity index 64%
rename from decorated-window-material3/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material/MaterialDialogTitleBar.kt
rename to decorated-window-material3/src/main/kotlin/dev/nucleusframework/nucleus/window/material/MaterialDialogTitleBar.kt
index 0ba206383..01b1f0765 100644
--- a/decorated-window-material3/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material/MaterialDialogTitleBar.kt
+++ b/decorated-window-material3/src/main/kotlin/dev/nucleusframework/nucleus/window/material/MaterialDialogTitleBar.kt
@@ -1,17 +1,17 @@
-package io.github.kdroidfilter.nucleus.window.material
+package dev.nucleusframework.nucleus.window.material
import androidx.compose.material3.LocalContentColor
import androidx.compose.runtime.Composable
import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
-import io.github.kdroidfilter.nucleus.window.ControlButtonsDirection
-import io.github.kdroidfilter.nucleus.window.DecoratedDialogScope
-import io.github.kdroidfilter.nucleus.window.DecoratedDialogState
-import io.github.kdroidfilter.nucleus.window.DialogTitleBar
-import io.github.kdroidfilter.nucleus.window.TitleBarScope
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.ControlButtonsDirection
+import dev.nucleusframework.nucleus.window.DecoratedDialogScope
+import dev.nucleusframework.nucleus.window.DecoratedDialogState
+import dev.nucleusframework.nucleus.window.DialogTitleBar
+import dev.nucleusframework.nucleus.window.TitleBarScope
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
@Suppress("FunctionNaming")
@Composable
diff --git a/decorated-window-material3/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material/MaterialTitleBar.kt b/decorated-window-material3/src/main/kotlin/dev/nucleusframework/nucleus/window/material/MaterialTitleBar.kt
similarity index 72%
rename from decorated-window-material3/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material/MaterialTitleBar.kt
rename to decorated-window-material3/src/main/kotlin/dev/nucleusframework/nucleus/window/material/MaterialTitleBar.kt
index 6d06c6e69..38d021cd2 100644
--- a/decorated-window-material3/src/main/kotlin/io/github/kdroidfilter/nucleus/window/material/MaterialTitleBar.kt
+++ b/decorated-window-material3/src/main/kotlin/dev/nucleusframework/nucleus/window/material/MaterialTitleBar.kt
@@ -1,17 +1,17 @@
-package io.github.kdroidfilter.nucleus.window.material
+package dev.nucleusframework.nucleus.window.material
import androidx.compose.material3.LocalContentColor
import androidx.compose.runtime.Composable
import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
-import io.github.kdroidfilter.nucleus.window.ControlButtonsDirection
-import io.github.kdroidfilter.nucleus.window.DecoratedWindowScope
-import io.github.kdroidfilter.nucleus.window.DecoratedWindowState
-import io.github.kdroidfilter.nucleus.window.TitleBar
-import io.github.kdroidfilter.nucleus.window.TitleBarScope
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.ControlButtonsDirection
+import dev.nucleusframework.nucleus.window.DecoratedWindowScope
+import dev.nucleusframework.nucleus.window.DecoratedWindowState
+import dev.nucleusframework.nucleus.window.TitleBar
+import dev.nucleusframework.nucleus.window.TitleBarScope
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
/**
* Material 3 themed title bar.
diff --git a/decorated-window-tao/build.gradle.kts b/decorated-window-tao/build.gradle.kts
index 6d5c3732f..00fd74534 100644
--- a/decorated-window-tao/build.gradle.kts
+++ b/decorated-window-tao/build.gradle.kts
@@ -97,7 +97,7 @@ tasks.configureEach {
// ── Maven publication ──────────────────────────────────────────────────────
mavenPublishing {
- coordinates("io.github.kdroidfilter", "nucleus.decorated-window-tao", publishVersion)
+ coordinates("dev.nucleusframework", "nucleus.decorated-window-tao", publishVersion)
pom {
name.set("Nucleus Decorated Window Tao")
@@ -105,7 +105,7 @@ mavenPublishing {
"Experimental no-AWT decorated window backend for Compose Desktop, " +
"powered by Tao via direct JNI for macOS, Windows, and Linux.",
)
- url.set("https://github.com/kdroidFilter/Nucleus")
+ url.set("https://github.com/nucleusframework/Nucleus")
licenses {
license {
@@ -116,16 +116,16 @@ mavenPublishing {
developers {
developer {
- id.set("kdroidfilter")
- name.set("kdroidFilter")
- url.set("https://github.com/kdroidFilter")
+ id.set("nucleusframework")
+ name.set("nucleusframework")
+ url.set("https://github.com/nucleusframework")
}
}
scm {
- url.set("https://github.com/kdroidFilter/Nucleus")
- connection.set("scm:git:git://github.com/kdroidFilter/Nucleus.git")
- developerConnection.set("scm:git:ssh://git@github.com/kdroidFilter/Nucleus.git")
+ url.set("https://github.com/nucleusframework/Nucleus")
+ connection.set("scm:git:git://github.com/nucleusframework/Nucleus.git")
+ developerConnection.set("scm:git:ssh://git@github.com/nucleusframework/Nucleus.git")
}
}
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.kt
similarity index 89%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.kt
index 584dddd65..60810de28 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/DialogTitleBar.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/DialogTitleBar.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.foundation.Image
import androidx.compose.foundation.background
@@ -25,21 +25,21 @@ import androidx.compose.ui.platform.LocalLayoutDirection
import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.LayoutDirection
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.core.runtime.LinuxDesktopEnvironment
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
-import io.github.kdroidfilter.nucleus.window.ControlButtonsDirection
-import io.github.kdroidfilter.nucleus.window.DecoratedDialogState
-import io.github.kdroidfilter.nucleus.window.GenericTitleBarImpl
-import io.github.kdroidfilter.nucleus.window.LocalControlButtonsDirection
-import io.github.kdroidfilter.nucleus.window.TitleBarScope
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
-import io.github.kdroidfilter.nucleus.window.tao.LocalRequestedTitleBarHeight
-import io.github.kdroidfilter.nucleus.window.tao.NativeMetalBridge
-import io.github.kdroidfilter.nucleus.window.tao.NativeTaoBridge
-import io.github.kdroidfilter.nucleus.window.tao.TaoDecoratedDialogScope
-import io.github.kdroidfilter.nucleus.window.utils.linux.linuxTitleBarIcons
-import io.github.kdroidfilter.nucleus.window.utils.windows.windowsTitleBarIcons
+import dev.nucleusframework.nucleus.core.runtime.LinuxDesktopEnvironment
+import dev.nucleusframework.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.window.ControlButtonsDirection
+import dev.nucleusframework.nucleus.window.DecoratedDialogState
+import dev.nucleusframework.nucleus.window.GenericTitleBarImpl
+import dev.nucleusframework.nucleus.window.LocalControlButtonsDirection
+import dev.nucleusframework.nucleus.window.TitleBarScope
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.tao.LocalRequestedTitleBarHeight
+import dev.nucleusframework.nucleus.window.tao.NativeMetalBridge
+import dev.nucleusframework.nucleus.window.tao.NativeTaoBridge
+import dev.nucleusframework.nucleus.window.tao.TaoDecoratedDialogScope
+import dev.nucleusframework.nucleus.window.utils.linux.linuxTitleBarIcons
+import dev.nucleusframework.nucleus.window.utils.windows.windowsTitleBarIcons
private val WINDOWS_DLG_BUTTON_WIDTH: Dp = 46.dp
@@ -195,7 +195,7 @@ private fun TitleBarScope.DialogWindowsCloseButton(
@Composable
private fun TitleBarScope.DialogLinuxCloseButton(
onClick: () -> Unit,
- state: io.github.kdroidfilter.nucleus.window.DecoratedWindowState,
+ state: dev.nucleusframework.nucleus.window.DecoratedWindowState,
modifier: Modifier = Modifier,
style: TitleBarStyle,
) {
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.kt
similarity index 93%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.kt
index 57711bb77..5a5930a5e 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/TitleBar.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/TitleBar.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window
+package dev.nucleusframework.nucleus.window
import androidx.compose.animation.core.animateDpAsState
import androidx.compose.animation.core.tween
@@ -31,27 +31,27 @@ import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.LayoutDirection
import androidx.compose.ui.unit.dp
import androidx.compose.ui.zIndex
-import io.github.kdroidfilter.nucleus.core.runtime.LinuxDesktopEnvironment
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
-import io.github.kdroidfilter.nucleus.window.ControlButtonsDirection
-import io.github.kdroidfilter.nucleus.window.DecoratedWindowState
-import io.github.kdroidfilter.nucleus.window.GenericTitleBarImpl
-import io.github.kdroidfilter.nucleus.window.TitleBarScope
-import io.github.kdroidfilter.nucleus.window.hasMacOSLargeCornerRadius
-import io.github.kdroidfilter.nucleus.window.hasNewFullscreenControls
-import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle
-import io.github.kdroidfilter.nucleus.window.styling.TitleBarStyle
-import io.github.kdroidfilter.nucleus.window.tao.LocalFullscreenTitleBarHolder
-import io.github.kdroidfilter.nucleus.window.tao.LocalRequestedClearColor
-import io.github.kdroidfilter.nucleus.window.tao.LocalRequestedTitleBarHeight
-import io.github.kdroidfilter.nucleus.window.tao.NativeMetalBridge
-import io.github.kdroidfilter.nucleus.window.tao.NativeTaoBridge
-import io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDecoBridge
-import io.github.kdroidfilter.nucleus.window.tao.TaoDecoratedWindowScope
-import io.github.kdroidfilter.nucleus.window.tao.TaoWindow
-import io.github.kdroidfilter.nucleus.window.tao.WindowControlsLinux
-import io.github.kdroidfilter.nucleus.window.tao.WindowControlsWindows
-import io.github.kdroidfilter.nucleus.window.utils.linux.rememberLinuxButtonLayout
+import dev.nucleusframework.nucleus.core.runtime.LinuxDesktopEnvironment
+import dev.nucleusframework.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.window.ControlButtonsDirection
+import dev.nucleusframework.nucleus.window.DecoratedWindowState
+import dev.nucleusframework.nucleus.window.GenericTitleBarImpl
+import dev.nucleusframework.nucleus.window.TitleBarScope
+import dev.nucleusframework.nucleus.window.hasMacOSLargeCornerRadius
+import dev.nucleusframework.nucleus.window.hasNewFullscreenControls
+import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle
+import dev.nucleusframework.nucleus.window.styling.TitleBarStyle
+import dev.nucleusframework.nucleus.window.tao.LocalFullscreenTitleBarHolder
+import dev.nucleusframework.nucleus.window.tao.LocalRequestedClearColor
+import dev.nucleusframework.nucleus.window.tao.LocalRequestedTitleBarHeight
+import dev.nucleusframework.nucleus.window.tao.NativeMetalBridge
+import dev.nucleusframework.nucleus.window.tao.NativeTaoBridge
+import dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDecoBridge
+import dev.nucleusframework.nucleus.window.tao.TaoDecoratedWindowScope
+import dev.nucleusframework.nucleus.window.tao.TaoWindow
+import dev.nucleusframework.nucleus.window.tao.WindowControlsLinux
+import dev.nucleusframework.nucleus.window.tao.WindowControlsWindows
+import dev.nucleusframework.nucleus.window.utils.linux.rememberLinuxButtonLayout
import kotlinx.coroutines.currentCoroutineContext
import kotlinx.coroutines.isActive
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/ApplicationScope.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/ApplicationScope.kt
similarity index 91%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/ApplicationScope.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/ApplicationScope.kt
index d42008fbe..72bc9dd73 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/ApplicationScope.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/ApplicationScope.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
/**
* Scope exposed by [taoApplication]. Mirrors `androidx.compose.ui.window.ApplicationScope`
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/DecoratedDialog.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/DecoratedDialog.kt
similarity index 98%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/DecoratedDialog.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/DecoratedDialog.kt
index 173e0dd00..8252cf4f9 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/DecoratedDialog.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/DecoratedDialog.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.foundation.layout.ColumnScope
import androidx.compose.runtime.Composable
@@ -14,8 +14,8 @@ import androidx.compose.ui.window.DialogState
import androidx.compose.ui.window.WindowPosition
import androidx.compose.ui.window.rememberDialogState
import androidx.compose.ui.window.rememberWindowState
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
-import io.github.kdroidfilter.nucleus.window.DecoratedDialogState
+import dev.nucleusframework.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.window.DecoratedDialogState
/**
* Tao-backed equivalent of `decorated-window-jni`'s `DecoratedDialog`.
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/DecoratedWindow.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/DecoratedWindow.kt
similarity index 96%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/DecoratedWindow.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/DecoratedWindow.kt
index 06c442ef8..a69d91a15 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/DecoratedWindow.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/DecoratedWindow.kt
@@ -1,6 +1,6 @@
@file:OptIn(androidx.compose.ui.InternalComposeUiApi::class)
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.ColumnScope
@@ -14,15 +14,15 @@ import androidx.compose.ui.graphics.painter.Painter
import androidx.compose.ui.input.key.KeyEvent
import androidx.compose.ui.platform.LocalUriHandler
import androidx.compose.ui.unit.DpSize
-import io.github.kdroidfilter.nucleus.core.runtime.LinuxDesktopEnvironment
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
-import io.github.kdroidfilter.nucleus.window.DecoratedWindowState
-import io.github.kdroidfilter.nucleus.window.LocalTitleBarInfo
-import io.github.kdroidfilter.nucleus.window.TitleBarInfo
-import io.github.kdroidfilter.nucleus.window.tao.render.LocalTaoPopupHost
-import io.github.kdroidfilter.nucleus.window.tao.render.TaoComposeSceneHost
-import io.github.kdroidfilter.nucleus.window.tao.render.TaoComposeSceneHostLinux
-import io.github.kdroidfilter.nucleus.window.tao.render.TaoComposeSceneHostWindows
+import dev.nucleusframework.nucleus.core.runtime.LinuxDesktopEnvironment
+import dev.nucleusframework.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.window.DecoratedWindowState
+import dev.nucleusframework.nucleus.window.LocalTitleBarInfo
+import dev.nucleusframework.nucleus.window.TitleBarInfo
+import dev.nucleusframework.nucleus.window.tao.render.LocalTaoPopupHost
+import dev.nucleusframework.nucleus.window.tao.render.TaoComposeSceneHost
+import dev.nucleusframework.nucleus.window.tao.render.TaoComposeSceneHostLinux
+import dev.nucleusframework.nucleus.window.tao.render.TaoComposeSceneHostWindows
/**
* Holds the title-bar height (in dp / macOS points) currently requested by the
@@ -349,7 +349,7 @@ private fun ApplicationScope.openDecoratedWindowLinux(
LocalRequestedTitleBarHeight provides titleBarHeightState,
LocalFullscreenTitleBarHolder provides fullscreenHolder,
LocalTaoNativeViewHost provides host.nativeViewHost(),
- io.github.kdroidfilter.nucleus.window.tao.render.LocalTaoLinuxOverlayController
+ dev.nucleusframework.nucleus.window.tao.render.LocalTaoLinuxOverlayController
provides host.overlayController(),
// Override the default Skiko `URIManager` (calls
// `Desktop.browse` → initialises XAWT → deadlocks our GLX
@@ -544,7 +544,7 @@ private fun ApplicationScope.openDecoratedWindowWindows(
LocalRequestedTitleBarHeight provides titleBarHeightState,
LocalFullscreenTitleBarHolder provides fullscreenHolder,
LocalTaoNativeViewHost provides host.nativeViewHost(),
- io.github.kdroidfilter.nucleus.window.tao.render.LocalTaoPopupHostWindows
+ dev.nucleusframework.nucleus.window.tao.render.LocalTaoPopupHostWindows
provides host.popupHost(),
) {
val border =
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/DecoratedWindowComposable.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/DecoratedWindowComposable.kt
similarity index 99%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/DecoratedWindowComposable.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/DecoratedWindowComposable.kt
index e8ca4bfaa..ff21aeb93 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/DecoratedWindowComposable.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/DecoratedWindowComposable.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.runtime.Composable
import androidx.compose.runtime.DisposableEffect
@@ -17,7 +17,7 @@ import androidx.compose.ui.window.WindowPlacement
import androidx.compose.ui.window.WindowPosition
import androidx.compose.ui.window.WindowState
import androidx.compose.ui.window.rememberWindowState
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.core.runtime.Platform
/**
* Composable variant of [openDecoratedWindow]. API mirrors
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/FullscreenTitleBarHolder.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/FullscreenTitleBarHolder.kt
similarity index 98%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/FullscreenTitleBarHolder.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/FullscreenTitleBarHolder.kt
index 7d2aa9dcb..847660ff5 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/FullscreenTitleBarHolder.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/FullscreenTitleBarHolder.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.animation.core.animateDpAsState
import androidx.compose.animation.core.tween
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/MacOSStyle.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/MacOSStyle.kt
similarity index 85%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/MacOSStyle.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/MacOSStyle.kt
index cb47e3b48..d233f1959 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/MacOSStyle.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/MacOSStyle.kt
@@ -1,9 +1,9 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
/**
* macOS visual treatment applied to a [DecoratedWindow] at construction.
*
- * Imperative counterpart of [io.github.kdroidfilter.nucleus.window.macOSLargeCornerRadius]
+ * Imperative counterpart of [dev.nucleusframework.nucleus.window.macOSLargeCornerRadius]
* — the Modifier is the recommended path (works the same on jbr/jni/tao).
* Tao defaults to [Classic] so the swap-in API behaves identically to the
* AWT backends: opt in to the large corner radius via the Modifier on
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeMetalBridge.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeMetalBridge.kt
similarity index 98%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeMetalBridge.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeMetalBridge.kt
index 9f49a7802..fe6e31b9a 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeMetalBridge.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeMetalBridge.kt
@@ -1,7 +1,7 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
-import io.github.kdroidfilter.nucleus.window.tao.render.MetalFrame
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.window.tao.render.MetalFrame
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow
import java.util.concurrent.ConcurrentHashMap
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoA11yWindowsBridge.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoA11yWindowsBridge.kt
similarity index 89%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoA11yWindowsBridge.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoA11yWindowsBridge.kt
index 4cf858ba4..6ca7f7936 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoA11yWindowsBridge.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoA11yWindowsBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
/**
* Loader stub for `nucleus_tao_a11y.dll` (Windows-only).
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoBridge.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoBridge.kt
similarity index 99%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoBridge.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoBridge.kt
index 83ec664fc..60a775d35 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoBridge.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
private const val LIBRARY_NAME = "nucleus_tao"
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoEglBridge.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoEglBridge.kt
similarity index 96%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoEglBridge.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoEglBridge.kt
index e1865cd1e..e2a27ec30 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoEglBridge.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoEglBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
private const val LIBRARY_NAME = "nucleus_tao_egl"
@@ -12,7 +12,7 @@ private const val LIBRARY_NAME = "nucleus_tao_egl"
*
* Replaces [NativeTaoGlxBridge] on the path selected by the JVM system
* property `nucleus.tao.linux.renderer = glx | egl` (see
- * [io.github.kdroidfilter.nucleus.window.tao.render.TaoComposeSceneHostLinux]).
+ * [dev.nucleusframework.nucleus.window.tao.render.TaoComposeSceneHostLinux]).
*
* Phase 1 (this commit): X11 only. Wayland (`nativeAttachWayland`) and the
* `wp_fractional_scale_v1` / `wp_viewporter` plumbing land in follow-ups.
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoGlBridge.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoGlBridge.kt
similarity index 93%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoGlBridge.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoGlBridge.kt
index 811b9c996..7d7eb8ec6 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoGlBridge.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoGlBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
private const val LIBRARY_NAME = "nucleus_tao_gl"
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoLinuxDndBridge.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoLinuxDndBridge.kt
similarity index 96%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoLinuxDndBridge.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoLinuxDndBridge.kt
index 03bcad002..974f2c0bc 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoLinuxDndBridge.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoLinuxDndBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
/**
* JNI bridge to the Linux DnD helper for the Tao backend.
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoLinuxTouchBridge.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoLinuxTouchBridge.kt
similarity index 97%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoLinuxTouchBridge.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoLinuxTouchBridge.kt
index 91dc480a4..5f568424e 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoLinuxTouchBridge.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoLinuxTouchBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
/**
* JNI bridge to the Linux touch + touchpad-gesture helper for the Tao backend.
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoLinuxWidgetBridge.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoLinuxWidgetBridge.kt
similarity index 97%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoLinuxWidgetBridge.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoLinuxWidgetBridge.kt
index 6f4d979aa..85dcb2f58 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoLinuxWidgetBridge.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoLinuxWidgetBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
private const val LIBRARY_NAME = "nucleus_tao_linux_widget"
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoMacOsDecoBridge.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoMacOsDecoBridge.kt
similarity index 96%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoMacOsDecoBridge.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoMacOsDecoBridge.kt
index 2a150f6b5..b5687a0e6 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoMacOsDecoBridge.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoMacOsDecoBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
private const val LIBRARY_NAME = "nucleus_tao_macos_deco"
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoMacOsDndBridge.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoMacOsDndBridge.kt
similarity index 96%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoMacOsDndBridge.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoMacOsDndBridge.kt
index fc914246a..538178a64 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoMacOsDndBridge.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoMacOsDndBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
/**
* JNI bridge to the macOS NSDraggingDestination / NSDraggingSource helper for
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoMacOsNativeViewBridge.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoMacOsNativeViewBridge.kt
similarity index 97%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoMacOsNativeViewBridge.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoMacOsNativeViewBridge.kt
index d2a8f2af2..71bd42254 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoMacOsNativeViewBridge.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoMacOsNativeViewBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
private const val LIBRARY_NAME = "nucleus_tao_macos_native_view"
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoWindowsDecoBridge.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoWindowsDecoBridge.kt
similarity index 95%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoWindowsDecoBridge.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoWindowsDecoBridge.kt
index c9f8f06b8..aad0b6119 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoWindowsDecoBridge.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoWindowsDecoBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
private const val LIBRARY_NAME = "nucleus_tao_windows_deco"
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoWindowsDndBridge.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoWindowsDndBridge.kt
similarity index 95%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoWindowsDndBridge.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoWindowsDndBridge.kt
index f94d76a31..d9246b440 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoWindowsDndBridge.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoWindowsDndBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
/**
* JNI bridge to the Windows IDropTarget COM helper for the Tao backend.
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoWindowsNativeViewBridge.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoWindowsNativeViewBridge.kt
similarity index 93%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoWindowsNativeViewBridge.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoWindowsNativeViewBridge.kt
index 26fdf3911..bc59de8cc 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoWindowsNativeViewBridge.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoWindowsNativeViewBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
private const val LIBRARY_NAME = "nucleus_tao_windows_native_view"
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoWindowsOverlayBridge.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoWindowsOverlayBridge.kt
similarity index 96%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoWindowsOverlayBridge.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoWindowsOverlayBridge.kt
index bca45f759..c4d3eb7ff 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeTaoWindowsOverlayBridge.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeTaoWindowsOverlayBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
private const val LIBRARY_NAME = "nucleus_tao_windows_native_view"
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeView.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeView.kt
similarity index 97%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeView.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeView.kt
index 05da975d2..63db2390a 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeView.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeView.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.foundation.layout.Box
import androidx.compose.runtime.Composable
@@ -23,9 +23,9 @@ import androidx.compose.ui.layout.onGloballyPositioned
import androidx.compose.ui.layout.positionInRoot
import androidx.compose.ui.platform.LocalDensity
import androidx.compose.ui.unit.Dp
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
-import io.github.kdroidfilter.nucleus.window.tao.render.LocalTaoLinuxOverlayController
-import io.github.kdroidfilter.nucleus.window.tao.render.LocalTaoPopupHost
+import dev.nucleusframework.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.window.tao.render.LocalTaoLinuxOverlayController
+import dev.nucleusframework.nucleus.window.tao.render.LocalTaoPopupHost
import kotlin.math.min
import kotlin.math.roundToInt
@@ -97,7 +97,7 @@ private fun HwndEmbedding(
content: @Composable () -> Unit,
) {
val host = LocalTaoNativeViewHost.current
- val popupHost = io.github.kdroidfilter.nucleus.window.tao.render.LocalTaoPopupHostWindows.current
+ val popupHost = dev.nucleusframework.nucleus.window.tao.render.LocalTaoPopupHostWindows.current
val handle = view.hwndHandle
val latestContent by rememberUpdatedState(content)
@@ -289,7 +289,7 @@ private fun NsViewEmbedding(
*
* Hit-test passthrough is region-based, mirroring macOS:
* descendants of [content] that wrap themselves in
- * [io.github.kdroidfilter.nucleus.window.tao.consumeOverlayPointerEvents]
+ * [dev.nucleusframework.nucleus.window.tao.consumeOverlayPointerEvents]
* register their bounds with the host's [TaoLinuxOverlayController];
* the EGL surface's input region is the union of those rects, so
* outside of them every click falls through to GTK and reaches the
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeViewOverlayController.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeViewOverlayController.kt
similarity index 97%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeViewOverlayController.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeViewOverlayController.kt
index f29e81ab8..b3386c2fd 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeViewOverlayController.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeViewOverlayController.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.runtime.Composable
import androidx.compose.ui.InternalComposeUiApi
@@ -18,11 +18,11 @@ import androidx.compose.ui.unit.Density
import androidx.compose.ui.unit.IntOffset
import androidx.compose.ui.unit.IntSize
import androidx.compose.ui.unit.LayoutDirection
-import io.github.kdroidfilter.nucleus.window.tao.render.TaoComposeSceneContext
-import io.github.kdroidfilter.nucleus.window.tao.render.TaoNativeWireFormat
-import io.github.kdroidfilter.nucleus.window.tao.render.TaoPopupHost
-import io.github.kdroidfilter.nucleus.window.tao.render.dispatchSyntheticKeyTyped
-import io.github.kdroidfilter.nucleus.window.tao.render.renderMetalFrame
+import dev.nucleusframework.nucleus.window.tao.render.TaoComposeSceneContext
+import dev.nucleusframework.nucleus.window.tao.render.TaoNativeWireFormat
+import dev.nucleusframework.nucleus.window.tao.render.TaoPopupHost
+import dev.nucleusframework.nucleus.window.tao.render.dispatchSyntheticKeyTyped
+import dev.nucleusframework.nucleus.window.tao.render.renderMetalFrame
import kotlin.coroutines.CoroutineContext
import org.jetbrains.skia.DirectContext
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeViewOverlayController.windows.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeViewOverlayController.windows.kt
similarity index 98%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeViewOverlayController.windows.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeViewOverlayController.windows.kt
index 575b82f64..751c22694 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NativeViewOverlayController.windows.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NativeViewOverlayController.windows.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.runtime.Composable
import androidx.compose.runtime.SideEffect
@@ -20,10 +20,10 @@ import androidx.compose.ui.unit.Density
import androidx.compose.ui.unit.IntOffset
import androidx.compose.ui.unit.IntSize
import androidx.compose.ui.unit.LayoutDirection
-import io.github.kdroidfilter.nucleus.window.tao.render.TaoComposeSceneContextWindows
-import io.github.kdroidfilter.nucleus.window.tao.render.TaoNativeWireFormat
-import io.github.kdroidfilter.nucleus.window.tao.render.TaoPopupHostWindows
-import io.github.kdroidfilter.nucleus.window.tao.render.renderGlFrame
+import dev.nucleusframework.nucleus.window.tao.render.TaoComposeSceneContextWindows
+import dev.nucleusframework.nucleus.window.tao.render.TaoNativeWireFormat
+import dev.nucleusframework.nucleus.window.tao.render.TaoPopupHostWindows
+import dev.nucleusframework.nucleus.window.tao.render.renderGlFrame
import kotlin.coroutines.CoroutineContext
import org.jetbrains.skia.DirectContext
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NucleusPlatformView.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NucleusPlatformView.kt
similarity index 98%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NucleusPlatformView.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NucleusPlatformView.kt
index fa51c7c5e..1f0b6e374 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/NucleusPlatformView.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/NucleusPlatformView.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
/**
* Platform-agnostic descriptor for a native view embedded by the
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/OverlayInteractionModifier.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/OverlayInteractionModifier.kt
similarity index 97%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/OverlayInteractionModifier.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/OverlayInteractionModifier.kt
index abb71116f..d193f91dd 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/OverlayInteractionModifier.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/OverlayInteractionModifier.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.runtime.DisposableEffect
import androidx.compose.runtime.remember
@@ -10,7 +10,7 @@ import androidx.compose.ui.input.pointer.pointerHoverIcon
import androidx.compose.ui.input.pointer.pointerInput
import androidx.compose.ui.layout.onGloballyPositioned
import androidx.compose.ui.layout.positionInRoot
-import io.github.kdroidfilter.nucleus.window.tao.render.LocalTaoLinuxOverlayController
+import dev.nucleusframework.nucleus.window.tao.render.LocalTaoLinuxOverlayController
import kotlin.math.roundToInt
/**
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/PainterToRgba.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/PainterToRgba.kt
similarity index 97%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/PainterToRgba.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/PainterToRgba.kt
index 218f58db8..2ac47f46f 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/PainterToRgba.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/PainterToRgba.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.ui.geometry.Size
import androidx.compose.ui.graphics.Canvas
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/PopupNativeBridge.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/PopupNativeBridge.kt
similarity index 98%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/PopupNativeBridge.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/PopupNativeBridge.kt
index 4654fae0e..d3e601d04 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/PopupNativeBridge.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/PopupNativeBridge.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
/**
* JNI bridge to the macOS popup panel helper (`macos/popup_panel.m`,
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/PopupNativeBridge.windows.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/PopupNativeBridge.windows.kt
similarity index 95%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/PopupNativeBridge.windows.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/PopupNativeBridge.windows.kt
index ecea27ecc..f96caabe0 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/PopupNativeBridge.windows.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/PopupNativeBridge.windows.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
-import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader
+import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader
/**
* Windows counterpart to the macOS [PopupNativeBridge]. Each instance
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoAccessibility.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoAccessibility.kt
similarity index 99%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoAccessibility.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoAccessibility.kt
index 567b7430c..cfc117832 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoAccessibility.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoAccessibility.kt
@@ -1,7 +1,7 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.runtime.snapshots.Snapshot
-import io.github.kdroidfilter.nucleus.core.runtime.NucleusApp
+import dev.nucleusframework.nucleus.core.runtime.NucleusApp
import java.nio.ByteBuffer
import java.nio.ByteOrder
import java.util.concurrent.ConcurrentHashMap
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoApplication.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoApplication.kt
similarity index 98%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoApplication.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoApplication.kt
index 32c57d68b..85f9ec6ef 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoApplication.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoApplication.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import java.util.concurrent.ConcurrentHashMap
import java.util.concurrent.atomic.AtomicLong
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoApplicationCompose.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoApplicationCompose.kt
similarity index 98%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoApplicationCompose.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoApplicationCompose.kt
index 657cc4c64..9d6bee7a0 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoApplicationCompose.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoApplicationCompose.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.runtime.Applier
import androidx.compose.runtime.Composable
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoCursorMapping.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoCursorMapping.kt
similarity index 97%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoCursorMapping.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoCursorMapping.kt
index c1c407ac0..583b232d1 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoCursorMapping.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoCursorMapping.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.ui.input.pointer.PointerIcon
import java.awt.Cursor
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoDecoratedDialogScope.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoDecoratedDialogScope.kt
similarity index 75%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoDecoratedDialogScope.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoDecoratedDialogScope.kt
index 8f97715da..90fc96c06 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoDecoratedDialogScope.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoDecoratedDialogScope.kt
@@ -1,7 +1,7 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.foundation.layout.ColumnScope
-import io.github.kdroidfilter.nucleus.window.DecoratedDialogScope
+import dev.nucleusframework.nucleus.window.DecoratedDialogScope
/**
* Tao-specific sub-interface of [DecoratedDialogScope] adding access to the
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoDecoratedWindowScope.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoDecoratedWindowScope.kt
similarity index 82%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoDecoratedWindowScope.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoDecoratedWindowScope.kt
index 8e00a0023..1121743cd 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoDecoratedWindowScope.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoDecoratedWindowScope.kt
@@ -1,7 +1,7 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.foundation.layout.ColumnScope
-import io.github.kdroidfilter.nucleus.window.DecoratedWindowScope
+import dev.nucleusframework.nucleus.window.DecoratedWindowScope
/**
* Tao-specific sub-interface of [DecoratedWindowScope] adding access to the
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoDeepLinkBridge.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoDeepLinkBridge.kt
similarity index 97%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoDeepLinkBridge.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoDeepLinkBridge.kt
index 3f646ae7e..1cd42d950 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoDeepLinkBridge.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoDeepLinkBridge.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import java.net.URI
import java.net.URISyntaxException
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoDnDDiagnostics.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoDnDDiagnostics.kt
similarity index 93%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoDnDDiagnostics.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoDnDDiagnostics.kt
index f2c992acb..facaaece4 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoDnDDiagnostics.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoDnDDiagnostics.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.runtime.mutableIntStateOf
import androidx.compose.runtime.mutableStateOf
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoDragAndDropManager.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoDragAndDropManager.kt
similarity index 99%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoDragAndDropManager.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoDragAndDropManager.kt
index 0e4fad503..0126bfc86 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoDragAndDropManager.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoDragAndDropManager.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.ui.ExperimentalComposeUiApi
import androidx.compose.ui.InternalComposeUiApi
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoDragAndDropPayload.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoDragAndDropPayload.kt
similarity index 91%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoDragAndDropPayload.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoDragAndDropPayload.kt
index 855958db7..4cc007005 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoDragAndDropPayload.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoDragAndDropPayload.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
/**
* Backend-specific payload exposed as `DragAndDropEvent.nativeEvent` on the
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoFilesTransferable.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoFilesTransferable.kt
similarity index 97%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoFilesTransferable.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoFilesTransferable.kt
index 29b80e1e4..a95830bbf 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoFilesTransferable.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoFilesTransferable.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import java.awt.datatransfer.DataFlavor
import java.awt.datatransfer.Transferable
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoLinuxUriHandler.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoLinuxUriHandler.kt
similarity index 95%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoLinuxUriHandler.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoLinuxUriHandler.kt
index f1c89c5f6..586908f62 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoLinuxUriHandler.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoLinuxUriHandler.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.ui.platform.UriHandler
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoMainDispatcher.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoMainDispatcher.kt
similarity index 99%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoMainDispatcher.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoMainDispatcher.kt
index 9d31bec1e..9464233f2 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoMainDispatcher.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoMainDispatcher.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.runtime.snapshots.Snapshot
import kotlinx.coroutines.CoroutineDispatcher
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoSemanticsObserver.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoSemanticsObserver.kt
similarity index 99%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoSemanticsObserver.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoSemanticsObserver.kt
index 9c62b9582..8527c564d 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoSemanticsObserver.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoSemanticsObserver.kt
@@ -1,6 +1,6 @@
@file:OptIn(androidx.compose.ui.InternalComposeUiApi::class)
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.ui.platform.PlatformContext
import androidx.compose.ui.semantics.Role
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoSyntheticAwtDnd.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoSyntheticAwtDnd.kt
similarity index 98%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoSyntheticAwtDnd.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoSyntheticAwtDnd.kt
index c6b84d716..44b6602b6 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoSyntheticAwtDnd.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoSyntheticAwtDnd.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import java.awt.Point
import java.awt.datatransfer.Transferable
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoWindow.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoWindow.kt
similarity index 99%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoWindow.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoWindow.kt
index 48741ec00..4e1351d96 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/TaoWindow.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/TaoWindow.kt
@@ -1,6 +1,6 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
-import io.github.kdroidfilter.nucleus.core.runtime.Platform
+import dev.nucleusframework.nucleus.core.runtime.Platform
import java.util.concurrent.CopyOnWriteArrayList
import java.util.concurrent.atomic.AtomicBoolean
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/UndecoratedWindowBorder.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/UndecoratedWindowBorder.kt
similarity index 82%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/UndecoratedWindowBorder.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/UndecoratedWindowBorder.kt
index 54545c8b7..9b05b90a9 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/UndecoratedWindowBorder.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/UndecoratedWindowBorder.kt
@@ -1,14 +1,14 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.runtime.Composable
import androidx.compose.runtime.getValue
import androidx.compose.ui.Modifier
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.core.runtime.LinuxDesktopEnvironment
-import io.github.kdroidfilter.nucleus.window.DecoratedWindowState
-import io.github.kdroidfilter.nucleus.window.internal.insideBorder
-import io.github.kdroidfilter.nucleus.window.styling.LocalDecoratedWindowStyle
+import dev.nucleusframework.nucleus.core.runtime.LinuxDesktopEnvironment
+import dev.nucleusframework.nucleus.window.DecoratedWindowState
+import dev.nucleusframework.nucleus.window.internal.insideBorder
+import dev.nucleusframework.nucleus.window.styling.LocalDecoratedWindowStyle
/**
* Returns the [Modifier.insideBorder] used by `DecoratedWindow` on
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/WindowControlsLinux.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/WindowControlsLinux.kt
similarity index 93%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/WindowControlsLinux.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/WindowControlsLinux.kt
index d7df3248c..75aeef017 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/WindowControlsLinux.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/WindowControlsLinux.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.foundation.Image
import androidx.compose.foundation.clickable
@@ -20,13 +20,13 @@ import androidx.compose.ui.input.pointer.PointerEventType
import androidx.compose.ui.input.pointer.onPointerEvent
import androidx.compose.ui.unit.DpSize
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.core.runtime.LinuxDesktopEnvironment
-import io.github.kdroidfilter.nucleus.window.DecoratedWindowState
-import io.github.kdroidfilter.nucleus.window.TitleBarScope
-import io.github.kdroidfilter.nucleus.window.utils.linux.LinuxButtonLayout
-import io.github.kdroidfilter.nucleus.window.utils.linux.LinuxTitleBarButton
-import io.github.kdroidfilter.nucleus.window.utils.linux.linuxTitleBarIcons
-import io.github.kdroidfilter.nucleus.window.utils.linux.rememberLinuxButtonLayout
+import dev.nucleusframework.nucleus.core.runtime.LinuxDesktopEnvironment
+import dev.nucleusframework.nucleus.window.DecoratedWindowState
+import dev.nucleusframework.nucleus.window.TitleBarScope
+import dev.nucleusframework.nucleus.window.utils.linux.LinuxButtonLayout
+import dev.nucleusframework.nucleus.window.utils.linux.LinuxTitleBarButton
+import dev.nucleusframework.nucleus.window.utils.linux.linuxTitleBarIcons
+import dev.nucleusframework.nucleus.window.utils.linux.rememberLinuxButtonLayout
// Direct copy of `decorated-window-core/WindowControlArea.kt`'s logic, with
// the AWT calls swapped for [TaoWindow] equivalents:
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/WindowControlsWindows.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/WindowControlsWindows.kt
similarity index 82%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/WindowControlsWindows.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/WindowControlsWindows.kt
index 3baddf048..335ede686 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/WindowControlsWindows.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/WindowControlsWindows.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao
+package dev.nucleusframework.nucleus.window.tao
import androidx.compose.foundation.Image
import androidx.compose.foundation.background
@@ -23,30 +23,30 @@ import androidx.compose.ui.graphics.vector.rememberVectorPainter
import androidx.compose.ui.input.pointer.PointerEventType
import androidx.compose.ui.input.pointer.onPointerEvent
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.DecoratedWindowState
-import io.github.kdroidfilter.nucleus.window.LocalIsDarkTheme
-import io.github.kdroidfilter.nucleus.window.icons.windows.Close
-import io.github.kdroidfilter.nucleus.window.icons.windows.CloseDark
-import io.github.kdroidfilter.nucleus.window.icons.windows.CloseFullscreen
-import io.github.kdroidfilter.nucleus.window.icons.windows.CloseFullscreenDark
-import io.github.kdroidfilter.nucleus.window.icons.windows.CloseFullscreenInactive
-import io.github.kdroidfilter.nucleus.window.icons.windows.CloseFullscreenInactiveDark
-import io.github.kdroidfilter.nucleus.window.icons.windows.CloseHover
-import io.github.kdroidfilter.nucleus.window.icons.windows.CloseInactive
-import io.github.kdroidfilter.nucleus.window.icons.windows.CloseInactiveDark
-import io.github.kdroidfilter.nucleus.window.icons.windows.Maximize
-import io.github.kdroidfilter.nucleus.window.icons.windows.MaximizeDark
-import io.github.kdroidfilter.nucleus.window.icons.windows.MaximizeInactive
-import io.github.kdroidfilter.nucleus.window.icons.windows.MaximizeInactiveDark
-import io.github.kdroidfilter.nucleus.window.icons.windows.Minimize
-import io.github.kdroidfilter.nucleus.window.icons.windows.MinimizeDark
-import io.github.kdroidfilter.nucleus.window.icons.windows.MinimizeInactive
-import io.github.kdroidfilter.nucleus.window.icons.windows.MinimizeInactiveDark
-import io.github.kdroidfilter.nucleus.window.icons.windows.Restore
-import io.github.kdroidfilter.nucleus.window.icons.windows.RestoreDark
-import io.github.kdroidfilter.nucleus.window.icons.windows.RestoreInactive
-import io.github.kdroidfilter.nucleus.window.icons.windows.RestoreInactiveDark
-import io.github.kdroidfilter.nucleus.window.icons.windows.WindowsControlButtonIcons
+import dev.nucleusframework.nucleus.window.DecoratedWindowState
+import dev.nucleusframework.nucleus.window.LocalIsDarkTheme
+import dev.nucleusframework.nucleus.window.icons.windows.Close
+import dev.nucleusframework.nucleus.window.icons.windows.CloseDark
+import dev.nucleusframework.nucleus.window.icons.windows.CloseFullscreen
+import dev.nucleusframework.nucleus.window.icons.windows.CloseFullscreenDark
+import dev.nucleusframework.nucleus.window.icons.windows.CloseFullscreenInactive
+import dev.nucleusframework.nucleus.window.icons.windows.CloseFullscreenInactiveDark
+import dev.nucleusframework.nucleus.window.icons.windows.CloseHover
+import dev.nucleusframework.nucleus.window.icons.windows.CloseInactive
+import dev.nucleusframework.nucleus.window.icons.windows.CloseInactiveDark
+import dev.nucleusframework.nucleus.window.icons.windows.Maximize
+import dev.nucleusframework.nucleus.window.icons.windows.MaximizeDark
+import dev.nucleusframework.nucleus.window.icons.windows.MaximizeInactive
+import dev.nucleusframework.nucleus.window.icons.windows.MaximizeInactiveDark
+import dev.nucleusframework.nucleus.window.icons.windows.Minimize
+import dev.nucleusframework.nucleus.window.icons.windows.MinimizeDark
+import dev.nucleusframework.nucleus.window.icons.windows.MinimizeInactive
+import dev.nucleusframework.nucleus.window.icons.windows.MinimizeInactiveDark
+import dev.nucleusframework.nucleus.window.icons.windows.Restore
+import dev.nucleusframework.nucleus.window.icons.windows.RestoreDark
+import dev.nucleusframework.nucleus.window.icons.windows.RestoreInactive
+import dev.nucleusframework.nucleus.window.icons.windows.RestoreInactiveDark
+import dev.nucleusframework.nucleus.window.icons.windows.WindowsControlButtonIcons
// Mirrors `decorated-window-core/WindowsWindowControlArea.kt` so the visual
// output is identical between the AWT-based backend and the Tao backend.
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/GlSceneRenderer.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/GlSceneRenderer.kt
similarity index 97%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/GlSceneRenderer.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/GlSceneRenderer.kt
index ff4187429..5aa56dc1c 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/GlSceneRenderer.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/GlSceneRenderer.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao.render
+package dev.nucleusframework.nucleus.window.tao.render
import androidx.compose.ui.InternalComposeUiApi
import androidx.compose.ui.graphics.asComposeCanvas
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/MetalFrame.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/MetalFrame.kt
similarity index 92%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/MetalFrame.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/MetalFrame.kt
index 77a8ef14f..e2d10404d 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/MetalFrame.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/MetalFrame.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao.render
+package dev.nucleusframework.nucleus.window.tao.render
/**
* Output of `NativeMetalBridge.nativeBeginFrame`. Constructed from the ObjC
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/MetalSceneRenderer.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/MetalSceneRenderer.kt
similarity index 96%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/MetalSceneRenderer.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/MetalSceneRenderer.kt
index 5d03ce7fe..7520737e0 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/MetalSceneRenderer.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/MetalSceneRenderer.kt
@@ -1,9 +1,9 @@
-package io.github.kdroidfilter.nucleus.window.tao.render
+package dev.nucleusframework.nucleus.window.tao.render
import androidx.compose.ui.InternalComposeUiApi
import androidx.compose.ui.graphics.asComposeCanvas
import androidx.compose.ui.scene.ComposeScene
-import io.github.kdroidfilter.nucleus.window.tao.NativeMetalBridge
+import dev.nucleusframework.nucleus.window.tao.NativeMetalBridge
import org.jetbrains.skia.BackendRenderTarget
import org.jetbrains.skia.ColorSpace
import org.jetbrains.skia.DirectContext
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoComposeSceneContext.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoComposeSceneContext.kt
similarity index 96%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoComposeSceneContext.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoComposeSceneContext.kt
index 1a8a69ce7..9dda18ff7 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoComposeSceneContext.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoComposeSceneContext.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao.render
+package dev.nucleusframework.nucleus.window.tao.render
import androidx.compose.runtime.CompositionContext
import androidx.compose.ui.InternalComposeUiApi
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoComposeSceneContextWindows.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoComposeSceneContextWindows.kt
similarity index 95%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoComposeSceneContextWindows.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoComposeSceneContextWindows.kt
index 47f73b6b5..e716cc782 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoComposeSceneContextWindows.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoComposeSceneContextWindows.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao.render
+package dev.nucleusframework.nucleus.window.tao.render
import androidx.compose.runtime.CompositionContext
import androidx.compose.ui.InternalComposeUiApi
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoComposeSceneHost.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoComposeSceneHost.kt
similarity index 92%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoComposeSceneHost.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoComposeSceneHost.kt
index 22b1af5fc..68edc7eec 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoComposeSceneHost.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoComposeSceneHost.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao.render
+package dev.nucleusframework.nucleus.window.tao.render
import androidx.compose.runtime.BroadcastFrameClock
import androidx.compose.runtime.Composable
@@ -21,11 +21,11 @@ import androidx.compose.ui.input.pointer.PointerType
import androidx.compose.ui.platform.PlatformContext
import androidx.compose.ui.input.pointer.PointerId
import androidx.compose.ui.scene.ComposeScenePointer
-import io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon
-import io.github.kdroidfilter.nucleus.window.tao.TaoEventCode
-import io.github.kdroidfilter.nucleus.window.tao.TaoModifierMask
-import io.github.kdroidfilter.nucleus.window.tao.TaoTrackpadGesture
-import io.github.kdroidfilter.nucleus.window.tao.TaoTrackpadPhase
+import dev.nucleusframework.nucleus.window.tao.TaoCursorIcon
+import dev.nucleusframework.nucleus.window.tao.TaoEventCode
+import dev.nucleusframework.nucleus.window.tao.TaoModifierMask
+import dev.nucleusframework.nucleus.window.tao.TaoTrackpadGesture
+import dev.nucleusframework.nucleus.window.tao.TaoTrackpadPhase
import kotlin.math.cos
import kotlin.math.sin
import java.awt.Cursor
@@ -38,14 +38,14 @@ import androidx.compose.ui.unit.DpSize
import androidx.compose.ui.unit.IntSize
import androidx.compose.ui.unit.LayoutDirection
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.tao.MacOSStyle
-import io.github.kdroidfilter.nucleus.window.tao.NativeMetalBridge
-import io.github.kdroidfilter.nucleus.window.tao.NativeTaoBridge
-import io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsNativeViewBridge
-import io.github.kdroidfilter.nucleus.window.tao.TaoMainDispatcher
-import io.github.kdroidfilter.nucleus.window.tao.TaoNativeViewHost
-import io.github.kdroidfilter.nucleus.window.tao.TaoWindow
-import io.github.kdroidfilter.nucleus.window.tao.shouldApplyLargeCornerRadius
+import dev.nucleusframework.nucleus.window.tao.MacOSStyle
+import dev.nucleusframework.nucleus.window.tao.NativeMetalBridge
+import dev.nucleusframework.nucleus.window.tao.NativeTaoBridge
+import dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsNativeViewBridge
+import dev.nucleusframework.nucleus.window.tao.TaoMainDispatcher
+import dev.nucleusframework.nucleus.window.tao.TaoNativeViewHost
+import dev.nucleusframework.nucleus.window.tao.TaoWindow
+import dev.nucleusframework.nucleus.window.tao.shouldApplyLargeCornerRadius
import org.jetbrains.skia.DirectContext
import kotlin.coroutines.CoroutineContext
import kotlin.coroutines.EmptyCoroutineContext
@@ -245,7 +245,7 @@ internal class TaoComposeSceneHost(
// but the scene cannot be constructed before we hand it the
// PlatformContext that owns the manager. Resolve on each call.
@OptIn(androidx.compose.ui.ExperimentalComposeUiApi::class)
- val dndManager = io.github.kdroidfilter.nucleus.window.tao.TaoDragAndDropManager(
+ val dndManager = dev.nucleusframework.nucleus.window.tao.TaoDragAndDropManager(
getRootNode = { scene!!.rootDragAndDropNode },
outboundLauncher = ::launchMacOsOutboundDrag,
)
@@ -289,39 +289,39 @@ internal class TaoComposeSceneHost(
@OptIn(InternalComposeUiApi::class, androidx.compose.ui.ExperimentalComposeUiApi::class)
private fun launchMacOsOutboundDrag(
- request: io.github.kdroidfilter.nucleus.window.tao.TaoDragAndDropManager.OutboundRequest,
+ request: dev.nucleusframework.nucleus.window.tao.TaoDragAndDropManager.OutboundRequest,
): androidx.compose.ui.draganddrop.DragAndDropTransferAction? {
- if (!io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.isLoaded) return null
+ if (!dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.isLoaded) return null
if (nsViewHandle == 0L) return null
val allowed = request.supportedActions.fold(0) { acc, action ->
acc or when (action) {
androidx.compose.ui.draganddrop.DragAndDropTransferAction.Copy ->
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_COPY
+ dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_COPY
androidx.compose.ui.draganddrop.DragAndDropTransferAction.Move ->
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_MOVE
+ dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_MOVE
androidx.compose.ui.draganddrop.DragAndDropTransferAction.Link ->
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_LINK
+ dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_LINK
else -> 0
}
}.let { if (it == 0) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_COPY
+ dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_COPY
} else it }
val files = request.files.takeIf { it.isNotEmpty() }
?.map { it.absolutePath }?.toTypedArray()
- val effect = io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.nativeStartDrag(
+ val effect = dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.nativeStartDrag(
nsView = nsViewHandle,
files = files,
text = request.text,
allowedEffects = allowed,
)
return when (effect) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_COPY ->
+ dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_COPY ->
androidx.compose.ui.draganddrop.DragAndDropTransferAction.Copy
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_MOVE ->
+ dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_MOVE ->
androidx.compose.ui.draganddrop.DragAndDropTransferAction.Move
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_LINK ->
+ dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_LINK ->
androidx.compose.ui.draganddrop.DragAndDropTransferAction.Link
else -> null
}
@@ -329,18 +329,18 @@ internal class TaoComposeSceneHost(
@OptIn(InternalComposeUiApi::class, androidx.compose.ui.ExperimentalComposeUiApi::class)
private fun registerInboundDnD() {
- if (!io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.isLoaded) {
- io.github.kdroidfilter.nucleus.window.tao.TaoDnDDiagnostics.log(
+ if (!dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.isLoaded) {
+ dev.nucleusframework.nucleus.window.tao.TaoDnDDiagnostics.log(
"macOS DnD lib not loaded — inbound disabled",
)
return
}
val callback = InboundDnDCallback()
- val rc = io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.nativeRegister(
+ val rc = dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.nativeRegister(
nsView = nsViewHandle,
callback = callback,
)
- io.github.kdroidfilter.nucleus.window.tao.TaoDnDDiagnostics.log("registerForDraggedTypes rc=$rc")
+ dev.nucleusframework.nucleus.window.tao.TaoDnDDiagnostics.log("registerForDraggedTypes rc=$rc")
}
/**
@@ -350,7 +350,7 @@ internal class TaoComposeSceneHost(
*/
@OptIn(InternalComposeUiApi::class, androidx.compose.ui.ExperimentalComposeUiApi::class)
private inner class InboundDnDCallback :
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.Callback {
+ dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.Callback {
private fun rootNode() = scene?.rootDragAndDropNode
@@ -359,13 +359,13 @@ internal class TaoComposeSceneHost(
yPx: Int,
files: Array?,
): androidx.compose.ui.draganddrop.DragAndDropEvent {
- val payload = io.github.kdroidfilter.nucleus.window.tao.TaoDragAndDropPayload(
+ val payload = dev.nucleusframework.nucleus.window.tao.TaoDragAndDropPayload(
files = files?.toList() ?: emptyList(),
)
- val transferable = io.github.kdroidfilter.nucleus.window.tao.TaoFilesTransferable(
+ val transferable = dev.nucleusframework.nucleus.window.tao.TaoFilesTransferable(
files = payload.files.map { java.io.File(it) },
)
- val native = io.github.kdroidfilter.nucleus.window.tao.TaoSyntheticDragEvent(
+ val native = dev.nucleusframework.nucleus.window.tao.TaoSyntheticDragEvent(
cursorLocn = java.awt.Point(xPx, yPx),
dropAction = java.awt.dnd.DnDConstants.ACTION_COPY,
backingTransferable = transferable,
@@ -383,13 +383,13 @@ internal class TaoComposeSceneHost(
yPx: Int,
files: Array?,
): androidx.compose.ui.draganddrop.DragAndDropEvent {
- val payload = io.github.kdroidfilter.nucleus.window.tao.TaoDragAndDropPayload(
+ val payload = dev.nucleusframework.nucleus.window.tao.TaoDragAndDropPayload(
files = files?.toList() ?: emptyList(),
)
- val transferable = io.github.kdroidfilter.nucleus.window.tao.TaoFilesTransferable(
+ val transferable = dev.nucleusframework.nucleus.window.tao.TaoFilesTransferable(
files = payload.files.map { java.io.File(it) },
)
- val native = io.github.kdroidfilter.nucleus.window.tao.TaoSyntheticDropEvent(
+ val native = dev.nucleusframework.nucleus.window.tao.TaoSyntheticDropEvent(
cursorLocn = java.awt.Point(xPx, yPx),
dropAction = java.awt.dnd.DnDConstants.ACTION_COPY,
backingTransferable = transferable,
@@ -403,14 +403,14 @@ internal class TaoComposeSceneHost(
}
override fun onDragEnter(nsView: Long, x: Int, y: Int, modState: Int, hasFiles: Boolean): Int {
- io.github.kdroidfilter.nucleus.window.tao.TaoDnDDiagnostics.log(
+ dev.nucleusframework.nucleus.window.tao.TaoDnDDiagnostics.log(
"onDragEnter x=$x y=$y hasFiles=$hasFiles",
)
if (!hasFiles) {
- return io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_NONE
+ return dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_NONE
}
val node = rootNode()
- ?: return io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_NONE
+ ?: return dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_NONE
val ev = makeDragEvent(x, y, null)
val accepted = node.acceptDragAndDropTransfer(ev)
if (accepted) {
@@ -418,26 +418,26 @@ internal class TaoComposeSceneHost(
node.onEntered(ev)
}
return if (accepted) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_COPY
+ dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_COPY
} else {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_NONE
+ dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_NONE
}
}
override fun onDragOver(nsView: Long, x: Int, y: Int, modState: Int, hasFiles: Boolean): Int {
val node = rootNode()
- ?: return io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_NONE
+ ?: return dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_NONE
val ev = makeDragEvent(x, y, null)
node.onMoved(ev)
return if (node.hasEligibleDropTarget) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_COPY
+ dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_COPY
} else {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_NONE
+ dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_NONE
}
}
override fun onDragLeave(nsView: Long) {
- io.github.kdroidfilter.nucleus.window.tao.TaoDnDDiagnostics.log("onDragLeave")
+ dev.nucleusframework.nucleus.window.tao.TaoDnDDiagnostics.log("onDragLeave")
val node = rootNode() ?: return
val ev = makeDragEvent(-1, -1, null)
node.onExited(ev)
@@ -445,18 +445,18 @@ internal class TaoComposeSceneHost(
}
override fun onDrop(nsView: Long, x: Int, y: Int, modState: Int, files: Array?): Int {
- io.github.kdroidfilter.nucleus.window.tao.TaoDnDDiagnostics.log(
+ dev.nucleusframework.nucleus.window.tao.TaoDnDDiagnostics.log(
"onDrop x=$x y=$y files=${files?.size ?: 0}",
)
val node = rootNode()
- ?: return io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_NONE
+ ?: return dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_NONE
val ev = makeDropEvent(x, y, files)
val accepted = node.onDrop(ev)
node.onEnded(ev)
return if (accepted) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_COPY
+ dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_COPY
} else {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_NONE
+ dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.DROP_EFFECT_NONE
}
}
}
@@ -1046,8 +1046,8 @@ internal class TaoComposeSceneHost(
attachmentHandle = 0L
}
if (nsViewHandle != 0L) {
- if (io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.isLoaded) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge.nativeRevoke(nsViewHandle)
+ if (dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.isLoaded) {
+ dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge.nativeRevoke(nsViewHandle)
}
nsViewHandle = 0L
}
@@ -1089,11 +1089,11 @@ internal class TaoComposeSceneHost(
private fun mapButton(code: Int): androidx.compose.ui.input.pointer.PointerButton {
// Compose's PointerButton has Primary/Secondary/Tertiary plus generic indices.
return when (code) {
- io.github.kdroidfilter.nucleus.window.tao.TaoMouseButton.LEFT ->
+ dev.nucleusframework.nucleus.window.tao.TaoMouseButton.LEFT ->
androidx.compose.ui.input.pointer.PointerButton.Primary
- io.github.kdroidfilter.nucleus.window.tao.TaoMouseButton.RIGHT ->
+ dev.nucleusframework.nucleus.window.tao.TaoMouseButton.RIGHT ->
androidx.compose.ui.input.pointer.PointerButton.Secondary
- io.github.kdroidfilter.nucleus.window.tao.TaoMouseButton.MIDDLE ->
+ dev.nucleusframework.nucleus.window.tao.TaoMouseButton.MIDDLE ->
androidx.compose.ui.input.pointer.PointerButton.Tertiary
else -> androidx.compose.ui.input.pointer.PointerButton.Primary
}
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoComposeSceneHostLinux.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoComposeSceneHostLinux.kt
similarity index 90%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoComposeSceneHostLinux.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoComposeSceneHostLinux.kt
index b54ad2181..9b7c85746 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoComposeSceneHostLinux.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoComposeSceneHostLinux.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao.render
+package dev.nucleusframework.nucleus.window.tao.render
import androidx.compose.runtime.BroadcastFrameClock
import androidx.compose.runtime.Composable
@@ -22,16 +22,16 @@ import androidx.compose.ui.unit.DpSize
import androidx.compose.ui.unit.IntSize
import androidx.compose.ui.unit.LayoutDirection
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.core.runtime.LinuxDesktopEnvironment
-import io.github.kdroidfilter.nucleus.window.tao.NativeTaoBridge
-import io.github.kdroidfilter.nucleus.window.tao.NativeTaoEglBridge
-import io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxTouchBridge
-import io.github.kdroidfilter.nucleus.window.tao.TaoEventCode
-import io.github.kdroidfilter.nucleus.window.tao.TaoModifierMask
-import io.github.kdroidfilter.nucleus.window.tao.TaoTouchEvent
-import io.github.kdroidfilter.nucleus.window.tao.TaoTrackpadGesture
-import io.github.kdroidfilter.nucleus.window.tao.TaoTrackpadPhase
-import io.github.kdroidfilter.nucleus.window.tao.TaoWindow
+import dev.nucleusframework.nucleus.core.runtime.LinuxDesktopEnvironment
+import dev.nucleusframework.nucleus.window.tao.NativeTaoBridge
+import dev.nucleusframework.nucleus.window.tao.NativeTaoEglBridge
+import dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxTouchBridge
+import dev.nucleusframework.nucleus.window.tao.TaoEventCode
+import dev.nucleusframework.nucleus.window.tao.TaoModifierMask
+import dev.nucleusframework.nucleus.window.tao.TaoTouchEvent
+import dev.nucleusframework.nucleus.window.tao.TaoTrackpadGesture
+import dev.nucleusframework.nucleus.window.tao.TaoTrackpadPhase
+import dev.nucleusframework.nucleus.window.tao.TaoWindow
import kotlinx.coroutines.CoroutineDispatcher
import org.jetbrains.skia.BackendRenderTarget
import org.jetbrains.skia.BlendMode
@@ -253,7 +253,7 @@ internal class TaoComposeSceneHostLinux(
@OptIn(androidx.compose.ui.ExperimentalComposeUiApi::class)
val dndManager =
- io.github.kdroidfilter.nucleus.window.tao.TaoDragAndDropManager(
+ dev.nucleusframework.nucleus.window.tao.TaoDragAndDropManager(
getRootNode = { scene!!.rootDragAndDropNode },
outboundLauncher = ::launchLinuxOutboundDrag,
)
@@ -281,9 +281,9 @@ internal class TaoComposeSceneHostLinux(
@OptIn(InternalComposeUiApi::class, androidx.compose.ui.ExperimentalComposeUiApi::class)
private fun launchLinuxOutboundDrag(
- request: io.github.kdroidfilter.nucleus.window.tao.TaoDragAndDropManager.OutboundRequest,
+ request: dev.nucleusframework.nucleus.window.tao.TaoDragAndDropManager.OutboundRequest,
): androidx.compose.ui.draganddrop.DragAndDropTransferAction? {
- if (!io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.isLoaded) return null
+ if (!dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.isLoaded) return null
if (window.handle == 0L) return null
val allowed =
@@ -292,16 +292,16 @@ internal class TaoComposeSceneHostLinux(
acc or
when (action) {
androidx.compose.ui.draganddrop.DragAndDropTransferAction.Copy ->
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_COPY
+ dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_COPY
androidx.compose.ui.draganddrop.DragAndDropTransferAction.Move ->
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_MOVE
+ dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_MOVE
androidx.compose.ui.draganddrop.DragAndDropTransferAction.Link ->
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_LINK
+ dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_LINK
else -> 0
}
}.let {
if (it == 0) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_COPY
+ dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_COPY
} else {
it
}
@@ -313,18 +313,18 @@ internal class TaoComposeSceneHostLinux(
?.map { it.absolutePath }
?.toTypedArray()
val effect =
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.nativeStartDrag(
+ dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.nativeStartDrag(
handle = window.handle,
files = files,
text = request.text,
allowedEffects = allowed,
)
return when (effect) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_COPY ->
+ dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_COPY ->
androidx.compose.ui.draganddrop.DragAndDropTransferAction.Copy
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_MOVE ->
+ dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_MOVE ->
androidx.compose.ui.draganddrop.DragAndDropTransferAction.Move
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_LINK ->
+ dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_LINK ->
androidx.compose.ui.draganddrop.DragAndDropTransferAction.Link
else -> null
}
@@ -332,9 +332,9 @@ internal class TaoComposeSceneHostLinux(
@OptIn(InternalComposeUiApi::class, androidx.compose.ui.ExperimentalComposeUiApi::class)
private fun registerInboundDnD() {
- if (!io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.isLoaded) return
+ if (!dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.isLoaded) return
val callback = InboundDnDCallback()
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge
+ dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge
.nativeRegister(window.handle, callback)
}
@@ -345,7 +345,7 @@ internal class TaoComposeSceneHostLinux(
*/
@OptIn(InternalComposeUiApi::class, androidx.compose.ui.ExperimentalComposeUiApi::class)
private inner class InboundDnDCallback :
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.Callback {
+ dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.Callback {
private fun rootNode() = scene?.rootDragAndDropNode
// Coordinates from native are already in physical pixels (post
@@ -357,15 +357,15 @@ internal class TaoComposeSceneHostLinux(
files: Array?,
): androidx.compose.ui.draganddrop.DragAndDropEvent {
val payload =
- io.github.kdroidfilter.nucleus.window.tao.TaoDragAndDropPayload(
+ dev.nucleusframework.nucleus.window.tao.TaoDragAndDropPayload(
files = files?.toList() ?: emptyList(),
)
val transferable =
- io.github.kdroidfilter.nucleus.window.tao.TaoFilesTransferable(
+ dev.nucleusframework.nucleus.window.tao.TaoFilesTransferable(
files = payload.files.map { java.io.File(it) },
)
val native =
- io.github.kdroidfilter.nucleus.window.tao.TaoSyntheticDragEvent(
+ dev.nucleusframework.nucleus.window.tao.TaoSyntheticDragEvent(
cursorLocn = java.awt.Point(xPx, yPx),
dropAction = java.awt.dnd.DnDConstants.ACTION_COPY,
backingTransferable = transferable,
@@ -386,15 +386,15 @@ internal class TaoComposeSceneHostLinux(
files: Array?,
): androidx.compose.ui.draganddrop.DragAndDropEvent {
val payload =
- io.github.kdroidfilter.nucleus.window.tao.TaoDragAndDropPayload(
+ dev.nucleusframework.nucleus.window.tao.TaoDragAndDropPayload(
files = files?.toList() ?: emptyList(),
)
val transferable =
- io.github.kdroidfilter.nucleus.window.tao.TaoFilesTransferable(
+ dev.nucleusframework.nucleus.window.tao.TaoFilesTransferable(
files = payload.files.map { java.io.File(it) },
)
val native =
- io.github.kdroidfilter.nucleus.window.tao.TaoSyntheticDropEvent(
+ dev.nucleusframework.nucleus.window.tao.TaoSyntheticDropEvent(
cursorLocn = java.awt.Point(xPx, yPx),
dropAction = java.awt.dnd.DnDConstants.ACTION_COPY,
backingTransferable = transferable,
@@ -418,7 +418,7 @@ internal class TaoComposeSceneHostLinux(
): Int {
val node =
rootNode()
- ?: return io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_NONE
+ ?: return dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_NONE
val ev = makeDragEvent(x, y, null)
val accepted = node.acceptDragAndDropTransfer(ev)
if (accepted) {
@@ -426,9 +426,9 @@ internal class TaoComposeSceneHostLinux(
node.onEntered(ev)
}
return if (accepted) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_COPY
+ dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_COPY
} else {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_NONE
+ dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_NONE
}
}
@@ -441,13 +441,13 @@ internal class TaoComposeSceneHostLinux(
): Int {
val node =
rootNode()
- ?: return io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_NONE
+ ?: return dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_NONE
val ev = makeDragEvent(x, y, null)
node.onMoved(ev)
return if (node.hasEligibleDropTarget) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_COPY
+ dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_COPY
} else {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_NONE
+ dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_NONE
}
}
@@ -467,14 +467,14 @@ internal class TaoComposeSceneHostLinux(
): Int {
val node =
rootNode()
- ?: return io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_NONE
+ ?: return dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_NONE
val ev = makeDropEvent(x, y, files)
val accepted = node.onDrop(ev)
node.onEnded(ev)
return if (accepted) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_COPY
+ dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_COPY
} else {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_NONE
+ dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.DROP_EFFECT_NONE
}
}
}
@@ -1035,21 +1035,21 @@ internal class TaoComposeSceneHostLinux(
* library is available (missing on non-Linux builds and on Linux
* builds that didn't ship the .so).
*/
- fun nativeViewHost(): io.github.kdroidfilter.nucleus.window.tao.TaoNativeViewHost? {
+ fun nativeViewHost(): dev.nucleusframework.nucleus.window.tao.TaoNativeViewHost? {
if (window.handle == 0L) return null
- if (!io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxWidgetBridge.isLoaded) return null
- val gtkWindow = io.github.kdroidfilter.nucleus.window.tao.NativeTaoBridge
+ if (!dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxWidgetBridge.isLoaded) return null
+ val gtkWindow = dev.nucleusframework.nucleus.window.tao.NativeTaoBridge
.nativeLinuxGtkWindow(window.handle)
if (gtkWindow == 0L) return null
val outer = this
- return object : io.github.kdroidfilter.nucleus.window.tao.TaoNativeViewHost {
+ return object : dev.nucleusframework.nucleus.window.tao.TaoNativeViewHost {
override fun attach(childHandle: Long) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxWidgetBridge
+ dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxWidgetBridge
.nativeAttach(gtkWindow, childHandle)
}
override fun detach(childHandle: Long) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxWidgetBridge
+ dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxWidgetBridge
.nativeDetach(childHandle)
}
@@ -1062,7 +1062,7 @@ internal class TaoComposeSceneHostLinux(
val yLogical = (yPx / s).toInt()
val wLogical = (widthPx / s).toInt().coerceAtLeast(1)
val hLogical = (heightPx / s).toInt().coerceAtLeast(1)
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxWidgetBridge
+ dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxWidgetBridge
.nativeSetFrame(gtkWindow, handle, xLogical, yLogical, wLogical, hLogical)
}
@@ -1080,7 +1080,7 @@ internal class TaoComposeSceneHostLinux(
/**
* Plumbing for the overlay slot of `NativeView` on Linux. Returns
* a freshly-created controller bound to this host's EGL
- * attachment so [io.github.kdroidfilter.nucleus.window.tao.consumeOverlayPointerEvents]
+ * attachment so [dev.nucleusframework.nucleus.window.tao.consumeOverlayPointerEvents]
* modifiers in the `content` lambda can register their bounds and
* have the EGL surface's input region updated accordingly.
*
@@ -1095,7 +1095,7 @@ internal class TaoComposeSceneHostLinux(
// yet at host construction time.
gtkWindowProvider = {
if (window.handle == 0L) 0L
- else io.github.kdroidfilter.nucleus.window.tao.NativeTaoBridge
+ else dev.nucleusframework.nucleus.window.tao.NativeTaoBridge
.nativeLinuxGtkWindow(window.handle)
},
scaleProvider = { scale },
@@ -1162,10 +1162,10 @@ internal class TaoComposeSceneHostLinux(
}
fun detach() {
- if (io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge.isLoaded &&
+ if (dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge.isLoaded &&
window.handle != 0L
) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge
+ dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge
.nativeRevoke(window.handle)
}
if (NativeTaoLinuxTouchBridge.isLoaded && window.handle != 0L) {
@@ -1375,11 +1375,11 @@ internal class TaoComposeSceneHostLinux(
private fun mapButton(code: Int): androidx.compose.ui.input.pointer.PointerButton =
when (code) {
- io.github.kdroidfilter.nucleus.window.tao.TaoMouseButton.LEFT ->
+ dev.nucleusframework.nucleus.window.tao.TaoMouseButton.LEFT ->
androidx.compose.ui.input.pointer.PointerButton.Primary
- io.github.kdroidfilter.nucleus.window.tao.TaoMouseButton.RIGHT ->
+ dev.nucleusframework.nucleus.window.tao.TaoMouseButton.RIGHT ->
androidx.compose.ui.input.pointer.PointerButton.Secondary
- io.github.kdroidfilter.nucleus.window.tao.TaoMouseButton.MIDDLE ->
+ dev.nucleusframework.nucleus.window.tao.TaoMouseButton.MIDDLE ->
androidx.compose.ui.input.pointer.PointerButton.Tertiary
else -> androidx.compose.ui.input.pointer.PointerButton.Primary
}
@@ -1418,32 +1418,32 @@ private class LinuxTaoPlatformContext(
private fun mapPointerIcon(icon: androidx.compose.ui.input.pointer.PointerIcon): Int {
when {
icon === androidx.compose.ui.input.pointer.PointerIcon.Default ->
- return io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.DEFAULT
+ return dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.DEFAULT
icon === androidx.compose.ui.input.pointer.PointerIcon.Text ->
- return io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.TEXT
+ return dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.TEXT
icon === androidx.compose.ui.input.pointer.PointerIcon.Hand ->
- return io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.HAND
+ return dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.HAND
icon === androidx.compose.ui.input.pointer.PointerIcon.Crosshair ->
- return io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.CROSSHAIR
+ return dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.CROSSHAIR
}
return runCatching {
val cursor = icon.javaClass.getMethod("getCursor").invoke(icon) as? java.awt.Cursor
when (cursor?.type) {
- java.awt.Cursor.TEXT_CURSOR -> io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.TEXT
- java.awt.Cursor.HAND_CURSOR -> io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.HAND
- java.awt.Cursor.CROSSHAIR_CURSOR -> io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.CROSSHAIR
- java.awt.Cursor.WAIT_CURSOR -> io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.WAIT
- java.awt.Cursor.MOVE_CURSOR -> io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.MOVE
+ java.awt.Cursor.TEXT_CURSOR -> dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.TEXT
+ java.awt.Cursor.HAND_CURSOR -> dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.HAND
+ java.awt.Cursor.CROSSHAIR_CURSOR -> dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.CROSSHAIR
+ java.awt.Cursor.WAIT_CURSOR -> dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.WAIT
+ java.awt.Cursor.MOVE_CURSOR -> dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.MOVE
java.awt.Cursor.E_RESIZE_CURSOR, java.awt.Cursor.W_RESIZE_CURSOR ->
- io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.EW_RESIZE
+ dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.EW_RESIZE
java.awt.Cursor.N_RESIZE_CURSOR, java.awt.Cursor.S_RESIZE_CURSOR ->
- io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.NS_RESIZE
+ dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.NS_RESIZE
java.awt.Cursor.NE_RESIZE_CURSOR, java.awt.Cursor.SW_RESIZE_CURSOR ->
- io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.NESW_RESIZE
+ dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.NESW_RESIZE
java.awt.Cursor.NW_RESIZE_CURSOR, java.awt.Cursor.SE_RESIZE_CURSOR ->
- io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.NWSE_RESIZE
- else -> io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.DEFAULT
+ dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.NWSE_RESIZE
+ else -> dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.DEFAULT
}
- }.getOrDefault(io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.DEFAULT)
+ }.getOrDefault(dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.DEFAULT)
}
}
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoComposeSceneHostWindows.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoComposeSceneHostWindows.kt
similarity index 86%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoComposeSceneHostWindows.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoComposeSceneHostWindows.kt
index 998a12c74..4d382947f 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoComposeSceneHostWindows.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoComposeSceneHostWindows.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao.render
+package dev.nucleusframework.nucleus.window.tao.render
import androidx.compose.runtime.BroadcastFrameClock
import androidx.compose.runtime.Composable
@@ -23,13 +23,13 @@ import androidx.compose.ui.unit.DpSize
import androidx.compose.ui.unit.IntSize
import androidx.compose.ui.unit.LayoutDirection
import androidx.compose.ui.unit.dp
-import io.github.kdroidfilter.nucleus.window.tao.NativeTaoBridge
-import io.github.kdroidfilter.nucleus.window.tao.NativeTaoGlBridge
-import io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDecoBridge
-import io.github.kdroidfilter.nucleus.window.tao.TaoEventCode
-import io.github.kdroidfilter.nucleus.window.tao.TaoModifierMask
-import io.github.kdroidfilter.nucleus.window.tao.TaoTouchEvent
-import io.github.kdroidfilter.nucleus.window.tao.TaoWindow
+import dev.nucleusframework.nucleus.window.tao.NativeTaoBridge
+import dev.nucleusframework.nucleus.window.tao.NativeTaoGlBridge
+import dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDecoBridge
+import dev.nucleusframework.nucleus.window.tao.TaoEventCode
+import dev.nucleusframework.nucleus.window.tao.TaoModifierMask
+import dev.nucleusframework.nucleus.window.tao.TaoTouchEvent
+import dev.nucleusframework.nucleus.window.tao.TaoWindow
import kotlinx.coroutines.CoroutineDispatcher
import org.jetbrains.skia.BackendRenderTarget
import org.jetbrains.skia.ColorSpace
@@ -171,7 +171,7 @@ internal class TaoComposeSceneHostWindows(
@OptIn(androidx.compose.ui.ExperimentalComposeUiApi::class)
val dndManager =
- io.github.kdroidfilter.nucleus.window.tao.TaoDragAndDropManager(
+ dev.nucleusframework.nucleus.window.tao.TaoDragAndDropManager(
getRootNode = { scene!!.rootDragAndDropNode },
outboundLauncher = ::launchWindowsOutboundDrag,
)
@@ -351,9 +351,9 @@ internal class TaoComposeSceneHostWindows(
@OptIn(InternalComposeUiApi::class, androidx.compose.ui.ExperimentalComposeUiApi::class)
private fun launchWindowsOutboundDrag(
- request: io.github.kdroidfilter.nucleus.window.tao.TaoDragAndDropManager.OutboundRequest,
+ request: dev.nucleusframework.nucleus.window.tao.TaoDragAndDropManager.OutboundRequest,
): androidx.compose.ui.draganddrop.DragAndDropTransferAction? {
- if (!io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.isLoaded) return null
+ if (!dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.isLoaded) return null
if (hwnd == 0L) return null
val allowed =
@@ -362,16 +362,16 @@ internal class TaoComposeSceneHostWindows(
acc or
when (action) {
androidx.compose.ui.draganddrop.DragAndDropTransferAction.Copy ->
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_COPY
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_COPY
androidx.compose.ui.draganddrop.DragAndDropTransferAction.Move ->
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_MOVE
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_MOVE
androidx.compose.ui.draganddrop.DragAndDropTransferAction.Link ->
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_LINK
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_LINK
else -> 0
}
}.let {
if (it == 0) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_COPY
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_COPY
} else {
it
}
@@ -383,18 +383,18 @@ internal class TaoComposeSceneHostWindows(
?.map { it.absolutePath }
?.toTypedArray()
val effect =
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.nativeStartDrag(
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.nativeStartDrag(
hwnd = hwnd,
files = files,
text = request.text,
allowedEffects = allowed,
)
return when (effect) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_COPY ->
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_COPY ->
androidx.compose.ui.draganddrop.DragAndDropTransferAction.Copy
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_MOVE ->
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_MOVE ->
androidx.compose.ui.draganddrop.DragAndDropTransferAction.Move
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_LINK ->
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_LINK ->
androidx.compose.ui.draganddrop.DragAndDropTransferAction.Link
else -> null
}
@@ -402,17 +402,17 @@ internal class TaoComposeSceneHostWindows(
@OptIn(InternalComposeUiApi::class, androidx.compose.ui.ExperimentalComposeUiApi::class)
private fun registerInboundDnD() {
- if (!io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.isLoaded) {
- io.github.kdroidfilter.nucleus.window.tao.TaoDnDDiagnostics.log(
+ if (!dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.isLoaded) {
+ dev.nucleusframework.nucleus.window.tao.TaoDnDDiagnostics.log(
"windows DnD lib not loaded — inbound disabled",
)
return
}
val callback = InboundDnDCallback()
val rc =
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge
.nativeRegister(hwnd, callback)
- io.github.kdroidfilter.nucleus.window.tao.TaoDnDDiagnostics
+ dev.nucleusframework.nucleus.window.tao.TaoDnDDiagnostics
.log("RegisterDragDrop rc=$rc")
}
@@ -423,7 +423,7 @@ internal class TaoComposeSceneHostWindows(
*/
@OptIn(InternalComposeUiApi::class, androidx.compose.ui.ExperimentalComposeUiApi::class)
private inner class InboundDnDCallback :
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.Callback {
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.Callback {
private fun rootNode() = scene?.rootDragAndDropNode
private fun makeDragEvent(
@@ -432,15 +432,15 @@ internal class TaoComposeSceneHostWindows(
files: Array?,
): androidx.compose.ui.draganddrop.DragAndDropEvent {
val payload =
- io.github.kdroidfilter.nucleus.window.tao.TaoDragAndDropPayload(
+ dev.nucleusframework.nucleus.window.tao.TaoDragAndDropPayload(
files = files?.toList() ?: emptyList(),
)
val transferable =
- io.github.kdroidfilter.nucleus.window.tao.TaoFilesTransferable(
+ dev.nucleusframework.nucleus.window.tao.TaoFilesTransferable(
files = payload.files.map { java.io.File(it) },
)
val native =
- io.github.kdroidfilter.nucleus.window.tao.TaoSyntheticDragEvent(
+ dev.nucleusframework.nucleus.window.tao.TaoSyntheticDragEvent(
cursorLocn = java.awt.Point(xPx, yPx),
dropAction = java.awt.dnd.DnDConstants.ACTION_COPY,
backingTransferable = transferable,
@@ -461,15 +461,15 @@ internal class TaoComposeSceneHostWindows(
files: Array?,
): androidx.compose.ui.draganddrop.DragAndDropEvent {
val payload =
- io.github.kdroidfilter.nucleus.window.tao.TaoDragAndDropPayload(
+ dev.nucleusframework.nucleus.window.tao.TaoDragAndDropPayload(
files = files?.toList() ?: emptyList(),
)
val transferable =
- io.github.kdroidfilter.nucleus.window.tao.TaoFilesTransferable(
+ dev.nucleusframework.nucleus.window.tao.TaoFilesTransferable(
files = payload.files.map { java.io.File(it) },
)
val native =
- io.github.kdroidfilter.nucleus.window.tao.TaoSyntheticDropEvent(
+ dev.nucleusframework.nucleus.window.tao.TaoSyntheticDropEvent(
cursorLocn = java.awt.Point(xPx, yPx),
dropAction = java.awt.dnd.DnDConstants.ACTION_COPY,
backingTransferable = transferable,
@@ -491,15 +491,15 @@ internal class TaoComposeSceneHostWindows(
keyState: Int,
hasFiles: Boolean,
): Int {
- io.github.kdroidfilter.nucleus.window.tao.TaoDnDDiagnostics.log(
+ dev.nucleusframework.nucleus.window.tao.TaoDnDDiagnostics.log(
"onDragEnter x=$x y=$y hasFiles=$hasFiles",
)
if (!hasFiles) {
- return io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_NONE
+ return dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_NONE
}
val node =
rootNode()
- ?: return io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_NONE
+ ?: return dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_NONE
val ev = makeDragEvent(x, y, null)
val accepted = node.acceptDragAndDropTransfer(ev)
if (accepted) {
@@ -507,9 +507,9 @@ internal class TaoComposeSceneHostWindows(
node.onEntered(ev)
}
return if (accepted) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_COPY
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_COPY
} else {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_NONE
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_NONE
}
}
@@ -522,18 +522,18 @@ internal class TaoComposeSceneHostWindows(
): Int {
val node =
rootNode()
- ?: return io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_NONE
+ ?: return dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_NONE
val ev = makeDragEvent(x, y, null)
node.onMoved(ev)
return if (node.hasEligibleDropTarget) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_COPY
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_COPY
} else {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_NONE
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_NONE
}
}
override fun onDragLeave(hwnd: Long) {
- io.github.kdroidfilter.nucleus.window.tao.TaoDnDDiagnostics
+ dev.nucleusframework.nucleus.window.tao.TaoDnDDiagnostics
.log("onDragLeave")
val node = rootNode() ?: return
val ev = makeDragEvent(-1, -1, null)
@@ -548,19 +548,19 @@ internal class TaoComposeSceneHostWindows(
keyState: Int,
files: Array?,
): Int {
- io.github.kdroidfilter.nucleus.window.tao.TaoDnDDiagnostics.log(
+ dev.nucleusframework.nucleus.window.tao.TaoDnDDiagnostics.log(
"onDrop x=$x y=$y files=${files?.size ?: 0}",
)
val node =
rootNode()
- ?: return io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_NONE
+ ?: return dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_NONE
val ev = makeDropEvent(x, y, files)
val accepted = node.onDrop(ev)
node.onEnded(ev)
return if (accepted) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_COPY
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_COPY
} else {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_NONE
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.DROP_EFFECT_NONE
}
}
}
@@ -894,25 +894,25 @@ internal class TaoComposeSceneHostWindows(
for (cb in ownerMoveListeners.values.toList()) cb()
}
- fun nativeViewHost(): io.github.kdroidfilter.nucleus.window.tao.TaoNativeViewHost? {
+ fun nativeViewHost(): dev.nucleusframework.nucleus.window.tao.TaoNativeViewHost? {
if (hwnd == 0L) return null
- if (!io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsNativeViewBridge.isLoaded) return null
+ if (!dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsNativeViewBridge.isLoaded) return null
val parent = hwnd
- return object : io.github.kdroidfilter.nucleus.window.tao.TaoNativeViewHost {
+ return object : dev.nucleusframework.nucleus.window.tao.TaoNativeViewHost {
override fun attach(childHandle: Long) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsNativeViewBridge
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsNativeViewBridge
.nativeAttach(parent, childHandle)
}
override fun detach(childHandle: Long) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsNativeViewBridge
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsNativeViewBridge
.nativeDetach(childHandle)
}
override fun setFrame(handle: Long, xPx: Int, yPx: Int, widthPx: Int, heightPx: Int) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsNativeViewBridge
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsNativeViewBridge
.nativeSetFrame(parent, handle, xPx, yPx, widthPx, heightPx)
}
override fun setCornerRadius(handle: Long, radiusPx: Float) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsNativeViewBridge
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsNativeViewBridge
.nativeSetCornerRadius(parent, handle, radiusPx)
}
}
@@ -949,8 +949,8 @@ internal class TaoComposeSceneHostWindows(
attachmentHandle = 0L
}
if (hwnd != 0L) {
- if (io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge.isLoaded) {
- io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge
+ if (dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge.isLoaded) {
+ dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge
.nativeRevoke(hwnd)
}
NativeTaoWindowsDecoBridge.nativeUninstallDecoration(hwnd)
@@ -993,11 +993,11 @@ internal class TaoComposeSceneHostWindows(
private fun mapButton(code: Int): androidx.compose.ui.input.pointer.PointerButton =
when (code) {
- io.github.kdroidfilter.nucleus.window.tao.TaoMouseButton.LEFT ->
+ dev.nucleusframework.nucleus.window.tao.TaoMouseButton.LEFT ->
androidx.compose.ui.input.pointer.PointerButton.Primary
- io.github.kdroidfilter.nucleus.window.tao.TaoMouseButton.RIGHT ->
+ dev.nucleusframework.nucleus.window.tao.TaoMouseButton.RIGHT ->
androidx.compose.ui.input.pointer.PointerButton.Secondary
- io.github.kdroidfilter.nucleus.window.tao.TaoMouseButton.MIDDLE ->
+ dev.nucleusframework.nucleus.window.tao.TaoMouseButton.MIDDLE ->
androidx.compose.ui.input.pointer.PointerButton.Tertiary
else -> androidx.compose.ui.input.pointer.PointerButton.Primary
}
@@ -1035,32 +1035,32 @@ private class WindowsTaoPlatformContext(
private fun mapPointerIcon(icon: androidx.compose.ui.input.pointer.PointerIcon): Int {
when {
icon === androidx.compose.ui.input.pointer.PointerIcon.Default ->
- return io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.DEFAULT
+ return dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.DEFAULT
icon === androidx.compose.ui.input.pointer.PointerIcon.Text ->
- return io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.TEXT
+ return dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.TEXT
icon === androidx.compose.ui.input.pointer.PointerIcon.Hand ->
- return io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.HAND
+ return dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.HAND
icon === androidx.compose.ui.input.pointer.PointerIcon.Crosshair ->
- return io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.CROSSHAIR
+ return dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.CROSSHAIR
}
return runCatching {
val cursor = icon.javaClass.getMethod("getCursor").invoke(icon) as? java.awt.Cursor
when (cursor?.type) {
- java.awt.Cursor.TEXT_CURSOR -> io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.TEXT
- java.awt.Cursor.HAND_CURSOR -> io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.HAND
- java.awt.Cursor.CROSSHAIR_CURSOR -> io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.CROSSHAIR
- java.awt.Cursor.WAIT_CURSOR -> io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.WAIT
- java.awt.Cursor.MOVE_CURSOR -> io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.MOVE
+ java.awt.Cursor.TEXT_CURSOR -> dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.TEXT
+ java.awt.Cursor.HAND_CURSOR -> dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.HAND
+ java.awt.Cursor.CROSSHAIR_CURSOR -> dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.CROSSHAIR
+ java.awt.Cursor.WAIT_CURSOR -> dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.WAIT
+ java.awt.Cursor.MOVE_CURSOR -> dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.MOVE
java.awt.Cursor.E_RESIZE_CURSOR, java.awt.Cursor.W_RESIZE_CURSOR ->
- io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.EW_RESIZE
+ dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.EW_RESIZE
java.awt.Cursor.N_RESIZE_CURSOR, java.awt.Cursor.S_RESIZE_CURSOR ->
- io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.NS_RESIZE
+ dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.NS_RESIZE
java.awt.Cursor.NE_RESIZE_CURSOR, java.awt.Cursor.SW_RESIZE_CURSOR ->
- io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.NESW_RESIZE
+ dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.NESW_RESIZE
java.awt.Cursor.NW_RESIZE_CURSOR, java.awt.Cursor.SE_RESIZE_CURSOR ->
- io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.NWSE_RESIZE
- else -> io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.DEFAULT
+ dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.NWSE_RESIZE
+ else -> dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.DEFAULT
}
- }.getOrDefault(io.github.kdroidfilter.nucleus.window.tao.TaoCursorIcon.DEFAULT)
+ }.getOrDefault(dev.nucleusframework.nucleus.window.tao.TaoCursorIcon.DEFAULT)
}
}
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoInteropTransaction.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoInteropTransaction.kt
similarity index 96%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoInteropTransaction.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoInteropTransaction.kt
index 1fb74ff10..b1e37f69e 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoInteropTransaction.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoInteropTransaction.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao.render
+package dev.nucleusframework.nucleus.window.tao.render
/**
* Mirrors `UIKitInteropTransaction` from Compose Multiplatform iOS.
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoLinuxOverlayController.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoLinuxOverlayController.kt
similarity index 97%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoLinuxOverlayController.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoLinuxOverlayController.kt
index f86e2fcf1..dd1265668 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoLinuxOverlayController.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoLinuxOverlayController.kt
@@ -1,9 +1,9 @@
-package io.github.kdroidfilter.nucleus.window.tao.render
+package dev.nucleusframework.nucleus.window.tao.render
import androidx.compose.runtime.compositionLocalOf
import androidx.compose.ui.unit.IntSize
-import io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxWidgetBridge
-import io.github.kdroidfilter.nucleus.window.tao.TaoMouseButton
+import dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxWidgetBridge
+import dev.nucleusframework.nucleus.window.tao.TaoMouseButton
/**
* Linux-only counterpart of macOS's `NativeViewOverlayController` —
@@ -16,7 +16,7 @@ import io.github.kdroidfilter.nucleus.window.tao.TaoMouseButton
* which is exactly what we want for non-interactive overlay pixels.
*
* For *interactive* overlay regions (a `BasicTextField`, a `Button`,
- * etc., wrapped with [io.github.kdroidfilter.nucleus.window.tao.consumeOverlayPointerEvents])
+ * etc., wrapped with [dev.nucleusframework.nucleus.window.tao.consumeOverlayPointerEvents])
* we materialise an invisible `GtkEventBox` inside Tao's GtkOverlay,
* positioned at the rect Compose reported. Clicks in the rect hit
* the EventBox first (it's stacked above the embedded widget in
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoNativeWireFormat.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoNativeWireFormat.kt
similarity index 94%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoNativeWireFormat.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoNativeWireFormat.kt
index 9485f2e0a..84aec4f1e 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoNativeWireFormat.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoNativeWireFormat.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao.render
+package dev.nucleusframework.nucleus.window.tao.render
/**
* Wire-format codes shared between the Kotlin side and the native
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoPopupHost.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoPopupHost.kt
similarity index 97%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoPopupHost.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoPopupHost.kt
index 38890e160..63b22674e 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoPopupHost.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoPopupHost.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao.render
+package dev.nucleusframework.nucleus.window.tao.render
import androidx.compose.runtime.ProvidableCompositionLocal
import androidx.compose.runtime.compositionLocalOf
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoPopupHostWindows.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoPopupHostWindows.kt
similarity index 98%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoPopupHostWindows.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoPopupHostWindows.kt
index 979260ebb..aec3f2681 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoPopupHostWindows.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoPopupHostWindows.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao.render
+package dev.nucleusframework.nucleus.window.tao.render
import androidx.compose.runtime.ProvidableCompositionLocal
import androidx.compose.runtime.compositionLocalOf
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoPopupSceneLayer.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoPopupSceneLayer.kt
similarity index 98%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoPopupSceneLayer.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoPopupSceneLayer.kt
index 88993a135..2bca0d771 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoPopupSceneLayer.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoPopupSceneLayer.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao.render
+package dev.nucleusframework.nucleus.window.tao.render
import androidx.compose.runtime.Composable
import androidx.compose.runtime.CompositionContext
@@ -22,8 +22,8 @@ import androidx.compose.ui.unit.IntOffset
import androidx.compose.ui.unit.IntRect
import androidx.compose.ui.unit.IntSize
import androidx.compose.ui.unit.LayoutDirection
-import io.github.kdroidfilter.nucleus.window.tao.NativeMetalBridge
-import io.github.kdroidfilter.nucleus.window.tao.PopupNativeBridge
+import dev.nucleusframework.nucleus.window.tao.NativeMetalBridge
+import dev.nucleusframework.nucleus.window.tao.PopupNativeBridge
import org.jetbrains.skia.DirectContext
/**
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoPopupSceneLayerWindows.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoPopupSceneLayerWindows.kt
similarity index 98%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoPopupSceneLayerWindows.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoPopupSceneLayerWindows.kt
index b4ebb4e29..84c61fcca 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoPopupSceneLayerWindows.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoPopupSceneLayerWindows.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao.render
+package dev.nucleusframework.nucleus.window.tao.render
import androidx.compose.runtime.Composable
import androidx.compose.runtime.CompositionContext
@@ -22,7 +22,7 @@ import androidx.compose.ui.unit.IntOffset
import androidx.compose.ui.unit.IntRect
import androidx.compose.ui.unit.IntSize
import androidx.compose.ui.unit.LayoutDirection
-import io.github.kdroidfilter.nucleus.window.tao.PopupNativeBridgeWindows
+import dev.nucleusframework.nucleus.window.tao.PopupNativeBridgeWindows
import org.jetbrains.skia.DirectContext
/**
diff --git a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoSyntheticKey.kt b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoSyntheticKey.kt
similarity index 97%
rename from decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoSyntheticKey.kt
rename to decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoSyntheticKey.kt
index 50b1160e4..46ca24009 100644
--- a/decorated-window-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/window/tao/render/TaoSyntheticKey.kt
+++ b/decorated-window-tao/src/main/kotlin/dev/nucleusframework/nucleus/window/tao/render/TaoSyntheticKey.kt
@@ -1,4 +1,4 @@
-package io.github.kdroidfilter.nucleus.window.tao.render
+package dev.nucleusframework.nucleus.window.tao.render
import androidx.compose.ui.InternalComposeUiApi
import androidx.compose.ui.input.key.Key
diff --git a/decorated-window-tao/src/main/native/linux/nucleus_tao_egl.c b/decorated-window-tao/src/main/native/linux/nucleus_tao_egl.c
index bd480ded3..28573d3ac 100644
--- a/decorated-window-tao/src/main/native/linux/nucleus_tao_egl.c
+++ b/decorated-window-tao/src/main/native/linux/nucleus_tao_egl.c
@@ -615,7 +615,7 @@ typedef struct {
* Returns an opaque attachment handle, or 0 on failure.
*/
JNIEXPORT jlong JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoEglBridge_nativeAttachX11(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoEglBridge_nativeAttachX11(
JNIEnv *env, jclass clazz,
jlong xdisplayPtr, jlong xidLong,
jint widthPx, jint heightPx)
@@ -961,7 +961,7 @@ static void (*const wl_registry_listener[])(void) = {
* just expressed through Wayland protocol primitives.
*/
JNIEXPORT jlong JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoEglBridge_nativeAttachWayland(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoEglBridge_nativeAttachWayland(
JNIEnv *env, jclass clazz,
jlong wlDisplayPtr, jlong wlSurfacePtr,
jint widthPx, jint heightPx)
@@ -1284,7 +1284,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoEglBridge_nativeAttachWa
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoEglBridge_nativeDetach(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoEglBridge_nativeDetach(
JNIEnv *env, jclass clazz, jlong handle)
{
(void) env; (void) clazz;
@@ -1329,7 +1329,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoEglBridge_nativeDetach(
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoEglBridge_nativeMakeCurrent(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoEglBridge_nativeMakeCurrent(
JNIEnv *env, jclass clazz, jlong handle)
{
(void) env; (void) clazz;
@@ -1346,7 +1346,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoEglBridge_nativeMakeCurr
* only be current on one thread at a time.
*/
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoEglBridge_nativeReleaseCurrent(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoEglBridge_nativeReleaseCurrent(
JNIEnv *env, jclass clazz, jlong handle)
{
(void) env; (void) clazz;
@@ -1356,7 +1356,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoEglBridge_nativeReleaseC
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoEglBridge_nativeResize(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoEglBridge_nativeResize(
JNIEnv *env, jclass clazz, jlong handle, jint widthPx, jint heightPx, jfloat scale)
{
(void) env; (void) clazz;
@@ -1387,7 +1387,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoEglBridge_nativeResize(
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoEglBridge_nativePresent(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoEglBridge_nativePresent(
JNIEnv *env, jclass clazz, jlong handle)
{
(void) env; (void) clazz;
@@ -1397,7 +1397,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoEglBridge_nativePresent(
}
JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoEglBridge_nativeWidth(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoEglBridge_nativeWidth(
JNIEnv *env, jclass clazz, jlong handle)
{
(void) env; (void) clazz;
@@ -1406,7 +1406,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoEglBridge_nativeWidth(
}
JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoEglBridge_nativeHeight(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoEglBridge_nativeHeight(
JNIEnv *env, jclass clazz, jlong handle)
{
(void) env; (void) clazz;
@@ -1441,7 +1441,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoEglBridge_nativeHeight(
* X11-default support would require always materialising a child window
* for Compose, which is left as a follow-up. */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoEglBridge_nativeSetInputRegion(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoEglBridge_nativeSetInputRegion(
JNIEnv *env, jclass clazz, jlong handle, jfloatArray rectsPx, jint count)
{
(void) clazz;
@@ -1568,7 +1568,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoEglBridge_nativeSetInput
* Skia starts asking for entry points.
*/
JNIEXPORT jlong JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoEglBridge_nativeGetProcAddrFunctionPointer(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoEglBridge_nativeGetProcAddrFunctionPointer(
JNIEnv *env, jclass clazz)
{
(void) env; (void) clazz;
diff --git a/decorated-window-tao/src/main/native/linux/nucleus_tao_linux_widget.c b/decorated-window-tao/src/main/native/linux/nucleus_tao_linux_widget.c
index cf9243ef3..2e5f56096 100644
--- a/decorated-window-tao/src/main/native/linux/nucleus_tao_linux_widget.c
+++ b/decorated-window-tao/src/main/native/linux/nucleus_tao_linux_widget.c
@@ -337,7 +337,7 @@ static GtkWidget *resolve_overlay_for_window(GtkWidget *gtk_window) {
#define EXPORT JNIEXPORT __attribute__((visibility("default")))
EXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoLinuxWidgetBridge_nativeAttach(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoLinuxWidgetBridge_nativeAttach(
JNIEnv *env, jclass clazz, jlong gtk_window_ptr, jlong widget_ptr)
{
(void) env; (void) clazz;
@@ -382,7 +382,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoLinuxWidgetBridge_native
}
EXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoLinuxWidgetBridge_nativeDetach(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoLinuxWidgetBridge_nativeDetach(
JNIEnv *env, jclass clazz, jlong widget_ptr)
{
(void) env; (void) clazz;
@@ -397,7 +397,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoLinuxWidgetBridge_native
}
EXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoLinuxWidgetBridge_nativeSetFrame(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoLinuxWidgetBridge_nativeSetFrame(
JNIEnv *env, jclass clazz,
jlong gtk_window_ptr, jlong widget_ptr,
jint x_logical, jint y_logical, jint w_logical, jint h_logical)
@@ -456,7 +456,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoLinuxWidgetBridge_native
* TextField. Equivalent in spirit to macOS's
* `[window makeFirstResponder:overlay]` on click. */
EXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoLinuxWidgetBridge_nativeRequestKeyboardFocus(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoLinuxWidgetBridge_nativeRequestKeyboardFocus(
JNIEnv *env, jclass clazz, jlong gtk_window_ptr)
{
(void) env; (void) clazz;
@@ -610,7 +610,7 @@ static gboolean on_input_box_motion_notify(GtkWidget *widget, void *event_ptr,
}
EXPORT jlong JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoLinuxWidgetBridge_nativeAddInputBox(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoLinuxWidgetBridge_nativeAddInputBox(
JNIEnv *env, jclass clazz, jlong gtk_window_ptr)
{
(void) env; (void) clazz;
@@ -672,7 +672,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoLinuxWidgetBridge_native
}
EXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoLinuxWidgetBridge_nativeMoveInputBox(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoLinuxWidgetBridge_nativeMoveInputBox(
JNIEnv *env, jclass clazz, jlong box_ptr,
jint x_logical, jint y_logical, jint w_logical, jint h_logical)
{
@@ -700,7 +700,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoLinuxWidgetBridge_native
}
EXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoLinuxWidgetBridge_nativeSetInputBoxCallback(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoLinuxWidgetBridge_nativeSetInputBoxCallback(
JNIEnv *env, jclass clazz, jlong box_ptr, jobject callback)
{
(void) clazz;
@@ -720,7 +720,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoLinuxWidgetBridge_native
}
EXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoLinuxWidgetBridge_nativeRemoveInputBox(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoLinuxWidgetBridge_nativeRemoveInputBox(
JNIEnv *env, jclass clazz, jlong box_ptr)
{
(void) env; (void) clazz;
diff --git a/decorated-window-tao/src/main/native/macos/NucleusTaoMetal.m b/decorated-window-tao/src/main/native/macos/NucleusTaoMetal.m
index faf3e7a80..788c09f29 100644
--- a/decorated-window-tao/src/main/native/macos/NucleusTaoMetal.m
+++ b/decorated-window-tao/src/main/native/macos/NucleusTaoMetal.m
@@ -100,7 +100,7 @@ static void ensureMetalJVMCached(JNIEnv *env) {
dispatch_once(&onceToken, ^{
(*env)->GetJavaVM(env, &sMetalJVM);
jclass local = (*env)->FindClass(env,
- "io/github/kdroidfilter/nucleus/window/tao/NativeMetalBridge");
+ "dev/nucleusframework/nucleus/window/tao/NativeMetalBridge");
if (local) {
sMetalBridgeClass = (*env)->NewGlobalRef(env, local);
(*env)->DeleteLocalRef(env, local);
@@ -659,7 +659,7 @@ - (void)didExitFS:(NSNotification *)n {
static void ensureFrameClassLoaded(JNIEnv *env) {
if (gFrameClass != NULL) return;
- jclass local = (*env)->FindClass(env, "io/github/kdroidfilter/nucleus/window/tao/render/MetalFrame");
+ jclass local = (*env)->FindClass(env, "dev/nucleusframework/nucleus/window/tao/render/MetalFrame");
if (local == NULL) return;
gFrameClass = (jclass) (*env)->NewGlobalRef(env, local);
(*env)->DeleteLocalRef(env, local);
@@ -668,10 +668,10 @@ static void ensureFrameClassLoaded(JNIEnv *env) {
}
// ── JNI entry points ─────────────────────────────────────────────────────
-// Symbol naming follows io.github.kdroidfilter.nucleus.window.tao.NativeMetalBridge
+// Symbol naming follows dev.nucleusframework.nucleus.window.tao.NativeMetalBridge
JNIEXPORT jlong JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativeAttach(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativeAttach(
JNIEnv *env, jclass clazz, jlong nsViewPtr) {
NSView *view = (__bridge NSView *)(void *)(uintptr_t)nsViewPtr;
@@ -739,7 +739,7 @@ static void ensureFrameClassLoaded(JNIEnv *env) {
* children of a host NSView whose own observer already manages the FS
* dance. */
JNIEXPORT jlong JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativeAttachOverlay(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativeAttachOverlay(
JNIEnv *env, jclass clazz, jlong nsViewPtr) {
NSView *view = (__bridge NSView *)(void *)(uintptr_t)nsViewPtr;
if (view == nil) return 0;
@@ -792,7 +792,7 @@ static void ensureFrameClassLoaded(JNIEnv *env) {
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativeConfigureChrome(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativeConfigureChrome(
JNIEnv *env, jclass clazz, jlong nsViewPtr) {
NSView *view = (__bridge NSView *)(void *)(uintptr_t)nsViewPtr;
if (view == nil) return;
@@ -957,7 +957,7 @@ static void applyButtonConstraints(NSWindow *window, float titleBarHeight) {
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativeApplyButtonLayout(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativeApplyButtonLayout(
JNIEnv *env, jclass clazz, jlong nsViewPtr, jfloat titleBarHeight) {
NTLOG("nativeApplyButtonLayout h=%.1f", titleBarHeight);
NSView *view = (__bridge NSView *)(void *)(uintptr_t)nsViewPtr;
@@ -981,7 +981,7 @@ static void applyButtonConstraints(NSWindow *window, float titleBarHeight) {
* Mirrors `decorated-window-jni`'s `JniMacTitleBarBridge.nativeSetRTL`.
*/
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativeSetButtonLayoutRtl(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativeSetButtonLayoutRtl(
JNIEnv *env, jclass clazz, jlong nsViewPtr, jboolean isRtl) {
NTLOG("nativeSetButtonLayoutRtl rtl=%d", (int)isRtl);
NSView *view = (__bridge NSView *)(void *)(uintptr_t)nsViewPtr;
@@ -1016,7 +1016,7 @@ static void applyButtonConstraints(NSWindow *window, float titleBarHeight) {
* modern chrome behaviours. Cheap query — caches the result in a static.
*/
JNIEXPORT jboolean JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativeIsMacOSTahoeOrLater(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativeIsMacOSTahoeOrLater(
JNIEnv *env, jclass clazz) {
static jboolean cached = (jboolean) -1;
if (cached != (jboolean) -1) return cached;
@@ -1032,7 +1032,7 @@ static void applyButtonConstraints(NSWindow *window, float titleBarHeight) {
* Liquid-Glass-friendly chrome path. No-op on macOS < 26.
*/
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativeApplyLargeCornerRadius(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativeApplyLargeCornerRadius(
JNIEnv *env, jclass clazz, jlong nsViewPtr, jboolean enabled) {
NSView *view = (__bridge NSView *)(void *)(uintptr_t)nsViewPtr;
if (view == nil) return;
@@ -1062,7 +1062,7 @@ static void applyButtonConstraints(NSWindow *window, float titleBarHeight) {
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativeDetach(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativeDetach(
JNIEnv *env, jclass clazz, jlong handle) {
if (handle == 0) return;
NucleusTaoMetalAttachment *att = HANDLE_OF(handle);
@@ -1084,21 +1084,21 @@ static void applyButtonConstraints(NSWindow *window, float titleBarHeight) {
}
JNIEXPORT jlong JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativeDevicePtr(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativeDevicePtr(
JNIEnv *env, jclass clazz, jlong handle) {
if (handle == 0) return 0;
return (jlong)(uintptr_t) (__bridge void *) HANDLE_OF(handle)->device;
}
JNIEXPORT jlong JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativeQueuePtr(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativeQueuePtr(
JNIEnv *env, jclass clazz, jlong handle) {
if (handle == 0) return 0;
return (jlong)(uintptr_t) (__bridge void *) HANDLE_OF(handle)->queue;
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativeResize(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativeResize(
JNIEnv *env, jclass clazz, jlong handle, jint widthPx, jint heightPx, jfloat scale) {
if (handle == 0) return;
NucleusTaoMetalAttachment *att = HANDLE_OF(handle);
@@ -1118,7 +1118,7 @@ static void applyButtonConstraints(NSWindow *window, float titleBarHeight) {
}
JNIEXPORT jobject JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativeBeginFrame(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativeBeginFrame(
JNIEnv *env, jclass clazz, jlong handle) {
if (handle == 0) return NULL;
NucleusTaoMetalAttachment *att = HANDLE_OF(handle);
@@ -1151,7 +1151,7 @@ static void applyButtonConstraints(NSWindow *window, float titleBarHeight) {
}
JNIEXPORT jboolean JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativeIsInTransition(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativeIsInTransition(
JNIEnv *env, jclass clazz, jlong handle) {
if (handle == 0) return JNI_FALSE;
NucleusTaoMetalAttachment *att = HANDLE_OF(handle);
@@ -1159,7 +1159,7 @@ static void applyButtonConstraints(NSWindow *window, float titleBarHeight) {
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativePresent(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativePresent(
JNIEnv *env, jclass clazz, jlong handle, jlong drawablePtr) {
if (handle == 0 || drawablePtr == 0) return;
NucleusTaoMetalAttachment *att = HANDLE_OF(handle);
@@ -1178,7 +1178,7 @@ static void applyButtonConstraints(NSWindow *window, float titleBarHeight) {
* the enclosing CATransaction together with AppKit mutations made by
* `nativePresentWithInterop`'s callback. */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativeSetPresentsWithTransaction(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativeSetPresentsWithTransaction(
JNIEnv *env, jclass clazz, jlong handle, jboolean enabled) {
(void)env; (void)clazz;
if (handle == 0) return;
@@ -1198,7 +1198,7 @@ static void applyButtonConstraints(NSWindow *window, float titleBarHeight) {
* nativeSetPresentsWithTransaction) so [drawable present] joins our
* outer CATransaction instead of being scheduled out of band. */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativePresentWithInterop(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativePresentWithInterop(
JNIEnv *env, jclass clazz, jlong handle, jlong drawablePtr, jobject interopActions) {
if (handle == 0 || drawablePtr == 0) return;
NucleusTaoMetalAttachment *att = HANDLE_OF(handle);
@@ -1250,7 +1250,7 @@ static void applyButtonConstraints(NSWindow *window, float titleBarHeight) {
// All entry points hop to the AppKit main queue before touching AppKit.
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativeSetNewFullscreenControls(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativeSetNewFullscreenControls(
JNIEnv *env, jclass clazz, jlong nsViewPtr, jboolean enabled) {
if (nsViewPtr == 0) return;
ensureMetalJVMCached(env);
@@ -1274,7 +1274,7 @@ static void applyButtonConstraints(NSWindow *window, float titleBarHeight) {
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativeInstallMenuBarMonitor(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativeInstallMenuBarMonitor(
JNIEnv *env, jclass clazz, jlong nsViewPtr) {
if (nsViewPtr == 0) return;
ensureMetalJVMCached(env);
@@ -1290,7 +1290,7 @@ static void applyButtonConstraints(NSWindow *window, float titleBarHeight) {
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativeRemoveMenuBarMonitor(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativeRemoveMenuBarMonitor(
JNIEnv *env, jclass clazz, jlong nsViewPtr) {
if (nsViewPtr == 0) return;
void *rawPtr = (void *)(uintptr_t)nsViewPtr;
@@ -1307,7 +1307,7 @@ static void applyButtonConstraints(NSWindow *window, float titleBarHeight) {
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativeSetMenuBarOffset(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativeSetMenuBarOffset(
JNIEnv *env, jclass clazz, jlong nsViewPtr, jfloat offsetPt) {
if (nsViewPtr == 0) return;
void *rawPtr = (void *)(uintptr_t)nsViewPtr;
@@ -1326,7 +1326,7 @@ static void applyButtonConstraints(NSWindow *window, float titleBarHeight) {
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativeUpdateFullScreenButtons(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativeUpdateFullScreenButtons(
JNIEnv *env, jclass clazz, jlong nsViewPtr) {
if (nsViewPtr == 0) return;
void *rawPtr = (void *)(uintptr_t)nsViewPtr;
@@ -1343,7 +1343,7 @@ static void applyButtonConstraints(NSWindow *window, float titleBarHeight) {
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeMetalBridge_nativeShutdown(
+Java_dev_nucleusframework_nucleus_window_tao_NativeMetalBridge_nativeShutdown(
JNIEnv *env, jclass clazz) {
// Stop further dispatch_async work and silence JNI callbacks. Cleanup of
// remaining monitors is best-effort: a JVM shutdown hook may run very
diff --git a/decorated-window-tao/src/main/native/macos/decoration.m b/decorated-window-tao/src/main/native/macos/decoration.m
index c2c2772ee..22c443597 100644
--- a/decorated-window-tao/src/main/native/macos/decoration.m
+++ b/decorated-window-tao/src/main/native/macos/decoration.m
@@ -70,12 +70,12 @@ static jlongArray make_rect_array(JNIEnv *env, NSRect r, CGFloat scale) {
/* ================================================================== */
/* JNI exports */
-/* Package: io.github.kdroidfilter.nucleus.window.tao */
+/* Package: dev.nucleusframework.nucleus.window.tao */
/* Class: NativeTaoMacOsDecoBridge */
/* ================================================================== */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoMacOsDecoBridge_nativeSetOwner(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoMacOsDecoBridge_nativeSetOwner(
JNIEnv *env, jclass clazz, jlong childViewLong, jlong ownerViewLong, jboolean centerOnOwner)
{
(void)env; (void)clazz;
@@ -119,7 +119,7 @@ static jlongArray make_rect_array(JNIEnv *env, NSRect r, CGFloat scale) {
}
JNIEXPORT jlongArray JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoMacOsDecoBridge_nativeGetWindowRect(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoMacOsDecoBridge_nativeGetWindowRect(
JNIEnv *env, jclass clazz, jlong nsViewLong)
{
(void)clazz;
@@ -133,7 +133,7 @@ static jlongArray make_rect_array(JNIEnv *env, NSRect r, CGFloat scale) {
}
JNIEXPORT jlongArray JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoMacOsDecoBridge_nativeGetPrimaryMonitorWorkArea(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoMacOsDecoBridge_nativeGetPrimaryMonitorWorkArea(
JNIEnv *env, jclass clazz)
{
(void)clazz;
@@ -145,7 +145,7 @@ static jlongArray make_rect_array(JNIEnv *env, NSRect r, CGFloat scale) {
}
JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoMacOsDecoBridge_nativeGetPrimaryMonitorScaleMilli(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoMacOsDecoBridge_nativeGetPrimaryMonitorScaleMilli(
JNIEnv *env, jclass clazz)
{
(void)env; (void)clazz;
@@ -171,7 +171,7 @@ static jlongArray make_rect_array(JNIEnv *env, NSRect r, CGFloat scale) {
* Sizes are in **points** (logical pixels). Pass non-positive values to
* leave the corresponding dimension unchanged. */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoMacOsDecoBridge_nativeApplyContentMinSize(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoMacOsDecoBridge_nativeApplyContentMinSize(
JNIEnv *env, jclass clazz, jlong nsViewLong, jdouble widthPts, jdouble heightPts)
{
(void)env; (void)clazz;
diff --git a/decorated-window-tao/src/main/native/macos/dnd.m b/decorated-window-tao/src/main/native/macos/dnd.m
index 8eb8e0cc7..898cdcd9b 100644
--- a/decorated-window-tao/src/main/native/macos/dnd.m
+++ b/decorated-window-tao/src/main/native/macos/dnd.m
@@ -407,7 +407,7 @@ JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) {
* pasteboard types we accept. Returns 0 on success, negative on failure.
*/
JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoMacOsDndBridge_nativeRegister(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoMacOsDndBridge_nativeRegister(
JNIEnv *env, jclass cls, jlong nsView, jobject callback)
{
(void)cls;
@@ -441,7 +441,7 @@ JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) {
* fast-path on a missing state and become inert.
*/
JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoMacOsDndBridge_nativeRevoke(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoMacOsDndBridge_nativeRevoke(
JNIEnv *env, jclass cls, jlong nsView)
{
(void)env; (void)cls;
@@ -462,7 +462,7 @@ JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) {
* Kotlin's perspective — matches the Win32 `DoDragDrop` contract.
*/
JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoMacOsDndBridge_nativeStartDrag(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoMacOsDndBridge_nativeStartDrag(
JNIEnv *env, jclass cls, jlong nsView, jobjectArray files, jstring text, jint allowedEffects)
{
(void)cls;
diff --git a/decorated-window-tao/src/main/native/macos/native_view.m b/decorated-window-tao/src/main/native/macos/native_view.m
index d7c644fc5..5eeed54af 100644
--- a/decorated-window-tao/src/main/native/macos/native_view.m
+++ b/decorated-window-tao/src/main/native/macos/native_view.m
@@ -245,7 +245,7 @@ - (void)updateTrackingAreas {
/* ================================================================== */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoMacOsNativeViewBridge_nativeAddSubview(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoMacOsNativeViewBridge_nativeAddSubview(
JNIEnv *env, jclass clazz, jlong parentPtr, jlong childPtr)
{
(void)env; (void)clazz;
@@ -257,7 +257,7 @@ - (void)updateTrackingAreas {
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoMacOsNativeViewBridge_nativeRemoveSubview(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoMacOsNativeViewBridge_nativeRemoveSubview(
JNIEnv *env, jclass clazz, jlong childPtr)
{
(void)env; (void)clazz;
@@ -267,7 +267,7 @@ - (void)updateTrackingAreas {
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoMacOsNativeViewBridge_nativeSetSubviewFrame(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoMacOsNativeViewBridge_nativeSetSubviewFrame(
JNIEnv *env, jclass clazz,
jlong parentPtr, jlong childPtr,
jint xPx, jint yPx, jint widthPx, jint heightPx)
@@ -310,7 +310,7 @@ - (void)updateTrackingAreas {
* to mean "make it a circle".
*/
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoMacOsNativeViewBridge_nativeSetSubviewCornerRadius(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoMacOsNativeViewBridge_nativeSetSubviewCornerRadius(
JNIEnv *env, jclass clazz, jlong parentPtr, jlong childPtr, jfloat radiusPx)
{
(void)env; (void)clazz;
@@ -353,7 +353,7 @@ - (void)updateTrackingAreas {
* `WKWebView`). Without an event callback installed via
* [nativeSetOverlayCallback], the overlay is fully passthrough. */
JNIEXPORT jlong JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoMacOsNativeViewBridge_nativeCreateOverlay(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoMacOsNativeViewBridge_nativeCreateOverlay(
JNIEnv *env, jclass clazz, jlong parentNsViewPtr)
{
(void)env; (void)clazz;
@@ -386,7 +386,7 @@ - (void)updateTrackingAreas {
/* Repositions the overlay inside its parent. Bounds in physical pixels,
* top-left origin (matches Compose's `boundsInWindow`). */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoMacOsNativeViewBridge_nativeSetOverlayFrame(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoMacOsNativeViewBridge_nativeSetOverlayFrame(
JNIEnv *env, jclass clazz, jlong overlayPtr,
jint xPx, jint yPx, jint widthPx, jint heightPx)
{
@@ -413,7 +413,7 @@ - (void)updateTrackingAreas {
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoMacOsNativeViewBridge_nativeSetOverlayCallback(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoMacOsNativeViewBridge_nativeSetOverlayCallback(
JNIEnv *env, jclass clazz, jlong overlayPtr, jobject callback)
{
(void)clazz;
@@ -438,7 +438,7 @@ - (void)updateTrackingAreas {
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoMacOsNativeViewBridge_nativeSetOverlayRegions(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoMacOsNativeViewBridge_nativeSetOverlayRegions(
JNIEnv *env, jclass clazz, jlong overlayPtr, jfloatArray rectsPx, jint count)
{
(void)clazz;
@@ -466,7 +466,7 @@ - (void)updateTrackingAreas {
* whether to consume key events from the host's pre-existing Tao
* key-forwarding pipeline. */
JNIEXPORT jboolean JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoMacOsNativeViewBridge_nativeIsFirstResponder(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoMacOsNativeViewBridge_nativeIsFirstResponder(
JNIEnv *env, jclass clazz, jlong overlayPtr)
{
(void)env; (void)clazz;
@@ -478,7 +478,7 @@ - (void)updateTrackingAreas {
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoMacOsNativeViewBridge_nativeReleaseOverlay(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoMacOsNativeViewBridge_nativeReleaseOverlay(
JNIEnv *env, jclass clazz, jlong overlayPtr)
{
(void)clazz;
diff --git a/decorated-window-tao/src/main/native/macos/popup_panel.m b/decorated-window-tao/src/main/native/macos/popup_panel.m
index 08f923108..14e472869 100644
--- a/decorated-window-tao/src/main/native/macos/popup_panel.m
+++ b/decorated-window-tao/src/main/native/macos/popup_panel.m
@@ -376,12 +376,12 @@ static NSRect to_screen_frame(NSWindow *parent, jint xPx, jint yPx, jint wPx, ji
/* ================================================================== */
/* JNI exports */
-/* Package: io.github.kdroidfilter.nucleus.window.tao */
+/* Package: dev.nucleusframework.nucleus.window.tao */
/* Class: PopupNativeBridge */
/* ================================================================== */
JNIEXPORT jlong JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridge_nativeCreatePanel(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridge_nativeCreatePanel(
JNIEnv *env, jclass clazz,
jlong parentNsViewPtr,
jint xPx, jint yPx, jint widthPx, jint heightPx)
@@ -429,7 +429,7 @@ static NSRect to_screen_frame(NSWindow *parent, jint xPx, jint yPx, jint wPx, ji
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridge_nativeSetFrameInWindow(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridge_nativeSetFrameInWindow(
JNIEnv *env, jclass clazz,
jlong panelPtr,
jint xPx, jint yPx, jint widthPx, jint heightPx)
@@ -444,7 +444,7 @@ static NSRect to_screen_frame(NSWindow *parent, jint xPx, jint yPx, jint wPx, ji
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridge_nativeOrderFront(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridge_nativeOrderFront(
JNIEnv *env, jclass clazz, jlong panelPtr)
{
(void)env; (void)clazz;
@@ -454,7 +454,7 @@ static NSRect to_screen_frame(NSWindow *parent, jint xPx, jint yPx, jint wPx, ji
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridge_nativeOrderOut(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridge_nativeOrderOut(
JNIEnv *env, jclass clazz, jlong panelPtr)
{
(void)env; (void)clazz;
@@ -464,7 +464,7 @@ static NSRect to_screen_frame(NSWindow *parent, jint xPx, jint yPx, jint wPx, ji
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridge_nativeSetFocusable(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridge_nativeSetFocusable(
JNIEnv *env, jclass clazz, jlong panelPtr, jboolean focusable)
{
(void)env; (void)clazz;
@@ -488,7 +488,7 @@ static NSRect to_screen_frame(NSWindow *parent, jint xPx, jint yPx, jint wPx, ji
* subviews (a WKWebView etc.). Used for "watermark"-style popups that
* should be visible but not block interaction. */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridge_nativeSetIgnoresMouseEvents(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridge_nativeSetIgnoresMouseEvents(
JNIEnv *env, jclass clazz, jlong panelPtr, jboolean ignore)
{
(void)env; (void)clazz;
@@ -502,7 +502,7 @@ static NSRect to_screen_frame(NSWindow *parent, jint xPx, jint yPx, jint wPx, ji
* native subview (WKWebView etc.). When disabled (default) the panel
* intercepts everything — what Compose `Popup` / `DropdownMenu` need. */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridge_nativeSetRegionHitTestEnabled(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridge_nativeSetRegionHitTestEnabled(
JNIEnv *env, jclass clazz, jlong panelPtr, jboolean enable)
{
(void)env; (void)clazz;
@@ -520,7 +520,7 @@ static NSRect to_screen_frame(NSWindow *parent, jint xPx, jint yPx, jint wPx, ji
* `hitTest:` returns hit only inside one of these rects. Pass count=0
* to clear (full passthrough). */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridge_nativeSetInteractiveRegions(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridge_nativeSetInteractiveRegions(
JNIEnv *env, jclass clazz, jlong panelPtr, jfloatArray rectsPx, jint count)
{
(void)clazz;
@@ -545,7 +545,7 @@ static NSRect to_screen_frame(NSWindow *parent, jint xPx, jint yPx, jint wPx, ji
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridge_nativeSetEventCallback(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridge_nativeSetEventCallback(
JNIEnv *env, jclass clazz, jlong panelPtr, jobject callback)
{
(void)clazz;
@@ -582,7 +582,7 @@ static NSRect to_screen_frame(NSWindow *parent, jint xPx, jint yPx, jint wPx, ji
* The monitor returns the event unchanged so AppKit dispatches it
* normally (we observe; we don't consume). */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridge_nativeInstallOutsideClickMonitor(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridge_nativeInstallOutsideClickMonitor(
JNIEnv *env, jclass clazz, jlong panelPtr, jobject listener)
{
(void)clazz;
@@ -630,7 +630,7 @@ static NSRect to_screen_frame(NSWindow *parent, jint xPx, jint yPx, jint wPx, ji
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridge_nativeUninstallOutsideClickMonitor(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridge_nativeUninstallOutsideClickMonitor(
JNIEnv *env, jclass clazz, jlong panelPtr)
{
(void)clazz;
@@ -648,7 +648,7 @@ static NSRect to_screen_frame(NSWindow *parent, jint xPx, jint yPx, jint wPx, ji
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridge_nativeRelease(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridge_nativeRelease(
JNIEnv *env, jclass clazz, jlong panelPtr)
{
(void)clazz;
@@ -685,7 +685,7 @@ static NSRect to_screen_frame(NSWindow *parent, jint xPx, jint yPx, jint wPx, ji
}
JNIEXPORT jlong JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridge_nativeContentNsView(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridge_nativeContentNsView(
JNIEnv *env, jclass clazz, jlong panelPtr)
{
(void)env; (void)clazz;
diff --git a/decorated-window-tao/src/main/native/src/cursor.rs b/decorated-window-tao/src/main/native/src/cursor.rs
index cc3e63a5d..d61c560f4 100644
--- a/decorated-window-tao/src/main/native/src/cursor.rs
+++ b/decorated-window-tao/src/main/native/src/cursor.rs
@@ -37,7 +37,7 @@ fn cursor_from_code(code: jint) -> CursorIcon {
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeSetCursorIcon(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeSetCursorIcon(
_env: JNIEnv,
_class: JClass,
handle: jlong,
diff --git a/decorated-window-tao/src/main/native/src/platform/linux/a11y.rs b/decorated-window-tao/src/main/native/src/platform/linux/a11y.rs
index 1ba04788b..0a09dce2b 100644
--- a/decorated-window-tao/src/main/native/src/platform/linux/a11y.rs
+++ b/decorated-window-tao/src/main/native/src/platform/linux/a11y.rs
@@ -743,7 +743,7 @@ fn forward_action_to_jvm(
) {
let Some(jvm) = JAVA_VM.get() else { return };
let Ok(mut env) = jvm.attach_current_thread() else { return };
- let class_name = "io/github/kdroidfilter/nucleus/window/tao/NativeTaoBridge";
+ let class_name = "dev/nucleusframework/nucleus/window/tao/NativeTaoBridge";
let node_id = request.target.0 as i64;
// Map back to the bitmask the Kotlin controller already understands.
@@ -899,7 +899,7 @@ fn forward_action_to_jvm(
// don't have to lock back into the Tao `WINDOWS` map from the AT-SPI side.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yAttach(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yAttach(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -942,7 +942,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yDetach(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yDetach(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -958,7 +958,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yApplySnapshot(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yApplySnapshot(
env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -1042,7 +1042,7 @@ fn apply_parsed(handle: i64, parsed: ParsedSnapshot, partial: bool) -> jboolean
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yApplyPartialSnapshot(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yApplyPartialSnapshot(
env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -1073,7 +1073,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yIsActive(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yIsActive(
_env: JNIEnv,
_class: JClass,
) -> jboolean {
@@ -1094,7 +1094,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yConsumeResync(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yConsumeResync(
_env: JNIEnv,
_class: JClass,
) -> jboolean {
@@ -1106,7 +1106,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yNotePushed(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yNotePushed(
_env: JNIEnv,
_class: JClass,
) {
@@ -1117,7 +1117,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yIsVoiceOverRunning(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yIsVoiceOverRunning(
_env: JNIEnv,
_class: JClass,
) -> jboolean {
@@ -1133,7 +1133,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
/// of its actual product name. Must be called before the first Adapter is
/// constructed; later calls are silently ignored.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11ySetAppName(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11ySetAppName(
mut env: JNIEnv,
_class: JClass,
name: jni::objects::JString,
@@ -1146,7 +1146,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yPostFocusChanged(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yPostFocusChanged(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -1188,7 +1188,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
/// values; AccessKit applies them as-is to its Component.GetExtents
/// implementation.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11ySetRootBounds(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11ySetRootBounds(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -1284,7 +1284,7 @@ fn scopeguard_restore(
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yResolveX11Bounds(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yResolveX11Bounds(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -1383,7 +1383,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
/// `onFocusChanged` so AT-SPI's `STATE_ACTIVE` flag on the toplevel matches
/// the actual X focus.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11ySetWindowFocus(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11ySetWindowFocus(
_env: JNIEnv,
_class: JClass,
handle: jlong,
diff --git a/decorated-window-tao/src/main/native/src/platform/linux/decoration.rs b/decorated-window-tao/src/main/native/src/platform/linux/decoration.rs
index 0b36b90b4..e9d4e95cb 100644
--- a/decorated-window-tao/src/main/native/src/platform/linux/decoration.rs
+++ b/decorated-window-tao/src/main/native/src/platform/linux/decoration.rs
@@ -40,7 +40,7 @@ fn with_window(handle: jlong, f: impl FnOnce(&Window) -> Option) -> Option
/// `WINDOWS` map, so the references obtained from `gtk_window()` are valid
/// for the duration of this call.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeLinuxSetDialogOwner(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeLinuxSetDialogOwner(
_env: JNIEnv,
_class: JClass,
child_handle: jlong,
@@ -77,7 +77,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
/// `DecoratedDialog.kt` stays portable. Returns `null` when the geometry
/// isn't yet resolvable (window not realised / hidden on Wayland).
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeLinuxGetWindowRect(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeLinuxGetWindowRect(
env: JNIEnv,
_class: JClass,
handle: jlong,
diff --git a/decorated-window-tao/src/main/native/src/platform/linux/dnd.rs b/decorated-window-tao/src/main/native/src/platform/linux/dnd.rs
index d12d19337..4e511941e 100644
--- a/decorated-window-tao/src/main/native/src/platform/linux/dnd.rs
+++ b/decorated-window-tao/src/main/native/src/platform/linux/dnd.rs
@@ -629,7 +629,7 @@ fn start_outbound(
// ── JNI exports ────────────────────────────────────────────────────────────
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoLinuxDndBridge_nativeRegister(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoLinuxDndBridge_nativeRegister(
env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -649,7 +649,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoL
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoLinuxDndBridge_nativeRevoke(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoLinuxDndBridge_nativeRevoke(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -663,7 +663,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoL
#[no_mangle]
#[allow(unused_mut)]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoLinuxDndBridge_nativeStartDrag(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoLinuxDndBridge_nativeStartDrag(
mut env: JNIEnv,
_class: JClass,
handle: jlong,
diff --git a/decorated-window-tao/src/main/native/src/platform/linux/handles.rs b/decorated-window-tao/src/main/native/src/platform/linux/handles.rs
index 2913070f5..a5a839fa7 100644
--- a/decorated-window-tao/src/main/native/src/platform/linux/handles.rs
+++ b/decorated-window-tao/src/main/native/src/platform/linux/handles.rs
@@ -26,7 +26,7 @@ use crate::state::WINDOWS;
/// `raw_window_handle_rwh_06`/`raw_display_handle_rwh_06` impls and expose the
/// underlying pointers directly.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeLinuxHandles(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeLinuxHandles(
env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -79,7 +79,7 @@ fn fill_linux_handles(window: &Window, out: &mut [jlong; 3]) {
/// passing to the C-side widget embedding helpers in
/// `nucleus_tao_linux_widget.c`.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeLinuxGtkWindow(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeLinuxGtkWindow(
_env: JNIEnv,
_class: JClass,
handle: jlong,
diff --git a/decorated-window-tao/src/main/native/src/platform/linux/monitor.rs b/decorated-window-tao/src/main/native/src/platform/linux/monitor.rs
index ba26d28bf..50e63dcbc 100644
--- a/decorated-window-tao/src/main/native/src/platform/linux/monitor.rs
+++ b/decorated-window-tao/src/main/native/src/platform/linux/monitor.rs
@@ -42,7 +42,7 @@ fn primary_monitor(window: &Window) -> Option {
/// origin. Falls back to the full monitor geometry when GDK can't report
/// a work area (e.g. some Wayland compositors).
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeLinuxPrimaryMonitorWorkArea(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeLinuxPrimaryMonitorWorkArea(
env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -85,7 +85,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
/// Used as a scale source for the centring math when the window's own
/// scale factor is not yet resolvable.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeLinuxPrimaryMonitorScaleMilli(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeLinuxPrimaryMonitorScaleMilli(
_env: JNIEnv,
_class: JClass,
handle: jlong,
diff --git a/decorated-window-tao/src/main/native/src/platform/linux/touch.rs b/decorated-window-tao/src/main/native/src/platform/linux/touch.rs
index 62557c0ab..16d684600 100644
--- a/decorated-window-tao/src/main/native/src/platform/linux/touch.rs
+++ b/decorated-window-tao/src/main/native/src/platform/linux/touch.rs
@@ -502,7 +502,7 @@ fn revoke(handle: u64) {
// ── JNI exports ────────────────────────────────────────────────────────────
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoLinuxTouchBridge_nativeRegister(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoLinuxTouchBridge_nativeRegister(
env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -522,7 +522,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoL
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoLinuxTouchBridge_nativeRevoke(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoLinuxTouchBridge_nativeRevoke(
_env: JNIEnv,
_class: JClass,
handle: jlong,
diff --git a/decorated-window-tao/src/main/native/src/platform/macos/a11y.rs b/decorated-window-tao/src/main/native/src/platform/macos/a11y.rs
index 3b24ceda4..abf52c535 100644
--- a/decorated-window-tao/src/main/native/src/platform/macos/a11y.rs
+++ b/decorated-window-tao/src/main/native/src/platform/macos/a11y.rs
@@ -32,7 +32,7 @@ use crate::state::JAVA_VM;
// ── JNI exports ───────────────────────────────────────────────────────────
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yAttach(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yAttach(
_env: JNIEnv,
_class: JClass,
ns_view: jlong,
@@ -42,7 +42,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yDetach(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yDetach(
_env: JNIEnv,
_class: JClass,
ns_view: jlong,
@@ -52,7 +52,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yApplySnapshot(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yApplySnapshot(
env: JNIEnv,
_class: JClass,
ns_view: jlong,
@@ -74,7 +74,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yIsVoiceOverRunning(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yIsVoiceOverRunning(
_env: JNIEnv,
_class: JClass,
) -> jboolean {
@@ -83,7 +83,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yIsActive(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yIsActive(
_env: JNIEnv,
_class: JClass,
) -> jboolean {
@@ -92,7 +92,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yConsumeResync(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yConsumeResync(
_env: JNIEnv,
_class: JClass,
) -> jboolean {
@@ -101,7 +101,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yNotePushed(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yNotePushed(
_env: JNIEnv,
_class: JClass,
) {
@@ -109,7 +109,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yPostFocusChanged(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yPostFocusChanged(
_env: JNIEnv,
_class: JClass,
ns_view: jlong,
@@ -121,7 +121,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
/// No-op on macOS — VoiceOver reads `CFBundleName` for the app name.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11ySetAppName(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11ySetAppName(
_env: JNIEnv,
_class: JClass,
_name: JString,
@@ -132,7 +132,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
/// is still at v4 and rejects anything else. Returning `JNI_FALSE` keeps the
/// JVM-side controller from believing a partial succeeded.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yApplyPartialSnapshot(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yApplyPartialSnapshot(
_env: JNIEnv,
_class: JClass,
_ns_view: jlong,
@@ -158,7 +158,7 @@ pub extern "C" fn nucleus_tao_a11y_set_text(
let slice = unsafe { std::slice::from_raw_parts(utf8, len as usize) };
let Ok(text) = std::str::from_utf8(slice) else { return };
if let Ok(mut env) = jvm.attach_current_thread() {
- let class = match env.find_class("io/github/kdroidfilter/nucleus/window/tao/NativeTaoBridge") {
+ let class = match env.find_class("dev/nucleusframework/nucleus/window/tao/NativeTaoBridge") {
Ok(c) => c,
Err(_) => return,
};
@@ -187,7 +187,7 @@ pub extern "C" fn nucleus_tao_a11y_invoke_custom_action(
) {
let Some(jvm) = JAVA_VM.get() else { return };
if let Ok(mut env) = jvm.attach_current_thread() {
- let class = match env.find_class("io/github/kdroidfilter/nucleus/window/tao/NativeTaoBridge") {
+ let class = match env.find_class("dev/nucleusframework/nucleus/window/tao/NativeTaoBridge") {
Ok(c) => c,
Err(_) => return,
};
@@ -216,7 +216,7 @@ pub extern "C" fn nucleus_tao_a11y_scroll_by(
) {
let Some(jvm) = JAVA_VM.get() else { return };
if let Ok(mut env) = jvm.attach_current_thread() {
- let class = match env.find_class("io/github/kdroidfilter/nucleus/window/tao/NativeTaoBridge") {
+ let class = match env.find_class("dev/nucleusframework/nucleus/window/tao/NativeTaoBridge") {
Ok(c) => c,
Err(_) => return,
};
@@ -246,7 +246,7 @@ pub extern "C" fn nucleus_tao_a11y_set_selection(
) {
let Some(jvm) = JAVA_VM.get() else { return };
if let Ok(mut env) = jvm.attach_current_thread() {
- let class = match env.find_class("io/github/kdroidfilter/nucleus/window/tao/NativeTaoBridge") {
+ let class = match env.find_class("dev/nucleusframework/nucleus/window/tao/NativeTaoBridge") {
Ok(c) => c,
Err(_) => return,
};
@@ -277,7 +277,7 @@ pub extern "C" fn nucleus_tao_a11y_invoke_action(
) {
let Some(jvm) = JAVA_VM.get() else { return };
if let Ok(mut env) = jvm.attach_current_thread() {
- let class = match env.find_class("io/github/kdroidfilter/nucleus/window/tao/NativeTaoBridge") {
+ let class = match env.find_class("dev/nucleusframework/nucleus/window/tao/NativeTaoBridge") {
Ok(c) => c,
Err(_) => return,
};
diff --git a/decorated-window-tao/src/main/native/src/platform/macos/apple_events.rs b/decorated-window-tao/src/main/native/src/platform/macos/apple_events.rs
index cd5f6fc9f..1c05d3f33 100644
--- a/decorated-window-tao/src/main/native/src/platform/macos/apple_events.rs
+++ b/decorated-window-tao/src/main/native/src/platform/macos/apple_events.rs
@@ -15,7 +15,7 @@ use crate::platform::macos::ffi::nucleus_tao_apple_events_install;
use crate::state::JAVA_VM;
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeAppleEventsInstall(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeAppleEventsInstall(
_env: JNIEnv,
_class: JClass,
) {
@@ -33,7 +33,7 @@ pub extern "C" fn nucleus_tao_apple_events_dispatch(utf8: *const u8, len: i32) {
let Ok(url) = std::str::from_utf8(slice) else { return };
if let Ok(mut env) = jvm.attach_current_thread() {
let class = match env.find_class(
- "io/github/kdroidfilter/nucleus/window/tao/NativeTaoBridge",
+ "dev/nucleusframework/nucleus/window/tao/NativeTaoBridge",
) {
Ok(c) => c,
Err(_) => return,
diff --git a/decorated-window-tao/src/main/native/src/platform/macos/handles.rs b/decorated-window-tao/src/main/native/src/platform/macos/handles.rs
index 99862482c..e05dd4215 100644
--- a/decorated-window-tao/src/main/native/src/platform/macos/handles.rs
+++ b/decorated-window-tao/src/main/native/src/platform/macos/handles.rs
@@ -11,7 +11,7 @@ use crate::state::WINDOWS;
/// Returns the underlying NSView pointer so the JVM can attach a CAMetalLayer.
/// Must be called on the macOS main thread (i.e. from a Tao event handler).
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeNsViewHandle(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeNsViewHandle(
_env: JNIEnv,
_class: JClass,
handle: jlong,
diff --git a/decorated-window-tao/src/main/native/src/platform/macos/ime.rs b/decorated-window-tao/src/main/native/src/platform/macos/ime.rs
index d745c3b71..4dfc0476d 100644
--- a/decorated-window-tao/src/main/native/src/platform/macos/ime.rs
+++ b/decorated-window-tao/src/main/native/src/platform/macos/ime.rs
@@ -13,7 +13,7 @@ use crate::platform::macos::ffi::{
use crate::state::WINDOWS;
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeActivateInputContext(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeActivateInputContext(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -38,7 +38,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
/// `firstRectForCharacterRange:` returning a rect with non-zero size — Tao's
/// stock impl returns size 0×0, which short-circuits the picker.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeSetImeRect(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeSetImeRect(
_env: JNIEnv,
_class: JClass,
handle: jlong,
diff --git a/decorated-window-tao/src/main/native/src/platform/macos/text_overlay.rs b/decorated-window-tao/src/main/native/src/platform/macos/text_overlay.rs
index 522830f69..ba4a62770 100644
--- a/decorated-window-tao/src/main/native/src/platform/macos/text_overlay.rs
+++ b/decorated-window-tao/src/main/native/src/platform/macos/text_overlay.rs
@@ -15,7 +15,7 @@ use crate::platform::macos::ffi::{
use crate::state::WINDOWS;
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeAttachTextOverlay(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeAttachTextOverlay(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -32,7 +32,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeFocusTextOverlay(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeFocusTextOverlay(
_env: JNIEnv,
_class: JClass,
focused: jboolean,
diff --git a/decorated-window-tao/src/main/native/src/platform/windows/a11y.rs b/decorated-window-tao/src/main/native/src/platform/windows/a11y.rs
index 67db446ba..7b0284de8 100644
--- a/decorated-window-tao/src/main/native/src/platform/windows/a11y.rs
+++ b/decorated-window-tao/src/main/native/src/platform/windows/a11y.rs
@@ -149,7 +149,7 @@ extern "system" fn invoke_action_trampoline(hwnd: i64, node_id: u64, action: u16
let Some(jvm) = JAVA_VM.get() else { return };
if let Ok(mut env) = jvm.attach_current_thread() {
let class = match env.find_class(
- "io/github/kdroidfilter/nucleus/window/tao/NativeTaoBridge",
+ "dev/nucleusframework/nucleus/window/tao/NativeTaoBridge",
) {
Ok(c) => c,
Err(_) => return,
@@ -176,7 +176,7 @@ extern "system" fn set_text_trampoline(
let Ok(text) = std::str::from_utf8(slice) else { return };
if let Ok(mut env) = jvm.attach_current_thread() {
let class = match env.find_class(
- "io/github/kdroidfilter/nucleus/window/tao/NativeTaoBridge",
+ "dev/nucleusframework/nucleus/window/tao/NativeTaoBridge",
) {
Ok(c) => c,
Err(_) => return,
@@ -201,7 +201,7 @@ extern "system" fn set_selection_trampoline(
let Some(jvm) = JAVA_VM.get() else { return };
if let Ok(mut env) = jvm.attach_current_thread() {
let class = match env.find_class(
- "io/github/kdroidfilter/nucleus/window/tao/NativeTaoBridge",
+ "dev/nucleusframework/nucleus/window/tao/NativeTaoBridge",
) {
Ok(c) => c,
Err(_) => return,
@@ -226,7 +226,7 @@ extern "system" fn scroll_by_trampoline(
let Some(jvm) = JAVA_VM.get() else { return };
if let Ok(mut env) = jvm.attach_current_thread() {
let class = match env.find_class(
- "io/github/kdroidfilter/nucleus/window/tao/NativeTaoBridge",
+ "dev/nucleusframework/nucleus/window/tao/NativeTaoBridge",
) {
Ok(c) => c,
Err(_) => return,
@@ -251,7 +251,7 @@ extern "system" fn custom_action_trampoline(
let Some(jvm) = JAVA_VM.get() else { return };
if let Ok(mut env) = jvm.attach_current_thread() {
let class = match env.find_class(
- "io/github/kdroidfilter/nucleus/window/tao/NativeTaoBridge",
+ "dev/nucleusframework/nucleus/window/tao/NativeTaoBridge",
) {
Ok(c) => c,
Err(_) => return,
@@ -272,7 +272,7 @@ extern "system" fn custom_action_trampoline(
// ── JNI exports ───────────────────────────────────────────────────────────
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yAttach(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yAttach(
_env: JNIEnv,
_class: JClass,
hwnd: jlong,
@@ -284,7 +284,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yDetach(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yDetach(
_env: JNIEnv,
_class: JClass,
hwnd: jlong,
@@ -296,7 +296,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yApplySnapshot(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yApplySnapshot(
env: JNIEnv,
_class: JClass,
hwnd: jlong,
@@ -323,7 +323,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
/// we default to true to keep snapshots flowing while a UIA client is
/// attached. The native side still fast-paths when no listener is bound.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yIsActive(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yIsActive(
_env: JNIEnv,
_class: JClass,
) -> jboolean {
@@ -331,7 +331,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yConsumeResync(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yConsumeResync(
_env: JNIEnv,
_class: JClass,
) -> jboolean {
@@ -340,7 +340,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
/// No-op on Windows; per-HWND tracking lives in the C DLL.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yNotePushed(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yNotePushed(
_env: JNIEnv,
_class: JClass,
) {
@@ -348,7 +348,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
/// No screen-reader-detect API exposed yet on Windows; report false.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yIsVoiceOverRunning(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yIsVoiceOverRunning(
_env: JNIEnv,
_class: JClass,
) -> jboolean {
@@ -357,7 +357,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
/// TODO: emit `UIA_AutomationFocusChangedEventId` via `UiaRaiseAutomationEvent`.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yPostFocusChanged(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yPostFocusChanged(
_env: JNIEnv,
_class: JClass,
_hwnd: jlong,
@@ -367,7 +367,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
/// No-op on Windows — UIA reads the HWND title for the app name.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11ySetAppName(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11ySetAppName(
_env: JNIEnv,
_class: JClass,
_name: jni::objects::JString,
@@ -378,7 +378,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
/// parser is still at v4 and rejects anything else. Returning `JNI_FALSE`
/// keeps the JVM-side controller from believing a partial succeeded.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeA11yApplyPartialSnapshot(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeA11yApplyPartialSnapshot(
_env: JNIEnv,
_class: JClass,
_ns_view: jlong,
diff --git a/decorated-window-tao/src/main/native/src/platform/windows/handles.rs b/decorated-window-tao/src/main/native/src/platform/windows/handles.rs
index 311363e58..91126528c 100644
--- a/decorated-window-tao/src/main/native/src/platform/windows/handles.rs
+++ b/decorated-window-tao/src/main/native/src/platform/windows/handles.rs
@@ -13,7 +13,7 @@ use crate::state::WINDOWS;
/// Returns the underlying HWND so the JVM can attach a WGL context and apply
/// custom decoration via the `nucleus_tao_windows_deco` helper.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeHwndHandle(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeHwndHandle(
_env: JNIEnv,
_class: JClass,
handle: jlong,
diff --git a/decorated-window-tao/src/main/native/src/window_jni.rs b/decorated-window-tao/src/main/native/src/window_jni.rs
index 34da1b4eb..74501c15a 100644
--- a/decorated-window-tao/src/main/native/src/window_jni.rs
+++ b/decorated-window-tao/src/main/native/src/window_jni.rs
@@ -2,7 +2,7 @@
//
// All of these are thin "post a UserEvent on the loop proxy" or "look up the
// Window in WINDOWS and read state" wrappers. Symbol naming follows the
-// package `io.github.kdroidfilter.nucleus.window.tao.NativeTaoBridge`.
+// package `dev.nucleusframework.nucleus.window.tao.NativeTaoBridge`.
use jni::objects::{JClass, JString};
use jni::sys::{jboolean, jdouble, jint, jlong, JNI_FALSE, JNI_TRUE};
@@ -12,7 +12,7 @@ use crate::events::UserEvent;
use crate::state::{clear_event_loop_proxy, send_user_event, JAVA_VM, WINDOWS};
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeRunBlocking(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeRunBlocking(
env: JNIEnv,
_class: JClass,
callback: jni::objects::JObject,
@@ -56,7 +56,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeCreateWindow(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeCreateWindow(
mut env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -83,7 +83,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeSetVisible(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeSetVisible(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -96,7 +96,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeSetTitle(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeSetTitle(
mut env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -113,7 +113,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeRequestRedraw(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeRequestRedraw(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -124,7 +124,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeRequestClose(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeRequestClose(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -135,7 +135,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeExit(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeExit(
_env: JNIEnv,
_class: JClass,
) {
@@ -145,7 +145,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
/// Wakes the Tao event loop so a queued `TaoMainDispatcher` block runs on the
/// next tick. Cheap no-op when the loop is already busy.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeWake(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeWake(
_env: JNIEnv,
_class: JClass,
) {
@@ -156,7 +156,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
/// this also de-minimizes the window so the foreground activation actually
/// takes effect (a minimized HWND ignores `SetForegroundWindow`).
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeFocus(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeFocus(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -167,7 +167,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeIsAvailable(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeIsAvailable(
_env: JNIEnv,
_class: JClass,
) -> jboolean {
@@ -192,7 +192,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
/// don't drive a modal AppKit-style loop and the Compose-side hit-testing is
/// reliable enough.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeDragWindow(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeDragWindow(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -226,7 +226,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeIsMaximized(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeIsMaximized(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -250,7 +250,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeSetMaximized(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeSetMaximized(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -263,7 +263,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeSetMinimized(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeSetMinimized(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -276,7 +276,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeSetAlwaysOnTop(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeSetAlwaysOnTop(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -289,7 +289,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeSetFocusable(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeSetFocusable(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -302,7 +302,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeSetMinInnerSize(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeSetMinInnerSize(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -317,7 +317,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeSetWindowIcon(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeSetWindowIcon(
env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -342,7 +342,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeSetInnerSize(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeSetInnerSize(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -357,7 +357,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeSetOuterPosition(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeSetOuterPosition(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -372,7 +372,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeIsFullscreen(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeIsFullscreen(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -396,7 +396,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
}
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeSetFullscreen(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeSetFullscreen(
_env: JNIEnv,
_class: JClass,
handle: jlong,
@@ -411,7 +411,7 @@ pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoB
/// Returns the current scale factor of the window (Retina = 2.0, 3.0…).
/// Encoded as `(scale * 1000) as i32` to keep a single JNI signature.
#[no_mangle]
-pub extern "system" fn Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoBridge_nativeScaleFactor(
+pub extern "system" fn Java_dev_nucleusframework_nucleus_window_tao_NativeTaoBridge_nativeScaleFactor(
_env: JNIEnv,
_class: JClass,
handle: jlong,
diff --git a/decorated-window-tao/src/main/native/windows/nucleus_tao_dnd.c b/decorated-window-tao/src/main/native/windows/nucleus_tao_dnd.c
index 4dbc0919c..6e22c48c1 100644
--- a/decorated-window-tao/src/main/native/windows/nucleus_tao_dnd.c
+++ b/decorated-window-tao/src/main/native/windows/nucleus_tao_dnd.c
@@ -363,7 +363,7 @@ static BOOL ensure_callback_methods(JNIEnv *env, jobject callback) {
* RegisterDragDrop. Returns 0 on success, negative on failure.
*/
JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDndBridge_nativeRegister(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsDndBridge_nativeRegister(
JNIEnv *env, jclass cls, jlong hwnd, jobject callback)
{
(void)cls;
@@ -413,7 +413,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDndBridge_nativeR
* nativeRegister calls.
*/
JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDndBridge_nativeRevoke(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsDndBridge_nativeRevoke(
JNIEnv *env, jclass cls, jlong hwnd)
{
(void)env; (void)cls;
@@ -711,7 +711,7 @@ static IDropSourceVtbl g_drop_source_vtbl = {
/* ---- nativeStartDrag JNI export ------------------------------------- */
JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDndBridge_nativeStartDrag(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsDndBridge_nativeStartDrag(
JNIEnv *env, jclass cls, jlong hwnd, jobjectArray files, jstring text, jint allowedEffects)
{
(void)cls; (void)hwnd;
diff --git a/decorated-window-tao/src/main/native/windows/nucleus_tao_gl.c b/decorated-window-tao/src/main/native/windows/nucleus_tao_gl.c
index 17d50d50f..80a70da8f 100644
--- a/decorated-window-tao/src/main/native/windows/nucleus_tao_gl.c
+++ b/decorated-window-tao/src/main/native/windows/nucleus_tao_gl.c
@@ -155,12 +155,12 @@ BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved) {
/* ================================================================== */
/* JNI exports */
-/* Package: io.github.kdroidfilter.nucleus.window.tao */
+/* Package: dev.nucleusframework.nucleus.window.tao */
/* Class: NativeTaoGlBridge */
/* ================================================================== */
JNIEXPORT jlong JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoGlBridge_nativeAttach(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoGlBridge_nativeAttach(
JNIEnv *env, jclass clazz, jlong hwndLong)
{
(void)env; (void)clazz;
@@ -262,7 +262,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoGlBridge_nativeAttach(
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoGlBridge_nativeDetach(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoGlBridge_nativeDetach(
JNIEnv *env, jclass clazz, jlong handle)
{
(void)env; (void)clazz;
@@ -276,7 +276,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoGlBridge_nativeDetach(
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoGlBridge_nativeMakeCurrent(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoGlBridge_nativeMakeCurrent(
JNIEnv *env, jclass clazz, jlong handle)
{
(void)env; (void)clazz;
@@ -286,7 +286,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoGlBridge_nativeMakeCurre
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoGlBridge_nativeResize(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoGlBridge_nativeResize(
JNIEnv *env, jclass clazz, jlong handle, jint widthPx, jint heightPx, jfloat scale)
{
(void)env; (void)clazz;
@@ -301,7 +301,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoGlBridge_nativeResize(
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoGlBridge_nativePresent(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoGlBridge_nativePresent(
JNIEnv *env, jclass clazz, jlong handle)
{
(void)env; (void)clazz;
@@ -311,7 +311,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoGlBridge_nativePresent(
}
JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoGlBridge_nativeWidth(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoGlBridge_nativeWidth(
JNIEnv *env, jclass clazz, jlong handle)
{
(void)env; (void)clazz;
@@ -320,7 +320,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoGlBridge_nativeWidth(
}
JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoGlBridge_nativeHeight(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoGlBridge_nativeHeight(
JNIEnv *env, jclass clazz, jlong handle)
{
(void)env; (void)clazz;
diff --git a/decorated-window-tao/src/main/native/windows/nucleus_tao_windows_deco.c b/decorated-window-tao/src/main/native/windows/nucleus_tao_windows_deco.c
index 88084bb74..4e4a45f71 100644
--- a/decorated-window-tao/src/main/native/windows/nucleus_tao_windows_deco.c
+++ b/decorated-window-tao/src/main/native/windows/nucleus_tao_windows_deco.c
@@ -260,12 +260,12 @@ BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved) {
/* ================================================================== */
/* JNI exports */
-/* Package: io.github.kdroidfilter.nucleus.window.tao */
+/* Package: dev.nucleusframework.nucleus.window.tao */
/* Class: NativeTaoWindowsDecoBridge */
/* ================================================================== */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDecoBridge_nativeInstallDecoration(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsDecoBridge_nativeInstallDecoration(
JNIEnv *env, jclass clazz, jlong hwndLong, jint titleBarHeightPx)
{
(void)env; (void)clazz;
@@ -303,7 +303,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDecoBridge_native
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDecoBridge_nativeUninstallDecoration(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsDecoBridge_nativeUninstallDecoration(
JNIEnv *env, jclass clazz, jlong hwndLong)
{
(void)env; (void)clazz;
@@ -326,7 +326,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDecoBridge_native
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDecoBridge_nativeSetTitleBarHeight(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsDecoBridge_nativeSetTitleBarHeight(
JNIEnv *env, jclass clazz, jlong hwndLong, jint heightPx)
{
(void)env; (void)clazz;
@@ -339,7 +339,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDecoBridge_native
/* Background color (ARGB) — synced to DWM caption/border color and dark-mode
* flag so the "sheet of glass" composited during resize matches the theme. */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDecoBridge_nativeSetBackgroundColor(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsDecoBridge_nativeSetBackgroundColor(
JNIEnv *env, jclass clazz, jlong hwndLong, jint argb)
{
(void)env; (void)clazz;
@@ -366,7 +366,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDecoBridge_native
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDecoBridge_nativeSetFullscreen(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsDecoBridge_nativeSetFullscreen(
JNIEnv *env, jclass clazz, jlong hwndLong, jboolean fullscreen)
{
(void)env; (void)clazz;
@@ -437,7 +437,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDecoBridge_native
}
JNIEXPORT jboolean JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDecoBridge_nativeIsFullscreen(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsDecoBridge_nativeIsFullscreen(
JNIEnv *env, jclass clazz, jlong hwndLong)
{
(void)env; (void)clazz;
@@ -455,7 +455,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDecoBridge_native
* Used by DecoratedDialog to make the dialog behave like a real JDialog.
* Pass ownerHwndLong == 0 to clear the owner. */
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDecoBridge_nativeSetOwner(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsDecoBridge_nativeSetOwner(
JNIEnv *env, jclass clazz, jlong childHwndLong, jlong ownerHwndLong)
{
(void)env; (void)clazz;
@@ -474,7 +474,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDecoBridge_native
* (pre-Windows 10 1607). Used by DecoratedWindow when the window's own
* scale factor isn't yet resolvable (pre-onWindowReady). */
JNIEXPORT jint JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDecoBridge_nativeGetPrimaryMonitorScaleMilli(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsDecoBridge_nativeGetPrimaryMonitorScaleMilli(
JNIEnv *env, jclass clazz)
{
(void)env; (void)clazz;
@@ -502,7 +502,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDecoBridge_native
* screen minus the taskbar) in physical pixels. Used by DecoratedWindow to
* resolve [WindowPosition.Aligned] for the initial outer position. */
JNIEXPORT jlongArray JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDecoBridge_nativeGetPrimaryMonitorWorkArea(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsDecoBridge_nativeGetPrimaryMonitorWorkArea(
JNIEnv *env, jclass clazz)
{
(void)clazz;
@@ -523,7 +523,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDecoBridge_native
* coordinates (physical pixels). Used by DecoratedDialog to centre itself on
* its parent. Returns NULL if hwnd is invalid. */
JNIEXPORT jlongArray JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsDecoBridge_nativeGetWindowRect(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsDecoBridge_nativeGetWindowRect(
JNIEnv *env, jclass clazz, jlong hwndLong)
{
(void)clazz;
diff --git a/decorated-window-tao/src/main/native/windows/nucleus_tao_windows_native_view.c b/decorated-window-tao/src/main/native/windows/nucleus_tao_windows_native_view.c
index b44c15911..27d83c58a 100644
--- a/decorated-window-tao/src/main/native/windows/nucleus_tao_windows_native_view.c
+++ b/decorated-window-tao/src/main/native/windows/nucleus_tao_windows_native_view.c
@@ -45,7 +45,7 @@ static HWND hwnd_from_jlong(jlong v) {
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsNativeViewBridge_nativeAttach(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsNativeViewBridge_nativeAttach(
JNIEnv *env, jclass clazz, jlong parentHwnd, jlong childHwnd) {
(void)env; (void)clazz;
HWND parent = hwnd_from_jlong(parentHwnd);
@@ -89,7 +89,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsNativeViewBridge_
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsNativeViewBridge_nativeDetach(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsNativeViewBridge_nativeDetach(
JNIEnv *env, jclass clazz, jlong childHwnd) {
(void)env; (void)clazz;
HWND child = hwnd_from_jlong(childHwnd);
@@ -103,7 +103,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsNativeViewBridge_
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsNativeViewBridge_nativeSetFrame(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsNativeViewBridge_nativeSetFrame(
JNIEnv *env, jclass clazz, jlong parentHwnd, jlong childHwnd,
jint xPx, jint yPx, jint widthPx, jint heightPx) {
(void)env; (void)clazz; (void)parentHwnd;
@@ -116,7 +116,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsNativeViewBridge_
}
JNIEXPORT jboolean JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsNativeViewBridge_nativeIsFocusInTree(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsNativeViewBridge_nativeIsFocusInTree(
JNIEnv *env, jclass clazz, jlong parentHwnd) {
(void)env; (void)clazz;
HWND parent = hwnd_from_jlong(parentHwnd);
@@ -128,7 +128,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsNativeViewBridge_
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsNativeViewBridge_nativeSetCornerRadius(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsNativeViewBridge_nativeSetCornerRadius(
JNIEnv *env, jclass clazz, jlong parentHwnd, jlong childHwnd, jfloat radiusPx) {
(void)env; (void)clazz; (void)parentHwnd;
HWND child = hwnd_from_jlong(childHwnd);
diff --git a/decorated-window-tao/src/main/native/windows/nucleus_tao_windows_overlay.c b/decorated-window-tao/src/main/native/windows/nucleus_tao_windows_overlay.c
index 0045ef344..c760e9113 100644
--- a/decorated-window-tao/src/main/native/windows/nucleus_tao_windows_overlay.c
+++ b/decorated-window-tao/src/main/native/windows/nucleus_tao_windows_overlay.c
@@ -435,7 +435,7 @@ static void ensureClassRegistered(void) {
/* ============================================================ */
JNIEXPORT jlong JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nativeCreateOverlay(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nativeCreateOverlay(
JNIEnv *env, jclass clazz, jlong ownerHwnd) {
(void)clazz;
if (sJVM == NULL) (*env)->GetJavaVM(env, &sJVM);
@@ -498,7 +498,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nat
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nativeSetOverlayFrame(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nativeSetOverlayFrame(
JNIEnv *env, jclass clazz, jlong overlay,
jint xPx, jint yPx, jint widthPx, jint heightPx) {
(void)env; (void)clazz;
@@ -519,7 +519,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nat
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nativeSetOverlayRegions(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nativeSetOverlayRegions(
JNIEnv *env, jclass clazz, jlong overlay, jfloatArray rectsXYWHPx, jint count) {
(void)clazz;
OverlayState *s = (OverlayState *)(uintptr_t)overlay;
@@ -580,7 +580,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nat
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nativeSetOverlayCallback(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nativeSetOverlayCallback(
JNIEnv *env, jclass clazz, jlong overlay, jobject callback) {
(void)clazz;
OverlayState *s = (OverlayState *)(uintptr_t)overlay;
@@ -593,7 +593,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nat
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nativeSetOverlayKeyCallback(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nativeSetOverlayKeyCallback(
JNIEnv *env, jclass clazz, jlong overlay, jobject callback) {
(void)clazz;
OverlayState *s = (OverlayState *)(uintptr_t)overlay;
@@ -605,7 +605,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nat
}
JNIEXPORT jboolean JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nativeMakeCurrent(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nativeMakeCurrent(
JNIEnv *env, jclass clazz, jlong overlay) {
(void)env; (void)clazz;
OverlayState *s = (OverlayState *)(uintptr_t)overlay;
@@ -614,7 +614,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nat
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nativeSwapBuffers(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nativeSwapBuffers(
JNIEnv *env, jclass clazz, jlong overlay) {
(void)env; (void)clazz;
OverlayState *s = (OverlayState *)(uintptr_t)overlay;
@@ -624,7 +624,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nat
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nativeSetCursor(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nativeSetCursor(
JNIEnv *env, jclass clazz, jlong overlay, jint cursorCode) {
(void)env; (void)clazz;
OverlayState *s = (OverlayState *)(uintptr_t)overlay;
@@ -646,7 +646,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nat
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nativeReleaseOverlay(
+Java_dev_nucleusframework_nucleus_window_tao_NativeTaoWindowsOverlayBridge_nativeReleaseOverlay(
JNIEnv *env, jclass clazz, jlong overlay) {
(void)clazz;
OverlayState *s = (OverlayState *)(uintptr_t)overlay;
diff --git a/decorated-window-tao/src/main/native/windows/nucleus_tao_windows_popup.c b/decorated-window-tao/src/main/native/windows/nucleus_tao_windows_popup.c
index 55dff1c75..abc7d8670 100644
--- a/decorated-window-tao/src/main/native/windows/nucleus_tao_windows_popup.c
+++ b/decorated-window-tao/src/main/native/windows/nucleus_tao_windows_popup.c
@@ -340,7 +340,7 @@ static void ensurePopupClassRegistered(void) {
/* ============================================================ */
JNIEXPORT jlong JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridgeWindows_nativeCreatePanel(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridgeWindows_nativeCreatePanel(
JNIEnv *env, jclass clazz, jlong parentHwnd, jint xPx, jint yPx, jint widthPx, jint heightPx) {
(void)clazz;
if (sJVM == NULL) (*env)->GetJavaVM(env, &sJVM);
@@ -395,7 +395,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridgeWindows_nativeCr
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridgeWindows_nativeSetFrameInWindow(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridgeWindows_nativeSetFrameInWindow(
JNIEnv *env, jclass clazz, jlong panel, jint xPx, jint yPx, jint widthPx, jint heightPx) {
(void)env; (void)clazz;
PopupState *p = (PopupState *)(uintptr_t)panel;
@@ -410,7 +410,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridgeWindows_nativeSe
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridgeWindows_nativeSetFocusable(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridgeWindows_nativeSetFocusable(
JNIEnv *env, jclass clazz, jlong panel, jboolean focusable) {
(void)env; (void)clazz;
PopupState *p = (PopupState *)(uintptr_t)panel;
@@ -419,7 +419,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridgeWindows_nativeSe
}
JNIEXPORT jlong JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridgeWindows_nativeContentHwnd(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridgeWindows_nativeContentHwnd(
JNIEnv *env, jclass clazz, jlong panel) {
(void)env; (void)clazz;
PopupState *p = (PopupState *)(uintptr_t)panel;
@@ -427,7 +427,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridgeWindows_nativeCo
}
JNIEXPORT jboolean JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridgeWindows_nativeMakeCurrent(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridgeWindows_nativeMakeCurrent(
JNIEnv *env, jclass clazz, jlong panel) {
(void)env; (void)clazz;
PopupState *p = (PopupState *)(uintptr_t)panel;
@@ -436,7 +436,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridgeWindows_nativeMa
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridgeWindows_nativeSwapBuffers(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridgeWindows_nativeSwapBuffers(
JNIEnv *env, jclass clazz, jlong panel) {
(void)env; (void)clazz;
PopupState *p = (PopupState *)(uintptr_t)panel;
@@ -446,7 +446,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridgeWindows_nativeSw
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridgeWindows_nativeSetEventCallback(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridgeWindows_nativeSetEventCallback(
JNIEnv *env, jclass clazz, jlong panel, jobject callback) {
(void)clazz;
PopupState *p = (PopupState *)(uintptr_t)panel;
@@ -458,7 +458,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridgeWindows_nativeSe
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridgeWindows_nativeInstallOutsideClickMonitor(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridgeWindows_nativeInstallOutsideClickMonitor(
JNIEnv *env, jclass clazz, jlong panel, jobject listener) {
(void)clazz;
PopupState *p = (PopupState *)(uintptr_t)panel;
@@ -477,7 +477,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridgeWindows_nativeIn
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridgeWindows_nativeUninstallOutsideClickMonitor(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridgeWindows_nativeUninstallOutsideClickMonitor(
JNIEnv *env, jclass clazz, jlong panel) {
(void)clazz;
PopupState *p = (PopupState *)(uintptr_t)panel;
@@ -493,7 +493,7 @@ Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridgeWindows_nativeUn
}
JNIEXPORT void JNICALL
-Java_io_github_kdroidfilter_nucleus_window_tao_PopupNativeBridgeWindows_nativeRelease(
+Java_dev_nucleusframework_nucleus_window_tao_PopupNativeBridgeWindows_nativeRelease(
JNIEnv *env, jclass clazz, jlong panel) {
(void)clazz;
PopupState *p = (PopupState *)(uintptr_t)panel;
diff --git a/decorated-window-tao/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.decorated-window-tao/reachability-metadata.json b/decorated-window-tao/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.decorated-window-tao/reachability-metadata.json
similarity index 77%
rename from decorated-window-tao/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.decorated-window-tao/reachability-metadata.json
rename to decorated-window-tao/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.decorated-window-tao/reachability-metadata.json
index a79d01776..8ed0a9d21 100644
--- a/decorated-window-tao/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.decorated-window-tao/reachability-metadata.json
+++ b/decorated-window-tao/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.decorated-window-tao/reachability-metadata.json
@@ -1,7 +1,7 @@
{
"reflection": [
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeTaoBridge",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeTaoBridge",
"jniAccessible": true,
"methods": [
{ "name": "dispatchDeepLink", "parameterTypes": ["java.lang.String"] },
@@ -15,11 +15,11 @@
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.TaoDeepLinkBridge",
+ "type": "dev.nucleusframework.nucleus.window.tao.TaoDeepLinkBridge",
"jniAccessible": true
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeTaoBridge$EventCallback",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeTaoBridge$EventCallback",
"jniAccessible": true,
"methods": [
{
@@ -67,7 +67,7 @@
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.TaoApplication$EventDispatcher",
+ "type": "dev.nucleusframework.nucleus.window.tao.TaoApplication$EventDispatcher",
"jniAccessible": true,
"allDeclaredFields": true,
"methods": [
@@ -116,7 +116,7 @@
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeMetalBridge",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeMetalBridge",
"jniAccessible": true,
"methods": [
{
@@ -129,7 +129,7 @@
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.render.MetalFrame",
+ "type": "dev.nucleusframework.nucleus.window.tao.render.MetalFrame",
"jniAccessible": true,
"methods": [
{
@@ -152,23 +152,23 @@
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeTaoGlBridge",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeTaoGlBridge",
"jniAccessible": true
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDecoBridge",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDecoBridge",
"jniAccessible": true
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsNativeViewBridge",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsNativeViewBridge",
"jniAccessible": true
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsOverlayBridge",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsOverlayBridge",
"jniAccessible": true
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsOverlayBridge$OverlayEventCallback",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsOverlayBridge$OverlayEventCallback",
"jniAccessible": true,
"methods": [
{ "name": "onPointerEvent", "parameterTypes": ["int","float","float","int","int"] },
@@ -176,7 +176,7 @@
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeViewOverlayControllerWindows$OverlayCallback",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeViewOverlayControllerWindows$OverlayCallback",
"jniAccessible": true,
"methods": [
{ "name": "onPointerEvent", "parameterTypes": ["int","float","float","int","int"] },
@@ -184,18 +184,18 @@
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsOverlayBridge$OverlayKeyCallback",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsOverlayBridge$OverlayKeyCallback",
"jniAccessible": true,
"methods": [
{ "name": "onKeyEvent", "parameterTypes": ["int","int","int","int"] }
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.PopupNativeBridgeWindows",
+ "type": "dev.nucleusframework.nucleus.window.tao.PopupNativeBridgeWindows",
"jniAccessible": true
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.PopupNativeBridgeWindows$EventCallback",
+ "type": "dev.nucleusframework.nucleus.window.tao.PopupNativeBridgeWindows$EventCallback",
"jniAccessible": true,
"methods": [
{ "name": "onPointerEvent", "parameterTypes": ["int","float","float","int","int"] },
@@ -204,14 +204,14 @@
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.PopupNativeBridgeWindows$OutsideClickListener",
+ "type": "dev.nucleusframework.nucleus.window.tao.PopupNativeBridgeWindows$OutsideClickListener",
"jniAccessible": true,
"methods": [
{ "name": "onOutsideClick", "parameterTypes": ["int","int"] }
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.render.TaoPopupSceneLayerWindows$PopupEventCallback",
+ "type": "dev.nucleusframework.nucleus.window.tao.render.TaoPopupSceneLayerWindows$PopupEventCallback",
"jniAccessible": true,
"methods": [
{ "name": "onPointerEvent", "parameterTypes": ["int","float","float","int","int"] },
@@ -220,37 +220,37 @@
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.render.TaoPopupSceneLayerWindows$PopupOutsideListener",
+ "type": "dev.nucleusframework.nucleus.window.tao.render.TaoPopupSceneLayerWindows$PopupOutsideListener",
"jniAccessible": true,
"methods": [
{ "name": "onOutsideClick", "parameterTypes": ["int","int"] }
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDecoBridge",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDecoBridge",
"jniAccessible": true
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeTaoEglBridge",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeTaoEglBridge",
"jniAccessible": true
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxWidgetBridge",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxWidgetBridge",
"jniAccessible": true
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxWidgetBridge$OverlayInputCallback",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxWidgetBridge$OverlayInputCallback",
"jniAccessible": true,
"methods": [
{ "name": "onEvent", "parameterTypes": ["int","int","int","int","int"] }
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge",
"jniAccessible": true
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeTaoWindowsDndBridge$Callback",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeTaoWindowsDndBridge$Callback",
"jniAccessible": true,
"methods": [
{ "name": "onDragEnter", "parameterTypes": ["long","int","int","int","boolean"] },
@@ -260,7 +260,7 @@
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.render.TaoComposeSceneHostWindows$InboundDnDCallback",
+ "type": "dev.nucleusframework.nucleus.window.tao.render.TaoComposeSceneHostWindows$InboundDnDCallback",
"jniAccessible": true,
"methods": [
{ "name": "onDragEnter", "parameterTypes": ["long","int","int","int","boolean"] },
@@ -270,11 +270,11 @@
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge",
"jniAccessible": true
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeTaoMacOsDndBridge$Callback",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeTaoMacOsDndBridge$Callback",
"jniAccessible": true,
"methods": [
{ "name": "onDragEnter", "parameterTypes": ["long","int","int","int","boolean"] },
@@ -284,7 +284,7 @@
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.render.TaoComposeSceneHost$InboundDnDCallback",
+ "type": "dev.nucleusframework.nucleus.window.tao.render.TaoComposeSceneHost$InboundDnDCallback",
"jniAccessible": true,
"methods": [
{ "name": "onDragEnter", "parameterTypes": ["long","int","int","int","boolean"] },
@@ -294,11 +294,11 @@
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge",
"jniAccessible": true
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxDndBridge$Callback",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxDndBridge$Callback",
"jniAccessible": true,
"methods": [
{ "name": "onDragEnter", "parameterTypes": ["long","int","int","int","boolean"] },
@@ -308,7 +308,7 @@
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.render.TaoComposeSceneHostLinux$InboundDnDCallback",
+ "type": "dev.nucleusframework.nucleus.window.tao.render.TaoComposeSceneHostLinux$InboundDnDCallback",
"jniAccessible": true,
"methods": [
{ "name": "onDragEnter", "parameterTypes": ["long","int","int","int","boolean"] },
@@ -318,11 +318,11 @@
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxTouchBridge",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxTouchBridge",
"jniAccessible": true
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.NativeTaoLinuxTouchBridge$Callback",
+ "type": "dev.nucleusframework.nucleus.window.tao.NativeTaoLinuxTouchBridge$Callback",
"jniAccessible": true,
"methods": [
{ "name": "onTouchEvent", "parameterTypes": ["long","int","int","long[]","long[]","long[]","long"] },
@@ -330,7 +330,7 @@
]
},
{
- "type": "io.github.kdroidfilter.nucleus.window.tao.render.TaoComposeSceneHostLinux$InboundTouchCallback",
+ "type": "dev.nucleusframework.nucleus.window.tao.render.TaoComposeSceneHostLinux$InboundTouchCallback",
"jniAccessible": true,
"methods": [
{ "name": "onTouchEvent", "parameterTypes": ["long","int","int","long[]","long[]","long[]","long"] },
diff --git a/docs/auto-update.md b/docs/auto-update.md
index 62070396c..3474d6ebe 100644
--- a/docs/auto-update.md
+++ b/docs/auto-update.md
@@ -23,7 +23,7 @@ flowchart LR
```
!!! tip "Try it yourself"
- Download an **older version** of the Nucleus demo app from the [GitHub Releases page](https://github.com/kdroidFilter/Nucleus/releases), install it, and launch it. The app will automatically detect that a newer version is available, download the update with a progress bar, and offer an "Install & Restart" button. This is the exact same flow your users will experience.
+ Download an **older version** of the Nucleus demo app from the [GitHub Releases page](https://github.com/nucleusframework/Nucleus/releases), install it, and launch it. The app will automatically detect that a newer version is available, download the update with a progress bar, and offer an "Install & Restart" button. This is the exact same flow your users will experience.
## Updatable Formats
@@ -62,7 +62,7 @@ In the release workflow, each platform builds its installers in parallel and upl
2. Runs the `generate-update-yml` action, which scans every installer file, computes SHA-512 checksums, and produces `latest-mac.yml`, `latest.yml` (Windows), and `latest-linux.yml`
3. Uploads everything (installers + YML files) to the release
-See the [example release workflow](https://github.com/kdroidFilter/Nucleus/blob/main/.github/workflows/release-desktop.yaml) for the full setup.
+See the [example release workflow](https://github.com/nucleusframework/Nucleus/blob/main/.github/workflows/release-desktop.yaml) for the full setup.
### Building locally
@@ -96,7 +96,7 @@ releaseDate: '2026-03-01T12:00:00.000Z'
```
!!! tip
- In practice, always use CI for multi-platform releases. The [release workflow](https://github.com/kdroidFilter/Nucleus/blob/main/.github/workflows/release-desktop.yaml) handles all of this automatically: build in parallel, merge YML files, and publish to GitHub Releases in a single pipeline.
+ In practice, always use CI for multi-platform releases. The [release workflow](https://github.com/nucleusframework/Nucleus/blob/main/.github/workflows/release-desktop.yaml) handles all of this automatically: build in parallel, merge YML files, and publish to GitHub Releases in a single pipeline.
### YML file examples
@@ -174,7 +174,7 @@ You are responsible for uploading the installers and YML files to your chosen ho
### Option 1: GitHub Releases (recommended)
-The simplest approach. Use the [ready-made release CI workflow](https://github.com/kdroidFilter/Nucleus/blob/main/.github/workflows/release-desktop.yaml) which handles everything automatically:
+The simplest approach. Use the [ready-made release CI workflow](https://github.com/nucleusframework/Nucleus/blob/main/.github/workflows/release-desktop.yaml) which handles everything automatically:
1. Builds on all platforms in parallel
2. Generates the `latest-*.yml` files from all platform artifacts
@@ -221,16 +221,16 @@ See [Publishing](publishing.md) for the full configuration reference.
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.updater-runtime:1.0.0")
+ implementation("dev.nucleusframework:nucleus.updater-runtime:1.0.0")
}
```
### Quick Start
```kotlin
-import io.github.kdroidfilter.nucleus.updater.NucleusUpdater
-import io.github.kdroidfilter.nucleus.updater.UpdateResult
-import io.github.kdroidfilter.nucleus.updater.provider.GitHubProvider
+import dev.nucleusframework.nucleus.updater.NucleusUpdater
+import dev.nucleusframework.nucleus.updater.UpdateResult
+import dev.nucleusframework.nucleus.updater.provider.GitHubProvider
val updater = NucleusUpdater {
provider = GitHubProvider(owner = "myorg", repo = "myapp")
@@ -281,7 +281,7 @@ NucleusUpdater {
#### GitHub Releases
```kotlin
-import io.github.kdroidfilter.nucleus.updater.provider.GitHubProvider
+import dev.nucleusframework.nucleus.updater.provider.GitHubProvider
provider = GitHubProvider(
owner = "myorg",
@@ -293,7 +293,7 @@ provider = GitHubProvider(
#### Generic HTTP Server
```kotlin
-import io.github.kdroidfilter.nucleus.updater.provider.GenericProvider
+import dev.nucleusframework.nucleus.updater.provider.GenericProvider
provider = GenericProvider(
baseUrl = "https://updates.example.com"
@@ -459,17 +459,17 @@ To fix this, pass a client built with [`NativeHttpClient`](runtime/native-http.m
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.updater-runtime:")
- implementation("io.github.kdroidfilter:nucleus.native-http:")
+ implementation("dev.nucleusframework:nucleus.updater-runtime:")
+ implementation("dev.nucleusframework:nucleus.native-http:")
}
```
**2. Inject the client in the updater config**
```kotlin
-import io.github.kdroidfilter.nucleus.nativehttp.NativeHttpClient
-import io.github.kdroidfilter.nucleus.updater.NucleusUpdater
-import io.github.kdroidfilter.nucleus.updater.provider.GitHubProvider
+import dev.nucleusframework.nucleus.nativehttp.NativeHttpClient
+import dev.nucleusframework.nucleus.updater.NucleusUpdater
+import dev.nucleusframework.nucleus.updater.provider.GitHubProvider
val updater = NucleusUpdater {
provider = GitHubProvider(owner = "myorg", repo = "myapp")
@@ -482,7 +482,7 @@ The injected client is used for **both** the metadata check and the file downloa
You can also compose additional options via the builder extension:
```kotlin
-import io.github.kdroidfilter.nucleus.nativehttp.NativeHttpClient.withNativeSsl
+import dev.nucleusframework.nucleus.nativehttp.NativeHttpClient.withNativeSsl
import java.net.http.HttpClient
import java.time.Duration
diff --git a/docs/changelog.md b/docs/changelog.md
index aeefe33a9..fe59d6bc9 100644
--- a/docs/changelog.md
+++ b/docs/changelog.md
@@ -525,7 +525,7 @@ nativeDistributions {
### Bug Fixes
-- **Fix title bar drag on Windows (`decorated-window-jbr`)** — Window dragging via the title bar no longer occasionally fails on the first attempt when another window has focus. The new `WindowMouseEventEffect` approach uses AWT mouse listeners for reliable hit-test forwarding to JBR's `CustomTitleBar`, fixing the intermittent missed drag events. ([#53](https://github.com/kdroidFilter/Nucleus/issues/53))
+- **Fix title bar drag on Windows (`decorated-window-jbr`)** — Window dragging via the title bar no longer occasionally fails on the first attempt when another window has focus. The new `WindowMouseEventEffect` approach uses AWT mouse listeners for reliable hit-test forwarding to JBR's `CustomTitleBar`, fixing the intermittent missed drag events. ([#53](https://github.com/nucleusframework/Nucleus/issues/53))
- Promote `core-runtime` to `api` scope in `updater-runtime` and `system-color` so consumers no longer need to declare it separately.
- Include generic provider in publish mode detection.
- Skip Flatpak packaging gracefully when `flatpak` CLI is missing.
@@ -664,15 +664,15 @@ nativeDistributions {
- **Fix Windows fullscreen** — Compose for Desktop does not handle fullscreen correctly on Windows (window does not cover the taskbar). Now uses native Win32 APIs for true fullscreen, matching Edge and other native Windows applications.
- **Eliminate white resize flash on Windows** — Adjust Skiko's clear color to transparent for dark themes and synchronize DWM caption/border colors for consistent Windows 11 window chrome styling.
-- **Skip Android configurations in `CleanNativeLibsTransform`** — Fixes build issues when Android targets are present. ([#79](https://github.com/kdroidFilter/ComposeDeskKit/issues/79))
-- **Skip ZIP stapling to preserve blockmap** — Prevents breaking auto-update blockmap integrity during notarization. ([#70](https://github.com/kdroidFilter/ComposeDeskKit/issues/70))
-- **Detect target arch from JDK release file for cross-building** — Fixes architecture detection when cross-compiling. ([#71](https://github.com/kdroidFilter/ComposeDeskKit/issues/71))
+- **Skip Android configurations in `CleanNativeLibsTransform`** — Fixes build issues when Android targets are present. ([#79](https://github.com/nucleusframework/ComposeDeskKit/issues/79))
+- **Skip ZIP stapling to preserve blockmap** — Prevents breaking auto-update blockmap integrity during notarization. ([#70](https://github.com/nucleusframework/ComposeDeskKit/issues/70))
+- **Detect target arch from JDK release file for cross-building** — Fixes architecture detection when cross-compiling. ([#71](https://github.com/nucleusframework/ComposeDeskKit/issues/71))
- Move Windows dark mode monitoring to native thread for reliability.
- Correct D-Bus `ReadOne` variant parsing for Linux accent color.
### Deprecations
-- **`appStore` property deprecated** — PKG distributions are now always treated as App Store builds. The `appStore` property is no longer needed. ([#65](https://github.com/kdroidFilter/ComposeDeskKit/issues/65))
+- **`appStore` property deprecated** — PKG distributions are now always treated as App Store builds. The `appStore` property is no longer needed. ([#65](https://github.com/nucleusframework/ComposeDeskKit/issues/65))
---
@@ -822,17 +822,17 @@ The `decorated-window` module has been split into three modules:
**Dependency update** — replace:
```kotlin
-implementation("io.github.kdroidfilter:nucleus.decorated-window:")
+implementation("dev.nucleusframework:nucleus.decorated-window:")
```
With one of:
```kotlin
// JBR-based (same behavior as before)
-implementation("io.github.kdroidfilter:nucleus.decorated-window-jbr:")
+implementation("dev.nucleusframework:nucleus.decorated-window-jbr:")
// JNI-based (no JBR dependency, works with GraalVM)
-implementation("io.github.kdroidfilter:nucleus.decorated-window-jni:")
+implementation("dev.nucleusframework:nucleus.decorated-window-jni:")
```
**Breaking changes in `TitleBarColors`** — the following fields have been **removed**:
@@ -844,7 +844,7 @@ implementation("io.github.kdroidfilter:nucleus.decorated-window-jni:")
These platform-specific button state colors are now handled internally by each module's native implementation. If you were constructing `TitleBarColors` explicitly with these fields, remove them.
-**No other code changes required** — all composable APIs (`DecoratedWindow`, `DecoratedDialog`, `TitleBar`, `DialogTitleBar`), scopes, and state types are identical. No import changes needed — the package remains `io.github.kdroidfilter.nucleus.window`.
+**No other code changes required** — all composable APIs (`DecoratedWindow`, `DecoratedDialog`, `TitleBar`, `DialogTitleBar`), scopes, and state types are identical. No import changes needed — the package remains `dev.nucleusframework.nucleus.window`.
See [Decorated Window](runtime/decorated-window.md) for full details on choosing between JBR and JNI.
diff --git a/docs/ci-cd.md b/docs/ci-cd.md
index 32d95d428..d393fc8c0 100644
--- a/docs/ci-cd.md
+++ b/docs/ci-cd.md
@@ -7,7 +7,7 @@ Nucleus provides reusable composite actions and ready-to-use GitHub Actions work
All composite actions can be referenced directly from the Nucleus repository — no need to copy them into your project:
```yaml
- - uses: kdroidFilter/Nucleus/.github/actions/setup-nucleus@main
+ - uses: nucleusframework/Nucleus/.github/actions/setup-nucleus@main
```
Replace `@main` with a specific tag (e.g. `@v1.0.0`) to pin a stable version.
@@ -42,7 +42,7 @@ The `setup-nucleus` composite action (`.github/actions/setup-nucleus`) sets up t
### Usage
```yaml
-- uses: kdroidFilter/Nucleus/.github/actions/setup-nucleus@main
+- uses: nucleusframework/Nucleus/.github/actions/setup-nucleus@main
with:
jbr-version: '25.0.2b329.66'
packaging-tools: 'true'
@@ -79,7 +79,7 @@ The `setup-nucleus` composite action (`.github/actions/setup-nucleus`) sets up t
When `graalvm: 'true'` is set, the action installs **BellSoft Liberica NIK** instead of JBR, plus platform-specific toolchains:
```yaml
-- uses: kdroidFilter/Nucleus/.github/actions/setup-nucleus@main
+- uses: nucleusframework/Nucleus/.github/actions/setup-nucleus@main
with:
graalvm: 'true'
setup-gradle: 'true'
@@ -172,7 +172,7 @@ jobs:
echo "RELEASE_VERSION=$tag" >> "$GITHUB_ENV"
- name: Setup Nucleus
- uses: kdroidFilter/Nucleus/.github/actions/setup-nucleus@main
+ uses: nucleusframework/Nucleus/.github/actions/setup-nucleus@main
with:
jbr-version: '25.0.2b329.66'
packaging-tools: 'true'
@@ -225,7 +225,7 @@ matrix:
jbr-download-url: 'https://example.com/jbr-25-macos-x64-custom.tar.gz'
steps:
- - uses: kdroidFilter/Nucleus/.github/actions/setup-nucleus@main
+ - uses: nucleusframework/Nucleus/.github/actions/setup-nucleus@main
with:
jbr-version: '25.0.2b329.66'
jbr-download-url: ${{ matrix.jbr-download-url || '' }}
@@ -271,7 +271,7 @@ Merge arm64 and x64 builds into a universal (fat) binary using `lipo`, then opti
- name: Setup macOS signing
id: signing
if: ${{ secrets.MAC_CERTIFICATES_P12 != '' }}
- uses: kdroidFilter/Nucleus/.github/actions/setup-macos-signing@main
+ uses: nucleusframework/Nucleus/.github/actions/setup-macos-signing@main
with:
certificate-base64: ${{ secrets.MAC_CERTIFICATES_P12 }}
certificate-password: ${{ secrets.MAC_CERTIFICATES_PASSWORD }}
@@ -299,7 +299,7 @@ Merge arm64 and x64 builds into a universal (fat) binary using `lipo`, then opti
path: artifacts/release-assets-macOS-amd64
- name: Build universal binary
- uses: kdroidFilter/Nucleus/.github/actions/build-macos-universal@main
+ uses: nucleusframework/Nucleus/.github/actions/build-macos-universal@main
with:
arm64-path: artifacts/release-assets-macOS-arm64
x64-path: artifacts/release-assets-macOS-amd64
@@ -375,7 +375,7 @@ Combine amd64 and arm64 `.appx` files into a single `.msixbundle`. Nucleus inclu
path: artifacts/release-assets-Windows-arm64
- name: Build APPX Bundle
- uses: kdroidFilter/Nucleus/.github/actions/build-windows-appxbundle@main
+ uses: nucleusframework/Nucleus/.github/actions/build-windows-appxbundle@main
with:
amd64-path: artifacts/release-assets-Windows-amd64
arm64-path: artifacts/release-assets-Windows-arm64
@@ -432,14 +432,14 @@ After all builds complete, create a GitHub Release with all artifacts and update
fi
- name: Generate update YML files
- uses: kdroidFilter/Nucleus/.github/actions/generate-update-yml@main
+ uses: nucleusframework/Nucleus/.github/actions/generate-update-yml@main
with:
artifacts-path: artifacts
version: ${{ env.VERSION }}
channel: ${{ env.CHANNEL }}
- name: Publish release
- uses: kdroidFilter/Nucleus/.github/actions/publish-release@main
+ uses: nucleusframework/Nucleus/.github/actions/publish-release@main
with:
artifacts-path: artifacts
tag: ${{ env.TAG }}
@@ -467,16 +467,16 @@ After all builds complete, create a GitHub Release with all artifacts and update
## Composite Actions Reference
-Nucleus provides reusable composite actions that you can reference directly in your workflows using `kdroidFilter/Nucleus/.github/actions/@main`:
+Nucleus provides reusable composite actions that you can reference directly in your workflows using `nucleusframework/Nucleus/.github/actions/@main`:
| Action | Usage | Description |
|--------|-------|-------------|
-| `setup-nucleus` | `kdroidFilter/Nucleus/.github/actions/setup-nucleus@main` | Setup JBR 25, packaging tools, Gradle, Node.js |
-| `setup-macos-signing` | `kdroidFilter/Nucleus/.github/actions/setup-macos-signing@main` | Create temporary keychain and import signing certificates |
-| `build-macos-universal` | `kdroidFilter/Nucleus/.github/actions/build-macos-universal@main` | Merge arm64 + x64 into universal binary via `lipo`, sign, and package |
-| `build-windows-appxbundle` | `kdroidFilter/Nucleus/.github/actions/build-windows-appxbundle@main` | Combine amd64 + arm64 `.appx` into `.msixbundle` |
-| `generate-update-yml` | `kdroidFilter/Nucleus/.github/actions/generate-update-yml@main` | Generate `latest-*.yml` / `beta-*.yml` / `alpha-*.yml` metadata |
-| `publish-release` | `kdroidFilter/Nucleus/.github/actions/publish-release@main` | Create GitHub Release with all artifacts |
+| `setup-nucleus` | `nucleusframework/Nucleus/.github/actions/setup-nucleus@main` | Setup JBR 25, packaging tools, Gradle, Node.js |
+| `setup-macos-signing` | `nucleusframework/Nucleus/.github/actions/setup-macos-signing@main` | Create temporary keychain and import signing certificates |
+| `build-macos-universal` | `nucleusframework/Nucleus/.github/actions/build-macos-universal@main` | Merge arm64 + x64 into universal binary via `lipo`, sign, and package |
+| `build-windows-appxbundle` | `nucleusframework/Nucleus/.github/actions/build-windows-appxbundle@main` | Combine amd64 + arm64 `.appx` into `.msixbundle` |
+| `generate-update-yml` | `nucleusframework/Nucleus/.github/actions/generate-update-yml@main` | Generate `latest-*.yml` / `beta-*.yml` / `alpha-*.yml` metadata |
+| `publish-release` | `nucleusframework/Nucleus/.github/actions/publish-release@main` | Create GitHub Release with all artifacts |
## GraalVM Native Image Release
@@ -528,7 +528,7 @@ jobs:
# (darkmode-detector, native-ssl, decorated-window-jni, etc.)
- name: Setup Nucleus (GraalVM)
- uses: kdroidFilter/Nucleus/.github/actions/setup-nucleus@main
+ uses: nucleusframework/Nucleus/.github/actions/setup-nucleus@main
with:
graalvm: 'true'
setup-gradle: 'true'
@@ -574,5 +574,5 @@ These tasks first compile the native image via `packageGraalvmNative`, then pack
- **fail-fast: false**: Continue building other platforms if one fails
- **Timeout**: Set generous timeouts (120min) for Flatpak/Snap builds
- **Caching**: `setup-nucleus` enables Gradle caching automatically via `gradle/actions/setup-gradle@v4`
-- **No checkout needed**: When using actions from `kdroidFilter/Nucleus`, GitHub fetches them automatically — no need to checkout the Nucleus repository
+- **No checkout needed**: When using actions from `nucleusframework/Nucleus`, GitHub fetches them automatically — no need to checkout the Nucleus repository
- **workflow_dispatch**: Add it as a trigger to allow re-running a release manually
diff --git a/docs/comparison/packaging.md b/docs/comparison/packaging.md
index 59533b504..6b3bd56b7 100644
--- a/docs/comparison/packaging.md
+++ b/docs/comparison/packaging.md
@@ -75,7 +75,7 @@ Scoring: each of 13 dimensions rated 0–10, total = raw sum / 130 × 100. See [
² Conveyor has `app.linux.aarch64` config keys ([docs](https://conveyor.hydraulic.dev/21.1/configs/linux/)), but Linux ARM64 is listed as planned in the FAQ ([FAQ](https://conveyor.hydraulic.dev/21.1/faq/output-formats/)).
??? info "Sources"
- - **Nucleus**: macOS universal binary via [`build-macos-universal`](https://github.com/kdroidFilter/Nucleus/tree/main/.github/actions/build-macos-universal) CI action using `lipo`
+ - **Nucleus**: macOS universal binary via [`build-macos-universal`](https://github.com/nucleusframework/Nucleus/tree/main/.github/actions/build-macos-universal) CI action using `lipo`
- **Conveyor**: [Package formats](https://conveyor.hydraulic.dev/21.1/package-formats/), [macOS config](https://conveyor.hydraulic.dev/21.1/configs/mac/), [Linux config](https://conveyor.hydraulic.dev/21.1/configs/linux/)
- **install4j**: [Features page](https://www.ej-technologies.com/install4j/features) — "compile installers for all platforms on any of these platforms"
- **jpackage**: [Oracle man page](https://docs.oracle.com/en/java/javase/23/docs/specs/man/jpackage.html) — must build on target OS
@@ -111,7 +111,7 @@ Scoring: each of 13 dimensions rated 0–10, total = raw sum / 130 × 100. See [
³ jDeploy DMG requires a separate GitHub Action + macOS runner ([jdeploy-action-dmg](https://github.com/shannah/jdeploy-action-dmg)).
??? info "Sources"
- - **Nucleus**: [`TargetFormat.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/TargetFormat.kt) — 17 enum values (16 distributable + `RawAppImage` intermediate)
+ - **Nucleus**: [`TargetFormat.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/TargetFormat.kt) — 17 enum values (16 distributable + `RawAppImage` intermediate)
- **Conveyor**: [Package formats](https://conveyor.hydraulic.dev/21.1/package-formats/), [Output formats FAQ](https://conveyor.hydraulic.dev/21.1/faq/output-formats/) — MSIX, EXE, ZIP (Windows); signed .app in ZIP (macOS); DEB, tar.gz (Linux). No DMG, PKG, RPM, NSIS, AppImage, Snap, Flatpak.
- **install4j**: [Media files](https://www.ej-technologies.com/resources/install4j/help/doc/concepts/mediaFiles.html) — EXE, MSI wrapper, DMG, .app, RPM, DEB, tar.gz, shell installer. No PKG, NSIS, AppX.
- **jpackage**: [Oracle man page](https://docs.oracle.com/en/java/javase/23/docs/specs/man/jpackage.html) — `--type`: app-image, dmg, pkg, exe, msi, deb, rpm
@@ -135,7 +135,7 @@ Nucleus leads by leveraging electron-builder as its packaging backend: jpackage
| Compose MP | ❌ | — | — | — | — | **0** |
??? info "Sources"
- - **Nucleus**: [`NucleusUpdater.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/NucleusUpdater.kt) — `GitHubProvider` and `GenericProvider`; SHA-512 verification; 9 self-updatable format types (EXE, NSIS, MSI, DMG, ZIP, AppImage, DEB, RPM, NsisWeb)
+ - **Nucleus**: [`NucleusUpdater.kt`](https://github.com/nucleusframework/Nucleus/blob/main/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/NucleusUpdater.kt) — `GitHubProvider` and `GenericProvider`; SHA-512 verification; 9 self-updatable format types (EXE, NSIS, MSI, DMG, ZIP, AppImage, DEB, RPM, NsisWeb)
- **Conveyor**: [Update modes](https://conveyor.hydraulic.dev/21.1/configs/update-modes/) — Sparkle 2 on macOS (delta patches for 5 previous versions), MSIX native on Windows (64 KB chunk delta), apt on Linux. [Understanding updates](https://conveyor.hydraulic.dev/21.1/understanding-updates/)
- **install4j**: [Features](https://www.ej-technologies.com/install4j/features) — built-in auto-update with configurable strategies
- **jDeploy**: [Substack](https://jdeploy.substack.com/p/automated-deployment-and-updates) — auto-detects new versions on launch
@@ -159,7 +159,7 @@ Conveyor's delta update system is a genuine differentiator: a single-line change
¹ jDeploy pre-signs and notarizes installers using its own certificate; optional custom signing via GitHub Action ([FAQ](https://www.jdeploy.com/docs/faq/)).
??? info "Sources"
- - **Nucleus**: [`MacOSSigningSettings.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/MacOSSigningSettings.kt), [`WindowsSigningSettings.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/WindowsSigningSettings.kt) — Azure Trusted Signing via `azureTenantId`, `azureEndpoint`, `azureCertificateProfileName`
+ - **Nucleus**: [`MacOSSigningSettings.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/MacOSSigningSettings.kt), [`WindowsSigningSettings.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/WindowsSigningSettings.kt) — Azure Trusted Signing via `azureTenantId`, `azureEndpoint`, `azureCertificateProfileName`
- **Conveyor**: [Keys and certificates](https://conveyor.hydraulic.dev/21.1/configs/keys-and-certificates/) — macOS notarization (App Store Connect API keys), Windows self-signing, Azure Trusted Signing, Azure Key Vault, AWS KMS, SSL.com eSigner, DigiCert ONE, Google Cloud KMS, HSMs (SafeNet, YubiKey)
- **install4j**: [Features](https://www.ej-technologies.com/install4j/features) — cross-platform signing and notarization
- **jpackage**: [Oracle man page](https://docs.oracle.com/en/java/javase/23/docs/specs/man/jpackage.html) — `--mac-sign`, `--mac-signing-key-user-name`, `--mac-app-store`
@@ -181,7 +181,7 @@ Conveyor has the broadest signing provider support (6 cloud HSM services). Nucle
| Compose MP | ❌ | ❌ | ❌ | ❌ | ❌ | **1** |
??? info "Sources"
- - **Nucleus**: 6 composite actions in [`.github/actions/`](https://github.com/kdroidFilter/Nucleus/tree/main/.github/actions) — `setup-nucleus` (JBR or GraalVM Liberica NIK + tools), `setup-macos-signing` (keychain + P12), `build-macos-universal` (lipo merge + re-sign), `build-windows-appxbundle` (MakeAppx + SignTool), `generate-update-yml` (SHA-512 metadata), `publish-release` (gh release create). Since v1.3.0, `setup-nucleus` supports a `graalvm` option to install BellSoft Liberica NIK instead of JBR, enabling GraalVM Native Image builds in CI.
+ - **Nucleus**: 6 composite actions in [`.github/actions/`](https://github.com/nucleusframework/Nucleus/tree/main/.github/actions) — `setup-nucleus` (JBR or GraalVM Liberica NIK + tools), `setup-macos-signing` (keychain + P12), `build-macos-universal` (lipo merge + re-sign), `build-windows-appxbundle` (MakeAppx + SignTool), `generate-update-yml` (SHA-512 metadata), `publish-release` (gh release create). Since v1.3.0, `setup-nucleus` supports a `graalvm` option to install BellSoft Liberica NIK instead of JBR, enabling GraalVM Native Image builds in CI.
- **Conveyor**: [CI tutorial](https://conveyor.hydraulic.dev/21.1/tutorial/hare/ci/) — example workflows for GitHub Actions (build, deploy-to-gh, deploy-to-ssh). Conveyor runs on a single machine since it cross-compiles.
- **install4j**: [What's new](https://www.ej-technologies.com/install4j/whatsnew12) — CLI mode for CI, no pre-built actions
- **jDeploy**: [GitHub](https://github.com/shannah/jdeploy) — `jdeploy-action` for automated builds on tag push
@@ -204,7 +204,7 @@ Nucleus's CI pipeline is its strongest JVM differentiator. No other JVM tool pro
| jpackage | ❌ | ❌ | ✅ (JDK built-in) | — | **4** |
??? info "Sources"
- - **Nucleus**: Gradle plugin (`io.github.kdroidfilter.nucleus`), no Maven or CLI support
+ - **Nucleus**: Gradle plugin (`dev.nucleusframework.nucleus`), no Maven or CLI support
- **Conveyor**: [Gradle/Maven integration](https://conveyor.hydraulic.dev/21.1/configs/maven-gradle/) — open-source Gradle plugin (Gradle 7+); Maven via `mvn dependency:build-classpath` CLI integration; standalone `conveyor` CLI
- **install4j**: [Features](https://www.ej-technologies.com/install4j/features) — visual IDE + CLI + Gradle + Maven + Ant plugins
- **jDeploy**: [GitHub](https://github.com/shannah/jdeploy) — CLI tool, Maven integration, npm package
@@ -232,7 +232,7 @@ Nucleus is Gradle-only, which suits its Compose Desktop audience but limits adop
⁵ badass-jlink exposes no cert DSL, but its task hook (`tasks.named("jlink").doLast { … }`) gives access to the staged runtime image before jpackage consumes it — the cleanest manual workaround available.
??? info "Sources"
- - **Nucleus**: [`AbstractGenerateAotCacheTask.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractGenerateAotCacheTask.kt) — Project Leyden via `-XX:AOTCacheOutput` (JDK 25+); [`ProguardSettings.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/ProguardSettings.kt) — ProGuard 7.7.0 default; [`AbstractJLinkTask.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractJLinkTask.kt) — jlink with strip-debug, compression; [`AbstractPatchCaCertificatesTask.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractPatchCaCertificatesTask.kt) — copies JLink runtime, runs keytool to import PEM/DER certificates into `lib/security/cacerts`; [`graalvm-runtime`](https://github.com/kdroidFilter/Nucleus/tree/main/graalvm-runtime) — GraalVM Native Image bootstrap with `GraalVmInitializer.initialize()`, platform-specific reachability metadata, font substitution, and Skiko native library extraction. Requires BellSoft Liberica NIK 25 (full). Packaging via `packageGraalvmDmg`, `packageGraalvmNsis`, `packageGraalvmDeb` tasks.
+ - **Nucleus**: [`AbstractGenerateAotCacheTask.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractGenerateAotCacheTask.kt) — Project Leyden via `-XX:AOTCacheOutput` (JDK 25+); [`ProguardSettings.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/ProguardSettings.kt) — ProGuard 7.7.0 default; [`AbstractJLinkTask.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractJLinkTask.kt) — jlink with strip-debug, compression; [`AbstractPatchCaCertificatesTask.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractPatchCaCertificatesTask.kt) — copies JLink runtime, runs keytool to import PEM/DER certificates into `lib/security/cacerts`; [`graalvm-runtime`](https://github.com/nucleusframework/Nucleus/tree/main/graalvm-runtime) — GraalVM Native Image bootstrap with `GraalVmInitializer.initialize()`, platform-specific reachability metadata, font substitution, and Skiko native library extraction. Requires BellSoft Liberica NIK 25 (full). Packaging via `packageGraalvmDmg`, `packageGraalvmNsis`, `packageGraalvmDeb` tasks.
- **Conveyor**: [JVM config](https://conveyor.hydraulic.dev/21.1/configs/jvm/) — automatic jlink; `app.jvm.additional-ca-certs` key imports extra certificates into the bundled JDK's `cacerts`; [JDK stdlib](https://conveyor.hydraulic.dev/21.1/stdlib/jdks/) — 6 JDK vendors (Corretto, Zulu, Temurin, JBR, Microsoft, OpenJDK)
- **install4j**: [JRE bundles](https://www.ej-technologies.com/resources/install4j/help/doc/concepts/jreBundles.html), [createbundle CLI](https://www.ej-technologies.com/resources/install4j/help/doc/cli/createBundle.html) — no cert patching DSL; manual via pre-patched JRE bundle
- **jpackage**: [Override resources](https://docs.oracle.com/en/java/javase/23/jpackage/override-jpackage-resources.html) — `--resource-dir` limited to packaging templates; cert patching requires `--runtime-image` with a pre-patched jlink output
@@ -259,7 +259,7 @@ Only **Nucleus** and **Conveyor** provide declarative, first-class CA cert patch
- **Conveyor**: [Homepage](https://conveyor.hydraulic.dev/21.1/) — "build packages from any OS, sign and notarize Mac apps from Linux"
- **install4j**: [Homepage](https://www.ej-technologies.com/install4j) — "compile installers for all platforms on any of these platforms"
- **jDeploy**: [FAQ](https://www.jdeploy.com/docs/faq/) — "build native installers for Mac, Windows, and Linux on any platform"
- - **Nucleus**: [`TargetFormat.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/TargetFormat.kt) line 48 — `isCompatibleWithCurrentOS` check; packaging tasks disabled for non-matching OS
+ - **Nucleus**: [`TargetFormat.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/TargetFormat.kt) line 48 — `isCompatibleWithCurrentOS` check; packaging tasks disabled for non-matching OS
This is Nucleus's weakest dimension. However, Nucleus mitigates it with its 6-runner CI matrix — the pipeline handles cross-platform builds automatically.
@@ -277,7 +277,7 @@ This is Nucleus's weakest dimension. However, Nucleus mitigates it with its 6-ru
| JavaPackager | ✅ (Inno Setup) | ✅ | ✅ | ❌ | ❌ | **4** |
??? info "Sources"
- - **Nucleus**: [`NsisSettings.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/NsisSettings.kt) — 16 properties: `oneClick`, `allowElevation`, `perMachine`, `allowToChangeInstallationDirectory`, `createDesktopShortcut`, `createStartMenuShortcut`, `runAfterFinish`, `installerIcon`, `license`, `includeScript`, `multiLanguageInstaller`, `installerHeader`, `installerSidebar`, etc. [`DmgSettings.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/DmgSettings.kt) — `background`, `backgroundColor`, `badgeIcon`, `icon`, `format` (6 DMG formats: UDRW, UDRO, UDCO, UDZO, UDBZ, ULFO), `window`, `contents`
+ - **Nucleus**: [`NsisSettings.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/NsisSettings.kt) — 16 properties: `oneClick`, `allowElevation`, `perMachine`, `allowToChangeInstallationDirectory`, `createDesktopShortcut`, `createStartMenuShortcut`, `runAfterFinish`, `installerIcon`, `license`, `includeScript`, `multiLanguageInstaller`, `installerHeader`, `installerSidebar`, etc. [`DmgSettings.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/DmgSettings.kt) — `background`, `backgroundColor`, `badgeIcon`, `icon`, `format` (6 DMG formats: UDRW, UDRO, UDCO, UDZO, UDBZ, ULFO), `window`, `contents`
- **install4j**: [Features](https://www.ej-technologies.com/install4j/features) — visual IDE with 80+ configurable actions
- **Conveyor**: [Package formats](https://conveyor.hydraulic.dev/21.1/package-formats/) — MSIX is a fixed format with no installer UI customization
- **jpackage**: [Oracle man page](https://docs.oracle.com/en/java/javase/23/docs/specs/man/jpackage.html) — `--resource-dir` for template overrides
@@ -301,7 +301,7 @@ This is Nucleus's weakest dimension. However, Nucleus mitigates it with its 6-ru
| Compose MP | ❌ | ❌ | ❌ | ❌ | **0** |
??? info "Sources"
- - **Nucleus**: [`TargetFormat.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/TargetFormat.kt) — `isStoreFormat` = Pkg, AppX, Flatpak; [`PlatformSettings.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/PlatformSettings.kt) — `appStore`, `entitlementsFile`, `provisioningProfile` for MAS; [`AppXSettings.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/AppXSettings.kt) — `identityName`, `publisher`, `capabilities`; [`FlatpakSettings.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/FlatpakSettings.kt) — `runtime`, `finishArgs`, `license`
+ - **Nucleus**: [`TargetFormat.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/TargetFormat.kt) — `isStoreFormat` = Pkg, AppX, Flatpak; [`PlatformSettings.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/PlatformSettings.kt) — `appStore`, `entitlementsFile`, `provisioningProfile` for MAS; [`AppXSettings.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/AppXSettings.kt) — `identityName`, `publisher`, `capabilities`; [`FlatpakSettings.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/FlatpakSettings.kt) — `runtime`, `finishArgs`, `license`
- **Conveyor**: [Windows config](https://conveyor.hydraulic.dev/21.1/configs/windows/) — Microsoft Store supported via `conveyor make ms-store-release`; [Output formats FAQ](https://conveyor.hydraulic.dev/21.1/faq/output-formats/) — Mac App Store listed as "not supported yet"
- **jpackage**: [Oracle man page](https://docs.oracle.com/en/java/javase/23/docs/specs/man/jpackage.html) — `--mac-app-store` flag exists but limited
@@ -321,14 +321,14 @@ For JVM apps, Nucleus is unique in handling the Mac App Store sandbox automatica
| All others | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **0** |
??? info "Sources"
- - **Nucleus dark mode**: [`IsSystemInDarkMode.kt`](https://github.com/kdroidFilter/Nucleus/tree/main/darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/) — JNI (not JNA) with native libraries per platform: macOS via `NSDistributedNotificationCenter`, Windows via registry `AppsUseLightTheme` + `RegNotifyChangeKeyValue`, Linux via D-Bus `org.freedesktop.portal.Settings`. Real-time reactive Compose state.
- - **Nucleus decorated windows**: Split into three modules since v1.3.0 — `decorated-window-core` (shared types/layout), [`decorated-window-jbr`](https://github.com/kdroidFilter/Nucleus/tree/main/decorated-window-jbr) (JBR CustomTitleBar API on macOS/Windows), [`decorated-window-jni`](https://github.com/kdroidFilter/Nucleus/tree/main/decorated-window-jni) (JNI-based, works with any JVM including GraalVM Native Image). Custom undecorated window with GNOME (24px arcs) and KDE (10px) native controls on Linux. Jewel variant in `decorated-window-jewel`, Material 2 in `decorated-window-material2`, Material 3 in `decorated-window-material3`.
- - **Nucleus Linux HiDPI**: [`linux-hidpi`](https://github.com/kdroidFilter/Nucleus/tree/main/linux-hidpi) — native GDK_SCALE detection for proper HiDPI scaling on Linux, required for native image builds.
- - **Nucleus GraalVM runtime**: [`graalvm-runtime`](https://github.com/kdroidFilter/Nucleus/tree/main/graalvm-runtime) — centralizes native-image bootstrap (`GraalVmInitializer.initialize()`), font substitution, Skiko library extraction, and platform-specific reachability metadata.
- - **Nucleus single instance**: [`SingleInstanceManager.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/SingleInstanceManager.kt) — `FileChannel.tryLock()` + `WatchService` for inter-process communication
- - **Nucleus deep links**: [`DeepLinkHandler.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/DeepLinkHandler.kt) — macOS via `Desktop.setOpenURIHandler` (Apple Events); Windows/Linux via CLI argument parsing
- - **Nucleus executable type**: [`ExecutableRuntime.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/ExecutableRuntime.kt) — 17 `ExecutableType` enum values (EXE, MSI, NSIS, NSIS_WEB, PORTABLE, APPX, DMG, PKG, DEB, RPM, SNAP, FLATPAK, APPIMAGE, ZIP, TAR, SEVEN_Z, DEV)
- - **Nucleus native-ssl**: [`NativeTrustManager.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/NativeTrustManager.kt) — JNI-based `X509TrustManager` merging OS certificates with JVM defaults: macOS via Security.framework (`SecTrustCopyAnchorCertificates` + `SecTrustSettingsCopyCertificates`), Windows via Crypt32 (`ROOT`/`CA` stores across 5 locations including Group Policy), Linux via PEM bundles (8 discovery paths). Companion modules: `native-http-okhttp` (OkHttp 4) and `native-http-ktor` (Ktor engine).
+ - **Nucleus dark mode**: [`IsSystemInDarkMode.kt`](https://github.com/nucleusframework/Nucleus/tree/main/darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/) — JNI (not JNA) with native libraries per platform: macOS via `NSDistributedNotificationCenter`, Windows via registry `AppsUseLightTheme` + `RegNotifyChangeKeyValue`, Linux via D-Bus `org.freedesktop.portal.Settings`. Real-time reactive Compose state.
+ - **Nucleus decorated windows**: Split into three modules since v1.3.0 — `decorated-window-core` (shared types/layout), [`decorated-window-jbr`](https://github.com/nucleusframework/Nucleus/tree/main/decorated-window-jbr) (JBR CustomTitleBar API on macOS/Windows), [`decorated-window-jni`](https://github.com/nucleusframework/Nucleus/tree/main/decorated-window-jni) (JNI-based, works with any JVM including GraalVM Native Image). Custom undecorated window with GNOME (24px arcs) and KDE (10px) native controls on Linux. Jewel variant in `decorated-window-jewel`, Material 2 in `decorated-window-material2`, Material 3 in `decorated-window-material3`.
+ - **Nucleus Linux HiDPI**: [`linux-hidpi`](https://github.com/nucleusframework/Nucleus/tree/main/linux-hidpi) — native GDK_SCALE detection for proper HiDPI scaling on Linux, required for native image builds.
+ - **Nucleus GraalVM runtime**: [`graalvm-runtime`](https://github.com/nucleusframework/Nucleus/tree/main/graalvm-runtime) — centralizes native-image bootstrap (`GraalVmInitializer.initialize()`), font substitution, Skiko library extraction, and platform-specific reachability metadata.
+ - **Nucleus single instance**: [`SingleInstanceManager.kt`](https://github.com/nucleusframework/Nucleus/blob/main/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/SingleInstanceManager.kt) — `FileChannel.tryLock()` + `WatchService` for inter-process communication
+ - **Nucleus deep links**: [`DeepLinkHandler.kt`](https://github.com/nucleusframework/Nucleus/blob/main/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/DeepLinkHandler.kt) — macOS via `Desktop.setOpenURIHandler` (Apple Events); Windows/Linux via CLI argument parsing
+ - **Nucleus executable type**: [`ExecutableRuntime.kt`](https://github.com/nucleusframework/Nucleus/blob/main/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/ExecutableRuntime.kt) — 17 `ExecutableType` enum values (EXE, MSI, NSIS, NSIS_WEB, PORTABLE, APPX, DMG, PKG, DEB, RPM, SNAP, FLATPAK, APPIMAGE, ZIP, TAR, SEVEN_Z, DEV)
+ - **Nucleus native-ssl**: [`NativeTrustManager.kt`](https://github.com/nucleusframework/Nucleus/blob/main/native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/NativeTrustManager.kt) — JNI-based `X509TrustManager` merging OS certificates with JVM defaults: macOS via Security.framework (`SecTrustCopyAnchorCertificates` + `SecTrustSettingsCopyCertificates`), Windows via Crypt32 (`ROOT`/`CA` stores across 5 locations including Group Policy), Linux via PEM bundles (8 discovery paths). Companion modules: `native-http-okhttp` (OkHttp 4) and `native-http-ktor` (Ktor engine).
- **Conveyor**: [OS integration](https://conveyor.hydraulic.dev/21.1/configs/os-integration/) — `app.url-schemes` registers URL handlers, `app.file-associations` registers file types at OS level (generates AppxManifest.xml, Info.plist, .desktop files). No runtime library — app code must handle open requests itself.
- **install4j**: [Features](https://www.ej-technologies.com/install4j/features) — single instance lock, file associations
- **jpackage**: [Oracle man page](https://docs.oracle.com/en/java/javase/23/docs/specs/man/jpackage.html) — `--file-associations` flag with properties files
@@ -350,7 +350,7 @@ The `native-ssl` module is unique in the JVM packaging space: it replaces the JS
| Compose MP | ✅ | Partial | ❌ | ❌ | ❌ | ✅ | **5** |
??? info "Sources"
- - **Nucleus**: [docs site](https://kdroidfilter.github.io/Nucleus/) — Getting Started, Configuration, per-platform guides, CI/CD, Runtime APIs, Migration, demo app in `example/`
+ - **Nucleus**: [docs site](https://nucleusframework.github.io/Nucleus/) — Getting Started, Configuration, per-platform guides, CI/CD, Runtime APIs, Migration, demo app in `example/`
- **Conveyor**: [docs site](https://conveyor.hydraulic.dev/21.1/) — tutorials, 120+ config keys, CI guide, comparisons page, multiple sample projects
- **install4j**: [help center](https://www.ej-technologies.com/resources/install4j/help/doc/) — extensive searchable docs
- **jpackage**: [Oracle man page](https://docs.oracle.com/en/java/javase/23/docs/specs/man/jpackage.html) — CLI reference only
diff --git a/docs/getting-started.md b/docs/getting-started.md
index 394b62ef0..2a6d606fd 100644
--- a/docs/getting-started.md
+++ b/docs/getting-started.md
@@ -19,11 +19,11 @@ Add the Nucleus plugin to your `build.gradle.kts`:
```kotlin
plugins {
- id("io.github.kdroidfilter.nucleus") version ""
+ id("dev.nucleusframework.nucleus") version ""
}
```
-The plugin is available on the [Gradle Plugin Portal](https://plugins.gradle.org/plugin/io.github.kdroidfilter.nucleus). No additional repository configuration is needed.
+The plugin is available on the [Gradle Plugin Portal](https://plugins.gradle.org/plugin/dev.nucleusframework.nucleus). No additional repository configuration is needed.
### Runtime Libraries (Optional)
@@ -34,19 +34,19 @@ dependencies {
implementation(compose.desktop.currentOs)
// Executable type detection + single instance + deep links
- implementation("io.github.kdroidfilter:nucleus.core-runtime:")
+ implementation("dev.nucleusframework:nucleus.core-runtime:")
// AOT cache runtime detection (includes core-runtime)
- implementation("io.github.kdroidfilter:nucleus.aot-runtime:")
+ implementation("dev.nucleusframework:nucleus.aot-runtime:")
// Auto-update library (includes core-runtime)
- implementation("io.github.kdroidfilter:nucleus.updater-runtime:")
+ implementation("dev.nucleusframework:nucleus.updater-runtime:")
// Native taskbar/dock progress bar
- implementation("io.github.kdroidfilter:nucleus.taskbar-progress:")
+ implementation("dev.nucleusframework:nucleus.taskbar-progress:")
// Custom decorated window with native title bar
- implementation("io.github.kdroidfilter:nucleus.decorated-window:")
+ implementation("dev.nucleusframework:nucleus.decorated-window:")
}
```
diff --git a/docs/graalvm/runtime-bootstrap.md b/docs/graalvm/runtime-bootstrap.md
index dbbc00f0d..6bbac1d0a 100644
--- a/docs/graalvm/runtime-bootstrap.md
+++ b/docs/graalvm/runtime-bootstrap.md
@@ -6,14 +6,14 @@ The `graalvm-runtime` module provides everything needed to bootstrap a Compose D
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.graalvm-runtime:")
+ implementation("dev.nucleusframework:nucleus.graalvm-runtime:")
}
```
Then call `GraalVmInitializer.initialize()` as the **first line** of your `main()` function, before any AWT or Compose usage:
```kotlin
-import io.github.kdroidfilter.nucleus.graalvm.GraalVmInitializer
+import dev.nucleusframework.nucleus.graalvm.GraalVmInitializer
fun main() {
GraalVmInitializer.initialize()
diff --git a/docs/graalvm/tasks-ci.md b/docs/graalvm/tasks-ci.md
index 69c4d5e7c..d45b07c61 100644
--- a/docs/graalvm/tasks-ci.md
+++ b/docs/graalvm/tasks-ci.md
@@ -103,7 +103,7 @@ jobs:
# Download pre-built JNI native libraries here...
- name: Setup Nucleus (GraalVM)
- uses: kdroidFilter/Nucleus/.github/actions/setup-nucleus@main
+ uses: nucleusframework/Nucleus/.github/actions/setup-nucleus@main
with:
graalvm: 'true'
setup-gradle: 'true'
@@ -163,12 +163,12 @@ Even though the automatic metadata covers the vast majority of cases, running `r
### Use the Jewel sample as reference
-The [`jewel-sample`](https://github.com/kdroidFilter/Nucleus/tree/main/jewel-sample) in the Nucleus repository demonstrates a more complex native-image setup with the Jewel UI library. It is an excellent reference for advanced use cases.
+The [`jewel-sample`](https://github.com/nucleusframework/Nucleus/tree/main/jewel-sample) in the Nucleus repository demonstrates a more complex native-image setup with the Jewel UI library. It is an excellent reference for advanced use cases.
## Further Reading
- [GraalVM Native Image documentation](https://www.graalvm.org/latest/reference-manual/native-image/)
- [BellSoft Liberica NIK](https://bell-sw.com/liberica-native-image-kit/)
- [Oracle GraalVM Reachability Metadata Repository](https://github.com/oracle/graalvm-reachability-metadata)
-- [Nucleus example app](https://github.com/kdroidFilter/Nucleus/tree/main/example) — minimal Compose Desktop + native-image setup
-- [Nucleus Jewel sample](https://github.com/kdroidFilter/Nucleus/tree/main/jewel-sample) — advanced setup with reflection-heavy dependencies
+- [Nucleus example app](https://github.com/nucleusframework/Nucleus/tree/main/example) — minimal Compose Desktop + native-image setup
+- [Nucleus Jewel sample](https://github.com/nucleusframework/Nucleus/tree/main/jewel-sample) — advanced setup with reflection-heavy dependencies
diff --git a/docs/index.md b/docs/index.md
index dae1709ef..f3d50d558 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -4,10 +4,10 @@
-[](https://plugins.gradle.org/plugin/io.github.kdroidfilter.nucleus)
-[](https://central.sonatype.com/search?q=io.github.kdroidfilter.nucleus)
-[](https://github.com/kdroidFilter/Nucleus/actions/workflows/pre-merge.yaml)
-[](https://github.com/kdroidFilter/Nucleus/blob/main/LICENSE)
+[](https://plugins.gradle.org/plugin/dev.nucleusframework.nucleus)
+[](https://central.sonatype.com/search?q=dev.nucleusframework.nucleus)
+[](https://github.com/nucleusframework/Nucleus/actions/workflows/pre-merge.yaml)
+[](https://github.com/nucleusframework/Nucleus/blob/main/LICENSE)


@@ -65,7 +65,7 @@ Nucleus meets you where you are:
```kotlin
plugins {
- id("io.github.kdroidfilter.nucleus") version ""
+ id("dev.nucleusframework.nucleus") version ""
}
nucleus.application {
@@ -86,7 +86,7 @@ nucleus.application {
## Try the demo
-A pre-built demo is available on the [GitHub Releases page](https://github.com/kdroidFilter/Nucleus/releases).
+A pre-built demo is available on the [GitHub Releases page](https://github.com/nucleusframework/Nucleus/releases).
=== "macOS"
```bash
@@ -101,7 +101,7 @@ A pre-built demo is available on the [GitHub Releases page](https://github.com/k
Detects your architecture and package manager, downloads and installs the appropriate `.deb` or `.rpm`.
=== "Windows"
- Download the installer from the [releases page](https://github.com/kdroidFilter/Nucleus/releases).
+ Download the installer from the [releases page](https://github.com/nucleusframework/Nucleus/releases).
What you'll see:
@@ -113,7 +113,7 @@ What you'll see:
!!! tip "Test auto-update"
Download an **older release**, install it, and launch. It will detect the newer version and offer to update — automatically.
-The demo source code is in the [`example/`](https://github.com/kdroidFilter/Nucleus/tree/main/example) directory.
+The demo source code is in the [`example/`](https://github.com/nucleusframework/Nucleus/tree/main/example) directory.
## Requirements
@@ -125,4 +125,4 @@ The demo source code is in the [`example/`](https://github.com/kdroidFilter/Nucl
## License
-MIT — See [LICENSE](https://github.com/kdroidFilter/Nucleus/blob/main/LICENSE).
+MIT — See [LICENSE](https://github.com/nucleusframework/Nucleus/blob/main/LICENSE).
diff --git a/docs/install-linux.sh b/docs/install-linux.sh
index f4ffb58af..c4d4fd9b0 100755
--- a/docs/install-linux.sh
+++ b/docs/install-linux.sh
@@ -3,7 +3,7 @@
set -e
# ─── Config ───────────────────────────────────────────────────────────
-repo="kdroidFilter/Nucleus"
+repo="nucleusframework/Nucleus"
app_name="nucleusdemo"
# ─── Colors & Symbols ────────────────────────────────────────────────
diff --git a/docs/install.sh b/docs/install.sh
index eccab79a8..1d7f27cad 100755
--- a/docs/install.sh
+++ b/docs/install.sh
@@ -3,7 +3,7 @@
set -e
# ─── Config ───────────────────────────────────────────────────────────
-repo="kdroidFilter/Nucleus"
+repo="nucleusframework/Nucleus"
app_name="nucleusdemo"
# ─── Colors & Symbols ────────────────────────────────────────────────
diff --git a/docs/llm.md b/docs/llm.md
index 439be4099..683186997 100644
--- a/docs/llm.md
+++ b/docs/llm.md
@@ -11,7 +11,7 @@ Nucleus provides machine-readable documentation files designed for Large Languag
## How They Stay Up to Date
-Both files are **auto-generated** from the MkDocs documentation pages by the [`scripts/generate-llms-docs.py`](https://github.com/kdroidFilter/Nucleus/blob/main/scripts/generate-llms-docs.py) script. A GitHub Actions workflow runs this script on every push to `main` that touches `docs/`, so `llms.txt` and `llms-full.txt` are always in sync with the documentation.
+Both files are **auto-generated** from the MkDocs documentation pages by the [`scripts/generate-llms-docs.py`](https://github.com/nucleusframework/Nucleus/blob/main/scripts/generate-llms-docs.py) script. A GitHub Actions workflow runs this script on every push to `main` that touches `docs/`, so `llms.txt` and `llms-full.txt` are always in sync with the documentation.
!!! tip "Contributing"
Never edit `llms.txt` or `llms-full.txt` manually — edit the source `.md` files in `docs/` and the script regenerates them automatically.
diff --git a/docs/llms-full.txt b/docs/llms-full.txt
index b7a6e3e61..5006ff084 100644
--- a/docs/llms-full.txt
+++ b/docs/llms-full.txt
@@ -2,10 +2,10 @@
> Nucleus is the all-in-one toolkit for shipping JVM desktop applications. It combines a Gradle plugin, runtime libraries, and GitHub Actions to handle performance (AOT), distribution (16 packaging formats), native look & feel (decorated windows, dark mode, system colors), and GraalVM Native Image support. Compatible with any JVM application, optimized for Compose Desktop.
-- Docs: https://nucleus.kdroidfilter.com
-- GitHub: https://github.com/kdroidFilter/Nucleus
-- Gradle Plugin Portal: https://plugins.gradle.org/plugin/io.github.kdroidfilter.nucleus
-- Maven Central: https://central.sonatype.com/search?q=io.github.kdroidfilter.nucleus
+- Docs: https://nucleus.nucleusframework.com
+- GitHub: https://github.com/nucleusframework/Nucleus
+- Gradle Plugin Portal: https://plugins.gradle.org/plugin/dev.nucleusframework.nucleus
+- Maven Central: https://central.sonatype.com/search?q=dev.nucleusframework.nucleus
- License: MIT
**Nucleus is the Kotlin framework for native desktop apps.** Combined with Compose Multiplatform, it forms the most complete, most performant, and most deeply integrated desktop application stack ever built — on any language, any runtime, any platform.
@@ -62,7 +62,7 @@ Nucleus meets you where you are:
```kotlin
plugins {
- id("io.github.kdroidfilter.nucleus") version ""
+ id("dev.nucleusframework.nucleus") version ""
}
nucleus.application {
@@ -83,7 +83,7 @@ nucleus.application {
## Try the demo
-A pre-built demo is available on the [GitHub Releases page](https://github.com/kdroidFilter/Nucleus/releases).
+A pre-built demo is available on the [GitHub Releases page](https://github.com/nucleusframework/Nucleus/releases).
### macOS
```bash
@@ -98,7 +98,7 @@ A pre-built demo is available on the [GitHub Releases page](https://github.com/k
Detects your architecture and package manager, downloads and installs the appropriate `.deb` or `.rpm`.
### Windows
- Download the installer from the [releases page](https://github.com/kdroidFilter/Nucleus/releases).
+ Download the installer from the [releases page](https://github.com/nucleusframework/Nucleus/releases).
What you'll see:
@@ -108,7 +108,7 @@ What you'll see:
- **Auto-Update** — Checks for updates on launch, downloads with progress tracking, installs & restarts in one click
**Test auto-update:** Download an **older release**, install it, and launch. It will detect the newer version and offer to update — automatically.
-The demo source code is in the [`example/`](https://github.com/kdroidFilter/Nucleus/tree/main/example) directory.
+The demo source code is in the [`example/`](https://github.com/nucleusframework/Nucleus/tree/main/example) directory.
## Requirements
@@ -120,7 +120,7 @@ The demo source code is in the [`example/`](https://github.com/kdroidFilter/Nucl
## License
-MIT — See [LICENSE](https://github.com/kdroidFilter/Nucleus/blob/main/LICENSE).
+MIT — See [LICENSE](https://github.com/nucleusframework/Nucleus/blob/main/LICENSE).
---
@@ -143,11 +143,11 @@ Add the Nucleus plugin to your `build.gradle.kts`:
```kotlin
plugins {
- id("io.github.kdroidfilter.nucleus") version ""
+ id("dev.nucleusframework.nucleus") version ""
}
```
-The plugin is available on the [Gradle Plugin Portal](https://plugins.gradle.org/plugin/io.github.kdroidfilter.nucleus). No additional repository configuration is needed.
+The plugin is available on the [Gradle Plugin Portal](https://plugins.gradle.org/plugin/dev.nucleusframework.nucleus). No additional repository configuration is needed.
### Runtime Libraries (Optional)
@@ -158,19 +158,19 @@ dependencies {
implementation(compose.desktop.currentOs)
// Executable type detection + single instance + deep links
- implementation("io.github.kdroidfilter:nucleus.core-runtime:")
+ implementation("dev.nucleusframework:nucleus.core-runtime:")
// AOT cache runtime detection (includes core-runtime)
- implementation("io.github.kdroidfilter:nucleus.aot-runtime:")
+ implementation("dev.nucleusframework:nucleus.aot-runtime:")
// Auto-update library (includes core-runtime)
- implementation("io.github.kdroidfilter:nucleus.updater-runtime:")
+ implementation("dev.nucleusframework:nucleus.updater-runtime:")
// Native taskbar/dock progress bar
- implementation("io.github.kdroidfilter:nucleus.taskbar-progress:")
+ implementation("dev.nucleusframework:nucleus.taskbar-progress:")
// Custom decorated window with native title bar
- implementation("io.github.kdroidfilter:nucleus.decorated-window:")
+ implementation("dev.nucleusframework:nucleus.decorated-window:")
}
```
@@ -1576,7 +1576,7 @@ Flatpak requires `flatpak` and `flatpak-builder` with the target runtime and SDK
**Using the `setup-nucleus` GitHub Action** (recommended):
```yaml
-- uses: kdroidFilter/Nucleus/.github/actions/setup-nucleus@main
+- uses: nucleusframework/Nucleus/.github/actions/setup-nucleus@main
with:
flatpak: 'true'
```
@@ -2168,7 +2168,7 @@ Nucleus provides a complete auto-update solution compatible with the [electron-b
## How It Works
-**Try it yourself:** Download an **older version** of the Nucleus demo app from the [GitHub Releases page](https://github.com/kdroidFilter/Nucleus/releases), install it, and launch it. The app will automatically detect that a newer version is available, download the update with a progress bar, and offer an "Install & Restart" button. This is the exact same flow your users will experience.
+**Try it yourself:** Download an **older version** of the Nucleus demo app from the [GitHub Releases page](https://github.com/nucleusframework/Nucleus/releases), install it, and launch it. The app will automatically detect that a newer version is available, download the update with a progress bar, and offer an "Install & Restart" button. This is the exact same flow your users will experience.
## Updatable Formats
| Platform | Updatable Formats | Not updatable (Store-managed) |
@@ -2204,7 +2204,7 @@ In the release workflow, each platform builds its installers in parallel and upl
2. Runs the `generate-update-yml` action, which scans every installer file, computes SHA-512 checksums, and produces `latest-mac.yml`, `latest.yml` (Windows), and `latest-linux.yml`
3. Uploads everything (installers + YML files) to the release
-See the [example release workflow](https://github.com/kdroidFilter/Nucleus/blob/main/.github/workflows/release-desktop.yaml) for the full setup.
+See the [example release workflow](https://github.com/nucleusframework/Nucleus/blob/main/.github/workflows/release-desktop.yaml) for the full setup.
### Building locally
@@ -2237,7 +2237,7 @@ sha512:
releaseDate: '2026-03-01T12:00:00.000Z'
```
-**TIP:** In practice, always use CI for multi-platform releases. The [release workflow](https://github.com/kdroidFilter/Nucleus/blob/main/.github/workflows/release-desktop.yaml) handles all of this automatically: build in parallel, merge YML files, and publish to GitHub Releases in a single pipeline.
+**TIP:** In practice, always use CI for multi-platform releases. The [release workflow](https://github.com/nucleusframework/Nucleus/blob/main/.github/workflows/release-desktop.yaml) handles all of this automatically: build in parallel, merge YML files, and publish to GitHub Releases in a single pipeline.
### YML file examples
Three YAML files are generated per release:
@@ -2314,7 +2314,7 @@ You are responsible for uploading the installers and YML files to your chosen ho
### Option 1: GitHub Releases (recommended)
-The simplest approach. Use the [ready-made release CI workflow](https://github.com/kdroidFilter/Nucleus/blob/main/.github/workflows/release-desktop.yaml) which handles everything automatically:
+The simplest approach. Use the [ready-made release CI workflow](https://github.com/nucleusframework/Nucleus/blob/main/.github/workflows/release-desktop.yaml) which handles everything automatically:
1. Builds on all platforms in parallel
2. Generates the `latest-*.yml` files from all platform artifacts
@@ -2361,16 +2361,16 @@ See [Publishing](publishing.md) for the full configuration reference.
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.updater-runtime:1.0.0")
+ implementation("dev.nucleusframework:nucleus.updater-runtime:1.0.0")
}
```
### Quick Start
```kotlin
-import io.github.kdroidfilter.nucleus.updater.NucleusUpdater
-import io.github.kdroidfilter.nucleus.updater.UpdateResult
-import io.github.kdroidfilter.nucleus.updater.provider.GitHubProvider
+import dev.nucleusframework.nucleus.updater.NucleusUpdater
+import dev.nucleusframework.nucleus.updater.UpdateResult
+import dev.nucleusframework.nucleus.updater.provider.GitHubProvider
val updater = NucleusUpdater {
provider = GitHubProvider(owner = "myorg", repo = "myapp")
@@ -2421,7 +2421,7 @@ NucleusUpdater {
#### GitHub Releases
```kotlin
-import io.github.kdroidfilter.nucleus.updater.provider.GitHubProvider
+import dev.nucleusframework.nucleus.updater.provider.GitHubProvider
provider = GitHubProvider(
owner = "myorg",
@@ -2433,7 +2433,7 @@ provider = GitHubProvider(
#### Generic HTTP Server
```kotlin
-import io.github.kdroidfilter.nucleus.updater.provider.GenericProvider
+import dev.nucleusframework.nucleus.updater.provider.GenericProvider
provider = GenericProvider(
baseUrl = "https://updates.example.com"
@@ -2599,17 +2599,17 @@ To fix this, pass a client built with [`NativeHttpClient`](runtime/native-http.m
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.updater-runtime:")
- implementation("io.github.kdroidfilter:nucleus.native-http:")
+ implementation("dev.nucleusframework:nucleus.updater-runtime:")
+ implementation("dev.nucleusframework:nucleus.native-http:")
}
```
**2. Inject the client in the updater config**
```kotlin
-import io.github.kdroidfilter.nucleus.nativehttp.NativeHttpClient
-import io.github.kdroidfilter.nucleus.updater.NucleusUpdater
-import io.github.kdroidfilter.nucleus.updater.provider.GitHubProvider
+import dev.nucleusframework.nucleus.nativehttp.NativeHttpClient
+import dev.nucleusframework.nucleus.updater.NucleusUpdater
+import dev.nucleusframework.nucleus.updater.provider.GitHubProvider
val updater = NucleusUpdater {
provider = GitHubProvider(owner = "myorg", repo = "myapp")
@@ -2622,7 +2622,7 @@ The injected client is used for **both** the metadata check and the file downloa
You can also compose additional options via the builder extension:
```kotlin
-import io.github.kdroidfilter.nucleus.nativehttp.NativeHttpClient.withNativeSsl
+import dev.nucleusframework.nucleus.nativehttp.NativeHttpClient.withNativeSsl
import java.net.http.HttpClient
import java.time.Duration
@@ -3091,14 +3091,14 @@ To detect AOT mode at runtime (e.g. to self-terminate during training or skip he
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.aot-runtime:")
+ implementation("dev.nucleusframework:nucleus.aot-runtime:")
// Transitive: nucleus.core-runtime is pulled in via `api`
}
```
```kotlin
-import io.github.kdroidfilter.nucleus.aot.runtime.AotRuntime
-import io.github.kdroidfilter.nucleus.aot.runtime.AotRuntimeMode
+import dev.nucleusframework.nucleus.aot.runtime.AotRuntime
+import dev.nucleusframework.nucleus.aot.runtime.AotRuntimeMode
```
## Modes
@@ -3197,8 +3197,8 @@ The `aot-runtime` module re-exports `ExecutableRuntime` and `ExecutableType` via
```kotlin
// Both work:
-import io.github.kdroidfilter.nucleus.core.runtime.ExecutableRuntime
-import io.github.kdroidfilter.nucleus.aot.runtime.ExecutableRuntime
+import dev.nucleusframework.nucleus.core.runtime.ExecutableRuntime
+import dev.nucleusframework.nucleus.aot.runtime.ExecutableRuntime
```
---
@@ -3443,14 +3443,14 @@ The `graalvm-runtime` module provides everything needed to bootstrap a Compose D
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.graalvm-runtime:")
+ implementation("dev.nucleusframework:nucleus.graalvm-runtime:")
}
```
Then call `GraalVmInitializer.initialize()` as the **first line** of your `main()` function, before any AWT or Compose usage:
```kotlin
-import io.github.kdroidfilter.nucleus.graalvm.GraalVmInitializer
+import dev.nucleusframework.nucleus.graalvm.GraalVmInitializer
fun main() {
GraalVmInitializer.initialize()
@@ -3620,7 +3620,7 @@ jobs:
# Download pre-built JNI native libraries here...
- name: Setup Nucleus (GraalVM)
- uses: kdroidFilter/Nucleus/.github/actions/setup-nucleus@main
+ uses: nucleusframework/Nucleus/.github/actions/setup-nucleus@main
with:
graalvm: 'true'
setup-gradle: 'true'
@@ -3680,15 +3680,15 @@ Even though the automatic metadata covers the vast majority of cases, running `r
### Use the Jewel sample as reference
-The [`jewel-sample`](https://github.com/kdroidFilter/Nucleus/tree/main/jewel-sample) in the Nucleus repository demonstrates a more complex native-image setup with the Jewel UI library. It is an excellent reference for advanced use cases.
+The [`jewel-sample`](https://github.com/nucleusframework/Nucleus/tree/main/jewel-sample) in the Nucleus repository demonstrates a more complex native-image setup with the Jewel UI library. It is an excellent reference for advanced use cases.
## Further Reading
- [GraalVM Native Image documentation](https://www.graalvm.org/latest/reference-manual/native-image/)
- [BellSoft Liberica NIK](https://bell-sw.com/liberica-native-image-kit/)
- [Oracle GraalVM Reachability Metadata Repository](https://github.com/oracle/graalvm-reachability-metadata)
-- [Nucleus example app](https://github.com/kdroidFilter/Nucleus/tree/main/example) — minimal Compose Desktop + native-image setup
-- [Nucleus Jewel sample](https://github.com/kdroidFilter/Nucleus/tree/main/jewel-sample) — advanced setup with reflection-heavy dependencies
+- [Nucleus example app](https://github.com/nucleusframework/Nucleus/tree/main/example) — minimal Compose Desktop + native-image setup
+- [Nucleus Jewel sample](https://github.com/nucleusframework/Nucleus/tree/main/jewel-sample) — advanced setup with reflection-heavy dependencies
---
@@ -3713,14 +3713,14 @@ The generated JVM proxies have **the exact same API** as your native classes —
## Setup
-**Separate versioning:** Nucleus Native Access is versioned independently from Nucleus. Check the latest version on the [NucleusNativeAccess repository](https://github.com/kdroidFilter/NucleusNativeAccess).
+**Separate versioning:** Nucleus Native Access is versioned independently from Nucleus. Check the latest version on the [NucleusNativeAccess repository](https://github.com/nucleusframework/NucleusNativeAccess).
Add the plugin to your Kotlin Multiplatform module:
```kotlin
// build.gradle.kts
plugins {
kotlin("multiplatform")
- id("io.github.kdroidfilter.nucleusnativeaccess") version "" // see github.com/kdroidFilter/NucleusNativeAccess
+ id("dev.nucleusframework.nucleusnativeaccess") version "" // see github.com/nucleusframework/NucleusNativeAccess
}
kotlin {
@@ -3757,7 +3757,7 @@ my-app/
```kotlin
plugins {
kotlin("multiplatform")
- id("io.github.kdroidfilter.nucleusnativeaccess") version ""
+ id("dev.nucleusframework.nucleusnativeaccess") version ""
}
kotlin {
@@ -3779,7 +3779,7 @@ plugins {
kotlin("multiplatform")
id("org.jetbrains.compose")
id("org.jetbrains.kotlin.plugin.compose")
- id("io.github.kdroidfilter.nucleus")
+ id("dev.nucleusframework.nucleus")
}
kotlin {
@@ -3816,9 +3816,9 @@ No manual configuration needed — the generated metadata is picked up automatic
Nucleus Native Access is maintained in a separate repository with its own release cycle:
-[**kdroidFilter/NucleusNativeAccess**](https://github.com/kdroidFilter/NucleusNativeAccess) — plugin source, examples, full documentation, and latest releases.
+[**nucleusframework/NucleusNativeAccess**](https://github.com/nucleusframework/NucleusNativeAccess) — plugin source, examples, full documentation, and latest releases.
-The plugin ID is `io.github.kdroidfilter.nucleusnativeaccess`.
+The plugin ID is `dev.nucleusframework.nucleusnativeaccess`.
## Next steps
@@ -3974,7 +3974,7 @@ fun ScreenshotViewer() {
**No C. No JNI headers. No build scripts. No `System.loadLibrary` call.** The `.dylib` is compiled by the plugin, bundled in the JAR, and extracted automatically at runtime. The `suspend` on the native side maps transparently to a coroutine on the JVM — the UI stays responsive while CoreGraphics does the work.
-**Full working example:** The [systeminfo example](https://github.com/kdroidFilter/NucleusNativeAccess/tree/main/examples/systeminfo) in the NucleusNativeAccess repo implements this pattern for all three platforms (CoreGraphics on macOS, XDG ScreenCast + PipeWire on Linux, GDI on Windows), plus native notifications, a system tray menu, and real-time memory updates via `Flow`.
+**Full working example:** The [systeminfo example](https://github.com/nucleusframework/NucleusNativeAccess/tree/main/examples/systeminfo) in the NucleusNativeAccess repo implements this pattern for all three platforms (CoreGraphics on macOS, XDG ScreenCast + PipeWire on Linux, GDI on Windows), plus native notifications, a system tray menu, and real-time memory updates via `Flow`.
The same pattern works for any other platform API:
### macOS
@@ -4076,7 +4076,7 @@ Nucleus provides reusable composite actions and ready-to-use GitHub Actions work
All composite actions can be referenced directly from the Nucleus repository — no need to copy them into your project:
```yaml
- - uses: kdroidFilter/Nucleus/.github/actions/setup-nucleus@main
+ - uses: nucleusframework/Nucleus/.github/actions/setup-nucleus@main
```
Replace `@main` with a specific tag (e.g. `@v1.0.0`) to pin a stable version.
@@ -4092,7 +4092,7 @@ The `setup-nucleus` composite action (`.github/actions/setup-nucleus`) sets up t
### Usage
```yaml
-- uses: kdroidFilter/Nucleus/.github/actions/setup-nucleus@main
+- uses: nucleusframework/Nucleus/.github/actions/setup-nucleus@main
with:
jbr-version: '25.0.2b329.66'
packaging-tools: 'true'
@@ -4129,7 +4129,7 @@ The `setup-nucleus` composite action (`.github/actions/setup-nucleus`) sets up t
When `graalvm: 'true'` is set, the action installs **BellSoft Liberica NIK** instead of JBR, plus platform-specific toolchains:
```yaml
-- uses: kdroidFilter/Nucleus/.github/actions/setup-nucleus@main
+- uses: nucleusframework/Nucleus/.github/actions/setup-nucleus@main
with:
graalvm: 'true'
setup-gradle: 'true'
@@ -4222,7 +4222,7 @@ jobs:
echo "RELEASE_VERSION=$tag" >> "$GITHUB_ENV"
- name: Setup Nucleus
- uses: kdroidFilter/Nucleus/.github/actions/setup-nucleus@main
+ uses: nucleusframework/Nucleus/.github/actions/setup-nucleus@main
with:
jbr-version: '25.0.2b329.66'
packaging-tools: 'true'
@@ -4275,7 +4275,7 @@ matrix:
jbr-download-url: 'https://example.com/jbr-25-macos-x64-custom.tar.gz'
steps:
- - uses: kdroidFilter/Nucleus/.github/actions/setup-nucleus@main
+ - uses: nucleusframework/Nucleus/.github/actions/setup-nucleus@main
with:
jbr-version: '25.0.2b329.66'
jbr-download-url: ${{ matrix.jbr-download-url || '' }}
@@ -4321,7 +4321,7 @@ Merge arm64 and x64 builds into a universal (fat) binary using `lipo`, then opti
- name: Setup macOS signing
id: signing
if: ${{ secrets.MAC_CERTIFICATES_P12 != '' }}
- uses: kdroidFilter/Nucleus/.github/actions/setup-macos-signing@main
+ uses: nucleusframework/Nucleus/.github/actions/setup-macos-signing@main
with:
certificate-base64: ${{ secrets.MAC_CERTIFICATES_P12 }}
certificate-password: ${{ secrets.MAC_CERTIFICATES_PASSWORD }}
@@ -4349,7 +4349,7 @@ Merge arm64 and x64 builds into a universal (fat) binary using `lipo`, then opti
path: artifacts/release-assets-macOS-amd64
- name: Build universal binary
- uses: kdroidFilter/Nucleus/.github/actions/build-macos-universal@main
+ uses: nucleusframework/Nucleus/.github/actions/build-macos-universal@main
with:
arm64-path: artifacts/release-assets-macOS-arm64
x64-path: artifacts/release-assets-macOS-amd64
@@ -4425,7 +4425,7 @@ Combine amd64 and arm64 `.appx` files into a single `.msixbundle`. Nucleus inclu
path: artifacts/release-assets-Windows-arm64
- name: Build APPX Bundle
- uses: kdroidFilter/Nucleus/.github/actions/build-windows-appxbundle@main
+ uses: nucleusframework/Nucleus/.github/actions/build-windows-appxbundle@main
with:
amd64-path: artifacts/release-assets-Windows-amd64
arm64-path: artifacts/release-assets-Windows-arm64
@@ -4482,14 +4482,14 @@ After all builds complete, create a GitHub Release with all artifacts and update
fi
- name: Generate update YML files
- uses: kdroidFilter/Nucleus/.github/actions/generate-update-yml@main
+ uses: nucleusframework/Nucleus/.github/actions/generate-update-yml@main
with:
artifacts-path: artifacts
version: ${{ env.VERSION }}
channel: ${{ env.CHANNEL }}
- name: Publish release
- uses: kdroidFilter/Nucleus/.github/actions/publish-release@main
+ uses: nucleusframework/Nucleus/.github/actions/publish-release@main
with:
artifacts-path: artifacts
tag: ${{ env.TAG }}
@@ -4517,16 +4517,16 @@ After all builds complete, create a GitHub Release with all artifacts and update
## Composite Actions Reference
-Nucleus provides reusable composite actions that you can reference directly in your workflows using `kdroidFilter/Nucleus/.github/actions/@main`:
+Nucleus provides reusable composite actions that you can reference directly in your workflows using `nucleusframework/Nucleus/.github/actions/@main`:
| Action | Usage | Description |
|--------|-------|-------------|
-| `setup-nucleus` | `kdroidFilter/Nucleus/.github/actions/setup-nucleus@main` | Setup JBR 25, packaging tools, Gradle, Node.js |
-| `setup-macos-signing` | `kdroidFilter/Nucleus/.github/actions/setup-macos-signing@main` | Create temporary keychain and import signing certificates |
-| `build-macos-universal` | `kdroidFilter/Nucleus/.github/actions/build-macos-universal@main` | Merge arm64 + x64 into universal binary via `lipo`, sign, and package |
-| `build-windows-appxbundle` | `kdroidFilter/Nucleus/.github/actions/build-windows-appxbundle@main` | Combine amd64 + arm64 `.appx` into `.msixbundle` |
-| `generate-update-yml` | `kdroidFilter/Nucleus/.github/actions/generate-update-yml@main` | Generate `latest-*.yml` / `beta-*.yml` / `alpha-*.yml` metadata |
-| `publish-release` | `kdroidFilter/Nucleus/.github/actions/publish-release@main` | Create GitHub Release with all artifacts |
+| `setup-nucleus` | `nucleusframework/Nucleus/.github/actions/setup-nucleus@main` | Setup JBR 25, packaging tools, Gradle, Node.js |
+| `setup-macos-signing` | `nucleusframework/Nucleus/.github/actions/setup-macos-signing@main` | Create temporary keychain and import signing certificates |
+| `build-macos-universal` | `nucleusframework/Nucleus/.github/actions/build-macos-universal@main` | Merge arm64 + x64 into universal binary via `lipo`, sign, and package |
+| `build-windows-appxbundle` | `nucleusframework/Nucleus/.github/actions/build-windows-appxbundle@main` | Combine amd64 + arm64 `.appx` into `.msixbundle` |
+| `generate-update-yml` | `nucleusframework/Nucleus/.github/actions/generate-update-yml@main` | Generate `latest-*.yml` / `beta-*.yml` / `alpha-*.yml` metadata |
+| `publish-release` | `nucleusframework/Nucleus/.github/actions/publish-release@main` | Create GitHub Release with all artifacts |
## GraalVM Native Image Release
@@ -4578,7 +4578,7 @@ jobs:
# (darkmode-detector, native-ssl, decorated-window-jni, etc.)
- name: Setup Nucleus (GraalVM)
- uses: kdroidFilter/Nucleus/.github/actions/setup-nucleus@main
+ uses: nucleusframework/Nucleus/.github/actions/setup-nucleus@main
with:
graalvm: 'true'
setup-gradle: 'true'
@@ -4624,7 +4624,7 @@ These tasks first compile the native image via `packageGraalvmNative`, then pack
- **fail-fast: false**: Continue building other platforms if one fails
- **Timeout**: Set generous timeouts (120min) for Flatpak/Snap builds
- **Caching**: `setup-nucleus` enables Gradle caching automatically via `gradle/actions/setup-gradle@v4`
-- **No checkout needed**: When using actions from `kdroidFilter/Nucleus`, GitHub fetches them automatically — no need to checkout the Nucleus repository
+- **No checkout needed**: When using actions from `nucleusframework/Nucleus`, GitHub fetches them automatically — no need to checkout the Nucleus repository
- **workflow_dispatch**: Add it as a trigger to allow re-running a release manually
---
@@ -4637,70 +4637,70 @@ Nucleus provides runtime libraries for use in your application code. All are pub
| Library | Artifact | Description |
|---------|----------|-------------|
-| Core Runtime | `io.github.kdroidfilter:nucleus.core-runtime` | Executable type detection, single instance, deep links, app metadata (`NucleusApp`) |
-| AOT Runtime | `io.github.kdroidfilter:nucleus.aot-runtime` | AOT cache detection (includes core-runtime via `api`) |
-| Updater Runtime | `io.github.kdroidfilter:nucleus.updater-runtime` | Auto-update library with update level detection and post-update events (includes core-runtime) |
-| Taskbar Progress | `io.github.kdroidfilter:nucleus.taskbar-progress` | Native taskbar/dock progress bar and attention requests (Windows, macOS, Linux) |
-| Notification (macOS) | `io.github.kdroidfilter:nucleus.notification-macos` | macOS UserNotifications API — local notifications, actions, badges via JNI |
-| Notification (Windows) | `io.github.kdroidfilter:nucleus.notification-windows` | Windows Toast Notifications API — rich toasts, buttons, progress bars via JNI (WinRT) |
-| Launcher (Windows) | `io.github.kdroidfilter:nucleus.launcher-windows` | Windows Launcher API — badge notifications, jump lists, overlay icons, and thumbnail toolbar (ITaskbarList3) via JNI |
-| Notification (Linux) | `io.github.kdroidfilter:nucleus.notification-linux` | Freedesktop Desktop Notifications API via JNI (D-Bus) |
-| Launcher (Linux) | `io.github.kdroidfilter:nucleus.launcher-linux` | Unity Launcher API — badge, progress, urgency, quicklist via JNI (D-Bus) |
-| Launcher (macOS) | `io.github.kdroidfilter:nucleus.launcher-macos` | macOS dock context menu — custom items, submenus, click callbacks via JNI |
-| Media Control | `io.github.kdroidfilter:nucleus.media-control` | OS media controls (play/pause, metadata, seek) — MPRIS D-Bus on Linux, MPNowPlayingInfoCenter on macOS, SystemMediaTransportControls on Windows via JNI |
-| Menu (macOS) | `io.github.kdroidfilter:nucleus.menu-macos` | Complete NSMenu mapping — application menu bar, items, badges, delegates, SF Symbols via JNI |
-| SF Symbols | `io.github.kdroidfilter:nucleus.sf-symbols` | Type-safe Apple SF Symbols constants (6 195 symbols, 21 categories) |
-| Freedesktop Icons | `io.github.kdroidfilter:nucleus.freedesktop-icons` | Type-safe freedesktop Icon Naming Specification constants |
-| Decorated Window | `io.github.kdroidfilter:nucleus.decorated-window` | Custom window decorations with native title bar |
-| Decorated Window — Jewel | `io.github.kdroidfilter:nucleus.decorated-window-jewel` | Jewel (IntelliJ theme) color mapping for decorated windows |
-| Decorated Window — Material 2 | `io.github.kdroidfilter:nucleus.decorated-window-material2` | Material 2 color mapping for decorated windows |
-| Decorated Window — Material 3 | `io.github.kdroidfilter:nucleus.decorated-window-material3` | Material 3 color mapping for decorated windows |
-| Dark Mode Detector | `io.github.kdroidfilter:nucleus.darkmode-detector` | Reactive OS dark mode detection via JNI |
-| System Color | `io.github.kdroidfilter:nucleus.system-color` | Reactive system accent color and high contrast detection via JNI |
-| Energy Manager | `io.github.kdroidfilter:nucleus.energy-manager` | Process-level and thread-level energy efficiency mode and screen-awake (caffeine) API for Windows, macOS, and Linux |
-| Native SSL | `io.github.kdroidfilter:nucleus.native-ssl` | OS trust store integration — merges native certs with JVM defaults |
-| Native HTTP | `io.github.kdroidfilter:nucleus.native-http` | `java.net.http.HttpClient` pre-configured with native OS trust |
-| Native HTTP — OkHttp | `io.github.kdroidfilter:nucleus.native-http-okhttp` | OkHttp client pre-configured with native OS trust |
-| Native HTTP — Ktor | `io.github.kdroidfilter:nucleus.native-http-ktor` | Ktor `HttpClient` extension for native OS trust (all engines) |
-| Linux HiDPI | `io.github.kdroidfilter:nucleus.linux-hidpi` | Native HiDPI scale factor detection on Linux |
-| Scheduler | `io.github.kdroidfilter:nucleus.scheduler` | Background task scheduling — periodic, calendar, and on-boot tasks via OS-native schedulers (launchd, systemd, Task Scheduler) |
-| Service Management (macOS) | `io.github.kdroidfilter:nucleus.service-management-macos` | macOS SMAppService binding — login items, launch agents, launch daemons (macOS 13+) |
-| Auto-Launch | `io.github.kdroidfilter:nucleus.autolaunch` | Cross-platform start-at-login — MSIX `StartupTask`, Win32 `HKCU\...\Run`, `SMAppService`, systemd user units, Flatpak portal |
-| GraalVM Runtime | `io.github.kdroidfilter:nucleus.graalvm-runtime` | GraalVM native-image bootstrap + font substitutions (includes linux-hidpi) |
+| Core Runtime | `dev.nucleusframework:nucleus.core-runtime` | Executable type detection, single instance, deep links, app metadata (`NucleusApp`) |
+| AOT Runtime | `dev.nucleusframework:nucleus.aot-runtime` | AOT cache detection (includes core-runtime via `api`) |
+| Updater Runtime | `dev.nucleusframework:nucleus.updater-runtime` | Auto-update library with update level detection and post-update events (includes core-runtime) |
+| Taskbar Progress | `dev.nucleusframework:nucleus.taskbar-progress` | Native taskbar/dock progress bar and attention requests (Windows, macOS, Linux) |
+| Notification (macOS) | `dev.nucleusframework:nucleus.notification-macos` | macOS UserNotifications API — local notifications, actions, badges via JNI |
+| Notification (Windows) | `dev.nucleusframework:nucleus.notification-windows` | Windows Toast Notifications API — rich toasts, buttons, progress bars via JNI (WinRT) |
+| Launcher (Windows) | `dev.nucleusframework:nucleus.launcher-windows` | Windows Launcher API — badge notifications, jump lists, overlay icons, and thumbnail toolbar (ITaskbarList3) via JNI |
+| Notification (Linux) | `dev.nucleusframework:nucleus.notification-linux` | Freedesktop Desktop Notifications API via JNI (D-Bus) |
+| Launcher (Linux) | `dev.nucleusframework:nucleus.launcher-linux` | Unity Launcher API — badge, progress, urgency, quicklist via JNI (D-Bus) |
+| Launcher (macOS) | `dev.nucleusframework:nucleus.launcher-macos` | macOS dock context menu — custom items, submenus, click callbacks via JNI |
+| Media Control | `dev.nucleusframework:nucleus.media-control` | OS media controls (play/pause, metadata, seek) — MPRIS D-Bus on Linux, MPNowPlayingInfoCenter on macOS, SystemMediaTransportControls on Windows via JNI |
+| Menu (macOS) | `dev.nucleusframework:nucleus.menu-macos` | Complete NSMenu mapping — application menu bar, items, badges, delegates, SF Symbols via JNI |
+| SF Symbols | `dev.nucleusframework:nucleus.sf-symbols` | Type-safe Apple SF Symbols constants (6 195 symbols, 21 categories) |
+| Freedesktop Icons | `dev.nucleusframework:nucleus.freedesktop-icons` | Type-safe freedesktop Icon Naming Specification constants |
+| Decorated Window | `dev.nucleusframework:nucleus.decorated-window` | Custom window decorations with native title bar |
+| Decorated Window — Jewel | `dev.nucleusframework:nucleus.decorated-window-jewel` | Jewel (IntelliJ theme) color mapping for decorated windows |
+| Decorated Window — Material 2 | `dev.nucleusframework:nucleus.decorated-window-material2` | Material 2 color mapping for decorated windows |
+| Decorated Window — Material 3 | `dev.nucleusframework:nucleus.decorated-window-material3` | Material 3 color mapping for decorated windows |
+| Dark Mode Detector | `dev.nucleusframework:nucleus.darkmode-detector` | Reactive OS dark mode detection via JNI |
+| System Color | `dev.nucleusframework:nucleus.system-color` | Reactive system accent color and high contrast detection via JNI |
+| Energy Manager | `dev.nucleusframework:nucleus.energy-manager` | Process-level and thread-level energy efficiency mode and screen-awake (caffeine) API for Windows, macOS, and Linux |
+| Native SSL | `dev.nucleusframework:nucleus.native-ssl` | OS trust store integration — merges native certs with JVM defaults |
+| Native HTTP | `dev.nucleusframework:nucleus.native-http` | `java.net.http.HttpClient` pre-configured with native OS trust |
+| Native HTTP — OkHttp | `dev.nucleusframework:nucleus.native-http-okhttp` | OkHttp client pre-configured with native OS trust |
+| Native HTTP — Ktor | `dev.nucleusframework:nucleus.native-http-ktor` | Ktor `HttpClient` extension for native OS trust (all engines) |
+| Linux HiDPI | `dev.nucleusframework:nucleus.linux-hidpi` | Native HiDPI scale factor detection on Linux |
+| Scheduler | `dev.nucleusframework:nucleus.scheduler` | Background task scheduling — periodic, calendar, and on-boot tasks via OS-native schedulers (launchd, systemd, Task Scheduler) |
+| Service Management (macOS) | `dev.nucleusframework:nucleus.service-management-macos` | macOS SMAppService binding — login items, launch agents, launch daemons (macOS 13+) |
+| Auto-Launch | `dev.nucleusframework:nucleus.autolaunch` | Cross-platform start-at-login — MSIX `StartupTask`, Win32 `HKCU\...\Run`, `SMAppService`, systemd user units, Flatpak portal |
+| GraalVM Runtime | `dev.nucleusframework:nucleus.graalvm-runtime` | GraalVM native-image bootstrap + font substitutions (includes linux-hidpi) |
```kotlin
dependencies {
// Pick what you need:
- implementation("io.github.kdroidfilter:nucleus.core-runtime:")
- implementation("io.github.kdroidfilter:nucleus.aot-runtime:")
- implementation("io.github.kdroidfilter:nucleus.updater-runtime:")
- implementation("io.github.kdroidfilter:nucleus.taskbar-progress:")
- implementation("io.github.kdroidfilter:nucleus.notification-macos:")
- implementation("io.github.kdroidfilter:nucleus.notification-windows:")
- implementation("io.github.kdroidfilter:nucleus.launcher-windows:")
- implementation("io.github.kdroidfilter:nucleus.notification-linux:")
- implementation("io.github.kdroidfilter:nucleus.launcher-linux:")
- implementation("io.github.kdroidfilter:nucleus.launcher-macos:")
- implementation("io.github.kdroidfilter:nucleus.media-control:")
- implementation("io.github.kdroidfilter:nucleus.menu-macos:")
- implementation("io.github.kdroidfilter:nucleus.sf-symbols:")
- implementation("io.github.kdroidfilter:nucleus.freedesktop-icons:")
- implementation("io.github.kdroidfilter:nucleus.decorated-window:")
- implementation("io.github.kdroidfilter:nucleus.decorated-window-jewel:")
- implementation("io.github.kdroidfilter:nucleus.decorated-window-material2:")
- implementation("io.github.kdroidfilter:nucleus.decorated-window-material3:")
- implementation("io.github.kdroidfilter:nucleus.darkmode-detector:")
- implementation("io.github.kdroidfilter:nucleus.system-color:")
- implementation("io.github.kdroidfilter:nucleus.energy-manager:")
- implementation("io.github.kdroidfilter:nucleus.native-ssl:")
- implementation("io.github.kdroidfilter:nucleus.native-http:")
- implementation("io.github.kdroidfilter:nucleus.native-http-okhttp:")
- implementation("io.github.kdroidfilter:nucleus.native-http-ktor:")
- implementation("io.github.kdroidfilter:nucleus.linux-hidpi:")
- implementation("io.github.kdroidfilter:nucleus.scheduler:")
- implementation("io.github.kdroidfilter:nucleus.service-management-macos:")
- implementation("io.github.kdroidfilter:nucleus.autolaunch:")
- implementation("io.github.kdroidfilter:nucleus.graalvm-runtime:")
+ implementation("dev.nucleusframework:nucleus.core-runtime:")
+ implementation("dev.nucleusframework:nucleus.aot-runtime:")
+ implementation("dev.nucleusframework:nucleus.updater-runtime:")
+ implementation("dev.nucleusframework:nucleus.taskbar-progress:")
+ implementation("dev.nucleusframework:nucleus.notification-macos:")
+ implementation("dev.nucleusframework:nucleus.notification-windows:")
+ implementation("dev.nucleusframework:nucleus.launcher-windows:")
+ implementation("dev.nucleusframework:nucleus.notification-linux:")
+ implementation("dev.nucleusframework:nucleus.launcher-linux:")
+ implementation("dev.nucleusframework:nucleus.launcher-macos:")
+ implementation("dev.nucleusframework:nucleus.media-control:")
+ implementation("dev.nucleusframework:nucleus.menu-macos:")
+ implementation("dev.nucleusframework:nucleus.sf-symbols:")
+ implementation("dev.nucleusframework:nucleus.freedesktop-icons:")
+ implementation("dev.nucleusframework:nucleus.decorated-window:")
+ implementation("dev.nucleusframework:nucleus.decorated-window-jewel:")
+ implementation("dev.nucleusframework:nucleus.decorated-window-material2:")
+ implementation("dev.nucleusframework:nucleus.decorated-window-material3:")
+ implementation("dev.nucleusframework:nucleus.darkmode-detector:")
+ implementation("dev.nucleusframework:nucleus.system-color:")
+ implementation("dev.nucleusframework:nucleus.energy-manager:")
+ implementation("dev.nucleusframework:nucleus.native-ssl:")
+ implementation("dev.nucleusframework:nucleus.native-http:")
+ implementation("dev.nucleusframework:nucleus.native-http-okhttp:")
+ implementation("dev.nucleusframework:nucleus.native-http-ktor:")
+ implementation("dev.nucleusframework:nucleus.linux-hidpi:")
+ implementation("dev.nucleusframework:nucleus.scheduler:")
+ implementation("dev.nucleusframework:nucleus.service-management-macos:")
+ implementation("dev.nucleusframework:nucleus.autolaunch:")
+ implementation("dev.nucleusframework:nucleus.graalvm-runtime:")
}
```
@@ -4732,36 +4732,36 @@ When using a custom `configurationFiles`, add the following rules to your file t
```proguard
# Nucleus decorated-window JNI (macOS)
--keep class io.github.kdroidfilter.nucleus.window.utils.macos.NativeMacBridge {
+-keep class dev.nucleusframework.nucleus.window.utils.macos.NativeMacBridge {
native ;
}
--keep class io.github.kdroidfilter.nucleus.window.** { *; }
+-keep class dev.nucleusframework.nucleus.window.** { *; }
# Nucleus darkmode-detector JNI (macOS)
--keep class io.github.kdroidfilter.nucleus.darkmodedetector.mac.NativeDarkModeBridge {
+-keep class dev.nucleusframework.nucleus.darkmodedetector.mac.NativeDarkModeBridge {
native ;
static void onThemeChanged(boolean);
}
# Nucleus darkmode-detector JNI (Linux)
--keep class io.github.kdroidfilter.nucleus.darkmodedetector.linux.NativeLinuxBridge {
+-keep class dev.nucleusframework.nucleus.darkmodedetector.linux.NativeLinuxBridge {
native ;
static void onThemeChanged(boolean);
}
# Nucleus darkmode-detector JNI (Windows)
--keep class io.github.kdroidfilter.nucleus.darkmodedetector.windows.NativeWindowsBridge {
+-keep class dev.nucleusframework.nucleus.darkmodedetector.windows.NativeWindowsBridge {
native ;
}
--keep class io.github.kdroidfilter.nucleus.darkmodedetector.** { *; }
+-keep class dev.nucleusframework.nucleus.darkmodedetector.** { *; }
# Nucleus native-ssl JNI (macOS)
--keep class io.github.kdroidfilter.nucleus.nativessl.mac.NativeSslBridge {
+-keep class dev.nucleusframework.nucleus.nativessl.mac.NativeSslBridge {
native ;
}
# Nucleus native-ssl JNI (Windows)
--keep class io.github.kdroidfilter.nucleus.nativessl.windows.WindowsSslBridge {
+-keep class dev.nucleusframework.nucleus.nativessl.windows.WindowsSslBridge {
native ;
}
```
@@ -4780,14 +4780,14 @@ Access application metadata injected by the Nucleus Gradle plugin at runtime.
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.core-runtime:")
+ implementation("dev.nucleusframework:nucleus.core-runtime:")
}
```
## Usage
```kotlin
-import io.github.kdroidfilter.nucleus.core.runtime.NucleusApp
+import dev.nucleusframework.nucleus.core.runtime.NucleusApp
// Application identifier (matches packageName in the Nucleus DSL)
val appId: String = NucleusApp.appId
@@ -4892,13 +4892,13 @@ Detect at runtime which installer format was used to package your application.
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.core-runtime:")
+ implementation("dev.nucleusframework:nucleus.core-runtime:")
}
```
```kotlin
-import io.github.kdroidfilter.nucleus.core.runtime.ExecutableRuntime
-import io.github.kdroidfilter.nucleus.core.runtime.ExecutableType
+import dev.nucleusframework.nucleus.core.runtime.ExecutableRuntime
+import dev.nucleusframework.nucleus.core.runtime.ExecutableType
```
## Usage
@@ -4979,12 +4979,12 @@ Enforce that only one instance of your application runs at a time.
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.core-runtime:")
+ implementation("dev.nucleusframework:nucleus.core-runtime:")
}
```
```kotlin
-import io.github.kdroidfilter.nucleus.core.runtime.SingleInstanceManager
+import dev.nucleusframework.nucleus.core.runtime.SingleInstanceManager
```
`SingleInstanceManager` is a Kotlin `object` (singleton). It uses file-based locking to ensure single-instance behavior across platforms.
@@ -5073,12 +5073,12 @@ Handle custom URL protocol links (`myapp://action?param=value`).
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.core-runtime:")
+ implementation("dev.nucleusframework:nucleus.core-runtime:")
}
```
```kotlin
-import io.github.kdroidfilter.nucleus.core.runtime.DeepLinkHandler
+import dev.nucleusframework.nucleus.core.runtime.DeepLinkHandler
```
`DeepLinkHandler` is a Kotlin `object` (singleton).
@@ -5254,10 +5254,10 @@ Choose one implementation:
```kotlin
dependencies {
// Option 1: JBR-based (requires JetBrains Runtime)
- implementation("io.github.kdroidfilter:nucleus.decorated-window-jbr:")
+ implementation("dev.nucleusframework:nucleus.decorated-window-jbr:")
// Option 2: JNI-based (works on any JVM)
- implementation("io.github.kdroidfilter:nucleus.decorated-window-jni:")
+ implementation("dev.nucleusframework:nucleus.decorated-window-jni:")
}
```
@@ -5266,9 +5266,9 @@ dependencies {
```kotlin
dependencies {
// Optional — pick one depending on your design system
- implementation("io.github.kdroidfilter:nucleus.decorated-window-jewel:") // Jewel (IntelliJ)
- implementation("io.github.kdroidfilter:nucleus.decorated-window-material2:") // Material 2
- implementation("io.github.kdroidfilter:nucleus.decorated-window-material3:") // Material 3
+ implementation("dev.nucleusframework:nucleus.decorated-window-jewel:") // Jewel (IntelliJ)
+ implementation("dev.nucleusframework:nucleus.decorated-window-material2:") // Material 2
+ implementation("dev.nucleusframework:nucleus.decorated-window-material3:") // Material 3
}
```
@@ -5778,22 +5778,22 @@ Both modules use JNI on macOS. When ProGuard is enabled, the native bridge class
```proguard
# Nucleus decorated-window-jbr JNI
--keep class io.github.kdroidfilter.nucleus.window.utils.macos.NativeMacBridge {
+-keep class dev.nucleusframework.nucleus.window.utils.macos.NativeMacBridge {
native ;
}
# Nucleus decorated-window-jni JNI (all platforms)
--keep class io.github.kdroidfilter.nucleus.window.utils.macos.JniMacTitleBarBridge {
+-keep class dev.nucleusframework.nucleus.window.utils.macos.JniMacTitleBarBridge {
native ;
}
--keep class io.github.kdroidfilter.nucleus.window.utils.windows.JniWindowsDecorationBridge {
+-keep class dev.nucleusframework.nucleus.window.utils.windows.JniWindowsDecorationBridge {
native ;
}
--keep class io.github.kdroidfilter.nucleus.window.utils.linux.JniLinuxWindowBridge {
+-keep class dev.nucleusframework.nucleus.window.utils.linux.JniLinuxWindowBridge {
native ;
}
--keep class io.github.kdroidfilter.nucleus.window.** { *; }
+-keep class dev.nucleusframework.nucleus.window.** { *; }
```
## RTL (Right-to-Left) Layout Support
@@ -5882,12 +5882,12 @@ Add `nucleus-application` plus **exactly one** decorated-window backend:
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.nucleus-application:")
+ implementation("dev.nucleusframework:nucleus.nucleus-application:")
// Pick exactly one backend:
- implementation("io.github.kdroidfilter:nucleus.decorated-window-jni:") // any JVM (recommended)
- // implementation("io.github.kdroidfilter:nucleus.decorated-window-jbr:") // JBR-only
- // implementation("io.github.kdroidfilter:nucleus.decorated-window-tao:") // no-AWT, GraalVM-friendly
+ implementation("dev.nucleusframework:nucleus.decorated-window-jni:") // any JVM (recommended)
+ // implementation("dev.nucleusframework:nucleus.decorated-window-jbr:") // JBR-only
+ // implementation("dev.nucleusframework:nucleus.decorated-window-tao:") // no-AWT, GraalVM-friendly
}
```
@@ -6085,7 +6085,7 @@ Migrating an existing AWT-only app (jbr or jni) is a two-line change for the ent
```diff
- import androidx.compose.ui.window.application
-+ import io.github.kdroidfilter.nucleus.application.nucleusApplication
++ import dev.nucleusframework.nucleus.application.nucleusApplication
```
```diff
@@ -6214,13 +6214,13 @@ If none of these apply, stick with `decorated-window-jni` — it is the more bat
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.decorated-window-tao:")
+ implementation("dev.nucleusframework:nucleus.decorated-window-tao:")
// Optional but recommended — unified entry point that works with all three backends:
- implementation("io.github.kdroidfilter:nucleus.nucleus-application:")
+ implementation("dev.nucleusframework:nucleus.nucleus-application:")
// GraalVM bootstrap (required for native-image builds):
- implementation("io.github.kdroidfilter:nucleus.graalvm-runtime:")
+ implementation("dev.nucleusframework:nucleus.graalvm-runtime:")
}
```
@@ -6541,7 +6541,7 @@ The `decorated-window-jewel` module provides Jewel (IntelliJ theme) wrappers aro
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.decorated-window-jewel:")
+ implementation("dev.nucleusframework:nucleus.decorated-window-jewel:")
// Transitive: nucleus.decorated-window is pulled in via `api`
}
```
@@ -6693,7 +6693,7 @@ The `decorated-window-material2` module provides Material 2 wrappers around the
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.decorated-window-material2:")
+ implementation("dev.nucleusframework:nucleus.decorated-window-material2:")
// Transitive: nucleus.decorated-window is pulled in via `api`
}
```
@@ -6838,7 +6838,7 @@ The `decorated-window-material3` module provides Material 3 wrappers around the
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.decorated-window-material3:")
+ implementation("dev.nucleusframework:nucleus.decorated-window-material3:")
// Transitive: nucleus.decorated-window is pulled in via `api`
}
```
@@ -7011,7 +7011,7 @@ When the user toggles dark mode in their OS settings, `isSystemInDarkMode()` rec
# System Tray
-**Separate repository:** System Tray is maintained in its own repository with its own release cycle: [**kdroidFilter/ComposeNativeTray**](https://github.com/kdroidFilter/ComposeNativeTray). The artifact is `io.github.kdroidfilter:composenativetray`.
+**Separate repository:** System Tray is maintained in its own repository with its own release cycle: [**nucleusframework/ComposeNativeTray**](https://github.com/nucleusframework/ComposeNativeTray). The artifact is `dev.nucleusframework:composenativetray`.
**ComposeNativeTray** is not a library. It is a **complete framework for building system tray applications** with Compose Desktop — the most expressive and the most powerful way to own the system tray on macOS, Windows, and Linux.
Traditionally, building a tray application meant juggling platform-specific icon formats, managing menu state by hand, and hoping the result didn't look broken on half your users' machines. ComposeNativeTray erases all of that. Your tray icon is **drawn by Compose** — the same toolkit that renders your UI. Any `@Composable` becomes a tray icon: an `ImageVector`, a `Painter`, a resource, or a fully custom composable with gradients, badges, and animations. One icon definition. Every platform. Every DPI. Pixel-perfect.
@@ -7066,7 +7066,7 @@ Change `isDarkMode` and the icon switches, the checkmark toggles, the label upda
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:composenativetray:")
+ implementation("dev.nucleusframework:composenativetray:")
}
```
@@ -7483,7 +7483,7 @@ Cross-platform notification abstraction that unifies Linux, Windows, and macOS n
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.notification-common:")
+ implementation("dev.nucleusframework:nucleus.notification-common:")
}
```
@@ -7492,7 +7492,7 @@ This single dependency pulls in all three platform modules (Linux, Windows, macO
## Quick Start
```kotlin
-import io.github.kdroidfilter.nucleus.notification.common.*
+import dev.nucleusframework.nucleus.notification.common.*
// Build a notification
val n = notification(
@@ -7510,7 +7510,7 @@ n.send()
## Full Example
```kotlin
-import io.github.kdroidfilter.nucleus.notification.common.*
+import dev.nucleusframework.nucleus.notification.common.*
val myNotification = notification(
title = "New Message from Alice",
@@ -7746,7 +7746,7 @@ Complete Kotlin mapping of Apple's [UserNotifications](https://developer.apple.c
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.notification-macos:")
+ implementation("dev.nucleusframework:nucleus.notification-macos:")
}
```
@@ -7755,7 +7755,7 @@ Depends on `core-runtime` for `NativeLibraryLoader` and `ExecutableRuntime` (pul
## Quick Start
```kotlin
-import io.github.kdroidfilter.nucleus.notification.*
+import dev.nucleusframework.nucleus.notification.*
// 1. Request authorization
NotificationCenter.requestAuthorization(
@@ -8239,7 +8239,7 @@ Ships pre-built macOS dylibs (arm64 + x86_64). No Windows or Linux native — `i
## ProGuard
```proguard
--keep class io.github.kdroidfilter.nucleus.notification.macos.NativeMacNotificationBridge {
+-keep class dev.nucleusframework.nucleus.notification.macos.NativeMacNotificationBridge {
native ;
static ** on*(...);
}
@@ -8247,7 +8247,7 @@ Ships pre-built macOS dylibs (arm64 + x86_64). No Windows or Linux native — `i
## GraalVM
-Reachability metadata is included in the JAR at `META-INF/native-image/io.github.kdroidfilter/nucleus.notification-macos/reachability-metadata.json`. No additional configuration needed.
+Reachability metadata is included in the JAR at `META-INF/native-image/dev.nucleusframework/nucleus.notification-macos/reachability-metadata.json`. No additional configuration needed.
---
@@ -8260,7 +8260,7 @@ Complete Kotlin mapping of the [Windows Toast Notifications API](https://learn.m
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.notification-windows:")
+ implementation("dev.nucleusframework:nucleus.notification-windows:")
}
```
@@ -8269,7 +8269,7 @@ Depends on `core-runtime` for `NativeLibraryLoader`, `ExecutableRuntime`, and `N
## Quick Start
```kotlin
-import io.github.kdroidfilter.nucleus.notification.windows.*
+import dev.nucleusframework.nucleus.notification.windows.*
// 1. Initialize (auto-detects APPX vs unpackaged)
WindowsNotificationCenter.initialize()
@@ -8579,7 +8579,7 @@ Ships pre-built Windows DLLs (x64 + ARM64). No macOS or Linux native — `isAvai
## ProGuard
```proguard
--keep class io.github.kdroidfilter.nucleus.notification.windows.NativeWindowsNotificationBridge {
+-keep class dev.nucleusframework.nucleus.notification.windows.NativeWindowsNotificationBridge {
native ;
static ** on*(...);
}
@@ -8587,7 +8587,7 @@ Ships pre-built Windows DLLs (x64 + ARM64). No macOS or Linux native — `isAvai
## GraalVM
-Reachability metadata is included in the JAR at `META-INF/native-image/io.github.kdroidfilter/nucleus.notification-windows/reachability-metadata.json`. No additional configuration needed.
+Reachability metadata is included in the JAR at `META-INF/native-image/dev.nucleusframework/nucleus.notification-windows/reachability-metadata.json`. No additional configuration needed.
---
@@ -8600,7 +8600,7 @@ Complete Kotlin mapping of the [freedesktop Desktop Notifications Specification]
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.notification-linux:")
+ implementation("dev.nucleusframework:nucleus.notification-linux:")
}
```
@@ -8609,7 +8609,7 @@ Depends on `core-runtime` for `NativeLibraryLoader` and `freedesktop-icons` for
## Quick Start
```kotlin
-import io.github.kdroidfilter.nucleus.notification.linux.*
+import dev.nucleusframework.nucleus.notification.linux.*
// Send a simple notification with typesafe icon and sound
val id = LinuxNotificationCenter.notify(
@@ -8807,7 +8807,7 @@ Received in `LinuxNotificationListener.onClosed`.
Icons are typesafe via the `FreedesktopIcon` sealed interface from the shared [`freedesktop-icons`](freedesktop-icons.md) module. All 338 standard names from the [freedesktop Icon Naming Specification](https://specifications.freedesktop.org/icon-naming/latest/) are available as enum constants.
```kotlin
-import io.github.kdroidfilter.nucleus.freedesktop.icons.FreedesktopIcon
+import dev.nucleusframework.nucleus.freedesktop.icons.FreedesktopIcon
FreedesktopIcon.Status.DIALOG_INFORMATION
FreedesktopIcon.Device.PRINTER
@@ -9040,7 +9040,7 @@ Ships pre-built Linux shared libraries (x86_64 + aarch64). No macOS or Windows n
## ProGuard
```proguard
--keep class io.github.kdroidfilter.nucleus.notification.linux.NativeLinuxNotificationBridge {
+-keep class dev.nucleusframework.nucleus.notification.linux.NativeLinuxNotificationBridge {
native ;
static ** on*(...);
}
@@ -9053,7 +9053,7 @@ JNI reflection metadata must include the bridge class:
```json
[
{
- "type": "io.github.kdroidfilter.nucleus.notification.linux.NativeLinuxNotificationBridge",
+ "type": "dev.nucleusframework.nucleus.notification.linux.NativeLinuxNotificationBridge",
"methods": [
{ "name": "onNotificationClosed", "parameterTypes": ["int", "int"] },
{ "name": "onActionInvoked", "parameterTypes": ["int", "java.lang.String"] },
@@ -9074,7 +9074,7 @@ macOS dock context menu integration via JNI. Add custom items, submenus, separat
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.launcher-macos:")
+ implementation("dev.nucleusframework:nucleus.launcher-macos:")
}
```
@@ -9083,7 +9083,7 @@ Depends on `core-runtime` for `NativeLibraryLoader` (pulled in transitively).
## Quick Start
```kotlin
-import io.github.kdroidfilter.nucleus.launcher.macos.*
+import dev.nucleusframework.nucleus.launcher.macos.*
// Listen for clicks
MacOsDockMenu.listener = DockMenuListener { itemId ->
@@ -9172,7 +9172,7 @@ DockMenuItem.separator(id = 3)
## Full Example
```kotlin
-import io.github.kdroidfilter.nucleus.launcher.macos.*
+import dev.nucleusframework.nucleus.launcher.macos.*
// Set up a dock menu with submenus and callbacks
MacOsDockMenu.listener = DockMenuListener { itemId ->
@@ -9228,7 +9228,7 @@ Ships pre-built macOS dylibs (arm64 + x86_64). `isAvailable` returns `false` on
## ProGuard
```proguard
--keep class io.github.kdroidfilter.nucleus.launcher.macos.NativeMacOsDockMenuBridge {
+-keep class dev.nucleusframework.nucleus.launcher.macos.NativeMacOsDockMenuBridge {
native ;
static ** on*(...);
}
@@ -9241,7 +9241,7 @@ JNI reflection metadata must include the bridge class:
```json
[
{
- "type": "io.github.kdroidfilter.nucleus.launcher.macos.NativeMacOsDockMenuBridge",
+ "type": "dev.nucleusframework.nucleus.launcher.macos.NativeMacOsDockMenuBridge",
"methods": [
{ "name": "onMenuItemClicked", "parameterTypes": ["int"] }
]
@@ -9259,7 +9259,7 @@ Windows Launcher API via JNI — badge notifications, jump lists, overlay icons,
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.launcher-windows:")
+ implementation("dev.nucleusframework:nucleus.launcher-windows:")
}
```
@@ -9288,8 +9288,8 @@ This module provides four Windows launcher APIs:
### Quick Start
```kotlin
-import io.github.kdroidfilter.nucleus.launcher.windows.BadgeGlyph
-import io.github.kdroidfilter.nucleus.launcher.windows.WindowsBadgeManager
+import dev.nucleusframework.nucleus.launcher.windows.BadgeGlyph
+import dev.nucleusframework.nucleus.launcher.windows.WindowsBadgeManager
// Initialize once at app startup
if (WindowsBadgeManager.isAvailable) {
@@ -9351,9 +9351,9 @@ Small 16×16 status icons displayed over the app's taskbar button. Works with al
### Quick Start
```kotlin
-import io.github.kdroidfilter.nucleus.launcher.windows.StockIcon
-import io.github.kdroidfilter.nucleus.launcher.windows.TaskbarIconSource
-import io.github.kdroidfilter.nucleus.launcher.windows.WindowsOverlayIcon
+import dev.nucleusframework.nucleus.launcher.windows.StockIcon
+import dev.nucleusframework.nucleus.launcher.windows.TaskbarIconSource
+import dev.nucleusframework.nucleus.launcher.windows.WindowsOverlayIcon
// Set a stock icon overlay
WindowsOverlayIcon.setIcon(
@@ -9393,10 +9393,10 @@ Up to 7 clickable buttons displayed in the taskbar thumbnail preview (visible wh
### Quick Start
```kotlin
-import io.github.kdroidfilter.nucleus.launcher.windows.StockIcon
-import io.github.kdroidfilter.nucleus.launcher.windows.TaskbarIconSource
-import io.github.kdroidfilter.nucleus.launcher.windows.ThumbnailToolbarButton
-import io.github.kdroidfilter.nucleus.launcher.windows.WindowsThumbnailToolbar
+import dev.nucleusframework.nucleus.launcher.windows.StockIcon
+import dev.nucleusframework.nucleus.launcher.windows.TaskbarIconSource
+import dev.nucleusframework.nucleus.launcher.windows.ThumbnailToolbarButton
+import dev.nucleusframework.nucleus.launcher.windows.WindowsThumbnailToolbar
// Register buttons (once per window)
WindowsThumbnailToolbar.setButtons(
@@ -9474,11 +9474,11 @@ Jump lists appear when the user right-clicks the app's taskbar button. They supp
### Quick Start
```kotlin
-import io.github.kdroidfilter.nucleus.launcher.windows.JumpListCategory
-import io.github.kdroidfilter.nucleus.launcher.windows.JumpListItem
-import io.github.kdroidfilter.nucleus.launcher.windows.StockIcon
-import io.github.kdroidfilter.nucleus.launcher.windows.TaskbarIconSource
-import io.github.kdroidfilter.nucleus.launcher.windows.WindowsJumpListManager
+import dev.nucleusframework.nucleus.launcher.windows.JumpListCategory
+import dev.nucleusframework.nucleus.launcher.windows.JumpListItem
+import dev.nucleusframework.nucleus.launcher.windows.StockIcon
+import dev.nucleusframework.nucleus.launcher.windows.TaskbarIconSource
+import dev.nucleusframework.nucleus.launcher.windows.WindowsJumpListManager
// Set a jump list with categories and tasks
WindowsJumpListManager.setJumpList(
@@ -9725,7 +9725,7 @@ Complete Kotlin mapping of the [Unity Launcher API](https://wiki.ubuntu.com/Unit
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.launcher-linux:")
+ implementation("dev.nucleusframework:nucleus.launcher-linux:")
}
```
@@ -9736,7 +9736,7 @@ Depends on `core-runtime` for `NativeLibraryLoader` and `freedesktop-icons` for
### Launcher Entry (Badge, Progress, Urgency)
```kotlin
-import io.github.kdroidfilter.nucleus.launcher.linux.*
+import dev.nucleusframework.nucleus.launcher.linux.*
val appUri = LinuxLauncherEntry.appUri("myapp.desktop")
@@ -9764,8 +9764,8 @@ LinuxLauncherEntry.update(appUri, LauncherProperties(
### Dynamic Quicklist (Right-Click Menu)
```kotlin
-import io.github.kdroidfilter.nucleus.freedesktop.icons.FreedesktopIcon
-import io.github.kdroidfilter.nucleus.launcher.linux.*
+import dev.nucleusframework.nucleus.freedesktop.icons.FreedesktopIcon
+import dev.nucleusframework.nucleus.launcher.linux.*
val quicklist = LinuxQuicklist("/com/example/MyApp/Menu")
@@ -9948,7 +9948,7 @@ Ships pre-built Linux shared libraries (x86_64 + aarch64). `isAvailable` returns
## ProGuard
```proguard
--keep class io.github.kdroidfilter.nucleus.launcher.linux.NativeLinuxLauncherBridge {
+-keep class dev.nucleusframework.nucleus.launcher.linux.NativeLinuxLauncherBridge {
native ;
static ** on*(...);
}
@@ -9961,7 +9961,7 @@ JNI reflection metadata must include the bridge class:
```json
[
{
- "type": "io.github.kdroidfilter.nucleus.launcher.linux.NativeLinuxLauncherBridge",
+ "type": "dev.nucleusframework.nucleus.launcher.linux.NativeLinuxLauncherBridge",
"methods": [
{ "name": "onMenuItemEvent", "parameterTypes": ["java.lang.String", "int"] }
]
@@ -9985,7 +9985,7 @@ OS-level media controls (play/pause, next/previous, seek, metadata) for your des
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.media-control:")
+ implementation("dev.nucleusframework:nucleus.media-control:")
}
```
@@ -9994,7 +9994,7 @@ Depends on `core-runtime` (for `NativeLibraryLoader` and `NucleusApp`) and `kotl
## Quick Start
```kotlin
-import io.github.kdroidfilter.nucleus.media.control.*
+import dev.nucleusframework.nucleus.media.control.*
if (MediaControlService.isAvailable()) {
// 1. Configure once — typically at app startup
@@ -10250,15 +10250,15 @@ Each JVM hosts a single long-lived background worker: on Linux a dedicated threa
## ProGuard
```proguard
--keep class io.github.kdroidfilter.nucleus.media.control.linux.NativeLinuxBridge {
+-keep class dev.nucleusframework.nucleus.media.control.linux.NativeLinuxBridge {
native ;
static ** on*(...);
}
--keep class io.github.kdroidfilter.nucleus.media.control.macos.NativeMacOsBridge {
+-keep class dev.nucleusframework.nucleus.media.control.macos.NativeMacOsBridge {
native ;
static ** on*(...);
}
--keep class io.github.kdroidfilter.nucleus.media.control.windows.NativeWindowsBridge {
+-keep class dev.nucleusframework.nucleus.media.control.windows.NativeWindowsBridge {
native ;
static ** on*(...);
}
@@ -10280,7 +10280,7 @@ The `darkmode-detector` module solves this by providing a **reactive** `isSystem
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.darkmode-detector:")
+ implementation("dev.nucleusframework:nucleus.darkmode-detector:")
}
```
@@ -10331,23 +10331,23 @@ The `darkmode-detector` module uses JNI native libraries on all platforms. When
```proguard
# macOS — NativeDarkModeBridge is looked up by name from native code
--keep class io.github.kdroidfilter.nucleus.darkmodedetector.mac.NativeDarkModeBridge {
+-keep class dev.nucleusframework.nucleus.darkmodedetector.mac.NativeDarkModeBridge {
native ;
static void onThemeChanged(boolean);
}
# Linux — NativeLinuxBridge is looked up by name from native code
--keep class io.github.kdroidfilter.nucleus.darkmodedetector.linux.NativeLinuxBridge {
+-keep class dev.nucleusframework.nucleus.darkmodedetector.linux.NativeLinuxBridge {
native ;
static void onThemeChanged(boolean);
}
# Windows
--keep class io.github.kdroidfilter.nucleus.darkmodedetector.windows.NativeWindowsBridge {
+-keep class dev.nucleusframework.nucleus.darkmodedetector.windows.NativeWindowsBridge {
native ;
}
--keep class io.github.kdroidfilter.nucleus.darkmodedetector.** { *; }
+-keep class dev.nucleusframework.nucleus.darkmodedetector.** { *; }
```
## Compose Preview
@@ -10359,7 +10359,7 @@ In Compose preview mode (`LocalInspectionMode`), the function falls back to the
Debug and error messages are logged under the tags `MacOSThemeDetector`, `WindowsThemeDetector`, and `LinuxPortalThemeDetector`. Logging is off by default. To enable it, set the global flag from `core-runtime`:
```kotlin
-import io.github.kdroidfilter.nucleus.core.runtime.tools.allowNucleusRuntimeLogging
+import dev.nucleusframework.nucleus.core.runtime.tools.allowNucleusRuntimeLogging
allowNucleusRuntimeLogging = true
```
@@ -10374,7 +10374,7 @@ The `system-color` module provides **reactive** detection of the OS accent color
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.system-color:")
+ implementation("dev.nucleusframework:nucleus.system-color:")
}
```
@@ -10433,7 +10433,7 @@ Android's [Material You](https://m3.material.io/styles/color/dynamic/choosing-a-
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.system-color:")
+ implementation("dev.nucleusframework:nucleus.system-color:")
implementation("com.materialkolor:material-kolor:4.1.1")
}
```
@@ -10509,7 +10509,7 @@ When ProGuard is enabled, the native bridge classes must be preserved. The Nucle
```proguard
# macOS
--keep class io.github.kdroidfilter.nucleus.systemcolor.mac.NativeMacSystemColorBridge {
+-keep class dev.nucleusframework.nucleus.systemcolor.mac.NativeMacSystemColorBridge {
native ;
static void onAccentColorChanged(float, float, float);
static void onAccentColorCleared();
@@ -10517,20 +10517,20 @@ When ProGuard is enabled, the native bridge classes must be preserved. The Nucle
}
# Windows
--keep class io.github.kdroidfilter.nucleus.systemcolor.windows.NativeWindowsSystemColorBridge {
+-keep class dev.nucleusframework.nucleus.systemcolor.windows.NativeWindowsSystemColorBridge {
native ;
static void onAccentColorChanged(int, int, int);
static void onHighContrastChanged(boolean);
}
# Linux
--keep class io.github.kdroidfilter.nucleus.systemcolor.linux.NativeLinuxSystemColorBridge {
+-keep class dev.nucleusframework.nucleus.systemcolor.linux.NativeLinuxSystemColorBridge {
native ;
static void onAccentColorChanged(float, float, float);
static void onHighContrastChanged(boolean);
}
--keep class io.github.kdroidfilter.nucleus.systemcolor.** { *; }
+-keep class dev.nucleusframework.nucleus.systemcolor.** { *; }
```
## Logging
@@ -10538,7 +10538,7 @@ When ProGuard is enabled, the native bridge classes must be preserved. The Nucle
Debug messages are logged under the tags `MacSystemColorDetector`, `WindowsSystemColor`, and `LinuxSystemColorDetector`. Logging is off by default. To enable it:
```kotlin
-import io.github.kdroidfilter.nucleus.core.runtime.tools.allowNucleusRuntimeLogging
+import dev.nucleusframework.nucleus.core.runtime.tools.allowNucleusRuntimeLogging
allowNucleusRuntimeLogging = true
```
@@ -10553,14 +10553,14 @@ The `system-info` module provides cross-platform system information gathering fo
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.system-info:")
+ implementation("dev.nucleusframework:nucleus.system-info:")
}
```
## Quick Start
```kotlin
-import io.github.kdroidfilter.nucleus.systeminfo.SystemInfo
+import dev.nucleusframework.nucleus.systeminfo.SystemInfo
fun main() {
val os = SystemInfo.osInfo()
@@ -10959,7 +10959,7 @@ On Linux, the library links only against `libdl` and `libm`. NVML (`libnvidia-ml
When ProGuard is enabled, preserve the native bridge classes:
```proguard
--keep class io.github.kdroidfilter.nucleus.systeminfo.** { *; }
+-keep class dev.nucleusframework.nucleus.systeminfo.** { *; }
```
---
@@ -10984,7 +10984,7 @@ The `energy-manager` module provides two capabilities for Compose Desktop applic
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.energy-manager:")
+ implementation("dev.nucleusframework:nucleus.energy-manager:")
}
```
@@ -11007,7 +11007,7 @@ The module provides two levels of process-level efficiency:
### Recommended: light mode on focus loss, full mode on minimize
```kotlin
-import io.github.kdroidfilter.nucleus.energymanager.EnergyManager
+import dev.nucleusframework.nucleus.energymanager.EnergyManager
import java.awt.event.WindowEvent
import java.awt.event.WindowFocusListener
@@ -11243,7 +11243,7 @@ The module ships pre-built native binaries for:
When ProGuard is enabled, preserve the native bridge classes:
```proguard
--keep class io.github.kdroidfilter.nucleus.energymanager.** { *; }
+-keep class dev.nucleusframework.nucleus.energymanager.** { *; }
```
---
@@ -11262,7 +11262,7 @@ This module was originally designed for running Compose Desktop applications com
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.linux-hidpi:")
+ implementation("dev.nucleusframework:nucleus.linux-hidpi:")
}
```
@@ -11271,7 +11271,7 @@ dependencies {
Call `getLinuxNativeScaleFactor()` **before** `application {}` (i.e. before AWT initialises):
```kotlin
-import io.github.kdroidfilter.nucleus.hidpi.getLinuxNativeScaleFactor
+import dev.nucleusframework.nucleus.hidpi.getLinuxNativeScaleFactor
fun main() {
if (System.getProperty("sun.java2d.uiScale") == null) {
@@ -11317,7 +11317,7 @@ The native code uses `dlopen` to load optional dependencies (libgio for GSetting
When ProGuard is enabled, preserve the JNI bridge class:
```proguard
--keep class io.github.kdroidfilter.nucleus.hidpi.HiDpiLinuxBridge {
+-keep class dev.nucleusframework.nucleus.hidpi.HiDpiLinuxBridge {
native ;
}
```
@@ -11332,7 +11332,7 @@ Native taskbar/dock progress bar and attention requests on Windows, macOS, and L
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.taskbar-progress:")
+ implementation("dev.nucleusframework:nucleus.taskbar-progress:")
}
```
@@ -11341,7 +11341,7 @@ dependencies {
## Quick Start
```kotlin
-import io.github.kdroidfilter.nucleus.taskbarprogress.TaskbarProgress
+import dev.nucleusframework.nucleus.taskbarprogress.TaskbarProgress
import java.awt.Window
// Show a progress bar at 75%
@@ -11469,15 +11469,15 @@ System-wide keyboard shortcuts that fire even when the application does not have
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.global-hotkey:")
+ implementation("dev.nucleusframework:nucleus.global-hotkey:")
}
```
## Quick Start
```kotlin
-import io.github.kdroidfilter.nucleus.globalhotkey.GlobalHotKeyManager
-import io.github.kdroidfilter.nucleus.globalhotkey.HotKeyModifier
+import dev.nucleusframework.nucleus.globalhotkey.GlobalHotKeyManager
+import dev.nucleusframework.nucleus.globalhotkey.HotKeyModifier
import java.awt.event.KeyEvent
GlobalHotKeyManager.initialize()
@@ -11668,7 +11668,7 @@ Uses the `org.freedesktop.portal.GlobalShortcuts` XDG Desktop Portal via GIO/GDB
**Requirements:**
-- The application must have a valid `.desktop` file with a reverse-DNS name (e.g., `io.github.kdroidfilter.MyApp.desktop`)
+- The application must have a valid `.desktop` file with a reverse-DNS name (e.g., `dev.nucleusframework.MyApp.desktop`)
- The application must be launched from that `.desktop` file (or have `GIO_LAUNCHED_DESKTOP_FILE` set)
- GNOME validates the `app_id` against `g_application_id_is_valid` — a plain name like `MyApp` will be rejected
@@ -11680,13 +11680,13 @@ Uses the `org.freedesktop.portal.GlobalShortcuts` XDG Desktop Portal via GIO/GDB
nucleus.application {
nativeDistributions {
appName = "MyApp" // human-readable display name
- packageName = "io.github.kdroidfilter.MyApp" // becomes io.github.kdroidfilter.MyApp.desktop
+ packageName = "dev.nucleusframework.MyApp" // becomes dev.nucleusframework.MyApp.desktop
}
}
```
**`appName` is required:** Without `appName`, the application title shown in GNOME Shell and window decorations
-will fall back to the full `packageName` (`io.github.kdroidfilter.MyApp`).
+will fall back to the full `packageName` (`dev.nucleusframework.MyApp`).
Always set both: `packageName` for the reverse-DNS identity, `appName` for the display name.
**Step 2 — Launch from the `.desktop` file:**
@@ -11695,7 +11695,7 @@ The portal uses `GIO_LAUNCHED_DESKTOP_FILE` (set automatically by the desktop en
For development, you can set it manually:
```bash
-GIO_LAUNCHED_DESKTOP_FILE=/usr/share/applications/io.github.kdroidfilter.MyApp.desktop \
+GIO_LAUNCHED_DESKTOP_FILE=/usr/share/applications/dev.nucleusframework.MyApp.desktop \
GIO_LAUNCHED_DESKTOP_FILE_PID=$$ \
./my-app
```
@@ -11720,9 +11720,9 @@ The portal backend uses a dedicated GLib thread permanently attached to the JVM.
If you use ProGuard/R8, keep the JNI bridge classes:
```proguard
--keep class io.github.kdroidfilter.nucleus.globalhotkey.windows.NativeWindowsHotKeyBridge { *; }
--keep class io.github.kdroidfilter.nucleus.globalhotkey.macos.NativeMacOsHotKeyBridge { *; }
--keep class io.github.kdroidfilter.nucleus.globalhotkey.linux.NativeLinuxHotKeyBridge { *; }
+-keep class dev.nucleusframework.nucleus.globalhotkey.windows.NativeWindowsHotKeyBridge { *; }
+-keep class dev.nucleusframework.nucleus.globalhotkey.macos.NativeMacOsHotKeyBridge { *; }
+-keep class dev.nucleusframework.nucleus.globalhotkey.linux.NativeLinuxHotKeyBridge { *; }
```
---
@@ -11735,17 +11735,17 @@ Declarative, Compose-reactive macOS application menu bar via JNI. Build a fully
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.menu-macos:")
+ implementation("dev.nucleusframework:nucleus.menu-macos:")
}
```
-Pulls in `core-runtime`, `compose.desktop.common`, and `sf-symbols` transitively. Consumers can use type-safe SF Symbol constants via `io.github.kdroidfilter.nucleus.sfsymbols.*` without declaring `sf-symbols` explicitly.
+Pulls in `core-runtime`, `compose.desktop.common`, and `sf-symbols` transitively. Consumers can use type-safe SF Symbol constants via `dev.nucleusframework.nucleus.sfsymbols.*` without declaring `sf-symbols` explicitly.
## Quick Start
```kotlin
-import io.github.kdroidfilter.nucleus.menu.macos.*
-import io.github.kdroidfilter.nucleus.sfsymbols.*
+import dev.nucleusframework.nucleus.menu.macos.*
+import dev.nucleusframework.nucleus.sfsymbols.*
@Composable
fun App() {
@@ -11877,7 +11877,7 @@ Available constants: `NativeKey.Escape`, `Return`, `Tab`, `Delete`, `Backspace`,
With the `sf-symbols` module (type-safe):
```kotlin
-import io.github.kdroidfilter.nucleus.sfsymbols.*
+import dev.nucleusframework.nucleus.sfsymbols.*
Item("Cut", icon = NsMenuItemImage.SystemSymbol(SFSymbolObjectsAndTools.SCISSORS)) { }
Item("Inbox", icon = NsMenuItemImage.SystemSymbol(SFSymbolGeneral.TRAY_FILL)) { }
@@ -12048,7 +12048,7 @@ Menu("App Services") { Item("Custom") { } } // ✗ fully yours
## Full Example
```kotlin
-import io.github.kdroidfilter.nucleus.sfsymbols.*
+import dev.nucleusframework.nucleus.sfsymbols.*
@Composable
fun App() {
@@ -12195,7 +12195,7 @@ Ships pre-built macOS dylibs (arm64 + x86_64). `NativeMenuBar` is a no-op on non
## ProGuard
```proguard
--keep class io.github.kdroidfilter.nucleus.menu.macos.NativeNsMenuBridge {
+-keep class dev.nucleusframework.nucleus.menu.macos.NativeNsMenuBridge {
native ;
static ** on*(...);
}
@@ -12206,7 +12206,7 @@ Ships pre-built macOS dylibs (arm64 + x86_64). `NativeMenuBar` is a no-op on non
```json
[
{
- "type": "io.github.kdroidfilter.nucleus.menu.macos.NativeNsMenuBridge",
+ "type": "dev.nucleusframework.nucleus.menu.macos.NativeNsMenuBridge",
"methods": [
{ "name": "onMenuItemAction", "parameterTypes": ["long"] },
{ "name": "onMenuWillOpen", "parameterTypes": ["long"] },
@@ -12229,7 +12229,7 @@ Type-safe Kotlin constants for the [freedesktop Icon Naming Specification](https
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.freedesktop-icons:")
+ implementation("dev.nucleusframework:nucleus.freedesktop-icons:")
}
```
@@ -12237,7 +12237,7 @@ dependencies {
## Quick Start
```kotlin
-import io.github.kdroidfilter.nucleus.freedesktop.icons.FreedesktopIcon
+import dev.nucleusframework.nucleus.freedesktop.icons.FreedesktopIcon
// Standard icon from the spec (typesafe)
val icon = FreedesktopIcon.Status.DIALOG_INFORMATION
@@ -12287,8 +12287,8 @@ Icon names are **cross-desktop** — they are resolved from the active icon them
## Usage in Notifications
```kotlin
-import io.github.kdroidfilter.nucleus.freedesktop.icons.FreedesktopIcon
-import io.github.kdroidfilter.nucleus.notification.linux.*
+import dev.nucleusframework.nucleus.freedesktop.icons.FreedesktopIcon
+import dev.nucleusframework.nucleus.notification.linux.*
LinuxNotificationCenter.notify(
Notification(
@@ -12304,8 +12304,8 @@ LinuxNotificationCenter.notify(
## Usage in Launcher Quicklists
```kotlin
-import io.github.kdroidfilter.nucleus.freedesktop.icons.FreedesktopIcon
-import io.github.kdroidfilter.nucleus.launcher.linux.DbusmenuItem
+import dev.nucleusframework.nucleus.freedesktop.icons.FreedesktopIcon
+import dev.nucleusframework.nucleus.launcher.linux.DbusmenuItem
val items = listOf(
DbusmenuItem(id = 1, label = "New Window", icon = FreedesktopIcon.Action.WINDOW_NEW),
@@ -12338,7 +12338,7 @@ The `scheduler` module registers background tasks with the OS so they run even w
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.scheduler:")
+ implementation("dev.nucleusframework:nucleus.scheduler:")
}
```
@@ -12893,7 +12893,7 @@ Each task gets a single `.properties` file. The serialized input payload
#### macOS (launchd)
-Generates plist files in `~/Library/LaunchAgents/` with label `io.github.kdroidfilter.nucleus..`. Managed via a JNI bridge (`MacOSLaunchdSchedulerJni`) that uses Foundation and ServiceManagement APIs for plist writing, job status queries, and next-fire-time computation. Falls back to `launchctl` shell commands when the native library is unavailable.
+Generates plist files in `~/Library/LaunchAgents/` with label `dev.nucleusframework.nucleus..`. Managed via a JNI bridge (`MacOSLaunchdSchedulerJni`) that uses Foundation and ServiceManagement APIs for plist writing, job status queries, and next-fire-time computation. Falls back to `launchctl` shell commands when the native library is unavailable.
#### Linux (systemd)
@@ -12911,7 +12911,7 @@ Users uninstall apps without thinking about background scheduled tasks. Without
- **macOS** — **no automatic cleanup.** Unlike the Linux/Windows wrapper trick, the agent's `ProgramArguments` points directly at the application binary so the entry stays visible under its real name in System Settings → "Allow in the Background". The cost: when the user trashes the .app bundle, the orphaned `.plist` in `~/Library/LaunchAgents/` is **never** reclaimed by macOS, and launchd keeps attempting to spawn the missing binary forever — throttled by `ThrottleInterval` (10 s by default), logging `cannot spawn` to `system.log` on every attempt. SMAppService (macOS 13+) does not eliminate this either, and Apple ships no guidance for "graceful uninstall of a LaunchAgent" — the macOS ecosystem treats orphaned LaunchAgents as a known limitation that an explicit cleanup step has to handle. The mitigation Nucleus offers is **in-app**: call `DesktopTaskScheduler.cancelAll()` from your app's settings ("Disable background tasks") or from any in-app sign-out / reset flow — this unloads the agents and removes the plists cleanly while the binary is still around. If the user does a plain drag-to-trash without that step, the orphan leaks; the leftover plist then has to be removed manually:
```bash
- rm ~/Library/LaunchAgents/io.github.kdroidfilter.nucleus...plist
+ rm ~/Library/LaunchAgents/dev.nucleusframework.nucleus...plist
```
The failure mode in the meantime is the well-known throttled-log-spam — not a crash and not a security or correctness issue.
@@ -12924,7 +12924,7 @@ The `scheduler-testing` module provides two levels of test support, inspired by
```kotlin
dependencies {
- testImplementation("io.github.kdroidfilter:nucleus.scheduler-testing:")
+ testImplementation("dev.nucleusframework:nucleus.scheduler-testing:")
}
```
@@ -13122,7 +13122,7 @@ The workflow is: **declare agents in Gradle** → **plugin embeds plists in the
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.service-management-macos:")
+ implementation("dev.nucleusframework:nucleus.service-management-macos:")
}
```
@@ -13398,7 +13398,7 @@ MyApp.app/
When ProGuard is enabled, preserve the native bridge classes:
```proguard
--keep class io.github.kdroidfilter.nucleus.servicemanagement.** { *; }
+-keep class dev.nucleusframework.nucleus.servicemanagement.** { *; }
```
---
@@ -13424,14 +13424,14 @@ The runtime exposes a single unified API — consumers don't need to branch on p
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.autolaunch:")
+ implementation("dev.nucleusframework:nucleus.autolaunch:")
}
```
```kotlin
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunch
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchResult
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchState
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunch
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchResult
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchState
```
## Usage
@@ -13506,7 +13506,7 @@ nucleus.application {
windows {
appx {
applicationId = "NucleusDemo"
- publisherDisplayName = "KDroidFilter"
+ publisherDisplayName = "NucleusFramework"
displayName = "Nucleus Demo"
// 1. Inject into Package.appxmanifest
@@ -13587,7 +13587,7 @@ Nucleus picks the right backend automatically — nothing to configure:
All defaults fall back to `NucleusApp`. Override any of them **before** the first `AutoLaunch` call:
```kotlin
-import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchConfig
+import dev.nucleusframework.nucleus.autolaunch.AutoLaunchConfig
AutoLaunchConfig.taskId = "MyCustomMsixTaskId" // MSIX
AutoLaunchConfig.executablePath = "C:\\Program Files\\MyApp\\MyApp.exe" // Win32, Linux systemd (full path), Linux Flatpak (basename used)
@@ -13647,7 +13647,7 @@ The `native-ssl` module solves this by reading trusted certificates directly fro
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.native-ssl:")
+ implementation("dev.nucleusframework:nucleus.native-ssl:")
}
```
@@ -13656,7 +13656,7 @@ dependencies {
The entire API surface is the `NativeTrustManager` singleton. All properties are lazy and thread-safe.
```kotlin
-import io.github.kdroidfilter.nucleus.nativessl.NativeTrustManager
+import dev.nucleusframework.nucleus.nativessl.NativeTrustManager
// Ready-to-use X509TrustManager (JVM defaults + OS native certs)
val trustManager: X509TrustManager = NativeTrustManager.trustManager
@@ -13723,11 +13723,11 @@ Certificates are deduplicated by DER content across all sources.
The `native-ssl` module uses JNI native libraries on macOS and Windows. When ProGuard is enabled, the bridge classes must be preserved. The Nucleus Gradle plugin includes these rules automatically; if you need them manually:
```proguard
--keep class io.github.kdroidfilter.nucleus.nativessl.mac.NativeSslBridge {
+-keep class dev.nucleusframework.nucleus.nativessl.mac.NativeSslBridge {
native ;
}
--keep class io.github.kdroidfilter.nucleus.nativessl.windows.WindowsSslBridge {
+-keep class dev.nucleusframework.nucleus.nativessl.windows.WindowsSslBridge {
native ;
}
```
@@ -13737,7 +13737,7 @@ The `native-ssl` module uses JNI native libraries on macOS and Windows. When Pro
Debug messages are emitted under the tags `NativeCertificateProvider`, `NativeSslBridge`, `WindowsCertificateProvider`, `LinuxCertificateProvider`, etc. Logging is off by default. To enable it, set the global flag from `core-runtime`:
```kotlin
-import io.github.kdroidfilter.nucleus.core.runtime.tools.allowNucleusRuntimeLogging
+import dev.nucleusframework.nucleus.core.runtime.tools.allowNucleusRuntimeLogging
allowNucleusRuntimeLogging = true
```
@@ -13752,9 +13752,9 @@ Three integration modules are available — pick the one that matches your HTTP
| Module | Artifact | Client |
|--------|----------|--------|
-| `native-http` | `io.github.kdroidfilter:nucleus.native-http` | `java.net.http.HttpClient` (JDK 11+) |
-| `native-http-okhttp` | `io.github.kdroidfilter:nucleus.native-http-okhttp` | OkHttp 4 |
-| `native-http-ktor` | `io.github.kdroidfilter:nucleus.native-http-ktor` | Ktor Client (engine-agnostic) |
+| `native-http` | `dev.nucleusframework:nucleus.native-http` | `java.net.http.HttpClient` (JDK 11+) |
+| `native-http-okhttp` | `dev.nucleusframework:nucleus.native-http-okhttp` | OkHttp 4 |
+| `native-http-ktor` | `dev.nucleusframework:nucleus.native-http-ktor` | Ktor Client (engine-agnostic) |
All three pull in `native-ssl` transitively — no need to declare it separately.
@@ -13766,14 +13766,14 @@ All three pull in `native-ssl` transitively — no need to declare it separately
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.native-http:")
+ implementation("dev.nucleusframework:nucleus.native-http:")
}
```
### Usage
```kotlin
-import io.github.kdroidfilter.nucleus.nativehttp.NativeHttpClient
+import dev.nucleusframework.nucleus.nativehttp.NativeHttpClient
// Option 1 — pre-built client
val client = NativeHttpClient.create()
@@ -13797,7 +13797,7 @@ val client = HttpClient.newBuilder()
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.native-http-okhttp:")
+ implementation("dev.nucleusframework:nucleus.native-http-okhttp:")
}
```
@@ -13806,7 +13806,7 @@ OkHttp 4.x is pulled in transitively.
### Usage
```kotlin
-import io.github.kdroidfilter.nucleus.nativehttp.okhttp.NativeOkHttpClient
+import dev.nucleusframework.nucleus.nativehttp.okhttp.NativeOkHttpClient
// Option 1 — pre-built client
val client = NativeOkHttpClient.create()
@@ -13828,7 +13828,7 @@ val client = OkHttpClient.Builder()
```kotlin
dependencies {
- implementation("io.github.kdroidfilter:nucleus.native-http-ktor:")
+ implementation("dev.nucleusframework:nucleus.native-http-ktor:")
// Add exactly one Ktor engine:
implementation("io.ktor:ktor-client-cio:") // CIO (coroutine-based)
// or: ktor-client-java, ktor-client-okhttp, ktor-client-apache5
@@ -13840,7 +13840,7 @@ dependencies {
### Usage
```kotlin
-import io.github.kdroidfilter.nucleus.nativehttp.ktor.installNativeSsl
+import dev.nucleusframework.nucleus.nativehttp.ktor.installNativeSsl
import io.ktor.client.HttpClient
import io.ktor.client.engine.cio.CIO
@@ -13937,7 +13937,7 @@ Scoring: each of 13 dimensions rated 0–10, total = raw sum / 130 × 100. See [
² Conveyor has `app.linux.aarch64` config keys ([docs](https://conveyor.hydraulic.dev/21.1/configs/linux/)), but Linux ARM64 is listed as planned in the FAQ ([FAQ](https://conveyor.hydraulic.dev/21.1/faq/output-formats/)).
??? info "Sources"
- - **Nucleus**: macOS universal binary via [`build-macos-universal`](https://github.com/kdroidFilter/Nucleus/tree/main/.github/actions/build-macos-universal) CI action using `lipo`
+ - **Nucleus**: macOS universal binary via [`build-macos-universal`](https://github.com/nucleusframework/Nucleus/tree/main/.github/actions/build-macos-universal) CI action using `lipo`
- **Conveyor**: [Package formats](https://conveyor.hydraulic.dev/21.1/package-formats/), [macOS config](https://conveyor.hydraulic.dev/21.1/configs/mac/), [Linux config](https://conveyor.hydraulic.dev/21.1/configs/linux/)
- **install4j**: [Features page](https://www.ej-technologies.com/install4j/features) — "compile installers for all platforms on any of these platforms"
- **jpackage**: [Oracle man page](https://docs.oracle.com/en/java/javase/23/docs/specs/man/jpackage.html) — must build on target OS
@@ -13973,7 +13973,7 @@ Scoring: each of 13 dimensions rated 0–10, total = raw sum / 130 × 100. See [
³ jDeploy DMG requires a separate GitHub Action + macOS runner ([jdeploy-action-dmg](https://github.com/shannah/jdeploy-action-dmg)).
??? info "Sources"
- - **Nucleus**: [`TargetFormat.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/TargetFormat.kt) — 17 enum values (16 distributable + `RawAppImage` intermediate)
+ - **Nucleus**: [`TargetFormat.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/TargetFormat.kt) — 17 enum values (16 distributable + `RawAppImage` intermediate)
- **Conveyor**: [Package formats](https://conveyor.hydraulic.dev/21.1/package-formats/), [Output formats FAQ](https://conveyor.hydraulic.dev/21.1/faq/output-formats/) — MSIX, EXE, ZIP (Windows); signed .app in ZIP (macOS); DEB, tar.gz (Linux). No DMG, PKG, RPM, NSIS, AppImage, Snap, Flatpak.
- **install4j**: [Media files](https://www.ej-technologies.com/resources/install4j/help/doc/concepts/mediaFiles.html) — EXE, MSI wrapper, DMG, .app, RPM, DEB, tar.gz, shell installer. No PKG, NSIS, AppX.
- **jpackage**: [Oracle man page](https://docs.oracle.com/en/java/javase/23/docs/specs/man/jpackage.html) — `--type`: app-image, dmg, pkg, exe, msi, deb, rpm
@@ -13997,7 +13997,7 @@ Nucleus leads by leveraging electron-builder as its packaging backend: jpackage
| Compose MP | ❌ | — | — | — | — | **0** |
??? info "Sources"
- - **Nucleus**: [`NucleusUpdater.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/NucleusUpdater.kt) — `GitHubProvider` and `GenericProvider`; SHA-512 verification; 9 self-updatable format types (EXE, NSIS, MSI, DMG, ZIP, AppImage, DEB, RPM, NsisWeb)
+ - **Nucleus**: [`NucleusUpdater.kt`](https://github.com/nucleusframework/Nucleus/blob/main/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/NucleusUpdater.kt) — `GitHubProvider` and `GenericProvider`; SHA-512 verification; 9 self-updatable format types (EXE, NSIS, MSI, DMG, ZIP, AppImage, DEB, RPM, NsisWeb)
- **Conveyor**: [Update modes](https://conveyor.hydraulic.dev/21.1/configs/update-modes/) — Sparkle 2 on macOS (delta patches for 5 previous versions), MSIX native on Windows (64 KB chunk delta), apt on Linux. [Understanding updates](https://conveyor.hydraulic.dev/21.1/understanding-updates/)
- **install4j**: [Features](https://www.ej-technologies.com/install4j/features) — built-in auto-update with configurable strategies
- **jDeploy**: [Substack](https://jdeploy.substack.com/p/automated-deployment-and-updates) — auto-detects new versions on launch
@@ -14021,7 +14021,7 @@ Conveyor's delta update system is a genuine differentiator: a single-line change
¹ jDeploy pre-signs and notarizes installers using its own certificate; optional custom signing via GitHub Action ([FAQ](https://www.jdeploy.com/docs/faq/)).
??? info "Sources"
- - **Nucleus**: [`MacOSSigningSettings.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/MacOSSigningSettings.kt), [`WindowsSigningSettings.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/WindowsSigningSettings.kt) — Azure Trusted Signing via `azureTenantId`, `azureEndpoint`, `azureCertificateProfileName`
+ - **Nucleus**: [`MacOSSigningSettings.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/MacOSSigningSettings.kt), [`WindowsSigningSettings.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/WindowsSigningSettings.kt) — Azure Trusted Signing via `azureTenantId`, `azureEndpoint`, `azureCertificateProfileName`
- **Conveyor**: [Keys and certificates](https://conveyor.hydraulic.dev/21.1/configs/keys-and-certificates/) — macOS notarization (App Store Connect API keys), Windows self-signing, Azure Trusted Signing, Azure Key Vault, AWS KMS, SSL.com eSigner, DigiCert ONE, Google Cloud KMS, HSMs (SafeNet, YubiKey)
- **install4j**: [Features](https://www.ej-technologies.com/install4j/features) — cross-platform signing and notarization
- **jpackage**: [Oracle man page](https://docs.oracle.com/en/java/javase/23/docs/specs/man/jpackage.html) — `--mac-sign`, `--mac-signing-key-user-name`, `--mac-app-store`
@@ -14043,7 +14043,7 @@ Conveyor has the broadest signing provider support (6 cloud HSM services). Nucle
| Compose MP | ❌ | ❌ | ❌ | ❌ | ❌ | **1** |
??? info "Sources"
- - **Nucleus**: 6 composite actions in [`.github/actions/`](https://github.com/kdroidFilter/Nucleus/tree/main/.github/actions) — `setup-nucleus` (JBR or GraalVM Liberica NIK + tools), `setup-macos-signing` (keychain + P12), `build-macos-universal` (lipo merge + re-sign), `build-windows-appxbundle` (MakeAppx + SignTool), `generate-update-yml` (SHA-512 metadata), `publish-release` (gh release create). Since v1.3.0, `setup-nucleus` supports a `graalvm` option to install BellSoft Liberica NIK instead of JBR, enabling GraalVM Native Image builds in CI.
+ - **Nucleus**: 6 composite actions in [`.github/actions/`](https://github.com/nucleusframework/Nucleus/tree/main/.github/actions) — `setup-nucleus` (JBR or GraalVM Liberica NIK + tools), `setup-macos-signing` (keychain + P12), `build-macos-universal` (lipo merge + re-sign), `build-windows-appxbundle` (MakeAppx + SignTool), `generate-update-yml` (SHA-512 metadata), `publish-release` (gh release create). Since v1.3.0, `setup-nucleus` supports a `graalvm` option to install BellSoft Liberica NIK instead of JBR, enabling GraalVM Native Image builds in CI.
- **Conveyor**: [CI tutorial](https://conveyor.hydraulic.dev/21.1/tutorial/hare/ci/) — example workflows for GitHub Actions (build, deploy-to-gh, deploy-to-ssh). Conveyor runs on a single machine since it cross-compiles.
- **install4j**: [What's new](https://www.ej-technologies.com/install4j/whatsnew12) — CLI mode for CI, no pre-built actions
- **jDeploy**: [GitHub](https://github.com/shannah/jdeploy) — `jdeploy-action` for automated builds on tag push
@@ -14066,7 +14066,7 @@ Nucleus's CI pipeline is its strongest JVM differentiator. No other JVM tool pro
| jpackage | ❌ | ❌ | ✅ (JDK built-in) | — | **4** |
??? info "Sources"
- - **Nucleus**: Gradle plugin (`io.github.kdroidfilter.nucleus`), no Maven or CLI support
+ - **Nucleus**: Gradle plugin (`dev.nucleusframework.nucleus`), no Maven or CLI support
- **Conveyor**: [Gradle/Maven integration](https://conveyor.hydraulic.dev/21.1/configs/maven-gradle/) — open-source Gradle plugin (Gradle 7+); Maven via `mvn dependency:build-classpath` CLI integration; standalone `conveyor` CLI
- **install4j**: [Features](https://www.ej-technologies.com/install4j/features) — visual IDE + CLI + Gradle + Maven + Ant plugins
- **jDeploy**: [GitHub](https://github.com/shannah/jdeploy) — CLI tool, Maven integration, npm package
@@ -14094,7 +14094,7 @@ Nucleus is Gradle-only, which suits its Compose Desktop audience but limits adop
⁵ badass-jlink exposes no cert DSL, but its task hook (`tasks.named("jlink").doLast { … }`) gives access to the staged runtime image before jpackage consumes it — the cleanest manual workaround available.
??? info "Sources"
- - **Nucleus**: [`AbstractGenerateAotCacheTask.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractGenerateAotCacheTask.kt) — Project Leyden via `-XX:AOTCacheOutput` (JDK 25+); [`ProguardSettings.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/ProguardSettings.kt) — ProGuard 7.7.0 default; [`AbstractJLinkTask.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractJLinkTask.kt) — jlink with strip-debug, compression; [`AbstractPatchCaCertificatesTask.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractPatchCaCertificatesTask.kt) — copies JLink runtime, runs keytool to import PEM/DER certificates into `lib/security/cacerts`; [`graalvm-runtime`](https://github.com/kdroidFilter/Nucleus/tree/main/graalvm-runtime) — GraalVM Native Image bootstrap with `GraalVmInitializer.initialize()`, platform-specific reachability metadata, font substitution, and Skiko native library extraction. Requires BellSoft Liberica NIK 25 (full). Packaging via `packageGraalvmDmg`, `packageGraalvmNsis`, `packageGraalvmDeb` tasks.
+ - **Nucleus**: [`AbstractGenerateAotCacheTask.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractGenerateAotCacheTask.kt) — Project Leyden via `-XX:AOTCacheOutput` (JDK 25+); [`ProguardSettings.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/ProguardSettings.kt) — ProGuard 7.7.0 default; [`AbstractJLinkTask.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractJLinkTask.kt) — jlink with strip-debug, compression; [`AbstractPatchCaCertificatesTask.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractPatchCaCertificatesTask.kt) — copies JLink runtime, runs keytool to import PEM/DER certificates into `lib/security/cacerts`; [`graalvm-runtime`](https://github.com/nucleusframework/Nucleus/tree/main/graalvm-runtime) — GraalVM Native Image bootstrap with `GraalVmInitializer.initialize()`, platform-specific reachability metadata, font substitution, and Skiko native library extraction. Requires BellSoft Liberica NIK 25 (full). Packaging via `packageGraalvmDmg`, `packageGraalvmNsis`, `packageGraalvmDeb` tasks.
- **Conveyor**: [JVM config](https://conveyor.hydraulic.dev/21.1/configs/jvm/) — automatic jlink; `app.jvm.additional-ca-certs` key imports extra certificates into the bundled JDK's `cacerts`; [JDK stdlib](https://conveyor.hydraulic.dev/21.1/stdlib/jdks/) — 6 JDK vendors (Corretto, Zulu, Temurin, JBR, Microsoft, OpenJDK)
- **install4j**: [JRE bundles](https://www.ej-technologies.com/resources/install4j/help/doc/concepts/jreBundles.html), [createbundle CLI](https://www.ej-technologies.com/resources/install4j/help/doc/cli/createBundle.html) — no cert patching DSL; manual via pre-patched JRE bundle
- **jpackage**: [Override resources](https://docs.oracle.com/en/java/javase/23/jpackage/override-jpackage-resources.html) — `--resource-dir` limited to packaging templates; cert patching requires `--runtime-image` with a pre-patched jlink output
@@ -14121,7 +14121,7 @@ Only **Nucleus** and **Conveyor** provide declarative, first-class CA cert patch
- **Conveyor**: [Homepage](https://conveyor.hydraulic.dev/21.1/) — "build packages from any OS, sign and notarize Mac apps from Linux"
- **install4j**: [Homepage](https://www.ej-technologies.com/install4j) — "compile installers for all platforms on any of these platforms"
- **jDeploy**: [FAQ](https://www.jdeploy.com/docs/faq/) — "build native installers for Mac, Windows, and Linux on any platform"
- - **Nucleus**: [`TargetFormat.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/TargetFormat.kt) line 48 — `isCompatibleWithCurrentOS` check; packaging tasks disabled for non-matching OS
+ - **Nucleus**: [`TargetFormat.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/TargetFormat.kt) line 48 — `isCompatibleWithCurrentOS` check; packaging tasks disabled for non-matching OS
This is Nucleus's weakest dimension. However, Nucleus mitigates it with its 6-runner CI matrix — the pipeline handles cross-platform builds automatically.
@@ -14139,7 +14139,7 @@ This is Nucleus's weakest dimension. However, Nucleus mitigates it with its 6-ru
| JavaPackager | ✅ (Inno Setup) | ✅ | ✅ | ❌ | ❌ | **4** |
??? info "Sources"
- - **Nucleus**: [`NsisSettings.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/NsisSettings.kt) — 16 properties: `oneClick`, `allowElevation`, `perMachine`, `allowToChangeInstallationDirectory`, `createDesktopShortcut`, `createStartMenuShortcut`, `runAfterFinish`, `installerIcon`, `license`, `includeScript`, `multiLanguageInstaller`, `installerHeader`, `installerSidebar`, etc. [`DmgSettings.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/DmgSettings.kt) — `background`, `backgroundColor`, `badgeIcon`, `icon`, `format` (6 DMG formats: UDRW, UDRO, UDCO, UDZO, UDBZ, ULFO), `window`, `contents`
+ - **Nucleus**: [`NsisSettings.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/NsisSettings.kt) — 16 properties: `oneClick`, `allowElevation`, `perMachine`, `allowToChangeInstallationDirectory`, `createDesktopShortcut`, `createStartMenuShortcut`, `runAfterFinish`, `installerIcon`, `license`, `includeScript`, `multiLanguageInstaller`, `installerHeader`, `installerSidebar`, etc. [`DmgSettings.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/DmgSettings.kt) — `background`, `backgroundColor`, `badgeIcon`, `icon`, `format` (6 DMG formats: UDRW, UDRO, UDCO, UDZO, UDBZ, ULFO), `window`, `contents`
- **install4j**: [Features](https://www.ej-technologies.com/install4j/features) — visual IDE with 80+ configurable actions
- **Conveyor**: [Package formats](https://conveyor.hydraulic.dev/21.1/package-formats/) — MSIX is a fixed format with no installer UI customization
- **jpackage**: [Oracle man page](https://docs.oracle.com/en/java/javase/23/docs/specs/man/jpackage.html) — `--resource-dir` for template overrides
@@ -14161,7 +14161,7 @@ This is Nucleus's weakest dimension. However, Nucleus mitigates it with its 6-ru
| Compose MP | ❌ | ❌ | ❌ | ❌ | **0** |
??? info "Sources"
- - **Nucleus**: [`TargetFormat.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/TargetFormat.kt) — `isStoreFormat` = Pkg, AppX, Flatpak; [`PlatformSettings.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/PlatformSettings.kt) — `appStore`, `entitlementsFile`, `provisioningProfile` for MAS; [`AppXSettings.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/AppXSettings.kt) — `identityName`, `publisher`, `capabilities`; [`FlatpakSettings.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/FlatpakSettings.kt) — `runtime`, `finishArgs`, `license`
+ - **Nucleus**: [`TargetFormat.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/TargetFormat.kt) — `isStoreFormat` = Pkg, AppX, Flatpak; [`PlatformSettings.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/PlatformSettings.kt) — `appStore`, `entitlementsFile`, `provisioningProfile` for MAS; [`AppXSettings.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/AppXSettings.kt) — `identityName`, `publisher`, `capabilities`; [`FlatpakSettings.kt`](https://github.com/nucleusframework/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/FlatpakSettings.kt) — `runtime`, `finishArgs`, `license`
- **Conveyor**: [Windows config](https://conveyor.hydraulic.dev/21.1/configs/windows/) — Microsoft Store supported via `conveyor make ms-store-release`; [Output formats FAQ](https://conveyor.hydraulic.dev/21.1/faq/output-formats/) — Mac App Store listed as "not supported yet"
- **jpackage**: [Oracle man page](https://docs.oracle.com/en/java/javase/23/docs/specs/man/jpackage.html) — `--mac-app-store` flag exists but limited
@@ -14181,14 +14181,14 @@ For JVM apps, Nucleus is unique in handling the Mac App Store sandbox automatica
| All others | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **0** |
??? info "Sources"
- - **Nucleus dark mode**: [`IsSystemInDarkMode.kt`](https://github.com/kdroidFilter/Nucleus/tree/main/darkmode-detector/src/main/kotlin/io/github/kdroidfilter/nucleus/darkmodedetector/) — JNI (not JNA) with native libraries per platform: macOS via `NSDistributedNotificationCenter`, Windows via registry `AppsUseLightTheme` + `RegNotifyChangeKeyValue`, Linux via D-Bus `org.freedesktop.portal.Settings`. Real-time reactive Compose state.
- - **Nucleus decorated windows**: Split into three modules since v1.3.0 — `decorated-window-core` (shared types/layout), [`decorated-window-jbr`](https://github.com/kdroidFilter/Nucleus/tree/main/decorated-window-jbr) (JBR CustomTitleBar API on macOS/Windows), [`decorated-window-jni`](https://github.com/kdroidFilter/Nucleus/tree/main/decorated-window-jni) (JNI-based, works with any JVM including GraalVM Native Image). Custom undecorated window with GNOME (24px arcs) and KDE (10px) native controls on Linux. Jewel variant in `decorated-window-jewel`, Material 2 in `decorated-window-material2`, Material 3 in `decorated-window-material3`.
- - **Nucleus Linux HiDPI**: [`linux-hidpi`](https://github.com/kdroidFilter/Nucleus/tree/main/linux-hidpi) — native GDK_SCALE detection for proper HiDPI scaling on Linux, required for native image builds.
- - **Nucleus GraalVM runtime**: [`graalvm-runtime`](https://github.com/kdroidFilter/Nucleus/tree/main/graalvm-runtime) — centralizes native-image bootstrap (`GraalVmInitializer.initialize()`), font substitution, Skiko library extraction, and platform-specific reachability metadata.
- - **Nucleus single instance**: [`SingleInstanceManager.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/SingleInstanceManager.kt) — `FileChannel.tryLock()` + `WatchService` for inter-process communication
- - **Nucleus deep links**: [`DeepLinkHandler.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/DeepLinkHandler.kt) — macOS via `Desktop.setOpenURIHandler` (Apple Events); Windows/Linux via CLI argument parsing
- - **Nucleus executable type**: [`ExecutableRuntime.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/core-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/core/runtime/ExecutableRuntime.kt) — 17 `ExecutableType` enum values (EXE, MSI, NSIS, NSIS_WEB, PORTABLE, APPX, DMG, PKG, DEB, RPM, SNAP, FLATPAK, APPIMAGE, ZIP, TAR, SEVEN_Z, DEV)
- - **Nucleus native-ssl**: [`NativeTrustManager.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/NativeTrustManager.kt) — JNI-based `X509TrustManager` merging OS certificates with JVM defaults: macOS via Security.framework (`SecTrustCopyAnchorCertificates` + `SecTrustSettingsCopyCertificates`), Windows via Crypt32 (`ROOT`/`CA` stores across 5 locations including Group Policy), Linux via PEM bundles (8 discovery paths). Companion modules: `native-http-okhttp` (OkHttp 4) and `native-http-ktor` (Ktor engine).
+ - **Nucleus dark mode**: [`IsSystemInDarkMode.kt`](https://github.com/nucleusframework/Nucleus/tree/main/darkmode-detector/src/main/kotlin/dev/nucleusframework/nucleus/darkmodedetector/) — JNI (not JNA) with native libraries per platform: macOS via `NSDistributedNotificationCenter`, Windows via registry `AppsUseLightTheme` + `RegNotifyChangeKeyValue`, Linux via D-Bus `org.freedesktop.portal.Settings`. Real-time reactive Compose state.
+ - **Nucleus decorated windows**: Split into three modules since v1.3.0 — `decorated-window-core` (shared types/layout), [`decorated-window-jbr`](https://github.com/nucleusframework/Nucleus/tree/main/decorated-window-jbr) (JBR CustomTitleBar API on macOS/Windows), [`decorated-window-jni`](https://github.com/nucleusframework/Nucleus/tree/main/decorated-window-jni) (JNI-based, works with any JVM including GraalVM Native Image). Custom undecorated window with GNOME (24px arcs) and KDE (10px) native controls on Linux. Jewel variant in `decorated-window-jewel`, Material 2 in `decorated-window-material2`, Material 3 in `decorated-window-material3`.
+ - **Nucleus Linux HiDPI**: [`linux-hidpi`](https://github.com/nucleusframework/Nucleus/tree/main/linux-hidpi) — native GDK_SCALE detection for proper HiDPI scaling on Linux, required for native image builds.
+ - **Nucleus GraalVM runtime**: [`graalvm-runtime`](https://github.com/nucleusframework/Nucleus/tree/main/graalvm-runtime) — centralizes native-image bootstrap (`GraalVmInitializer.initialize()`), font substitution, Skiko library extraction, and platform-specific reachability metadata.
+ - **Nucleus single instance**: [`SingleInstanceManager.kt`](https://github.com/nucleusframework/Nucleus/blob/main/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/SingleInstanceManager.kt) — `FileChannel.tryLock()` + `WatchService` for inter-process communication
+ - **Nucleus deep links**: [`DeepLinkHandler.kt`](https://github.com/nucleusframework/Nucleus/blob/main/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/DeepLinkHandler.kt) — macOS via `Desktop.setOpenURIHandler` (Apple Events); Windows/Linux via CLI argument parsing
+ - **Nucleus executable type**: [`ExecutableRuntime.kt`](https://github.com/nucleusframework/Nucleus/blob/main/core-runtime/src/main/kotlin/dev/nucleusframework/nucleus/core/runtime/ExecutableRuntime.kt) — 17 `ExecutableType` enum values (EXE, MSI, NSIS, NSIS_WEB, PORTABLE, APPX, DMG, PKG, DEB, RPM, SNAP, FLATPAK, APPIMAGE, ZIP, TAR, SEVEN_Z, DEV)
+ - **Nucleus native-ssl**: [`NativeTrustManager.kt`](https://github.com/nucleusframework/Nucleus/blob/main/native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/NativeTrustManager.kt) — JNI-based `X509TrustManager` merging OS certificates with JVM defaults: macOS via Security.framework (`SecTrustCopyAnchorCertificates` + `SecTrustSettingsCopyCertificates`), Windows via Crypt32 (`ROOT`/`CA` stores across 5 locations including Group Policy), Linux via PEM bundles (8 discovery paths). Companion modules: `native-http-okhttp` (OkHttp 4) and `native-http-ktor` (Ktor engine).
- **Conveyor**: [OS integration](https://conveyor.hydraulic.dev/21.1/configs/os-integration/) — `app.url-schemes` registers URL handlers, `app.file-associations` registers file types at OS level (generates AppxManifest.xml, Info.plist, .desktop files). No runtime library — app code must handle open requests itself.
- **install4j**: [Features](https://www.ej-technologies.com/install4j/features) — single instance lock, file associations
- **jpackage**: [Oracle man page](https://docs.oracle.com/en/java/javase/23/docs/specs/man/jpackage.html) — `--file-associations` flag with properties files
@@ -14210,7 +14210,7 @@ The `native-ssl` module is unique in the JVM packaging space: it replaces the JS
| Compose MP | ✅ | Partial | ❌ | ❌ | ❌ | ✅ | **5** |
??? info "Sources"
- - **Nucleus**: [docs site](https://kdroidfilter.github.io/Nucleus/) — Getting Started, Configuration, per-platform guides, CI/CD, Runtime APIs, Migration, demo app in `example/`
+ - **Nucleus**: [docs site](https://nucleusframework.github.io/Nucleus/) — Getting Started, Configuration, per-platform guides, CI/CD, Runtime APIs, Migration, demo app in `example/`
- **Conveyor**: [docs site](https://conveyor.hydraulic.dev/21.1/) — tutorials, 120+ config keys, CI guide, comparisons page, multiple sample projects
- **install4j**: [help center](https://www.ej-technologies.com/resources/install4j/help/doc/) — extensive searchable docs
- **jpackage**: [Oracle man page](https://docs.oracle.com/en/java/javase/23/docs/specs/man/jpackage.html) — CLI reference only
@@ -14490,7 +14490,7 @@ Nucleus is a drop-in extension of the official JetBrains Compose Desktop plugin.
id("org.jetbrains.kotlin.jvm") version "2.3.10"
id("org.jetbrains.kotlin.plugin.compose") version "2.3.10"
id("org.jetbrains.compose") version "1.10.1"
-+ id("io.github.kdroidfilter.nucleus") version "1.0.0"
++ id("dev.nucleusframework.nucleus") version "1.0.0"
}
```
@@ -14502,7 +14502,7 @@ Replace the JetBrains Compose DSL imports with the Nucleus equivalents:
```diff
-import org.jetbrains.compose.desktop.application.dsl.TargetFormat
-+import io.github.kdroidfilter.nucleus.desktop.application.dsl.TargetFormat
++import dev.nucleusframework.nucleus.desktop.application.dsl.TargetFormat
```
This applies to all DSL types used in your `build.gradle.kts` (e.g. `TargetFormat`, `CompressionLevel`, `SigningAlgorithm`, etc.).
@@ -14608,16 +14608,16 @@ dependencies {
implementation(compose.desktop.currentOs)
// Executable type detection
- implementation("io.github.kdroidfilter:nucleus.core-runtime:1.0.0")
+ implementation("dev.nucleusframework:nucleus.core-runtime:1.0.0")
// AOT cache runtime (if using enableAotCache)
- implementation("io.github.kdroidfilter:nucleus.aot-runtime:1.0.0")
+ implementation("dev.nucleusframework:nucleus.aot-runtime:1.0.0")
// Auto-update (if using publish)
- implementation("io.github.kdroidfilter:nucleus.updater-runtime:1.0.0")
+ implementation("dev.nucleusframework:nucleus.updater-runtime:1.0.0")
// Native taskbar/dock progress bar
- implementation("io.github.kdroidfilter:nucleus.taskbar-progress:1.0.0")
+ implementation("dev.nucleusframework:nucleus.taskbar-progress:1.0.0")
}
```
@@ -14626,7 +14626,7 @@ dependencies {
| Feature | Before (compose) | After (nucleus) |
|---------|-------------------|-----------------|
| DSL entry point | `compose.desktop.application` | `nucleus.application` |
-| DSL imports | `org.jetbrains.compose.desktop.application.dsl.*` | `io.github.kdroidfilter.nucleus.desktop.application.dsl.*` |
+| DSL imports | `org.jetbrains.compose.desktop.application.dsl.*` | `dev.nucleusframework.nucleus.desktop.application.dsl.*` |
| Target formats | DMG, PKG, MSI, EXE, DEB, RPM | + NSIS, AppX, Portable, AppImage, Snap, Flatpak, archives |
| Native lib cleanup | Manual | `cleanupNativeLibs = true` |
| AOT cache | Not available | `enableAotCache = true` |
diff --git a/docs/llms.txt b/docs/llms.txt
index 14d87dd62..2a73319ad 100644
--- a/docs/llms.txt
+++ b/docs/llms.txt
@@ -2,10 +2,10 @@
> Nucleus is the all-in-one toolkit for shipping JVM desktop applications. It combines a Gradle plugin, runtime libraries, and GitHub Actions to handle performance (AOT), distribution (16 packaging formats), native look & feel (decorated windows, dark mode, system colors), and GraalVM Native Image support. Compatible with any JVM application, optimized for Compose Desktop.
-- Docs: https://nucleus.kdroidfilter.com
-- GitHub: https://github.com/kdroidFilter/Nucleus
-- Gradle Plugin Portal: https://plugins.gradle.org/plugin/io.github.kdroidfilter.nucleus
-- Maven Central: https://central.sonatype.com/search?q=io.github.kdroidfilter.nucleus
+- Docs: https://nucleus.nucleusframework.com
+- GitHub: https://github.com/nucleusframework/Nucleus
+- Gradle Plugin Portal: https://plugins.gradle.org/plugin/dev.nucleusframework.nucleus
+- Maven Central: https://central.sonatype.com/search?q=dev.nucleusframework.nucleus
- License: MIT
**Nucleus is the Kotlin framework for native desktop apps.** Combined with Compose Multiplatform, it forms the most complete, most performant, and most deeply integrated desktop application stack ever built — on any language, any runtime, any platform.
@@ -62,7 +62,7 @@ Nucleus meets you where you are:
```kotlin
plugins {
- id("io.github.kdroidfilter.nucleus") version ""
+ id("dev.nucleusframework.nucleus") version ""
}
nucleus.application {
@@ -83,7 +83,7 @@ nucleus.application {
## Try the demo
-A pre-built demo is available on the [GitHub Releases page](https://github.com/kdroidFilter/Nucleus/releases).
+A pre-built demo is available on the [GitHub Releases page](https://github.com/nucleusframework/Nucleus/releases).
### macOS
```bash
@@ -98,7 +98,7 @@ A pre-built demo is available on the [GitHub Releases page](https://github.com/k
Detects your architecture and package manager, downloads and installs the appropriate `.deb` or `.rpm`.
### Windows
- Download the installer from the [releases page](https://github.com/kdroidFilter/Nucleus/releases).
+ Download the installer from the [releases page](https://github.com/nucleusframework/Nucleus/releases).
What you'll see:
@@ -108,7 +108,7 @@ What you'll see:
- **Auto-Update** — Checks for updates on launch, downloads with progress tracking, installs & restarts in one click
**Test auto-update:** Download an **older release**, install it, and launch. It will detect the newer version and offer to update — automatically.
-The demo source code is in the [`example/`](https://github.com/kdroidFilter/Nucleus/tree/main/example) directory.
+The demo source code is in the [`example/`](https://github.com/nucleusframework/Nucleus/tree/main/example) directory.
## Requirements
@@ -120,7 +120,7 @@ The demo source code is in the [`example/`](https://github.com/kdroidFilter/Nucl
## License
-MIT — See [LICENSE](https://github.com/kdroidFilter/Nucleus/blob/main/LICENSE).
+MIT — See [LICENSE](https://github.com/nucleusframework/Nucleus/blob/main/LICENSE).
---
@@ -143,11 +143,11 @@ Add the Nucleus plugin to your `build.gradle.kts`:
```kotlin
plugins {
- id("io.github.kdroidfilter.nucleus") version ""
+ id("dev.nucleusframework.nucleus") version ""
}
```
-The plugin is available on the [Gradle Plugin Portal](https://plugins.gradle.org/plugin/io.github.kdroidfilter.nucleus). No additional repository configuration is needed.
+The plugin is available on the [Gradle Plugin Portal](https://plugins.gradle.org/plugin/dev.nucleusframework.nucleus). No additional repository configuration is needed.
### Runtime Libraries (Optional)
@@ -158,19 +158,19 @@ dependencies {
implementation(compose.desktop.currentOs)
// Executable type detection + single instance + deep links
- implementation("io.github.kdroidfilter:nucleus.core-runtime:")
+ implementation("dev.nucleusframework:nucleus.core-runtime:")
// AOT cache runtime detection (includes core-runtime)
- implementation("io.github.kdroidfilter:nucleus.aot-runtime:")
+ implementation("dev.nucleusframework:nucleus.aot-runtime:")
// Auto-update library (includes core-runtime)
- implementation("io.github.kdroidfilter:nucleus.updater-runtime:")
+ implementation("dev.nucleusframework:nucleus.updater-runtime:")
// Native taskbar/dock progress bar
- implementation("io.github.kdroidfilter:nucleus.taskbar-progress:")
+ implementation("dev.nucleusframework:nucleus.taskbar-progress:")
// Custom decorated window with native title bar
- implementation("io.github.kdroidfilter:nucleus.decorated-window:")
+ implementation("dev.nucleusframework:nucleus.decorated-window:")
}
```
@@ -353,70 +353,70 @@ Nucleus provides runtime libraries for use in your application code. All are pub
| Library | Artifact | Description |
|---------|----------|-------------|
-| Core Runtime | `io.github.kdroidfilter:nucleus.core-runtime` | Executable type detection, single instance, deep links, app metadata (`NucleusApp`) |
-| AOT Runtime | `io.github.kdroidfilter:nucleus.aot-runtime` | AOT cache detection (includes core-runtime via `api`) |
-| Updater Runtime | `io.github.kdroidfilter:nucleus.updater-runtime` | Auto-update library with update level detection and post-update events (includes core-runtime) |
-| Taskbar Progress | `io.github.kdroidfilter:nucleus.taskbar-progress` | Native taskbar/dock progress bar and attention requests (Windows, macOS, Linux) |
-| Notification (macOS) | `io.github.kdroidfilter:nucleus.notification-macos` | macOS UserNotifications API — local notifications, actions, badges via JNI |
-| Notification (Windows) | `io.github.kdroidfilter:nucleus.notification-windows` | Windows Toast Notifications API — rich toasts, buttons, progress bars via JNI (WinRT) |
-| Launcher (Windows) | `io.github.kdroidfilter:nucleus.launcher-windows` | Windows Launcher API — badge notifications, jump lists, overlay icons, and thumbnail toolbar (ITaskbarList3) via JNI |
-| Notification (Linux) | `io.github.kdroidfilter:nucleus.notification-linux` | Freedesktop Desktop Notifications API via JNI (D-Bus) |
-| Launcher (Linux) | `io.github.kdroidfilter:nucleus.launcher-linux` | Unity Launcher API — badge, progress, urgency, quicklist via JNI (D-Bus) |
-| Launcher (macOS) | `io.github.kdroidfilter:nucleus.launcher-macos` | macOS dock context menu — custom items, submenus, click callbacks via JNI |
-| Media Control | `io.github.kdroidfilter:nucleus.media-control` | OS media controls (play/pause, metadata, seek) — MPRIS D-Bus on Linux, MPNowPlayingInfoCenter on macOS, SystemMediaTransportControls on Windows via JNI |
-| Menu (macOS) | `io.github.kdroidfilter:nucleus.menu-macos` | Complete NSMenu mapping — application menu bar, items, badges, delegates, SF Symbols via JNI |
-| SF Symbols | `io.github.kdroidfilter:nucleus.sf-symbols` | Type-safe Apple SF Symbols constants (6 195 symbols, 21 categories) |
-| Freedesktop Icons | `io.github.kdroidfilter:nucleus.freedesktop-icons` | Type-safe freedesktop Icon Naming Specification constants |
-| Decorated Window | `io.github.kdroidfilter:nucleus.decorated-window` | Custom window decorations with native title bar |
-| Decorated Window — Jewel | `io.github.kdroidfilter:nucleus.decorated-window-jewel` | Jewel (IntelliJ theme) color mapping for decorated windows |
-| Decorated Window — Material 2 | `io.github.kdroidfilter:nucleus.decorated-window-material2` | Material 2 color mapping for decorated windows |
-| Decorated Window — Material 3 | `io.github.kdroidfilter:nucleus.decorated-window-material3` | Material 3 color mapping for decorated windows |
-| Dark Mode Detector | `io.github.kdroidfilter:nucleus.darkmode-detector` | Reactive OS dark mode detection via JNI |
-| System Color | `io.github.kdroidfilter:nucleus.system-color` | Reactive system accent color and high contrast detection via JNI |
-| Energy Manager | `io.github.kdroidfilter:nucleus.energy-manager` | Process-level and thread-level energy efficiency mode and screen-awake (caffeine) API for Windows, macOS, and Linux |
-| Native SSL | `io.github.kdroidfilter:nucleus.native-ssl` | OS trust store integration — merges native certs with JVM defaults |
-| Native HTTP | `io.github.kdroidfilter:nucleus.native-http` | `java.net.http.HttpClient` pre-configured with native OS trust |
-| Native HTTP — OkHttp | `io.github.kdroidfilter:nucleus.native-http-okhttp` | OkHttp client pre-configured with native OS trust |
-| Native HTTP — Ktor | `io.github.kdroidfilter:nucleus.native-http-ktor` | Ktor `HttpClient` extension for native OS trust (all engines) |
-| Linux HiDPI | `io.github.kdroidfilter:nucleus.linux-hidpi` | Native HiDPI scale factor detection on Linux |
-| Scheduler | `io.github.kdroidfilter:nucleus.scheduler` | Background task scheduling — periodic, calendar, and on-boot tasks via OS-native schedulers (launchd, systemd, Task Scheduler) |
-| Service Management (macOS) | `io.github.kdroidfilter:nucleus.service-management-macos` | macOS SMAppService binding — login items, launch agents, launch daemons (macOS 13+) |
-| Auto-Launch | `io.github.kdroidfilter:nucleus.autolaunch` | Cross-platform start-at-login — MSIX `StartupTask`, Win32 `HKCU\...\Run`, `SMAppService`, systemd user units, Flatpak portal |
-| GraalVM Runtime | `io.github.kdroidfilter:nucleus.graalvm-runtime` | GraalVM native-image bootstrap + font substitutions (includes linux-hidpi) |
+| Core Runtime | `dev.nucleusframework:nucleus.core-runtime` | Executable type detection, single instance, deep links, app metadata (`NucleusApp`) |
+| AOT Runtime | `dev.nucleusframework:nucleus.aot-runtime` | AOT cache detection (includes core-runtime via `api`) |
+| Updater Runtime | `dev.nucleusframework:nucleus.updater-runtime` | Auto-update library with update level detection and post-update events (includes core-runtime) |
+| Taskbar Progress | `dev.nucleusframework:nucleus.taskbar-progress` | Native taskbar/dock progress bar and attention requests (Windows, macOS, Linux) |
+| Notification (macOS) | `dev.nucleusframework:nucleus.notification-macos` | macOS UserNotifications API — local notifications, actions, badges via JNI |
+| Notification (Windows) | `dev.nucleusframework:nucleus.notification-windows` | Windows Toast Notifications API — rich toasts, buttons, progress bars via JNI (WinRT) |
+| Launcher (Windows) | `dev.nucleusframework:nucleus.launcher-windows` | Windows Launcher API — badge notifications, jump lists, overlay icons, and thumbnail toolbar (ITaskbarList3) via JNI |
+| Notification (Linux) | `dev.nucleusframework:nucleus.notification-linux` | Freedesktop Desktop Notifications API via JNI (D-Bus) |
+| Launcher (Linux) | `dev.nucleusframework:nucleus.launcher-linux` | Unity Launcher API — badge, progress, urgency, quicklist via JNI (D-Bus) |
+| Launcher (macOS) | `dev.nucleusframework:nucleus.launcher-macos` | macOS dock context menu — custom items, submenus, click callbacks via JNI |
+| Media Control | `dev.nucleusframework:nucleus.media-control` | OS media controls (play/pause, metadata, seek) — MPRIS D-Bus on Linux, MPNowPlayingInfoCenter on macOS, SystemMediaTransportControls on Windows via JNI |
+| Menu (macOS) | `dev.nucleusframework:nucleus.menu-macos` | Complete NSMenu mapping — application menu bar, items, badges, delegates, SF Symbols via JNI |
+| SF Symbols | `dev.nucleusframework:nucleus.sf-symbols` | Type-safe Apple SF Symbols constants (6 195 symbols, 21 categories) |
+| Freedesktop Icons | `dev.nucleusframework:nucleus.freedesktop-icons` | Type-safe freedesktop Icon Naming Specification constants |
+| Decorated Window | `dev.nucleusframework:nucleus.decorated-window` | Custom window decorations with native title bar |
+| Decorated Window — Jewel | `dev.nucleusframework:nucleus.decorated-window-jewel` | Jewel (IntelliJ theme) color mapping for decorated windows |
+| Decorated Window — Material 2 | `dev.nucleusframework:nucleus.decorated-window-material2` | Material 2 color mapping for decorated windows |
+| Decorated Window — Material 3 | `dev.nucleusframework:nucleus.decorated-window-material3` | Material 3 color mapping for decorated windows |
+| Dark Mode Detector | `dev.nucleusframework:nucleus.darkmode-detector` | Reactive OS dark mode detection via JNI |
+| System Color | `dev.nucleusframework:nucleus.system-color` | Reactive system accent color and high contrast detection via JNI |
+| Energy Manager | `dev.nucleusframework:nucleus.energy-manager` | Process-level and thread-level energy efficiency mode and screen-awake (caffeine) API for Windows, macOS, and Linux |
+| Native SSL | `dev.nucleusframework:nucleus.native-ssl` | OS trust store integration — merges native certs with JVM defaults |
+| Native HTTP | `dev.nucleusframework:nucleus.native-http` | `java.net.http.HttpClient` pre-configured with native OS trust |
+| Native HTTP — OkHttp | `dev.nucleusframework:nucleus.native-http-okhttp` | OkHttp client pre-configured with native OS trust |
+| Native HTTP — Ktor | `dev.nucleusframework:nucleus.native-http-ktor` | Ktor `HttpClient` extension for native OS trust (all engines) |
+| Linux HiDPI | `dev.nucleusframework:nucleus.linux-hidpi` | Native HiDPI scale factor detection on Linux |
+| Scheduler | `dev.nucleusframework:nucleus.scheduler` | Background task scheduling — periodic, calendar, and on-boot tasks via OS-native schedulers (launchd, systemd, Task Scheduler) |
+| Service Management (macOS) | `dev.nucleusframework:nucleus.service-management-macos` | macOS SMAppService binding — login items, launch agents, launch daemons (macOS 13+) |
+| Auto-Launch | `dev.nucleusframework:nucleus.autolaunch` | Cross-platform start-at-login — MSIX `StartupTask`, Win32 `HKCU\...\Run`, `SMAppService`, systemd user units, Flatpak portal |
+| GraalVM Runtime | `dev.nucleusframework:nucleus.graalvm-runtime` | GraalVM native-image bootstrap + font substitutions (includes linux-hidpi) |
```kotlin
dependencies {
// Pick what you need:
- implementation("io.github.kdroidfilter:nucleus.core-runtime:")
- implementation("io.github.kdroidfilter:nucleus.aot-runtime:")
- implementation("io.github.kdroidfilter:nucleus.updater-runtime:")
- implementation("io.github.kdroidfilter:nucleus.taskbar-progress:")
- implementation("io.github.kdroidfilter:nucleus.notification-macos:")
- implementation("io.github.kdroidfilter:nucleus.notification-windows:")
- implementation("io.github.kdroidfilter:nucleus.launcher-windows:")
- implementation("io.github.kdroidfilter:nucleus.notification-linux:")
- implementation("io.github.kdroidfilter:nucleus.launcher-linux:")
- implementation("io.github.kdroidfilter:nucleus.launcher-macos:")
- implementation("io.github.kdroidfilter:nucleus.media-control:")
- implementation("io.github.kdroidfilter:nucleus.menu-macos:")
- implementation("io.github.kdroidfilter:nucleus.sf-symbols:")
- implementation("io.github.kdroidfilter:nucleus.freedesktop-icons:")
- implementation("io.github.kdroidfilter:nucleus.decorated-window:")
- implementation("io.github.kdroidfilter:nucleus.decorated-window-jewel:")
- implementation("io.github.kdroidfilter:nucleus.decorated-window-material2:")
- implementation("io.github.kdroidfilter:nucleus.decorated-window-material3:")
- implementation("io.github.kdroidfilter:nucleus.darkmode-detector:")
- implementation("io.github.kdroidfilter:nucleus.system-color:")
- implementation("io.github.kdroidfilter:nucleus.energy-manager:")
- implementation("io.github.kdroidfilter:nucleus.native-ssl:")
- implementation("io.github.kdroidfilter:nucleus.native-http:")
- implementation("io.github.kdroidfilter:nucleus.native-http-okhttp: