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/build-natives.yaml b/.github/workflows/build-natives.yaml index 457f9d56d..269eb9650 100644 --- a/.github/workflows/build-natives.yaml +++ b/.github/workflows/build-natives.yaml @@ -313,6 +313,42 @@ jobs: path: media-control/src/main/resources/nucleus/native/win32-*/ retention-days: 1 + - name: Setup Rust + uses: dtolnay/rust-toolchain@stable + with: + targets: x86_64-pc-windows-msvc, aarch64-pc-windows-msvc + + - name: Build decorated-window-tao Windows DLLs + shell: cmd + run: call decorated-window-tao\src\main\native\windows\build.bat + + - name: Verify decorated-window-tao Windows natives + shell: bash + run: | + for f in \ + decorated-window-tao/src/main/resources/nucleus/native/win32-x64/nucleus_tao.dll \ + decorated-window-tao/src/main/resources/nucleus/native/win32-x64/nucleus_tao_windows_deco.dll \ + decorated-window-tao/src/main/resources/nucleus/native/win32-x64/nucleus_tao_gl.dll \ + decorated-window-tao/src/main/resources/nucleus/native/win32-x64/nucleus_tao_a11y.dll \ + decorated-window-tao/src/main/resources/nucleus/native/win32-x64/nucleus_tao_dnd.dll \ + decorated-window-tao/src/main/resources/nucleus/native/win32-x64/nucleus_tao_windows_native_view.dll \ + decorated-window-tao/src/main/resources/nucleus/native/win32-aarch64/nucleus_tao.dll \ + decorated-window-tao/src/main/resources/nucleus/native/win32-aarch64/nucleus_tao_windows_deco.dll \ + decorated-window-tao/src/main/resources/nucleus/native/win32-aarch64/nucleus_tao_gl.dll \ + decorated-window-tao/src/main/resources/nucleus/native/win32-aarch64/nucleus_tao_a11y.dll \ + decorated-window-tao/src/main/resources/nucleus/native/win32-aarch64/nucleus_tao_dnd.dll \ + decorated-window-tao/src/main/resources/nucleus/native/win32-aarch64/nucleus_tao_windows_native_view.dll; do + if [ ! -f "$f" ]; then echo "MISSING: $f" >&2; exit 1; fi + echo "OK: $f ($(wc -c < "$f") bytes)" + done + + - name: Upload decorated-window-tao Windows DLLs + uses: actions/upload-artifact@v4 + with: + name: decorated-window-tao-windows + path: decorated-window-tao/src/main/resources/nucleus/native/win32-*/ + retention-days: 1 + macos: runs-on: macos-latest steps: @@ -629,6 +665,40 @@ jobs: path: media-control/src/main/resources/nucleus/native/darwin-*/ retention-days: 1 + - name: Setup Rust + uses: dtolnay/rust-toolchain@stable + with: + targets: aarch64-apple-darwin, x86_64-apple-darwin + + - name: Build decorated-window-tao macOS dylibs + run: bash decorated-window-tao/src/main/native/macos/build.sh + + - name: Verify decorated-window-tao macOS natives + run: | + for f in \ + decorated-window-tao/src/main/resources/nucleus/native/darwin-aarch64/libnucleus_tao.dylib \ + decorated-window-tao/src/main/resources/nucleus/native/darwin-aarch64/libnucleus_tao_metal.dylib \ + decorated-window-tao/src/main/resources/nucleus/native/darwin-aarch64/libnucleus_tao_dnd.dylib \ + decorated-window-tao/src/main/resources/nucleus/native/darwin-aarch64/libnucleus_tao_macos_deco.dylib \ + decorated-window-tao/src/main/resources/nucleus/native/darwin-aarch64/libnucleus_tao_macos_popup.dylib \ + decorated-window-tao/src/main/resources/nucleus/native/darwin-aarch64/libnucleus_tao_macos_native_view.dylib \ + decorated-window-tao/src/main/resources/nucleus/native/darwin-x64/libnucleus_tao.dylib \ + decorated-window-tao/src/main/resources/nucleus/native/darwin-x64/libnucleus_tao_metal.dylib \ + decorated-window-tao/src/main/resources/nucleus/native/darwin-x64/libnucleus_tao_dnd.dylib \ + decorated-window-tao/src/main/resources/nucleus/native/darwin-x64/libnucleus_tao_macos_deco.dylib \ + decorated-window-tao/src/main/resources/nucleus/native/darwin-x64/libnucleus_tao_macos_popup.dylib \ + decorated-window-tao/src/main/resources/nucleus/native/darwin-x64/libnucleus_tao_macos_native_view.dylib; do + if [ ! -f "$f" ]; then echo "MISSING: $f" >&2; exit 1; fi + echo "OK: $f ($(wc -c < "$f") bytes)" + done + + - name: Upload decorated-window-tao macOS dylibs + uses: actions/upload-artifact@v4 + with: + name: decorated-window-tao-macos + path: decorated-window-tao/src/main/resources/nucleus/native/darwin-*/ + retention-days: 1 + linux: runs-on: ${{ matrix.os }} strategy: @@ -650,7 +720,7 @@ jobs: java-version: '21' - name: Install build dependencies - run: sudo apt-get update && sudo apt-get install -y libdbus-1-dev libx11-dev libglib2.0-dev + run: sudo apt-get update && sudo apt-get install -y libdbus-1-dev libx11-dev libglib2.0-dev libgtk-3-dev - name: Build darkmode-detector Linux native shared library run: bash darkmode-detector/src/main/native/linux/build.sh @@ -859,3 +929,26 @@ jobs: name: media-control-linux-${{ matrix.arch }} path: media-control/src/main/resources/nucleus/native/linux-*/ retention-days: 1 + + - name: Setup Rust + uses: dtolnay/rust-toolchain@stable + with: + targets: ${{ matrix.arch == 'x64' && 'x86_64-unknown-linux-gnu' || 'aarch64-unknown-linux-gnu' }} + + - name: Build decorated-window-tao Linux shared library + run: bash decorated-window-tao/src/main/native/linux/build.sh + + - name: Verify decorated-window-tao Linux native + run: | + for lib in libnucleus_tao.so libnucleus_tao_egl.so libnucleus_tao_linux_widget.so; do + f="decorated-window-tao/src/main/resources/nucleus/native/linux-${{ matrix.arch }}/$lib" + if [ ! -f "$f" ]; then echo "MISSING: $f" >&2; exit 1; fi + echo "OK: $f ($(wc -c < "$f") bytes)" + done + + - name: Upload decorated-window-tao Linux shared library + uses: actions/upload-artifact@v4 + with: + name: decorated-window-tao-linux-${{ matrix.arch }} + path: decorated-window-tao/src/main/resources/nucleus/native/linux-*/ + retention-days: 1 diff --git a/.github/workflows/pre-merge.yaml b/.github/workflows/pre-merge.yaml index 698c99d2b..c36022840 100644 --- a/.github/workflows/pre-merge.yaml +++ b/.github/workflows/pre-merge.yaml @@ -176,6 +176,13 @@ jobs: pattern: 'media-control-*' merge-multiple: true + - name: Download decorated-window-tao artifacts + uses: actions/download-artifact@v4 + with: + path: decorated-window-tao/src/main/resources/nucleus/native/ + pattern: 'decorated-window-tao-*' + merge-multiple: true + - name: Verify all natives present run: | EXPECTED=( @@ -265,6 +272,36 @@ jobs: "media-control/src/main/resources/nucleus/native/darwin-x64/libnucleus_media_control_macos.dylib" "media-control/src/main/resources/nucleus/native/win32-x64/nucleus_media_control_windows.dll" "media-control/src/main/resources/nucleus/native/win32-aarch64/nucleus_media_control_windows.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-x64/nucleus_tao.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-x64/nucleus_tao_windows_deco.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-x64/nucleus_tao_gl.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-x64/nucleus_tao_a11y.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-x64/nucleus_tao_dnd.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-x64/nucleus_tao_windows_native_view.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-aarch64/nucleus_tao.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-aarch64/nucleus_tao_windows_deco.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-aarch64/nucleus_tao_gl.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-aarch64/nucleus_tao_a11y.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-aarch64/nucleus_tao_dnd.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-aarch64/nucleus_tao_windows_native_view.dll" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-aarch64/libnucleus_tao.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-aarch64/libnucleus_tao_metal.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-aarch64/libnucleus_tao_dnd.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-aarch64/libnucleus_tao_macos_deco.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-aarch64/libnucleus_tao_macos_popup.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-aarch64/libnucleus_tao_macos_native_view.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-x64/libnucleus_tao.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-x64/libnucleus_tao_metal.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-x64/libnucleus_tao_dnd.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-x64/libnucleus_tao_macos_deco.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-x64/libnucleus_tao_macos_popup.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-x64/libnucleus_tao_macos_native_view.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/linux-x64/libnucleus_tao.so" + "decorated-window-tao/src/main/resources/nucleus/native/linux-x64/libnucleus_tao_egl.so" + "decorated-window-tao/src/main/resources/nucleus/native/linux-x64/libnucleus_tao_linux_widget.so" + "decorated-window-tao/src/main/resources/nucleus/native/linux-aarch64/libnucleus_tao.so" + "decorated-window-tao/src/main/resources/nucleus/native/linux-aarch64/libnucleus_tao_egl.so" + "decorated-window-tao/src/main/resources/nucleus/native/linux-aarch64/libnucleus_tao_linux_widget.so" ) MISSING=0 for f in "${EXPECTED[@]}"; do diff --git a/.github/workflows/publish-maven.yaml b/.github/workflows/publish-maven.yaml index 92d540a4e..c885151b3 100644 --- a/.github/workflows/publish-maven.yaml +++ b/.github/workflows/publish-maven.yaml @@ -171,6 +171,13 @@ jobs: pattern: 'media-control-*' merge-multiple: true + - name: Download decorated-window-tao artifacts + uses: actions/download-artifact@v4 + with: + path: decorated-window-tao/src/main/resources/nucleus/native/ + pattern: 'decorated-window-tao-*' + merge-multiple: true + - name: Verify all natives present run: | EXPECTED=( @@ -260,6 +267,36 @@ jobs: "media-control/src/main/resources/nucleus/native/darwin-x64/libnucleus_media_control_macos.dylib" "media-control/src/main/resources/nucleus/native/win32-x64/nucleus_media_control_windows.dll" "media-control/src/main/resources/nucleus/native/win32-aarch64/nucleus_media_control_windows.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-x64/nucleus_tao.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-x64/nucleus_tao_windows_deco.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-x64/nucleus_tao_gl.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-x64/nucleus_tao_a11y.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-x64/nucleus_tao_dnd.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-x64/nucleus_tao_windows_native_view.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-aarch64/nucleus_tao.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-aarch64/nucleus_tao_windows_deco.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-aarch64/nucleus_tao_gl.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-aarch64/nucleus_tao_a11y.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-aarch64/nucleus_tao_dnd.dll" + "decorated-window-tao/src/main/resources/nucleus/native/win32-aarch64/nucleus_tao_windows_native_view.dll" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-aarch64/libnucleus_tao.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-aarch64/libnucleus_tao_metal.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-aarch64/libnucleus_tao_dnd.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-aarch64/libnucleus_tao_macos_deco.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-aarch64/libnucleus_tao_macos_popup.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-aarch64/libnucleus_tao_macos_native_view.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-x64/libnucleus_tao.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-x64/libnucleus_tao_metal.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-x64/libnucleus_tao_dnd.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-x64/libnucleus_tao_macos_deco.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-x64/libnucleus_tao_macos_popup.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/darwin-x64/libnucleus_tao_macos_native_view.dylib" + "decorated-window-tao/src/main/resources/nucleus/native/linux-x64/libnucleus_tao.so" + "decorated-window-tao/src/main/resources/nucleus/native/linux-x64/libnucleus_tao_egl.so" + "decorated-window-tao/src/main/resources/nucleus/native/linux-x64/libnucleus_tao_linux_widget.so" + "decorated-window-tao/src/main/resources/nucleus/native/linux-aarch64/libnucleus_tao.so" + "decorated-window-tao/src/main/resources/nucleus/native/linux-aarch64/libnucleus_tao_egl.so" + "decorated-window-tao/src/main/resources/nucleus/native/linux-aarch64/libnucleus_tao_linux_widget.so" ) MISSING=0 for f in "${EXPECTED[@]}"; do diff --git a/.github/workflows/publish-plugin.yaml b/.github/workflows/publish-plugin.yaml index c7dfcd442..cc0476829 100644 --- a/.github/workflows/publish-plugin.yaml +++ b/.github/workflows/publish-plugin.yaml @@ -177,6 +177,13 @@ jobs: pattern: 'media-control-*' merge-multiple: true + - name: Download decorated-window-tao artifacts + uses: actions/download-artifact@v4 + with: + path: decorated-window-tao/src/main/resources/nucleus/native/ + pattern: 'decorated-window-tao-*' + merge-multiple: true + - name: Cache Gradle Caches uses: gradle/actions/setup-gradle@v5 diff --git a/.github/workflows/release-graalvm.yaml b/.github/workflows/release-graalvm.yaml index 59d34a39c..fea6324b5 100644 --- a/.github/workflows/release-graalvm.yaml +++ b/.github/workflows/release-graalvm.yaml @@ -202,6 +202,13 @@ jobs: pattern: 'media-control-*' merge-multiple: true + - name: Download decorated-window-tao artifacts + uses: actions/download-artifact@v4 + with: + path: decorated-window-tao/src/main/resources/nucleus/native/ + pattern: 'decorated-window-tao-*' + merge-multiple: true + - name: Setup Nucleus (GraalVM) uses: ./.github/actions/setup-nucleus with: diff --git a/.github/workflows/test-graalvm.yaml b/.github/workflows/test-graalvm.yaml index 961a5be8e..8bbc9787a 100644 --- a/.github/workflows/test-graalvm.yaml +++ b/.github/workflows/test-graalvm.yaml @@ -187,6 +187,13 @@ jobs: pattern: 'media-control-*' merge-multiple: true + - name: Download decorated-window-tao artifacts + uses: actions/download-artifact@v4 + with: + path: decorated-window-tao/src/main/resources/nucleus/native/ + pattern: 'decorated-window-tao-*' + merge-multiple: true + - name: Setup Nucleus (GraalVM) uses: ./.github/actions/setup-nucleus with: diff --git a/.github/workflows/test-packaging.yaml b/.github/workflows/test-packaging.yaml index bd373530e..af894e0e9 100644 --- a/.github/workflows/test-packaging.yaml +++ b/.github/workflows/test-packaging.yaml @@ -214,6 +214,13 @@ jobs: pattern: 'media-control-*' merge-multiple: true + - name: Download decorated-window-tao artifacts + uses: actions/download-artifact@v4 + with: + path: decorated-window-tao/src/main/resources/nucleus/native/ + pattern: 'decorated-window-tao-*' + merge-multiple: true + - name: Build packages shell: bash run: ./gradlew :example:packageReleaseDistributionForCurrentOS --stacktrace --no-daemon 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..2c97c7436 100644 --- a/README.md +++ b/README.md @@ -4,8 +4,8 @@ # Nucleus -[![Gradle Plugin Portal](https://img.shields.io/gradle-plugin-portal/v/io.github.kdroidfilter.nucleus?label=Gradle%20Plugin%20Portal)](https://plugins.gradle.org/plugin/io.github.kdroidfilter.nucleus) -[![Maven Central](https://img.shields.io/maven-central/v/io.github.kdroidfilter/nucleus.core-runtime?label=Maven%20Central)](https://central.sonatype.com/search?q=io.github.kdroidfilter.nucleus) +[![Gradle Plugin Portal](https://img.shields.io/gradle-plugin-portal/v/dev.nucleusframework.nucleus?label=Gradle%20Plugin%20Portal)](https://plugins.gradle.org/plugin/dev.nucleusframework.nucleus) +[![Maven Central](https://img.shields.io/maven-central/v/dev.nucleusframework/nucleus.core-runtime?label=Maven%20Central)](https://central.sonatype.com/search?q=dev.nucleusframework.nucleus) [![Pre Merge Checks](https://github.com/kdroidFilter/Nucleus/actions/workflows/pre-merge.yaml/badge.svg)](https://github.com/kdroidFilter/Nucleus/actions/workflows/pre-merge.yaml) [![License: MIT](https://img.shields.io/github/license/kdroidFilter/Nucleus)](https://github.com/kdroidFilter/Nucleus/blob/main/LICENSE) ![Kotlin](https://img.shields.io/badge/Kotlin-2.0%2B-7F52FF?logo=kotlin&logoColor=white) @@ -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..a41165ddc 100644 --- a/aot-runtime/build.gradle.kts +++ b/aot-runtime/build.gradle.kts @@ -30,7 +30,7 @@ kotlin { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.aot-runtime", publishVersion) + coordinates("dev.nucleusframework", "nucleus.aot-runtime", publishVersion) pom { name.set("Nucleus AOT Runtime") @@ -46,7 +46,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/aot-runtime/config/ktlint/baseline.xml b/aot-runtime/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/aot-runtime/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + 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..ee199f9b1 100644 --- a/autolaunch/build.gradle.kts +++ b/autolaunch/build.gradle.kts @@ -75,7 +75,7 @@ tasks.configureEach { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.autolaunch", publishVersion) + coordinates("dev.nucleusframework", "nucleus.autolaunch", publishVersion) pom { name.set("Nucleus Autolaunch") @@ -91,7 +91,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/autolaunch/config/ktlint/baseline.xml b/autolaunch/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/autolaunch/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + 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/build.gradle.kts b/build.gradle.kts index bd481892b..18c565bca 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -98,6 +98,7 @@ tasks.register("preMerge") { dependsOn(":decorated-window-core:check") dependsOn(":decorated-window-jbr:check") dependsOn(":decorated-window-jni:check") + dependsOn(":decorated-window-tao:check") dependsOn(":decorated-window-jewel:check") dependsOn(":decorated-window-material2:check") dependsOn(":decorated-window-material3:check") @@ -116,6 +117,24 @@ tasks.register("preMerge") { dependsOn(gradle.includedBuild("plugin-build").task(":plugin:validatePlugins")) } +tasks.register("cleanAllNative", Delete::class.java) { + description = "Deletes all generated native files" + group = "build" + + subprojects { + delete(layout.projectDirectory.dir("src/main/resources/nucleus/native")) + delete(layout.projectDirectory.dir("src/main/native/target")) + delete( + fileTree(layout.projectDirectory.dir("src/main/native")) { + include("**/*.obj", "**/*.exp", "**/*.lib", "**/*.pdb") + }, + ) + } + delete(rootProject.layout.projectDirectory.dir("sample-tao/src/main/native/windows/packages")) + delete(rootProject.layout.projectDirectory.file("sample-tao/src/main/native/windows/nuget.exe")) + delete(rootProject.layout.projectDirectory.file("sample-tao/src/main/native/windows/build_log.txt")) +} + tasks.wrapper { distributionType = Wrapper.DistributionType.ALL } 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/config/ktlint/baseline.xml b/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/core-runtime/build.gradle.kts b/core-runtime/build.gradle.kts index f1ec123bf..46090234f 100644 --- a/core-runtime/build.gradle.kts +++ b/core-runtime/build.gradle.kts @@ -29,7 +29,7 @@ kotlin { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.core-runtime", publishVersion) + coordinates("dev.nucleusframework", "nucleus.core-runtime", publishVersion) pom { name.set("Nucleus Core Runtime") @@ -45,7 +45,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/core-runtime/config/ktlint/baseline.xml b/core-runtime/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/core-runtime/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/core-runtime/detekt-baseline.xml b/core-runtime/detekt-baseline.xml new file mode 100644 index 000000000..14b92d2b5 --- /dev/null +++ b/core-runtime/detekt-baseline.xml @@ -0,0 +1,8 @@ + + + + + LoopWithTooManyJumpStatements:NativeLibraryLoader.kt:NativeLibraryLoader$for + TooGenericExceptionCaught:NativeLibraryLoader.kt:NativeLibraryLoader$e: Exception + + 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..58557efd8 100644 --- a/darkmode-detector/build.gradle.kts +++ b/darkmode-detector/build.gradle.kts @@ -103,7 +103,7 @@ 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") @@ -119,7 +119,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/darkmode-detector/config/ktlint/baseline.xml b/darkmode-detector/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/darkmode-detector/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + 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..ddbd17ddc 100644 --- a/decorated-window-awt/build.gradle.kts +++ b/decorated-window-awt/build.gradle.kts @@ -32,7 +32,7 @@ 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") @@ -50,7 +50,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/decorated-window-awt/config/ktlint/baseline.xml b/decorated-window-awt/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/decorated-window-awt/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/decorated-window-awt/detekt-baseline.xml b/decorated-window-awt/detekt-baseline.xml new file mode 100644 index 000000000..bba9eb206 --- /dev/null +++ b/decorated-window-awt/detekt-baseline.xml @@ -0,0 +1,7 @@ + + + + + MatchingDeclarationName:AwtDecoratedWindow.kt:AwtDecoratedWindowScope : DecoratedWindowScopeFrameWindowScope + + 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..2ad8170e7 100644 --- a/decorated-window-core/build.gradle.kts +++ b/decorated-window-core/build.gradle.kts @@ -85,7 +85,7 @@ 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") @@ -101,7 +101,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/decorated-window-core/config/ktlint/baseline.xml b/decorated-window-core/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/decorated-window-core/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + 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..48ba5e049 100644 --- a/decorated-window-jbr/build.gradle.kts +++ b/decorated-window-jbr/build.gradle.kts @@ -58,7 +58,7 @@ 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") @@ -74,7 +74,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/decorated-window-jbr/config/ktlint/baseline.xml b/decorated-window-jbr/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/decorated-window-jbr/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + 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..e4335b4a7 100644 --- a/decorated-window-jewel/build.gradle.kts +++ b/decorated-window-jewel/build.gradle.kts @@ -38,7 +38,7 @@ 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") @@ -54,7 +54,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/decorated-window-jewel/config/ktlint/baseline.xml b/decorated-window-jewel/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/decorated-window-jewel/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + 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..87a5d5302 100644 --- a/decorated-window-jni/build.gradle.kts +++ b/decorated-window-jni/build.gradle.kts @@ -83,7 +83,7 @@ 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") @@ -99,7 +99,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/decorated-window-jni/config/ktlint/baseline.xml b/decorated-window-jni/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/decorated-window-jni/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + 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..b79fb6b9f 100644 --- a/decorated-window-material2/build.gradle.kts +++ b/decorated-window-material2/build.gradle.kts @@ -37,7 +37,7 @@ 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") @@ -53,7 +53,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/decorated-window-material2/config/ktlint/baseline.xml b/decorated-window-material2/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/decorated-window-material2/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + 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..58a8f1cf1 100644 --- a/decorated-window-material3/build.gradle.kts +++ b/decorated-window-material3/build.gradle.kts @@ -38,7 +38,7 @@ 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") @@ -54,7 +54,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/decorated-window-material3/config/ktlint/baseline.xml b/decorated-window-material3/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/decorated-window-material3/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + 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..15dac1dc7 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") @@ -116,7 +116,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/decorated-window-tao/config/ktlint/baseline.xml b/decorated-window-tao/config/ktlint/baseline.xml new file mode 100644 index 000000000..f6670aae7 --- /dev/null +++ b/decorated-window-tao/config/ktlint/baseline.xml @@ -0,0 +1,786 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/decorated-window-tao/detekt-baseline.xml b/decorated-window-tao/detekt-baseline.xml new file mode 100644 index 000000000..04d26ca3c --- /dev/null +++ b/decorated-window-tao/detekt-baseline.xml @@ -0,0 +1,84 @@ + + + + + ComplexCondition:NativeViewOverlayController.kt:NativeViewOverlayController$previous != null && previous[0] == xPx && previous[1] == yPx && previous[2] == widthPx && previous[3] == heightPx + ComplexCondition:NativeViewOverlayController.windows.kt:NativeViewOverlayControllerWindows$previous != null && previous[0] == xPx && previous[1] == yPx && previous[2] == widthPx && previous[3] == heightPx + CyclomaticComplexMethod:DecoratedWindow.kt:@Suppress("LongParameterList", "FunctionNaming") internal fun ApplicationScope.openDecoratedWindow: TaoWindow + CyclomaticComplexMethod:DecoratedWindowComposable.kt:@Suppress("LongParameterList", "FunctionNaming", "LongMethod") @Composable fun ApplicationScope.DecoratedWindow + CyclomaticComplexMethod:TaoSemanticsObserver.kt:TaoSemanticsObserver$private fun describe: Triple<TaoA11yRole, Int, Int> + CyclomaticComplexMethod:TaoSemanticsObserver.kt:TaoSemanticsObserver$private fun walk + ForbiddenComment:TaoComposeSceneHost.kt:TaoComposeSceneHost$// TODO: hover effects on macOS don't render until the user clicks once + ForbiddenComment:TaoPopupSceneLayerWindows.kt:TaoPopupSceneLayerWindows$/* TODO: full-window scrim surface */ + LargeClass:TaoComposeSceneHostLinux.kt:TaoComposeSceneHostLinux + LongMethod:DecoratedWindow.kt:@Suppress("FunctionNaming", "LongParameterList") private fun ApplicationScope.openDecoratedWindowLinux: TaoWindow + LongMethod:DecoratedWindow.kt:@Suppress("LongParameterList", "FunctionNaming") internal fun ApplicationScope.openDecoratedWindow: TaoWindow + LongMethod:TaoSemanticsObserver.kt:TaoSemanticsObserver$private fun describe: Triple<TaoA11yRole, Int, Int> + LongMethod:TaoSemanticsObserver.kt:TaoSemanticsObserver$private fun walk + LoopWithTooManyJumpStatements:WindowControlsLinux.kt:for + MagicNumber:DecoratedDialog.kt:1000.0 + MagicNumber:DecoratedDialog.kt:3 + MagicNumber:DecoratedWindow.kt:28f + MagicNumber:DecoratedWindow.kt:32f + MagicNumber:DecoratedWindowComposable.kt:1000 + MagicNumber:DecoratedWindowComposable.kt:1000.0 + MagicNumber:DecoratedWindowComposable.kt:1000f + MagicNumber:DecoratedWindowComposable.kt:3 + MagicNumber:NativeView.kt:3 + MagicNumber:NativeViewOverlayController.kt:NativeViewOverlayController$3 + MagicNumber:NativeViewOverlayController.kt:NativeViewOverlayController$4 + MagicNumber:NativeViewOverlayController.windows.kt:NativeViewOverlayControllerWindows$3 + MagicNumber:NativeViewOverlayController.windows.kt:NativeViewOverlayControllerWindows$4 + MagicNumber:PainterToRgba.kt:255 + MagicNumber:PainterToRgba.kt:255f + MagicNumber:PainterToRgba.kt:4 + MagicNumber:TaoAccessibility.kt:TaoA11ySnapshotSerializer$0x80 + MagicNumber:TaoAccessibility.kt:TaoA11ySnapshotSerializer$0xC0 + MagicNumber:TaoAccessibility.kt:TaoA11ySnapshotSerializer$24 + MagicNumber:TaoAccessibility.kt:TaoA11ySnapshotSerializer$4 + MagicNumber:TaoAccessibility.kt:TaoA11ySnapshotSerializer$76 + MagicNumber:TaoAccessibility.kt:TaoA11ySnapshotSerializer$8 + MagicNumber:TaoAccessibility.kt:TaoAccessibilityController$8 + MagicNumber:TaoComposeSceneHost.kt:TaoComposeSceneHost$1000f + MagicNumber:TaoComposeSceneHost.kt:TaoComposeSceneHost$1024f + MagicNumber:TaoComposeSceneHostLinux.kt:TaoComposeSceneHostLinux$1000f + MagicNumber:TaoComposeSceneHostLinux.kt:TaoComposeSceneHostLinux$1024 + MagicNumber:TaoComposeSceneHostLinux.kt:TaoComposeSceneHostLinux$1024f + MagicNumber:TaoComposeSceneHostLinux.kt:TaoComposeSceneHostLinux$12 + MagicNumber:TaoComposeSceneHostLinux.kt:TaoComposeSceneHostLinux$3 + MagicNumber:TaoComposeSceneHostLinux.kt:TaoComposeSceneHostLinux$5 + MagicNumber:TaoComposeSceneHostLinux.kt:TaoComposeSceneHostLinux.SwapThread$1_000_000 + MagicNumber:TaoComposeSceneHostLinux.kt:TaoComposeSceneHostLinux.SwapThread$50 + MagicNumber:TaoComposeSceneHostWindows.kt:TaoComposeSceneHostWindows$1000f + MagicNumber:TaoComposeSceneHostWindows.kt:TaoComposeSceneHostWindows$1024f + MagicNumber:TaoComposeSceneHostWindows.kt:TaoComposeSceneHostWindows$28 + MagicNumber:TaoLinuxOverlayController.kt:TaoLinuxOverlayControllerImpl.InputCallback$3 + MagicNumber:TaoMainDispatcher.kt:TaoMainDispatcher$1_000_000_000L + MagicNumber:TaoMainDispatcher.kt:TaoMainDispatcher$60 + MagicNumber:TaoSemanticsObserver.kt:TaoSemanticsObserver$0.1f + MagicNumber:TaoSemanticsObserver.kt:TaoSemanticsObserver$0.9f + MagicNumber:TaoSemanticsObserver.kt:TaoSemanticsObserver$0xFFFFFFFFL + MagicNumber:TaoSemanticsObserver.kt:TaoSemanticsObserver$4 + MagicNumber:TaoSemanticsObserver.kt:TaoSemanticsObserver$64 + MagicNumber:TaoSyntheticKey.kt:0x20 + MagicNumber:TaoSyntheticKey.kt:0x7F + MagicNumber:TaoWindow.kt:TaoWindow$1000f + MatchingDeclarationName:NativeViewOverlayController.windows.kt:NativeViewOverlayControllerWindows + MatchingDeclarationName:PopupNativeBridge.windows.kt:PopupNativeBridgeWindows + MayBeConstant:TaoMainDispatcher.kt:TaoMainDispatcher$/** * Re-arm throttle. When a pumped block re-dispatches itself synchronously * (very common with Compose's state-observer / snapshot-apply machinery — * `LazyColumn` + scrollbar can cycle through ~150 k pumps/sec at idle), * the pump→drain→re-arm→nativeWake→pump loop pegs the Tao main thread * at 100 % CPU. AWT-based backends don't see this because the EDT only * processes pending work at ~60 Hz; we mimic that here by deferring the * re-arm `nativeWake` through a small delay rather than calling it * synchronously inside [pump]. New external dispatches still wake the * loop immediately — the delay only applies when the queue is non-empty * *after* a drain (i.e. blocks added by the just-run blocks). */ private val pumpReArmIntervalNs = 1_000_000_000L / 60 + NestedBlockDepth:TaoComposeSceneHostLinux.kt:TaoComposeSceneHostLinux.SwapThread$override fun run + PrintStackTrace:TaoComposeSceneHostLinux.kt:TaoComposeSceneHostLinux.SwapThread$t + PrintStackTrace:TaoMainDispatcher.kt:TaoMainDispatcher$t + ReturnCount:DecoratedWindowComposable.kt:private fun applyAlignedPosition: Boolean + TooGenericExceptionCaught:TaoComposeSceneHostLinux.kt:TaoComposeSceneHostLinux.SwapThread$t: Throwable + TooGenericExceptionCaught:TaoMainDispatcher.kt:TaoMainDispatcher$t: Throwable + TooManyFunctions:NativeTaoBridge.kt:NativeTaoBridge + TooManyFunctions:NativeViewOverlayController.windows.kt:NativeViewOverlayControllerWindows$<no name provided> : TaoPopupHostWindows + TooManyFunctions:PopupNativeBridge.kt:PopupNativeBridge + TooManyFunctions:TaoPopupHostWindows.kt:TaoPopupHostWindows + TooManyFunctions:TaoWindow.kt:TaoWindow + UnusedParameter:DecoratedWindow.kt:windowHandle: Long + UnusedParameter:TaoLinuxOverlayController.kt:TaoLinuxOverlayControllerImpl$button: Int + UnusedParameter:WindowControlsLinux.kt:isCloseButton: Boolean = false + + 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/build.bat b/decorated-window-tao/src/main/native/windows/build.bat index 2862d15b2..1e43a58ea 100644 --- a/decorated-window-tao/src/main/native/windows/build.bat +++ b/decorated-window-tao/src/main/native/windows/build.bat @@ -144,7 +144,7 @@ cl /LD /O1 /GS- /nologo ^ "%A11Y_SRC%" ^ /Fe:"%OUT_DIR_X64%\nucleus_tao_a11y.dll" ^ /link /NODEFAULTLIB /ENTRY:DllMain ^ - kernel32.lib user32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib uiautomationcore.lib + kernel32.lib user32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib uiautomationcore.lib libvcruntime.lib if errorlevel 1 ( echo ERROR: x64 a11y compilation failed >&2 exit /b 1 @@ -190,33 +190,33 @@ if errorlevel 1 ( goto :clear_cache ) -cl /LD /O1 /GS- /nologo ^ +cl /LD /O2 /Oi /GS- /nologo ^ /I"%JNI_INCLUDE%" /I"%JNI_INCLUDE_WIN32%" ^ "%DECO_SRC%" ^ /Fe:"%OUT_DIR_ARM64%\nucleus_tao_windows_deco.dll" ^ - /link /NODEFAULTLIB /ENTRY:DllMain kernel32.lib user32.lib dwmapi.lib gdi32.lib shell32.lib + /link libcmt.lib kernel32.lib user32.lib dwmapi.lib gdi32.lib shell32.lib if errorlevel 1 ( echo WARNING: ARM64 deco compilation failed >&2 endlocal goto :clear_cache ) -cl /LD /O1 /GS- /nologo ^ +cl /LD /O2 /Oi /GS- /nologo ^ /I"%JNI_INCLUDE%" /I"%JNI_INCLUDE_WIN32%" ^ "%GL_SRC%" ^ /Fe:"%OUT_DIR_ARM64%\nucleus_tao_gl.dll" ^ - /link /NODEFAULTLIB /ENTRY:DllMain opengl32.lib gdi32.lib user32.lib kernel32.lib + /link libcmt.lib opengl32.lib gdi32.lib user32.lib kernel32.lib if errorlevel 1 ( echo WARNING: ARM64 GL compilation failed >&2 endlocal goto :clear_cache ) -cl /LD /O1 /GS- /nologo ^ +cl /LD /O2 /Oi /GS- /nologo ^ /I"%JNI_INCLUDE%" /I"%JNI_INCLUDE_WIN32%" ^ "%A11Y_SRC%" ^ /Fe:"%OUT_DIR_ARM64%\nucleus_tao_a11y.dll" ^ - /link /NODEFAULTLIB /ENTRY:DllMain ^ + /link libcmt.lib ^ kernel32.lib user32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib uiautomationcore.lib if errorlevel 1 ( echo WARNING: ARM64 a11y compilation failed >&2 @@ -224,11 +224,11 @@ if errorlevel 1 ( goto :clear_cache ) -cl /LD /O1 /GS- /nologo ^ +cl /LD /O2 /Oi /GS- /nologo ^ /I"%JNI_INCLUDE%" /I"%JNI_INCLUDE_WIN32%" ^ "%DND_SRC%" ^ /Fe:"%OUT_DIR_ARM64%\nucleus_tao_dnd.dll" ^ - /link /NODEFAULTLIB /ENTRY:DllMain ^ + /link libcmt.lib ^ kernel32.lib user32.lib ole32.lib oleaut32.lib uuid.lib shell32.lib if errorlevel 1 ( echo WARNING: ARM64 dnd compilation failed >&2 @@ -236,11 +236,11 @@ if errorlevel 1 ( goto :clear_cache ) -cl /LD /O1 /GS- /nologo ^ +cl /LD /O2 /Oi /GS- /nologo ^ /I"%JNI_INCLUDE%" /I"%JNI_INCLUDE_WIN32%" ^ "%NV_SRC%" "%OVERLAY_SRC%" "%OVERLAY_GL_SRC%" "%POPUP_SRC%" ^ /Fe:"%OUT_DIR_ARM64%\nucleus_tao_windows_native_view.dll" ^ - /link /NODEFAULTLIB /ENTRY:DllMain ^ + /link libcmt.lib ^ kernel32.lib user32.lib gdi32.lib dwmapi.lib opengl32.lib if errorlevel 1 ( echo WARNING: ARM64 native_view compilation failed >&2 diff --git a/decorated-window-tao/src/main/native/windows/nucleus_tao_a11y.c b/decorated-window-tao/src/main/native/windows/nucleus_tao_a11y.c index ab4a2e759..e63873ffb 100644 --- a/decorated-window-tao/src/main/native/windows/nucleus_tao_a11y.c +++ b/decorated-window-tao/src/main/native/windows/nucleus_tao_a11y.c @@ -57,7 +57,9 @@ #include #include -/* /NODEFAULTLIB support — supplied by sibling DLL but we statically need them */ +#ifndef _M_ARM64 +/* /NODEFAULTLIB support — supplied by sibling DLL but we statically need them. + * Only needed for x64 where we avoid the CRT dependency. */ int _fltused = 0; #pragma function(memset) @@ -75,6 +77,7 @@ void *memcpy(void *dest, const void *src, size_t count) { return dest; } +#pragma function(memcmp) int memcmp(const void *a, const void *b, size_t count) { const unsigned char *p = (const unsigned char *)a; const unsigned char *q = (const unsigned char *)b; @@ -84,6 +87,7 @@ int memcmp(const void *a, const void *b, size_t count) { } return 0; } +#endif /* The Windows SDK declares these as `const long` in C++-only blocks, which * makes them unusable in C `case` labels. Redefine the subset we need as 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..4f4f9369e 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 @@ -26,6 +26,7 @@ #include #include +#ifndef _M_ARM64 /* /NODEFAULTLIB support */ int _fltused = 0; @@ -53,6 +54,7 @@ int memcmp(const void *a, const void *b, size_t count) { } return 0; } +#endif /* DllMain stub for /NODEFAULTLIB linking. */ BOOL WINAPI DllMain(HINSTANCE h, DWORD r, LPVOID v) { (void)h; (void)r; (void)v; return TRUE; } @@ -363,7 +365,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 +415,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 +713,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..7fdea70d8 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 @@ -17,6 +17,7 @@ #include #include +#ifndef _M_ARM64 /* /NODEFAULTLIB shim shared across all .c files linked into this DLL. */ int _fltused = 0; @@ -34,6 +35,7 @@ void *memcpy(void *dest, const void *src, size_t count) { while (count--) *d++ = *s++; return dest; } +#endif BOOL WINAPI DllMain(HINSTANCE hinst, DWORD reason, LPVOID reserved) { (void)hinst; (void)reason; (void)reserved; @@ -45,7 +47,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 +91,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 +105,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 +118,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 +130,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..38f257fb5 100644 --- a/docs/auto-update.md +++ b/docs/auto-update.md @@ -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..9ee3be800 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -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/comparison/packaging.md b/docs/comparison/packaging.md index a7eb24d47..7b1a8d761 100644 --- a/docs/comparison/packaging.md +++ b/docs/comparison/packaging.md @@ -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/kdroidFilter/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/kdroidFilter/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,8 +159,8 @@ 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 Artifact 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 Artifact Signing, Azure Key Vault, AWS KMS, SSL.com eSigner, DigiCert ONE, Google Cloud KMS, HSMs (SafeNet, YubiKey) + - **Nucleus**: [`MacOSSigningSettings.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/MacOSSigningSettings.kt), [`WindowsSigningSettings.kt`](https://github.com/kdroidFilter/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` - **Compose MP**: [Native distributions](https://kotlinlang.org/docs/multiplatform/compose-native-distribution.html) — macOS signing and notarization DSL @@ -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/kdroidFilter/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/kdroidFilter/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/kdroidFilter/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/kdroidFilter/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/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. - **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/kdroidFilter/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/kdroidFilter/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/kdroidFilter/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/kdroidFilter/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/kdroidFilter/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/kdroidFilter/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/kdroidFilter/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 dark mode**: [`IsSystemInDarkMode.kt`](https://github.com/kdroidFilter/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/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 single instance**: [`SingleInstanceManager.kt`](https://github.com/kdroidFilter/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/kdroidFilter/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/kdroidFilter/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/kdroidFilter/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 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/index.md b/docs/index.md index dae1709ef..636dd6d13 100644 --- a/docs/index.md +++ b/docs/index.md @@ -4,8 +4,8 @@ Nucleus

-[![Gradle Plugin Portal](https://img.shields.io/gradle-plugin-portal/v/io.github.kdroidfilter.nucleus?label=Gradle%20Plugin%20Portal)](https://plugins.gradle.org/plugin/io.github.kdroidfilter.nucleus) -[![Maven Central](https://img.shields.io/maven-central/v/io.github.kdroidfilter/nucleus.core-runtime?label=Maven%20Central)](https://central.sonatype.com/search?q=io.github.kdroidfilter.nucleus) +[![Gradle Plugin Portal](https://img.shields.io/gradle-plugin-portal/v/dev.nucleusframework.nucleus?label=Gradle%20Plugin%20Portal)](https://plugins.gradle.org/plugin/dev.nucleusframework.nucleus) +[![Maven Central](https://img.shields.io/maven-central/v/dev.nucleusframework/nucleus.core-runtime?label=Maven%20Central)](https://central.sonatype.com/search?q=dev.nucleusframework.nucleus) [![Pre Merge Checks](https://github.com/kdroidFilter/Nucleus/actions/workflows/pre-merge.yaml/badge.svg)](https://github.com/kdroidFilter/Nucleus/actions/workflows/pre-merge.yaml) [![License: MIT](https://img.shields.io/github/license/kdroidFilter/Nucleus)](https://github.com/kdroidFilter/Nucleus/blob/main/LICENSE) ![Kotlin](https://img.shields.io/badge/Kotlin-2.0%2B-7F52FF?logo=kotlin&logoColor=white) @@ -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 { diff --git a/docs/llms-full.txt b/docs/llms-full.txt index f26ddc130..bc8a47c7d 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 +- Docs: https://nucleus.nucleusframework.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 +- 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 { @@ -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:") } ``` @@ -2418,16 +2418,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") @@ -2478,7 +2478,7 @@ NucleusUpdater { #### GitHub Releases ```kotlin -import io.github.kdroidfilter.nucleus.updater.provider.GitHubProvider +import dev.nucleusframework.nucleus.updater.provider.GitHubProvider provider = GitHubProvider( owner = "myorg", @@ -2490,7 +2490,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" @@ -2656,17 +2656,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") @@ -2679,7 +2679,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 @@ -3148,14 +3148,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 @@ -3254,8 +3254,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 ``` --- @@ -3500,14 +3500,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() @@ -3836,7 +3836,7 @@ plugins { kotlin("multiplatform") id("org.jetbrains.compose") id("org.jetbrains.kotlin.plugin.compose") - id("io.github.kdroidfilter.nucleus") + id("dev.nucleusframework.nucleus") } kotlin { @@ -4694,70 +4694,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:") } ``` @@ -4789,36 +4789,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 ; } ``` @@ -4837,14 +4837,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 @@ -4949,13 +4949,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 @@ -5036,12 +5036,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. @@ -5130,12 +5130,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). @@ -5311,10 +5311,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:") } ``` @@ -5323,9 +5323,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 } ``` @@ -5835,22 +5835,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 @@ -5939,12 +5939,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 } ``` @@ -6142,7 +6142,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 @@ -6271,13 +6271,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:") } ``` @@ -6598,7 +6598,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` } ``` @@ -6750,7 +6750,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` } ``` @@ -6895,7 +6895,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` } ``` @@ -7068,7 +7068,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: [**kdroidFilter/ComposeNativeTray**](https://github.com/kdroidFilter/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. @@ -7123,7 +7123,7 @@ Change `isDarkMode` and the icon switches, the checkmark toggles, the label upda ```kotlin dependencies { - implementation("io.github.kdroidfilter:composenativetray:") + implementation("dev.nucleusframework:composenativetray:") } ``` @@ -7540,7 +7540,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:") } ``` @@ -7549,7 +7549,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( @@ -7567,7 +7567,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", @@ -7803,7 +7803,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:") } ``` @@ -7812,7 +7812,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( @@ -8296,7 +8296,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*(...); } @@ -8304,7 +8304,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. --- @@ -8317,7 +8317,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:") } ``` @@ -8326,7 +8326,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() @@ -8636,7 +8636,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*(...); } @@ -8644,7 +8644,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. --- @@ -8657,7 +8657,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:") } ``` @@ -8666,7 +8666,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( @@ -8864,7 +8864,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 @@ -9097,7 +9097,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*(...); } @@ -9110,7 +9110,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"] }, @@ -9131,7 +9131,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:") } ``` @@ -9140,7 +9140,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 -> @@ -9229,7 +9229,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 -> @@ -9285,7 +9285,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*(...); } @@ -9298,7 +9298,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"] } ] @@ -9316,7 +9316,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:") } ``` @@ -9345,8 +9345,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) { @@ -9408,9 +9408,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( @@ -9450,10 +9450,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( @@ -9531,11 +9531,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( @@ -9782,7 +9782,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:") } ``` @@ -9793,7 +9793,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") @@ -9821,8 +9821,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") @@ -10005,7 +10005,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*(...); } @@ -10018,7 +10018,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"] } ] @@ -10042,7 +10042,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:") } ``` @@ -10051,7 +10051,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 @@ -10307,15 +10307,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*(...); } @@ -10337,7 +10337,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:") } ``` @@ -10388,23 +10388,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 @@ -10416,7 +10416,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 ``` @@ -10431,7 +10431,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:") } ``` @@ -10490,7 +10490,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") } ``` @@ -10566,7 +10566,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(); @@ -10574,20 +10574,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 @@ -10595,7 +10595,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 ``` @@ -10610,14 +10610,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() @@ -11016,7 +11016,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.** { *; } ``` --- @@ -11041,7 +11041,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:") } ``` @@ -11064,7 +11064,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 @@ -11300,7 +11300,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.** { *; } ``` --- @@ -11319,7 +11319,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:") } ``` @@ -11328,7 +11328,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) { @@ -11374,7 +11374,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 ; } ``` @@ -11389,7 +11389,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:") } ``` @@ -11398,7 +11398,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% @@ -11526,15 +11526,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() @@ -11725,7 +11725,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 @@ -11737,13 +11737,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:** @@ -11752,7 +11752,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 ``` @@ -11777,9 +11777,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 { *; } ``` --- @@ -11792,17 +11792,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() { @@ -11934,7 +11934,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)) { } @@ -12105,7 +12105,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() { @@ -12252,7 +12252,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*(...); } @@ -12263,7 +12263,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"] }, @@ -12286,7 +12286,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:") } ``` @@ -12294,7 +12294,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 @@ -12344,8 +12344,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( @@ -12361,8 +12361,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), @@ -12395,7 +12395,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:") } ``` @@ -12950,7 +12950,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) @@ -12968,7 +12968,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. @@ -12981,7 +12981,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:") } ``` @@ -13179,7 +13179,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:") } ``` @@ -13455,7 +13455,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.** { *; } ``` --- @@ -13481,14 +13481,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 @@ -13563,7 +13563,7 @@ nucleus.application { windows { appx { applicationId = "NucleusDemo" - publisherDisplayName = "KDroidFilter" + publisherDisplayName = "NucleusFramework" displayName = "Nucleus Demo" // 1. Inject into Package.appxmanifest @@ -13644,7 +13644,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) @@ -13704,7 +13704,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:") } ``` @@ -13713,7 +13713,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 @@ -13780,11 +13780,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 ; } ``` @@ -13794,7 +13794,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 ``` @@ -13809,9 +13809,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. @@ -13823,14 +13823,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() @@ -13854,7 +13854,7 @@ val client = HttpClient.newBuilder() ```kotlin dependencies { - implementation("io.github.kdroidfilter:nucleus.native-http-okhttp:") + implementation("dev.nucleusframework:nucleus.native-http-okhttp:") } ``` @@ -13863,7 +13863,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() @@ -13885,7 +13885,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 @@ -13897,7 +13897,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 @@ -14030,7 +14030,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/kdroidFilter/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 @@ -14054,7 +14054,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/kdroidFilter/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 @@ -14078,8 +14078,8 @@ 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 Artifact 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 Artifact Signing, Azure Key Vault, AWS KMS, SSL.com eSigner, DigiCert ONE, Google Cloud KMS, HSMs (SafeNet, YubiKey) + - **Nucleus**: [`MacOSSigningSettings.kt`](https://github.com/kdroidFilter/Nucleus/blob/main/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/MacOSSigningSettings.kt), [`WindowsSigningSettings.kt`](https://github.com/kdroidFilter/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` - **Compose MP**: [Native distributions](https://kotlinlang.org/docs/multiplatform/compose-native-distribution.html) — macOS signing and notarization DSL @@ -14123,7 +14123,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 @@ -14151,7 +14151,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/kdroidFilter/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/kdroidFilter/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/kdroidFilter/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/kdroidFilter/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/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. - **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 @@ -14178,7 +14178,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/kdroidFilter/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. @@ -14196,7 +14196,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/kdroidFilter/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/kdroidFilter/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 @@ -14218,7 +14218,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/kdroidFilter/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/kdroidFilter/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/kdroidFilter/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/kdroidFilter/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 @@ -14238,14 +14238,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 dark mode**: [`IsSystemInDarkMode.kt`](https://github.com/kdroidFilter/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/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 single instance**: [`SingleInstanceManager.kt`](https://github.com/kdroidFilter/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/kdroidFilter/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/kdroidFilter/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/kdroidFilter/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 @@ -14547,7 +14547,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" } ``` @@ -14559,7 +14559,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.). @@ -14665,16 +14665,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") } ``` @@ -14683,7 +14683,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` | @@ -14696,7 +14696,7 @@ dependencies { | Flatpak config | Not available | Full `flatpak { }` DSL | | Store pipeline | Not available | Automatic dual pipeline for store formats (PKG, AppX, Flatpak) with sandboxing for PKG and Flatpak | | Auto-update | Not available | Built-in with YML metadata | -| Code signing | macOS only | + Windows PFX / Azure Artifact Signing | +| Code signing | macOS only | + Windows PFX / Azure Trusted Signing | | DMG appearance | Not customizable (jpackage defaults) | Full `dmg { }` DSL: background, icon size, window layout, content positioning, format ([details](targets/macos.md#dmg-customization)) | | Artifact naming | Fixed | Template with `artifactName` | diff --git a/docs/llms.txt b/docs/llms.txt index 2d27704d5..9b5ea50fa 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 +- Docs: https://nucleus.nucleusframework.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 +- 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 { @@ -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:") - 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:") } ``` @@ -448,36 +448,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 ; } ``` @@ -497,7 +497,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" } ``` @@ -509,7 +509,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.). @@ -615,16 +615,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") } ``` @@ -633,7 +633,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` | @@ -646,7 +646,7 @@ dependencies { | Flatpak config | Not available | Full `flatpak { }` DSL | | Store pipeline | Not available | Automatic dual pipeline for store formats (PKG, AppX, Flatpak) with sandboxing for PKG and Flatpak | | Auto-update | Not available | Built-in with YML metadata | -| Code signing | macOS only | + Windows PFX / Azure Artifact Signing | +| Code signing | macOS only | + Windows PFX / Azure Trusted Signing | | DMG appearance | Not customizable (jpackage defaults) | Full `dmg { }` DSL: background, icon size, window layout, content positioning, format ([details](targets/macos.md#dmg-customization)) | | Artifact naming | Fixed | Template with `artifactName` | @@ -687,71 +687,71 @@ Everything from the official plugin works unchanged: ## Documentation -- [Getting Started](https://nucleus.kdroidfilter.com/getting-started/) -- [Configuration](https://nucleus.kdroidfilter.com/configuration/) -- [macOS Targets](https://nucleus.kdroidfilter.com/targets/macos/) -- [Windows Targets](https://nucleus.kdroidfilter.com/targets/windows/) -- [Linux Targets](https://nucleus.kdroidfilter.com/targets/linux/) -- [Sandboxing](https://nucleus.kdroidfilter.com/sandboxing/) -- [Code Signing](https://nucleus.kdroidfilter.com/code-signing/) -- [Auto Update](https://nucleus.kdroidfilter.com/auto-update/) -- [Publishing](https://nucleus.kdroidfilter.com/publishing/) -- [Trusted CA Certificates](https://nucleus.kdroidfilter.com/trusted-certificates/) -- [AOT Cache](https://nucleus.kdroidfilter.com/runtime/aot-cache/) -- [GraalVM Native Image](https://nucleus.kdroidfilter.com/graalvm/index/) -- [Configuration](https://nucleus.kdroidfilter.com/graalvm/configuration/) -- [Automatic Metadata Resolution](https://nucleus.kdroidfilter.com/graalvm/automatic-metadata/) -- [Runtime Bootstrap](https://nucleus.kdroidfilter.com/graalvm/runtime-bootstrap/) -- [Tasks & CI/CD](https://nucleus.kdroidfilter.com/graalvm/tasks-ci/) -- [Nucleus Native Access](https://nucleus.kdroidfilter.com/native-access/index/) -- [Supported Types](https://nucleus.kdroidfilter.com/native-access/types/) -- [Usage & Patterns](https://nucleus.kdroidfilter.com/native-access/usage/) -- [CI/CD](https://nucleus.kdroidfilter.com/ci-cd/) -- [Runtime APIs](https://nucleus.kdroidfilter.com/runtime/index/) -- [App Metadata (`NucleusApp`)](https://nucleus.kdroidfilter.com/runtime/app-metadata/) -- [Executable Type Detection](https://nucleus.kdroidfilter.com/runtime/executable-type/) -- [Single Instance](https://nucleus.kdroidfilter.com/runtime/single-instance/) -- [Deep Links](https://nucleus.kdroidfilter.com/runtime/deep-links/) -- [Decorated Window](https://nucleus.kdroidfilter.com/runtime/decorated-window/) -- [Nucleus Application](https://nucleus.kdroidfilter.com/runtime/nucleus-application/) -- [Decorated Window — Tao backend](https://nucleus.kdroidfilter.com/runtime/decorated-window-tao/) -- [Decorated Window — Jewel](https://nucleus.kdroidfilter.com/runtime/decorated-window-jewel/) -- [Decorated Window — Material 2](https://nucleus.kdroidfilter.com/runtime/decorated-window-material2/) -- [Decorated Window — Material 3](https://nucleus.kdroidfilter.com/runtime/decorated-window-material3/) -- [System Tray](https://nucleus.kdroidfilter.com/runtime/system-tray/index/) -- [Tray API](https://nucleus.kdroidfilter.com/runtime/system-tray/tray-api/) -- [Menu DSL](https://nucleus.kdroidfilter.com/runtime/system-tray/menu-dsl/) -- [TrayApp](https://nucleus.kdroidfilter.com/runtime/system-tray/tray-app/) -- [Utilities](https://nucleus.kdroidfilter.com/runtime/system-tray/utilities/) -- [Notification (Common)](https://nucleus.kdroidfilter.com/runtime/notification-common/) -- [Notification (macOS)](https://nucleus.kdroidfilter.com/runtime/notification-macos/) -- [Notification (Windows)](https://nucleus.kdroidfilter.com/runtime/notification-windows/) -- [Notification (Linux)](https://nucleus.kdroidfilter.com/runtime/notification-linux/) -- [Launcher (macOS)](https://nucleus.kdroidfilter.com/runtime/launcher-macos/) -- [Launcher (Windows)](https://nucleus.kdroidfilter.com/runtime/launcher-windows/) -- [Launcher (Linux)](https://nucleus.kdroidfilter.com/runtime/launcher-linux/) -- [Media Control](https://nucleus.kdroidfilter.com/runtime/media-control/) -- [Dark Mode Detector](https://nucleus.kdroidfilter.com/runtime/darkmode-detector/) -- [System Color](https://nucleus.kdroidfilter.com/runtime/system-color/) -- [System Info](https://nucleus.kdroidfilter.com/runtime/system-info/) -- [Energy Manager](https://nucleus.kdroidfilter.com/runtime/energy-manager/) -- [Linux HiDPI](https://nucleus.kdroidfilter.com/runtime/linux-hidpi/) -- [Taskbar Progress](https://nucleus.kdroidfilter.com/runtime/taskbar-progress/) -- [Global Hotkey](https://nucleus.kdroidfilter.com/runtime/global-hotkey/) -- [Menu (macOS)](https://nucleus.kdroidfilter.com/runtime/menu-macos/) -- [Freedesktop Icons](https://nucleus.kdroidfilter.com/runtime/freedesktop-icons/) -- [Scheduler](https://nucleus.kdroidfilter.com/runtime/scheduler/) -- [Service Management (macOS)](https://nucleus.kdroidfilter.com/runtime/service-management-macos/) -- [Auto-Launch](https://nucleus.kdroidfilter.com/runtime/autolaunch/) -- [Native SSL](https://nucleus.kdroidfilter.com/runtime/native-ssl/) -- [Native HTTP](https://nucleus.kdroidfilter.com/runtime/native-http/) -- [Packaging](https://nucleus.kdroidfilter.com/comparison/packaging/) -- [File Dialog](https://nucleus.kdroidfilter.com/ecosystem/file-dialog/) -- [Spell Check](https://nucleus.kdroidfilter.com/ecosystem/spell-check/) -- [Migration from org.jetbrains.compose](https://nucleus.kdroidfilter.com/migration/) -- [Roadmap](https://nucleus.kdroidfilter.com/roadmap/) +- [Getting Started](https://nucleus.nucleusframework.com/getting-started/) +- [Configuration](https://nucleus.nucleusframework.com/configuration/) +- [macOS Targets](https://nucleus.nucleusframework.com/targets/macos/) +- [Windows Targets](https://nucleus.nucleusframework.com/targets/windows/) +- [Linux Targets](https://nucleus.nucleusframework.com/targets/linux/) +- [Sandboxing](https://nucleus.nucleusframework.com/sandboxing/) +- [Code Signing](https://nucleus.nucleusframework.com/code-signing/) +- [Auto Update](https://nucleus.nucleusframework.com/auto-update/) +- [Publishing](https://nucleus.nucleusframework.com/publishing/) +- [Trusted CA Certificates](https://nucleus.nucleusframework.com/trusted-certificates/) +- [AOT Cache](https://nucleus.nucleusframework.com/runtime/aot-cache/) +- [GraalVM Native Image](https://nucleus.nucleusframework.com/graalvm/index/) +- [Configuration](https://nucleus.nucleusframework.com/graalvm/configuration/) +- [Automatic Metadata Resolution](https://nucleus.nucleusframework.com/graalvm/automatic-metadata/) +- [Runtime Bootstrap](https://nucleus.nucleusframework.com/graalvm/runtime-bootstrap/) +- [Tasks & CI/CD](https://nucleus.nucleusframework.com/graalvm/tasks-ci/) +- [Nucleus Native Access](https://nucleus.nucleusframework.com/native-access/index/) +- [Supported Types](https://nucleus.nucleusframework.com/native-access/types/) +- [Usage & Patterns](https://nucleus.nucleusframework.com/native-access/usage/) +- [CI/CD](https://nucleus.nucleusframework.com/ci-cd/) +- [Runtime APIs](https://nucleus.nucleusframework.com/runtime/index/) +- [App Metadata (`NucleusApp`)](https://nucleus.nucleusframework.com/runtime/app-metadata/) +- [Executable Type Detection](https://nucleus.nucleusframework.com/runtime/executable-type/) +- [Single Instance](https://nucleus.nucleusframework.com/runtime/single-instance/) +- [Deep Links](https://nucleus.nucleusframework.com/runtime/deep-links/) +- [Decorated Window](https://nucleus.nucleusframework.com/runtime/decorated-window/) +- [Nucleus Application](https://nucleus.nucleusframework.com/runtime/nucleus-application/) +- [Decorated Window — Tao backend](https://nucleus.nucleusframework.com/runtime/decorated-window-tao/) +- [Decorated Window — Jewel](https://nucleus.nucleusframework.com/runtime/decorated-window-jewel/) +- [Decorated Window — Material 2](https://nucleus.nucleusframework.com/runtime/decorated-window-material2/) +- [Decorated Window — Material 3](https://nucleus.nucleusframework.com/runtime/decorated-window-material3/) +- [System Tray](https://nucleus.nucleusframework.com/runtime/system-tray/index/) +- [Tray API](https://nucleus.nucleusframework.com/runtime/system-tray/tray-api/) +- [Menu DSL](https://nucleus.nucleusframework.com/runtime/system-tray/menu-dsl/) +- [TrayApp](https://nucleus.nucleusframework.com/runtime/system-tray/tray-app/) +- [Utilities](https://nucleus.nucleusframework.com/runtime/system-tray/utilities/) +- [Notification (Common)](https://nucleus.nucleusframework.com/runtime/notification-common/) +- [Notification (macOS)](https://nucleus.nucleusframework.com/runtime/notification-macos/) +- [Notification (Windows)](https://nucleus.nucleusframework.com/runtime/notification-windows/) +- [Notification (Linux)](https://nucleus.nucleusframework.com/runtime/notification-linux/) +- [Launcher (macOS)](https://nucleus.nucleusframework.com/runtime/launcher-macos/) +- [Launcher (Windows)](https://nucleus.nucleusframework.com/runtime/launcher-windows/) +- [Launcher (Linux)](https://nucleus.nucleusframework.com/runtime/launcher-linux/) +- [Media Control](https://nucleus.nucleusframework.com/runtime/media-control/) +- [Dark Mode Detector](https://nucleus.nucleusframework.com/runtime/darkmode-detector/) +- [System Color](https://nucleus.nucleusframework.com/runtime/system-color/) +- [System Info](https://nucleus.nucleusframework.com/runtime/system-info/) +- [Energy Manager](https://nucleus.nucleusframework.com/runtime/energy-manager/) +- [Linux HiDPI](https://nucleus.nucleusframework.com/runtime/linux-hidpi/) +- [Taskbar Progress](https://nucleus.nucleusframework.com/runtime/taskbar-progress/) +- [Global Hotkey](https://nucleus.nucleusframework.com/runtime/global-hotkey/) +- [Menu (macOS)](https://nucleus.nucleusframework.com/runtime/menu-macos/) +- [Freedesktop Icons](https://nucleus.nucleusframework.com/runtime/freedesktop-icons/) +- [Scheduler](https://nucleus.nucleusframework.com/runtime/scheduler/) +- [Service Management (macOS)](https://nucleus.nucleusframework.com/runtime/service-management-macos/) +- [Auto-Launch](https://nucleus.nucleusframework.com/runtime/autolaunch/) +- [Native SSL](https://nucleus.nucleusframework.com/runtime/native-ssl/) +- [Native HTTP](https://nucleus.nucleusframework.com/runtime/native-http/) +- [Packaging](https://nucleus.nucleusframework.com/comparison/packaging/) +- [File Dialog](https://nucleus.nucleusframework.com/ecosystem/file-dialog/) +- [Spell Check](https://nucleus.nucleusframework.com/ecosystem/spell-check/) +- [Migration from org.jetbrains.compose](https://nucleus.nucleusframework.com/migration/) +- [Roadmap](https://nucleus.nucleusframework.com/roadmap/) ## Full LLM Documentation -- [llms-full.txt](https://nucleus.kdroidfilter.com/llms-full.txt): Complete documentation in a single file +- [llms-full.txt](https://nucleus.nucleusframework.com/llms-full.txt): Complete documentation in a single file diff --git a/docs/migration.md b/docs/migration.md index 0010bfe66..92daed78f 100644 --- a/docs/migration.md +++ b/docs/migration.md @@ -9,7 +9,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" } ``` @@ -21,7 +21,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.). @@ -129,16 +129,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") } ``` @@ -147,7 +147,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` | @@ -160,7 +160,7 @@ dependencies { | Flatpak config | Not available | Full `flatpak { }` DSL | | Store pipeline | Not available | Automatic dual pipeline for store formats (PKG, AppX, Flatpak) with sandboxing for PKG and Flatpak | | Auto-update | Not available | Built-in with YML metadata | -| Code signing | macOS only | + Windows PFX / Azure Artifact Signing | +| Code signing | macOS only | + Windows PFX / Azure Trusted Signing | | DMG appearance | Not customizable (jpackage defaults) | Full `dmg { }` DSL: background, icon size, window layout, content positioning, format ([details](targets/macos.md#dmg-customization)) | | Artifact naming | Fixed | Template with `artifactName` | diff --git a/docs/native-access/index.md b/docs/native-access/index.md index bbb807281..67ccf0a98 100644 --- a/docs/native-access/index.md +++ b/docs/native-access/index.md @@ -99,7 +99,7 @@ plugins { kotlin("multiplatform") id("org.jetbrains.compose") id("org.jetbrains.kotlin.plugin.compose") - id("io.github.kdroidfilter.nucleus") + id("dev.nucleusframework.nucleus") } kotlin { diff --git a/docs/nucleus-application-plan.md b/docs/nucleus-application-plan.md index 7a8a668be..b31ff24fa 100644 --- a/docs/nucleus-application-plan.md +++ b/docs/nucleus-application-plan.md @@ -97,7 +97,7 @@ internal class AwtNucleusApplicationScope( } internal class TaoNucleusApplicationScope( - val taoScope: io.github.kdroidfilter.nucleus.window.tao.ApplicationScope, + val taoScope: dev.nucleusframework.nucleus.window.tao.ApplicationScope, ) : NucleusApplicationScope { override fun exitApplication() = taoScope.exitApplication() } diff --git a/docs/runtime/aot-cache.md b/docs/runtime/aot-cache.md index 1b4475164..eb40a6df1 100644 --- a/docs/runtime/aot-cache.md +++ b/docs/runtime/aot-cache.md @@ -43,14 +43,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 @@ -149,6 +149,6 @@ 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 ``` diff --git a/docs/runtime/app-metadata.md b/docs/runtime/app-metadata.md index f81b584e2..1820d8d67 100644 --- a/docs/runtime/app-metadata.md +++ b/docs/runtime/app-metadata.md @@ -8,14 +8,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 diff --git a/docs/runtime/autolaunch.md b/docs/runtime/autolaunch.md index e1b19f45e..e786e499b 100644 --- a/docs/runtime/autolaunch.md +++ b/docs/runtime/autolaunch.md @@ -19,14 +19,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 @@ -101,7 +101,7 @@ nucleus.application { windows { appx { applicationId = "NucleusDemo" - publisherDisplayName = "KDroidFilter" + publisherDisplayName = "NucleusFramework" displayName = "Nucleus Demo" // 1. Inject into Package.appxmanifest @@ -188,7 +188,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) diff --git a/docs/runtime/darkmode-detector.md b/docs/runtime/darkmode-detector.md index 9fbe5901f..4560977cb 100644 --- a/docs/runtime/darkmode-detector.md +++ b/docs/runtime/darkmode-detector.md @@ -8,7 +8,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:") } ``` @@ -59,23 +59,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 @@ -87,7 +87,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 ``` diff --git a/docs/runtime/decorated-window-jewel.md b/docs/runtime/decorated-window-jewel.md index 6ff6c6bf8..e92b486a5 100644 --- a/docs/runtime/decorated-window-jewel.md +++ b/docs/runtime/decorated-window-jewel.md @@ -6,7 +6,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` } ``` diff --git a/docs/runtime/decorated-window-material2.md b/docs/runtime/decorated-window-material2.md index 2a6d43dfb..45771f822 100644 --- a/docs/runtime/decorated-window-material2.md +++ b/docs/runtime/decorated-window-material2.md @@ -6,7 +6,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` } ``` diff --git a/docs/runtime/decorated-window-material3.md b/docs/runtime/decorated-window-material3.md index 5169cf474..f41fa51bf 100644 --- a/docs/runtime/decorated-window-material3.md +++ b/docs/runtime/decorated-window-material3.md @@ -6,7 +6,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` } ``` diff --git a/docs/runtime/decorated-window-tao.md b/docs/runtime/decorated-window-tao.md index 667182fcb..e7ace7ebe 100644 --- a/docs/runtime/decorated-window-tao.md +++ b/docs/runtime/decorated-window-tao.md @@ -22,13 +22,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:") } ``` diff --git a/docs/runtime/decorated-window.md b/docs/runtime/decorated-window.md index ecec1a501..370941d3d 100644 --- a/docs/runtime/decorated-window.md +++ b/docs/runtime/decorated-window.md @@ -90,10 +90,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:") } ``` @@ -102,9 +102,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 } ``` @@ -634,22 +634,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 diff --git a/docs/runtime/deep-links.md b/docs/runtime/deep-links.md index 3ad3b5b33..1bcc6c457 100644 --- a/docs/runtime/deep-links.md +++ b/docs/runtime/deep-links.md @@ -6,12 +6,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). diff --git a/docs/runtime/energy-manager.md b/docs/runtime/energy-manager.md index c86574c70..aa1bcc786 100644 --- a/docs/runtime/energy-manager.md +++ b/docs/runtime/energy-manager.md @@ -18,7 +18,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:") } ``` @@ -41,7 +41,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 @@ -277,5 +277,5 @@ 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.** { *; } ``` diff --git a/docs/runtime/executable-type.md b/docs/runtime/executable-type.md index 096b33189..8f59b83b7 100644 --- a/docs/runtime/executable-type.md +++ b/docs/runtime/executable-type.md @@ -6,13 +6,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 diff --git a/docs/runtime/freedesktop-icons.md b/docs/runtime/freedesktop-icons.md index e7429cd23..96edf437a 100644 --- a/docs/runtime/freedesktop-icons.md +++ b/docs/runtime/freedesktop-icons.md @@ -6,7 +6,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:") } ``` @@ -16,7 +16,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 @@ -68,8 +68,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( @@ -85,8 +85,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), diff --git a/docs/runtime/global-hotkey.md b/docs/runtime/global-hotkey.md index f2a75b51c..0dbe7e09b 100644 --- a/docs/runtime/global-hotkey.md +++ b/docs/runtime/global-hotkey.md @@ -6,15 +6,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() @@ -211,7 +211,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 @@ -223,14 +223,14 @@ 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 } } ``` !!! warning "`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:** @@ -240,7 +240,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 ``` @@ -265,7 +265,7 @@ 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 { *; } ``` diff --git a/docs/runtime/index.md b/docs/runtime/index.md index 16c60af6e..0c6ea8bb8 100644 --- a/docs/runtime/index.md +++ b/docs/runtime/index.md @@ -6,70 +6,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:") } ``` @@ -101,36 +101,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 ; } ``` diff --git a/docs/runtime/launcher-linux.md b/docs/runtime/launcher-linux.md index 14ef41c63..984613f9f 100644 --- a/docs/runtime/launcher-linux.md +++ b/docs/runtime/launcher-linux.md @@ -9,7 +9,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:") } ``` @@ -20,7 +20,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") @@ -48,8 +48,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") @@ -238,7 +238,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*(...); } @@ -251,7 +251,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"] } ] diff --git a/docs/runtime/launcher-macos.md b/docs/runtime/launcher-macos.md index 08e6d681f..1e7905318 100644 --- a/docs/runtime/launcher-macos.md +++ b/docs/runtime/launcher-macos.md @@ -9,7 +9,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:") } ``` @@ -18,7 +18,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 -> @@ -111,7 +111,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 -> @@ -167,7 +167,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*(...); } @@ -180,7 +180,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"] } ] diff --git a/docs/runtime/launcher-windows.md b/docs/runtime/launcher-windows.md index 068191bfd..cbf5e93e4 100644 --- a/docs/runtime/launcher-windows.md +++ b/docs/runtime/launcher-windows.md @@ -6,7 +6,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:") } ``` @@ -35,8 +35,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) { @@ -98,9 +98,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( @@ -140,10 +140,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( @@ -221,11 +221,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( diff --git a/docs/runtime/linux-hidpi.md b/docs/runtime/linux-hidpi.md index cf9f433dc..de59612d3 100644 --- a/docs/runtime/linux-hidpi.md +++ b/docs/runtime/linux-hidpi.md @@ -16,7 +16,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:") } ``` @@ -25,7 +25,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) { @@ -71,7 +71,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 ; } ``` diff --git a/docs/runtime/media-control.md b/docs/runtime/media-control.md index 9a2cdecc5..f8243be5f 100644 --- a/docs/runtime/media-control.md +++ b/docs/runtime/media-control.md @@ -16,7 +16,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:") } ``` @@ -25,7 +25,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 @@ -291,15 +291,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*(...); } diff --git a/docs/runtime/menu-macos.md b/docs/runtime/menu-macos.md index 4fa0d9556..e58acb1dc 100644 --- a/docs/runtime/menu-macos.md +++ b/docs/runtime/menu-macos.md @@ -6,17 +6,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() { @@ -152,7 +152,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)) { } @@ -323,7 +323,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() { @@ -470,7 +470,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*(...); } @@ -481,7 +481,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"] }, diff --git a/docs/runtime/native-http.md b/docs/runtime/native-http.md index d2a196ee5..4ecdcc21c 100644 --- a/docs/runtime/native-http.md +++ b/docs/runtime/native-http.md @@ -6,9 +6,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. @@ -20,14 +20,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() @@ -51,7 +51,7 @@ val client = HttpClient.newBuilder() ```kotlin dependencies { - implementation("io.github.kdroidfilter:nucleus.native-http-okhttp:") + implementation("dev.nucleusframework:nucleus.native-http-okhttp:") } ``` @@ -60,7 +60,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() @@ -82,7 +82,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 @@ -94,7 +94,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 diff --git a/docs/runtime/native-ssl.md b/docs/runtime/native-ssl.md index f891f9672..45784d71c 100644 --- a/docs/runtime/native-ssl.md +++ b/docs/runtime/native-ssl.md @@ -8,7 +8,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:") } ``` @@ -17,7 +17,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 @@ -84,11 +84,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 ; } ``` @@ -98,7 +98,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 ``` diff --git a/docs/runtime/notification-common.md b/docs/runtime/notification-common.md index 53f2a51e1..aa9b11f61 100644 --- a/docs/runtime/notification-common.md +++ b/docs/runtime/notification-common.md @@ -9,7 +9,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:") } ``` @@ -18,7 +18,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( @@ -36,7 +36,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", diff --git a/docs/runtime/notification-linux.md b/docs/runtime/notification-linux.md index bef6b4414..1b5741724 100644 --- a/docs/runtime/notification-linux.md +++ b/docs/runtime/notification-linux.md @@ -9,7 +9,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:") } ``` @@ -18,7 +18,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( @@ -220,7 +220,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 @@ -455,7 +455,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*(...); } @@ -468,7 +468,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"] }, diff --git a/docs/runtime/notification-macos.md b/docs/runtime/notification-macos.md index 358709014..2b3e2316d 100644 --- a/docs/runtime/notification-macos.md +++ b/docs/runtime/notification-macos.md @@ -9,7 +9,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:") } ``` @@ -18,7 +18,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( @@ -508,7 +508,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*(...); } @@ -516,4 +516,4 @@ 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. diff --git a/docs/runtime/notification-windows.md b/docs/runtime/notification-windows.md index 39a70a375..de08d1471 100644 --- a/docs/runtime/notification-windows.md +++ b/docs/runtime/notification-windows.md @@ -9,7 +9,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:") } ``` @@ -18,7 +18,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() @@ -362,7 +362,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*(...); } @@ -370,4 +370,4 @@ 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. diff --git a/docs/runtime/nucleus-application.md b/docs/runtime/nucleus-application.md index 8f611b79e..899edd7c0 100644 --- a/docs/runtime/nucleus-application.md +++ b/docs/runtime/nucleus-application.md @@ -13,12 +13,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 } ``` @@ -216,7 +216,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 diff --git a/docs/runtime/scheduler.md b/docs/runtime/scheduler.md index af540a25c..a8afe6a85 100644 --- a/docs/runtime/scheduler.md +++ b/docs/runtime/scheduler.md @@ -21,7 +21,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:") } ``` @@ -608,7 +608,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) @@ -626,7 +626,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. @@ -639,7 +639,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:") } ``` diff --git a/docs/runtime/service-management-macos.md b/docs/runtime/service-management-macos.md index 0c97e55bc..b457bdb8e 100644 --- a/docs/runtime/service-management-macos.md +++ b/docs/runtime/service-management-macos.md @@ -15,7 +15,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:") } ``` @@ -293,5 +293,5 @@ 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.** { *; } ``` diff --git a/docs/runtime/single-instance.md b/docs/runtime/single-instance.md index 539c7188f..b5fc9f638 100644 --- a/docs/runtime/single-instance.md +++ b/docs/runtime/single-instance.md @@ -6,12 +6,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. diff --git a/docs/runtime/system-color.md b/docs/runtime/system-color.md index 13cb13f38..a16a009c0 100644 --- a/docs/runtime/system-color.md +++ b/docs/runtime/system-color.md @@ -6,7 +6,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:") } ``` @@ -67,7 +67,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") } ``` @@ -143,7 +143,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(); @@ -151,20 +151,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 @@ -172,7 +172,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 ``` diff --git a/docs/runtime/system-info.md b/docs/runtime/system-info.md index f3a2a056c..5ab668b67 100644 --- a/docs/runtime/system-info.md +++ b/docs/runtime/system-info.md @@ -6,14 +6,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() @@ -414,5 +414,5 @@ 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.** { *; } ``` diff --git a/docs/runtime/system-tray/index.md b/docs/runtime/system-tray/index.md index aa8eefb8e..9d678d19a 100644 --- a/docs/runtime/system-tray/index.md +++ b/docs/runtime/system-tray/index.md @@ -1,7 +1,7 @@ # System Tray !!! note "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`. + System Tray is maintained in its own repository with its own release cycle: [**kdroidFilter/ComposeNativeTray**](https://github.com/kdroidFilter/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. @@ -62,7 +62,7 @@ Change `isDarkMode` and the icon switches, the checkmark toggles, the label upda ```kotlin dependencies { - implementation("io.github.kdroidfilter:composenativetray:") + implementation("dev.nucleusframework:composenativetray:") } ``` diff --git a/docs/runtime/taskbar-progress.md b/docs/runtime/taskbar-progress.md index 4fbc96974..e1776ba4e 100644 --- a/docs/runtime/taskbar-progress.md +++ b/docs/runtime/taskbar-progress.md @@ -6,7 +6,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:") } ``` @@ -15,7 +15,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% diff --git a/energy-manager/build.gradle.kts b/energy-manager/build.gradle.kts index e42c84d16..3096a1484 100644 --- a/energy-manager/build.gradle.kts +++ b/energy-manager/build.gradle.kts @@ -97,7 +97,7 @@ tasks.configureEach { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.energy-manager", publishVersion) + coordinates("dev.nucleusframework", "nucleus.energy-manager", publishVersion) pom { name.set("Nucleus Energy Manager") @@ -113,7 +113,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/energy-manager/config/ktlint/baseline.xml b/energy-manager/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/energy-manager/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/EnergyManager.kt b/energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/EnergyManager.kt similarity index 94% rename from energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/EnergyManager.kt rename to energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/EnergyManager.kt index f81e49cb1..8cb751a9a 100644 --- a/energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/EnergyManager.kt +++ b/energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/EnergyManager.kt @@ -1,9 +1,9 @@ -package io.github.kdroidfilter.nucleus.energymanager +package dev.nucleusframework.nucleus.energymanager -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.energymanager.linux.LinuxEnergyManager -import io.github.kdroidfilter.nucleus.energymanager.macos.MacOsEnergyManager -import io.github.kdroidfilter.nucleus.energymanager.windows.WindowsEnergyManager +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.energymanager.linux.LinuxEnergyManager +import dev.nucleusframework.nucleus.energymanager.macos.MacOsEnergyManager +import dev.nucleusframework.nucleus.energymanager.windows.WindowsEnergyManager import kotlinx.coroutines.asCoroutineDispatcher import kotlinx.coroutines.withContext import java.util.concurrent.Executors diff --git a/energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/PlatformEnergyManager.kt b/energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/PlatformEnergyManager.kt similarity index 93% rename from energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/PlatformEnergyManager.kt rename to energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/PlatformEnergyManager.kt index 5a96e9e14..6fec4ec43 100644 --- a/energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/PlatformEnergyManager.kt +++ b/energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/PlatformEnergyManager.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.energymanager +package dev.nucleusframework.nucleus.energymanager internal interface PlatformEnergyManager { fun isAvailable(): Boolean diff --git a/energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/linux/LinuxEnergyManager.kt b/energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/linux/LinuxEnergyManager.kt similarity index 91% rename from energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/linux/LinuxEnergyManager.kt rename to energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/linux/LinuxEnergyManager.kt index 00e032ca7..1b346a9bc 100644 --- a/energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/linux/LinuxEnergyManager.kt +++ b/energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/linux/LinuxEnergyManager.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.energymanager.linux +package dev.nucleusframework.nucleus.energymanager.linux -import io.github.kdroidfilter.nucleus.energymanager.EnergyManager -import io.github.kdroidfilter.nucleus.energymanager.PlatformEnergyManager +import dev.nucleusframework.nucleus.energymanager.EnergyManager +import dev.nucleusframework.nucleus.energymanager.PlatformEnergyManager internal object LinuxEnergyManager : PlatformEnergyManager { private fun callNative(block: () -> Int): EnergyManager.Result { diff --git a/energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/linux/NativeLinuxEnergyBridge.kt b/energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/linux/NativeLinuxEnergyBridge.kt similarity index 87% rename from energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/linux/NativeLinuxEnergyBridge.kt rename to energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/linux/NativeLinuxEnergyBridge.kt index 575931fb3..a58ac702e 100644 --- a/energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/linux/NativeLinuxEnergyBridge.kt +++ b/energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/linux/NativeLinuxEnergyBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.energymanager.linux +package dev.nucleusframework.nucleus.energymanager.linux -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader private const val LIBRARY_NAME = "nucleus_energy_manager" diff --git a/energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/macos/MacOsEnergyManager.kt b/energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/macos/MacOsEnergyManager.kt similarity index 91% rename from energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/macos/MacOsEnergyManager.kt rename to energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/macos/MacOsEnergyManager.kt index 39aea8336..27cf36497 100644 --- a/energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/macos/MacOsEnergyManager.kt +++ b/energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/macos/MacOsEnergyManager.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.energymanager.macos +package dev.nucleusframework.nucleus.energymanager.macos -import io.github.kdroidfilter.nucleus.energymanager.EnergyManager -import io.github.kdroidfilter.nucleus.energymanager.PlatformEnergyManager +import dev.nucleusframework.nucleus.energymanager.EnergyManager +import dev.nucleusframework.nucleus.energymanager.PlatformEnergyManager internal object MacOsEnergyManager : PlatformEnergyManager { private fun callNative(block: () -> Int): EnergyManager.Result { diff --git a/energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/macos/NativeMacOsEnergyBridge.kt b/energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/macos/NativeMacOsEnergyBridge.kt similarity index 87% rename from energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/macos/NativeMacOsEnergyBridge.kt rename to energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/macos/NativeMacOsEnergyBridge.kt index 38007325f..981599ba4 100644 --- a/energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/macos/NativeMacOsEnergyBridge.kt +++ b/energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/macos/NativeMacOsEnergyBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.energymanager.macos +package dev.nucleusframework.nucleus.energymanager.macos -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader private const val LIBRARY_NAME = "nucleus_energy_manager" diff --git a/energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/windows/NativeWindowsEnergyBridge.kt b/energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/windows/NativeWindowsEnergyBridge.kt similarity index 87% rename from energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/windows/NativeWindowsEnergyBridge.kt rename to energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/windows/NativeWindowsEnergyBridge.kt index 0fb1b0dde..d565ccc9a 100644 --- a/energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/windows/NativeWindowsEnergyBridge.kt +++ b/energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/windows/NativeWindowsEnergyBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.energymanager.windows +package dev.nucleusframework.nucleus.energymanager.windows -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader private const val LIBRARY_NAME = "nucleus_energy_manager" diff --git a/energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/windows/WindowsEnergyManager.kt b/energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/windows/WindowsEnergyManager.kt similarity index 91% rename from energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/windows/WindowsEnergyManager.kt rename to energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/windows/WindowsEnergyManager.kt index c08d33782..2f97a83d3 100644 --- a/energy-manager/src/main/kotlin/io/github/kdroidfilter/nucleus/energymanager/windows/WindowsEnergyManager.kt +++ b/energy-manager/src/main/kotlin/dev/nucleusframework/nucleus/energymanager/windows/WindowsEnergyManager.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.energymanager.windows +package dev.nucleusframework.nucleus.energymanager.windows -import io.github.kdroidfilter.nucleus.energymanager.EnergyManager -import io.github.kdroidfilter.nucleus.energymanager.PlatformEnergyManager +import dev.nucleusframework.nucleus.energymanager.EnergyManager +import dev.nucleusframework.nucleus.energymanager.PlatformEnergyManager internal object WindowsEnergyManager : PlatformEnergyManager { private fun callNative(block: () -> Int): EnergyManager.Result { diff --git a/energy-manager/src/main/native/linux/nucleus_energy_manager.c b/energy-manager/src/main/native/linux/nucleus_energy_manager.c index a69dc03d7..88eb4d932 100644 --- a/energy-manager/src/main/native/linux/nucleus_energy_manager.c +++ b/energy-manager/src/main/native/linux/nucleus_energy_manager.c @@ -38,7 +38,7 @@ /* ---- nativeIsSupported ------------------------------------------- */ JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_linux_NativeLinuxEnergyBridge_nativeIsSupported( +Java_dev_nucleusframework_nucleus_energymanager_linux_NativeLinuxEnergyBridge_nativeIsSupported( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -52,7 +52,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_linux_NativeLinuxEnergyBridge_ /* ---- nativeEnableEfficiencyMode ---------------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_linux_NativeLinuxEnergyBridge_nativeEnableEfficiencyMode( +Java_dev_nucleusframework_nucleus_energymanager_linux_NativeLinuxEnergyBridge_nativeEnableEfficiencyMode( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -83,7 +83,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_linux_NativeLinuxEnergyBridge_ /* ---- nativeEnableThreadEfficiencyMode ---------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_linux_NativeLinuxEnergyBridge_nativeEnableThreadEfficiencyMode( +Java_dev_nucleusframework_nucleus_energymanager_linux_NativeLinuxEnergyBridge_nativeEnableThreadEfficiencyMode( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -114,7 +114,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_linux_NativeLinuxEnergyBridge_ /* ---- nativeDisableThreadEfficiencyMode --------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_linux_NativeLinuxEnergyBridge_nativeDisableThreadEfficiencyMode( +Java_dev_nucleusframework_nucleus_energymanager_linux_NativeLinuxEnergyBridge_nativeDisableThreadEfficiencyMode( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -146,7 +146,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_linux_NativeLinuxEnergyBridge_ /* ---- nativeEnableLightEfficiencyMode ----------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_linux_NativeLinuxEnergyBridge_nativeEnableLightEfficiencyMode( +Java_dev_nucleusframework_nucleus_energymanager_linux_NativeLinuxEnergyBridge_nativeEnableLightEfficiencyMode( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -162,7 +162,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_linux_NativeLinuxEnergyBridge_ /* ---- nativeDisableLightEfficiencyMode ---------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_linux_NativeLinuxEnergyBridge_nativeDisableLightEfficiencyMode( +Java_dev_nucleusframework_nucleus_energymanager_linux_NativeLinuxEnergyBridge_nativeDisableLightEfficiencyMode( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -180,7 +180,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_linux_NativeLinuxEnergyBridge_ /* ---- nativeDisableEfficiencyMode --------------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_linux_NativeLinuxEnergyBridge_nativeDisableEfficiencyMode( +Java_dev_nucleusframework_nucleus_energymanager_linux_NativeLinuxEnergyBridge_nativeDisableEfficiencyMode( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -615,7 +615,7 @@ static int x11_uninhibit(void) { /* ---- nativeKeepScreenAwake ---------------------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_linux_NativeLinuxEnergyBridge_nativeKeepScreenAwake( +Java_dev_nucleusframework_nucleus_energymanager_linux_NativeLinuxEnergyBridge_nativeKeepScreenAwake( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -647,7 +647,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_linux_NativeLinuxEnergyBridge_ /* ---- nativeReleaseScreenAwake ------------------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_linux_NativeLinuxEnergyBridge_nativeReleaseScreenAwake( +Java_dev_nucleusframework_nucleus_energymanager_linux_NativeLinuxEnergyBridge_nativeReleaseScreenAwake( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -666,7 +666,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_linux_NativeLinuxEnergyBridge_ /* ---- nativeIsScreenAwakeActive ------------------------------------ */ JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_linux_NativeLinuxEnergyBridge_nativeIsScreenAwakeActive( +Java_dev_nucleusframework_nucleus_energymanager_linux_NativeLinuxEnergyBridge_nativeIsScreenAwakeActive( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; diff --git a/energy-manager/src/main/native/macos/nucleus_energy_manager.c b/energy-manager/src/main/native/macos/nucleus_energy_manager.c index 606ec3434..3644a3b7f 100644 --- a/energy-manager/src/main/native/macos/nucleus_energy_manager.c +++ b/energy-manager/src/main/native/macos/nucleus_energy_manager.c @@ -42,7 +42,7 @@ /* ---- nativeIsSupported ------------------------------------------- */ JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_macos_NativeMacOsEnergyBridge_nativeIsSupported( +Java_dev_nucleusframework_nucleus_energymanager_macos_NativeMacOsEnergyBridge_nativeIsSupported( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -56,7 +56,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_macos_NativeMacOsEnergyBridge_ /* ---- nativeEnableEfficiencyMode ---------------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_macos_NativeMacOsEnergyBridge_nativeEnableEfficiencyMode( +Java_dev_nucleusframework_nucleus_energymanager_macos_NativeMacOsEnergyBridge_nativeEnableEfficiencyMode( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -91,7 +91,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_macos_NativeMacOsEnergyBridge_ /* ---- nativeEnableLightEfficiencyMode ----------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_macos_NativeMacOsEnergyBridge_nativeEnableLightEfficiencyMode( +Java_dev_nucleusframework_nucleus_energymanager_macos_NativeMacOsEnergyBridge_nativeEnableLightEfficiencyMode( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -115,7 +115,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_macos_NativeMacOsEnergyBridge_ /* ---- nativeDisableLightEfficiencyMode --------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_macos_NativeMacOsEnergyBridge_nativeDisableLightEfficiencyMode( +Java_dev_nucleusframework_nucleus_energymanager_macos_NativeMacOsEnergyBridge_nativeDisableLightEfficiencyMode( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -135,7 +135,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_macos_NativeMacOsEnergyBridge_ /* ---- nativeEnableThreadEfficiencyMode ---------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_macos_NativeMacOsEnergyBridge_nativeEnableThreadEfficiencyMode( +Java_dev_nucleusframework_nucleus_energymanager_macos_NativeMacOsEnergyBridge_nativeEnableThreadEfficiencyMode( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -156,7 +156,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_macos_NativeMacOsEnergyBridge_ /* ---- nativeDisableThreadEfficiencyMode --------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_macos_NativeMacOsEnergyBridge_nativeDisableThreadEfficiencyMode( +Java_dev_nucleusframework_nucleus_energymanager_macos_NativeMacOsEnergyBridge_nativeDisableThreadEfficiencyMode( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -169,7 +169,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_macos_NativeMacOsEnergyBridge_ /* ---- nativeDisableEfficiencyMode --------------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_macos_NativeMacOsEnergyBridge_nativeDisableEfficiencyMode( +Java_dev_nucleusframework_nucleus_energymanager_macos_NativeMacOsEnergyBridge_nativeDisableEfficiencyMode( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -206,7 +206,7 @@ static IOPMAssertionID g_assertionId = kIOPMNullAssertionID; /* ---- nativeKeepScreenAwake --------------------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_macos_NativeMacOsEnergyBridge_nativeKeepScreenAwake( +Java_dev_nucleusframework_nucleus_energymanager_macos_NativeMacOsEnergyBridge_nativeKeepScreenAwake( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -239,7 +239,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_macos_NativeMacOsEnergyBridge_ /* ---- nativeReleaseScreenAwake ------------------------------------ */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_macos_NativeMacOsEnergyBridge_nativeReleaseScreenAwake( +Java_dev_nucleusframework_nucleus_energymanager_macos_NativeMacOsEnergyBridge_nativeReleaseScreenAwake( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -257,7 +257,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_macos_NativeMacOsEnergyBridge_ /* ---- nativeIsScreenAwakeActive ----------------------------------- */ JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_macos_NativeMacOsEnergyBridge_nativeIsScreenAwakeActive( +Java_dev_nucleusframework_nucleus_energymanager_macos_NativeMacOsEnergyBridge_nativeIsScreenAwakeActive( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; diff --git a/energy-manager/src/main/native/windows/nucleus_energy_manager.c b/energy-manager/src/main/native/windows/nucleus_energy_manager.c index 3c48d49c9..332e4c50c 100644 --- a/energy-manager/src/main/native/windows/nucleus_energy_manager.c +++ b/energy-manager/src/main/native/windows/nucleus_energy_manager.c @@ -109,7 +109,7 @@ static volatile BOOL g_screenAwakeActive = FALSE; /* ---- nativeIsSupported ------------------------------------------- */ JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_windows_NativeWindowsEnergyBridge_nativeIsSupported( +Java_dev_nucleusframework_nucleus_energymanager_windows_NativeWindowsEnergyBridge_nativeIsSupported( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -119,7 +119,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_windows_NativeWindowsEnergyBri /* ---- nativeEnableEfficiencyMode ---------------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_windows_NativeWindowsEnergyBridge_nativeEnableEfficiencyMode( +Java_dev_nucleusframework_nucleus_energymanager_windows_NativeWindowsEnergyBridge_nativeEnableEfficiencyMode( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -152,7 +152,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_windows_NativeWindowsEnergyBri /* ---- nativeDisableEfficiencyMode --------------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_windows_NativeWindowsEnergyBridge_nativeDisableEfficiencyMode( +Java_dev_nucleusframework_nucleus_energymanager_windows_NativeWindowsEnergyBridge_nativeDisableEfficiencyMode( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -184,7 +184,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_windows_NativeWindowsEnergyBri /* ---- nativeEnableLightEfficiencyMode ----------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_windows_NativeWindowsEnergyBridge_nativeEnableLightEfficiencyMode( +Java_dev_nucleusframework_nucleus_energymanager_windows_NativeWindowsEnergyBridge_nativeEnableLightEfficiencyMode( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -212,7 +212,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_windows_NativeWindowsEnergyBri /* ---- nativeDisableLightEfficiencyMode ---------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_windows_NativeWindowsEnergyBridge_nativeDisableLightEfficiencyMode( +Java_dev_nucleusframework_nucleus_energymanager_windows_NativeWindowsEnergyBridge_nativeDisableLightEfficiencyMode( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -239,7 +239,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_windows_NativeWindowsEnergyBri /* ---- nativeEnableThreadEfficiencyMode --------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_windows_NativeWindowsEnergyBridge_nativeEnableThreadEfficiencyMode( +Java_dev_nucleusframework_nucleus_energymanager_windows_NativeWindowsEnergyBridge_nativeEnableThreadEfficiencyMode( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -270,7 +270,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_windows_NativeWindowsEnergyBri /* ---- nativeDisableThreadEfficiencyMode -------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_windows_NativeWindowsEnergyBridge_nativeDisableThreadEfficiencyMode( +Java_dev_nucleusframework_nucleus_energymanager_windows_NativeWindowsEnergyBridge_nativeDisableThreadEfficiencyMode( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -309,7 +309,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_windows_NativeWindowsEnergyBri #endif JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_windows_NativeWindowsEnergyBridge_nativeKeepScreenAwake( +Java_dev_nucleusframework_nucleus_energymanager_windows_NativeWindowsEnergyBridge_nativeKeepScreenAwake( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -326,7 +326,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_windows_NativeWindowsEnergyBri /* ---- nativeReleaseScreenAwake ----------------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_windows_NativeWindowsEnergyBridge_nativeReleaseScreenAwake( +Java_dev_nucleusframework_nucleus_energymanager_windows_NativeWindowsEnergyBridge_nativeReleaseScreenAwake( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -342,7 +342,7 @@ Java_io_github_kdroidfilter_nucleus_energymanager_windows_NativeWindowsEnergyBri /* ---- nativeIsScreenAwakeActive ---------------------------------- */ JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_energymanager_windows_NativeWindowsEnergyBridge_nativeIsScreenAwakeActive( +Java_dev_nucleusframework_nucleus_energymanager_windows_NativeWindowsEnergyBridge_nativeIsScreenAwakeActive( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; diff --git a/energy-manager/src/test/kotlin/io/github/kdroidfilter/nucleus/energymanager/EnergyManagerTest.kt b/energy-manager/src/test/kotlin/dev/nucleusframework/nucleus/energymanager/EnergyManagerTest.kt similarity index 99% rename from energy-manager/src/test/kotlin/io/github/kdroidfilter/nucleus/energymanager/EnergyManagerTest.kt rename to energy-manager/src/test/kotlin/dev/nucleusframework/nucleus/energymanager/EnergyManagerTest.kt index 97c6d1823..f9a2f7988 100644 --- a/energy-manager/src/test/kotlin/io/github/kdroidfilter/nucleus/energymanager/EnergyManagerTest.kt +++ b/energy-manager/src/test/kotlin/dev/nucleusframework/nucleus/energymanager/EnergyManagerTest.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.energymanager +package dev.nucleusframework.nucleus.energymanager import kotlinx.coroutines.runBlocking import org.junit.Assume.assumeTrue diff --git a/example/build.gradle.kts b/example/build.gradle.kts index 5c2d05202..d9772adaa 100644 --- a/example/build.gradle.kts +++ b/example/build.gradle.kts @@ -1,19 +1,19 @@ -import io.github.kdroidfilter.nucleus.desktop.application.dsl.AppImageCategory -import io.github.kdroidfilter.nucleus.desktop.application.dsl.CompressionLevel -import io.github.kdroidfilter.nucleus.desktop.application.dsl.ReleaseChannel -import io.github.kdroidfilter.nucleus.desktop.application.dsl.ReleaseType -import io.github.kdroidfilter.nucleus.desktop.application.dsl.SigningAlgorithm -import io.github.kdroidfilter.nucleus.desktop.application.dsl.SnapCompression -import io.github.kdroidfilter.nucleus.desktop.application.dsl.SnapConfinement -import io.github.kdroidfilter.nucleus.desktop.application.dsl.SnapGrade -import io.github.kdroidfilter.nucleus.desktop.application.dsl.SnapPlug -import io.github.kdroidfilter.nucleus.desktop.application.dsl.TargetFormat +import dev.nucleusframework.nucleus.desktop.application.dsl.AppImageCategory +import dev.nucleusframework.nucleus.desktop.application.dsl.CompressionLevel +import dev.nucleusframework.nucleus.desktop.application.dsl.ReleaseChannel +import dev.nucleusframework.nucleus.desktop.application.dsl.ReleaseType +import dev.nucleusframework.nucleus.desktop.application.dsl.SigningAlgorithm +import dev.nucleusframework.nucleus.desktop.application.dsl.SnapCompression +import dev.nucleusframework.nucleus.desktop.application.dsl.SnapConfinement +import dev.nucleusframework.nucleus.desktop.application.dsl.SnapGrade +import dev.nucleusframework.nucleus.desktop.application.dsl.SnapPlug +import dev.nucleusframework.nucleus.desktop.application.dsl.TargetFormat plugins { alias(libs.plugins.kotlin) alias(libs.plugins.kotlinComposePlugin) alias(libs.plugins.jetbrainsCompose) - id("io.github.kdroidfilter.nucleus") + id("dev.nucleusframework.nucleus") } dependencies { @@ -78,6 +78,7 @@ nucleus.application { version = "7.8.1" isEnabled = true optimize = false + configurationFiles.from(project.file("proguard-rules.pro")) } } } @@ -157,7 +158,7 @@ nucleus.application { publish { github { enabled = true - owner = "kdroidfilter" + owner = "kdroidFilter" repo = "Nucleus" channel = ReleaseChannel.Latest releaseType = ReleaseType.Release @@ -179,7 +180,7 @@ nucleus.application { // ========== LINUX ========== linux { // --- DEB package --- - debMaintainer = "KDroidFilter " + debMaintainer = "NucleusFramework " debDepends = listOf("libfuse2", "libgtk-3-0") debPackageVersion = releaseVersion @@ -227,7 +228,7 @@ nucleus.application { // --- Code signing (NEW) --- signing { enabled = true - certificateFile.set(file("packaging/KDroidFilter.pfx")) + certificateFile.set(file("packaging/NucleusFramework.pfx")) certificatePassword = "ChangeMe-Temp123!" algorithm = SigningAlgorithm.Sha256 // Timestamp servers: "http://timestamp.digicert.com", "http://timestamp.sectigo.com", "http://timestamp.globalsign.com" @@ -252,7 +253,7 @@ nucleus.application { // --- AppX/Windows Store (NEW) --- appx { applicationId = "NucleusDemo" - publisherDisplayName = "KDroidFilter" + publisherDisplayName = "NucleusFramework" displayName = "Nucleus Demo" // Auto-inject in Package.appxmanifest. // TaskId is auto-resolved to "${applicationId}StartupId" and exposed via NucleusApp.startupTaskId, @@ -260,7 +261,7 @@ nucleus.application { addAutoLaunchExtension = true // Publisher: "CN=..." publisher = "CN=D541E802-6D30-446A-864E-2E8ABD2DAA5E" - identityName = "KDroidFilter.NucleusDemo" + identityName = "NucleusFramework.NucleusDemo" // Languages: "en-US", "fr-FR", "de-DE", etc. languages = listOf("en-US", "fr-FR") backgroundColor = "#001F3F" @@ -276,7 +277,7 @@ nucleus.application { // ========== MACOS ========== macOS { - bundleID = "io.github.kdroidfilter.nucleus.demo" + bundleID = "dev.nucleusframework.nucleus.demo" appCategory = "public.app-category.utilities" dockName = "NucleusDemo" diff --git a/example/config/ktlint/baseline.xml b/example/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/example/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/example/src/main/kotlin/com/example/demo/AutoLaunchScreen.kt b/example/src/main/kotlin/com/example/demo/AutoLaunchScreen.kt index a0ce04bca..942516190 100644 --- a/example/src/main/kotlin/com/example/demo/AutoLaunchScreen.kt +++ b/example/src/main/kotlin/com/example/demo/AutoLaunchScreen.kt @@ -30,11 +30,11 @@ import androidx.compose.ui.platform.LocalClipboardManager import androidx.compose.ui.text.AnnotatedString import androidx.compose.ui.text.font.FontFamily import androidx.compose.ui.unit.dp -import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunch -import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchResult -import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunchState -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.core.runtime.Platform.MacOS +import dev.nucleusframework.nucleus.autolaunch.AutoLaunch +import dev.nucleusframework.nucleus.autolaunch.AutoLaunchResult +import dev.nucleusframework.nucleus.autolaunch.AutoLaunchState +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.core.runtime.Platform.MacOS @Composable fun AutoLaunchScreen() { diff --git a/example/src/main/kotlin/com/example/demo/CommonNotificationsScreen.kt b/example/src/main/kotlin/com/example/demo/CommonNotificationsScreen.kt index 918117dd0..9b6384da6 100644 --- a/example/src/main/kotlin/com/example/demo/CommonNotificationsScreen.kt +++ b/example/src/main/kotlin/com/example/demo/CommonNotificationsScreen.kt @@ -31,10 +31,10 @@ import androidx.compose.runtime.setValue import androidx.compose.ui.Modifier import androidx.compose.ui.text.font.FontFamily import androidx.compose.ui.unit.dp -import io.github.kdroidfilter.nucleus.notification.common.NotificationHandle -import io.github.kdroidfilter.nucleus.notification.common.NotificationManager -import io.github.kdroidfilter.nucleus.notification.common.NotificationResult -import io.github.kdroidfilter.nucleus.notification.common.notification +import dev.nucleusframework.nucleus.notification.common.NotificationHandle +import dev.nucleusframework.nucleus.notification.common.NotificationManager +import dev.nucleusframework.nucleus.notification.common.NotificationResult +import dev.nucleusframework.nucleus.notification.common.notification private const val EVENT_LOG_MAX = 20 diff --git a/example/src/main/kotlin/com/example/demo/GlobalHotKeyScreen.kt b/example/src/main/kotlin/com/example/demo/GlobalHotKeyScreen.kt index 03e20bcaa..92c1db71a 100644 --- a/example/src/main/kotlin/com/example/demo/GlobalHotKeyScreen.kt +++ b/example/src/main/kotlin/com/example/demo/GlobalHotKeyScreen.kt @@ -30,11 +30,11 @@ import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.unit.dp -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.globalhotkey.GlobalHotKeyManager -import io.github.kdroidfilter.nucleus.globalhotkey.HotKeyModifier -import io.github.kdroidfilter.nucleus.globalhotkey.MediaKey -import io.github.kdroidfilter.nucleus.globalhotkey.plus +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.globalhotkey.GlobalHotKeyManager +import dev.nucleusframework.nucleus.globalhotkey.HotKeyModifier +import dev.nucleusframework.nucleus.globalhotkey.MediaKey +import dev.nucleusframework.nucleus.globalhotkey.plus import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch import kotlinx.coroutines.withContext diff --git a/example/src/main/kotlin/com/example/demo/LauncherScreen.kt b/example/src/main/kotlin/com/example/demo/LauncherScreen.kt index 93f95a1c8..79f4d8b82 100644 --- a/example/src/main/kotlin/com/example/demo/LauncherScreen.kt +++ b/example/src/main/kotlin/com/example/demo/LauncherScreen.kt @@ -37,11 +37,11 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.text.font.FontFamily import androidx.compose.ui.unit.dp -import io.github.kdroidfilter.nucleus.freedesktop.icons.FreedesktopIcon -import io.github.kdroidfilter.nucleus.launcher.linux.DbusmenuItem -import io.github.kdroidfilter.nucleus.launcher.linux.LauncherProperties -import io.github.kdroidfilter.nucleus.launcher.linux.LinuxLauncherEntry -import io.github.kdroidfilter.nucleus.launcher.linux.LinuxQuicklist +import dev.nucleusframework.nucleus.freedesktop.icons.FreedesktopIcon +import dev.nucleusframework.nucleus.launcher.linux.DbusmenuItem +import dev.nucleusframework.nucleus.launcher.linux.LauncherProperties +import dev.nucleusframework.nucleus.launcher.linux.LinuxLauncherEntry +import dev.nucleusframework.nucleus.launcher.linux.LinuxQuicklist private const val EVENT_LOG_MAX = 20 diff --git a/example/src/main/kotlin/com/example/demo/LinuxNotificationsScreen.kt b/example/src/main/kotlin/com/example/demo/LinuxNotificationsScreen.kt index 107c3ebe8..427e25e0f 100644 --- a/example/src/main/kotlin/com/example/demo/LinuxNotificationsScreen.kt +++ b/example/src/main/kotlin/com/example/demo/LinuxNotificationsScreen.kt @@ -40,16 +40,16 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.text.font.FontFamily import androidx.compose.ui.unit.dp -import io.github.kdroidfilter.nucleus.freedesktop.icons.FreedesktopIcon -import io.github.kdroidfilter.nucleus.notification.linux.CloseReason -import io.github.kdroidfilter.nucleus.notification.linux.LinuxNotificationCenter -import io.github.kdroidfilter.nucleus.notification.linux.LinuxNotificationListener -import io.github.kdroidfilter.nucleus.notification.linux.Notification -import io.github.kdroidfilter.nucleus.notification.linux.NotificationAction -import io.github.kdroidfilter.nucleus.notification.linux.NotificationHints -import io.github.kdroidfilter.nucleus.notification.linux.NotificationSound -import io.github.kdroidfilter.nucleus.notification.linux.ServerInformation -import io.github.kdroidfilter.nucleus.notification.linux.Urgency +import dev.nucleusframework.nucleus.freedesktop.icons.FreedesktopIcon +import dev.nucleusframework.nucleus.notification.linux.CloseReason +import dev.nucleusframework.nucleus.notification.linux.LinuxNotificationCenter +import dev.nucleusframework.nucleus.notification.linux.LinuxNotificationListener +import dev.nucleusframework.nucleus.notification.linux.Notification +import dev.nucleusframework.nucleus.notification.linux.NotificationAction +import dev.nucleusframework.nucleus.notification.linux.NotificationHints +import dev.nucleusframework.nucleus.notification.linux.NotificationSound +import dev.nucleusframework.nucleus.notification.linux.ServerInformation +import dev.nucleusframework.nucleus.notification.linux.Urgency import java.awt.Color import java.awt.image.BufferedImage @@ -605,7 +605,7 @@ private fun SoundDropdown( /** * Creates a small sample RGBA image for the image-data hint. */ -private fun createSampleImageData(): io.github.kdroidfilter.nucleus.notification.linux.ImageData { +private fun createSampleImageData(): dev.nucleusframework.nucleus.notification.linux.ImageData { val size = SAMPLE_IMAGE_SIZE val channels = 4 val rowstride = size * channels @@ -634,7 +634,7 @@ private fun createSampleImageData(): io.github.kdroidfilter.nucleus.notification } } - return io.github.kdroidfilter.nucleus.notification.linux.ImageData( + return dev.nucleusframework.nucleus.notification.linux.ImageData( width = size, height = size, rowstride = rowstride, diff --git a/example/src/main/kotlin/com/example/demo/MacLaunchDiagnostic.kt b/example/src/main/kotlin/com/example/demo/MacLaunchDiagnostic.kt index 9598eb283..546bff8f9 100644 --- a/example/src/main/kotlin/com/example/demo/MacLaunchDiagnostic.kt +++ b/example/src/main/kotlin/com/example/demo/MacLaunchDiagnostic.kt @@ -1,6 +1,6 @@ package com.example.demo -import io.github.kdroidfilter.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.core.runtime.Platform import java.io.File import java.text.SimpleDateFormat import java.util.Date diff --git a/example/src/main/kotlin/com/example/demo/MacOsLauncherScreen.kt b/example/src/main/kotlin/com/example/demo/MacOsLauncherScreen.kt index 6a2254dd1..122b99d5a 100644 --- a/example/src/main/kotlin/com/example/demo/MacOsLauncherScreen.kt +++ b/example/src/main/kotlin/com/example/demo/MacOsLauncherScreen.kt @@ -29,8 +29,8 @@ import androidx.compose.runtime.setValue import androidx.compose.ui.Modifier import androidx.compose.ui.text.font.FontFamily import androidx.compose.ui.unit.dp -import io.github.kdroidfilter.nucleus.launcher.macos.DockMenuItem -import io.github.kdroidfilter.nucleus.launcher.macos.MacOsDockMenu +import dev.nucleusframework.nucleus.launcher.macos.DockMenuItem +import dev.nucleusframework.nucleus.launcher.macos.MacOsDockMenu private const val EVENT_LOG_MAX = 20 diff --git a/example/src/main/kotlin/com/example/demo/MacOsMenuScreen.kt b/example/src/main/kotlin/com/example/demo/MacOsMenuScreen.kt index 1ada036bf..7fccfd68f 100644 --- a/example/src/main/kotlin/com/example/demo/MacOsMenuScreen.kt +++ b/example/src/main/kotlin/com/example/demo/MacOsMenuScreen.kt @@ -36,19 +36,19 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.text.font.FontFamily import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.unit.dp -import io.github.kdroidfilter.nucleus.menu.macos.NativeKeyShortcut -import io.github.kdroidfilter.nucleus.menu.macos.NativeMenuBar -import io.github.kdroidfilter.nucleus.menu.macos.NsMenuItemBadge -import io.github.kdroidfilter.nucleus.menu.macos.NsMenuItemImage -import io.github.kdroidfilter.nucleus.sfsymbols.SFSymbolArrows -import io.github.kdroidfilter.nucleus.sfsymbols.SFSymbolDevices -import io.github.kdroidfilter.nucleus.sfsymbols.SFSymbolGeneral -import io.github.kdroidfilter.nucleus.sfsymbols.SFSymbolMedia -import io.github.kdroidfilter.nucleus.sfsymbols.SFSymbolObjectsAndTools -import io.github.kdroidfilter.nucleus.sfsymbols.SFSymbolPower -import io.github.kdroidfilter.nucleus.sfsymbols.SFSymbolShapes -import io.github.kdroidfilter.nucleus.sfsymbols.SFSymbolStatus -import io.github.kdroidfilter.nucleus.sfsymbols.SFSymbolTextFormatting +import dev.nucleusframework.nucleus.menu.macos.NativeKeyShortcut +import dev.nucleusframework.nucleus.menu.macos.NativeMenuBar +import dev.nucleusframework.nucleus.menu.macos.NsMenuItemBadge +import dev.nucleusframework.nucleus.menu.macos.NsMenuItemImage +import dev.nucleusframework.nucleus.sfsymbols.SFSymbolArrows +import dev.nucleusframework.nucleus.sfsymbols.SFSymbolDevices +import dev.nucleusframework.nucleus.sfsymbols.SFSymbolGeneral +import dev.nucleusframework.nucleus.sfsymbols.SFSymbolMedia +import dev.nucleusframework.nucleus.sfsymbols.SFSymbolObjectsAndTools +import dev.nucleusframework.nucleus.sfsymbols.SFSymbolPower +import dev.nucleusframework.nucleus.sfsymbols.SFSymbolShapes +import dev.nucleusframework.nucleus.sfsymbols.SFSymbolStatus +import dev.nucleusframework.nucleus.sfsymbols.SFSymbolTextFormatting private const val EVENT_LOG_MAX = 40 diff --git a/example/src/main/kotlin/com/example/demo/Main.kt b/example/src/main/kotlin/com/example/demo/Main.kt index 7050ca174..a06118d19 100644 --- a/example/src/main/kotlin/com/example/demo/Main.kt +++ b/example/src/main/kotlin/com/example/demo/Main.kt @@ -62,30 +62,30 @@ import com.example.demo.icons.TablerTextDirectionRtl import com.example.demo.icons.VscodeCodiconsColorMode import com.materialkolor.DynamicMaterialTheme import com.materialkolor.PaletteStyle -import io.github.kdroidfilter.nucleus.aot.runtime.AotRuntime -import io.github.kdroidfilter.nucleus.application.nucleusApplication -import io.github.kdroidfilter.nucleus.autolaunch.AutoLaunch -import io.github.kdroidfilter.nucleus.core.runtime.DeepLinkHandler -import io.github.kdroidfilter.nucleus.core.runtime.NucleusApp -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.core.runtime.SingleInstanceManager -import io.github.kdroidfilter.nucleus.darkmodedetector.isSystemInDarkMode -import io.github.kdroidfilter.nucleus.energymanager.EnergyManager -import io.github.kdroidfilter.nucleus.graalvm.GraalVmInitializer -import io.github.kdroidfilter.nucleus.launcher.windows.WindowsJumpListManager -import io.github.kdroidfilter.nucleus.nativehttp.NativeHttpClient -import io.github.kdroidfilter.nucleus.systemcolor.systemAccentColor -import io.github.kdroidfilter.nucleus.updater.NucleusUpdater -import io.github.kdroidfilter.nucleus.updater.UpdateEvent -import io.github.kdroidfilter.nucleus.updater.UpdateLevel -import io.github.kdroidfilter.nucleus.updater.UpdateResult -import io.github.kdroidfilter.nucleus.updater.provider.GitHubProvider -import io.github.kdroidfilter.nucleus.window.macOSLargeCornerRadius -import io.github.kdroidfilter.nucleus.window.material.MaterialDecoratedDialog -import io.github.kdroidfilter.nucleus.window.material.MaterialDecoratedWindow -import io.github.kdroidfilter.nucleus.window.material.MaterialDialogTitleBar -import io.github.kdroidfilter.nucleus.window.material.MaterialTitleBar -import io.github.kdroidfilter.nucleus.window.newFullscreenControls +import dev.nucleusframework.nucleus.aot.runtime.AotRuntime +import dev.nucleusframework.nucleus.application.nucleusApplication +import dev.nucleusframework.nucleus.autolaunch.AutoLaunch +import dev.nucleusframework.nucleus.core.runtime.DeepLinkHandler +import dev.nucleusframework.nucleus.core.runtime.NucleusApp +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.core.runtime.SingleInstanceManager +import dev.nucleusframework.nucleus.darkmodedetector.isSystemInDarkMode +import dev.nucleusframework.nucleus.energymanager.EnergyManager +import dev.nucleusframework.nucleus.graalvm.GraalVmInitializer +import dev.nucleusframework.nucleus.launcher.windows.WindowsJumpListManager +import dev.nucleusframework.nucleus.nativehttp.NativeHttpClient +import dev.nucleusframework.nucleus.systemcolor.systemAccentColor +import dev.nucleusframework.nucleus.updater.NucleusUpdater +import dev.nucleusframework.nucleus.updater.UpdateEvent +import dev.nucleusframework.nucleus.updater.UpdateLevel +import dev.nucleusframework.nucleus.updater.UpdateResult +import dev.nucleusframework.nucleus.updater.provider.GitHubProvider +import dev.nucleusframework.nucleus.window.macOSLargeCornerRadius +import dev.nucleusframework.nucleus.window.material.MaterialDecoratedDialog +import dev.nucleusframework.nucleus.window.material.MaterialDecoratedWindow +import dev.nucleusframework.nucleus.window.material.MaterialDialogTitleBar +import dev.nucleusframework.nucleus.window.material.MaterialTitleBar +import dev.nucleusframework.nucleus.window.newFullscreenControls import java.io.File import java.net.URI import kotlin.system.exitProcess @@ -395,7 +395,7 @@ fun NucleusContent() { val updater = remember { NucleusUpdater { - provider = GitHubProvider(owner = "kdroidfilter", repo = "Nucleus") + provider = GitHubProvider(owner = "kdroidFilter", repo = "Nucleus") httpClient = NativeHttpClient.create() } } @@ -567,7 +567,7 @@ private enum class ThemeMode { @OptIn(ExperimentalMaterial3Api::class) @Suppress("FunctionNaming", "DEPRECATION") @Composable -private fun io.github.kdroidfilter.nucleus.window.TitleBarScope.TitleBarIconButton( +private fun dev.nucleusframework.nucleus.window.TitleBarScope.TitleBarIconButton( imageVector: ImageVector, contentDescription: String, modifier: Modifier = Modifier, diff --git a/example/src/main/kotlin/com/example/demo/MediaControlScreen.kt b/example/src/main/kotlin/com/example/demo/MediaControlScreen.kt index 1d09a67c8..fa661730e 100644 --- a/example/src/main/kotlin/com/example/demo/MediaControlScreen.kt +++ b/example/src/main/kotlin/com/example/demo/MediaControlScreen.kt @@ -31,12 +31,12 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.text.font.FontFamily import androidx.compose.ui.unit.dp -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.media.control.MediaControlEvent -import io.github.kdroidfilter.nucleus.media.control.MediaControlService -import io.github.kdroidfilter.nucleus.media.control.MediaMetadata -import io.github.kdroidfilter.nucleus.media.control.MediaPlaybackState -import io.github.kdroidfilter.nucleus.media.control.MediaPlaybackStatus +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.media.control.MediaControlEvent +import dev.nucleusframework.nucleus.media.control.MediaControlService +import dev.nucleusframework.nucleus.media.control.MediaMetadata +import dev.nucleusframework.nucleus.media.control.MediaPlaybackState +import dev.nucleusframework.nucleus.media.control.MediaPlaybackStatus private const val EVENT_LOG_MAX = 20 diff --git a/example/src/main/kotlin/com/example/demo/NotificationsScreen.kt b/example/src/main/kotlin/com/example/demo/NotificationsScreen.kt index 51d85cf87..550475f02 100644 --- a/example/src/main/kotlin/com/example/demo/NotificationsScreen.kt +++ b/example/src/main/kotlin/com/example/demo/NotificationsScreen.kt @@ -35,26 +35,26 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.text.font.FontFamily import androidx.compose.ui.unit.dp -import io.github.kdroidfilter.nucleus.notification.ActionOption -import io.github.kdroidfilter.nucleus.notification.AuthorizationOption -import io.github.kdroidfilter.nucleus.notification.CategoryOption -import io.github.kdroidfilter.nucleus.notification.DateComponents -import io.github.kdroidfilter.nucleus.notification.DeliveredNotification -import io.github.kdroidfilter.nucleus.notification.InterruptionLevel -import io.github.kdroidfilter.nucleus.notification.NotificationAction -import io.github.kdroidfilter.nucleus.notification.NotificationAttachment -import io.github.kdroidfilter.nucleus.notification.NotificationCategory -import io.github.kdroidfilter.nucleus.notification.NotificationCenter -import io.github.kdroidfilter.nucleus.notification.NotificationCenterDelegate -import io.github.kdroidfilter.nucleus.notification.NotificationContent -import io.github.kdroidfilter.nucleus.notification.NotificationRequest -import io.github.kdroidfilter.nucleus.notification.NotificationResponse -import io.github.kdroidfilter.nucleus.notification.NotificationSettings -import io.github.kdroidfilter.nucleus.notification.NotificationSound -import io.github.kdroidfilter.nucleus.notification.NotificationTrigger -import io.github.kdroidfilter.nucleus.notification.PendingNotificationInfo -import io.github.kdroidfilter.nucleus.notification.PresentationOption -import io.github.kdroidfilter.nucleus.notification.TextInputNotificationAction +import dev.nucleusframework.nucleus.notification.ActionOption +import dev.nucleusframework.nucleus.notification.AuthorizationOption +import dev.nucleusframework.nucleus.notification.CategoryOption +import dev.nucleusframework.nucleus.notification.DateComponents +import dev.nucleusframework.nucleus.notification.DeliveredNotification +import dev.nucleusframework.nucleus.notification.InterruptionLevel +import dev.nucleusframework.nucleus.notification.NotificationAction +import dev.nucleusframework.nucleus.notification.NotificationAttachment +import dev.nucleusframework.nucleus.notification.NotificationCategory +import dev.nucleusframework.nucleus.notification.NotificationCenter +import dev.nucleusframework.nucleus.notification.NotificationCenterDelegate +import dev.nucleusframework.nucleus.notification.NotificationContent +import dev.nucleusframework.nucleus.notification.NotificationRequest +import dev.nucleusframework.nucleus.notification.NotificationResponse +import dev.nucleusframework.nucleus.notification.NotificationSettings +import dev.nucleusframework.nucleus.notification.NotificationSound +import dev.nucleusframework.nucleus.notification.NotificationTrigger +import dev.nucleusframework.nucleus.notification.PendingNotificationInfo +import dev.nucleusframework.nucleus.notification.PresentationOption +import dev.nucleusframework.nucleus.notification.TextInputNotificationAction import java.awt.Color import java.awt.image.BufferedImage import java.io.File diff --git a/example/src/main/kotlin/com/example/demo/TaskbarProgressScreen.kt b/example/src/main/kotlin/com/example/demo/TaskbarProgressScreen.kt index b5e1aaeb8..7d561fe42 100644 --- a/example/src/main/kotlin/com/example/demo/TaskbarProgressScreen.kt +++ b/example/src/main/kotlin/com/example/demo/TaskbarProgressScreen.kt @@ -26,16 +26,16 @@ import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.unit.dp -import io.github.kdroidfilter.nucleus.application.NucleusWindow -import io.github.kdroidfilter.nucleus.taskbarprogress.TaskbarProgress -import io.github.kdroidfilter.nucleus.taskbarprogress.tao.hideTaskbarProgress -import io.github.kdroidfilter.nucleus.taskbarprogress.tao.requestTaskbarAttention -import io.github.kdroidfilter.nucleus.taskbarprogress.tao.setTaskbarProgress -import io.github.kdroidfilter.nucleus.taskbarprogress.tao.showTaskbarError -import io.github.kdroidfilter.nucleus.taskbarprogress.tao.showTaskbarIndeterminate -import io.github.kdroidfilter.nucleus.taskbarprogress.tao.showTaskbarPaused -import io.github.kdroidfilter.nucleus.taskbarprogress.tao.showTaskbarProgress -import io.github.kdroidfilter.nucleus.taskbarprogress.tao.stopTaskbarAttention +import dev.nucleusframework.nucleus.application.NucleusWindow +import dev.nucleusframework.nucleus.taskbarprogress.TaskbarProgress +import dev.nucleusframework.nucleus.taskbarprogress.tao.hideTaskbarProgress +import dev.nucleusframework.nucleus.taskbarprogress.tao.requestTaskbarAttention +import dev.nucleusframework.nucleus.taskbarprogress.tao.setTaskbarProgress +import dev.nucleusframework.nucleus.taskbarprogress.tao.showTaskbarError +import dev.nucleusframework.nucleus.taskbarprogress.tao.showTaskbarIndeterminate +import dev.nucleusframework.nucleus.taskbarprogress.tao.showTaskbarPaused +import dev.nucleusframework.nucleus.taskbarprogress.tao.showTaskbarProgress +import dev.nucleusframework.nucleus.taskbarprogress.tao.stopTaskbarAttention import kotlinx.coroutines.delay import kotlinx.coroutines.launch diff --git a/example/src/main/kotlin/com/example/demo/WindowsBadgeScreen.kt b/example/src/main/kotlin/com/example/demo/WindowsBadgeScreen.kt index 7a670ded8..4a7632b52 100644 --- a/example/src/main/kotlin/com/example/demo/WindowsBadgeScreen.kt +++ b/example/src/main/kotlin/com/example/demo/WindowsBadgeScreen.kt @@ -33,16 +33,16 @@ import androidx.compose.runtime.setValue import androidx.compose.ui.Modifier import androidx.compose.ui.text.font.FontFamily import androidx.compose.ui.unit.dp -import io.github.kdroidfilter.nucleus.launcher.windows.BadgeGlyph -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.ThumbnailToolbarButton -import io.github.kdroidfilter.nucleus.launcher.windows.WindowsBadgeManager -import io.github.kdroidfilter.nucleus.launcher.windows.WindowsJumpListManager -import io.github.kdroidfilter.nucleus.launcher.windows.WindowsOverlayIcon -import io.github.kdroidfilter.nucleus.launcher.windows.WindowsThumbnailToolbar +import dev.nucleusframework.nucleus.launcher.windows.BadgeGlyph +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.ThumbnailToolbarButton +import dev.nucleusframework.nucleus.launcher.windows.WindowsBadgeManager +import dev.nucleusframework.nucleus.launcher.windows.WindowsJumpListManager +import dev.nucleusframework.nucleus.launcher.windows.WindowsOverlayIcon +import dev.nucleusframework.nucleus.launcher.windows.WindowsThumbnailToolbar import java.awt.Window private const val EVENT_LOG_MAX = 30 diff --git a/example/src/main/kotlin/com/example/demo/WindowsNotificationsScreen.kt b/example/src/main/kotlin/com/example/demo/WindowsNotificationsScreen.kt index da5691228..717b6d79c 100644 --- a/example/src/main/kotlin/com/example/demo/WindowsNotificationsScreen.kt +++ b/example/src/main/kotlin/com/example/demo/WindowsNotificationsScreen.kt @@ -36,27 +36,27 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.text.font.FontFamily import androidx.compose.ui.unit.dp -import io.github.kdroidfilter.nucleus.notification.windows.ActivationType -import io.github.kdroidfilter.nucleus.notification.windows.AdaptiveProgressBar -import io.github.kdroidfilter.nucleus.notification.windows.AdaptiveText -import io.github.kdroidfilter.nucleus.notification.windows.DismissalReason -import io.github.kdroidfilter.nucleus.notification.windows.ToastActions -import io.github.kdroidfilter.nucleus.notification.windows.ToastAudio -import io.github.kdroidfilter.nucleus.notification.windows.ToastAudioSource -import io.github.kdroidfilter.nucleus.notification.windows.ToastBindingGeneric -import io.github.kdroidfilter.nucleus.notification.windows.ToastButton -import io.github.kdroidfilter.nucleus.notification.windows.ToastContent -import io.github.kdroidfilter.nucleus.notification.windows.ToastGenericAttributionText -import io.github.kdroidfilter.nucleus.notification.windows.ToastHeader -import io.github.kdroidfilter.nucleus.notification.windows.ToastNotificationData -import io.github.kdroidfilter.nucleus.notification.windows.ToastNotificationListener -import io.github.kdroidfilter.nucleus.notification.windows.ToastScenario -import io.github.kdroidfilter.nucleus.notification.windows.ToastSelectionBox -import io.github.kdroidfilter.nucleus.notification.windows.ToastSelectionBoxItem -import io.github.kdroidfilter.nucleus.notification.windows.ToastTextBox -import io.github.kdroidfilter.nucleus.notification.windows.ToastVisual -import io.github.kdroidfilter.nucleus.notification.windows.WindowsNotificationCenter -import io.github.kdroidfilter.nucleus.notification.windows.toast +import dev.nucleusframework.nucleus.notification.windows.ActivationType +import dev.nucleusframework.nucleus.notification.windows.AdaptiveProgressBar +import dev.nucleusframework.nucleus.notification.windows.AdaptiveText +import dev.nucleusframework.nucleus.notification.windows.DismissalReason +import dev.nucleusframework.nucleus.notification.windows.ToastActions +import dev.nucleusframework.nucleus.notification.windows.ToastAudio +import dev.nucleusframework.nucleus.notification.windows.ToastAudioSource +import dev.nucleusframework.nucleus.notification.windows.ToastBindingGeneric +import dev.nucleusframework.nucleus.notification.windows.ToastButton +import dev.nucleusframework.nucleus.notification.windows.ToastContent +import dev.nucleusframework.nucleus.notification.windows.ToastGenericAttributionText +import dev.nucleusframework.nucleus.notification.windows.ToastHeader +import dev.nucleusframework.nucleus.notification.windows.ToastNotificationData +import dev.nucleusframework.nucleus.notification.windows.ToastNotificationListener +import dev.nucleusframework.nucleus.notification.windows.ToastScenario +import dev.nucleusframework.nucleus.notification.windows.ToastSelectionBox +import dev.nucleusframework.nucleus.notification.windows.ToastSelectionBoxItem +import dev.nucleusframework.nucleus.notification.windows.ToastTextBox +import dev.nucleusframework.nucleus.notification.windows.ToastVisual +import dev.nucleusframework.nucleus.notification.windows.WindowsNotificationCenter +import dev.nucleusframework.nucleus.notification.windows.toast private const val EVENT_LOG_MAX = 20 private const val MAX_PROGRESS_VALUE = 100f @@ -373,7 +373,7 @@ private fun sendToast( silent: Boolean, events: MutableList, ) { - val children = mutableListOf() + val children = mutableListOf() children.add(AdaptiveText(title)) if (body.isNotEmpty()) children.add(AdaptiveText(body)) if (body2.isNotEmpty()) children.add(AdaptiveText(body2)) @@ -388,7 +388,7 @@ private fun sendToast( ) } - val inputs = mutableListOf() + val inputs = mutableListOf() if (useTextInput) { inputs.add(ToastTextBox(id = "reply", title = "Reply", placeholderContent = "Type here...")) } diff --git a/freedesktop-icons/build.gradle.kts b/freedesktop-icons/build.gradle.kts index 337d5f4ba..fb4157343 100644 --- a/freedesktop-icons/build.gradle.kts +++ b/freedesktop-icons/build.gradle.kts @@ -24,7 +24,7 @@ kotlin { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.freedesktop-icons", publishVersion) + coordinates("dev.nucleusframework", "nucleus.freedesktop-icons", publishVersion) pom { name.set("Nucleus Freedesktop Icons") @@ -40,7 +40,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/freedesktop-icons/config/ktlint/baseline.xml b/freedesktop-icons/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/freedesktop-icons/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/freedesktop-icons/src/main/kotlin/io/github/kdroidfilter/nucleus/freedesktop/icons/FreedesktopIcon.kt b/freedesktop-icons/src/main/kotlin/dev/nucleusframework/nucleus/freedesktop/icons/FreedesktopIcon.kt similarity index 99% rename from freedesktop-icons/src/main/kotlin/io/github/kdroidfilter/nucleus/freedesktop/icons/FreedesktopIcon.kt rename to freedesktop-icons/src/main/kotlin/dev/nucleusframework/nucleus/freedesktop/icons/FreedesktopIcon.kt index 2098e20b8..f8159c049 100644 --- a/freedesktop-icons/src/main/kotlin/io/github/kdroidfilter/nucleus/freedesktop/icons/FreedesktopIcon.kt +++ b/freedesktop-icons/src/main/kotlin/dev/nucleusframework/nucleus/freedesktop/icons/FreedesktopIcon.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.freedesktop.icons +package dev.nucleusframework.nucleus.freedesktop.icons /** * Type-safe representation of a freedesktop icon name. diff --git a/global-hotkey/build.gradle.kts b/global-hotkey/build.gradle.kts index 0506fd879..eeb6c6830 100644 --- a/global-hotkey/build.gradle.kts +++ b/global-hotkey/build.gradle.kts @@ -81,7 +81,7 @@ tasks.configureEach { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.global-hotkey", publishVersion) + coordinates("dev.nucleusframework", "nucleus.global-hotkey", publishVersion) pom { name.set("Nucleus Global Hotkey") @@ -99,7 +99,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/global-hotkey/config/ktlint/baseline.xml b/global-hotkey/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/global-hotkey/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/GlobalHotKeyManager.kt b/global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/GlobalHotKeyManager.kt similarity index 96% rename from global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/GlobalHotKeyManager.kt rename to global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/GlobalHotKeyManager.kt index a077f9d1c..d24efc574 100644 --- a/global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/GlobalHotKeyManager.kt +++ b/global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/GlobalHotKeyManager.kt @@ -1,9 +1,9 @@ -package io.github.kdroidfilter.nucleus.globalhotkey +package dev.nucleusframework.nucleus.globalhotkey -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.globalhotkey.linux.NativeLinuxHotKeyBridge -import io.github.kdroidfilter.nucleus.globalhotkey.macos.NativeMacOsHotKeyBridge -import io.github.kdroidfilter.nucleus.globalhotkey.windows.NativeWindowsHotKeyBridge +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.globalhotkey.linux.NativeLinuxHotKeyBridge +import dev.nucleusframework.nucleus.globalhotkey.macos.NativeMacOsHotKeyBridge +import dev.nucleusframework.nucleus.globalhotkey.windows.NativeWindowsHotKeyBridge import java.util.logging.Logger private const val WIN32_MOD_NOREPEAT = 0x4000 diff --git a/global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/HotKeyListener.kt b/global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/HotKeyListener.kt similarity index 87% rename from global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/HotKeyListener.kt rename to global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/HotKeyListener.kt index fcbae371b..1eb694b3a 100644 --- a/global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/HotKeyListener.kt +++ b/global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/HotKeyListener.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.globalhotkey +package dev.nucleusframework.nucleus.globalhotkey /** Callback invoked when a registered global hotkey is pressed. */ fun interface HotKeyListener { diff --git a/global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/HotKeyModifier.kt b/global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/HotKeyModifier.kt similarity index 93% rename from global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/HotKeyModifier.kt rename to global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/HotKeyModifier.kt index e921737d6..3e2b5ea5d 100644 --- a/global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/HotKeyModifier.kt +++ b/global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/HotKeyModifier.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.globalhotkey +package dev.nucleusframework.nucleus.globalhotkey /** * Modifier keys for global hotkey registration. diff --git a/global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/MediaKey.kt b/global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/MediaKey.kt similarity index 89% rename from global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/MediaKey.kt rename to global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/MediaKey.kt index 76f8279df..c92b0cc75 100644 --- a/global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/MediaKey.kt +++ b/global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/MediaKey.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.globalhotkey +package dev.nucleusframework.nucleus.globalhotkey /** * Well-known media keys that can be registered as global hotkeys. diff --git a/global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/linux/NativeLinuxHotKeyBridge.kt b/global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/linux/NativeLinuxHotKeyBridge.kt similarity index 86% rename from global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/linux/NativeLinuxHotKeyBridge.kt rename to global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/linux/NativeLinuxHotKeyBridge.kt index aeb27f75d..8cf2903e5 100644 --- a/global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/linux/NativeLinuxHotKeyBridge.kt +++ b/global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/linux/NativeLinuxHotKeyBridge.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.globalhotkey.linux +package dev.nucleusframework.nucleus.globalhotkey.linux -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader -import io.github.kdroidfilter.nucleus.globalhotkey.HotKeyListener +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.globalhotkey.HotKeyListener import java.util.concurrent.ConcurrentHashMap import java.util.concurrent.atomic.AtomicLong diff --git a/global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/macos/NativeMacOsHotKeyBridge.kt b/global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/macos/NativeMacOsHotKeyBridge.kt similarity index 90% rename from global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/macos/NativeMacOsHotKeyBridge.kt rename to global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/macos/NativeMacOsHotKeyBridge.kt index eb88c2513..4362adde0 100644 --- a/global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/macos/NativeMacOsHotKeyBridge.kt +++ b/global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/macos/NativeMacOsHotKeyBridge.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.globalhotkey.macos +package dev.nucleusframework.nucleus.globalhotkey.macos -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader -import io.github.kdroidfilter.nucleus.globalhotkey.HotKeyListener +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.globalhotkey.HotKeyListener import java.util.concurrent.ConcurrentHashMap import java.util.concurrent.atomic.AtomicLong diff --git a/global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/windows/NativeWindowsHotKeyBridge.kt b/global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/windows/NativeWindowsHotKeyBridge.kt similarity index 90% rename from global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/windows/NativeWindowsHotKeyBridge.kt rename to global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/windows/NativeWindowsHotKeyBridge.kt index 7dcffa541..6b63c390e 100644 --- a/global-hotkey/src/main/kotlin/io/github/kdroidfilter/nucleus/globalhotkey/windows/NativeWindowsHotKeyBridge.kt +++ b/global-hotkey/src/main/kotlin/dev/nucleusframework/nucleus/globalhotkey/windows/NativeWindowsHotKeyBridge.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.globalhotkey.windows +package dev.nucleusframework.nucleus.globalhotkey.windows -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader -import io.github.kdroidfilter.nucleus.globalhotkey.HotKeyListener +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.globalhotkey.HotKeyListener import java.util.concurrent.ConcurrentHashMap import java.util.concurrent.atomic.AtomicLong diff --git a/global-hotkey/src/main/native/linux/nucleus_global_hotkey_linux.c b/global-hotkey/src/main/native/linux/nucleus_global_hotkey_linux.c index 9ace32d36..e5639bfba 100644 --- a/global-hotkey/src/main/native/linux/nucleus_global_hotkey_linux.c +++ b/global-hotkey/src/main/native/linux/nucleus_global_hotkey_linux.c @@ -608,7 +608,7 @@ JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) { } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_globalhotkey_linux_NativeLinuxHotKeyBridge_nativeInit( +Java_dev_nucleusframework_nucleus_globalhotkey_linux_NativeLinuxHotKeyBridge_nativeInit( JNIEnv *env, jclass clazz) { if (g_running) return NULL; @@ -656,7 +656,7 @@ Java_io_github_kdroidfilter_nucleus_globalhotkey_linux_NativeLinuxHotKeyBridge_n } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_globalhotkey_linux_NativeLinuxHotKeyBridge_nativeRegister( +Java_dev_nucleusframework_nucleus_globalhotkey_linux_NativeLinuxHotKeyBridge_nativeRegister( JNIEnv *env, jclass clazz, jlong id, jint modifiers, jint keyCode) { (void)clazz; if (!g_running) return (*env)->NewStringUTF(env, "Not initialized"); @@ -703,7 +703,7 @@ Java_io_github_kdroidfilter_nucleus_globalhotkey_linux_NativeLinuxHotKeyBridge_n } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_globalhotkey_linux_NativeLinuxHotKeyBridge_nativeUnregister( +Java_dev_nucleusframework_nucleus_globalhotkey_linux_NativeLinuxHotKeyBridge_nativeUnregister( JNIEnv *env, jclass clazz, jlong id) { (void)clazz; if (!g_running) return (*env)->NewStringUTF(env, "Not initialized"); @@ -728,7 +728,7 @@ Java_io_github_kdroidfilter_nucleus_globalhotkey_linux_NativeLinuxHotKeyBridge_n } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_globalhotkey_linux_NativeLinuxHotKeyBridge_nativeShutdown( +Java_dev_nucleusframework_nucleus_globalhotkey_linux_NativeLinuxHotKeyBridge_nativeShutdown( JNIEnv *env, jclass clazz) { (void)clazz; if (!g_running) return; diff --git a/global-hotkey/src/main/native/macos/nucleus_global_hotkey_macos.m b/global-hotkey/src/main/native/macos/nucleus_global_hotkey_macos.m index 16556cb32..d37200d4d 100644 --- a/global-hotkey/src/main/native/macos/nucleus_global_hotkey_macos.m +++ b/global-hotkey/src/main/native/macos/nucleus_global_hotkey_macos.m @@ -224,7 +224,7 @@ JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) { } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_globalhotkey_macos_NativeMacOsHotKeyBridge_nativeInit( +Java_dev_nucleusframework_nucleus_globalhotkey_macos_NativeMacOsHotKeyBridge_nativeInit( JNIEnv *env, jclass clazz) { @autoreleasepool { if (g_eventMonitorLocal != nil || g_eventMonitorGlobal != nil) return NULL; // Already initialized @@ -278,7 +278,7 @@ JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) { } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_globalhotkey_macos_NativeMacOsHotKeyBridge_nativeRegister( +Java_dev_nucleusframework_nucleus_globalhotkey_macos_NativeMacOsHotKeyBridge_nativeRegister( JNIEnv *env, jclass clazz, jlong id, jint modifiers, jint keyCode) { (void)clazz; @autoreleasepool { @@ -318,7 +318,7 @@ JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) { } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_globalhotkey_macos_NativeMacOsHotKeyBridge_nativeUnregister( +Java_dev_nucleusframework_nucleus_globalhotkey_macos_NativeMacOsHotKeyBridge_nativeUnregister( JNIEnv *env, jclass clazz, jlong id) { (void)clazz; @autoreleasepool { @@ -336,7 +336,7 @@ JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *reserved) { } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_globalhotkey_macos_NativeMacOsHotKeyBridge_nativeShutdown( +Java_dev_nucleusframework_nucleus_globalhotkey_macos_NativeMacOsHotKeyBridge_nativeShutdown( JNIEnv *env, jclass clazz) { (void)clazz; @autoreleasepool { diff --git a/global-hotkey/src/main/native/windows/nucleus_global_hotkey.cpp b/global-hotkey/src/main/native/windows/nucleus_global_hotkey.cpp index 5a4771ab0..c16467023 100644 --- a/global-hotkey/src/main/native/windows/nucleus_global_hotkey.cpp +++ b/global-hotkey/src/main/native/windows/nucleus_global_hotkey.cpp @@ -112,7 +112,7 @@ JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM* vm, void*) { } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_globalhotkey_windows_NativeWindowsHotKeyBridge_nativeInit( +Java_dev_nucleusframework_nucleus_globalhotkey_windows_NativeWindowsHotKeyBridge_nativeInit( JNIEnv* env, jclass clazz ) { if (g_running) return nullptr; // Already initialized @@ -155,7 +155,7 @@ Java_io_github_kdroidfilter_nucleus_globalhotkey_windows_NativeWindowsHotKeyBrid } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_globalhotkey_windows_NativeWindowsHotKeyBridge_nativeRegister( +Java_dev_nucleusframework_nucleus_globalhotkey_windows_NativeWindowsHotKeyBridge_nativeRegister( JNIEnv* env, jclass, jlong id, jint modifiers, jint keyCode ) { if (!g_running || g_threadId == 0) { @@ -187,7 +187,7 @@ Java_io_github_kdroidfilter_nucleus_globalhotkey_windows_NativeWindowsHotKeyBrid } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_globalhotkey_windows_NativeWindowsHotKeyBridge_nativeUnregister( +Java_dev_nucleusframework_nucleus_globalhotkey_windows_NativeWindowsHotKeyBridge_nativeUnregister( JNIEnv* env, jclass, jlong id ) { if (!g_running || g_threadId == 0) { @@ -217,7 +217,7 @@ Java_io_github_kdroidfilter_nucleus_globalhotkey_windows_NativeWindowsHotKeyBrid } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_globalhotkey_windows_NativeWindowsHotKeyBridge_nativeShutdown( +Java_dev_nucleusframework_nucleus_globalhotkey_windows_NativeWindowsHotKeyBridge_nativeShutdown( JNIEnv*, jclass ) { if (!g_running || g_threadId == 0) return; diff --git a/global-hotkey/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.global-hotkey/reachability-metadata.json b/global-hotkey/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.global-hotkey/reachability-metadata.json similarity index 71% rename from global-hotkey/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.global-hotkey/reachability-metadata.json rename to global-hotkey/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.global-hotkey/reachability-metadata.json index 27138140e..a58873068 100644 --- a/global-hotkey/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.global-hotkey/reachability-metadata.json +++ b/global-hotkey/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.global-hotkey/reachability-metadata.json @@ -1,7 +1,7 @@ { "reflection": [ { - "type": "io.github.kdroidfilter.nucleus.globalhotkey.windows.NativeWindowsHotKeyBridge", + "type": "dev.nucleusframework.nucleus.globalhotkey.windows.NativeWindowsHotKeyBridge", "jniAccessible": true, "methods": [ { @@ -11,7 +11,7 @@ ] }, { - "type": "io.github.kdroidfilter.nucleus.globalhotkey.macos.NativeMacOsHotKeyBridge", + "type": "dev.nucleusframework.nucleus.globalhotkey.macos.NativeMacOsHotKeyBridge", "jniAccessible": true, "methods": [ { @@ -21,7 +21,7 @@ ] }, { - "type": "io.github.kdroidfilter.nucleus.globalhotkey.linux.NativeLinuxHotKeyBridge", + "type": "dev.nucleusframework.nucleus.globalhotkey.linux.NativeLinuxHotKeyBridge", "jniAccessible": true, "methods": [ { diff --git a/graalvm-runtime/build.gradle.kts b/graalvm-runtime/build.gradle.kts index a0a2a7cf3..76e1da3ca 100644 --- a/graalvm-runtime/build.gradle.kts +++ b/graalvm-runtime/build.gradle.kts @@ -34,7 +34,7 @@ tasks.named("javadoc") { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.graalvm-runtime", publishVersion) + coordinates("dev.nucleusframework", "nucleus.graalvm-runtime", publishVersion) pom { name.set("Nucleus GraalVM Runtime") @@ -50,7 +50,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/graalvm-runtime/config/ktlint/baseline.xml b/graalvm-runtime/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/graalvm-runtime/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/font/FcFontManagerSubstitution.java b/graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/font/FcFontManagerSubstitution.java similarity index 96% rename from graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/font/FcFontManagerSubstitution.java rename to graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/font/FcFontManagerSubstitution.java index 23a2f7110..fbc438c6c 100644 --- a/graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/font/FcFontManagerSubstitution.java +++ b/graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/font/FcFontManagerSubstitution.java @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.graalvm.font; +package dev.nucleusframework.nucleus.graalvm.font; import com.oracle.svm.core.annotate.Substitute; import com.oracle.svm.core.annotate.TargetClass; diff --git a/graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/font/FontCreateFontSubstitution.java b/graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/font/FontCreateFontSubstitution.java similarity index 96% rename from graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/font/FontCreateFontSubstitution.java rename to graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/font/FontCreateFontSubstitution.java index 62254e458..23ac68a39 100644 --- a/graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/font/FontCreateFontSubstitution.java +++ b/graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/font/FontCreateFontSubstitution.java @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.graalvm.font; +package dev.nucleusframework.nucleus.graalvm.font; import com.oracle.svm.core.annotate.Substitute; import com.oracle.svm.core.annotate.TargetClass; diff --git a/graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/font/IsLinux.java b/graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/font/IsLinux.java similarity index 86% rename from graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/font/IsLinux.java rename to graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/font/IsLinux.java index e32f245f5..47e0a745e 100644 --- a/graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/font/IsLinux.java +++ b/graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/font/IsLinux.java @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.graalvm.font; +package dev.nucleusframework.nucleus.graalvm.font; import org.graalvm.nativeimage.Platform; diff --git a/graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/font/IsWindows.java b/graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/font/IsWindows.java similarity index 86% rename from graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/font/IsWindows.java rename to graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/font/IsWindows.java index 177130629..8efd8552d 100644 --- a/graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/font/IsWindows.java +++ b/graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/font/IsWindows.java @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.graalvm.font; +package dev.nucleusframework.nucleus.graalvm.font; import org.graalvm.nativeimage.Platform; diff --git a/graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/font/IsWindowsOrLinux.java b/graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/font/IsWindowsOrLinux.java similarity index 88% rename from graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/font/IsWindowsOrLinux.java rename to graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/font/IsWindowsOrLinux.java index 4f6784b0d..3a2943876 100644 --- a/graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/font/IsWindowsOrLinux.java +++ b/graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/font/IsWindowsOrLinux.java @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.graalvm.font; +package dev.nucleusframework.nucleus.graalvm.font; import org.graalvm.nativeimage.Platform; diff --git a/graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/font/Win32FontManagerSubstitution.java b/graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/font/Win32FontManagerSubstitution.java similarity index 95% rename from graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/font/Win32FontManagerSubstitution.java rename to graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/font/Win32FontManagerSubstitution.java index ecf63c604..b2c28e366 100644 --- a/graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/font/Win32FontManagerSubstitution.java +++ b/graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/font/Win32FontManagerSubstitution.java @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.graalvm.font; +package dev.nucleusframework.nucleus.graalvm.font; import com.oracle.svm.core.annotate.Substitute; import com.oracle.svm.core.annotate.TargetClass; diff --git a/graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/wmclass/AppNameResolver.java b/graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/wmclass/AppNameResolver.java similarity index 98% rename from graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/wmclass/AppNameResolver.java rename to graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/wmclass/AppNameResolver.java index 35423a72b..00e07761a 100644 --- a/graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/wmclass/AppNameResolver.java +++ b/graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/wmclass/AppNameResolver.java @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.graalvm.wmclass; +package dev.nucleusframework.nucleus.graalvm.wmclass; import java.io.File; import java.io.InputStream; diff --git a/graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/wmclass/IsLinux.java b/graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/wmclass/IsLinux.java similarity index 85% rename from graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/wmclass/IsLinux.java rename to graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/wmclass/IsLinux.java index 785a3c3c6..030ce0b51 100644 --- a/graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/wmclass/IsLinux.java +++ b/graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/wmclass/IsLinux.java @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.graalvm.wmclass; +package dev.nucleusframework.nucleus.graalvm.wmclass; import org.graalvm.nativeimage.Platform; diff --git a/graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/wmclass/XToolkitAppNameSubstitution.java b/graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/wmclass/XToolkitAppNameSubstitution.java similarity index 94% rename from graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/wmclass/XToolkitAppNameSubstitution.java rename to graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/wmclass/XToolkitAppNameSubstitution.java index 79c5f770b..73c8641cc 100644 --- a/graalvm-runtime/src/main/java/io/github/kdroidfilter/nucleus/graalvm/wmclass/XToolkitAppNameSubstitution.java +++ b/graalvm-runtime/src/main/java/dev/nucleusframework/nucleus/graalvm/wmclass/XToolkitAppNameSubstitution.java @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.graalvm.wmclass; +package dev.nucleusframework.nucleus.graalvm.wmclass; import com.oracle.svm.core.annotate.Substitute; import com.oracle.svm.core.annotate.TargetClass; diff --git a/graalvm-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/graalvm/GraalVmInitializer.kt b/graalvm-runtime/src/main/kotlin/dev/nucleusframework/nucleus/graalvm/GraalVmInitializer.kt similarity index 96% rename from graalvm-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/graalvm/GraalVmInitializer.kt rename to graalvm-runtime/src/main/kotlin/dev/nucleusframework/nucleus/graalvm/GraalVmInitializer.kt index 185dd5be7..6870b894b 100644 --- a/graalvm-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/graalvm/GraalVmInitializer.kt +++ b/graalvm-runtime/src/main/kotlin/dev/nucleusframework/nucleus/graalvm/GraalVmInitializer.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.graalvm +package dev.nucleusframework.nucleus.graalvm -import io.github.kdroidfilter.nucleus.hidpi.applyLinuxHiDpiScale +import dev.nucleusframework.nucleus.hidpi.applyLinuxHiDpiScale import java.io.File import java.nio.charset.Charset diff --git a/graalvm-runtime/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.graalvm-runtime/native-image.properties b/graalvm-runtime/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.graalvm-runtime/native-image.properties similarity index 100% rename from graalvm-runtime/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.graalvm-runtime/native-image.properties rename to graalvm-runtime/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.graalvm-runtime/native-image.properties diff --git a/jewel-sample/build.gradle.kts b/jewel-sample/build.gradle.kts index cc7b8ddaf..b35ad41a7 100644 --- a/jewel-sample/build.gradle.kts +++ b/jewel-sample/build.gradle.kts @@ -1,13 +1,13 @@ -import io.github.kdroidfilter.nucleus.desktop.application.dsl.CompressionLevel -import io.github.kdroidfilter.nucleus.desktop.application.dsl.SigningAlgorithm -import io.github.kdroidfilter.nucleus.desktop.application.dsl.TargetFormat +import dev.nucleusframework.nucleus.desktop.application.dsl.CompressionLevel +import dev.nucleusframework.nucleus.desktop.application.dsl.SigningAlgorithm +import dev.nucleusframework.nucleus.desktop.application.dsl.TargetFormat import org.jetbrains.kotlin.gradle.dsl.JvmTarget plugins { kotlin("jvm") alias(libs.plugins.kotlinComposePlugin) alias(libs.plugins.jetbrainsCompose) - id("io.github.kdroidfilter.nucleus") + id("dev.nucleusframework.nucleus") } val isMac = @@ -135,14 +135,14 @@ nucleus.application { homepage = "https://github.com/kdroidFilter/Nucleus" linux { - debMaintainer = "KDroidFilter " + debMaintainer = "NucleusFramework " debDepends = listOf("libfuse2", "libgtk-3-0") } windows { signing { enabled = true - certificateFile.set(rootProject.file("example/packaging/KDroidFilter.pfx")) + certificateFile.set(rootProject.file("example/packaging/NucleusFramework.pfx")) certificatePassword = "ChangeMe-Temp123!" algorithm = SigningAlgorithm.Sha256 timestampServer = "http://timestamp.digicert.com" @@ -150,7 +150,7 @@ nucleus.application { } macOS { - bundleID = "io.github.kdroidfilter.jewelsample" + bundleID = "dev.nucleusframework.jewelsample" dockName = "JewelSample" } } diff --git a/jewel-sample/config/ktlint/baseline.xml b/jewel-sample/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/jewel-sample/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/jewel-sample/proguard-rules.pro b/jewel-sample/proguard-rules.pro index b0a5e9188..3c6c58d77 100644 --- a/jewel-sample/proguard-rules.pro +++ b/jewel-sample/proguard-rules.pro @@ -229,7 +229,7 @@ # --- Fix: Community enum used with valueOf() for Kiddush Levana opinion selection --- # The Community enum is resolved at runtime via Enum.valueOf(code) where code is stored # in AppSettings. If R8/ProGuard optimizes or unboxes this enum, valueOf() will fail. --keep enum io.github.kdroidfilter.seforimapp.features.onboarding.userprofile.Community { *; } +-keep enum dev.nucleusframework.seforimapp.features.onboarding.userprofile.Community { *; } # ============================================================================= @@ -239,43 +239,43 @@ # ============================================================================= # 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) # NativeDarkModeBridge is looked up by name from native code (FindClass + GetStaticMethodID) --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) # NativeLinuxBridge is looked up by name from native code (FindClass + GetStaticMethodID) --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 ; } # Nucleus system-color JNI (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(); @@ -283,38 +283,38 @@ } # Nucleus system-color JNI (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); } # Nucleus system-color JNI (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); } --keep class io.github.kdroidfilter.nucleus.systemcolor.** { *; } +-keep class dev.nucleusframework.nucleus.systemcolor.** { *; } # Nucleus energy-manager JNI (macOS) --keep class io.github.kdroidfilter.nucleus.energymanager.macos.NativeMacOsEnergyBridge { +-keep class dev.nucleusframework.nucleus.energymanager.macos.NativeMacOsEnergyBridge { native ; } # Nucleus energy-manager JNI (Linux) --keep class io.github.kdroidfilter.nucleus.energymanager.linux.NativeLinuxEnergyBridge { +-keep class dev.nucleusframework.nucleus.energymanager.linux.NativeLinuxEnergyBridge { native ; } # Nucleus energy-manager JNI (Windows) --keep class io.github.kdroidfilter.nucleus.energymanager.windows.NativeWindowsEnergyBridge { +-keep class dev.nucleusframework.nucleus.energymanager.windows.NativeWindowsEnergyBridge { native ; } --keep class io.github.kdroidfilter.nucleus.energymanager.** { *; } +-keep class dev.nucleusframework.nucleus.energymanager.** { *; } # Nucleus linux-hidpi JNI --keep class io.github.kdroidfilter.nucleus.hidpi.HiDpiLinuxBridge { +-keep class dev.nucleusframework.nucleus.hidpi.HiDpiLinuxBridge { native ; } diff --git a/jewel-sample/src/main/kotlin/jewelsample/Main.kt b/jewel-sample/src/main/kotlin/jewelsample/Main.kt index 3a38032f9..6032abc05 100644 --- a/jewel-sample/src/main/kotlin/jewelsample/Main.kt +++ b/jewel-sample/src/main/kotlin/jewelsample/Main.kt @@ -15,14 +15,14 @@ import androidx.compose.ui.unit.DpSize import androidx.compose.ui.unit.dp import androidx.compose.ui.window.WindowPosition import androidx.compose.ui.window.rememberWindowState -import io.github.kdroidfilter.nucleus.application.DecoratedWindow -import io.github.kdroidfilter.nucleus.application.NucleusBackend -import io.github.kdroidfilter.nucleus.application.nucleusApplication -import io.github.kdroidfilter.nucleus.darkmodedetector.isSystemInDarkMode -import io.github.kdroidfilter.nucleus.graalvm.GraalVmInitializer -import io.github.kdroidfilter.nucleus.window.NucleusDecoratedWindowTheme -import io.github.kdroidfilter.nucleus.window.jewel.rememberJewelTitleBarStyle -import io.github.kdroidfilter.nucleus.window.jewel.rememberJewelWindowStyle +import dev.nucleusframework.nucleus.application.DecoratedWindow +import dev.nucleusframework.nucleus.application.NucleusBackend +import dev.nucleusframework.nucleus.application.nucleusApplication +import dev.nucleusframework.nucleus.darkmodedetector.isSystemInDarkMode +import dev.nucleusframework.nucleus.graalvm.GraalVmInitializer +import dev.nucleusframework.nucleus.window.NucleusDecoratedWindowTheme +import dev.nucleusframework.nucleus.window.jewel.rememberJewelTitleBarStyle +import dev.nucleusframework.nucleus.window.jewel.rememberJewelWindowStyle import jewelsample.view.TitleBarView import jewelsample.viewmodel.MainViewModel import jewelsample.viewmodel.MainViewModel.currentView diff --git a/jewel-sample/src/main/kotlin/jewelsample/showcase/components/Borders.kt b/jewel-sample/src/main/kotlin/jewelsample/showcase/components/Borders.kt index 79ddcf7e9..999028626 100644 --- a/jewel-sample/src/main/kotlin/jewelsample/showcase/components/Borders.kt +++ b/jewel-sample/src/main/kotlin/jewelsample/showcase/components/Borders.kt @@ -39,7 +39,7 @@ import org.jetbrains.jewel.ui.icons.AllIconsKeys import org.jetbrains.jewel.ui.outline import org.jetbrains.jewel.ui.theme.colorPalette import org.jetbrains.jewel.ui.typography -import org.jetbrains.skiko.Cursor +import java.awt.Cursor @Composable fun Borders(modifier: Modifier = Modifier) { diff --git a/jewel-sample/src/main/kotlin/jewelsample/view/TitleBarView.kt b/jewel-sample/src/main/kotlin/jewelsample/view/TitleBarView.kt index bf44b1ea8..ff5e7c217 100644 --- a/jewel-sample/src/main/kotlin/jewelsample/view/TitleBarView.kt +++ b/jewel-sample/src/main/kotlin/jewelsample/view/TitleBarView.kt @@ -12,10 +12,10 @@ import androidx.compose.runtime.CompositionLocalProvider import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.unit.dp -import io.github.kdroidfilter.nucleus.window.DecoratedWindowScope -import io.github.kdroidfilter.nucleus.window.TitleBar -import io.github.kdroidfilter.nucleus.window.macOSLargeCornerRadius -import io.github.kdroidfilter.nucleus.window.newFullscreenControls +import dev.nucleusframework.nucleus.window.DecoratedWindowScope +import dev.nucleusframework.nucleus.window.TitleBar +import dev.nucleusframework.nucleus.window.macOSLargeCornerRadius +import dev.nucleusframework.nucleus.window.newFullscreenControls import jewelsample.IntUiThemes import jewelsample.showcase.ShowcaseIcons import jewelsample.showcase.views.forCurrentOs diff --git a/jewel-sample/src/main/packaging/Info.plist b/jewel-sample/src/main/packaging/Info.plist index 11e472308..189da35af 100644 --- a/jewel-sample/src/main/packaging/Info.plist +++ b/jewel-sample/src/main/packaging/Info.plist @@ -7,7 +7,7 @@ CFBundleDisplayName Jewel Sample CFBundleIdentifier - io.github.kdroidfilter.composedeskkit.jewelsample + dev.nucleusframework.composedeskkit.jewelsample CFBundleVersion 1.0.0 CFBundleShortVersionString diff --git a/launcher-linux/build.gradle.kts b/launcher-linux/build.gradle.kts index c9067b516..da3a07efc 100644 --- a/launcher-linux/build.gradle.kts +++ b/launcher-linux/build.gradle.kts @@ -60,7 +60,7 @@ tasks.configureEach { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.launcher-linux", publishVersion) + coordinates("dev.nucleusframework", "nucleus.launcher-linux", publishVersion) pom { name.set("Nucleus Launcher Linux") @@ -76,7 +76,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/launcher-linux/config/ktlint/baseline.xml b/launcher-linux/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/launcher-linux/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/launcher-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/linux/DbusmenuItem.kt b/launcher-linux/src/main/kotlin/dev/nucleusframework/nucleus/launcher/linux/DbusmenuItem.kt similarity index 94% rename from launcher-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/linux/DbusmenuItem.kt rename to launcher-linux/src/main/kotlin/dev/nucleusframework/nucleus/launcher/linux/DbusmenuItem.kt index a3607c1b8..618d47954 100644 --- a/launcher-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/linux/DbusmenuItem.kt +++ b/launcher-linux/src/main/kotlin/dev/nucleusframework/nucleus/launcher/linux/DbusmenuItem.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.launcher.linux +package dev.nucleusframework.nucleus.launcher.linux -import io.github.kdroidfilter.nucleus.freedesktop.icons.FreedesktopIcon +import dev.nucleusframework.nucleus.freedesktop.icons.FreedesktopIcon /** * Represents a single menu item in a `com.canonical.dbusmenu` quicklist. diff --git a/launcher-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/linux/LauncherProperties.kt b/launcher-linux/src/main/kotlin/dev/nucleusframework/nucleus/launcher/linux/LauncherProperties.kt similarity index 94% rename from launcher-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/linux/LauncherProperties.kt rename to launcher-linux/src/main/kotlin/dev/nucleusframework/nucleus/launcher/linux/LauncherProperties.kt index 5a0b55e99..5236883f1 100644 --- a/launcher-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/linux/LauncherProperties.kt +++ b/launcher-linux/src/main/kotlin/dev/nucleusframework/nucleus/launcher/linux/LauncherProperties.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.launcher.linux +package dev.nucleusframework.nucleus.launcher.linux /** * Properties that can be set on a Unity Launcher entry. diff --git a/launcher-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/linux/LinuxLauncherEntry.kt b/launcher-linux/src/main/kotlin/dev/nucleusframework/nucleus/launcher/linux/LinuxLauncherEntry.kt similarity index 98% rename from launcher-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/linux/LinuxLauncherEntry.kt rename to launcher-linux/src/main/kotlin/dev/nucleusframework/nucleus/launcher/linux/LinuxLauncherEntry.kt index 2782d61f1..702d7b578 100644 --- a/launcher-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/linux/LinuxLauncherEntry.kt +++ b/launcher-linux/src/main/kotlin/dev/nucleusframework/nucleus/launcher/linux/LinuxLauncherEntry.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.launcher.linux +package dev.nucleusframework.nucleus.launcher.linux /** * Entry point for the Unity Launcher API on Linux. diff --git a/launcher-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/linux/LinuxQuicklist.kt b/launcher-linux/src/main/kotlin/dev/nucleusframework/nucleus/launcher/linux/LinuxQuicklist.kt similarity index 98% rename from launcher-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/linux/LinuxQuicklist.kt rename to launcher-linux/src/main/kotlin/dev/nucleusframework/nucleus/launcher/linux/LinuxQuicklist.kt index 751cd593d..5c726f5f9 100644 --- a/launcher-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/linux/LinuxQuicklist.kt +++ b/launcher-linux/src/main/kotlin/dev/nucleusframework/nucleus/launcher/linux/LinuxQuicklist.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.launcher.linux +package dev.nucleusframework.nucleus.launcher.linux import javax.swing.SwingUtilities diff --git a/launcher-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/linux/NativeLinuxLauncherBridge.kt b/launcher-linux/src/main/kotlin/dev/nucleusframework/nucleus/launcher/linux/NativeLinuxLauncherBridge.kt similarity index 94% rename from launcher-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/linux/NativeLinuxLauncherBridge.kt rename to launcher-linux/src/main/kotlin/dev/nucleusframework/nucleus/launcher/linux/NativeLinuxLauncherBridge.kt index c061ed5dc..ecf60b6af 100644 --- a/launcher-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/linux/NativeLinuxLauncherBridge.kt +++ b/launcher-linux/src/main/kotlin/dev/nucleusframework/nucleus/launcher/linux/NativeLinuxLauncherBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.launcher.linux +package dev.nucleusframework.nucleus.launcher.linux -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader private const val LIBRARY_NAME = "nucleus_launcher_linux" diff --git a/launcher-linux/src/main/native/linux/nucleus_launcher_linux.c b/launcher-linux/src/main/native/linux/nucleus_launcher_linux.c index 9c35326d2..f335fd983 100644 --- a/launcher-linux/src/main/native/linux/nucleus_launcher_linux.c +++ b/launcher-linux/src/main/native/linux/nucleus_launcher_linux.c @@ -208,7 +208,7 @@ static GDBusConnection *get_connection(void) { static int ensure_callback_ids(JNIEnv *env) { if (g_bridge_class != NULL) return 1; jclass cls = (*env)->FindClass(env, - "io/github/kdroidfilter/nucleus/launcher/linux/NativeLinuxLauncherBridge"); + "dev/nucleusframework/nucleus/launcher/linux/NativeLinuxLauncherBridge"); if (!cls) { if ((*env)->ExceptionCheck(env)) (*env)->ExceptionClear(env); return 0; } g_bridge_class = (jclass)(*env)->NewGlobalRef(env, cls); (*env)->DeleteLocalRef(env, cls); @@ -254,7 +254,7 @@ static GVariant *build_properties_variant( /* ===================================================================== */ JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_linux_NativeLinuxLauncherBridge_nativeUpdate( +Java_dev_nucleusframework_nucleus_launcher_linux_NativeLinuxLauncherBridge_nativeUpdate( JNIEnv *env, jclass clazz, jstring j_app_uri, jboolean has_count, jlong count, jint count_visible, jboolean has_progress, jdouble progress, jint progress_visible, @@ -359,7 +359,7 @@ static void *query_thread_func(void *arg) { } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_linux_NativeLinuxLauncherBridge_nativeRegisterQueryHandler( +Java_dev_nucleusframework_nucleus_launcher_linux_NativeLinuxLauncherBridge_nativeRegisterQueryHandler( JNIEnv *env, jclass clazz, jstring j_app_uri) { (void)clazz; @@ -395,7 +395,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_linux_NativeLinuxLauncherBridge_nat } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_linux_NativeLinuxLauncherBridge_nativeSetState( +Java_dev_nucleusframework_nucleus_launcher_linux_NativeLinuxLauncherBridge_nativeSetState( JNIEnv *env, jclass clazz, jboolean has_count, jlong count, jint count_visible, jboolean has_progress, jdouble progress, jint progress_visible, @@ -416,7 +416,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_linux_NativeLinuxLauncherBridge_nat } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_linux_NativeLinuxLauncherBridge_nativeUnregister( +Java_dev_nucleusframework_nucleus_launcher_linux_NativeLinuxLauncherBridge_nativeUnregister( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -753,7 +753,7 @@ static void free_menu_item(MenuItem *item) { /* ===================================================================== */ JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_linux_NativeLinuxLauncherBridge_nativeSetMenu( +Java_dev_nucleusframework_nucleus_launcher_linux_NativeLinuxLauncherBridge_nativeSetMenu( JNIEnv *env, jclass clazz, jstring j_object_path, jintArray j_ids, jintArray j_parent_ids, @@ -918,7 +918,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_linux_NativeLinuxLauncherBridge_nat /* ===================================================================== */ JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_linux_NativeLinuxLauncherBridge_nativeDestroyMenu( +Java_dev_nucleusframework_nucleus_launcher_linux_NativeLinuxLauncherBridge_nativeDestroyMenu( JNIEnv *env, jclass clazz, jstring j_object_path) { (void)clazz; diff --git a/launcher-macos/build.gradle.kts b/launcher-macos/build.gradle.kts index e6ed6c13f..b0ce281ab 100644 --- a/launcher-macos/build.gradle.kts +++ b/launcher-macos/build.gradle.kts @@ -59,7 +59,7 @@ tasks.configureEach { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.launcher-macos", publishVersion) + coordinates("dev.nucleusframework", "nucleus.launcher-macos", publishVersion) pom { name.set("Nucleus Launcher macOS") @@ -75,7 +75,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/launcher-macos/config/ktlint/baseline.xml b/launcher-macos/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/launcher-macos/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/launcher-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/macos/DockMenuItem.kt b/launcher-macos/src/main/kotlin/dev/nucleusframework/nucleus/launcher/macos/DockMenuItem.kt similarity index 94% rename from launcher-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/macos/DockMenuItem.kt rename to launcher-macos/src/main/kotlin/dev/nucleusframework/nucleus/launcher/macos/DockMenuItem.kt index 9ef244e90..19a8c8f67 100644 --- a/launcher-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/macos/DockMenuItem.kt +++ b/launcher-macos/src/main/kotlin/dev/nucleusframework/nucleus/launcher/macos/DockMenuItem.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.launcher.macos +package dev.nucleusframework.nucleus.launcher.macos /** * Represents a single item in the macOS dock context menu. diff --git a/launcher-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/macos/DockMenuListener.kt b/launcher-macos/src/main/kotlin/dev/nucleusframework/nucleus/launcher/macos/DockMenuListener.kt similarity index 78% rename from launcher-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/macos/DockMenuListener.kt rename to launcher-macos/src/main/kotlin/dev/nucleusframework/nucleus/launcher/macos/DockMenuListener.kt index 1e6103203..dff7bbcb1 100644 --- a/launcher-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/macos/DockMenuListener.kt +++ b/launcher-macos/src/main/kotlin/dev/nucleusframework/nucleus/launcher/macos/DockMenuListener.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.launcher.macos +package dev.nucleusframework.nucleus.launcher.macos /** Listener for dock menu item clicks. */ fun interface DockMenuListener { diff --git a/launcher-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/macos/MacOsDockMenu.kt b/launcher-macos/src/main/kotlin/dev/nucleusframework/nucleus/launcher/macos/MacOsDockMenu.kt similarity index 97% rename from launcher-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/macos/MacOsDockMenu.kt rename to launcher-macos/src/main/kotlin/dev/nucleusframework/nucleus/launcher/macos/MacOsDockMenu.kt index b35823396..623effdb6 100644 --- a/launcher-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/macos/MacOsDockMenu.kt +++ b/launcher-macos/src/main/kotlin/dev/nucleusframework/nucleus/launcher/macos/MacOsDockMenu.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.launcher.macos +package dev.nucleusframework.nucleus.launcher.macos /** * macOS dock context menu integration via JNI. diff --git a/launcher-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/macos/NativeMacOsDockMenuBridge.kt b/launcher-macos/src/main/kotlin/dev/nucleusframework/nucleus/launcher/macos/NativeMacOsDockMenuBridge.kt similarity index 85% rename from launcher-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/macos/NativeMacOsDockMenuBridge.kt rename to launcher-macos/src/main/kotlin/dev/nucleusframework/nucleus/launcher/macos/NativeMacOsDockMenuBridge.kt index 6a05b8b1e..4afc2ff3b 100644 --- a/launcher-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/macos/NativeMacOsDockMenuBridge.kt +++ b/launcher-macos/src/main/kotlin/dev/nucleusframework/nucleus/launcher/macos/NativeMacOsDockMenuBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.launcher.macos +package dev.nucleusframework.nucleus.launcher.macos -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader import javax.swing.SwingUtilities private const val LIBRARY_NAME = "nucleus_launcher_macos" diff --git a/launcher-macos/src/main/native/macos/nucleus_launcher_macos.m b/launcher-macos/src/main/native/macos/nucleus_launcher_macos.m index 75616e178..bf0512bff 100644 --- a/launcher-macos/src/main/native/macos/nucleus_launcher_macos.m +++ b/launcher-macos/src/main/native/macos/nucleus_launcher_macos.m @@ -21,7 +21,7 @@ static NSMenu *g_dockMenu = nil; static BOOL g_swizzled = NO; -#define BRIDGE_CLASS "io/github/kdroidfilter/nucleus/launcher/macos/NativeMacOsDockMenuBridge" +#define BRIDGE_CLASS "dev/nucleusframework/nucleus/launcher/macos/NativeMacOsDockMenuBridge" // ============================================================================ // JNI helpers @@ -257,7 +257,7 @@ static void freeMenuData(MenuItemData *data, jsize count) { // ============================================================================ JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_macos_NativeMacOsDockMenuBridge_nativeSetDockMenu( +Java_dev_nucleusframework_nucleus_launcher_macos_NativeMacOsDockMenuBridge_nativeSetDockMenu( JNIEnv *env, jclass clazz, jintArray ids, jobjectArray titles, jbooleanArray enabled, jintArray parentIndices, jbooleanArray separators) { @@ -277,7 +277,7 @@ static void freeMenuData(MenuItemData *data, jsize count) { } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_macos_NativeMacOsDockMenuBridge_nativeClearDockMenu( +Java_dev_nucleusframework_nucleus_launcher_macos_NativeMacOsDockMenuBridge_nativeClearDockMenu( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; diff --git a/launcher-windows/build.gradle.kts b/launcher-windows/build.gradle.kts index 55dce7562..06f7c1bb9 100644 --- a/launcher-windows/build.gradle.kts +++ b/launcher-windows/build.gradle.kts @@ -54,7 +54,7 @@ tasks.configureEach { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.launcher-windows", publishVersion) + coordinates("dev.nucleusframework", "nucleus.launcher-windows", publishVersion) pom { name.set("Nucleus Launcher Windows") @@ -70,7 +70,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/launcher-windows/config/ktlint/baseline.xml b/launcher-windows/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/launcher-windows/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/BadgeGlyph.kt b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/BadgeGlyph.kt similarity index 92% rename from launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/BadgeGlyph.kt rename to launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/BadgeGlyph.kt index 09eaa01d6..732ffcccf 100644 --- a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/BadgeGlyph.kt +++ b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/BadgeGlyph.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.launcher.windows +package dev.nucleusframework.nucleus.launcher.windows /** * Predefined badge glyph icons for Windows badge notifications. diff --git a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/JumpListCategory.kt b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/JumpListCategory.kt similarity index 87% rename from launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/JumpListCategory.kt rename to launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/JumpListCategory.kt index 843aa8b8b..95d327728 100644 --- a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/JumpListCategory.kt +++ b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/JumpListCategory.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.launcher.windows +package dev.nucleusframework.nucleus.launcher.windows /** * A named category in a Windows Jump List. diff --git a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/JumpListItem.kt b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/JumpListItem.kt similarity index 95% rename from launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/JumpListItem.kt rename to launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/JumpListItem.kt index 0de64d455..07d932843 100644 --- a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/JumpListItem.kt +++ b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/JumpListItem.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.launcher.windows +package dev.nucleusframework.nucleus.launcher.windows /** * A single item in a Windows Jump List (custom category or user task). diff --git a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/KnownCategory.kt b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/KnownCategory.kt similarity index 87% rename from launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/KnownCategory.kt rename to launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/KnownCategory.kt index 95fc73bde..83be8dc69 100644 --- a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/KnownCategory.kt +++ b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/KnownCategory.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.launcher.windows +package dev.nucleusframework.nucleus.launcher.windows /** * Built-in jump list categories managed by Windows. diff --git a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/NativeWindowsBadgeBridge.kt b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/NativeWindowsBadgeBridge.kt similarity index 83% rename from launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/NativeWindowsBadgeBridge.kt rename to launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/NativeWindowsBadgeBridge.kt index bcb589406..055069c11 100644 --- a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/NativeWindowsBadgeBridge.kt +++ b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/NativeWindowsBadgeBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.launcher.windows +package dev.nucleusframework.nucleus.launcher.windows -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader private const val LIBRARY_NAME = "nucleus_launcher_windows" diff --git a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/NativeWindowsJumpListBridge.kt b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/NativeWindowsJumpListBridge.kt similarity index 91% rename from launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/NativeWindowsJumpListBridge.kt rename to launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/NativeWindowsJumpListBridge.kt index dc6f7c3fc..771dfee6e 100644 --- a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/NativeWindowsJumpListBridge.kt +++ b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/NativeWindowsJumpListBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.launcher.windows +package dev.nucleusframework.nucleus.launcher.windows -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader private const val LIBRARY_NAME = "nucleus_launcher_windows" diff --git a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/NativeWindowsTaskbarBridge.kt b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/NativeWindowsTaskbarBridge.kt similarity index 92% rename from launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/NativeWindowsTaskbarBridge.kt rename to launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/NativeWindowsTaskbarBridge.kt index a8075e31f..5caa7c12f 100644 --- a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/NativeWindowsTaskbarBridge.kt +++ b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/NativeWindowsTaskbarBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.launcher.windows +package dev.nucleusframework.nucleus.launcher.windows -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader import java.awt.Window private const val LIBRARY_NAME = "nucleus_launcher_windows" diff --git a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/StockIcon.kt b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/StockIcon.kt similarity index 98% rename from launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/StockIcon.kt rename to launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/StockIcon.kt index e7caa588d..f49a6addd 100644 --- a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/StockIcon.kt +++ b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/StockIcon.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.launcher.windows +package dev.nucleusframework.nucleus.launcher.windows /** * Type-safe mapping of Windows Shell Stock Icons ([SHSTOCKICONID]). diff --git a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/TaskbarIconSource.kt b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/TaskbarIconSource.kt similarity index 93% rename from launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/TaskbarIconSource.kt rename to launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/TaskbarIconSource.kt index eb6e55ae8..f46b91c0b 100644 --- a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/TaskbarIconSource.kt +++ b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/TaskbarIconSource.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.launcher.windows +package dev.nucleusframework.nucleus.launcher.windows /** * Source for a Windows taskbar icon (overlay icons, thumbnail toolbar buttons, jump list items). diff --git a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/ThumbBarClickListener.kt b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/ThumbBarClickListener.kt similarity index 83% rename from launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/ThumbBarClickListener.kt rename to launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/ThumbBarClickListener.kt index dd747a071..7b2d26773 100644 --- a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/ThumbBarClickListener.kt +++ b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/ThumbBarClickListener.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.launcher.windows +package dev.nucleusframework.nucleus.launcher.windows /** * Callback for thumbnail toolbar button clicks. diff --git a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/ThumbnailToolbarButton.kt b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/ThumbnailToolbarButton.kt similarity index 97% rename from launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/ThumbnailToolbarButton.kt rename to launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/ThumbnailToolbarButton.kt index 961d5959f..ef23b0b6e 100644 --- a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/ThumbnailToolbarButton.kt +++ b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/ThumbnailToolbarButton.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.launcher.windows +package dev.nucleusframework.nucleus.launcher.windows /** * A button on the Windows taskbar thumbnail toolbar. diff --git a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/WindowsBadgeManager.kt b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/WindowsBadgeManager.kt similarity index 96% rename from launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/WindowsBadgeManager.kt rename to launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/WindowsBadgeManager.kt index 4b84cdaa1..c27a1b213 100644 --- a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/WindowsBadgeManager.kt +++ b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/WindowsBadgeManager.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.launcher.windows +package dev.nucleusframework.nucleus.launcher.windows -import io.github.kdroidfilter.nucleus.core.runtime.ExecutableRuntime -import io.github.kdroidfilter.nucleus.core.runtime.NucleusApp +import dev.nucleusframework.nucleus.core.runtime.ExecutableRuntime +import dev.nucleusframework.nucleus.core.runtime.NucleusApp import java.util.logging.Logger /** diff --git a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/WindowsJumpListManager.kt b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/WindowsJumpListManager.kt similarity index 97% rename from launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/WindowsJumpListManager.kt rename to launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/WindowsJumpListManager.kt index 65f2f4be9..2f5837e83 100644 --- a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/WindowsJumpListManager.kt +++ b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/WindowsJumpListManager.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.launcher.windows +package dev.nucleusframework.nucleus.launcher.windows -import io.github.kdroidfilter.nucleus.core.runtime.ExecutableRuntime -import io.github.kdroidfilter.nucleus.core.runtime.NucleusApp +import dev.nucleusframework.nucleus.core.runtime.ExecutableRuntime +import dev.nucleusframework.nucleus.core.runtime.NucleusApp import java.util.logging.Logger /** diff --git a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/WindowsOverlayIcon.kt b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/WindowsOverlayIcon.kt similarity index 98% rename from launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/WindowsOverlayIcon.kt rename to launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/WindowsOverlayIcon.kt index e8d7bb9f5..0114502df 100644 --- a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/WindowsOverlayIcon.kt +++ b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/WindowsOverlayIcon.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.launcher.windows +package dev.nucleusframework.nucleus.launcher.windows import java.awt.Window import java.util.logging.Logger diff --git a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/WindowsThumbnailToolbar.kt b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/WindowsThumbnailToolbar.kt similarity index 99% rename from launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/WindowsThumbnailToolbar.kt rename to launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/WindowsThumbnailToolbar.kt index db1071044..273de453e 100644 --- a/launcher-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/launcher/windows/WindowsThumbnailToolbar.kt +++ b/launcher-windows/src/main/kotlin/dev/nucleusframework/nucleus/launcher/windows/WindowsThumbnailToolbar.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.launcher.windows +package dev.nucleusframework.nucleus.launcher.windows import java.awt.Window import java.util.concurrent.ConcurrentHashMap diff --git a/launcher-windows/src/main/native/windows/nucleus_launcher_windows.cpp b/launcher-windows/src/main/native/windows/nucleus_launcher_windows.cpp index a91b37502..6cfb0c6f1 100644 --- a/launcher-windows/src/main/native/windows/nucleus_launcher_windows.cpp +++ b/launcher-windows/src/main/native/windows/nucleus_launcher_windows.cpp @@ -313,7 +313,7 @@ static HRESULT setBadgeXml(const std::wstring &value) { extern "C" { JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsBadgeBridge_nativeInitialize( +Java_dev_nucleusframework_nucleus_launcher_windows_NativeWindowsBadgeBridge_nativeInitialize( JNIEnv *env, jclass clazz, jstring jAumid, jboolean jIsAppx ) { std::lock_guard lock(g_mutex); @@ -357,7 +357,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsBadgeBridge_na } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsBadgeBridge_nativeSetBadgeNumber( +Java_dev_nucleusframework_nucleus_launcher_windows_NativeWindowsBadgeBridge_nativeSetBadgeNumber( JNIEnv *env, jclass clazz, jint value ) { std::lock_guard lock(g_mutex); @@ -370,7 +370,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsBadgeBridge_na } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsBadgeBridge_nativeSetBadgeGlyph( +Java_dev_nucleusframework_nucleus_launcher_windows_NativeWindowsBadgeBridge_nativeSetBadgeGlyph( JNIEnv *env, jclass clazz, jstring jGlyph ) { std::lock_guard lock(g_mutex); @@ -383,7 +383,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsBadgeBridge_na } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsBadgeBridge_nativeClearBadge( +Java_dev_nucleusframework_nucleus_launcher_windows_NativeWindowsBadgeBridge_nativeClearBadge( JNIEnv *env, jclass clazz ) { std::lock_guard lock(g_mutex); @@ -394,7 +394,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsBadgeBridge_na } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsBadgeBridge_nativeUninitialize( +Java_dev_nucleusframework_nucleus_launcher_windows_NativeWindowsBadgeBridge_nativeUninitialize( JNIEnv *env, jclass clazz ) { std::lock_guard lock(g_mutex); @@ -408,7 +408,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsBadgeBridge_na // ============================================================================ JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsJumpListBridge_nativeSetProcessAppId( +Java_dev_nucleusframework_nucleus_launcher_windows_NativeWindowsJumpListBridge_nativeSetProcessAppId( JNIEnv *env, jclass clazz, jstring jAumid ) { std::wstring aumid = toWString(env, jAumid); @@ -426,7 +426,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsJumpListBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsJumpListBridge_nativeBeginList( +Java_dev_nucleusframework_nucleus_launcher_windows_NativeWindowsJumpListBridge_nativeBeginList( JNIEnv *env, jclass clazz, jstring jAumid, jboolean jIsAppx ) { std::lock_guard lock(g_jl_mutex); @@ -468,7 +468,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsJumpListBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsJumpListBridge_nativeAppendCategory( +Java_dev_nucleusframework_nucleus_launcher_windows_NativeWindowsJumpListBridge_nativeAppendCategory( JNIEnv *env, jclass clazz, jstring jName, jobjectArray jTitles, jobjectArray jArguments, jobjectArray jDescriptions, jintArray jIconTypes, jobjectArray jIconPaths, jintArray jIconIndices @@ -517,7 +517,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsJumpListBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsJumpListBridge_nativeAppendKnownCategory( +Java_dev_nucleusframework_nucleus_launcher_windows_NativeWindowsJumpListBridge_nativeAppendKnownCategory( JNIEnv *env, jclass clazz, jint categoryId ) { std::lock_guard lock(g_jl_mutex); @@ -530,7 +530,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsJumpListBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsJumpListBridge_nativeAddUserTasks( +Java_dev_nucleusframework_nucleus_launcher_windows_NativeWindowsJumpListBridge_nativeAddUserTasks( JNIEnv *env, jclass clazz, jobjectArray jTitles, jobjectArray jArguments, jobjectArray jDescriptions, jintArray jIconTypes, jobjectArray jIconPaths, jintArray jIconIndices, @@ -584,7 +584,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsJumpListBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsJumpListBridge_nativeCommitList( +Java_dev_nucleusframework_nucleus_launcher_windows_NativeWindowsJumpListBridge_nativeCommitList( JNIEnv *env, jclass clazz ) { std::lock_guard lock(g_jl_mutex); @@ -598,7 +598,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsJumpListBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsJumpListBridge_nativeDeleteList( +Java_dev_nucleusframework_nucleus_launcher_windows_NativeWindowsJumpListBridge_nativeDeleteList( JNIEnv *env, jclass clazz, jstring jAumid, jboolean jIsAppx ) { std::lock_guard lock(g_jl_mutex); @@ -777,7 +777,7 @@ static void CleanupThumbBarState(JNIEnv *env, HWND hwnd) { // ============================================================================ JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsTaskbarBridge_nativeGetHwnd( +Java_dev_nucleusframework_nucleus_launcher_windows_NativeWindowsTaskbarBridge_nativeGetHwnd( JNIEnv *env, jclass, jobject awtWindow) { HWND hwnd = GetHwndFromAwtWindow(env, awtWindow); @@ -789,7 +789,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsTaskbarBridge_ // ============================================================================ JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsTaskbarBridge_nativeSetOverlayIcon( +Java_dev_nucleusframework_nucleus_launcher_windows_NativeWindowsTaskbarBridge_nativeSetOverlayIcon( JNIEnv *env, jclass, jobject awtWindow, jint iconType, jstring jIconPath, jint iconIndex, jstring jDescription) { @@ -812,7 +812,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsTaskbarBridge_ } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsTaskbarBridge_nativeClearOverlayIcon( +Java_dev_nucleusframework_nucleus_launcher_windows_NativeWindowsTaskbarBridge_nativeClearOverlayIcon( JNIEnv *env, jclass, jobject awtWindow) { std::lock_guard lock(g_tb_mutex); @@ -831,7 +831,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsTaskbarBridge_ // ============================================================================ JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsTaskbarBridge_nativeThumbBarSetButtons( +Java_dev_nucleusframework_nucleus_launcher_windows_NativeWindowsTaskbarBridge_nativeThumbBarSetButtons( JNIEnv *env, jclass, jobject awtWindow, jintArray jIds, jobjectArray jTooltips, jintArray jFlags, jintArray jIconTypes, jobjectArray jIconPaths, jintArray jIconIndices, @@ -885,7 +885,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsTaskbarBridge_ // Resolve the method via the interface class, not GetObjectClass(jCallback). // Kotlin's `fun interface` lambdas produce synthetic classes that are not // registered as JNI-accessible under GraalVM native-image. - jclass cbClass = env->FindClass("io/github/kdroidfilter/nucleus/launcher/windows/ThumbBarClickListener"); + jclass cbClass = env->FindClass("dev/nucleusframework/nucleus/launcher/windows/ThumbBarClickListener"); jmethodID method = cbClass ? env->GetMethodID(cbClass, "onThumbButtonClick", "(I)V") : nullptr; if (cbClass) env->DeleteLocalRef(cbClass); if (method) { @@ -933,7 +933,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsTaskbarBridge_ state->buttonsAdded = true; if (jCallback) { - jclass cbClass = env->FindClass("io/github/kdroidfilter/nucleus/launcher/windows/ThumbBarClickListener"); + jclass cbClass = env->FindClass("dev/nucleusframework/nucleus/launcher/windows/ThumbBarClickListener"); jmethodID method = cbClass ? env->GetMethodID(cbClass, "onThumbButtonClick", "(I)V") : nullptr; if (cbClass) env->DeleteLocalRef(cbClass); if (method) { @@ -948,7 +948,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsTaskbarBridge_ } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsTaskbarBridge_nativeThumbBarUpdateButtons( +Java_dev_nucleusframework_nucleus_launcher_windows_NativeWindowsTaskbarBridge_nativeThumbBarUpdateButtons( JNIEnv *env, jclass, jobject awtWindow, jintArray jIds, jobjectArray jTooltips, jintArray jFlags, jintArray jIconTypes, jobjectArray jIconPaths, jintArray jIconIndices) @@ -993,7 +993,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsTaskbarBridge_ } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsTaskbarBridge_nativeThumbBarUnregister( +Java_dev_nucleusframework_nucleus_launcher_windows_NativeWindowsTaskbarBridge_nativeThumbBarUnregister( JNIEnv *env, jclass, jobject awtWindow) { std::lock_guard lock(g_tb_mutex); @@ -1004,7 +1004,7 @@ Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsTaskbarBridge_ } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_launcher_windows_NativeWindowsTaskbarBridge_nativeThumbBarUnregisterByHwnd( +Java_dev_nucleusframework_nucleus_launcher_windows_NativeWindowsTaskbarBridge_nativeThumbBarUnregisterByHwnd( JNIEnv *env, jclass, jlong jHwnd) { std::lock_guard lock(g_tb_mutex); diff --git a/launcher-windows/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.launcher-windows/reachability-metadata.json b/launcher-windows/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.launcher-windows/reachability-metadata.json similarity index 54% rename from launcher-windows/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.launcher-windows/reachability-metadata.json rename to launcher-windows/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.launcher-windows/reachability-metadata.json index 0af9af427..c2ab6f445 100644 --- a/launcher-windows/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.launcher-windows/reachability-metadata.json +++ b/launcher-windows/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.launcher-windows/reachability-metadata.json @@ -1,19 +1,19 @@ { "reflection": [ { - "type": "io.github.kdroidfilter.nucleus.launcher.windows.NativeWindowsBadgeBridge", + "type": "dev.nucleusframework.nucleus.launcher.windows.NativeWindowsBadgeBridge", "jniAccessible": true }, { - "type": "io.github.kdroidfilter.nucleus.launcher.windows.NativeWindowsJumpListBridge", + "type": "dev.nucleusframework.nucleus.launcher.windows.NativeWindowsJumpListBridge", "jniAccessible": true }, { - "type": "io.github.kdroidfilter.nucleus.launcher.windows.NativeWindowsTaskbarBridge", + "type": "dev.nucleusframework.nucleus.launcher.windows.NativeWindowsTaskbarBridge", "jniAccessible": true }, { - "type": "io.github.kdroidfilter.nucleus.launcher.windows.ThumbBarClickListener", + "type": "dev.nucleusframework.nucleus.launcher.windows.ThumbBarClickListener", "jniAccessible": true, "methods": [ { diff --git a/linux-hidpi/build.gradle.kts b/linux-hidpi/build.gradle.kts index cdef09d7e..c51d8e859 100644 --- a/linux-hidpi/build.gradle.kts +++ b/linux-hidpi/build.gradle.kts @@ -59,7 +59,7 @@ tasks.configureEach { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.linux-hidpi", publishVersion) + coordinates("dev.nucleusframework", "nucleus.linux-hidpi", publishVersion) pom { name.set("Nucleus Linux HiDPI") @@ -77,7 +77,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/linux-hidpi/config/ktlint/baseline.xml b/linux-hidpi/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/linux-hidpi/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/linux-hidpi/src/main/kotlin/io/github/kdroidfilter/nucleus/hidpi/HiDpiLinuxBridge.kt b/linux-hidpi/src/main/kotlin/dev/nucleusframework/nucleus/hidpi/HiDpiLinuxBridge.kt similarity index 88% rename from linux-hidpi/src/main/kotlin/io/github/kdroidfilter/nucleus/hidpi/HiDpiLinuxBridge.kt rename to linux-hidpi/src/main/kotlin/dev/nucleusframework/nucleus/hidpi/HiDpiLinuxBridge.kt index c99459a96..8cec1892c 100644 --- a/linux-hidpi/src/main/kotlin/io/github/kdroidfilter/nucleus/hidpi/HiDpiLinuxBridge.kt +++ b/linux-hidpi/src/main/kotlin/dev/nucleusframework/nucleus/hidpi/HiDpiLinuxBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.hidpi +package dev.nucleusframework.nucleus.hidpi -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader private const val LIBRARY_NAME = "nucleus_linux_hidpi_jni" diff --git a/linux-hidpi/src/main/kotlin/io/github/kdroidfilter/nucleus/hidpi/LinuxHiDpi.kt b/linux-hidpi/src/main/kotlin/dev/nucleusframework/nucleus/hidpi/LinuxHiDpi.kt similarity index 98% rename from linux-hidpi/src/main/kotlin/io/github/kdroidfilter/nucleus/hidpi/LinuxHiDpi.kt rename to linux-hidpi/src/main/kotlin/dev/nucleusframework/nucleus/hidpi/LinuxHiDpi.kt index 36cee140b..0f3b35b52 100644 --- a/linux-hidpi/src/main/kotlin/io/github/kdroidfilter/nucleus/hidpi/LinuxHiDpi.kt +++ b/linux-hidpi/src/main/kotlin/dev/nucleusframework/nucleus/hidpi/LinuxHiDpi.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.hidpi +package dev.nucleusframework.nucleus.hidpi /** * Returns the native HiDPI scale factor for the current Linux display, diff --git a/linux-hidpi/src/main/native/linux/nucleus_hidpi_linux.c b/linux-hidpi/src/main/native/linux/nucleus_hidpi_linux.c index fa680b10d..800aa1cd8 100644 --- a/linux-hidpi/src/main/native/linux/nucleus_hidpi_linux.c +++ b/linux-hidpi/src/main/native/linux/nucleus_hidpi_linux.c @@ -158,7 +158,7 @@ static double readXftScale(void) { /* nativeGetScaleFactor — JNI entry point */ /* ------------------------------------------------------------------ */ JNIEXPORT jdouble JNICALL -Java_io_github_kdroidfilter_nucleus_hidpi_HiDpiLinuxBridge_nativeGetScaleFactor( +Java_dev_nucleusframework_nucleus_hidpi_HiDpiLinuxBridge_nativeGetScaleFactor( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -198,7 +198,7 @@ Java_io_github_kdroidfilter_nucleus_hidpi_HiDpiLinuxBridge_nativeGetScaleFactor( /* by the desktop session. */ /* ------------------------------------------------------------------ */ JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_hidpi_HiDpiLinuxBridge_nativeApplyScaleToEnv( +Java_dev_nucleusframework_nucleus_hidpi_HiDpiLinuxBridge_nativeApplyScaleToEnv( JNIEnv *env, jclass clazz, jint scale) { (void)env; (void)clazz; diff --git a/linux-hidpi/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.linux-hidpi/native-image.properties b/linux-hidpi/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.linux-hidpi/native-image.properties new file mode 100644 index 000000000..d7626f2aa --- /dev/null +++ b/linux-hidpi/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.linux-hidpi/native-image.properties @@ -0,0 +1 @@ +Args = --initialize-at-run-time=dev.nucleusframework.nucleus.hidpi.HiDpiLinuxBridge diff --git a/linux-hidpi/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.linux-hidpi/native-image.properties b/linux-hidpi/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.linux-hidpi/native-image.properties deleted file mode 100644 index abf6be571..000000000 --- a/linux-hidpi/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.linux-hidpi/native-image.properties +++ /dev/null @@ -1 +0,0 @@ -Args = --initialize-at-run-time=io.github.kdroidfilter.nucleus.hidpi.HiDpiLinuxBridge diff --git a/media-control/build.gradle.kts b/media-control/build.gradle.kts index b5e52cab5..c1046fabb 100644 --- a/media-control/build.gradle.kts +++ b/media-control/build.gradle.kts @@ -102,7 +102,7 @@ tasks.configureEach { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.media-control", publishVersion) + coordinates("dev.nucleusframework", "nucleus.media-control", publishVersion) pom { name.set("Nucleus Media Control") @@ -121,7 +121,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/media-control/config/ktlint/baseline.xml b/media-control/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/media-control/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/MediaControlEvent.kt b/media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/MediaControlEvent.kt similarity index 96% rename from media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/MediaControlEvent.kt rename to media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/MediaControlEvent.kt index 30d5c6c93..ca7b71fe6 100644 --- a/media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/MediaControlEvent.kt +++ b/media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/MediaControlEvent.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.media.control +package dev.nucleusframework.nucleus.media.control /** * Events sent by the OS media controls to the application. diff --git a/media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/MediaControlService.kt b/media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/MediaControlService.kt similarity index 95% rename from media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/MediaControlService.kt rename to media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/MediaControlService.kt index 7482bf371..992a8299a 100644 --- a/media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/MediaControlService.kt +++ b/media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/MediaControlService.kt @@ -1,11 +1,11 @@ -package io.github.kdroidfilter.nucleus.media.control - -import io.github.kdroidfilter.nucleus.core.runtime.ExecutableRuntime -import io.github.kdroidfilter.nucleus.core.runtime.NucleusApp -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.media.control.linux.NativeLinuxBridge -import io.github.kdroidfilter.nucleus.media.control.macos.NativeMacOsBridge -import io.github.kdroidfilter.nucleus.media.control.windows.NativeWindowsBridge +package dev.nucleusframework.nucleus.media.control + +import dev.nucleusframework.nucleus.core.runtime.ExecutableRuntime +import dev.nucleusframework.nucleus.core.runtime.NucleusApp +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.media.control.linux.NativeLinuxBridge +import dev.nucleusframework.nucleus.media.control.macos.NativeMacOsBridge +import dev.nucleusframework.nucleus.media.control.windows.NativeWindowsBridge import kotlinx.serialization.Serializable import kotlinx.serialization.json.Json import javax.swing.SwingUtilities diff --git a/media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/MediaMetadata.kt b/media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/MediaMetadata.kt similarity index 92% rename from media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/MediaMetadata.kt rename to media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/MediaMetadata.kt index 01cd2057e..ea9a3c310 100644 --- a/media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/MediaMetadata.kt +++ b/media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/MediaMetadata.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.media.control +package dev.nucleusframework.nucleus.media.control /** * Media metadata for the system media center. diff --git a/media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/MediaPlaybackStatus.kt b/media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/MediaPlaybackStatus.kt similarity index 89% rename from media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/MediaPlaybackStatus.kt rename to media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/MediaPlaybackStatus.kt index a3f91d448..7820e79de 100644 --- a/media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/MediaPlaybackStatus.kt +++ b/media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/MediaPlaybackStatus.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.media.control +package dev.nucleusframework.nucleus.media.control /** The current playback status of the media player. */ enum class MediaPlaybackStatus { diff --git a/media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/linux/NativeLinuxBridge.kt b/media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/linux/NativeLinuxBridge.kt similarity index 92% rename from media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/linux/NativeLinuxBridge.kt rename to media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/linux/NativeLinuxBridge.kt index 7e1dc0072..bcf016aac 100644 --- a/media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/linux/NativeLinuxBridge.kt +++ b/media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/linux/NativeLinuxBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.media.control.linux +package dev.nucleusframework.nucleus.media.control.linux -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader private const val LIBRARY_NAME = "nucleus_media_control_linux" diff --git a/media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/macos/NativeMacOsBridge.kt b/media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/macos/NativeMacOsBridge.kt similarity index 92% rename from media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/macos/NativeMacOsBridge.kt rename to media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/macos/NativeMacOsBridge.kt index 10b609f5e..752faad4e 100644 --- a/media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/macos/NativeMacOsBridge.kt +++ b/media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/macos/NativeMacOsBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.media.control.macos +package dev.nucleusframework.nucleus.media.control.macos -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader private const val LIBRARY_NAME = "nucleus_media_control_macos" diff --git a/media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/windows/NativeWindowsBridge.kt b/media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/windows/NativeWindowsBridge.kt similarity index 92% rename from media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/windows/NativeWindowsBridge.kt rename to media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/windows/NativeWindowsBridge.kt index 34c8e7071..1718acc69 100644 --- a/media-control/src/main/kotlin/io/github/kdroidfilter/nucleus/media/control/windows/NativeWindowsBridge.kt +++ b/media-control/src/main/kotlin/dev/nucleusframework/nucleus/media/control/windows/NativeWindowsBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.media.control.windows +package dev.nucleusframework.nucleus.media.control.windows -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader private const val LIBRARY_NAME = "nucleus_media_control_windows" diff --git a/media-control/src/main/native/linux/nucleus_media_control_linux.c b/media-control/src/main/native/linux/nucleus_media_control_linux.c index c75516f1e..77c78216e 100644 --- a/media-control/src/main/native/linux/nucleus_media_control_linux.c +++ b/media-control/src/main/native/linux/nucleus_media_control_linux.c @@ -151,7 +151,7 @@ static void release_env(int attached) { static int ensure_callback_ids(JNIEnv *env) { if (g_bridge_class != NULL) return 1; jclass cls = (*env)->FindClass(env, - "io/github/kdroidfilter/nucleus/media/control/linux/NativeLinuxBridge"); + "dev/nucleusframework/nucleus/media/control/linux/NativeLinuxBridge"); if (!cls) { if ((*env)->ExceptionCheck(env)) (*env)->ExceptionClear(env); return 0; } g_bridge_class = (jclass)(*env)->NewGlobalRef(env, cls); (*env)->DeleteLocalRef(env, cls); @@ -294,7 +294,7 @@ static GVariant *build_metadata_locked(void) { char track_path[96]; snprintf(track_path, sizeof(track_path), - "/io/github/kdroidfilter/nucleus/track/%" G_GUINT64_FORMAT, + "/dev/nucleusframework/nucleus/track/%" G_GUINT64_FORMAT, g_track_counter); g_variant_builder_add(&b, "{sv}", "mpris:trackid", g_variant_new_object_path(track_path)); @@ -658,7 +658,7 @@ static void *service_thread_func(void *arg) { /* ===================================================================== */ JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_media_control_linux_NativeLinuxBridge_nativeConfigure( +Java_dev_nucleusframework_nucleus_media_control_linux_NativeLinuxBridge_nativeConfigure( JNIEnv *env, jclass clazz, jstring j_bus_name, jstring j_display_name) { (void)clazz; @@ -675,7 +675,7 @@ Java_io_github_kdroidfilter_nucleus_media_control_linux_NativeLinuxBridge_native } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_media_control_linux_NativeLinuxBridge_nativeSetMetadata( +Java_dev_nucleusframework_nucleus_media_control_linux_NativeLinuxBridge_nativeSetMetadata( JNIEnv *env, jclass clazz, jstring j_title, jstring j_artist, jstring j_album, jstring j_cover, jlong duration_ms) { @@ -704,7 +704,7 @@ Java_io_github_kdroidfilter_nucleus_media_control_linux_NativeLinuxBridge_native } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_media_control_linux_NativeLinuxBridge_nativeSetPlaybackState( +Java_dev_nucleusframework_nucleus_media_control_linux_NativeLinuxBridge_nativeSetPlaybackState( JNIEnv *env, jclass clazz, jint status, jlong position_ms) { (void)env; (void)clazz; @@ -733,7 +733,7 @@ Java_io_github_kdroidfilter_nucleus_media_control_linux_NativeLinuxBridge_native } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_media_control_linux_NativeLinuxBridge_nativeSetVolume( +Java_dev_nucleusframework_nucleus_media_control_linux_NativeLinuxBridge_nativeSetVolume( JNIEnv *env, jclass clazz, jdouble volume) { (void)env; (void)clazz; @@ -750,7 +750,7 @@ Java_io_github_kdroidfilter_nucleus_media_control_linux_NativeLinuxBridge_native } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_media_control_linux_NativeLinuxBridge_nativeStartListening( +Java_dev_nucleusframework_nucleus_media_control_linux_NativeLinuxBridge_nativeStartListening( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -777,7 +777,7 @@ Java_io_github_kdroidfilter_nucleus_media_control_linux_NativeLinuxBridge_native } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_media_control_linux_NativeLinuxBridge_nativeStopListening( +Java_dev_nucleusframework_nucleus_media_control_linux_NativeLinuxBridge_nativeStopListening( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; diff --git a/media-control/src/main/native/macos/nucleus_media_control_macos.m b/media-control/src/main/native/macos/nucleus_media_control_macos.m index d17fba24f..771079902 100644 --- a/media-control/src/main/native/macos/nucleus_media_control_macos.m +++ b/media-control/src/main/native/macos/nucleus_media_control_macos.m @@ -29,7 +29,7 @@ #define STATUS_PAUSED 1 #define STATUS_PLAYING 2 -#define BRIDGE_CLASS "io/github/kdroidfilter/nucleus/media/control/macos/NativeMacOsBridge" +#define BRIDGE_CLASS "dev/nucleusframework/nucleus/media/control/macos/NativeMacOsBridge" // ============================================================================ // Globals @@ -178,7 +178,7 @@ static void loadArtworkAsync(NSString *url, uint64_t counter) { // ============================================================================ JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_media_control_macos_NativeMacOsBridge_nativeConfigure( +Java_dev_nucleusframework_nucleus_media_control_macos_NativeMacOsBridge_nativeConfigure( JNIEnv *env, jclass clazz, jstring jBusName, jstring jDisplayName) { (void)env; (void)clazz; (void)jBusName; (void)jDisplayName; @@ -186,7 +186,7 @@ static void loadArtworkAsync(NSString *url, uint64_t counter) { } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_media_control_macos_NativeMacOsBridge_nativeSetMetadata( +Java_dev_nucleusframework_nucleus_media_control_macos_NativeMacOsBridge_nativeSetMetadata( JNIEnv *env, jclass clazz, jstring jTitle, jstring jArtist, jstring jAlbum, jstring jCover, jlong durationMs) { @@ -240,7 +240,7 @@ static void loadArtworkAsync(NSString *url, uint64_t counter) { } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_media_control_macos_NativeMacOsBridge_nativeSetPlaybackState( +Java_dev_nucleusframework_nucleus_media_control_macos_NativeMacOsBridge_nativeSetPlaybackState( JNIEnv *env, jclass clazz, jint status, jlong positionMs) { (void)env; (void)clazz; @@ -265,7 +265,7 @@ static void loadArtworkAsync(NSString *url, uint64_t counter) { } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_media_control_macos_NativeMacOsBridge_nativeSetVolume( +Java_dev_nucleusframework_nucleus_media_control_macos_NativeMacOsBridge_nativeSetVolume( JNIEnv *env, jclass clazz, jdouble volume) { (void)env; (void)clazz; (void)volume; @@ -277,7 +277,7 @@ static void loadArtworkAsync(NSString *url, uint64_t counter) { // ============================================================================ JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_media_control_macos_NativeMacOsBridge_nativeStartListening( +Java_dev_nucleusframework_nucleus_media_control_macos_NativeMacOsBridge_nativeStartListening( JNIEnv *env, jclass clazz) { (void)clazz; @@ -356,7 +356,7 @@ static void loadArtworkAsync(NSString *url, uint64_t counter) { } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_media_control_macos_NativeMacOsBridge_nativeStopListening( +Java_dev_nucleusframework_nucleus_media_control_macos_NativeMacOsBridge_nativeStopListening( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; diff --git a/media-control/src/main/native/windows/nucleus_media_control_windows.cpp b/media-control/src/main/native/windows/nucleus_media_control_windows.cpp index 8be3015ec..0492a6853 100644 --- a/media-control/src/main/native/windows/nucleus_media_control_windows.cpp +++ b/media-control/src/main/native/windows/nucleus_media_control_windows.cpp @@ -54,7 +54,7 @@ using namespace ABI::Windows::Media; using namespace ABI::Windows::Foundation; using namespace ABI::Windows::Storage::Streams; -#define BRIDGE_CLASS "io/github/kdroidfilter/nucleus/media/control/windows/NativeWindowsBridge" +#define BRIDGE_CLASS "dev/nucleusframework/nucleus/media/control/windows/NativeWindowsBridge" // ============================================================================ // Globals @@ -420,7 +420,7 @@ static void patchStartMenuShortcut(const std::wstring &appName, const std::wstri extern "C" { JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_media_control_windows_NativeWindowsBridge_nativeConfigure( +Java_dev_nucleusframework_nucleus_media_control_windows_NativeWindowsBridge_nativeConfigure( JNIEnv *env, jclass, jstring jAumid, jstring jDisplayName ) { std::lock_guard lock(g_mutex); @@ -453,7 +453,7 @@ Java_io_github_kdroidfilter_nucleus_media_control_windows_NativeWindowsBridge_na } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_media_control_windows_NativeWindowsBridge_nativeSetMetadata( +Java_dev_nucleusframework_nucleus_media_control_windows_NativeWindowsBridge_nativeSetMetadata( JNIEnv *env, jclass, jstring jTitle, jstring jArtist, jstring jAlbum, jstring jCoverUrl, jlong durationMs ) { @@ -529,7 +529,7 @@ Java_io_github_kdroidfilter_nucleus_media_control_windows_NativeWindowsBridge_na } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_media_control_windows_NativeWindowsBridge_nativeSetPlaybackState( +Java_dev_nucleusframework_nucleus_media_control_windows_NativeWindowsBridge_nativeSetPlaybackState( JNIEnv *, jclass, jint status, jlong positionMs ) { std::lock_guard lock(g_mutex); @@ -555,14 +555,14 @@ Java_io_github_kdroidfilter_nucleus_media_control_windows_NativeWindowsBridge_na } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_media_control_windows_NativeWindowsBridge_nativeSetVolume( +Java_dev_nucleusframework_nucleus_media_control_windows_NativeWindowsBridge_nativeSetVolume( JNIEnv *, jclass, jdouble /*volume*/ ) { // SMTC has no per-app volume channel — no-op. } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_media_control_windows_NativeWindowsBridge_nativeStartListening( +Java_dev_nucleusframework_nucleus_media_control_windows_NativeWindowsBridge_nativeStartListening( JNIEnv *, jclass ) { std::lock_guard lock(g_mutex); @@ -574,7 +574,7 @@ Java_io_github_kdroidfilter_nucleus_media_control_windows_NativeWindowsBridge_na } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_media_control_windows_NativeWindowsBridge_nativeStopListening( +Java_dev_nucleusframework_nucleus_media_control_windows_NativeWindowsBridge_nativeStopListening( JNIEnv *, jclass ) { std::lock_guard lock(g_mutex); diff --git a/media-control/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.media-control/reachability-metadata.json b/media-control/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.media-control/reachability-metadata.json similarity index 89% rename from media-control/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.media-control/reachability-metadata.json rename to media-control/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.media-control/reachability-metadata.json index 862b71c31..6482e2e7f 100644 --- a/media-control/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.media-control/reachability-metadata.json +++ b/media-control/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.media-control/reachability-metadata.json @@ -1,7 +1,7 @@ { "reflection": [ { - "type": "io.github.kdroidfilter.nucleus.media.control.linux.NativeLinuxBridge", + "type": "dev.nucleusframework.nucleus.media.control.linux.NativeLinuxBridge", "jniAccessible": true, "methods": [ { "name": "nativeConfigure", "parameterTypes": ["java.lang.String", "java.lang.String"] }, @@ -14,7 +14,7 @@ ] }, { - "type": "io.github.kdroidfilter.nucleus.media.control.macos.NativeMacOsBridge", + "type": "dev.nucleusframework.nucleus.media.control.macos.NativeMacOsBridge", "jniAccessible": true, "methods": [ { "name": "nativeConfigure", "parameterTypes": ["java.lang.String", "java.lang.String"] }, @@ -27,7 +27,7 @@ ] }, { - "type": "io.github.kdroidfilter.nucleus.media.control.windows.NativeWindowsBridge", + "type": "dev.nucleusframework.nucleus.media.control.windows.NativeWindowsBridge", "jniAccessible": true, "methods": [ { "name": "nativeConfigure", "parameterTypes": ["java.lang.String", "java.lang.String"] }, diff --git a/menu-macos/build.gradle.kts b/menu-macos/build.gradle.kts index 8303e1f9c..333065ce2 100644 --- a/menu-macos/build.gradle.kts +++ b/menu-macos/build.gradle.kts @@ -63,7 +63,7 @@ tasks.configureEach { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.menu-macos", publishVersion) + coordinates("dev.nucleusframework", "nucleus.menu-macos", publishVersion) pom { name.set("Nucleus Menu macOS") @@ -81,7 +81,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/menu-macos/config/ktlint/baseline.xml b/menu-macos/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/menu-macos/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NativeMenuBar.kt b/menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NativeMenuBar.kt similarity index 99% rename from menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NativeMenuBar.kt rename to menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NativeMenuBar.kt index 004d37508..5d3c1c890 100644 --- a/menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NativeMenuBar.kt +++ b/menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NativeMenuBar.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.menu.macos +package dev.nucleusframework.nucleus.menu.macos import androidx.compose.runtime.Composable import androidx.compose.runtime.DisposableEffect diff --git a/menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NativeNsMenuBridge.kt b/menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NativeNsMenuBridge.kt similarity index 98% rename from menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NativeNsMenuBridge.kt rename to menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NativeNsMenuBridge.kt index f4958f0af..5cacbc45d 100644 --- a/menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NativeNsMenuBridge.kt +++ b/menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NativeNsMenuBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.menu.macos +package dev.nucleusframework.nucleus.menu.macos -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader import java.util.concurrent.ConcurrentHashMap import javax.swing.SwingUtilities diff --git a/menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NsMenu.kt b/menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NsMenu.kt similarity index 99% rename from menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NsMenu.kt rename to menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NsMenu.kt index 8e6105de5..24a6922f7 100644 --- a/menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NsMenu.kt +++ b/menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NsMenu.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.menu.macos +package dev.nucleusframework.nucleus.menu.macos import java.util.concurrent.atomic.AtomicBoolean diff --git a/menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NsMenuDelegate.kt b/menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NsMenuDelegate.kt similarity index 95% rename from menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NsMenuDelegate.kt rename to menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NsMenuDelegate.kt index fc70f2450..9657873f8 100644 --- a/menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NsMenuDelegate.kt +++ b/menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NsMenuDelegate.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.menu.macos +package dev.nucleusframework.nucleus.menu.macos /** * Kotlin mapping of NSMenuDelegate. diff --git a/menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NsMenuItem.kt b/menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NsMenuItem.kt similarity index 99% rename from menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NsMenuItem.kt rename to menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NsMenuItem.kt index 687cc359e..c6b2af35d 100644 --- a/menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NsMenuItem.kt +++ b/menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NsMenuItem.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.menu.macos +package dev.nucleusframework.nucleus.menu.macos import java.util.concurrent.atomic.AtomicBoolean diff --git a/menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NsMenuItemBadge.kt b/menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NsMenuItemBadge.kt similarity index 96% rename from menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NsMenuItemBadge.kt rename to menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NsMenuItemBadge.kt index 79ca7d4f8..32ceb545b 100644 --- a/menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NsMenuItemBadge.kt +++ b/menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NsMenuItemBadge.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.menu.macos +package dev.nucleusframework.nucleus.menu.macos /** * Represents an NSMenuItemBadge (macOS 14+). diff --git a/menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NsMenuTypes.kt b/menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NsMenuTypes.kt similarity index 94% rename from menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NsMenuTypes.kt rename to menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NsMenuTypes.kt index 7778418b8..d47bdb018 100644 --- a/menu-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/menu/macos/NsMenuTypes.kt +++ b/menu-macos/src/main/kotlin/dev/nucleusframework/nucleus/menu/macos/NsMenuTypes.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.menu.macos +package dev.nucleusframework.nucleus.menu.macos /** NSControlStateValue used by NSMenuItem.state. */ enum class NsMenuItemState( @@ -91,7 +91,7 @@ sealed class NsMenuItemImage { /** * SF Symbol image (macOS 11+). * - * Accepts a raw symbol name string or a type-safe [SFSymbol][io.github.kdroidfilter.nucleus.sfsymbols.SFSymbol] + * Accepts a raw symbol name string or a type-safe [SFSymbol][dev.nucleusframework.nucleus.sfsymbols.SFSymbol] * constant from the `sf-symbols` module. * * ```kotlin @@ -106,9 +106,9 @@ sealed class NsMenuItemImage { val name: String, val accessibilityDescription: String? = null, ) : NsMenuItemImage() { - /** Creates an image from a type-safe [SFSymbol][io.github.kdroidfilter.nucleus.sfsymbols.SFSymbol] constant. */ + /** Creates an image from a type-safe [SFSymbol][dev.nucleusframework.nucleus.sfsymbols.SFSymbol] constant. */ constructor( - symbol: io.github.kdroidfilter.nucleus.sfsymbols.SFSymbol, + symbol: dev.nucleusframework.nucleus.sfsymbols.SFSymbol, accessibilityDescription: String? = null, ) : this(symbol.symbolName, accessibilityDescription) } diff --git a/menu-macos/src/main/native/macos/nucleus_menu_macos.m b/menu-macos/src/main/native/macos/nucleus_menu_macos.m index 27914139d..6326447c1 100644 --- a/menu-macos/src/main/native/macos/nucleus_menu_macos.m +++ b/menu-macos/src/main/native/macos/nucleus_menu_macos.m @@ -17,9 +17,9 @@ // ============================================================================ #define JNI_FN(name) \ - Java_io_github_kdroidfilter_nucleus_menu_macos_NativeNsMenuBridge_##name + Java_dev_nucleusframework_nucleus_menu_macos_NativeNsMenuBridge_##name -#define BRIDGE_CLASS "io/github/kdroidfilter/nucleus/menu/macos/NativeNsMenuBridge" +#define BRIDGE_CLASS "dev/nucleusframework/nucleus/menu/macos/NativeNsMenuBridge" // ============================================================================ // Handle helpers diff --git a/menu-macos/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.menu-macos/reachability-metadata.json b/menu-macos/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.menu-macos/reachability-metadata.json similarity index 91% rename from menu-macos/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.menu-macos/reachability-metadata.json rename to menu-macos/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.menu-macos/reachability-metadata.json index 0a0fd2879..0efded72e 100644 --- a/menu-macos/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.menu-macos/reachability-metadata.json +++ b/menu-macos/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.menu-macos/reachability-metadata.json @@ -1,7 +1,7 @@ { "reflection": [ { - "type": "io.github.kdroidfilter.nucleus.menu.macos.NativeNsMenuBridge", + "type": "dev.nucleusframework.nucleus.menu.macos.NativeNsMenuBridge", "jniAccessible": true, "methods": [ { diff --git a/mkdocs.yml b/mkdocs.yml index 706779a87..70adcb1f7 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -156,7 +156,7 @@ markdown_extensions: extra_css: - stylesheets/extra.css -copyright: Made with ❤️ by Elie Gambache - KdroidFilter +copyright: Made with ❤️ by Elie Gambache - KdroidFilter extra: social: diff --git a/native-http-ktor/build.gradle.kts b/native-http-ktor/build.gradle.kts index 4268c56c4..28a04bfba 100644 --- a/native-http-ktor/build.gradle.kts +++ b/native-http-ktor/build.gradle.kts @@ -38,7 +38,7 @@ kotlin { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.native-http-ktor", publishVersion) + coordinates("dev.nucleusframework", "nucleus.native-http-ktor", publishVersion) pom { name.set("Nucleus Native HTTP Ktor") @@ -54,7 +54,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/native-http-ktor/config/ktlint/baseline.xml b/native-http-ktor/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/native-http-ktor/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/native-http-ktor/src/main/kotlin/io/github/kdroidfilter/nucleus/nativehttp/ktor/NativeSslKtorExtension.kt b/native-http-ktor/src/main/kotlin/dev/nucleusframework/nucleus/nativehttp/ktor/NativeSslKtorExtension.kt similarity index 93% rename from native-http-ktor/src/main/kotlin/io/github/kdroidfilter/nucleus/nativehttp/ktor/NativeSslKtorExtension.kt rename to native-http-ktor/src/main/kotlin/dev/nucleusframework/nucleus/nativehttp/ktor/NativeSslKtorExtension.kt index d75533f43..d2507e2cd 100644 --- a/native-http-ktor/src/main/kotlin/io/github/kdroidfilter/nucleus/nativehttp/ktor/NativeSslKtorExtension.kt +++ b/native-http-ktor/src/main/kotlin/dev/nucleusframework/nucleus/nativehttp/ktor/NativeSslKtorExtension.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.nativehttp.ktor +package dev.nucleusframework.nucleus.nativehttp.ktor -import io.github.kdroidfilter.nucleus.nativessl.NativeTrustManager +import dev.nucleusframework.nucleus.nativessl.NativeTrustManager import io.ktor.client.HttpClientConfig import io.ktor.client.engine.HttpClientEngineConfig diff --git a/native-http-ktor/src/test/kotlin/io/github/kdroidfilter/nucleus/nativehttp/ktor/NativeSslKtorExtensionTest.kt b/native-http-ktor/src/test/kotlin/dev/nucleusframework/nucleus/nativehttp/ktor/NativeSslKtorExtensionTest.kt similarity index 95% rename from native-http-ktor/src/test/kotlin/io/github/kdroidfilter/nucleus/nativehttp/ktor/NativeSslKtorExtensionTest.kt rename to native-http-ktor/src/test/kotlin/dev/nucleusframework/nucleus/nativehttp/ktor/NativeSslKtorExtensionTest.kt index 1a9eba392..cb8853ec8 100644 --- a/native-http-ktor/src/test/kotlin/io/github/kdroidfilter/nucleus/nativehttp/ktor/NativeSslKtorExtensionTest.kt +++ b/native-http-ktor/src/test/kotlin/dev/nucleusframework/nucleus/nativehttp/ktor/NativeSslKtorExtensionTest.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.nativehttp.ktor +package dev.nucleusframework.nucleus.nativehttp.ktor import io.ktor.client.HttpClient import io.ktor.client.engine.cio.CIO diff --git a/native-http-okhttp/build.gradle.kts b/native-http-okhttp/build.gradle.kts index 750a89326..d272acc35 100644 --- a/native-http-okhttp/build.gradle.kts +++ b/native-http-okhttp/build.gradle.kts @@ -30,7 +30,7 @@ kotlin { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.native-http-okhttp", publishVersion) + coordinates("dev.nucleusframework", "nucleus.native-http-okhttp", publishVersion) pom { name.set("Nucleus Native HTTP OkHttp") @@ -46,7 +46,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/native-http-okhttp/config/ktlint/baseline.xml b/native-http-okhttp/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/native-http-okhttp/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/native-http-okhttp/src/main/kotlin/io/github/kdroidfilter/nucleus/nativehttp/okhttp/NativeOkHttpClient.kt b/native-http-okhttp/src/main/kotlin/dev/nucleusframework/nucleus/nativehttp/okhttp/NativeOkHttpClient.kt similarity index 73% rename from native-http-okhttp/src/main/kotlin/io/github/kdroidfilter/nucleus/nativehttp/okhttp/NativeOkHttpClient.kt rename to native-http-okhttp/src/main/kotlin/dev/nucleusframework/nucleus/nativehttp/okhttp/NativeOkHttpClient.kt index 494e0ecf4..8e25781dc 100644 --- a/native-http-okhttp/src/main/kotlin/io/github/kdroidfilter/nucleus/nativehttp/okhttp/NativeOkHttpClient.kt +++ b/native-http-okhttp/src/main/kotlin/dev/nucleusframework/nucleus/nativehttp/okhttp/NativeOkHttpClient.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.nativehttp.okhttp +package dev.nucleusframework.nucleus.nativehttp.okhttp -import io.github.kdroidfilter.nucleus.nativessl.NativeTrustManager +import dev.nucleusframework.nucleus.nativessl.NativeTrustManager import okhttp3.OkHttpClient object NativeOkHttpClient { diff --git a/native-http-okhttp/src/test/kotlin/io/github/kdroidfilter/nucleus/nativehttp/okhttp/NativeOkHttpClientTest.kt b/native-http-okhttp/src/test/kotlin/dev/nucleusframework/nucleus/nativehttp/okhttp/NativeOkHttpClientTest.kt similarity index 90% rename from native-http-okhttp/src/test/kotlin/io/github/kdroidfilter/nucleus/nativehttp/okhttp/NativeOkHttpClientTest.kt rename to native-http-okhttp/src/test/kotlin/dev/nucleusframework/nucleus/nativehttp/okhttp/NativeOkHttpClientTest.kt index 2a44a953f..0a3f2d3e4 100644 --- a/native-http-okhttp/src/test/kotlin/io/github/kdroidfilter/nucleus/nativehttp/okhttp/NativeOkHttpClientTest.kt +++ b/native-http-okhttp/src/test/kotlin/dev/nucleusframework/nucleus/nativehttp/okhttp/NativeOkHttpClientTest.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.nativehttp.okhttp +package dev.nucleusframework.nucleus.nativehttp.okhttp import okhttp3.Request import org.junit.Assert.assertEquals diff --git a/native-http/build.gradle.kts b/native-http/build.gradle.kts index 2c4e633f4..3deba2f7d 100644 --- a/native-http/build.gradle.kts +++ b/native-http/build.gradle.kts @@ -29,7 +29,7 @@ kotlin { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.native-http", publishVersion) + coordinates("dev.nucleusframework", "nucleus.native-http", publishVersion) pom { name.set("Nucleus Native HTTP") @@ -45,7 +45,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/native-http/config/ktlint/baseline.xml b/native-http/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/native-http/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/native-http/src/main/kotlin/io/github/kdroidfilter/nucleus/nativehttp/NativeHttpClient.kt b/native-http/src/main/kotlin/dev/nucleusframework/nucleus/nativehttp/NativeHttpClient.kt similarity index 82% rename from native-http/src/main/kotlin/io/github/kdroidfilter/nucleus/nativehttp/NativeHttpClient.kt rename to native-http/src/main/kotlin/dev/nucleusframework/nucleus/nativehttp/NativeHttpClient.kt index 5d0096824..058800bd1 100644 --- a/native-http/src/main/kotlin/io/github/kdroidfilter/nucleus/nativehttp/NativeHttpClient.kt +++ b/native-http/src/main/kotlin/dev/nucleusframework/nucleus/nativehttp/NativeHttpClient.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.nativehttp +package dev.nucleusframework.nucleus.nativehttp -import io.github.kdroidfilter.nucleus.nativessl.NativeTrustManager +import dev.nucleusframework.nucleus.nativessl.NativeTrustManager import java.net.http.HttpClient import javax.net.ssl.SSLParameters diff --git a/native-http/src/test/kotlin/io/github/kdroidfilter/nucleus/nativehttp/NativeHttpClientTest.kt b/native-http/src/test/kotlin/dev/nucleusframework/nucleus/nativehttp/NativeHttpClientTest.kt similarity index 92% rename from native-http/src/test/kotlin/io/github/kdroidfilter/nucleus/nativehttp/NativeHttpClientTest.kt rename to native-http/src/test/kotlin/dev/nucleusframework/nucleus/nativehttp/NativeHttpClientTest.kt index fbaad3d00..135f2b58a 100644 --- a/native-http/src/test/kotlin/io/github/kdroidfilter/nucleus/nativehttp/NativeHttpClientTest.kt +++ b/native-http/src/test/kotlin/dev/nucleusframework/nucleus/nativehttp/NativeHttpClientTest.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.nativehttp +package dev.nucleusframework.nucleus.nativehttp import org.junit.Assert.assertEquals import org.junit.Assert.assertTrue diff --git a/native-ssl/build.gradle.kts b/native-ssl/build.gradle.kts index ee7e994b8..1a723d076 100644 --- a/native-ssl/build.gradle.kts +++ b/native-ssl/build.gradle.kts @@ -78,7 +78,7 @@ tasks.configureEach { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.native-ssl", publishVersion) + coordinates("dev.nucleusframework", "nucleus.native-ssl", publishVersion) pom { name.set("Nucleus Native SSL") @@ -94,7 +94,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/native-ssl/config/ktlint/baseline.xml b/native-ssl/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/native-ssl/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/Logger.kt b/native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/Logger.kt similarity index 80% rename from native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/Logger.kt rename to native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/Logger.kt index 207c10470..951034c0d 100644 --- a/native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/Logger.kt +++ b/native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/Logger.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.nativessl +package dev.nucleusframework.nucleus.nativessl -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/native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/NativeCertificateProvider.kt b/native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/NativeCertificateProvider.kt similarity index 77% rename from native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/NativeCertificateProvider.kt rename to native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/NativeCertificateProvider.kt index 1e00dd3c6..22b385c34 100644 --- a/native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/NativeCertificateProvider.kt +++ b/native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/NativeCertificateProvider.kt @@ -1,9 +1,9 @@ -package io.github.kdroidfilter.nucleus.nativessl +package dev.nucleusframework.nucleus.nativessl -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.nativessl.linux.LinuxCertificateProvider -import io.github.kdroidfilter.nucleus.nativessl.mac.NativeSslBridge -import io.github.kdroidfilter.nucleus.nativessl.windows.WindowsCertificateProvider +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.nativessl.linux.LinuxCertificateProvider +import dev.nucleusframework.nucleus.nativessl.mac.NativeSslBridge +import dev.nucleusframework.nucleus.nativessl.windows.WindowsCertificateProvider import java.security.cert.CertificateFactory import java.security.cert.X509Certificate diff --git a/native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/NativeTrustManager.kt b/native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/NativeTrustManager.kt similarity index 97% rename from native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/NativeTrustManager.kt rename to native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/NativeTrustManager.kt index 284ecfb16..28a0b4d79 100644 --- a/native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/NativeTrustManager.kt +++ b/native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/NativeTrustManager.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.nativessl +package dev.nucleusframework.nucleus.nativessl import java.security.KeyStore import javax.net.ssl.SSLContext diff --git a/native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/linux/LinuxCertificateProvider.kt b/native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/linux/LinuxCertificateProvider.kt similarity index 97% rename from native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/linux/LinuxCertificateProvider.kt rename to native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/linux/LinuxCertificateProvider.kt index 0696633e3..2aadf7f21 100644 --- a/native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/linux/LinuxCertificateProvider.kt +++ b/native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/linux/LinuxCertificateProvider.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.nativessl.linux +package dev.nucleusframework.nucleus.nativessl.linux -import io.github.kdroidfilter.nucleus.nativessl.debugln +import dev.nucleusframework.nucleus.nativessl.debugln import java.io.BufferedReader import java.io.File import java.io.InputStreamReader diff --git a/native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/mac/NativeSslBridge.kt b/native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/mac/NativeSslBridge.kt similarity index 84% rename from native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/mac/NativeSslBridge.kt rename to native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/mac/NativeSslBridge.kt index a97db5c44..4999d441b 100644 --- a/native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/mac/NativeSslBridge.kt +++ b/native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/mac/NativeSslBridge.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.nativessl.mac +package dev.nucleusframework.nucleus.nativessl.mac -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader -import io.github.kdroidfilter.nucleus.nativessl.debugln +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.nativessl.debugln import java.util.logging.Level import java.util.logging.Logger diff --git a/native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/windows/WindowsCertificateProvider.kt b/native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/windows/WindowsCertificateProvider.kt similarity index 96% rename from native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/windows/WindowsCertificateProvider.kt rename to native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/windows/WindowsCertificateProvider.kt index 1f4a6fe45..c422f6f3f 100644 --- a/native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/windows/WindowsCertificateProvider.kt +++ b/native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/windows/WindowsCertificateProvider.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.nativessl.windows +package dev.nucleusframework.nucleus.nativessl.windows -import io.github.kdroidfilter.nucleus.nativessl.debugln +import dev.nucleusframework.nucleus.nativessl.debugln import java.security.KeyStore private const val TAG = "WindowsCertificateProvider" diff --git a/native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/windows/WindowsSslBridge.kt b/native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/windows/WindowsSslBridge.kt similarity index 83% rename from native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/windows/WindowsSslBridge.kt rename to native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/windows/WindowsSslBridge.kt index a9f7ccc9c..b78eecc55 100644 --- a/native-ssl/src/main/kotlin/io/github/kdroidfilter/nucleus/nativessl/windows/WindowsSslBridge.kt +++ b/native-ssl/src/main/kotlin/dev/nucleusframework/nucleus/nativessl/windows/WindowsSslBridge.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.nativessl.windows +package dev.nucleusframework.nucleus.nativessl.windows -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader -import io.github.kdroidfilter.nucleus.nativessl.debugln +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.nativessl.debugln import java.util.logging.Level import java.util.logging.Logger diff --git a/native-ssl/src/main/native/macos/NucleusSslBridge.m b/native-ssl/src/main/native/macos/NucleusSslBridge.m index 059bda07d..1e196f2b3 100644 --- a/native-ssl/src/main/native/macos/NucleusSslBridge.m +++ b/native-ssl/src/main/native/macos/NucleusSslBridge.m @@ -212,7 +212,7 @@ static BOOL isTrustedRoot(SecCertificateRef cert) { } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_nativessl_mac_NativeSslBridge_nativeGetSystemCertificates( +Java_dev_nucleusframework_nucleus_nativessl_mac_NativeSslBridge_nativeGetSystemCertificates( JNIEnv *env, jclass clazz) { CFMutableArrayRef allDer = diff --git a/native-ssl/src/main/native/windows/NucleusSslBridge.c b/native-ssl/src/main/native/windows/NucleusSslBridge.c index d8d096cd3..f58b1feee 100644 --- a/native-ssl/src/main/native/windows/NucleusSslBridge.c +++ b/native-ssl/src/main/native/windows/NucleusSslBridge.c @@ -141,7 +141,7 @@ BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpReserved) { } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_nativessl_windows_WindowsSslBridge_nativeGetSystemCertificates( +Java_dev_nucleusframework_nucleus_nativessl_windows_WindowsSslBridge_nativeGetSystemCertificates( JNIEnv *env, jclass clazz) { (void)clazz; diff --git a/native-ssl/src/test/kotlin/io/github/kdroidfilter/nucleus/nativessl/NativeSslTest.kt b/native-ssl/src/test/kotlin/dev/nucleusframework/nucleus/nativessl/NativeSslTest.kt similarity index 97% rename from native-ssl/src/test/kotlin/io/github/kdroidfilter/nucleus/nativessl/NativeSslTest.kt rename to native-ssl/src/test/kotlin/dev/nucleusframework/nucleus/nativessl/NativeSslTest.kt index 4b24f6ab2..de61803ec 100644 --- a/native-ssl/src/test/kotlin/io/github/kdroidfilter/nucleus/nativessl/NativeSslTest.kt +++ b/native-ssl/src/test/kotlin/dev/nucleusframework/nucleus/nativessl/NativeSslTest.kt @@ -1,9 +1,9 @@ -package io.github.kdroidfilter.nucleus.nativessl +package dev.nucleusframework.nucleus.nativessl -import io.github.kdroidfilter.nucleus.nativessl.linux.LinuxCertificateProvider -import io.github.kdroidfilter.nucleus.nativessl.mac.NativeSslBridge -import io.github.kdroidfilter.nucleus.nativessl.windows.WindowsCertificateProvider -import io.github.kdroidfilter.nucleus.nativessl.windows.WindowsSslBridge +import dev.nucleusframework.nucleus.nativessl.linux.LinuxCertificateProvider +import dev.nucleusframework.nucleus.nativessl.mac.NativeSslBridge +import dev.nucleusframework.nucleus.nativessl.windows.WindowsCertificateProvider +import dev.nucleusframework.nucleus.nativessl.windows.WindowsSslBridge import org.junit.Assert.assertTrue import org.junit.Assume.assumeTrue import org.junit.Test diff --git a/notification-common/build.gradle.kts b/notification-common/build.gradle.kts index c8c31b97e..a0883aa40 100644 --- a/notification-common/build.gradle.kts +++ b/notification-common/build.gradle.kts @@ -33,7 +33,7 @@ kotlin { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.notification-common", publishVersion) + coordinates("dev.nucleusframework", "nucleus.notification-common", publishVersion) pom { name.set("Nucleus Notification Common") @@ -49,7 +49,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/notification-common/config/ktlint/baseline.xml b/notification-common/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/notification-common/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/DismissReason.kt b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/DismissReason.kt similarity index 88% rename from notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/DismissReason.kt rename to notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/DismissReason.kt index 31b7ca583..7c7f77acb 100644 --- a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/DismissReason.kt +++ b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/DismissReason.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.notification.common +package dev.nucleusframework.nucleus.notification.common /** Unified reason why a notification was dismissed, mapped from platform-specific reasons. */ enum class DismissReason { diff --git a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/Notification.kt b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/Notification.kt similarity index 98% rename from notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/Notification.kt rename to notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/Notification.kt index ab3e6c76b..ee0ac74cb 100644 --- a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/Notification.kt +++ b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/Notification.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.notification.common +package dev.nucleusframework.nucleus.notification.common private const val MAX_BUTTONS = 5 diff --git a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/NotificationHandle.kt b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/NotificationHandle.kt similarity index 75% rename from notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/NotificationHandle.kt rename to notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/NotificationHandle.kt index c42371ed4..4175e7a9c 100644 --- a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/NotificationHandle.kt +++ b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/NotificationHandle.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.notification.common +package dev.nucleusframework.nucleus.notification.common -import io.github.kdroidfilter.nucleus.notification.common.internal.PlatformDispatcher +import dev.nucleusframework.nucleus.notification.common.internal.PlatformDispatcher /** * Opaque handle to a sent notification. diff --git a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/NotificationManager.kt b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/NotificationManager.kt similarity index 87% rename from notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/NotificationManager.kt rename to notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/NotificationManager.kt index fd47802eb..f78b5634d 100644 --- a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/NotificationManager.kt +++ b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/NotificationManager.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.notification.common +package dev.nucleusframework.nucleus.notification.common -import io.github.kdroidfilter.nucleus.notification.common.internal.DispatcherFactory -import io.github.kdroidfilter.nucleus.notification.common.internal.PlatformDispatcher +import dev.nucleusframework.nucleus.notification.common.internal.DispatcherFactory +import dev.nucleusframework.nucleus.notification.common.internal.PlatformDispatcher import java.util.logging.Logger /** diff --git a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/NotificationResult.kt b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/NotificationResult.kt similarity index 85% rename from notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/NotificationResult.kt rename to notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/NotificationResult.kt index 861f6975b..5a244a8bd 100644 --- a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/NotificationResult.kt +++ b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/NotificationResult.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.notification.common +package dev.nucleusframework.nucleus.notification.common /** Result of sending a notification. */ sealed class NotificationResult { diff --git a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/CallbackRegistry.kt b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/CallbackRegistry.kt similarity index 87% rename from notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/CallbackRegistry.kt rename to notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/CallbackRegistry.kt index 89ff5bb4d..ac264ad58 100644 --- a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/CallbackRegistry.kt +++ b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/CallbackRegistry.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.notification.common.internal +package dev.nucleusframework.nucleus.notification.common.internal import java.util.concurrent.ConcurrentHashMap diff --git a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/DispatcherFactory.kt b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/DispatcherFactory.kt similarity index 92% rename from notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/DispatcherFactory.kt rename to notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/DispatcherFactory.kt index 5f4814d51..22f5611c2 100644 --- a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/DispatcherFactory.kt +++ b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/DispatcherFactory.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.notification.common.internal +package dev.nucleusframework.nucleus.notification.common.internal import java.util.Locale diff --git a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/LinuxDispatcher.kt b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/LinuxDispatcher.kt similarity index 82% rename from notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/LinuxDispatcher.kt rename to notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/LinuxDispatcher.kt index f6dcd884e..74b38e8e5 100644 --- a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/LinuxDispatcher.kt +++ b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/LinuxDispatcher.kt @@ -1,18 +1,18 @@ -package io.github.kdroidfilter.nucleus.notification.common.internal - -import io.github.kdroidfilter.nucleus.freedesktop.icons.FreedesktopIcon -import io.github.kdroidfilter.nucleus.notification.common.DismissReason -import io.github.kdroidfilter.nucleus.notification.common.Notification -import io.github.kdroidfilter.nucleus.notification.common.NotificationHandle -import io.github.kdroidfilter.nucleus.notification.common.NotificationResult -import io.github.kdroidfilter.nucleus.notification.linux.CloseReason -import io.github.kdroidfilter.nucleus.notification.linux.LinuxNotificationCenter -import io.github.kdroidfilter.nucleus.notification.linux.LinuxNotificationListener -import io.github.kdroidfilter.nucleus.notification.linux.NotificationAction -import io.github.kdroidfilter.nucleus.notification.linux.NotificationHints +package dev.nucleusframework.nucleus.notification.common.internal + +import dev.nucleusframework.nucleus.freedesktop.icons.FreedesktopIcon +import dev.nucleusframework.nucleus.notification.common.DismissReason +import dev.nucleusframework.nucleus.notification.common.Notification +import dev.nucleusframework.nucleus.notification.common.NotificationHandle +import dev.nucleusframework.nucleus.notification.common.NotificationResult +import dev.nucleusframework.nucleus.notification.linux.CloseReason +import dev.nucleusframework.nucleus.notification.linux.LinuxNotificationCenter +import dev.nucleusframework.nucleus.notification.linux.LinuxNotificationListener +import dev.nucleusframework.nucleus.notification.linux.NotificationAction +import dev.nucleusframework.nucleus.notification.linux.NotificationHints import java.util.logging.Level import java.util.logging.Logger -import io.github.kdroidfilter.nucleus.notification.linux.Notification as LinuxNotification +import dev.nucleusframework.nucleus.notification.linux.Notification as LinuxNotification internal class LinuxDispatcher private constructor() : PlatformDispatcher { private val logger = Logger.getLogger(LinuxDispatcher::class.java.simpleName) @@ -60,7 +60,7 @@ internal class LinuxDispatcher private constructor() : PlatformDispatcher { companion object { fun createIfAvailable(): LinuxDispatcher? = try { - Class.forName("io.github.kdroidfilter.nucleus.notification.linux.LinuxNotificationCenter") + Class.forName("dev.nucleusframework.nucleus.notification.linux.LinuxNotificationCenter") LinuxDispatcher() } catch (_: ClassNotFoundException) { null diff --git a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/MacOsDispatcher.kt b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/MacOsDispatcher.kt similarity index 85% rename from notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/MacOsDispatcher.kt rename to notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/MacOsDispatcher.kt index 5978c10b4..c8686edbe 100644 --- a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/MacOsDispatcher.kt +++ b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/MacOsDispatcher.kt @@ -1,21 +1,21 @@ -package io.github.kdroidfilter.nucleus.notification.common.internal - -import io.github.kdroidfilter.nucleus.notification.ActionOption -import io.github.kdroidfilter.nucleus.notification.CategoryOption -import io.github.kdroidfilter.nucleus.notification.DeliveredNotification -import io.github.kdroidfilter.nucleus.notification.NotificationAction -import io.github.kdroidfilter.nucleus.notification.NotificationAttachment -import io.github.kdroidfilter.nucleus.notification.NotificationCategory -import io.github.kdroidfilter.nucleus.notification.NotificationCenter -import io.github.kdroidfilter.nucleus.notification.NotificationCenterDelegate -import io.github.kdroidfilter.nucleus.notification.NotificationContent -import io.github.kdroidfilter.nucleus.notification.NotificationRequest -import io.github.kdroidfilter.nucleus.notification.NotificationResponse -import io.github.kdroidfilter.nucleus.notification.PresentationOption -import io.github.kdroidfilter.nucleus.notification.common.DismissReason -import io.github.kdroidfilter.nucleus.notification.common.Notification -import io.github.kdroidfilter.nucleus.notification.common.NotificationHandle -import io.github.kdroidfilter.nucleus.notification.common.NotificationResult +package dev.nucleusframework.nucleus.notification.common.internal + +import dev.nucleusframework.nucleus.notification.ActionOption +import dev.nucleusframework.nucleus.notification.CategoryOption +import dev.nucleusframework.nucleus.notification.DeliveredNotification +import dev.nucleusframework.nucleus.notification.NotificationAction +import dev.nucleusframework.nucleus.notification.NotificationAttachment +import dev.nucleusframework.nucleus.notification.NotificationCategory +import dev.nucleusframework.nucleus.notification.NotificationCenter +import dev.nucleusframework.nucleus.notification.NotificationCenterDelegate +import dev.nucleusframework.nucleus.notification.NotificationContent +import dev.nucleusframework.nucleus.notification.NotificationRequest +import dev.nucleusframework.nucleus.notification.NotificationResponse +import dev.nucleusframework.nucleus.notification.PresentationOption +import dev.nucleusframework.nucleus.notification.common.DismissReason +import dev.nucleusframework.nucleus.notification.common.Notification +import dev.nucleusframework.nucleus.notification.common.NotificationHandle +import dev.nucleusframework.nucleus.notification.common.NotificationResult import java.util.UUID import java.util.concurrent.ConcurrentHashMap import java.util.concurrent.CountDownLatch @@ -69,7 +69,7 @@ internal class MacOsDispatcher private constructor() : PlatformDispatcher { fun createIfAvailable(): MacOsDispatcher? = try { - Class.forName("io.github.kdroidfilter.nucleus.notification.NotificationCenter") + Class.forName("dev.nucleusframework.nucleus.notification.NotificationCenter") MacOsDispatcher() } catch (_: ClassNotFoundException) { null diff --git a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/NotificationCallbacks.kt b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/NotificationCallbacks.kt similarity index 60% rename from notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/NotificationCallbacks.kt rename to notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/NotificationCallbacks.kt index 6ad455f75..f6766d141 100644 --- a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/NotificationCallbacks.kt +++ b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/NotificationCallbacks.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.notification.common.internal +package dev.nucleusframework.nucleus.notification.common.internal -import io.github.kdroidfilter.nucleus.notification.common.DismissReason +import dev.nucleusframework.nucleus.notification.common.DismissReason internal data class NotificationCallbacks( val onActivated: (() -> Unit)?, diff --git a/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/PlatformDispatcher.kt b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/PlatformDispatcher.kt new file mode 100644 index 000000000..099774e3b --- /dev/null +++ b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/PlatformDispatcher.kt @@ -0,0 +1,14 @@ +package dev.nucleusframework.nucleus.notification.common.internal + +import dev.nucleusframework.nucleus.notification.common.Notification +import dev.nucleusframework.nucleus.notification.common.NotificationResult + +internal interface PlatformDispatcher { + fun isAvailable(): Boolean + + fun initialize() + + fun send(notification: Notification): NotificationResult + + fun dismiss(platformId: String) +} diff --git a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/WindowsDispatcher.kt b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/WindowsDispatcher.kt similarity index 89% rename from notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/WindowsDispatcher.kt rename to notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/WindowsDispatcher.kt index e9508588a..bc144fa9a 100644 --- a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/WindowsDispatcher.kt +++ b/notification-common/src/main/kotlin/dev/nucleusframework/nucleus/notification/common/internal/WindowsDispatcher.kt @@ -1,13 +1,13 @@ -package io.github.kdroidfilter.nucleus.notification.common.internal - -import io.github.kdroidfilter.nucleus.notification.common.DismissReason -import io.github.kdroidfilter.nucleus.notification.common.Notification -import io.github.kdroidfilter.nucleus.notification.common.NotificationHandle -import io.github.kdroidfilter.nucleus.notification.common.NotificationResult -import io.github.kdroidfilter.nucleus.notification.windows.DismissalReason -import io.github.kdroidfilter.nucleus.notification.windows.ToastNotificationListener -import io.github.kdroidfilter.nucleus.notification.windows.WindowsNotificationCenter -import io.github.kdroidfilter.nucleus.notification.windows.toast +package dev.nucleusframework.nucleus.notification.common.internal + +import dev.nucleusframework.nucleus.notification.common.DismissReason +import dev.nucleusframework.nucleus.notification.common.Notification +import dev.nucleusframework.nucleus.notification.common.NotificationHandle +import dev.nucleusframework.nucleus.notification.common.NotificationResult +import dev.nucleusframework.nucleus.notification.windows.DismissalReason +import dev.nucleusframework.nucleus.notification.windows.ToastNotificationListener +import dev.nucleusframework.nucleus.notification.windows.WindowsNotificationCenter +import dev.nucleusframework.nucleus.notification.windows.toast import java.util.concurrent.atomic.AtomicBoolean import java.util.concurrent.atomic.AtomicLong import java.util.logging.Level @@ -84,7 +84,7 @@ internal class WindowsDispatcher private constructor() : PlatformDispatcher { fun createIfAvailable(): WindowsDispatcher? = try { - Class.forName("io.github.kdroidfilter.nucleus.notification.windows.WindowsNotificationCenter") + Class.forName("dev.nucleusframework.nucleus.notification.windows.WindowsNotificationCenter") WindowsDispatcher() } catch (_: ClassNotFoundException) { null diff --git a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/PlatformDispatcher.kt b/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/PlatformDispatcher.kt deleted file mode 100644 index 67ab2bd40..000000000 --- a/notification-common/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/common/internal/PlatformDispatcher.kt +++ /dev/null @@ -1,14 +0,0 @@ -package io.github.kdroidfilter.nucleus.notification.common.internal - -import io.github.kdroidfilter.nucleus.notification.common.Notification -import io.github.kdroidfilter.nucleus.notification.common.NotificationResult - -internal interface PlatformDispatcher { - fun isAvailable(): Boolean - - fun initialize() - - fun send(notification: Notification): NotificationResult - - fun dismiss(platformId: String) -} diff --git a/notification-linux/build.gradle.kts b/notification-linux/build.gradle.kts index 462dd7597..592c7c301 100644 --- a/notification-linux/build.gradle.kts +++ b/notification-linux/build.gradle.kts @@ -60,7 +60,7 @@ tasks.configureEach { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.notification-linux", publishVersion) + coordinates("dev.nucleusframework", "nucleus.notification-linux", publishVersion) pom { name.set("Nucleus Notification Linux") @@ -76,7 +76,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/notification-linux/config/ktlint/baseline.xml b/notification-linux/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/notification-linux/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/notification-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/linux/Enums.kt b/notification-linux/src/main/kotlin/dev/nucleusframework/nucleus/notification/linux/Enums.kt similarity index 94% rename from notification-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/linux/Enums.kt rename to notification-linux/src/main/kotlin/dev/nucleusframework/nucleus/notification/linux/Enums.kt index d919b63ef..033242ab5 100644 --- a/notification-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/linux/Enums.kt +++ b/notification-linux/src/main/kotlin/dev/nucleusframework/nucleus/notification/linux/Enums.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.notification.linux +package dev.nucleusframework.nucleus.notification.linux /** * Notification urgency level as defined by the freedesktop specification. diff --git a/notification-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/linux/LinuxNotificationCenter.kt b/notification-linux/src/main/kotlin/dev/nucleusframework/nucleus/notification/linux/LinuxNotificationCenter.kt similarity index 98% rename from notification-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/linux/LinuxNotificationCenter.kt rename to notification-linux/src/main/kotlin/dev/nucleusframework/nucleus/notification/linux/LinuxNotificationCenter.kt index 008a366ce..f4083f472 100644 --- a/notification-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/linux/LinuxNotificationCenter.kt +++ b/notification-linux/src/main/kotlin/dev/nucleusframework/nucleus/notification/linux/LinuxNotificationCenter.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.notification.linux +package dev.nucleusframework.nucleus.notification.linux /** * Entry point for the freedesktop Desktop Notifications API on Linux. diff --git a/notification-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/linux/LinuxNotificationListener.kt b/notification-linux/src/main/kotlin/dev/nucleusframework/nucleus/notification/linux/LinuxNotificationListener.kt similarity index 96% rename from notification-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/linux/LinuxNotificationListener.kt rename to notification-linux/src/main/kotlin/dev/nucleusframework/nucleus/notification/linux/LinuxNotificationListener.kt index 110db038c..ebc67d6ae 100644 --- a/notification-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/linux/LinuxNotificationListener.kt +++ b/notification-linux/src/main/kotlin/dev/nucleusframework/nucleus/notification/linux/LinuxNotificationListener.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.notification.linux +package dev.nucleusframework.nucleus.notification.linux /** * Listener for asynchronous notification signals from the freedesktop notification server. diff --git a/notification-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/linux/Model.kt b/notification-linux/src/main/kotlin/dev/nucleusframework/nucleus/notification/linux/Model.kt similarity index 97% rename from notification-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/linux/Model.kt rename to notification-linux/src/main/kotlin/dev/nucleusframework/nucleus/notification/linux/Model.kt index 3a6631bfe..a53a08110 100644 --- a/notification-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/linux/Model.kt +++ b/notification-linux/src/main/kotlin/dev/nucleusframework/nucleus/notification/linux/Model.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.notification.linux +package dev.nucleusframework.nucleus.notification.linux -import io.github.kdroidfilter.nucleus.freedesktop.icons.FreedesktopIcon +import dev.nucleusframework.nucleus.freedesktop.icons.FreedesktopIcon /** * Raw image data to embed directly in a notification. diff --git a/notification-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/linux/NativeLinuxNotificationBridge.kt b/notification-linux/src/main/kotlin/dev/nucleusframework/nucleus/notification/linux/NativeLinuxNotificationBridge.kt similarity index 95% rename from notification-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/linux/NativeLinuxNotificationBridge.kt rename to notification-linux/src/main/kotlin/dev/nucleusframework/nucleus/notification/linux/NativeLinuxNotificationBridge.kt index a4b7344f6..8b2d96d3c 100644 --- a/notification-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/linux/NativeLinuxNotificationBridge.kt +++ b/notification-linux/src/main/kotlin/dev/nucleusframework/nucleus/notification/linux/NativeLinuxNotificationBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.notification.linux +package dev.nucleusframework.nucleus.notification.linux -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader import java.util.concurrent.ConcurrentHashMap import javax.swing.SwingUtilities diff --git a/notification-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/linux/NotificationSound.kt b/notification-linux/src/main/kotlin/dev/nucleusframework/nucleus/notification/linux/NotificationSound.kt similarity index 99% rename from notification-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/linux/NotificationSound.kt rename to notification-linux/src/main/kotlin/dev/nucleusframework/nucleus/notification/linux/NotificationSound.kt index 51bfac7fb..04d081f93 100644 --- a/notification-linux/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/linux/NotificationSound.kt +++ b/notification-linux/src/main/kotlin/dev/nucleusframework/nucleus/notification/linux/NotificationSound.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.notification.linux +package dev.nucleusframework.nucleus.notification.linux /** * Typesafe representation of a notification sound name. diff --git a/notification-linux/src/main/native/linux/nucleus_notification_linux.c b/notification-linux/src/main/native/linux/nucleus_notification_linux.c index 886aca454..45b0c9a38 100644 --- a/notification-linux/src/main/native/linux/nucleus_notification_linux.c +++ b/notification-linux/src/main/native/linux/nucleus_notification_linux.c @@ -102,7 +102,7 @@ static int ensure_callback_ids(JNIEnv *env) { if (g_bridge_class != NULL) return 1; jclass cls = (*env)->FindClass(env, - "io/github/kdroidfilter/nucleus/notification/linux/NativeLinuxNotificationBridge"); + "dev/nucleusframework/nucleus/notification/linux/NativeLinuxNotificationBridge"); if (cls == NULL) { if ((*env)->ExceptionCheck(env)) (*env)->ExceptionClear(env); return 0; @@ -129,7 +129,7 @@ static int ensure_callback_ids(JNIEnv *env) { /* ==== Notify =========================================================== */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_notification_linux_NativeLinuxNotificationBridge_nativeNotify( +Java_dev_nucleusframework_nucleus_notification_linux_NativeLinuxNotificationBridge_nativeNotify( JNIEnv *env, jclass clazz, jstring j_app_name, jint replaces_id, @@ -356,7 +356,7 @@ Java_io_github_kdroidfilter_nucleus_notification_linux_NativeLinuxNotificationBr /* ==== CloseNotification ================================================ */ JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_linux_NativeLinuxNotificationBridge_nativeCloseNotification( +Java_dev_nucleusframework_nucleus_notification_linux_NativeLinuxNotificationBridge_nativeCloseNotification( JNIEnv *env, jclass clazz, jint id) { (void)env; (void)clazz; @@ -383,7 +383,7 @@ Java_io_github_kdroidfilter_nucleus_notification_linux_NativeLinuxNotificationBr /* ==== GetCapabilities ================================================== */ JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_notification_linux_NativeLinuxNotificationBridge_nativeGetCapabilities( +Java_dev_nucleusframework_nucleus_notification_linux_NativeLinuxNotificationBridge_nativeGetCapabilities( JNIEnv *env, jclass clazz) { (void)clazz; @@ -427,7 +427,7 @@ Java_io_github_kdroidfilter_nucleus_notification_linux_NativeLinuxNotificationBr /* ==== GetServerInformation ============================================= */ JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_notification_linux_NativeLinuxNotificationBridge_nativeGetServerInformation( +Java_dev_nucleusframework_nucleus_notification_linux_NativeLinuxNotificationBridge_nativeGetServerInformation( JNIEnv *env, jclass clazz) { (void)clazz; @@ -619,7 +619,7 @@ static void *signal_thread_func(void *arg) { /* ==== StartListening / StopListening =================================== */ JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_notification_linux_NativeLinuxNotificationBridge_nativeStartListening( +Java_dev_nucleusframework_nucleus_notification_linux_NativeLinuxNotificationBridge_nativeStartListening( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -648,7 +648,7 @@ Java_io_github_kdroidfilter_nucleus_notification_linux_NativeLinuxNotificationBr } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_linux_NativeLinuxNotificationBridge_nativeStopListening( +Java_dev_nucleusframework_nucleus_notification_linux_NativeLinuxNotificationBridge_nativeStopListening( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; diff --git a/notification-macos/build.gradle.kts b/notification-macos/build.gradle.kts index 7eab13b36..e8ee172cf 100644 --- a/notification-macos/build.gradle.kts +++ b/notification-macos/build.gradle.kts @@ -59,7 +59,7 @@ tasks.configureEach { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.notification-macos", publishVersion) + coordinates("dev.nucleusframework", "nucleus.notification-macos", publishVersion) pom { name.set("Nucleus Notification macOS") @@ -75,7 +75,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/notification-macos/config/ktlint/baseline.xml b/notification-macos/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/notification-macos/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/notification-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/Enums.kt b/notification-macos/src/main/kotlin/dev/nucleusframework/nucleus/notification/Enums.kt similarity index 98% rename from notification-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/Enums.kt rename to notification-macos/src/main/kotlin/dev/nucleusframework/nucleus/notification/Enums.kt index 3ea45d6e6..9f69b6e9d 100644 --- a/notification-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/Enums.kt +++ b/notification-macos/src/main/kotlin/dev/nucleusframework/nucleus/notification/Enums.kt @@ -1,6 +1,6 @@ @file:Suppress("MagicNumber", "MaxLineLength") -package io.github.kdroidfilter.nucleus.notification +package dev.nucleusframework.nucleus.notification /** Maps UNAuthorizationStatus */ enum class AuthorizationStatus( diff --git a/notification-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/Model.kt b/notification-macos/src/main/kotlin/dev/nucleusframework/nucleus/notification/Model.kt similarity index 99% rename from notification-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/Model.kt rename to notification-macos/src/main/kotlin/dev/nucleusframework/nucleus/notification/Model.kt index 7f1e62f2c..dd76f37ca 100644 --- a/notification-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/Model.kt +++ b/notification-macos/src/main/kotlin/dev/nucleusframework/nucleus/notification/Model.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.notification +package dev.nucleusframework.nucleus.notification /** Date components for calendar-based triggers. Null fields are ignored (wildcard). */ data class DateComponents( diff --git a/notification-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/NotificationCenter.kt b/notification-macos/src/main/kotlin/dev/nucleusframework/nucleus/notification/NotificationCenter.kt similarity index 98% rename from notification-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/NotificationCenter.kt rename to notification-macos/src/main/kotlin/dev/nucleusframework/nucleus/notification/NotificationCenter.kt index 299930206..41d6e24a4 100644 --- a/notification-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/NotificationCenter.kt +++ b/notification-macos/src/main/kotlin/dev/nucleusframework/nucleus/notification/NotificationCenter.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.notification +package dev.nucleusframework.nucleus.notification -import io.github.kdroidfilter.nucleus.core.runtime.ExecutableRuntime -import io.github.kdroidfilter.nucleus.notification.macos.NativeMacNotificationBridge +import dev.nucleusframework.nucleus.core.runtime.ExecutableRuntime +import dev.nucleusframework.nucleus.notification.macos.NativeMacNotificationBridge import java.util.logging.Logger /** diff --git a/notification-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/NotificationCenterDelegate.kt b/notification-macos/src/main/kotlin/dev/nucleusframework/nucleus/notification/NotificationCenterDelegate.kt similarity index 95% rename from notification-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/NotificationCenterDelegate.kt rename to notification-macos/src/main/kotlin/dev/nucleusframework/nucleus/notification/NotificationCenterDelegate.kt index 21d631bd9..fa597f960 100644 --- a/notification-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/NotificationCenterDelegate.kt +++ b/notification-macos/src/main/kotlin/dev/nucleusframework/nucleus/notification/NotificationCenterDelegate.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.notification +package dev.nucleusframework.nucleus.notification /** * Maps UNUserNotificationCenterDelegate. diff --git a/notification-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/macos/NativeMacNotificationBridge.kt b/notification-macos/src/main/kotlin/dev/nucleusframework/nucleus/notification/macos/NativeMacNotificationBridge.kt similarity index 92% rename from notification-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/macos/NativeMacNotificationBridge.kt rename to notification-macos/src/main/kotlin/dev/nucleusframework/nucleus/notification/macos/NativeMacNotificationBridge.kt index 83e477b41..967b4cb49 100644 --- a/notification-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/macos/NativeMacNotificationBridge.kt +++ b/notification-macos/src/main/kotlin/dev/nucleusframework/nucleus/notification/macos/NativeMacNotificationBridge.kt @@ -1,19 +1,19 @@ -package io.github.kdroidfilter.nucleus.notification.macos - -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader -import io.github.kdroidfilter.nucleus.notification.AlertStyle -import io.github.kdroidfilter.nucleus.notification.AuthorizationStatus -import io.github.kdroidfilter.nucleus.notification.DeliveredNotification -import io.github.kdroidfilter.nucleus.notification.NotificationCenterDelegate -import io.github.kdroidfilter.nucleus.notification.NotificationResponse -import io.github.kdroidfilter.nucleus.notification.NotificationSetting -import io.github.kdroidfilter.nucleus.notification.NotificationSettings -import io.github.kdroidfilter.nucleus.notification.PendingNotificationInfo -import io.github.kdroidfilter.nucleus.notification.PresentationOption -import io.github.kdroidfilter.nucleus.notification.RegisteredActionInfo -import io.github.kdroidfilter.nucleus.notification.RegisteredCategoryInfo -import io.github.kdroidfilter.nucleus.notification.ShowPreviewsSetting -import io.github.kdroidfilter.nucleus.notification.toMask +package dev.nucleusframework.nucleus.notification.macos + +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.notification.AlertStyle +import dev.nucleusframework.nucleus.notification.AuthorizationStatus +import dev.nucleusframework.nucleus.notification.DeliveredNotification +import dev.nucleusframework.nucleus.notification.NotificationCenterDelegate +import dev.nucleusframework.nucleus.notification.NotificationResponse +import dev.nucleusframework.nucleus.notification.NotificationSetting +import dev.nucleusframework.nucleus.notification.NotificationSettings +import dev.nucleusframework.nucleus.notification.PendingNotificationInfo +import dev.nucleusframework.nucleus.notification.PresentationOption +import dev.nucleusframework.nucleus.notification.RegisteredActionInfo +import dev.nucleusframework.nucleus.notification.RegisteredCategoryInfo +import dev.nucleusframework.nucleus.notification.ShowPreviewsSetting +import dev.nucleusframework.nucleus.notification.toMask import java.util.concurrent.ConcurrentHashMap import java.util.concurrent.atomic.AtomicLong @@ -205,7 +205,7 @@ internal object NativeMacNotificationBridge { ) { val requests = identifiers.indices.map { i -> - io.github.kdroidfilter.nucleus.notification.PendingNotificationInfo( + dev.nucleusframework.nucleus.notification.PendingNotificationInfo( identifier = identifiers[i], title = titles[i], subtitle = subtitles[i], diff --git a/notification-macos/src/main/native/macos/NucleusNotificationBridge.m b/notification-macos/src/main/native/macos/NucleusNotificationBridge.m index 588d24a6c..f3ba894d4 100644 --- a/notification-macos/src/main/native/macos/NucleusNotificationBridge.m +++ b/notification-macos/src/main/native/macos/NucleusNotificationBridge.m @@ -9,7 +9,7 @@ static JavaVM *g_jvm = NULL; static BOOL g_hasKotlinDelegate = NO; -#define BRIDGE_CLASS "io/github/kdroidfilter/nucleus/notification/macos/NativeMacNotificationBridge" +#define BRIDGE_CLASS "dev/nucleusframework/nucleus/notification/macos/NativeMacNotificationBridge" // ============================================================================ // JNI helpers @@ -314,7 +314,7 @@ static void ensureDelegateInstalled(void) { // ============================================================================ JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_macos_NativeMacNotificationBridge_nativeRequestAuthorization( +Java_dev_nucleusframework_nucleus_notification_macos_NativeMacNotificationBridge_nativeRequestAuthorization( JNIEnv *env, jclass clazz, jint optionsMask, jlong callbackId) { if (@available(macOS 10.14, *)) { ensureDelegateInstalled(); @@ -351,7 +351,7 @@ static void ensureDelegateInstalled(void) { // ============================================================================ JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_macos_NativeMacNotificationBridge_nativeGetNotificationSettings( +Java_dev_nucleusframework_nucleus_notification_macos_NativeMacNotificationBridge_nativeGetNotificationSettings( JNIEnv *env, jclass clazz, jlong callbackId) { if (@available(macOS 10.14, *)) { UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter]; @@ -413,7 +413,7 @@ static void ensureDelegateInstalled(void) { // ============================================================================ JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_macos_NativeMacNotificationBridge_nativeAddNotificationRequest( +Java_dev_nucleusframework_nucleus_notification_macos_NativeMacNotificationBridge_nativeAddNotificationRequest( JNIEnv *env, jclass clazz, jstring jIdentifier, jstring jTitle, jstring jSubtitle, jstring jBody, @@ -555,7 +555,7 @@ static void ensureDelegateInstalled(void) { // ============================================================================ JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_macos_NativeMacNotificationBridge_nativeRemovePendingNotifications( +Java_dev_nucleusframework_nucleus_notification_macos_NativeMacNotificationBridge_nativeRemovePendingNotifications( JNIEnv *env, jclass clazz, jobjectArray jIdentifiers) { if (@available(macOS 10.14, *)) { @autoreleasepool { @@ -573,7 +573,7 @@ static void ensureDelegateInstalled(void) { } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_macos_NativeMacNotificationBridge_nativeRemoveAllPendingNotifications( +Java_dev_nucleusframework_nucleus_notification_macos_NativeMacNotificationBridge_nativeRemoveAllPendingNotifications( JNIEnv *env, jclass clazz) { if (@available(macOS 10.14, *)) { [[UNUserNotificationCenter currentNotificationCenter] removeAllPendingNotificationRequests]; @@ -581,7 +581,7 @@ static void ensureDelegateInstalled(void) { } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_macos_NativeMacNotificationBridge_nativeGetPendingNotifications( +Java_dev_nucleusframework_nucleus_notification_macos_NativeMacNotificationBridge_nativeGetPendingNotifications( JNIEnv *env, jclass clazz, jlong callbackId) { if (@available(macOS 10.14, *)) { UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter]; @@ -656,7 +656,7 @@ static void ensureDelegateInstalled(void) { // ============================================================================ JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_macos_NativeMacNotificationBridge_nativeRemoveDeliveredNotifications( +Java_dev_nucleusframework_nucleus_notification_macos_NativeMacNotificationBridge_nativeRemoveDeliveredNotifications( JNIEnv *env, jclass clazz, jobjectArray jIdentifiers) { if (@available(macOS 10.14, *)) { @autoreleasepool { @@ -674,7 +674,7 @@ static void ensureDelegateInstalled(void) { } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_macos_NativeMacNotificationBridge_nativeRemoveAllDeliveredNotifications( +Java_dev_nucleusframework_nucleus_notification_macos_NativeMacNotificationBridge_nativeRemoveAllDeliveredNotifications( JNIEnv *env, jclass clazz) { if (@available(macOS 10.14, *)) { [[UNUserNotificationCenter currentNotificationCenter] removeAllDeliveredNotifications]; @@ -682,7 +682,7 @@ static void ensureDelegateInstalled(void) { } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_macos_NativeMacNotificationBridge_nativeGetDeliveredNotifications( +Java_dev_nucleusframework_nucleus_notification_macos_NativeMacNotificationBridge_nativeGetDeliveredNotifications( JNIEnv *env, jclass clazz, jlong callbackId) { if (@available(macOS 10.14, *)) { UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter]; @@ -741,7 +741,7 @@ static void ensureDelegateInstalled(void) { // ============================================================================ JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_macos_NativeMacNotificationBridge_nativeSetNotificationCategories( +Java_dev_nucleusframework_nucleus_notification_macos_NativeMacNotificationBridge_nativeSetNotificationCategories( JNIEnv *env, jclass clazz, jobjectArray jCatIds, jintArray jCatOptions, jintArray jActionCatIndices, @@ -831,7 +831,7 @@ static void ensureDelegateInstalled(void) { } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_macos_NativeMacNotificationBridge_nativeGetNotificationCategories( +Java_dev_nucleusframework_nucleus_notification_macos_NativeMacNotificationBridge_nativeGetNotificationCategories( JNIEnv *env, jclass clazz, jlong callbackId) { if (@available(macOS 10.14, *)) { UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter]; @@ -943,7 +943,7 @@ static void fireBadgeResult(jlong callbackId, NSError * _Nullable error) { } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_macos_NativeMacNotificationBridge_nativeSetBadgeCount( +Java_dev_nucleusframework_nucleus_notification_macos_NativeMacNotificationBridge_nativeSetBadgeCount( JNIEnv *env, jclass clazz, jint count, jlong callbackId) { if (@available(macOS 13.0, *)) { // macOS 13+: use the proper UNUserNotificationCenter API @@ -970,7 +970,7 @@ static void fireBadgeResult(jlong callbackId, NSError * _Nullable error) { } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_macos_NativeMacNotificationBridge_nativeGetBadgeCount( +Java_dev_nucleusframework_nucleus_notification_macos_NativeMacNotificationBridge_nativeGetBadgeCount( JNIEnv *env, jclass clazz, jlong callbackId) { if (@available(macOS 13.0, *)) { // macOS 13+: no direct getter; read from NSDockTile as best effort @@ -1007,7 +1007,7 @@ static void fireBadgeResult(jlong callbackId, NSError * _Nullable error) { // ============================================================================ JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_macos_NativeMacNotificationBridge_nativeSetDelegate( +Java_dev_nucleusframework_nucleus_notification_macos_NativeMacNotificationBridge_nativeSetDelegate( JNIEnv *env, jclass clazz, jboolean enabled) { if (@available(macOS 10.14, *)) { g_hasKotlinDelegate = enabled; diff --git a/notification-macos/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.notification-macos/reachability-metadata.json b/notification-macos/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.notification-macos/reachability-metadata.json similarity index 96% rename from notification-macos/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.notification-macos/reachability-metadata.json rename to notification-macos/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.notification-macos/reachability-metadata.json index 904f01d39..fc77b97a1 100644 --- a/notification-macos/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.notification-macos/reachability-metadata.json +++ b/notification-macos/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.notification-macos/reachability-metadata.json @@ -1,7 +1,7 @@ { "reflection": [ { - "type": "io.github.kdroidfilter.nucleus.notification.macos.NativeMacNotificationBridge", + "type": "dev.nucleusframework.nucleus.notification.macos.NativeMacNotificationBridge", "jniAccessible": true, "methods": [ { diff --git a/notification-windows/build.gradle.kts b/notification-windows/build.gradle.kts index 03589bf99..625937e53 100644 --- a/notification-windows/build.gradle.kts +++ b/notification-windows/build.gradle.kts @@ -54,7 +54,7 @@ tasks.configureEach { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.notification-windows", publishVersion) + coordinates("dev.nucleusframework", "nucleus.notification-windows", publishVersion) pom { name.set("Nucleus Notification Windows") @@ -70,7 +70,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/notification-windows/config/ktlint/baseline.xml b/notification-windows/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/notification-windows/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/Enums.kt b/notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/Enums.kt similarity index 98% rename from notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/Enums.kt rename to notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/Enums.kt index 192dbb7a2..09b6c842c 100644 --- a/notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/Enums.kt +++ b/notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/Enums.kt @@ -1,6 +1,6 @@ @file:Suppress("MagicNumber") -package io.github.kdroidfilter.nucleus.notification.windows +package dev.nucleusframework.nucleus.notification.windows // -- Activation -- diff --git a/notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/Model.kt b/notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/Model.kt similarity index 99% rename from notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/Model.kt rename to notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/Model.kt index 1645aaf3c..82754ba1e 100644 --- a/notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/Model.kt +++ b/notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/Model.kt @@ -1,6 +1,6 @@ @file:Suppress("LongParameterList") -package io.github.kdroidfilter.nucleus.notification.windows +package dev.nucleusframework.nucleus.notification.windows // ============================================================================= // Toast content — root element diff --git a/notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/NativeWindowsNotificationBridge.kt b/notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/NativeWindowsNotificationBridge.kt similarity index 98% rename from notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/NativeWindowsNotificationBridge.kt rename to notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/NativeWindowsNotificationBridge.kt index d3c151da0..3fc7382a7 100644 --- a/notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/NativeWindowsNotificationBridge.kt +++ b/notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/NativeWindowsNotificationBridge.kt @@ -1,8 +1,8 @@ @file:Suppress("TooManyFunctions", "LongParameterList") -package io.github.kdroidfilter.nucleus.notification.windows +package dev.nucleusframework.nucleus.notification.windows -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader import java.util.concurrent.ConcurrentHashMap import java.util.concurrent.atomic.AtomicLong import javax.swing.SwingUtilities diff --git a/notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/ToastContentDsl.kt b/notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/ToastContentDsl.kt similarity index 99% rename from notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/ToastContentDsl.kt rename to notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/ToastContentDsl.kt index 2dc85fc4c..78b37b11f 100644 --- a/notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/ToastContentDsl.kt +++ b/notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/ToastContentDsl.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.notification.windows +package dev.nucleusframework.nucleus.notification.windows /** * Kotlin DSL for building toast notification content. diff --git a/notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/ToastNotificationListener.kt b/notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/ToastNotificationListener.kt similarity index 95% rename from notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/ToastNotificationListener.kt rename to notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/ToastNotificationListener.kt index 8b08020bd..999454b90 100644 --- a/notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/ToastNotificationListener.kt +++ b/notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/ToastNotificationListener.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.notification.windows +package dev.nucleusframework.nucleus.notification.windows /** * Listener for toast notification lifecycle events. diff --git a/notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/ToastXmlBuilder.kt b/notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/ToastXmlBuilder.kt similarity index 99% rename from notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/ToastXmlBuilder.kt rename to notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/ToastXmlBuilder.kt index 2e7891201..6c383cf3c 100644 --- a/notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/ToastXmlBuilder.kt +++ b/notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/ToastXmlBuilder.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.notification.windows +package dev.nucleusframework.nucleus.notification.windows /** * Builds the Windows toast notification XML from a [ToastContent] model. diff --git a/notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/WindowsNotificationCenter.kt b/notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/WindowsNotificationCenter.kt similarity index 98% rename from notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/WindowsNotificationCenter.kt rename to notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/WindowsNotificationCenter.kt index 2bddde53e..82214369b 100644 --- a/notification-windows/src/main/kotlin/io/github/kdroidfilter/nucleus/notification/windows/WindowsNotificationCenter.kt +++ b/notification-windows/src/main/kotlin/dev/nucleusframework/nucleus/notification/windows/WindowsNotificationCenter.kt @@ -1,9 +1,9 @@ @file:Suppress("TooManyFunctions") -package io.github.kdroidfilter.nucleus.notification.windows +package dev.nucleusframework.nucleus.notification.windows -import io.github.kdroidfilter.nucleus.core.runtime.ExecutableRuntime -import io.github.kdroidfilter.nucleus.core.runtime.NucleusApp +import dev.nucleusframework.nucleus.core.runtime.ExecutableRuntime +import dev.nucleusframework.nucleus.core.runtime.NucleusApp import java.util.logging.Logger /** diff --git a/notification-windows/src/main/native/windows/nucleus_notification_windows.cpp b/notification-windows/src/main/native/windows/nucleus_notification_windows.cpp index 454466ce4..61b654b26 100644 --- a/notification-windows/src/main/native/windows/nucleus_notification_windows.cpp +++ b/notification-windows/src/main/native/windows/nucleus_notification_windows.cpp @@ -52,7 +52,7 @@ using namespace Microsoft::WRL; using namespace ABI::Windows::UI::Notifications; using namespace ABI::Windows::Data::Xml::Dom; -#define BRIDGE_CLASS "io/github/kdroidfilter/nucleus/notification/windows/NativeWindowsNotificationBridge" +#define BRIDGE_CLASS "dev/nucleusframework/nucleus/notification/windows/NativeWindowsNotificationBridge" // ============================================================================ // Globals @@ -393,7 +393,7 @@ static void fireFailed(const std::wstring &tag, const std::wstring &group, int e extern "C" { JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_notification_windows_NativeWindowsNotificationBridge_nativeInitialize( +Java_dev_nucleusframework_nucleus_notification_windows_NativeWindowsNotificationBridge_nativeInitialize( JNIEnv *env, jclass clazz, jstring jAumid, jboolean jIsAppx, jstring jAppName, jint jShortcutPolicy ) { @@ -444,7 +444,7 @@ Java_io_github_kdroidfilter_nucleus_notification_windows_NativeWindowsNotificati } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_windows_NativeWindowsNotificationBridge_nativeShowToast( +Java_dev_nucleusframework_nucleus_notification_windows_NativeWindowsNotificationBridge_nativeShowToast( JNIEnv *env, jclass clazz, jstring jXml, jstring jTag, jstring jGroup, jboolean expiresOnReboot, jlong expirationTimeMs, @@ -681,7 +681,7 @@ Java_io_github_kdroidfilter_nucleus_notification_windows_NativeWindowsNotificati } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_windows_NativeWindowsNotificationBridge_nativeUpdateToast( +Java_dev_nucleusframework_nucleus_notification_windows_NativeWindowsNotificationBridge_nativeUpdateToast( JNIEnv *env, jclass clazz, jstring jTag, jstring jGroup, jint sequenceNumber, jobjectArray jKeys, jobjectArray jValues, jlong callbackId @@ -748,7 +748,7 @@ Java_io_github_kdroidfilter_nucleus_notification_windows_NativeWindowsNotificati } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_windows_NativeWindowsNotificationBridge_nativeRemoveToast( +Java_dev_nucleusframework_nucleus_notification_windows_NativeWindowsNotificationBridge_nativeRemoveToast( JNIEnv *env, jclass clazz, jstring jTag, jstring jGroup ) { std::lock_guard lock(g_mutex); @@ -773,7 +773,7 @@ Java_io_github_kdroidfilter_nucleus_notification_windows_NativeWindowsNotificati } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_windows_NativeWindowsNotificationBridge_nativeRemoveGroupToasts( +Java_dev_nucleusframework_nucleus_notification_windows_NativeWindowsNotificationBridge_nativeRemoveGroupToasts( JNIEnv *env, jclass clazz, jstring jGroup ) { std::lock_guard lock(g_mutex); @@ -789,7 +789,7 @@ Java_io_github_kdroidfilter_nucleus_notification_windows_NativeWindowsNotificati } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_windows_NativeWindowsNotificationBridge_nativeClearAllToasts( +Java_dev_nucleusframework_nucleus_notification_windows_NativeWindowsNotificationBridge_nativeClearAllToasts( JNIEnv *env, jclass clazz ) { std::lock_guard lock(g_mutex); @@ -809,7 +809,7 @@ Java_io_github_kdroidfilter_nucleus_notification_windows_NativeWindowsNotificati } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_windows_NativeWindowsNotificationBridge_nativeGetHistory( +Java_dev_nucleusframework_nucleus_notification_windows_NativeWindowsNotificationBridge_nativeGetHistory( JNIEnv *env, jclass clazz, jlong callbackId ) { std::lock_guard lock(g_mutex); @@ -838,7 +838,7 @@ Java_io_github_kdroidfilter_nucleus_notification_windows_NativeWindowsNotificati } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_notification_windows_NativeWindowsNotificationBridge_nativeUninitialize( +Java_dev_nucleusframework_nucleus_notification_windows_NativeWindowsNotificationBridge_nativeUninitialize( JNIEnv *env, jclass clazz ) { std::lock_guard lock(g_mutex); diff --git a/notification-windows/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.notification-windows/reachability-metadata.json b/notification-windows/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.notification-windows/reachability-metadata.json similarity index 91% rename from notification-windows/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.notification-windows/reachability-metadata.json rename to notification-windows/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.notification-windows/reachability-metadata.json index ef7db400f..e34305832 100644 --- a/notification-windows/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.notification-windows/reachability-metadata.json +++ b/notification-windows/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.notification-windows/reachability-metadata.json @@ -1,7 +1,7 @@ { "reflection": [ { - "type": "io.github.kdroidfilter.nucleus.notification.windows.NativeWindowsNotificationBridge", + "type": "dev.nucleusframework.nucleus.notification.windows.NativeWindowsNotificationBridge", "jniAccessible": true, "methods": [ { diff --git a/nucleus-application/build.gradle.kts b/nucleus-application/build.gradle.kts index 4e96214ae..c8ea28cc4 100644 --- a/nucleus-application/build.gradle.kts +++ b/nucleus-application/build.gradle.kts @@ -40,7 +40,7 @@ kotlin { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.nucleus-application", publishVersion) + coordinates("dev.nucleusframework", "nucleus.nucleus-application", publishVersion) pom { name.set("Nucleus Application") @@ -59,7 +59,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/nucleus-application/config/ktlint/baseline.xml b/nucleus-application/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/nucleus-application/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/AwtDialogNucleusWindow.kt b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/AwtDialogNucleusWindow.kt similarity index 98% rename from nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/AwtDialogNucleusWindow.kt rename to nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/AwtDialogNucleusWindow.kt index 88e682ff4..beea7d481 100644 --- a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/AwtDialogNucleusWindow.kt +++ b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/AwtDialogNucleusWindow.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.application +package dev.nucleusframework.nucleus.application import androidx.compose.ui.awt.ComposeDialog import androidx.compose.ui.graphics.painter.Painter diff --git a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/AwtNucleusWindow.kt b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/AwtNucleusWindow.kt similarity index 99% rename from nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/AwtNucleusWindow.kt rename to nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/AwtNucleusWindow.kt index 3e82718f4..348be1110 100644 --- a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/AwtNucleusWindow.kt +++ b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/AwtNucleusWindow.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.application +package dev.nucleusframework.nucleus.application import androidx.compose.ui.awt.ComposeWindow import androidx.compose.ui.graphics.painter.Painter diff --git a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/DecoratedDialog.kt b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/DecoratedDialog.kt similarity index 89% rename from nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/DecoratedDialog.kt rename to nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/DecoratedDialog.kt index fd1084645..f295ac4e1 100644 --- a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/DecoratedDialog.kt +++ b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/DecoratedDialog.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.application +package dev.nucleusframework.nucleus.application import androidx.compose.runtime.Composable import androidx.compose.runtime.CompositionLocalProvider @@ -7,10 +7,10 @@ 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.application.internal.TaoDecoratedDialogAdapter -import io.github.kdroidfilter.nucleus.window.AwtDecoratedDialogScope -import io.github.kdroidfilter.nucleus.window.DecoratedDialogState -import io.github.kdroidfilter.nucleus.window.DecoratedDialog as AwtDecoratedDialog +import dev.nucleusframework.nucleus.application.internal.TaoDecoratedDialogAdapter +import dev.nucleusframework.nucleus.window.AwtDecoratedDialogScope +import dev.nucleusframework.nucleus.window.DecoratedDialogState +import dev.nucleusframework.nucleus.window.DecoratedDialog as AwtDecoratedDialog /** * Backend-agnostic decorated dialog. Mirrors [DecoratedWindow] but for modal / diff --git a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/DecoratedWindow.kt b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/DecoratedWindow.kt similarity index 90% rename from nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/DecoratedWindow.kt rename to nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/DecoratedWindow.kt index 5372dd6cb..e9ef05a93 100644 --- a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/DecoratedWindow.kt +++ b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/DecoratedWindow.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.application +package dev.nucleusframework.nucleus.application import androidx.compose.runtime.Composable import androidx.compose.runtime.CompositionLocalProvider @@ -8,10 +8,10 @@ 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.internal.TaoDecoratedWindowAdapter -import io.github.kdroidfilter.nucleus.window.AwtDecoratedWindowScope -import io.github.kdroidfilter.nucleus.window.DecoratedWindowState -import io.github.kdroidfilter.nucleus.window.DecoratedWindow as AwtDecoratedWindow +import dev.nucleusframework.nucleus.application.internal.TaoDecoratedWindowAdapter +import dev.nucleusframework.nucleus.window.AwtDecoratedWindowScope +import dev.nucleusframework.nucleus.window.DecoratedWindowState +import dev.nucleusframework.nucleus.window.DecoratedWindow as AwtDecoratedWindow /** * Backend-agnostic decorated window. Inside [content], `window` is a diff --git a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/NucleusApplication.kt b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/NucleusApplication.kt similarity index 92% rename from nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/NucleusApplication.kt rename to nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/NucleusApplication.kt index cf0bbc6d0..0a2be5623 100644 --- a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/NucleusApplication.kt +++ b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/NucleusApplication.kt @@ -1,9 +1,9 @@ -package io.github.kdroidfilter.nucleus.application +package dev.nucleusframework.nucleus.application import androidx.compose.runtime.Composable import androidx.compose.runtime.CompositionLocalProvider import androidx.compose.ui.window.application -import io.github.kdroidfilter.nucleus.application.internal.TaoLauncher +import dev.nucleusframework.nucleus.application.internal.TaoLauncher /** * Single entry point for a Nucleus desktop application. @@ -64,7 +64,7 @@ internal fun resolveBackend(requested: NucleusBackend): NucleusBackend = private val TaoBackendOnClasspath: Boolean by lazy { try { Class.forName( - "io.github.kdroidfilter.nucleus.window.tao.TaoApplication", + "dev.nucleusframework.nucleus.window.tao.TaoApplication", false, NucleusBackend::class.java.classLoader, ) diff --git a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/NucleusApplicationScope.kt b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/NucleusApplicationScope.kt similarity index 89% rename from nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/NucleusApplicationScope.kt rename to nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/NucleusApplicationScope.kt index 33bdd250a..59260b6c4 100644 --- a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/NucleusApplicationScope.kt +++ b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/NucleusApplicationScope.kt @@ -1,11 +1,11 @@ -package io.github.kdroidfilter.nucleus.application +package dev.nucleusframework.nucleus.application import androidx.compose.runtime.Stable -import io.github.kdroidfilter.nucleus.core.runtime.DeepLinkHandler -import io.github.kdroidfilter.nucleus.window.tao.TaoDeepLinkBridge +import dev.nucleusframework.nucleus.core.runtime.DeepLinkHandler +import dev.nucleusframework.nucleus.window.tao.TaoDeepLinkBridge import java.net.URI import androidx.compose.ui.window.ApplicationScope as AwtApplicationScope -import io.github.kdroidfilter.nucleus.window.tao.ApplicationScope as TaoApplicationScope +import dev.nucleusframework.nucleus.window.tao.ApplicationScope as TaoApplicationScope /** * Backend-agnostic scope exposed by [nucleusApplication]. The two concrete diff --git a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/NucleusBackend.kt b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/NucleusBackend.kt similarity index 95% rename from nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/NucleusBackend.kt rename to nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/NucleusBackend.kt index c6255ba24..855c52f6d 100644 --- a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/NucleusBackend.kt +++ b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/NucleusBackend.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.application +package dev.nucleusframework.nucleus.application import androidx.compose.runtime.staticCompositionLocalOf diff --git a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/NucleusWindow.kt b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/NucleusWindow.kt similarity index 91% rename from nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/NucleusWindow.kt rename to nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/NucleusWindow.kt index f13383d20..6f353af79 100644 --- a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/NucleusWindow.kt +++ b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/NucleusWindow.kt @@ -1,12 +1,12 @@ -package io.github.kdroidfilter.nucleus.application +package dev.nucleusframework.nucleus.application import androidx.compose.runtime.Stable import androidx.compose.runtime.staticCompositionLocalOf import androidx.compose.ui.awt.ComposeWindow import androidx.compose.ui.graphics.painter.Painter import androidx.compose.ui.unit.DpSize -import io.github.kdroidfilter.nucleus.window.DecoratedDialogScope -import io.github.kdroidfilter.nucleus.window.DecoratedWindowScope +import dev.nucleusframework.nucleus.window.DecoratedDialogScope +import dev.nucleusframework.nucleus.window.DecoratedWindowScope import kotlinx.coroutines.flow.StateFlow /** @@ -65,7 +65,7 @@ interface NucleusWindowUnsafe { val awtDialog: androidx.compose.ui.awt.ComposeDialog? get() = null /** Tao-owned window (no-AWT backend). */ - val taoWindow: io.github.kdroidfilter.nucleus.window.tao.TaoWindow? get() = null + val taoWindow: dev.nucleusframework.nucleus.window.tao.TaoWindow? get() = null /** Native `tao::Window` handle, opaque token suitable for FFI bridges. */ val taoHandle: Long? get() = null diff --git a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/TaoNucleusWindow.kt b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/TaoNucleusWindow.kt similarity index 95% rename from nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/TaoNucleusWindow.kt rename to nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/TaoNucleusWindow.kt index 83de7d2e3..ce10d5f2a 100644 --- a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/TaoNucleusWindow.kt +++ b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/TaoNucleusWindow.kt @@ -1,11 +1,11 @@ -package io.github.kdroidfilter.nucleus.application +package dev.nucleusframework.nucleus.application import androidx.compose.runtime.State import androidx.compose.ui.awt.ComposeWindow import androidx.compose.ui.graphics.painter.Painter import androidx.compose.ui.unit.DpSize -import io.github.kdroidfilter.nucleus.window.DecoratedWindowState -import io.github.kdroidfilter.nucleus.window.tao.TaoWindow +import dev.nucleusframework.nucleus.window.DecoratedWindowState +import dev.nucleusframework.nucleus.window.tao.TaoWindow import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.asStateFlow diff --git a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/internal/TaoDecoratedDialogAdapter.kt b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/internal/TaoDecoratedDialogAdapter.kt similarity index 75% rename from nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/internal/TaoDecoratedDialogAdapter.kt rename to nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/internal/TaoDecoratedDialogAdapter.kt index 4d57f55d3..f624f115c 100644 --- a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/internal/TaoDecoratedDialogAdapter.kt +++ b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/internal/TaoDecoratedDialogAdapter.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.application.internal +package dev.nucleusframework.nucleus.application.internal import androidx.compose.runtime.Composable import androidx.compose.runtime.CompositionLocalProvider @@ -7,20 +7,20 @@ import androidx.compose.runtime.remember import androidx.compose.ui.graphics.painter.Painter import androidx.compose.ui.input.key.KeyEvent import androidx.compose.ui.window.DialogState -import io.github.kdroidfilter.nucleus.application.LocalNucleusBackend -import io.github.kdroidfilter.nucleus.application.LocalNucleusWindow -import io.github.kdroidfilter.nucleus.application.NucleusBackend -import io.github.kdroidfilter.nucleus.application.NucleusDecoratedDialogScope -import io.github.kdroidfilter.nucleus.application.NucleusWindow -import io.github.kdroidfilter.nucleus.application.TaoNucleusApplicationScope -import io.github.kdroidfilter.nucleus.application.TaoNucleusWindow -import io.github.kdroidfilter.nucleus.window.DecoratedDialogState -import io.github.kdroidfilter.nucleus.window.DecoratedWindowState -import io.github.kdroidfilter.nucleus.window.LocalIsDarkTheme -import io.github.kdroidfilter.nucleus.window.styling.LocalDecoratedWindowStyle -import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle -import io.github.kdroidfilter.nucleus.window.tao.TaoDecoratedDialogScope -import io.github.kdroidfilter.nucleus.window.tao.DecoratedDialog as TaoDecoratedDialog +import dev.nucleusframework.nucleus.application.LocalNucleusBackend +import dev.nucleusframework.nucleus.application.LocalNucleusWindow +import dev.nucleusframework.nucleus.application.NucleusBackend +import dev.nucleusframework.nucleus.application.NucleusDecoratedDialogScope +import dev.nucleusframework.nucleus.application.NucleusWindow +import dev.nucleusframework.nucleus.application.TaoNucleusApplicationScope +import dev.nucleusframework.nucleus.application.TaoNucleusWindow +import dev.nucleusframework.nucleus.window.DecoratedDialogState +import dev.nucleusframework.nucleus.window.DecoratedWindowState +import dev.nucleusframework.nucleus.window.LocalIsDarkTheme +import dev.nucleusframework.nucleus.window.styling.LocalDecoratedWindowStyle +import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle +import dev.nucleusframework.nucleus.window.tao.TaoDecoratedDialogScope +import dev.nucleusframework.nucleus.window.tao.DecoratedDialog as TaoDecoratedDialog internal object TaoDecoratedDialogAdapter { @Suppress("LongParameterList") diff --git a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/internal/TaoDecoratedWindowAdapter.kt b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/internal/TaoDecoratedWindowAdapter.kt similarity index 78% rename from nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/internal/TaoDecoratedWindowAdapter.kt rename to nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/internal/TaoDecoratedWindowAdapter.kt index d49c2a674..933477526 100644 --- a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/internal/TaoDecoratedWindowAdapter.kt +++ b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/internal/TaoDecoratedWindowAdapter.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.application.internal +package dev.nucleusframework.nucleus.application.internal import androidx.compose.runtime.Composable import androidx.compose.runtime.CompositionLocalProvider @@ -8,19 +8,19 @@ import androidx.compose.ui.graphics.painter.Painter import androidx.compose.ui.input.key.KeyEvent import androidx.compose.ui.unit.DpSize import androidx.compose.ui.window.WindowState -import io.github.kdroidfilter.nucleus.application.LocalNucleusBackend -import io.github.kdroidfilter.nucleus.application.LocalNucleusWindow -import io.github.kdroidfilter.nucleus.application.NucleusBackend -import io.github.kdroidfilter.nucleus.application.NucleusDecoratedWindowScope -import io.github.kdroidfilter.nucleus.application.NucleusWindow -import io.github.kdroidfilter.nucleus.application.TaoNucleusApplicationScope -import io.github.kdroidfilter.nucleus.application.TaoNucleusWindow -import io.github.kdroidfilter.nucleus.window.DecoratedWindowState -import io.github.kdroidfilter.nucleus.window.LocalIsDarkTheme -import io.github.kdroidfilter.nucleus.window.styling.LocalDecoratedWindowStyle -import io.github.kdroidfilter.nucleus.window.styling.LocalTitleBarStyle -import io.github.kdroidfilter.nucleus.window.tao.TaoDecoratedWindowScope -import io.github.kdroidfilter.nucleus.window.tao.DecoratedWindow as TaoDecoratedWindow +import dev.nucleusframework.nucleus.application.LocalNucleusBackend +import dev.nucleusframework.nucleus.application.LocalNucleusWindow +import dev.nucleusframework.nucleus.application.NucleusBackend +import dev.nucleusframework.nucleus.application.NucleusDecoratedWindowScope +import dev.nucleusframework.nucleus.application.NucleusWindow +import dev.nucleusframework.nucleus.application.TaoNucleusApplicationScope +import dev.nucleusframework.nucleus.application.TaoNucleusWindow +import dev.nucleusframework.nucleus.window.DecoratedWindowState +import dev.nucleusframework.nucleus.window.LocalIsDarkTheme +import dev.nucleusframework.nucleus.window.styling.LocalDecoratedWindowStyle +import dev.nucleusframework.nucleus.window.styling.LocalTitleBarStyle +import dev.nucleusframework.nucleus.window.tao.TaoDecoratedWindowScope +import dev.nucleusframework.nucleus.window.tao.DecoratedWindow as TaoDecoratedWindow /** * Isolates references to Tao symbols. Loaded only when the Tao backend is diff --git a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/internal/TaoLauncher.kt b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/internal/TaoLauncher.kt similarity index 70% rename from nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/internal/TaoLauncher.kt rename to nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/internal/TaoLauncher.kt index 7001abae6..1b4983308 100644 --- a/nucleus-application/src/main/kotlin/io/github/kdroidfilter/nucleus/application/internal/TaoLauncher.kt +++ b/nucleus-application/src/main/kotlin/dev/nucleusframework/nucleus/application/internal/TaoLauncher.kt @@ -1,13 +1,13 @@ -package io.github.kdroidfilter.nucleus.application.internal +package dev.nucleusframework.nucleus.application.internal import androidx.compose.runtime.Composable import androidx.compose.runtime.CompositionLocalProvider -import io.github.kdroidfilter.nucleus.application.LocalNucleusBackend -import io.github.kdroidfilter.nucleus.application.NucleusApplicationScope -import io.github.kdroidfilter.nucleus.application.NucleusBackend -import io.github.kdroidfilter.nucleus.application.TaoNucleusApplicationScope -import io.github.kdroidfilter.nucleus.window.tao.TaoDeepLinkBridge -import io.github.kdroidfilter.nucleus.window.tao.taoApplication +import dev.nucleusframework.nucleus.application.LocalNucleusBackend +import dev.nucleusframework.nucleus.application.NucleusApplicationScope +import dev.nucleusframework.nucleus.application.NucleusBackend +import dev.nucleusframework.nucleus.application.TaoNucleusApplicationScope +import dev.nucleusframework.nucleus.window.tao.TaoDeepLinkBridge +import dev.nucleusframework.nucleus.window.tao.taoApplication /** * Isolates references to Tao symbols. Loaded only when [NucleusBackend.Tao] is diff --git a/plugin-build/gradle.properties b/plugin-build/gradle.properties index 78e6e757b..cd0c1b122 100644 --- a/plugin-build/gradle.properties +++ b/plugin-build/gradle.properties @@ -1,10 +1,10 @@ -ID=io.github.kdroidfilter.nucleus -GROUP=io.github.kdroidfilter +ID=dev.nucleusframework.nucleus +GROUP=dev.nucleusframework DISPLAY_NAME=Nucleus Gradle Plugin DESCRIPTION=A JVM desktop application packaging plugin -WEBSITE=https://github.com/kdroidfilter/Nucleus -VCS_URL=https://github.com/kdroidfilter/Nucleus -IMPLEMENTATION_CLASS=io.github.kdroidfilter.nucleus.NucleusPlugin +WEBSITE=https://github.com/kdroidFilter/Nucleus +VCS_URL=https://github.com/kdroidFilter/Nucleus +IMPLEMENTATION_CLASS=dev.nucleusframework.nucleus.NucleusPlugin org.gradle.parallel=true org.gradle.configuration-cache=true diff --git a/plugin-build/plugin/build.gradle.kts b/plugin-build/plugin/build.gradle.kts index 5842fed23..2fb6621a8 100644 --- a/plugin-build/plugin/build.gradle.kts +++ b/plugin-build/plugin/build.gradle.kts @@ -224,7 +224,7 @@ java { kotlin { compilerOptions { jvmTarget.set(JvmTarget.JVM_11) - freeCompilerArgs.add("-opt-in=io.github.kdroidfilter.nucleus.ExperimentalNucleusLibrary") + freeCompilerArgs.add("-opt-in=dev.nucleusframework.nucleus.ExperimentalNucleusLibrary") } } @@ -236,7 +236,7 @@ val composeMaterial3Version = project.findProperty("compose.material3.version")? val pluginVersion = project.version.toString() val buildConfig = tasks.register("buildConfig", GenerateBuildConfig::class.java) { - classFqName.set("io.github.kdroidfilter.nucleus.NucleusBuildConfig") + classFqName.set("dev.nucleusframework.nucleus.NucleusBuildConfig") generatedOutputDir.set(buildConfigDir) fieldsToGenerate.put("composeVersion", composeVersion) fieldsToGenerate.put("composeMaterial3Version", composeMaterial3Version) diff --git a/plugin-build/plugin/config/ktlint/baseline.xml b/plugin-build/plugin/config/ktlint/baseline.xml index b200150ec..b6f8ca48a 100644 --- a/plugin-build/plugin/config/ktlint/baseline.xml +++ b/plugin-build/plugin/config/ktlint/baseline.xml @@ -9,33 +9,33 @@ - + - + - + - + - + - + - + - + @@ -45,19 +45,19 @@ - + - + - + - + - + @@ -66,34 +66,34 @@ - + - + - + - + - + - + - + - + - + @@ -134,71 +134,71 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/plugin-build/plugin/detekt-baseline-main.xml b/plugin-build/plugin/detekt-baseline-main.xml index 364bde8c0..cbe5e5e51 100644 --- a/plugin-build/plugin/detekt-baseline-main.xml +++ b/plugin-build/plugin/detekt-baseline-main.xml @@ -29,7 +29,7 @@ ForbiddenComment:configureNativeApplication.kt$// todo: dmg package version ForbiddenComment:providerUtils.kt$// todo: remove once we drop support for Gradle 6.4 HasPlatformType:gradleUtils.kt$val Project.localPropertiesFile get() = project.rootProject.file("local.properties") - InvalidPackageDeclaration:NucleusBuildConfig.kt$package io.github.kdroidfilter.nucleus + InvalidPackageDeclaration:NucleusBuildConfig.kt$package dev.nucleusframework.nucleus LargeClass:AbstractJPackageTask.kt$AbstractJPackageTask : AbstractJvmToolOperationTask LongMethod:AbstractJPackageTask.kt$AbstractJPackageTask$override fun makeArgs(tmpDir: File): MutableList<String> LongMethod:AbstractJPackageTask.kt$AbstractJPackageTask$override fun prepareWorkingDir(inputChanges: InputChanges) @@ -135,7 +135,7 @@ MaxLineLength:NucleusProjectProperties.kt$NucleusProperties$fun macSign(providers: ProviderFactory): Provider<Boolean> MaxLineLength:NucleusProjectProperties.kt$NucleusProperties$fun preserveWorkingDir(providers: ProviderFactory): Provider<Boolean> MaxLineLength:NucleusProjectProperties.kt$NucleusProperties$internal const val DISABLE_RESOURCE_CONTENT_HASH_GENERATION = "org.jetbrains.compose.resources.content.hash.generation.disable" - MaxLineLength:ExperimentalNucleusLibrary.kt$ExperimentalNucleusLibrary$"This library is experimental and can be unstable. Add @OptIn(io.github.kdroidfilter.nucleus.ExperimentalNucleusLibrary::class) annotation." + MaxLineLength:ExperimentalNucleusLibrary.kt$ExperimentalNucleusLibrary$"This library is experimental and can be unstable. Add @OptIn(dev.nucleusframework.nucleus.ExperimentalNucleusLibrary::class) annotation." MaxLineLength:InfoPlistBuilder.kt$InfoPlistBuilder$appendLine("<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"https://www.apple.com/DTDs/PropertyList-1.0.dtd\">") MaxLineLength:InfoPlistBuilder.kt$InfoPlistBuilder.InfoPlistValue.InfoPlistMapValue$"${indentForLevel(nestingLevel + 1)}<key>${key.name}</key>\n${value.asPlistEntry(nestingLevel + 1)}" MaxLineLength:JvmApplicationContext.kt$JvmApplicationContext$"Specify, which target to use by using `compose.desktop.application.from(kotlinMppTarget)`" @@ -201,8 +201,8 @@ TooManyFunctions:AbstractJPackageTask.kt$AbstractJPackageTask : AbstractJvmToolOperationTask TooManyFunctions:NucleusProjectProperties.kt$NucleusProperties TooManyFunctions:LinuxPackagePostProcessor.kt$LinuxPackagePostProcessor - TooManyFunctions:configureJvmApplication.kt$io.github.kdroidfilter.nucleus.desktop.application.internal.configureJvmApplication.kt - TooManyFunctions:fileUtils.kt$io.github.kdroidfilter.nucleus.internal.utils.fileUtils.kt + TooManyFunctions:configureJvmApplication.kt$dev.nucleusframework.nucleus.desktop.application.internal.configureJvmApplication.kt + TooManyFunctions:fileUtils.kt$dev.nucleusframework.nucleus.internal.utils.fileUtils.kt TopLevelPropertyNaming:CheckComposeCompilerPlugin.kt$internal const val minimalSupportedKgpVersion = "2.2.0" TopLevelPropertyNaming:CheckComposeCompilerPlugin.kt$internal const val minimalSupportedKgpVersionError = "e: Configuration problem: " + "Minimal supported Kotlin Gradle Plugin version is $minimalSupportedKgpVersion" TopLevelPropertyNaming:CheckComposeCompilerPlugin.kt$internal const val newComposeCompilerError = "Starting with Compose Multiplatform 1.6.10, " + "you should apply \"$newComposeCompilerKotlinSupportPluginId\" plugin." + "\nSee the migration guide https://www.jetbrains.com/help/kotlin-multiplatform-dev/compose-compiler.html#migrating-a-compose-multiplatform-project" @@ -233,22 +233,22 @@ UseRequireNotNull:LinuxPackagePostProcessor.kt$LinuxPackagePostProcessor$require(compression != null) { "rpmCompressionLevel requires rpmCompression to be set" } VariableNaming:NativeApplication.kt$NativeApplication$internal val _targets = arrayListOf<KotlinNativeTarget>() WildcardImport:AbstractCheckNativeDistributionRuntime.kt$import org.gradle.api.tasks.* - WildcardImport:AbstractJvmToolOperationTask.kt$import io.github.kdroidfilter.nucleus.internal.utils.* + WildcardImport:AbstractJvmToolOperationTask.kt$import dev.nucleusframework.nucleus.internal.utils.* WildcardImport:AbstractJvmToolOperationTask.kt$import org.gradle.api.tasks.* WildcardImport:AbstractNativeMacApplicationPackageDmgTask.kt$import org.gradle.api.tasks.* - WildcardImport:AbstractNativeMacApplicationPackageTask.kt$import io.github.kdroidfilter.nucleus.internal.utils.* + WildcardImport:AbstractNativeMacApplicationPackageTask.kt$import dev.nucleusframework.nucleus.internal.utils.* WildcardImport:AbstractNativeMacApplicationPackageTask.kt$import org.gradle.api.tasks.* WildcardImport:AbstractNotarizationTask.kt$import org.gradle.api.tasks.* - WildcardImport:AbstractProguardTask.kt$import io.github.kdroidfilter.nucleus.desktop.application.internal.* - WildcardImport:AbstractProguardTask.kt$import io.github.kdroidfilter.nucleus.internal.utils.* + WildcardImport:AbstractProguardTask.kt$import dev.nucleusframework.nucleus.desktop.application.internal.* + WildcardImport:AbstractProguardTask.kt$import dev.nucleusframework.nucleus.internal.utils.* WildcardImport:AbstractProguardTask.kt$import org.gradle.api.file.* WildcardImport:AbstractProguardTask.kt$import org.gradle.api.tasks.* - WildcardImport:AbstractSuggestModulesTask.kt$import io.github.kdroidfilter.nucleus.internal.utils.* + WildcardImport:AbstractSuggestModulesTask.kt$import dev.nucleusframework.nucleus.internal.utils.* WildcardImport:AbstractSuggestModulesTask.kt$import org.gradle.api.tasks.* - WildcardImport:InfoPlistBuilder.kt$import io.github.kdroidfilter.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.* + WildcardImport:InfoPlistBuilder.kt$import dev.nucleusframework.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.* WildcardImport:MacSigningHelper.kt$import java.nio.file.* - WildcardImport:configureJvmApplication.kt$import io.github.kdroidfilter.nucleus.desktop.application.tasks.* - WildcardImport:configureJvmApplication.kt$import io.github.kdroidfilter.nucleus.internal.utils.* + WildcardImport:configureJvmApplication.kt$import dev.nucleusframework.nucleus.desktop.application.tasks.* + WildcardImport:configureJvmApplication.kt$import dev.nucleusframework.nucleus.internal.utils.* WildcardImport:fileUtils.kt$import java.io.* diff --git a/plugin-build/plugin/detekt-baseline.xml b/plugin-build/plugin/detekt-baseline.xml index 8e09a36e5..232a318d2 100644 --- a/plugin-build/plugin/detekt-baseline.xml +++ b/plugin-build/plugin/detekt-baseline.xml @@ -126,7 +126,7 @@ MaxLineLength:NucleusProjectProperties.kt$NucleusProperties$fun macSign(providers: ProviderFactory): Provider<Boolean> MaxLineLength:NucleusProjectProperties.kt$NucleusProperties$fun preserveWorkingDir(providers: ProviderFactory): Provider<Boolean> MaxLineLength:NucleusProjectProperties.kt$NucleusProperties$internal const val DISABLE_RESOURCE_CONTENT_HASH_GENERATION = "org.jetbrains.compose.resources.content.hash.generation.disable" - MaxLineLength:ExperimentalNucleusLibrary.kt$ExperimentalNucleusLibrary$"This library is experimental and can be unstable. Add @OptIn(io.github.kdroidfilter.nucleus.ExperimentalNucleusLibrary::class) annotation." + MaxLineLength:ExperimentalNucleusLibrary.kt$ExperimentalNucleusLibrary$"This library is experimental and can be unstable. Add @OptIn(dev.nucleusframework.nucleus.ExperimentalNucleusLibrary::class) annotation." MaxLineLength:InfoPlistBuilder.kt$InfoPlistBuilder$appendLine("<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"https://www.apple.com/DTDs/PropertyList-1.0.dtd\">") MaxLineLength:InfoPlistBuilder.kt$InfoPlistBuilder.InfoPlistValue.InfoPlistMapValue$"${indentForLevel(nestingLevel + 1)}<key>${key.name}</key>\n${value.asPlistEntry(nestingLevel + 1)}" MaxLineLength:JvmApplicationContext.kt$JvmApplicationContext$"Specify, which target to use by using `compose.desktop.application.from(kotlinMppTarget)`" @@ -183,8 +183,8 @@ TooManyFunctions:AbstractGenerateAotCacheTask.kt$AbstractGenerateAotCacheTask : AbstractNucleusTask TooManyFunctions:AbstractJPackageTask.kt$AbstractJPackageTask : AbstractJvmToolOperationTask TooManyFunctions:NucleusProjectProperties.kt$NucleusProperties - TooManyFunctions:configureJvmApplication.kt$io.github.kdroidfilter.nucleus.desktop.application.internal.configureJvmApplication.kt - TooManyFunctions:fileUtils.kt$io.github.kdroidfilter.nucleus.internal.utils.fileUtils.kt + TooManyFunctions:configureJvmApplication.kt$dev.nucleusframework.nucleus.desktop.application.internal.configureJvmApplication.kt + TooManyFunctions:fileUtils.kt$dev.nucleusframework.nucleus.internal.utils.fileUtils.kt TopLevelPropertyNaming:CheckComposeCompilerPlugin.kt$internal const val minimalSupportedKgpVersion = "2.2.0" TopLevelPropertyNaming:CheckComposeCompilerPlugin.kt$internal const val minimalSupportedKgpVersionError = "e: Configuration problem: " + "Minimal supported Kotlin Gradle Plugin version is $minimalSupportedKgpVersion" TopLevelPropertyNaming:CheckComposeCompilerPlugin.kt$internal const val newComposeCompilerError = "Starting with Compose Multiplatform 1.6.10, " + "you should apply \"$newComposeCompilerKotlinSupportPluginId\" plugin." + "\nSee the migration guide https://www.jetbrains.com/help/kotlin-multiplatform-dev/compose-compiler.html#migrating-a-compose-multiplatform-project" @@ -194,23 +194,23 @@ TopLevelPropertyNaming:configureJvmApplication.kt$internal const val nucleusTaskGroup = "compose desktop" VariableNaming:NativeApplication.kt$NativeApplication$internal val _targets = arrayListOf<KotlinNativeTarget>() WildcardImport:AbstractCheckNativeDistributionRuntime.kt$import org.gradle.api.tasks.* - WildcardImport:AbstractJvmToolOperationTask.kt$import io.github.kdroidfilter.nucleus.internal.utils.* + WildcardImport:AbstractJvmToolOperationTask.kt$import dev.nucleusframework.nucleus.internal.utils.* WildcardImport:AbstractJvmToolOperationTask.kt$import org.gradle.api.tasks.* WildcardImport:AbstractNativeMacApplicationPackageAppDirTask.kt$import org.gradle.api.tasks.* WildcardImport:AbstractNativeMacApplicationPackageDmgTask.kt$import org.gradle.api.tasks.* - WildcardImport:AbstractNativeMacApplicationPackageTask.kt$import io.github.kdroidfilter.nucleus.internal.utils.* + WildcardImport:AbstractNativeMacApplicationPackageTask.kt$import dev.nucleusframework.nucleus.internal.utils.* WildcardImport:AbstractNativeMacApplicationPackageTask.kt$import org.gradle.api.tasks.* WildcardImport:AbstractNotarizationTask.kt$import org.gradle.api.tasks.* - WildcardImport:AbstractProguardTask.kt$import io.github.kdroidfilter.nucleus.desktop.application.internal.* - WildcardImport:AbstractProguardTask.kt$import io.github.kdroidfilter.nucleus.internal.utils.* + WildcardImport:AbstractProguardTask.kt$import dev.nucleusframework.nucleus.desktop.application.internal.* + WildcardImport:AbstractProguardTask.kt$import dev.nucleusframework.nucleus.internal.utils.* WildcardImport:AbstractProguardTask.kt$import org.gradle.api.file.* WildcardImport:AbstractProguardTask.kt$import org.gradle.api.tasks.* - WildcardImport:AbstractSuggestModulesTask.kt$import io.github.kdroidfilter.nucleus.internal.utils.* + WildcardImport:AbstractSuggestModulesTask.kt$import dev.nucleusframework.nucleus.internal.utils.* WildcardImport:AbstractSuggestModulesTask.kt$import org.gradle.api.tasks.* - WildcardImport:InfoPlistBuilder.kt$import io.github.kdroidfilter.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.* + WildcardImport:InfoPlistBuilder.kt$import dev.nucleusframework.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.* WildcardImport:MacSigningHelper.kt$import java.nio.file.* - WildcardImport:configureJvmApplication.kt$import io.github.kdroidfilter.nucleus.desktop.application.tasks.* - WildcardImport:configureJvmApplication.kt$import io.github.kdroidfilter.nucleus.internal.utils.* + WildcardImport:configureJvmApplication.kt$import dev.nucleusframework.nucleus.desktop.application.tasks.* + WildcardImport:configureJvmApplication.kt$import dev.nucleusframework.nucleus.internal.utils.* WildcardImport:fileUtils.kt$import java.io.* diff --git a/plugin-build/plugin/src/main/java/io/github/kdroidfilter/nucleus/desktop/application/internal/JdkVersionProbe.java b/plugin-build/plugin/src/main/java/dev/nucleusframework/nucleus/desktop/application/internal/JdkVersionProbe.java similarity index 96% rename from plugin-build/plugin/src/main/java/io/github/kdroidfilter/nucleus/desktop/application/internal/JdkVersionProbe.java rename to plugin-build/plugin/src/main/java/dev/nucleusframework/nucleus/desktop/application/internal/JdkVersionProbe.java index 7a0dadf62..3e3f785db 100644 --- a/plugin-build/plugin/src/main/java/io/github/kdroidfilter/nucleus/desktop/application/internal/JdkVersionProbe.java +++ b/plugin-build/plugin/src/main/java/dev/nucleusframework/nucleus/desktop/application/internal/JdkVersionProbe.java @@ -2,7 +2,7 @@ * Copyright 2020-2023 JetBrains s.r.o. and respective authors and developers. * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal; +package dev.nucleusframework.nucleus.desktop.application.internal; import java.io.IOException; import java.lang.reflect.Method; diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/ExperimentalNucleusLibrary.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/ExperimentalNucleusLibrary.kt similarity index 57% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/ExperimentalNucleusLibrary.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/ExperimentalNucleusLibrary.kt index 5cdb513f9..c32fadf3c 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/ExperimentalNucleusLibrary.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/ExperimentalNucleusLibrary.kt @@ -1,8 +1,8 @@ -package io.github.kdroidfilter.nucleus +package dev.nucleusframework.nucleus // We write explicitly about OptIn, because IDEA doesn't suggest it. @RequiresOptIn( "This library is experimental and can be unstable. " + - "Add @OptIn(io.github.kdroidfilter.nucleus.ExperimentalNucleusLibrary::class) annotation.", + "Add @OptIn(dev.nucleusframework.nucleus.ExperimentalNucleusLibrary::class) annotation.", ) annotation class ExperimentalNucleusLibrary diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/NucleusExtension.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/NucleusExtension.kt similarity index 82% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/NucleusExtension.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/NucleusExtension.kt index 5d3f940be..0839bf8c3 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/NucleusExtension.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/NucleusExtension.kt @@ -3,11 +3,11 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus +package dev.nucleusframework.nucleus -import io.github.kdroidfilter.nucleus.desktop.application.dsl.JvmApplication -import io.github.kdroidfilter.nucleus.desktop.application.dsl.NativeApplication -import io.github.kdroidfilter.nucleus.desktop.application.internal.JvmApplicationInternal +import dev.nucleusframework.nucleus.desktop.application.dsl.JvmApplication +import dev.nucleusframework.nucleus.desktop.application.dsl.NativeApplication +import dev.nucleusframework.nucleus.desktop.application.internal.JvmApplicationInternal import org.gradle.api.Action import org.gradle.api.Project import org.gradle.api.model.ObjectFactory diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/NucleusPlugin.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/NucleusPlugin.kt similarity index 97% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/NucleusPlugin.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/NucleusPlugin.kt index d46458898..12a11f358 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/NucleusPlugin.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/NucleusPlugin.kt @@ -5,14 +5,14 @@ @file:Suppress("unused") -package io.github.kdroidfilter.nucleus +package dev.nucleusframework.nucleus import groovy.lang.Closure -import io.github.kdroidfilter.nucleus.desktop.application.internal.configureDesktop -import io.github.kdroidfilter.nucleus.experimental.internal.configureExperimentalTargetsFlagsCheck -import io.github.kdroidfilter.nucleus.internal.KOTLIN_MPP_PLUGIN_ID -import io.github.kdroidfilter.nucleus.internal.mppExt -import io.github.kdroidfilter.nucleus.internal.utils.currentTarget +import dev.nucleusframework.nucleus.desktop.application.internal.configureDesktop +import dev.nucleusframework.nucleus.experimental.internal.configureExperimentalTargetsFlagsCheck +import dev.nucleusframework.nucleus.internal.KOTLIN_MPP_PLUGIN_ID +import dev.nucleusframework.nucleus.internal.mppExt +import dev.nucleusframework.nucleus.internal.utils.currentTarget import org.gradle.api.Plugin import org.gradle.api.Project import org.gradle.api.artifacts.dsl.DependencyHandler diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/AbstractDistributions.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/AbstractDistributions.kt similarity index 95% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/AbstractDistributions.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/AbstractDistributions.kt index f576d7432..a8ede8296 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/AbstractDistributions.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/AbstractDistributions.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl import org.gradle.api.file.DirectoryProperty import org.gradle.api.file.ProjectLayout diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/AppImageCategory.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/AppImageCategory.kt similarity index 90% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/AppImageCategory.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/AppImageCategory.kt index 362ca2e19..b64052fe2 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/AppImageCategory.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/AppImageCategory.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl /** FreeDesktop.org main application categories for .desktop files. */ enum class AppImageCategory( diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/AppImageSettings.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/AppImageSettings.kt similarity index 91% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/AppImageSettings.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/AppImageSettings.kt index 0a849bfef..b7ceeae3a 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/AppImageSettings.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/AppImageSettings.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl @Suppress("AbstractClassCanBeConcreteClass") // Required abstract for Gradle ObjectFactory.newInstance() abstract class AppImageSettings { diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/AppXSettings.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/AppXSettings.kt similarity index 97% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/AppXSettings.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/AppXSettings.kt index 25a4ed631..769cf66e2 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/AppXSettings.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/AppXSettings.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl import org.gradle.api.file.RegularFileProperty import org.gradle.api.model.ObjectFactory diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/CompressionLevel.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/CompressionLevel.kt similarity index 86% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/CompressionLevel.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/CompressionLevel.kt index 69027d7d9..eecb6f51a 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/CompressionLevel.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/CompressionLevel.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl /** Archive compression level for electron-builder output. */ enum class CompressionLevel( diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/DmgSettings.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/DmgSettings.kt similarity index 98% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/DmgSettings.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/DmgSettings.kt index 2ba9b73f7..fe5e90922 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/DmgSettings.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/DmgSettings.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl import org.gradle.api.Action import org.gradle.api.file.RegularFileProperty diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/FileAssociation.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/FileAssociation.kt similarity index 83% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/FileAssociation.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/FileAssociation.kt index 940e266fe..68634c834 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/FileAssociation.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/FileAssociation.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl import java.io.File import java.io.Serializable diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/FlatpakSettings.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/FlatpakSettings.kt similarity index 94% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/FlatpakSettings.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/FlatpakSettings.kt index 63600f39f..f7d14f807 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/FlatpakSettings.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/FlatpakSettings.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl import org.gradle.api.file.RegularFileProperty import org.gradle.api.model.ObjectFactory diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/GraalvmSettings.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/GraalvmSettings.kt similarity index 92% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/GraalvmSettings.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/GraalvmSettings.kt index 8a2584399..d04169bf7 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/GraalvmSettings.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/GraalvmSettings.kt @@ -1,8 +1,8 @@ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl -import io.github.kdroidfilter.nucleus.internal.utils.new -import io.github.kdroidfilter.nucleus.internal.utils.notNullProperty -import io.github.kdroidfilter.nucleus.internal.utils.nullableProperty +import dev.nucleusframework.nucleus.internal.utils.new +import dev.nucleusframework.nucleus.internal.utils.notNullProperty +import dev.nucleusframework.nucleus.internal.utils.nullableProperty import org.gradle.api.Action import org.gradle.api.file.DirectoryProperty import org.gradle.api.file.RegularFileProperty diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/JvmApplication.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/JvmApplication.kt similarity index 95% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/JvmApplication.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/JvmApplication.kt index 6d6d15628..1dc4d5512 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/JvmApplication.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/JvmApplication.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl import org.gradle.api.Action import org.gradle.api.Task diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/JvmApplicationBuildTypes.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/JvmApplicationBuildTypes.kt similarity index 93% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/JvmApplicationBuildTypes.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/JvmApplicationBuildTypes.kt index f39f36391..1739d5d1e 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/JvmApplicationBuildTypes.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/JvmApplicationBuildTypes.kt @@ -3,9 +3,9 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl -import io.github.kdroidfilter.nucleus.internal.utils.new +import dev.nucleusframework.nucleus.internal.utils.new import org.gradle.api.Action import org.gradle.api.model.ObjectFactory import javax.inject.Inject diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/JvmApplicationDistributions.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/JvmApplicationDistributions.kt similarity index 98% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/JvmApplicationDistributions.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/JvmApplicationDistributions.kt index 72eb9ac81..d6e5e2f79 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/JvmApplicationDistributions.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/JvmApplicationDistributions.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl import org.gradle.api.Action import org.gradle.api.file.ConfigurableFileCollection diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/LaunchAgentSettings.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/LaunchAgentSettings.kt similarity index 95% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/LaunchAgentSettings.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/LaunchAgentSettings.kt index 72c8c2b2f..5a1a3ef4b 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/LaunchAgentSettings.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/LaunchAgentSettings.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl import org.gradle.api.Action import java.io.Serializable @@ -48,11 +48,11 @@ class LaunchAgentDefinition( val label: String, ) : Serializable { internal var bundleProgram: String? = null - internal var programArguments: MutableList = mutableListOf() + internal val programArguments: MutableList = mutableListOf() internal var startInterval: Int? = null internal var runAtLoad: Boolean = false internal var keepAlive: Boolean = false - internal var calendarIntervals: MutableList = mutableListOf() + internal val calendarIntervals: MutableList = mutableListOf() internal var processType: String = "Background" /** diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/MacOSNotarizationSettings.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/MacOSNotarizationSettings.kt similarity index 94% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/MacOSNotarizationSettings.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/MacOSNotarizationSettings.kt index 7d2da9cfa..403b178bb 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/MacOSNotarizationSettings.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/MacOSNotarizationSettings.kt @@ -3,10 +3,10 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl -import io.github.kdroidfilter.nucleus.desktop.application.internal.NucleusProperties -import io.github.kdroidfilter.nucleus.internal.utils.nullableProperty +import dev.nucleusframework.nucleus.desktop.application.internal.NucleusProperties +import dev.nucleusframework.nucleus.internal.utils.nullableProperty import org.gradle.api.model.ObjectFactory import org.gradle.api.provider.Property import org.gradle.api.provider.ProviderFactory diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/MacOSSigningSettings.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/MacOSSigningSettings.kt similarity index 83% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/MacOSSigningSettings.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/MacOSSigningSettings.kt index 5fe3b3ce1..f38f171b7 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/MacOSSigningSettings.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/MacOSSigningSettings.kt @@ -3,11 +3,11 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl -import io.github.kdroidfilter.nucleus.desktop.application.internal.NucleusProperties -import io.github.kdroidfilter.nucleus.internal.utils.notNullProperty -import io.github.kdroidfilter.nucleus.internal.utils.nullableProperty +import dev.nucleusframework.nucleus.desktop.application.internal.NucleusProperties +import dev.nucleusframework.nucleus.internal.utils.notNullProperty +import dev.nucleusframework.nucleus.internal.utils.nullableProperty import org.gradle.api.model.ObjectFactory import org.gradle.api.provider.Property import org.gradle.api.provider.ProviderFactory diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/NativeApplication.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/NativeApplication.kt similarity index 97% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/NativeApplication.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/NativeApplication.kt index 0e19049e9..b6ee6dd17 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/NativeApplication.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/NativeApplication.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl import org.gradle.api.Action import org.gradle.api.model.ObjectFactory diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/NativeApplicationDistributions.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/NativeApplicationDistributions.kt similarity index 82% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/NativeApplicationDistributions.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/NativeApplicationDistributions.kt index 1a2cefc70..270a1bbbe 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/NativeApplicationDistributions.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/NativeApplicationDistributions.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl import org.gradle.api.Action import java.util.* @@ -23,7 +23,8 @@ abstract class NativeApplicationDistributions : AbstractDistributions() { super.targetFormats(*formats) } - val macOS: NativeApplicationMacOSPlatformSettings = objects.newInstance(NativeApplicationMacOSPlatformSettings::class.java) + val macOS: NativeApplicationMacOSPlatformSettings = + objects.newInstance(NativeApplicationMacOSPlatformSettings::class.java) open fun macOS(fn: Action) { fn.execute(macOS) diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/NsisSettings.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/NsisSettings.kt similarity index 97% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/NsisSettings.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/NsisSettings.kt index 23b10f1b8..76508da3a 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/NsisSettings.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/NsisSettings.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl import org.gradle.api.file.RegularFileProperty import org.gradle.api.model.ObjectFactory diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/PlatformSettings.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/PlatformSettings.kt similarity index 99% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/PlatformSettings.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/PlatformSettings.kt index e2b4af265..b481d7334 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/PlatformSettings.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/PlatformSettings.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl import org.gradle.api.Action import org.gradle.api.file.DirectoryProperty diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/ProguardSettings.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/ProguardSettings.kt similarity index 84% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/ProguardSettings.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/ProguardSettings.kt index 39ebe0916..43383a46e 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/ProguardSettings.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/ProguardSettings.kt @@ -3,10 +3,10 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl -import io.github.kdroidfilter.nucleus.internal.utils.notNullProperty -import io.github.kdroidfilter.nucleus.internal.utils.nullableProperty +import dev.nucleusframework.nucleus.internal.utils.notNullProperty +import dev.nucleusframework.nucleus.internal.utils.nullableProperty import org.gradle.api.file.ConfigurableFileCollection import org.gradle.api.model.ObjectFactory import org.gradle.api.provider.Property diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/PublishMode.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/PublishMode.kt similarity index 90% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/PublishMode.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/PublishMode.kt index 1705e4f98..5bac57a80 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/PublishMode.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/PublishMode.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl /** Publish mode for electron-builder output. */ enum class PublishMode( diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/PublishSettings.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/PublishSettings.kt similarity index 97% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/PublishSettings.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/PublishSettings.kt index 8db6f7d8a..22cb26fbf 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/PublishSettings.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/PublishSettings.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl import org.gradle.api.Action import org.gradle.api.model.ObjectFactory diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/ReleaseChannel.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/ReleaseChannel.kt similarity index 85% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/ReleaseChannel.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/ReleaseChannel.kt index 3a98233b8..be50f31af 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/ReleaseChannel.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/ReleaseChannel.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl /** Update channel for auto-update publishing. */ enum class ReleaseChannel( diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/ReleaseType.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/ReleaseType.kt similarity index 85% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/ReleaseType.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/ReleaseType.kt index 48955e5b4..7080eed42 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/ReleaseType.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/ReleaseType.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl /** GitHub release type for publishing. */ enum class ReleaseType( diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/SigningAlgorithm.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/SigningAlgorithm.kt similarity index 85% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/SigningAlgorithm.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/SigningAlgorithm.kt index 1750a1fb9..62017fc6f 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/SigningAlgorithm.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/SigningAlgorithm.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl /** Windows code-signing hash algorithm. */ enum class SigningAlgorithm( diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/SnapCompression.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/SnapCompression.kt similarity index 84% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/SnapCompression.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/SnapCompression.kt index a2d239fb9..83868adc4 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/SnapCompression.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/SnapCompression.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl /** Snap package compression algorithm. */ enum class SnapCompression( diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/SnapConfinement.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/SnapConfinement.kt similarity index 85% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/SnapConfinement.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/SnapConfinement.kt index 200f4bb44..2a9bf285e 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/SnapConfinement.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/SnapConfinement.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl /** Snap package confinement level. */ enum class SnapConfinement( diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/SnapGrade.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/SnapGrade.kt similarity index 83% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/SnapGrade.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/SnapGrade.kt index c2ef8c6a4..66bc2def3 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/SnapGrade.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/SnapGrade.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl /** Snap package quality grade. */ enum class SnapGrade( diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/SnapPlug.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/SnapPlug.kt similarity index 91% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/SnapPlug.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/SnapPlug.kt index 6544c6a4c..20c563aab 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/SnapPlug.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/SnapPlug.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl /** Well-known Snap interface plugs. */ enum class SnapPlug( diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/SnapSettings.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/SnapSettings.kt similarity index 95% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/SnapSettings.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/SnapSettings.kt index 3a47da074..70a9df479 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/SnapSettings.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/SnapSettings.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl @Suppress("UnnecessaryAbstractClass") // Required abstract for Gradle ObjectFactory.newInstance() abstract class SnapSettings { diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/TargetFormat.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/TargetFormat.kt similarity index 95% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/TargetFormat.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/TargetFormat.kt index 9f1caff2f..f524ef2be 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/TargetFormat.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/TargetFormat.kt @@ -3,10 +3,10 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl -import io.github.kdroidfilter.nucleus.internal.utils.OS -import io.github.kdroidfilter.nucleus.internal.utils.currentOS +import dev.nucleusframework.nucleus.internal.utils.OS +import dev.nucleusframework.nucleus.internal.utils.currentOS enum class PackagingBackend { /** App-image creation only (jpackage). */ diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/WindowsSigningSettings.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/WindowsSigningSettings.kt similarity index 96% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/WindowsSigningSettings.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/WindowsSigningSettings.kt index e5f0f4914..de90f0f04 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/dsl/WindowsSigningSettings.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/dsl/WindowsSigningSettings.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.dsl +package dev.nucleusframework.nucleus.desktop.application.dsl import org.gradle.api.file.RegularFileProperty import org.gradle.api.model.ObjectFactory diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/AnalyzeStaticMetadataTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/AnalyzeStaticMetadataTask.kt similarity index 89% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/AnalyzeStaticMetadataTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/AnalyzeStaticMetadataTask.kt index e6ff30d46..48f407d79 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/AnalyzeStaticMetadataTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/AnalyzeStaticMetadataTask.kt @@ -1,11 +1,11 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal import groovy.json.JsonOutput -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.BytecodeAnalyzer -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.JniEntry -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.MethodSignature -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.ReflectionEntry -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.ResourcePattern +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.BytecodeAnalyzer +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.JniEntry +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.MethodSignature +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.ReflectionEntry +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.ResourcePattern import org.gradle.api.DefaultTask import org.gradle.api.file.ConfigurableFileCollection import org.gradle.api.file.DirectoryProperty @@ -101,7 +101,7 @@ internal fun buildReachabilityMetadataJson( if (resourcePatterns.isNotEmpty()) { root["resources"] = resourcePatterns - .sortedBy { it.glob ?: it.bundle ?: "" } + .sortedBy { it.glob ?: it.bundle.orEmpty() } .map { it.toJsonMap() } } diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/CleanNativeLibsTransform.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/CleanNativeLibsTransform.kt similarity index 66% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/CleanNativeLibsTransform.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/CleanNativeLibsTransform.kt index 1ec33779e..640bf7dab 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/CleanNativeLibsTransform.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/CleanNativeLibsTransform.kt @@ -3,15 +3,15 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal - -import io.github.kdroidfilter.nucleus.desktop.application.internal.NativeLibArchDetector.NativeArch -import io.github.kdroidfilter.nucleus.desktop.application.internal.NativeLibArchDetector.NativeInfo -import io.github.kdroidfilter.nucleus.desktop.application.internal.NativeLibArchDetector.NativeOs -import io.github.kdroidfilter.nucleus.internal.utils.Arch -import io.github.kdroidfilter.nucleus.internal.utils.OS -import io.github.kdroidfilter.nucleus.internal.utils.currentArch -import io.github.kdroidfilter.nucleus.internal.utils.currentOS +package dev.nucleusframework.nucleus.desktop.application.internal + +import dev.nucleusframework.nucleus.desktop.application.internal.NativeLibArchDetector.NativeArch +import dev.nucleusframework.nucleus.desktop.application.internal.NativeLibArchDetector.NativeInfo +import dev.nucleusframework.nucleus.desktop.application.internal.NativeLibArchDetector.NativeOs +import dev.nucleusframework.nucleus.internal.utils.Arch +import dev.nucleusframework.nucleus.internal.utils.OS +import dev.nucleusframework.nucleus.internal.utils.currentArch +import dev.nucleusframework.nucleus.internal.utils.currentOS import org.gradle.api.Project import org.gradle.api.artifacts.transform.InputArtifact import org.gradle.api.artifacts.transform.TransformAction @@ -26,11 +26,14 @@ import org.gradle.api.tasks.PathSensitivity import org.gradle.work.DisableCachingByDefault import java.io.BufferedInputStream import java.io.BufferedOutputStream +import java.io.File import java.io.FileOutputStream import java.util.zip.ZipEntry import java.util.zip.ZipInputStream import java.util.zip.ZipOutputStream +private const val HEADER_BUFFER_SIZE = 64 + @DisableCachingByDefault(because = "Stripping native libs from JARs is fast and not worth caching") internal abstract class CleanNativeLibsTransform : TransformAction { interface Parameters : TransformParameters { @@ -54,77 +57,81 @@ internal abstract class CleanNativeLibsTransform : TransformAction { val entriesToRemove = mutableSetOf() ZipInputStream(BufferedInputStream(inputFile.inputStream())).use { zis -> var entry = zis.nextEntry while (entry != null) { if (!entry.isDirectory && NativeLibArchDetector.isNativeLib(entry.name)) { - // Only process files with native extensions (.dll, .so, .dylib, .jnilib) - // Never touch .class or other Java files - val pathInfo = NativeLibArchDetector.detectFromPath(entry.name) - - if (pathInfo.os != NativeOs.UNKNOWN && pathInfo.arch != NativeArch.UNKNOWN) { - // Path has both OS and arch indicators - if (shouldRemoveByInfo(pathInfo, expectedOs, expectedArch)) { - entriesToRemove.add(entry.name) - } - } else { - // Fall back to binary header detection - val header = ByteArray(64) - val bytesRead = readFully(zis, header) - if (bytesRead > 0) { - val headerInfo = NativeLibArchDetector.detectFromHeader(header.copyOf(bytesRead)) - if (shouldRemoveByInfo(headerInfo, expectedOs, expectedArch)) { - entriesToRemove.add(entry.name) - } - } + if (shouldRemoveEntry(zis, entry, expectedOs, expectedArch)) { + entriesToRemove.add(entry.name) } } entry = zis.nextEntry } } + return entriesToRemove + } - if (entriesToRemove.isEmpty()) { - outputs.file(inputFile) - return + private fun shouldRemoveEntry( + zis: ZipInputStream, + entry: ZipEntry, + expectedOs: NativeOs, + expectedArch: NativeArch, + ): Boolean { + // Only process files with native extensions (.dll, .so, .dylib, .jnilib) + // Never touch .class or other Java files + val pathInfo = NativeLibArchDetector.detectFromPath(entry.name) + + if (pathInfo.os != NativeOs.UNKNOWN && pathInfo.arch != NativeArch.UNKNOWN) { + // Path has both OS and arch indicators + return shouldRemoveByInfo(pathInfo, expectedOs, expectedArch) + } else { + // Fall back to binary header detection + val header = ByteArray(HEADER_BUFFER_SIZE) + val bytesRead = readFully(zis, header) + if (bytesRead > 0) { + val headerInfo = NativeLibArchDetector.detectFromHeader(header.copyOf(bytesRead)) + return shouldRemoveByInfo(headerInfo, expectedOs, expectedArch) + } } + return false + } - // Second pass: copy JAR without removed entries - val outputFile = outputs.file(inputFile.name) + private fun copyJarWithoutEntries( + inputFile: File, + outputFile: File, + entriesToRemove: Set, + ) { ZipInputStream(BufferedInputStream(inputFile.inputStream())).use { zis -> ZipOutputStream(BufferedOutputStream(FileOutputStream(outputFile))).use { zos -> var entry = zis.nextEntry while (entry != null) { - val shouldSkip = !entry.isDirectory && entry.name in entriesToRemove - - if (!shouldSkip) { - zos.putNextEntry( - ZipEntry(entry.name).apply { - time = entry.time - if (entry.method == ZipEntry.STORED) { - method = ZipEntry.STORED - size = entry.size - compressedSize = entry.compressedSize - crc = entry.crc - } - }, - ) - if (!entry.isDirectory) { - zis.copyTo(zos) - } - zos.closeEntry() + if (entry.isDirectory || entry.name !in entriesToRemove) { + copyZipEntry(entry, zis, zos) } entry = zis.nextEntry } @@ -132,6 +139,28 @@ internal abstract class CleanNativeLibsTransform : TransformAction + private val slurper = JsonSlurper() + @TaskAction fun cleanup() { val targetDir = configDir.get() @@ -68,8 +72,6 @@ abstract class CleanupGraalvmMetadataTask : DefaultTask() { return } - val slurper = JsonSlurper() - // Collect baseline entries from all managed sources val libraryEntries = mutableMapOf>>() val libraryProxies = mutableSetOf() @@ -77,20 +79,56 @@ abstract class CleanupGraalvmMetadataTask : DefaultTask() { val libraryResourceGlobs = mutableListOf>() val includeResourcePatterns = mutableListOf() - // Source 1: L1 — library JARs on classpath (META-INF/native-image/**/reachability-metadata.json) - // + native-image.properties IncludeResources patterns + val l1Count = collectL1Metadata(libraryEntries, libraryProxies, libraryResourceJsons, libraryResourceGlobs, includeResourcePatterns) + val l2Count = collectL2Metadata(libraryEntries, libraryProxies, libraryResourceJsons, libraryResourceGlobs) + val l3Count = collectL3Metadata(libraryEntries, libraryProxies, libraryResourceJsons, libraryResourceGlobs) + val staticCount = collectStaticAnalysisMetadata(libraryEntries, libraryProxies, libraryResourceJsons, libraryResourceGlobs) + + addMainClassToBaseline(libraryEntries) + + logger.lifecycle( + "Metadata baseline: L1=$l1Count types, L2=$l2Count types, " + + "L3=$l3Count types, static=$staticCount types, " + + "${includeResourcePatterns.size} resource patterns", + ) + + // Parse the project's manual config + @Suppress("UNCHECKED_CAST") + val targetRoot = slurper.parseText(targetFile.readText()) as MutableMap + val removedEntries = mutableListOf() + + val totalRemoved = + cleanReflectionAndJni(targetRoot, libraryEntries, libraryProxies, removedEntries) + + cleanResources(targetRoot, libraryResourceJsons, libraryResourceGlobs, includeResourcePatterns, removedEntries) + + if (totalRemoved > 0) { + finalizeAndWrite(targetRoot, targetFile, totalRemoved, removedEntries) + } else { + logger.lifecycle("No redundant entries found — manual config is already clean") + } + + reportRemaining(targetRoot) + } + + private fun collectL1Metadata( + libraryEntries: MutableMap>>, + libraryProxies: MutableSet, + libraryResourceJsons: MutableSet, + libraryResourceGlobs: MutableList>, + includeResourcePatterns: MutableList, + ): Int { var l1Count = 0 for (file in runtimeClasspath.files) { if (!file.exists() || !file.name.endsWith(".jar")) continue try { - java.util.jar.JarFile(file).use { jar -> + JarFile(file).use { jar -> for (entry in jar.entries()) { if (entry.name.contains("META-INF/native-image/") && entry.name.endsWith("reachability-metadata.json") ) { val text = jar.getInputStream(entry).bufferedReader().readText() val before = countBaselineTypes(libraryEntries) - collectBaseline(slurper, text, libraryEntries, libraryProxies, libraryResourceJsons, libraryResourceGlobs) + collectBaseline(text, libraryEntries, libraryProxies, libraryResourceJsons, libraryResourceGlobs) l1Count += countBaselineTypes(libraryEntries) - before } @@ -115,8 +153,15 @@ abstract class CleanupGraalvmMetadataTask : DefaultTask() { // Skip unreadable JARs } } + return l1Count + } - // Source 2: L2 — Oracle repo metadata directories + private fun collectL2Metadata( + libraryEntries: MutableMap>>, + libraryProxies: MutableSet, + libraryResourceJsons: MutableSet, + libraryResourceGlobs: MutableList>, + ): Int { var l2Count = 0 val repoDirsFile = metadataRepoDirsFile.orNull?.asFile if (repoDirsFile != null && repoDirsFile.exists()) { @@ -125,93 +170,119 @@ abstract class CleanupGraalvmMetadataTask : DefaultTask() { if (dirPath.isBlank()) continue val dir = File(dirPath) if (!dir.isDirectory) continue - // New format - val newFormatFile = File(dir, "reachability-metadata.json") - if (newFormatFile.exists()) { - val before = countBaselineTypes(libraryEntries) - collectBaseline( - slurper, - newFormatFile.readText(), - libraryEntries, - libraryProxies, - libraryResourceJsons, - libraryResourceGlobs, - ) - l2Count += countBaselineTypes(libraryEntries) - before - } - // Old format - for (oldFile in listOf("reflect-config.json", "jni-config.json")) { - val f = File(dir, oldFile) - if (!f.exists()) continue - val section = if (oldFile.startsWith("reflect")) "reflection" else "jni" - - @Suppress("UNCHECKED_CAST") - val entries = slurper.parseText(f.readText()) as? List> ?: continue - val sectionMap = libraryEntries.getOrPut(section) { mutableMapOf() } - for (e in entries) { - val typeName = e["type"] as? String ?: continue - val existing = sectionMap[typeName] - if (existing == null) { - sectionMap[typeName] = e.toMutableMap() - l2Count++ - } else { - mergeTypeEntryInto(e, existing) - } - } + + l2Count += collectL2FromDir(dir, libraryEntries, libraryProxies, libraryResourceJsons, libraryResourceGlobs) + } + } + return l2Count + } + + private fun collectL2FromDir( + dir: File, + libraryEntries: MutableMap>>, + libraryProxies: MutableSet, + libraryResourceJsons: MutableSet, + libraryResourceGlobs: MutableList>, + ): Int { + var count = 0 + // New format + val newFormatFile = File(dir, "reachability-metadata.json") + if (newFormatFile.exists()) { + val before = countBaselineTypes(libraryEntries) + collectBaseline( + newFormatFile.readText(), + libraryEntries, + libraryProxies, + libraryResourceJsons, + libraryResourceGlobs, + ) + count += countBaselineTypes(libraryEntries) - before + } + // Old format + for (oldFile in listOf("reflect-config.json", "jni-config.json")) { + val f = File(dir, oldFile) + if (!f.exists()) continue + val section = if (oldFile.startsWith("reflect")) "reflection" else "jni" + + @Suppress("UNCHECKED_CAST") + val entries = slurper.parseText(f.readText()) as? List> ?: continue + val sectionMap = libraryEntries.getOrPut(section) { mutableMapOf() } + for (e in entries) { + val typeName = e["type"] as? String ?: continue + val existing = sectionMap[typeName] + if (existing == null) { + sectionMap[typeName] = e.toMutableMap() + count++ + } else { + mergeTypeEntryInto(e, existing) } - // Old-format resource-config.json - val resFile = File(dir, "resource-config.json") - if (resFile.exists()) { - @Suppress("UNCHECKED_CAST") - val resRoot = slurper.parseText(resFile.readText()) as? Map - - @Suppress("UNCHECKED_CAST") - val resources = resRoot?.get("resources") as? Map - - @Suppress("UNCHECKED_CAST") - val includes = resources?.get("includes") as? List> - includes?.forEach { inc -> - val pattern = inc["pattern"] as? String - if (pattern != null) { - libraryResourceGlobs.add(Pair(null, pattern)) - libraryResourceJsons.add(JsonOutput.toJson(mapOf("glob" to pattern))) - } - } + } + } + // Old-format resource-config.json + val resFile = File(dir, "resource-config.json") + if (resFile.exists()) { + @Suppress("UNCHECKED_CAST") + val resRoot = slurper.parseText(resFile.readText()) as? Map + + @Suppress("UNCHECKED_CAST") + val resources = resRoot?.get("resources") as? Map + + @Suppress("UNCHECKED_CAST") + val includes = resources?.get("includes") as? List> + includes?.forEach { inc -> + val pattern = inc["pattern"] as? String + if (pattern != null) { + libraryResourceGlobs.add(Pair(null, pattern)) + libraryResourceJsons.add(JsonOutput.toJson(mapOf("glob" to pattern))) } } } + return count + } - // Source 3: L3 — platform-specific metadata from plugin JAR - var l3Count = 0 + private fun collectL3Metadata( + libraryEntries: MutableMap>>, + libraryProxies: MutableSet, + libraryResourceJsons: MutableSet, + libraryResourceGlobs: MutableList>, + ): Int { val platform = platformName.get() val resourcePath = "nucleus/graalvm/platform-metadata/$platform-reachability-metadata.json" val stream = javaClass.classLoader.getResourceAsStream(resourcePath) if (stream != null) { val text = stream.bufferedReader().use { it.readText() } val before = countBaselineTypes(libraryEntries) - collectBaseline(slurper, text, libraryEntries, libraryProxies, libraryResourceJsons, libraryResourceGlobs) - l3Count = countBaselineTypes(libraryEntries) - before + collectBaseline(text, libraryEntries, libraryProxies, libraryResourceJsons, libraryResourceGlobs) + return countBaselineTypes(libraryEntries) - before } + return 0 + } - // Source 4: Static analysis output + private fun collectStaticAnalysisMetadata( + libraryEntries: MutableMap>>, + libraryProxies: MutableSet, + libraryResourceJsons: MutableSet, + libraryResourceGlobs: MutableList>, + ): Int { var staticCount = 0 for (dir in staticAnalysisDir.files) { val staticFile = if (dir.isDirectory) File(dir, "reachability-metadata.json") else dir if (staticFile.exists() && staticFile.name.endsWith(".json")) { val before = countBaselineTypes(libraryEntries) collectBaseline( - slurper, staticFile.readText(), libraryEntries, libraryProxies, libraryResourceJsons, libraryResourceGlobs, ) - staticCount = countBaselineTypes(libraryEntries) - before + staticCount += countBaselineTypes(libraryEntries) - before } } + return staticCount + } - // Add main class to baseline + private fun addMainClassToBaseline(libraryEntries: MutableMap>>) { val mc = mainClass.orNull if (!mc.isNullOrBlank()) { val reflectionMap = libraryEntries.getOrPut("reflection") { mutableMapOf() } @@ -231,75 +302,87 @@ abstract class CleanupGraalvmMetadataTask : DefaultTask() { mergeTypeEntryInto(mainClassEntry, existing) } } + } - logger.lifecycle( - "Metadata baseline: L1=$l1Count types, L2=$l2Count types, " + - "L3=$l3Count types, static=$staticCount types, " + - "${includeResourcePatterns.size} resource patterns", - ) - - // Parse the project's manual config - @Suppress("UNCHECKED_CAST") - val targetRoot = slurper.parseText(targetFile.readText()) as MutableMap + private fun cleanReflectionAndJni( + targetRoot: MutableMap, + libraryEntries: Map>>, + libraryProxies: Set, + removedEntries: MutableList, + ): Int { var totalRemoved = 0 - val removedEntries = mutableListOf() - - // Clean reflection/jni sections against same-section AND cross-section baselines - // (static analyzer puts SQLite in "jni", manual config may have it in "reflection") for (projectSection in listOf("reflection", "jni")) { @Suppress("UNCHECKED_CAST") val targetArray = targetRoot[projectSection] as? MutableList> ?: continue val before = targetArray.size targetArray.removeAll { projectEntry -> - // Handle proxy entries: {"type": {"proxy": [...]}} - val proxyKey = proxyKey(projectEntry) - if (proxyKey != null) { - if (proxyKey in libraryProxies) { - removedEntries.add(" [$projectSection proxy] $proxyKey") - return@removeAll true - } - return@removeAll false + if (isEntryCovered(projectSection, projectEntry, libraryEntries, libraryProxies, removedEntries)) { + return@removeAll true } + false + } + totalRemoved += before - targetArray.size + } + return totalRemoved + } - val typeName = projectEntry["type"] as? String ?: return@removeAll false + private fun isEntryCovered( + projectSection: String, + projectEntry: Map, + libraryEntries: Map>>, + libraryProxies: Set, + removedEntries: MutableList, + ): Boolean { + // Handle proxy entries: {"type": {"proxy": [...]}} + val proxyKey = proxyKey(projectEntry) + if (proxyKey != null) { + if (proxyKey in libraryProxies) { + removedEntries.add(" [$projectSection proxy] $proxyKey") + return true + } + return false + } - // Check same section first, then cross-section - for (baselineSection in listOf("reflection", "jni")) { - val sectionMap = libraryEntries[baselineSection] ?: continue - val libEntry = sectionMap[typeName] ?: continue - if (libraryCoversProjectEntry(libEntry, projectEntry)) { - val source = if (baselineSection == projectSection) baselineSection else "$projectSection via $baselineSection" - removedEntries.add(" [$source] $typeName") - return@removeAll true - } - } + val typeName = projectEntry["type"] as? String ?: return false - // For Kotlin data objects: tracing agent emits Foo$Companion with serializer(), - // but the actual class is Foo (no Companion class exists). If the parent class - // is in the baseline with serializer(), consider the Companion entry covered. - if (typeName.endsWith("\$Companion")) { - val parentType = typeName.removeSuffix("\$Companion") - for (baselineSection in listOf("reflection", "jni")) { - val sectionMap = libraryEntries[baselineSection] ?: continue - val parentEntry = sectionMap[parentType] ?: continue - - @Suppress("UNCHECKED_CAST") - val parentMethods = parentEntry["methods"] as? List> - val hasSerializer = parentMethods?.any { it["name"] == "serializer" } == true - if (hasSerializer) { - removedEntries.add(" [$projectSection via parent] $typeName") - return@removeAll true - } - } - } + // Check same section first, then cross-section + for (baselineSection in listOf("reflection", "jni")) { + val sectionMap = libraryEntries[baselineSection] ?: continue + val libEntry = sectionMap[typeName] ?: continue + if (libraryCoversProjectEntry(libEntry, projectEntry)) { + val source = if (baselineSection == projectSection) baselineSection else "$projectSection via $baselineSection" + removedEntries.add(" [$source] $typeName") + return true + } + } - false + // For Kotlin data objects + if (typeName.endsWith("\$Companion")) { + val parentType = typeName.removeSuffix("\$Companion") + for (baselineSection in listOf("reflection", "jni")) { + val sectionMap = libraryEntries[baselineSection] ?: continue + val parentEntry = sectionMap[parentType] ?: continue + + @Suppress("UNCHECKED_CAST") + val parentMethods = parentEntry["methods"] as? List> + val hasSerializer = parentMethods?.any { it["name"] == "serializer" } == true + if (hasSerializer) { + removedEntries.add(" [$projectSection via parent] $typeName") + return true + } } - totalRemoved += before - targetArray.size } + return false + } - // Clean resources section + private fun cleanResources( + targetRoot: MutableMap, + libraryResourceJsons: Set, + libraryResourceGlobs: List>, + includeResourcePatterns: List, + removedEntries: MutableList, + ): Int { @Suppress("UNCHECKED_CAST") val targetResources = targetRoot["resources"] as? MutableList> if (targetResources != null) { @@ -318,26 +401,31 @@ abstract class CleanupGraalvmMetadataTask : DefaultTask() { } covered } - totalRemoved += before - targetResources.size + return before - targetResources.size } + return 0 + } - if (totalRemoved > 0) { - // Remove empty sections - for (section in listOf("reflection", "jni", "resources", "bundles", "serialization")) { - @Suppress("UNCHECKED_CAST") - val arr = targetRoot[section] as? List<*> - if (arr != null && arr.isEmpty()) { - targetRoot.remove(section) - } + private fun finalizeAndWrite( + targetRoot: MutableMap, + targetFile: File, + totalRemoved: Int, + removedEntries: List, + ) { + // Remove empty sections + for (section in listOf("reflection", "jni", "resources", "bundles", "serialization")) { + @Suppress("UNCHECKED_CAST") + val arr = targetRoot[section] as? List<*> + if (arr != null && arr.isEmpty()) { + targetRoot.remove(section) } - targetFile.writeText(JsonOutput.prettyPrint(JsonOutput.toJson(targetRoot)) + "\n") - logger.lifecycle("Removed $totalRemoved entries from $targetFile:") - removedEntries.forEach { logger.lifecycle(it) } - } else { - logger.lifecycle("No redundant entries found — manual config is already clean") } + targetFile.writeText(JsonOutput.prettyPrint(JsonOutput.toJson(targetRoot)) + "\n") + logger.lifecycle("Removed $totalRemoved entries from $targetFile:") + removedEntries.forEach { logger.lifecycle(it) } + } - // Report remaining entries + private fun reportRemaining(targetRoot: Map) { var remaining = 0 for (section in listOf("reflection", "jni")) { @Suppress("UNCHECKED_CAST") @@ -361,7 +449,6 @@ abstract class CleanupGraalvmMetadataTask : DefaultTask() { } private fun collectBaseline( - slurper: JsonSlurper, jsonText: String, libraryEntries: MutableMap>>, libraryProxies: MutableSet, @@ -445,10 +532,10 @@ abstract class CleanupGraalvmMetadataTask : DefaultTask() { } private fun sig(obj: Map): String { - val name = obj["name"] as? String ?: "" + val name = (obj["name"] as? String).orEmpty() @Suppress("UNCHECKED_CAST") - val params = (obj["parameterTypes"] as? List)?.joinToString(",") ?: "" + val params = (obj["parameterTypes"] as? List)?.joinToString(",").orEmpty() return "$name($params)" } diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/DmgBackgroundPadding.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/DmgBackgroundPadding.kt similarity index 97% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/DmgBackgroundPadding.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/DmgBackgroundPadding.kt index c611ffcc1..8eccfe184 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/DmgBackgroundPadding.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/DmgBackgroundPadding.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal import org.gradle.api.logging.Logger import java.io.File diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/ExecutableType.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/ExecutableType.kt similarity index 92% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/ExecutableType.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/ExecutableType.kt index c0190efe4..f7e88b11f 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/ExecutableType.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/ExecutableType.kt @@ -5,9 +5,9 @@ @file:Suppress("ktlint:standard:filename") -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal -import io.github.kdroidfilter.nucleus.desktop.application.dsl.TargetFormat +import dev.nucleusframework.nucleus.desktop.application.dsl.TargetFormat import org.gradle.api.logging.Logger import java.io.File @@ -82,15 +82,20 @@ private fun writeExecutableTypeMarker( if (appVersion != null) appendLine(appVersion) } marker.writeText(content) - logger.info("Wrote executable type '${targetFormat.executableTypeValue}' (version=$appVersion) to ${marker.absolutePath}") + logger.info( + "Wrote executable type '${targetFormat.executableTypeValue}' " + + "(version=$appVersion) to ${marker.absolutePath}", + ) } +private const val MAC_OS_DIR_MAX_DEPTH = 3 + private fun findNativeBinaryDir(appImageDir: File): File? { // macOS: AppName.app/Contents/MacOS/ val macOsDir = appImageDir .walkTopDown() - .maxDepth(3) + .maxDepth(MAC_OS_DIR_MAX_DEPTH) .firstOrNull { it.isDirectory && it.name == "MacOS" && it.parentFile?.name == "Contents" } if (macOsDir != null) return macOsDir diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/ExternalToolRunner.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/ExternalToolRunner.kt similarity index 94% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/ExternalToolRunner.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/ExternalToolRunner.kt index f02861912..b04d1a328 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/ExternalToolRunner.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/ExternalToolRunner.kt @@ -3,9 +3,9 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal -import io.github.kdroidfilter.nucleus.internal.utils.ioFile +import dev.nucleusframework.nucleus.internal.utils.ioFile import org.gradle.api.file.Directory import org.gradle.api.provider.Property import org.gradle.api.provider.Provider @@ -60,14 +60,13 @@ internal class ExternalToolRunner( spec.standardInput = ByteArrayInputStream(stdinStr.toByteArray()) } - @Suppress("NAME_SHADOWING") - val logToConsole = + val shouldLogToConsole = when (logToConsole) { LogToConsole.Always -> true LogToConsole.Never -> false LogToConsole.OnlyWhenVerbose -> verbose.get() } - if (logToConsole) { + if (shouldLogToConsole) { spec.standardOutput = spec.standardOutput.alsoOutputTo(outFileStream) spec.errorOutput = spec.errorOutput.alsoOutputTo(errFileStream) } else { diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/FilterLibraryMetadataTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/FilterLibraryMetadataTask.kt similarity index 97% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/FilterLibraryMetadataTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/FilterLibraryMetadataTask.kt index 43664118e..a72ad1427 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/FilterLibraryMetadataTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/FilterLibraryMetadataTask.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal import groovy.json.JsonOutput import groovy.json.JsonSlurper @@ -24,6 +24,7 @@ import java.util.jar.JarFile * Files without `matchPackages` are always included. */ @CacheableTask +@Suppress("NestedBlockDepth", "LoopWithTooManyJumpStatements") abstract class FilterLibraryMetadataTask : DefaultTask() { /** The runtime classpath JARs/dirs to check for conditional library presence. */ @get:InputFiles @@ -45,7 +46,7 @@ abstract class FilterLibraryMetadataTask : DefaultTask() { ?.bufferedReader() ?.readLines() ?.filter { it.isNotBlank() } - ?: emptyList() + .orEmpty() val slurper = JsonSlurper() val mergedReflection = mutableListOf() diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/InfoPlistBuilder.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/InfoPlistBuilder.kt similarity index 88% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/InfoPlistBuilder.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/InfoPlistBuilder.kt index 0dd78f744..0ececf570 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/InfoPlistBuilder.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/InfoPlistBuilder.kt @@ -3,15 +3,18 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal -import io.github.kdroidfilter.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.* +import dev.nucleusframework.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.InfoPlistBooleanValue +import dev.nucleusframework.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.InfoPlistListValue +import dev.nucleusframework.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.InfoPlistMapValue +import dev.nucleusframework.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.InfoPlistStringValue import java.io.File import kotlin.reflect.KProperty -private const val indent = " " +private const val INDENT = " " -private fun indentForLevel(level: Int) = indent.repeat(level) +private fun indentForLevel(level: Int) = INDENT.repeat(level) internal class InfoPlistBuilder( private val extraPlistKeysRawXml: String? = null, @@ -102,7 +105,7 @@ internal class InfoPlistBuilder( operator fun set( key: InfoPlistKey, value: Boolean?, - ) = set(key, value?.let(InfoPlistValue::InfoPlistBooleanValue)) + ) = set(key, value?.let(::InfoPlistBooleanValue)) operator fun set( key: InfoPlistKey, @@ -119,7 +122,8 @@ internal class InfoPlistBuilder( file.writer().buffered().use { writer -> writer.run { appendLine("") - appendLine("") + appendLine("") appendLine("") appendLine("${indentForLevel(1)}") for ((k, v) in values) { diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/JvmApplicationContext.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/JvmApplicationContext.kt similarity index 83% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/JvmApplicationContext.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/JvmApplicationContext.kt index 2959add36..a887a33c2 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/JvmApplicationContext.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/JvmApplicationContext.kt @@ -3,18 +3,18 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal -import io.github.kdroidfilter.nucleus.desktop.application.dsl.JvmApplicationBuildType -import io.github.kdroidfilter.nucleus.internal.KOTLIN_JVM_PLUGIN_ID -import io.github.kdroidfilter.nucleus.internal.KOTLIN_MPP_PLUGIN_ID -import io.github.kdroidfilter.nucleus.internal.javaSourceSets -import io.github.kdroidfilter.nucleus.internal.mppExt -import io.github.kdroidfilter.nucleus.internal.utils.OS -import io.github.kdroidfilter.nucleus.internal.utils.Target -import io.github.kdroidfilter.nucleus.internal.utils.currentOS -import io.github.kdroidfilter.nucleus.internal.utils.jdkArch -import io.github.kdroidfilter.nucleus.internal.utils.joinDashLowercaseNonEmpty +import dev.nucleusframework.nucleus.desktop.application.dsl.JvmApplicationBuildType +import dev.nucleusframework.nucleus.internal.KOTLIN_JVM_PLUGIN_ID +import dev.nucleusframework.nucleus.internal.KOTLIN_MPP_PLUGIN_ID +import dev.nucleusframework.nucleus.internal.javaSourceSets +import dev.nucleusframework.nucleus.internal.mppExt +import dev.nucleusframework.nucleus.internal.utils.OS +import dev.nucleusframework.nucleus.internal.utils.Target +import dev.nucleusframework.nucleus.internal.utils.currentOS +import dev.nucleusframework.nucleus.internal.utils.jdkArch +import dev.nucleusframework.nucleus.internal.utils.joinDashLowercaseNonEmpty import org.gradle.api.Project import org.gradle.api.Task import org.gradle.api.file.Directory @@ -94,7 +94,8 @@ internal data class JvmApplicationContext( project.logger.error( "w: Default configuration for Compose Desktop Application is disabled: " + "multiple Kotlin JVM targets definitions are detected. " + - "Specify, which target to use by using `compose.desktop.application.from(kotlinMppTarget)`", + "Specify, which target to use by using " + + "`compose.desktop.application.from(kotlinMppTarget)`", ) appInternal.disableDefaultConfiguration() } diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/JvmApplicationData.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/JvmApplicationData.kt similarity index 81% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/JvmApplicationData.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/JvmApplicationData.kt index 35a5048c9..f3fd1a650 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/JvmApplicationData.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/JvmApplicationData.kt @@ -3,12 +3,12 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal -import io.github.kdroidfilter.nucleus.desktop.application.dsl.GraalvmSettings -import io.github.kdroidfilter.nucleus.desktop.application.dsl.JvmApplicationBuildTypes -import io.github.kdroidfilter.nucleus.desktop.application.dsl.JvmApplicationDistributions -import io.github.kdroidfilter.nucleus.internal.utils.new +import dev.nucleusframework.nucleus.desktop.application.dsl.GraalvmSettings +import dev.nucleusframework.nucleus.desktop.application.dsl.JvmApplicationBuildTypes +import dev.nucleusframework.nucleus.desktop.application.dsl.JvmApplicationDistributions +import dev.nucleusframework.nucleus.internal.utils.new import org.gradle.api.file.ConfigurableFileCollection import org.gradle.api.file.RegularFileProperty import org.gradle.api.model.ObjectFactory diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/JvmApplicationInternal.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/JvmApplicationInternal.kt similarity index 86% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/JvmApplicationInternal.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/JvmApplicationInternal.kt index b5d4dc26a..ddecf942a 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/JvmApplicationInternal.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/JvmApplicationInternal.kt @@ -3,13 +3,13 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal -import io.github.kdroidfilter.nucleus.desktop.application.dsl.GraalvmSettings -import io.github.kdroidfilter.nucleus.desktop.application.dsl.JvmApplication -import io.github.kdroidfilter.nucleus.desktop.application.dsl.JvmApplicationBuildTypes -import io.github.kdroidfilter.nucleus.desktop.application.dsl.JvmApplicationDistributions -import io.github.kdroidfilter.nucleus.internal.utils.new +import dev.nucleusframework.nucleus.desktop.application.dsl.GraalvmSettings +import dev.nucleusframework.nucleus.desktop.application.dsl.JvmApplication +import dev.nucleusframework.nucleus.desktop.application.dsl.JvmApplicationBuildTypes +import dev.nucleusframework.nucleus.desktop.application.dsl.JvmApplicationDistributions +import dev.nucleusframework.nucleus.internal.utils.new import org.gradle.api.Action import org.gradle.api.Task import org.gradle.api.file.RegularFileProperty diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/JvmApplicationRuntimeFiles.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/JvmApplicationRuntimeFiles.kt similarity index 97% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/JvmApplicationRuntimeFiles.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/JvmApplicationRuntimeFiles.kt index cc657194b..5b33a82d3 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/JvmApplicationRuntimeFiles.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/JvmApplicationRuntimeFiles.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal import org.gradle.api.Project import org.gradle.api.Task diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/JvmRuntimeProperties.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/JvmRuntimeProperties.kt similarity index 87% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/JvmRuntimeProperties.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/JvmRuntimeProperties.kt index 41c282230..aeac28733 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/JvmRuntimeProperties.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/JvmRuntimeProperties.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal import java.io.File import java.io.ObjectInputStream @@ -15,8 +15,7 @@ internal data class JvmRuntimeProperties( val availableModules: List, ) : Serializable { companion object { - @Suppress("unused") - private val serialVersionUid: Long = 0 + private const val serialVersionUID: Long = 0L fun writeToFile( properties: JvmRuntimeProperties, diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/JvmTasks.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/JvmTasks.kt similarity index 89% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/JvmTasks.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/JvmTasks.kt index 154a5ac53..2ffcd321e 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/JvmTasks.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/JvmTasks.kt @@ -3,10 +3,10 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal -import io.github.kdroidfilter.nucleus.desktop.application.dsl.JvmApplicationBuildType -import io.github.kdroidfilter.nucleus.internal.utils.uppercaseFirstChar +import dev.nucleusframework.nucleus.desktop.application.dsl.JvmApplicationBuildType +import dev.nucleusframework.nucleus.internal.utils.uppercaseFirstChar import org.gradle.api.Project import org.gradle.api.Task import org.gradle.api.tasks.TaskProvider diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/LaunchAgentPlistGenerator.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/LaunchAgentPlistGenerator.kt similarity index 90% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/LaunchAgentPlistGenerator.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/LaunchAgentPlistGenerator.kt index 8d708ec50..be31bae71 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/LaunchAgentPlistGenerator.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/LaunchAgentPlistGenerator.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal -import io.github.kdroidfilter.nucleus.desktop.application.dsl.CalendarInterval -import io.github.kdroidfilter.nucleus.desktop.application.dsl.LaunchAgentDefinition +import dev.nucleusframework.nucleus.desktop.application.dsl.CalendarInterval +import dev.nucleusframework.nucleus.desktop.application.dsl.LaunchAgentDefinition import java.io.File /** @@ -19,7 +19,10 @@ internal object LaunchAgentPlistGenerator { @Suppress("NestedBlockDepth") private fun buildPlistXml(agent: LaunchAgentDefinition, resolvedBundleProgram: String): String = buildString { appendLine("""""") - appendLine("""""") + appendLine( + "", + ) appendLine("""""") appendLine("") diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/MacAssetsTool.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/MacAssetsTool.kt similarity index 82% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/MacAssetsTool.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/MacAssetsTool.kt index 8976f1ebe..77feef044 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/MacAssetsTool.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/MacAssetsTool.kt @@ -1,9 +1,11 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal -import io.github.kdroidfilter.nucleus.internal.utils.MacUtils +import dev.nucleusframework.nucleus.internal.utils.MacUtils import org.gradle.api.logging.Logger import java.io.File +private const val REQUIRED_ACTOOL_VERSION = 26.0 + internal class MacAssetsTool( private val runTool: ExternalToolRunner, private val logger: Logger, @@ -56,7 +58,6 @@ internal class MacAssetsTool( fun assetsFile(workingDir: File): File = workingDir.resolve("Assets.car") private fun checkAssetsToolVersion(): String { - val requiredVersion = 26.0 var outputContent = "" val result = runTool( @@ -67,7 +68,8 @@ internal class MacAssetsTool( if (result.exitValue != 0) { error( - "Could not get actool version: Command `xcrun actool -version` exited with code ${result.exitValue}\nStdOut: $outputContent\n", + "Could not get actool version: Command `xcrun actool -version` " + + "exited with code ${result.exitValue}\nStdOut: $outputContent\n", ) } @@ -93,12 +95,15 @@ internal class MacAssetsTool( }, ) versionContent - } catch (e: Exception) { + } catch (@Suppress("TooGenericExceptionCaught") e: Exception) { error("Could not check actool version. Error: ${e.message}") } if (versionString.isNullOrBlank()) { - error("Could not extract short-bundle-version from actool output: '$outputContent'. Assuming it meets requirements.") + error( + "Could not extract short-bundle-version from actool output: '$outputContent'. " + + "Assuming it meets requirements.", + ) } val majorVersion = @@ -107,13 +112,14 @@ internal class MacAssetsTool( .firstOrNull() ?.toIntOrNull() ?: error( - "Could not get actool major version from version string '$versionString' . Output was: '$outputContent'. Assuming it meets requirements.", + "Could not get actool major version from version string '$versionString' . " + + "Output was: '$outputContent'. Assuming it meets requirements.", ) - if (majorVersion < requiredVersion) { + if (majorVersion < REQUIRED_ACTOOL_VERSION) { error( "Unsupported actool version: $versionString. " + - "Version $requiredVersion or higher is required. " + + "Version $REQUIRED_ACTOOL_VERSION or higher is required. " + "Please update your Xcode Command Line Tools.", ) } else { diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/MacOsMachOPatcher.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/MacOsMachOPatcher.kt similarity index 96% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/MacOsMachOPatcher.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/MacOsMachOPatcher.kt index 07115f2e5..cab5b81c6 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/MacOsMachOPatcher.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/MacOsMachOPatcher.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal import org.gradle.api.logging.Logger import java.io.File diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/MacSigner.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/MacSigner.kt similarity index 92% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/MacSigner.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/MacSigner.kt index ec5e2ee5f..b1de71423 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/MacSigner.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/MacSigner.kt @@ -3,12 +3,12 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal -import io.github.kdroidfilter.nucleus.desktop.application.internal.validation.ValidatedMacOSSigningSettings -import io.github.kdroidfilter.nucleus.internal.utils.Arch -import io.github.kdroidfilter.nucleus.internal.utils.MacUtils -import io.github.kdroidfilter.nucleus.internal.utils.currentArch +import dev.nucleusframework.nucleus.desktop.application.internal.validation.ValidatedMacOSSigningSettings +import dev.nucleusframework.nucleus.internal.utils.Arch +import dev.nucleusframework.nucleus.internal.utils.MacUtils +import dev.nucleusframework.nucleus.internal.utils.currentArch import java.io.File import java.util.regex.Pattern import kotlin.io.path.isExecutable @@ -90,6 +90,7 @@ internal class MacSignerImpl( ), processStdout = { signKeyValue = matchCertificates(it) }, ) + @Suppress("UnsafeCallOnNullableType") signKeyValue!! } runTool.unsign(file) @@ -102,6 +103,7 @@ internal class MacSignerImpl( ) } + @Suppress("MagicNumber") private fun matchCertificates(certificates: String): String { // When the developer id contains non-ascii characters, the output of `security find-certificate` is // slightly different. The `alis` line first has the hex-encoded developer id, then some spaces, diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/MacSigningHelper.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/MacSigningHelper.kt similarity index 84% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/MacSigningHelper.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/MacSigningHelper.kt index 0db456f3c..2f8ba920d 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/MacSigningHelper.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/MacSigningHelper.kt @@ -3,17 +3,16 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.isDylibPath +import dev.nucleusframework.nucleus.desktop.application.internal.files.isDylibPath import java.io.File -import java.nio.file.* +import java.nio.file.LinkOption import kotlin.io.path.isExecutable import kotlin.io.path.isRegularFile internal class MacSigningHelper( private val macSigner: MacSigner, - private val runtimeProvisioningProfile: File?, private val entitlementsFile: File?, private val runtimeEntitlementsFile: File?, destinationDir: File, diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/MultiOutputStream.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/MultiOutputStream.kt similarity index 84% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/MultiOutputStream.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/MultiOutputStream.kt index 5bf048d7a..527b1de2a 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/MultiOutputStream.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/MultiOutputStream.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal import java.io.FilterOutputStream import java.io.OutputStream @@ -31,4 +31,6 @@ internal class MultiOutputStream( } } -internal fun OutputStream.alsoOutputTo(secondaryStream: OutputStream): OutputStream = MultiOutputStream(this, secondaryStream) +internal fun OutputStream.alsoOutputTo(secondaryStream: OutputStream): OutputStream { + return MultiOutputStream(this, secondaryStream) +} diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/NativeLibArchDetector.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/NativeLibArchDetector.kt similarity index 97% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/NativeLibArchDetector.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/NativeLibArchDetector.kt index 7e6b8f18b..853df66d1 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/NativeLibArchDetector.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/NativeLibArchDetector.kt @@ -3,11 +3,12 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal import java.nio.ByteBuffer import java.nio.ByteOrder +@Suppress("MagicNumber") internal object NativeLibArchDetector { enum class NativeArch { X86, X64, ARM64, UNIVERSAL, OTHER, UNKNOWN } @@ -89,7 +90,8 @@ internal object NativeLibArchDetector { */ fun detectFromPath(entryPath: String): NativeInfo { // Split into path segments and the compound tokens within segments - // e.g. "com/sun/jna/linux-x86-64/libjnidispatch.so" → segments: [com, sun, jna, linux-x86-64, libjnidispatch.so] + // e.g. "com/sun/jna/linux-x86-64/libjnidispatch.so" + // → segments: [com, sun, jna, linux-x86-64, libjnidispatch.so] val segments = entryPath.split('/') var detectedOs = NativeOs.UNKNOWN diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/NotarizationRequestInfo.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/NotarizationRequestInfo.kt similarity index 94% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/NotarizationRequestInfo.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/NotarizationRequestInfo.kt index 1c16884b5..111cbb1e8 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/NotarizationRequestInfo.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/NotarizationRequestInfo.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal import java.io.File import java.util.* diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/NucleusProjectProperties.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/NucleusProperties.kt similarity index 94% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/NucleusProjectProperties.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/NucleusProperties.kt index 1152f27ed..1adca5322 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/NucleusProjectProperties.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/NucleusProperties.kt @@ -3,15 +3,16 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal -import io.github.kdroidfilter.nucleus.internal.utils.findLocalOrGlobalProperty -import io.github.kdroidfilter.nucleus.internal.utils.toBooleanProvider -import io.github.kdroidfilter.nucleus.internal.utils.valueOrNull +import dev.nucleusframework.nucleus.internal.utils.findLocalOrGlobalProperty +import dev.nucleusframework.nucleus.internal.utils.toBooleanProvider +import dev.nucleusframework.nucleus.internal.utils.valueOrNull import org.gradle.api.Project import org.gradle.api.provider.Provider import org.gradle.api.provider.ProviderFactory +@Suppress("TooManyFunctions", "MaxLineLength") internal object NucleusProperties { internal const val VERBOSE = "compose.desktop.verbose" internal const val PRESERVE_WD = "compose.preserve.working.dir" diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/NucleusSystemProperties.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/NucleusSystemProperties.kt similarity index 88% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/NucleusSystemProperties.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/NucleusSystemProperties.kt index c512325f2..0073bb961 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/NucleusSystemProperties.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/NucleusSystemProperties.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal internal const val APP_RESOURCES_DIR = "compose.application.resources.dir" internal const val SKIKO_LIBRARY_PATH = "skiko.library.path" diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/PatchedJavaLauncher.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/PatchedJavaLauncher.kt similarity index 95% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/PatchedJavaLauncher.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/PatchedJavaLauncher.kt index cfad3128d..88aba11b2 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/PatchedJavaLauncher.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/PatchedJavaLauncher.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal import org.gradle.api.file.Directory import org.gradle.api.file.RegularFile @@ -44,7 +44,9 @@ internal class PatchedJavaLauncher( val vendor = releaseProps["IMPLEMENTOR"] ?: "Unknown" val installation: Directory = objects.directoryProperty().also { it.set(patchedJavaHome) }.get() return object : JavaInstallationMetadata { - override fun getLanguageVersion(): JavaLanguageVersion = JavaLanguageVersion.of(languageMajor.coerceAtLeast(1)) + override fun getLanguageVersion(): JavaLanguageVersion = + JavaLanguageVersion.of(languageMajor.coerceAtLeast(1)) + override fun getJavaRuntimeVersion(): String = runtimeVersion override fun getJvmVersion(): String = jvmVersion override fun getVendor(): String = vendor diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/ResolveReachabilityMetadataTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/ResolveReachabilityMetadataTask.kt similarity index 97% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/ResolveReachabilityMetadataTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/ResolveReachabilityMetadataTask.kt index 7727e2b3b..111c100cf 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/ResolveReachabilityMetadataTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/ResolveReachabilityMetadataTask.kt @@ -1,4 +1,6 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal +@file:Suppress("MagicNumber", "LoopWithTooManyJumpStatements") + +package dev.nucleusframework.nucleus.desktop.application.internal import org.gradle.api.DefaultTask import org.gradle.api.file.ConfigurableFileCollection diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/RuntimeCompressionLevel.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/RuntimeCompressionLevel.kt similarity index 86% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/RuntimeCompressionLevel.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/RuntimeCompressionLevel.kt index c1eb98ebb..959f00a51 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/RuntimeCompressionLevel.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/RuntimeCompressionLevel.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal internal enum class RuntimeCompressionLevel( internal val id: Int, diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/UpdateYmlGenerator.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/UpdateYmlGenerator.kt similarity index 96% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/UpdateYmlGenerator.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/UpdateYmlGenerator.kt index 2339a5b17..9fb99873f 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/UpdateYmlGenerator.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/UpdateYmlGenerator.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal import org.gradle.api.logging.Logger import java.io.File @@ -41,7 +41,7 @@ internal object UpdateYmlGenerator { f.isFile && !f.name.startsWith(".") && f.extension.lowercase() !in SKIP_EXTENSIONS - }?.sortedBy { it.name } ?: emptyList() + }?.sortedBy { it.name }.orEmpty() if (installerFiles.isEmpty()) { logger.warn("No installer files found in ${outputDir.absolutePath}, skipping update YML generation") diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/WindowsKitsLocator.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/WindowsKitsLocator.kt similarity index 97% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/WindowsKitsLocator.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/WindowsKitsLocator.kt index abfb46b4f..0da041070 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/WindowsKitsLocator.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/WindowsKitsLocator.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal import java.io.File diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/AnalysisReport.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/AnalysisReport.kt similarity index 97% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/AnalysisReport.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/AnalysisReport.kt index ecb03feb7..b99495a8e 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/AnalysisReport.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/AnalysisReport.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer +package dev.nucleusframework.nucleus.desktop.application.internal.analyzer /** * Classification of an Oracle repo entry relative to what the static analyzer found. diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/AnalysisResult.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/AnalysisResult.kt similarity index 97% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/AnalysisResult.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/AnalysisResult.kt index e0683ff10..797cacc5a 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/AnalysisResult.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/AnalysisResult.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer +package dev.nucleusframework.nucleus.desktop.application.internal.analyzer /** * A single reflection type entry discovered by static analysis. diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/BytecodeAnalyzer.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/BytecodeAnalyzer.kt similarity index 90% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/BytecodeAnalyzer.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/BytecodeAnalyzer.kt index 87e1c0499..9138875cb 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/BytecodeAnalyzer.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/BytecodeAnalyzer.kt @@ -1,21 +1,22 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer - -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors.ClassForNameDetector -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors.JarResourceDetector -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors.KotlinSerializableDetector -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors.MethodHandleDetector -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors.NativeMethodDetector -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors.ProxyDetector -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors.ReflectionApiDetector -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors.ResourceAccessDetector -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors.ResourceBundleDetector -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors.ServiceLoaderDetector +package dev.nucleusframework.nucleus.desktop.application.internal.analyzer + +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.detectors.ClassForNameDetector +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.detectors.JarResourceDetector +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.detectors.KotlinSerializableDetector +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.detectors.MethodHandleDetector +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.detectors.NativeMethodDetector +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.detectors.ProxyDetector +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.detectors.ReflectionApiDetector +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.detectors.ResourceAccessDetector +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.detectors.ResourceBundleDetector +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.detectors.ServiceLoaderDetector import java.io.File import java.util.jar.JarFile /** * Main entry point: scans one or more JARs and produces an [AnalysisResult]. */ +@Suppress("LoopWithTooManyJumpStatements") internal object BytecodeAnalyzer { /** * Analyzes a single JAR file. @@ -190,12 +191,11 @@ internal object BytecodeAnalyzer { fun analyzeClasspath(files: Iterable): AnalysisResult { var merged = AnalysisResult() for (file in files) { - merged = merged + - when { - file.isDirectory -> analyzeClassDir(file) - file.isFile && file.name.endsWith(".jar") -> analyzeJar(file) - else -> continue - } + merged += when { + file.isDirectory -> analyzeClassDir(file) + file.isFile && file.name.endsWith(".jar") -> analyzeJar(file) + else -> continue + } } return merged } diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/OracleRepoParser.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/OracleRepoParser.kt similarity index 94% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/OracleRepoParser.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/OracleRepoParser.kt index 8368aae21..85edb837b 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/OracleRepoParser.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/OracleRepoParser.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer +package dev.nucleusframework.nucleus.desktop.application.internal.analyzer import groovy.json.JsonSlurper import java.io.File @@ -10,6 +10,7 @@ import java.io.File * The Oracle repo uses individual config files per type (reflect-config.json, jni-config.json) * which are JSON arrays, unlike the newer reachability-metadata.json format. */ +@Suppress("MaxLineLength") internal object OracleRepoParser { // Instantiate locally per call — JsonSlurper is not thread-safe private fun slurper() = JsonSlurper() @@ -60,7 +61,7 @@ internal object OracleRepoParser { when (resources) { is Map<*, *> -> { @Suppress("UNCHECKED_CAST") - val includes = resources["includes"] as? List> ?: emptyList() + val includes = (resources["includes"] as? List>).orEmpty() for (entry in includes) { val pattern = entry["pattern"] as? String if (pattern != null) { @@ -102,10 +103,10 @@ internal object OracleRepoParser { val root = slurper().parseText(file.readText()) as? Map ?: return AnalysisResult() @Suppress("UNCHECKED_CAST") - val reflectionArray = root["reflection"] as? List> ?: emptyList() + val reflectionArray = (root["reflection"] as? List>).orEmpty() @Suppress("UNCHECKED_CAST") - val jniArray = root["jni"] as? List> ?: emptyList() + val jniArray = (root["jni"] as? List>).orEmpty() val reflectionEntries = reflectionArray.map { parseTypeMap(it).toReflectionEntry() }.toSet() val jniEntries = jniArray.map { parseTypeMap(it).toJniEntry() }.toSet() @@ -169,20 +170,20 @@ internal object OracleRepoParser { @Suppress("UNCHECKED_CAST") private fun parseTypeArray(file: File): List { - val array = slurper().parseText(file.readText()) as? List> ?: return emptyList() + val array = (slurper().parseText(file.readText()) as? List>).orEmpty() return array.mapNotNull { map -> parseTypeMap(map).takeIf { it.name.isNotEmpty() } } } @Suppress("UNCHECKED_CAST") private fun parseTypeMap(map: Map): ParsedType { - val name = (map["name"] as? String) ?: (map["type"] as? String) ?: "" + val name = (map["name"] as? String) ?: (map["type"] as? String).orEmpty() val methods = mutableSetOf() val methodsList = map["methods"] as? List> if (methodsList != null) { for (m in methodsList) { val mName = m["name"] as? String ?: continue - val params = (m["parameterTypes"] as? List) ?: emptyList() + val params = (m["parameterTypes"] as? List).orEmpty() methods.add(MethodSignature(mName, params)) } } diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/ResultComparator.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/ResultComparator.kt similarity index 98% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/ResultComparator.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/ResultComparator.kt index d03e73eb2..6fa4834a6 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/ResultComparator.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/ResultComparator.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer +package dev.nucleusframework.nucleus.desktop.application.internal.analyzer /** * Compares analyzer output against an Oracle repo baseline and produces a gap report. diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/ClassForNameDetector.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/ClassForNameDetector.kt similarity index 95% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/ClassForNameDetector.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/ClassForNameDetector.kt index de1bed38f..fcb8ee419 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/ClassForNameDetector.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/ClassForNameDetector.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors +package dev.nucleusframework.nucleus.desktop.application.internal.analyzer.detectors -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.ReflectionEntry +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.ReflectionEntry import org.objectweb.asm.ClassReader import org.objectweb.asm.ClassVisitor import org.objectweb.asm.MethodVisitor @@ -88,11 +88,11 @@ internal object ClassForNameDetector { override fun visitMethodInsn( opcode: Int, owner: String, - name: String, - descriptor: String, + methodName: String, + methodDescriptor: String, isInterface: Boolean, ) { - if (isClassLoadingCall(opcode, owner, name, descriptor)) { + if (isClassLoadingCall(opcode, owner, methodName, methodDescriptor)) { hasClassLoadingCall = true val className = stackString if (className != null && isValidClassName(className)) { @@ -145,9 +145,9 @@ internal object ClassForNameDetector { // directly matched. Apply stricter validation to reduce false positives // from log messages or SQL queries that resemble FQCNs. if (hasClassLoadingCall) { - for (name in candidateClassNames) { - if (isStrictClassName(name)) { - entries.add(ReflectionEntry(type = name)) + for (className in candidateClassNames) { + if (isStrictClassName(className)) { + entries.add(ReflectionEntry(type = className)) } } } diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/JarResourceDetector.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/JarResourceDetector.kt similarity index 92% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/JarResourceDetector.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/JarResourceDetector.kt index 2d1d3e2fe..031b4554f 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/JarResourceDetector.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/JarResourceDetector.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors +package dev.nucleusframework.nucleus.desktop.application.internal.analyzer.detectors -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.ResourcePattern +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.ResourcePattern import java.util.jar.JarFile /** @@ -9,6 +9,7 @@ import java.util.jar.JarFile * - Properties files at root or known paths (excluding META-INF) * - Text resources in known framework resource directories (Lucene, ICU4J, etc.) */ +@Suppress("CyclomaticComplexMethod", "LoopWithTooManyJumpStatements") internal object JarResourceDetector { private val NATIVE_LIB_EXTENSIONS = setOf("so", "dll", "dylib", "jnilib", "a") diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/KotlinSerializableDetector.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/KotlinSerializableDetector.kt similarity index 94% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/KotlinSerializableDetector.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/KotlinSerializableDetector.kt index d2c799a3b..bf777e91f 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/KotlinSerializableDetector.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/KotlinSerializableDetector.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors +package dev.nucleusframework.nucleus.desktop.application.internal.analyzer.detectors -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.MethodSignature -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.ReflectionEntry +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.MethodSignature +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.ReflectionEntry import org.objectweb.asm.AnnotationVisitor import org.objectweb.asm.ClassReader import org.objectweb.asm.ClassVisitor diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/MethodHandleDetector.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/MethodHandleDetector.kt similarity index 92% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/MethodHandleDetector.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/MethodHandleDetector.kt index 351e48f51..d432573a0 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/MethodHandleDetector.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/MethodHandleDetector.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors +package dev.nucleusframework.nucleus.desktop.application.internal.analyzer.detectors -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.MethodSignature -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.ReflectionEntry +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.MethodSignature +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.ReflectionEntry import org.objectweb.asm.ClassReader import org.objectweb.asm.ClassVisitor import org.objectweb.asm.MethodVisitor @@ -23,6 +23,7 @@ import org.objectweb.asm.Type * The detector tracks both the most recent class type (from `LDC Type`) and string * constant to resolve the target class and member name. */ +@Suppress("LongMethod") internal object MethodHandleDetector { private val FIND_METHOD_NAMES = setOf( @@ -90,12 +91,8 @@ internal object MethodHandleDetector { ) { when (opcode) { Opcodes.ASTORE -> { - if (lastClassType != null) { - localClassTypes[varIndex] = lastClassType!! - } - if (lastStringConstant != null) { - localStrings[varIndex] = lastStringConstant!! - } + lastClassType?.let { localClassTypes[varIndex] = it } + lastStringConstant?.let { localStrings[varIndex] = it } lastClassType = null lastStringConstant = null } diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/NativeMethodDetector.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/NativeMethodDetector.kt similarity index 96% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/NativeMethodDetector.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/NativeMethodDetector.kt index a6e9ca6c9..6123d6a45 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/NativeMethodDetector.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/NativeMethodDetector.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors +package dev.nucleusframework.nucleus.desktop.application.internal.analyzer.detectors -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.JniEntry -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.MethodSignature +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.JniEntry +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.MethodSignature import org.objectweb.asm.ClassReader import org.objectweb.asm.ClassVisitor import org.objectweb.asm.FieldVisitor diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/ProxyDetector.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/ProxyDetector.kt similarity index 93% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/ProxyDetector.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/ProxyDetector.kt index 551dc2182..7d5426b6a 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/ProxyDetector.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/ProxyDetector.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors +package dev.nucleusframework.nucleus.desktop.application.internal.analyzer.detectors -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.ReflectionEntry +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.ReflectionEntry import org.objectweb.asm.ClassReader import org.objectweb.asm.ClassVisitor import org.objectweb.asm.MethodVisitor diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/ReflectionApiDetector.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/ReflectionApiDetector.kt similarity index 96% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/ReflectionApiDetector.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/ReflectionApiDetector.kt index 7382c499d..c2bb103fa 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/ReflectionApiDetector.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/ReflectionApiDetector.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors +package dev.nucleusframework.nucleus.desktop.application.internal.analyzer.detectors -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.MethodSignature -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.ReflectionEntry +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.MethodSignature +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.ReflectionEntry import org.objectweb.asm.ClassReader import org.objectweb.asm.ClassVisitor import org.objectweb.asm.MethodVisitor @@ -16,6 +16,7 @@ import org.objectweb.asm.Type * * Tracks both string constants and class constants through local variable stores/loads. */ +@Suppress("CyclomaticComplexMethod") internal object ReflectionApiDetector { private val METHOD_LOOKUPS = setOf("getMethod", "getDeclaredMethod") private val FIELD_LOOKUPS = setOf("getField", "getDeclaredField") diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/ResourceAccessDetector.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/ResourceAccessDetector.kt similarity index 89% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/ResourceAccessDetector.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/ResourceAccessDetector.kt index b7fc0d2f4..33d842c1d 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/ResourceAccessDetector.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/ResourceAccessDetector.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors +package dev.nucleusframework.nucleus.desktop.application.internal.analyzer.detectors -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.ResourcePattern +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.ResourcePattern import org.objectweb.asm.ClassReader import org.objectweb.asm.ClassVisitor import org.objectweb.asm.MethodVisitor @@ -73,12 +73,13 @@ internal object ResourceAccessDetector { ) { if (opcode == Opcodes.INVOKEVIRTUAL && owner in RESOURCE_OWNERS && - name in RESOURCE_METHODS && - stackString != null + name in RESOURCE_METHODS ) { - val path = normalizeResourcePath(stackString!!) - if (path.isNotEmpty()) { - patterns.add(ResourcePattern(glob = path)) + stackString?.let { s -> + val path = normalizeResourcePath(s) + if (path.isNotEmpty()) { + patterns.add(ResourcePattern(glob = path)) + } } } stackString = null diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/ResourceBundleDetector.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/ResourceBundleDetector.kt similarity index 96% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/ResourceBundleDetector.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/ResourceBundleDetector.kt index 6b998a28d..cfc9ab837 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/ResourceBundleDetector.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/ResourceBundleDetector.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors +package dev.nucleusframework.nucleus.desktop.application.internal.analyzer.detectors -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.ResourcePattern +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.ResourcePattern import org.objectweb.asm.ClassReader import org.objectweb.asm.ClassVisitor import org.objectweb.asm.MethodVisitor diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/ServiceLoaderDetector.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/ServiceLoaderDetector.kt similarity index 82% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/ServiceLoaderDetector.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/ServiceLoaderDetector.kt index 5e91e3060..bf8acb7ec 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/detectors/ServiceLoaderDetector.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/analyzer/detectors/ServiceLoaderDetector.kt @@ -1,8 +1,8 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors +package dev.nucleusframework.nucleus.desktop.application.internal.analyzer.detectors -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.MethodSignature -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.ReflectionEntry -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.ResourcePattern +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.MethodSignature +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.ReflectionEntry +import dev.nucleusframework.nucleus.desktop.application.internal.analyzer.ResourcePattern import java.io.InputStream import java.util.jar.JarFile @@ -13,6 +13,7 @@ import java.util.jar.JarFile * - Reflection entries for each implementation class (with no-arg constructor) * - A resource pattern for the service file itself */ +@Suppress("LoopWithTooManyJumpStatements") internal object ServiceLoaderDetector { data class ServiceResult( val reflectionEntries: Set, diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/cliArgUtils.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/cliArgUtils.kt similarity index 88% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/cliArgUtils.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/cliArgUtils.kt index a158204e4..c3502bec3 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/cliArgUtils.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/cliArgUtils.kt @@ -3,9 +3,9 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.normalizedPath +import dev.nucleusframework.nucleus.desktop.application.internal.files.normalizedPath import org.gradle.api.file.FileSystemLocation import org.gradle.api.provider.Provider import java.io.File diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/configureDesktop.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/configureDesktop.kt similarity index 90% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/configureDesktop.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/configureDesktop.kt index 72e4d5c04..7fbca4c38 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/configureDesktop.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/configureDesktop.kt @@ -3,13 +3,13 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal -import io.github.kdroidfilter.nucleus.NucleusExtension -import io.github.kdroidfilter.nucleus.desktop.tasks.AbstractUnpackDefaultApplicationResourcesTask -import io.github.kdroidfilter.nucleus.internal.utils.OS -import io.github.kdroidfilter.nucleus.internal.utils.currentOS -import io.github.kdroidfilter.nucleus.internal.utils.registerTask +import dev.nucleusframework.nucleus.NucleusExtension +import dev.nucleusframework.nucleus.desktop.tasks.AbstractUnpackDefaultApplicationResourcesTask +import dev.nucleusframework.nucleus.internal.utils.OS +import dev.nucleusframework.nucleus.internal.utils.currentOS +import dev.nucleusframework.nucleus.internal.utils.registerTask import org.gradle.api.Project import org.gradle.api.plugins.ExtensionAware import org.gradle.api.tasks.JavaExec @@ -46,7 +46,7 @@ internal fun configureDesktop( } /** - * Forwards [io.github.kdroidfilter.nucleus.desktop.application.dsl.JvmApplication.mainClass] to + * Forwards [dev.nucleusframework.nucleus.desktop.application.dsl.JvmApplication.mainClass] to * `compose.desktop.application.mainClass` so that Compose Hot Reload tasks (e.g. `hotRun`, * `hotSnapshotMain`) can resolve the entry point without the user duplicating it via * `-PmainClass=...` or a manual `compose.desktop.application { ... }` block. diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/configureGraalvmApplication.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/configureGraalvmApplication.kt similarity index 95% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/configureGraalvmApplication.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/configureGraalvmApplication.kt index ab7928a24..ae67b4903 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/configureGraalvmApplication.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/configureGraalvmApplication.kt @@ -1,22 +1,29 @@ -@file:Suppress("ktlint:standard:filename") - -package io.github.kdroidfilter.nucleus.desktop.application.internal - -import io.github.kdroidfilter.nucleus.desktop.application.dsl.FileAssociation -import io.github.kdroidfilter.nucleus.desktop.application.dsl.GraalvmSettings -import io.github.kdroidfilter.nucleus.desktop.application.dsl.PackagingBackend -import io.github.kdroidfilter.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.InfoPlistListValue -import io.github.kdroidfilter.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.InfoPlistMapValue -import io.github.kdroidfilter.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.InfoPlistStringValue -import io.github.kdroidfilter.nucleus.desktop.application.tasks.AbstractElectronBuilderPackageTask -import io.github.kdroidfilter.nucleus.desktop.application.tasks.AbstractNotarizationTask -import io.github.kdroidfilter.nucleus.desktop.tasks.AbstractUnpackDefaultApplicationResourcesTask -import io.github.kdroidfilter.nucleus.internal.utils.Arch -import io.github.kdroidfilter.nucleus.internal.utils.OS -import io.github.kdroidfilter.nucleus.internal.utils.currentArch -import io.github.kdroidfilter.nucleus.internal.utils.currentOS -import io.github.kdroidfilter.nucleus.internal.utils.executableName -import io.github.kdroidfilter.nucleus.internal.utils.uppercaseFirstChar +@file:Suppress( + "ktlint:standard:filename", + "CyclomaticComplexMethod", + "LongMethod", + "NestedBlockDepth", + "MagicNumber", + "MaxLineLength", +) + +package dev.nucleusframework.nucleus.desktop.application.internal + +import dev.nucleusframework.nucleus.desktop.application.dsl.FileAssociation +import dev.nucleusframework.nucleus.desktop.application.dsl.GraalvmSettings +import dev.nucleusframework.nucleus.desktop.application.dsl.PackagingBackend +import dev.nucleusframework.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.InfoPlistListValue +import dev.nucleusframework.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.InfoPlistMapValue +import dev.nucleusframework.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.InfoPlistStringValue +import dev.nucleusframework.nucleus.desktop.application.tasks.AbstractElectronBuilderPackageTask +import dev.nucleusframework.nucleus.desktop.application.tasks.AbstractNotarizationTask +import dev.nucleusframework.nucleus.desktop.tasks.AbstractUnpackDefaultApplicationResourcesTask +import dev.nucleusframework.nucleus.internal.utils.Arch +import dev.nucleusframework.nucleus.internal.utils.OS +import dev.nucleusframework.nucleus.internal.utils.currentArch +import dev.nucleusframework.nucleus.internal.utils.currentOS +import dev.nucleusframework.nucleus.internal.utils.executableName +import dev.nucleusframework.nucleus.internal.utils.uppercaseFirstChar import org.gradle.api.DefaultTask import org.gradle.api.tasks.Copy import org.gradle.api.tasks.Delete @@ -38,7 +45,6 @@ private val graalvmDefaultJvmArgs: List = } } -@Suppress("LongMethod", "CyclomaticComplexMethod") internal fun JvmApplicationContext.configureGraalvmApplication() { val graalvm = app.graalvm val javaToolchains = project.extensions.getByType(JavaToolchainService::class.java) @@ -255,7 +261,7 @@ internal fun JvmApplicationContext.configureGraalvmApplication() { // Project/SourceSet references into the configuration cache. val winPkgName = packageNameProvider val winPkgVersion = provider { app.nativeDistributions.packageVersion ?: "1.0.0" } - val winCopyright = provider { app.nativeDistributions.copyright ?: "" } + val winCopyright = provider { app.nativeDistributions.copyright.orEmpty() } val winDescription = provider { app.nativeDistributions.description ?: packageNameProvider.get() } val winIconFile = app.nativeDistributions.windows.iconFile @@ -393,7 +399,7 @@ internal fun JvmApplicationContext.configureGraalvmApplication() { taskNameObject = "graalvmPlatformMetadata", ) { description = "Generate platform-specific GraalVM metadata for AWT/Java2D and main class" - inputs.property("mainClass", mainClassName ?: "") + inputs.property("mainClass", mainClassName.orEmpty()) outputs.dir(platformMetadataDir) doLast { @@ -530,39 +536,37 @@ internal fun JvmApplicationContext.configureGraalvmApplication() { .register( "cleanupGraalvmMetadata", CleanupGraalvmMetadataTask::class.java, - ).apply { - configure { task -> - task.description = - "Remove entries from manual reachability-metadata.json that are already managed by Nucleus" - task.group = NUCLEUS_TASK_GROUP - task.dependsOn(resolveReachabilityMetadata) - task.dependsOn(analyzeStaticMetadata) - task.dependsOn(filterLibraryMetadata) - - if (runtimeCfg != null) { - task.runtimeClasspath.from(runtimeCfg) - } - task.metadataRepoDirsFile.set(project.layout.file(metadataRepoDirsFile.map { it.asFile })) - task.staticAnalysisDir.from(staticMetadataDir) - task.staticAnalysisDir.from(libraryMetadataDir) - task.platformName.set( - when (currentOS) { - OS.Windows -> "windows" - OS.MacOS -> "macos" - OS.Linux -> "linux" - }, - ) - task.mainClass.set(mainClassName ?: "") - task.configDir.set( - if (nativeImageConfigDir.isPresent) { - nativeImageConfigDir.get().asFile - } else { - project.layout.projectDirectory - .dir("graalvm") - .asFile - }, - ) + ) { task -> + task.description = + "Remove entries from manual reachability-metadata.json that are already managed by Nucleus" + task.group = NUCLEUS_TASK_GROUP + task.dependsOn(resolveReachabilityMetadata) + task.dependsOn(analyzeStaticMetadata) + task.dependsOn(filterLibraryMetadata) + + if (runtimeCfg != null) { + task.runtimeClasspath.from(runtimeCfg) } + task.metadataRepoDirsFile.set(project.layout.file(metadataRepoDirsFile.map { it.asFile })) + task.staticAnalysisDir.from(staticMetadataDir) + task.staticAnalysisDir.from(libraryMetadataDir) + task.platformName.set( + when (currentOS) { + OS.Windows -> "windows" + OS.MacOS -> "macos" + OS.Linux -> "linux" + }, + ) + task.mainClass.set(mainClassName.orEmpty()) + task.configDir.set( + if (nativeImageConfigDir.isPresent) { + nativeImageConfigDir.get().asFile + } else { + project.layout.projectDirectory + .dir("graalvm") + .asFile + }, + ) } // ── nativeImageCompile ── @@ -923,7 +927,7 @@ private fun JvmApplicationContext.configureMacOsGraalvmPackaging( // Patch all Mach-O files: main binary + dylibs in MacOS/ and MacOS/lib/ sequenceOf(macosDir, libDir) .filter { it.isDirectory } - .flatMap { dir -> dir.listFiles()?.asSequence() ?: emptySequence() } + .flatMap { dir -> dir.listFiles()?.asSequence().orEmpty() } .filter { it.isFile && (it.extension == "dylib" || it.canExecute()) } .forEach { file -> patchMachOBuildVersion(file, minVer, sdkVer, logger) @@ -1019,11 +1023,11 @@ private fun JvmApplicationContext.configureMacOsGraalvmPackaging( // Wire inputs for up-to-date checks inputs.property("bundleName", plistBundleName) - inputs.property("bundleID", plistBundleID ?: "") + inputs.property("bundleID", plistBundleID.orEmpty()) inputs.property("version", plistVersion) inputs.property("imageName", imageName) inputs.property("minSystemVersion", plistMinSystemVersion) - inputs.property("copyright", plistCopyright ?: "") + inputs.property("copyright", plistCopyright.orEmpty()) inputs.property("iconFileName", plistIconFileName) inputs.property("fileAssociations", plistFileAssociations.toString()) diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/configureJvmApplication.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/configureJvmApplication.kt similarity index 93% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/configureJvmApplication.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/configureJvmApplication.kt index 724914f86..15fa08c29 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/configureJvmApplication.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/configureJvmApplication.kt @@ -3,48 +3,48 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -@file:Suppress("TooManyFunctions") - -package io.github.kdroidfilter.nucleus.desktop.application.internal - -import io.github.kdroidfilter.nucleus.desktop.application.dsl.PackagingBackend -import io.github.kdroidfilter.nucleus.desktop.application.dsl.TargetFormat -import io.github.kdroidfilter.nucleus.desktop.application.internal.validation.validatePackageVersions -import io.github.kdroidfilter.nucleus.desktop.application.tasks.AbstractCheckNativeDistributionRuntime -import io.github.kdroidfilter.nucleus.desktop.application.tasks.AbstractElectronBuilderPackageTask -import io.github.kdroidfilter.nucleus.desktop.application.tasks.AbstractExtractNativeLibsTask -import io.github.kdroidfilter.nucleus.desktop.application.tasks.AbstractGenerateAotCacheTask -import io.github.kdroidfilter.nucleus.desktop.application.tasks.AbstractGenerateAppPropertiesTask -import io.github.kdroidfilter.nucleus.desktop.application.tasks.AbstractJLinkTask -import io.github.kdroidfilter.nucleus.desktop.application.tasks.AbstractJPackageTask -import io.github.kdroidfilter.nucleus.desktop.application.tasks.AbstractNotarizationTask -import io.github.kdroidfilter.nucleus.desktop.application.tasks.AbstractPatchCaCertificatesTask -import io.github.kdroidfilter.nucleus.desktop.application.tasks.AbstractPatchMacJvmTask -import io.github.kdroidfilter.nucleus.desktop.application.tasks.AbstractProguardTask -import io.github.kdroidfilter.nucleus.desktop.application.tasks.AbstractRunAppXTask -import io.github.kdroidfilter.nucleus.desktop.application.tasks.AbstractRunDistributableTask -import io.github.kdroidfilter.nucleus.desktop.application.tasks.AbstractStripNativeLibsFromJarsTask -import io.github.kdroidfilter.nucleus.desktop.application.tasks.AbstractSuggestModulesTask -import io.github.kdroidfilter.nucleus.desktop.tasks.AbstractJarsFlattenTask -import io.github.kdroidfilter.nucleus.desktop.tasks.AbstractUnpackDefaultApplicationResourcesTask -import io.github.kdroidfilter.nucleus.internal.KOTLIN_JVM_PLUGIN_ID -import io.github.kdroidfilter.nucleus.internal.KOTLIN_MPP_PLUGIN_ID -import io.github.kdroidfilter.nucleus.internal.javaSourceSets -import io.github.kdroidfilter.nucleus.internal.mppExt -import io.github.kdroidfilter.nucleus.internal.utils.Arch -import io.github.kdroidfilter.nucleus.internal.utils.OS -import io.github.kdroidfilter.nucleus.internal.utils.currentOS -import io.github.kdroidfilter.nucleus.internal.utils.dependsOn -import io.github.kdroidfilter.nucleus.internal.utils.detachedComposeGradleDependency -import io.github.kdroidfilter.nucleus.internal.utils.detachedDependency -import io.github.kdroidfilter.nucleus.internal.utils.dir -import io.github.kdroidfilter.nucleus.internal.utils.excludeTransitiveDependencies -import io.github.kdroidfilter.nucleus.internal.utils.file -import io.github.kdroidfilter.nucleus.internal.utils.ioFile -import io.github.kdroidfilter.nucleus.internal.utils.ioFileOrNull -import io.github.kdroidfilter.nucleus.internal.utils.javaExecutable -import io.github.kdroidfilter.nucleus.internal.utils.jdkArch -import io.github.kdroidfilter.nucleus.internal.utils.provider +@file:Suppress("TooManyFunctions", "CyclomaticComplexMethod") + +package dev.nucleusframework.nucleus.desktop.application.internal + +import dev.nucleusframework.nucleus.desktop.application.dsl.PackagingBackend +import dev.nucleusframework.nucleus.desktop.application.dsl.TargetFormat +import dev.nucleusframework.nucleus.desktop.application.internal.validation.validatePackageVersions +import dev.nucleusframework.nucleus.desktop.application.tasks.AbstractCheckNativeDistributionRuntime +import dev.nucleusframework.nucleus.desktop.application.tasks.AbstractElectronBuilderPackageTask +import dev.nucleusframework.nucleus.desktop.application.tasks.AbstractExtractNativeLibsTask +import dev.nucleusframework.nucleus.desktop.application.tasks.AbstractGenerateAotCacheTask +import dev.nucleusframework.nucleus.desktop.application.tasks.AbstractGenerateAppPropertiesTask +import dev.nucleusframework.nucleus.desktop.application.tasks.AbstractJLinkTask +import dev.nucleusframework.nucleus.desktop.application.tasks.AbstractJPackageTask +import dev.nucleusframework.nucleus.desktop.application.tasks.AbstractNotarizationTask +import dev.nucleusframework.nucleus.desktop.application.tasks.AbstractPatchCaCertificatesTask +import dev.nucleusframework.nucleus.desktop.application.tasks.AbstractPatchMacJvmTask +import dev.nucleusframework.nucleus.desktop.application.tasks.AbstractProguardTask +import dev.nucleusframework.nucleus.desktop.application.tasks.AbstractRunAppXTask +import dev.nucleusframework.nucleus.desktop.application.tasks.AbstractRunDistributableTask +import dev.nucleusframework.nucleus.desktop.application.tasks.AbstractStripNativeLibsFromJarsTask +import dev.nucleusframework.nucleus.desktop.application.tasks.AbstractSuggestModulesTask +import dev.nucleusframework.nucleus.desktop.tasks.AbstractJarsFlattenTask +import dev.nucleusframework.nucleus.desktop.tasks.AbstractUnpackDefaultApplicationResourcesTask +import dev.nucleusframework.nucleus.internal.KOTLIN_JVM_PLUGIN_ID +import dev.nucleusframework.nucleus.internal.KOTLIN_MPP_PLUGIN_ID +import dev.nucleusframework.nucleus.internal.javaSourceSets +import dev.nucleusframework.nucleus.internal.mppExt +import dev.nucleusframework.nucleus.internal.utils.Arch +import dev.nucleusframework.nucleus.internal.utils.OS +import dev.nucleusframework.nucleus.internal.utils.currentOS +import dev.nucleusframework.nucleus.internal.utils.dependsOn +import dev.nucleusframework.nucleus.internal.utils.detachedComposeGradleDependency +import dev.nucleusframework.nucleus.internal.utils.detachedDependency +import dev.nucleusframework.nucleus.internal.utils.dir +import dev.nucleusframework.nucleus.internal.utils.excludeTransitiveDependencies +import dev.nucleusframework.nucleus.internal.utils.file +import dev.nucleusframework.nucleus.internal.utils.ioFile +import dev.nucleusframework.nucleus.internal.utils.ioFileOrNull +import dev.nucleusframework.nucleus.internal.utils.javaExecutable +import dev.nucleusframework.nucleus.internal.utils.jdkArch +import dev.nucleusframework.nucleus.internal.utils.provider import org.gradle.api.DefaultTask import org.gradle.api.file.DuplicatesStrategy import org.gradle.api.provider.Provider @@ -603,16 +603,18 @@ private fun JvmApplicationContext.configurePackagingTasks(commonTasks: CommonJvm // Register the patch task eagerly so it's available for the run task's // lazy configuration (Gradle forbids task registration from within // another task's configuration action). - val patchMacJvmTask: TaskProvider? = - if (currentOS == OS.MacOS && app.nativeDistributions.macOS.macOsSdkVersion != null) { + val patchMacJvmTask: TaskProvider? = run { + val sdkVersion = app.nativeDistributions.macOS.macOsSdkVersion + if (currentOS == OS.MacOS && sdkVersion != null) { registerPatchMacJvmTask( javaHome = app.javaHome, minVersion = app.nativeDistributions.macOS.minimumSystemVersion ?: "10.13", - sdkVersion = app.nativeDistributions.macOS.macOsSdkVersion!!, + sdkVersion = sdkVersion, ) } else { null } + } val run = tasks.register(taskNameAction = "run") { diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/configureNativeApplication.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/configureNativeApplication.kt similarity index 87% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/configureNativeApplication.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/configureNativeApplication.kt index 0ec6a8e4e..4002428db 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/configureNativeApplication.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/configureNativeApplication.kt @@ -3,17 +3,17 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal - -import io.github.kdroidfilter.nucleus.desktop.application.dsl.NativeApplication -import io.github.kdroidfilter.nucleus.desktop.application.dsl.TargetFormat -import io.github.kdroidfilter.nucleus.desktop.application.tasks.AbstractNativeMacApplicationPackageAppDirTask -import io.github.kdroidfilter.nucleus.desktop.application.tasks.AbstractNativeMacApplicationPackageDmgTask -import io.github.kdroidfilter.nucleus.desktop.application.tasks.AbstractNativeMacApplicationPackageTask -import io.github.kdroidfilter.nucleus.desktop.tasks.AbstractUnpackDefaultApplicationResourcesTask -import io.github.kdroidfilter.nucleus.internal.utils.OS -import io.github.kdroidfilter.nucleus.internal.utils.currentOS -import io.github.kdroidfilter.nucleus.internal.utils.joinLowerCamelCase +package dev.nucleusframework.nucleus.desktop.application.internal + +import dev.nucleusframework.nucleus.desktop.application.dsl.NativeApplication +import dev.nucleusframework.nucleus.desktop.application.dsl.TargetFormat +import dev.nucleusframework.nucleus.desktop.application.tasks.AbstractNativeMacApplicationPackageAppDirTask +import dev.nucleusframework.nucleus.desktop.application.tasks.AbstractNativeMacApplicationPackageDmgTask +import dev.nucleusframework.nucleus.desktop.application.tasks.AbstractNativeMacApplicationPackageTask +import dev.nucleusframework.nucleus.desktop.tasks.AbstractUnpackDefaultApplicationResourcesTask +import dev.nucleusframework.nucleus.internal.utils.OS +import dev.nucleusframework.nucleus.internal.utils.currentOS +import dev.nucleusframework.nucleus.internal.utils.joinLowerCamelCase import org.gradle.api.Project import org.gradle.api.Task import org.gradle.api.tasks.TaskContainer diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/dirLayoutUtils.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/dirLayoutUtils.kt similarity index 86% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/dirLayoutUtils.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/dirLayoutUtils.kt index 5bdc2f66d..659af7052 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/dirLayoutUtils.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/dirLayoutUtils.kt @@ -3,9 +3,9 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal -import io.github.kdroidfilter.nucleus.internal.utils.dir +import dev.nucleusframework.nucleus.internal.utils.dir import org.gradle.api.Project import org.gradle.api.Task import org.gradle.api.file.Directory diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/electronbuilder/ElectronBuilderConfigGenerator.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/electronbuilder/ElectronBuilderConfigGenerator.kt similarity index 95% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/electronbuilder/ElectronBuilderConfigGenerator.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/electronbuilder/ElectronBuilderConfigGenerator.kt index 0d5c472e5..99c4382b5 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/electronbuilder/ElectronBuilderConfigGenerator.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/electronbuilder/ElectronBuilderConfigGenerator.kt @@ -3,32 +3,32 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal.electronbuilder - -import io.github.kdroidfilter.nucleus.desktop.application.dsl.AppXSettings -import io.github.kdroidfilter.nucleus.desktop.application.dsl.DmgSettings -import io.github.kdroidfilter.nucleus.desktop.application.dsl.FileAssociation -import io.github.kdroidfilter.nucleus.desktop.application.dsl.FlatpakSettings -import io.github.kdroidfilter.nucleus.desktop.application.dsl.JvmApplicationDistributions -import io.github.kdroidfilter.nucleus.desktop.application.dsl.JvmMacOSPlatformSettings -import io.github.kdroidfilter.nucleus.desktop.application.dsl.NsisSettings -import io.github.kdroidfilter.nucleus.desktop.application.dsl.PublishSettings -import io.github.kdroidfilter.nucleus.desktop.application.dsl.SnapSettings -import io.github.kdroidfilter.nucleus.desktop.application.dsl.TargetFormat -import io.github.kdroidfilter.nucleus.internal.utils.Arch -import io.github.kdroidfilter.nucleus.internal.utils.OS -import io.github.kdroidfilter.nucleus.internal.utils.currentOS +package dev.nucleusframework.nucleus.desktop.application.internal.electronbuilder + +import dev.nucleusframework.nucleus.desktop.application.dsl.AppXSettings +import dev.nucleusframework.nucleus.desktop.application.dsl.DmgSettings +import dev.nucleusframework.nucleus.desktop.application.dsl.FileAssociation +import dev.nucleusframework.nucleus.desktop.application.dsl.FlatpakSettings +import dev.nucleusframework.nucleus.desktop.application.dsl.JvmApplicationDistributions +import dev.nucleusframework.nucleus.desktop.application.dsl.JvmMacOSPlatformSettings +import dev.nucleusframework.nucleus.desktop.application.dsl.NsisSettings +import dev.nucleusframework.nucleus.desktop.application.dsl.PublishSettings +import dev.nucleusframework.nucleus.desktop.application.dsl.SnapSettings +import dev.nucleusframework.nucleus.desktop.application.dsl.TargetFormat +import dev.nucleusframework.nucleus.internal.utils.Arch +import dev.nucleusframework.nucleus.internal.utils.OS +import dev.nucleusframework.nucleus.internal.utils.currentOS import java.io.File /** * Generates an electron-builder YAML configuration from the Gradle DSL settings. * * Maps Nucleus DSL properties to the electron-builder configuration schema, - * producing a `electron-builder.yml` file consumed by `electron-builder --prepackaged`. + * Producing a `electron-builder.yml` file consumed by `electron-builder --prepackaged`. * */ -@Suppress("TooManyFunctions", "LargeClass") -internal class ElectronBuilderConfigGenerator { + @Suppress("TooManyFunctions", "LargeClass", "CyclomaticComplexMethod", "MaxLineLength") + internal class ElectronBuilderConfigGenerator { /** * Generates the electron-builder config YAML content. * diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/electronbuilder/ElectronBuilderToolManager.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/electronbuilder/ElectronBuilderToolManager.kt similarity index 98% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/electronbuilder/ElectronBuilderToolManager.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/electronbuilder/ElectronBuilderToolManager.kt index bf657636b..445d8a06f 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/electronbuilder/ElectronBuilderToolManager.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/electronbuilder/ElectronBuilderToolManager.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal.electronbuilder +package dev.nucleusframework.nucleus.desktop.application.internal.electronbuilder import org.gradle.api.logging.Logger import org.gradle.process.ExecOperations diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/electronbuilder/NodeJsDetector.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/electronbuilder/NodeJsDetector.kt similarity index 94% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/electronbuilder/NodeJsDetector.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/electronbuilder/NodeJsDetector.kt index 5fbdc5b69..86b73dc9a 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/electronbuilder/NodeJsDetector.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/electronbuilder/NodeJsDetector.kt @@ -3,10 +3,10 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal.electronbuilder +package dev.nucleusframework.nucleus.desktop.application.internal.electronbuilder -import io.github.kdroidfilter.nucleus.internal.utils.OS -import io.github.kdroidfilter.nucleus.internal.utils.currentOS +import dev.nucleusframework.nucleus.internal.utils.OS +import dev.nucleusframework.nucleus.internal.utils.currentOS import org.gradle.api.logging.Logger import java.io.File import java.io.IOException diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/files/FileCopyingProcessor.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/files/FileCopyingProcessor.kt similarity index 81% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/files/FileCopyingProcessor.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/files/FileCopyingProcessor.kt index 3d681a587..52ee8034a 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/files/FileCopyingProcessor.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/files/FileCopyingProcessor.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal.files +package dev.nucleusframework.nucleus.desktop.application.internal.files import java.io.File diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/files/MacJarSignFileCopyingProcessor.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/files/MacJarSignFileCopyingProcessor.kt similarity index 95% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/files/MacJarSignFileCopyingProcessor.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/files/MacJarSignFileCopyingProcessor.kt index 43589133d..06be7887a 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/files/MacJarSignFileCopyingProcessor.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/files/MacJarSignFileCopyingProcessor.kt @@ -3,9 +3,9 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal.files +package dev.nucleusframework.nucleus.desktop.application.internal.files -import io.github.kdroidfilter.nucleus.desktop.application.internal.MacSigner +import dev.nucleusframework.nucleus.desktop.application.internal.MacSigner import java.io.File import java.util.zip.ZipEntry import java.util.zip.ZipInputStream diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/files/SimpleFileCopyingProcessor.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/files/SimpleFileCopyingProcessor.kt similarity index 84% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/files/SimpleFileCopyingProcessor.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/files/SimpleFileCopyingProcessor.kt index 8cba24772..552744ebf 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/files/SimpleFileCopyingProcessor.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/files/SimpleFileCopyingProcessor.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal.files +package dev.nucleusframework.nucleus.desktop.application.internal.files import java.io.File diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/files/fileUtils.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/files/fileUtils.kt similarity index 83% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/files/fileUtils.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/files/fileUtils.kt index e66b7d223..650a7d7b2 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/files/fileUtils.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/files/fileUtils.kt @@ -3,19 +3,24 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal.files +package dev.nucleusframework.nucleus.desktop.application.internal.files -import io.github.kdroidfilter.nucleus.desktop.application.dsl.TargetFormat -import io.github.kdroidfilter.nucleus.internal.utils.OS -import io.github.kdroidfilter.nucleus.internal.utils.currentOS +import dev.nucleusframework.nucleus.desktop.application.dsl.TargetFormat +import dev.nucleusframework.nucleus.internal.utils.OS +import dev.nucleusframework.nucleus.internal.utils.currentOS import org.gradle.api.tasks.Internal -import java.io.* +import java.io.File +import java.io.FileInputStream +import java.io.FileOutputStream +import java.io.InputStream import java.security.DigestInputStream import java.security.MessageDigest import java.util.zip.ZipEntry import java.util.zip.ZipInputStream import java.util.zip.ZipOutputStream +private const val BYTE_MASK = 0xFF + internal fun File.mangledName(): String = buildString { append(nameWithoutExtension) @@ -40,7 +45,7 @@ internal fun File.contentHash(): String { val digest = md5.digest() return buildString(digest.size * 2) { for (byte in digest) { - append(Integer.toHexString(0xFF and byte.toInt())) + append(Integer.toHexString(BYTE_MASK and byte.toInt())) } } } @@ -48,7 +53,9 @@ internal fun File.contentHash(): String { private fun MessageDigest.digestContent(file: File) { file.inputStream().buffered().use { fis -> DigestInputStream(fis, this).use { ds -> - while (ds.read() != -1) {} + while (ds.read() != -1) { + // consume stream to update digest + } } } } diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/mergeNativeImageConfig.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/mergeNativeImageConfig.kt similarity index 98% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/mergeNativeImageConfig.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/mergeNativeImageConfig.kt index 6e3350a45..9d1c549da 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/mergeNativeImageConfig.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/mergeNativeImageConfig.kt @@ -1,6 +1,14 @@ -@file:Suppress("ktlint:standard:filename") - -package io.github.kdroidfilter.nucleus.desktop.application.internal +@file:Suppress( + "ktlint:standard:filename", + "TooManyFunctions", + "CyclomaticComplexMethod", + "LongMethod", + "NestedBlockDepth", + "LoopWithTooManyJumpStatements", + "MaxLineLength", +) + +package dev.nucleusframework.nucleus.desktop.application.internal import groovy.json.JsonOutput import groovy.json.JsonSlurper diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/packageVersions.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/packageVersions.kt similarity index 90% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/packageVersions.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/packageVersions.kt index e100fbfda..abd9b25d3 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/packageVersions.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/packageVersions.kt @@ -3,11 +3,11 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal -import io.github.kdroidfilter.nucleus.desktop.application.dsl.JvmApplicationDistributions -import io.github.kdroidfilter.nucleus.desktop.application.dsl.TargetFormat -import io.github.kdroidfilter.nucleus.internal.utils.OS +import dev.nucleusframework.nucleus.desktop.application.dsl.JvmApplicationDistributions +import dev.nucleusframework.nucleus.desktop.application.dsl.TargetFormat +import dev.nucleusframework.nucleus.internal.utils.OS import org.gradle.api.provider.Provider internal fun JvmApplicationContext.packageVersionFor(targetFormat: TargetFormat): Provider = diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/resolveMetadataRepository.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/resolveMetadataRepository.kt similarity index 97% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/resolveMetadataRepository.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/resolveMetadataRepository.kt index 9d6e7be8e..6c23c859b 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/resolveMetadataRepository.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/resolveMetadataRepository.kt @@ -1,6 +1,6 @@ -@file:Suppress("ktlint:standard:filename") +@file:Suppress("ktlint:standard:filename", "NestedBlockDepth", "TooGenericExceptionCaught") -package io.github.kdroidfilter.nucleus.desktop.application.internal +package dev.nucleusframework.nucleus.desktop.application.internal import groovy.json.JsonSlurper import org.gradle.api.logging.Logger diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/validation/ValidatedMacOSNotarizationSettings.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/validation/ValidatedMacOSNotarizationSettings.kt similarity index 96% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/validation/ValidatedMacOSNotarizationSettings.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/validation/ValidatedMacOSNotarizationSettings.kt index 8e96ebbfd..29968ccd3 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/validation/ValidatedMacOSNotarizationSettings.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/validation/ValidatedMacOSNotarizationSettings.kt @@ -3,10 +3,10 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal.validation +package dev.nucleusframework.nucleus.desktop.application.internal.validation -import io.github.kdroidfilter.nucleus.desktop.application.dsl.MacOSNotarizationSettings -import io.github.kdroidfilter.nucleus.desktop.application.internal.NucleusProperties +import dev.nucleusframework.nucleus.desktop.application.dsl.MacOSNotarizationSettings +import dev.nucleusframework.nucleus.desktop.application.internal.NucleusProperties internal sealed class NotarizationAuth { data class AppleId( diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/validation/ValidatedMacOSSigningSettings.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/validation/ValidatedMacOSSigningSettings.kt similarity index 91% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/validation/ValidatedMacOSSigningSettings.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/validation/ValidatedMacOSSigningSettings.kt index 3bcf8fffe..0adcd211b 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/validation/ValidatedMacOSSigningSettings.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/validation/ValidatedMacOSSigningSettings.kt @@ -3,12 +3,12 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal.validation +package dev.nucleusframework.nucleus.desktop.application.internal.validation -import io.github.kdroidfilter.nucleus.desktop.application.dsl.MacOSSigningSettings -import io.github.kdroidfilter.nucleus.desktop.application.internal.NucleusProperties -import io.github.kdroidfilter.nucleus.internal.utils.OS -import io.github.kdroidfilter.nucleus.internal.utils.currentOS +import dev.nucleusframework.nucleus.desktop.application.dsl.MacOSSigningSettings +import dev.nucleusframework.nucleus.desktop.application.internal.NucleusProperties +import dev.nucleusframework.nucleus.internal.utils.OS +import dev.nucleusframework.nucleus.internal.utils.currentOS import org.gradle.api.Project import org.gradle.api.provider.Provider import java.io.File diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/validation/validateBundleID.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/validation/validateBundleID.kt similarity index 93% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/validation/validateBundleID.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/validation/validateBundleID.kt index a342b1d7a..49fd095ac 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/validation/validateBundleID.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/validation/validateBundleID.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal.validation +package dev.nucleusframework.nucleus.desktop.application.internal.validation import org.gradle.api.provider.Provider diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/validation/validatePackageVersions.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/validation/validatePackageVersions.kt similarity index 93% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/validation/validatePackageVersions.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/validation/validatePackageVersions.kt index 23f053f05..e7064e63a 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/validation/validatePackageVersions.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/validation/validatePackageVersions.kt @@ -3,13 +3,15 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.internal.validation +@file:Suppress("NestedBlockDepth", "MagicNumber") -import io.github.kdroidfilter.nucleus.desktop.application.dsl.TargetFormat -import io.github.kdroidfilter.nucleus.desktop.application.internal.JvmApplicationContext -import io.github.kdroidfilter.nucleus.desktop.application.internal.packageBuildVersionFor -import io.github.kdroidfilter.nucleus.desktop.application.internal.packageVersionFor -import io.github.kdroidfilter.nucleus.internal.utils.OS +package dev.nucleusframework.nucleus.desktop.application.internal.validation + +import dev.nucleusframework.nucleus.desktop.application.dsl.TargetFormat +import dev.nucleusframework.nucleus.desktop.application.internal.JvmApplicationContext +import dev.nucleusframework.nucleus.desktop.application.internal.packageBuildVersionFor +import dev.nucleusframework.nucleus.desktop.application.internal.packageVersionFor +import dev.nucleusframework.nucleus.internal.utils.OS import org.gradle.api.GradleException internal fun JvmApplicationContext.validatePackageVersions() { diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractCheckNativeDistributionRuntime.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractCheckNativeDistributionRuntime.kt similarity index 82% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractCheckNativeDistributionRuntime.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractCheckNativeDistributionRuntime.kt index 1ee12dbf7..d30778fe1 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractCheckNativeDistributionRuntime.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractCheckNativeDistributionRuntime.kt @@ -3,23 +3,30 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.tasks - -import io.github.kdroidfilter.nucleus.desktop.application.internal.ExternalToolRunner -import io.github.kdroidfilter.nucleus.desktop.application.internal.JdkVersionProbe -import io.github.kdroidfilter.nucleus.desktop.application.internal.JvmRuntimeProperties -import io.github.kdroidfilter.nucleus.desktop.application.internal.NucleusProperties -import io.github.kdroidfilter.nucleus.desktop.tasks.AbstractNucleusTask -import io.github.kdroidfilter.nucleus.internal.utils.OS -import io.github.kdroidfilter.nucleus.internal.utils.currentOS -import io.github.kdroidfilter.nucleus.internal.utils.executableName -import io.github.kdroidfilter.nucleus.internal.utils.ioFile -import io.github.kdroidfilter.nucleus.internal.utils.notNullProperty +package dev.nucleusframework.nucleus.desktop.application.tasks + +import dev.nucleusframework.nucleus.desktop.application.internal.ExternalToolRunner +import dev.nucleusframework.nucleus.desktop.application.internal.JdkVersionProbe +import dev.nucleusframework.nucleus.desktop.application.internal.JvmRuntimeProperties +import dev.nucleusframework.nucleus.desktop.application.internal.NucleusProperties +import dev.nucleusframework.nucleus.desktop.tasks.AbstractNucleusTask +import dev.nucleusframework.nucleus.internal.utils.OS +import dev.nucleusframework.nucleus.internal.utils.currentOS +import dev.nucleusframework.nucleus.internal.utils.executableName +import dev.nucleusframework.nucleus.internal.utils.ioFile +import dev.nucleusframework.nucleus.internal.utils.notNullProperty import org.gradle.api.file.ConfigurableFileCollection import org.gradle.api.file.RegularFile import org.gradle.api.provider.Property import org.gradle.api.provider.Provider -import org.gradle.api.tasks.* +import org.gradle.api.tasks.CacheableTask +import org.gradle.api.tasks.Classpath +import org.gradle.api.tasks.Input +import org.gradle.api.tasks.InputDirectory +import org.gradle.api.tasks.OutputFile +import org.gradle.api.tasks.PathSensitive +import org.gradle.api.tasks.PathSensitivity +import org.gradle.api.tasks.TaskAction import java.io.ByteArrayInputStream import java.io.File import java.util.* diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractElectronBuilderPackageTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractElectronBuilderPackageTask.kt similarity index 95% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractElectronBuilderPackageTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractElectronBuilderPackageTask.kt index bf3d99970..54cacc5c7 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractElectronBuilderPackageTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractElectronBuilderPackageTask.kt @@ -3,37 +3,37 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.tasks - -import io.github.kdroidfilter.nucleus.desktop.application.dsl.CompressionLevel -import io.github.kdroidfilter.nucleus.desktop.application.dsl.JvmApplicationDistributions -import io.github.kdroidfilter.nucleus.desktop.application.dsl.MacOSSigningSettings -import io.github.kdroidfilter.nucleus.desktop.application.dsl.ReleaseChannel -import io.github.kdroidfilter.nucleus.desktop.application.dsl.TargetFormat -import io.github.kdroidfilter.nucleus.desktop.application.internal.UpdateYmlGenerator -import io.github.kdroidfilter.nucleus.desktop.application.internal.MacSigner -import io.github.kdroidfilter.nucleus.desktop.application.internal.MacSignerImpl -import io.github.kdroidfilter.nucleus.desktop.application.internal.NoCertificateSigner -import io.github.kdroidfilter.nucleus.desktop.application.internal.WindowsKitsLocator -import io.github.kdroidfilter.nucleus.desktop.application.internal.electronbuilder.ElectronBuilderConfigGenerator -import io.github.kdroidfilter.nucleus.desktop.application.internal.electronbuilder.ElectronBuilderInvocation -import io.github.kdroidfilter.nucleus.desktop.application.internal.electronbuilder.ElectronBuilderToolManager -import io.github.kdroidfilter.nucleus.desktop.application.internal.electronbuilder.NodeJsDetector -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.isDylibPath -import io.github.kdroidfilter.nucleus.desktop.application.internal.MACOS_DMG_TITLE_BAR_HEIGHT -import io.github.kdroidfilter.nucleus.desktop.application.internal.padDmgBackgroundForTitleBar -import io.github.kdroidfilter.nucleus.desktop.application.internal.readImageDimensions -import io.github.kdroidfilter.nucleus.desktop.application.internal.updateExecutableTypeInAppImage -import io.github.kdroidfilter.nucleus.desktop.application.internal.validation.ValidatedMacOSSigningSettings -import io.github.kdroidfilter.nucleus.desktop.application.internal.validation.validate -import io.github.kdroidfilter.nucleus.desktop.tasks.AbstractNucleusTask -import io.github.kdroidfilter.nucleus.internal.utils.Arch -import io.github.kdroidfilter.nucleus.internal.utils.OS -import io.github.kdroidfilter.nucleus.internal.utils.currentArch -import io.github.kdroidfilter.nucleus.internal.utils.currentOS -import io.github.kdroidfilter.nucleus.internal.utils.ioFile -import io.github.kdroidfilter.nucleus.internal.utils.notNullProperty -import io.github.kdroidfilter.nucleus.internal.utils.nullableProperty +package dev.nucleusframework.nucleus.desktop.application.tasks + +import dev.nucleusframework.nucleus.desktop.application.dsl.CompressionLevel +import dev.nucleusframework.nucleus.desktop.application.dsl.JvmApplicationDistributions +import dev.nucleusframework.nucleus.desktop.application.dsl.MacOSSigningSettings +import dev.nucleusframework.nucleus.desktop.application.dsl.ReleaseChannel +import dev.nucleusframework.nucleus.desktop.application.dsl.TargetFormat +import dev.nucleusframework.nucleus.desktop.application.internal.UpdateYmlGenerator +import dev.nucleusframework.nucleus.desktop.application.internal.MacSigner +import dev.nucleusframework.nucleus.desktop.application.internal.MacSignerImpl +import dev.nucleusframework.nucleus.desktop.application.internal.NoCertificateSigner +import dev.nucleusframework.nucleus.desktop.application.internal.WindowsKitsLocator +import dev.nucleusframework.nucleus.desktop.application.internal.electronbuilder.ElectronBuilderConfigGenerator +import dev.nucleusframework.nucleus.desktop.application.internal.electronbuilder.ElectronBuilderInvocation +import dev.nucleusframework.nucleus.desktop.application.internal.electronbuilder.ElectronBuilderToolManager +import dev.nucleusframework.nucleus.desktop.application.internal.electronbuilder.NodeJsDetector +import dev.nucleusframework.nucleus.desktop.application.internal.files.isDylibPath +import dev.nucleusframework.nucleus.desktop.application.internal.MACOS_DMG_TITLE_BAR_HEIGHT +import dev.nucleusframework.nucleus.desktop.application.internal.padDmgBackgroundForTitleBar +import dev.nucleusframework.nucleus.desktop.application.internal.readImageDimensions +import dev.nucleusframework.nucleus.desktop.application.internal.updateExecutableTypeInAppImage +import dev.nucleusframework.nucleus.desktop.application.internal.validation.ValidatedMacOSSigningSettings +import dev.nucleusframework.nucleus.desktop.application.internal.validation.validate +import dev.nucleusframework.nucleus.desktop.tasks.AbstractNucleusTask +import dev.nucleusframework.nucleus.internal.utils.Arch +import dev.nucleusframework.nucleus.internal.utils.OS +import dev.nucleusframework.nucleus.internal.utils.currentArch +import dev.nucleusframework.nucleus.internal.utils.currentOS +import dev.nucleusframework.nucleus.internal.utils.ioFile +import dev.nucleusframework.nucleus.internal.utils.notNullProperty +import dev.nucleusframework.nucleus.internal.utils.nullableProperty import net.coobird.thumbnailator.Thumbnails import net.coobird.thumbnailator.filters.Canvas import net.coobird.thumbnailator.geometry.Positions @@ -1453,12 +1453,12 @@ private fun killProcessesIn( try { val rt = Runtime.getRuntime() rt.exec(arrayOf("taskkill", "/F", "/IM", exe.name)).waitFor() - } catch (_: Exception) { + } catch (@Suppress("TooGenericExceptionCaught") _: Exception) { // ignore — process may not be running } } Thread.sleep(DELETE_RETRY_DELAY_MS) - } catch (e: Exception) { + } catch (@Suppress("TooGenericExceptionCaught") e: Exception) { logger.warn("Failed to kill locked processes: ${e.message}") } } diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractExtractNativeLibsTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractExtractNativeLibsTask.kt similarity index 94% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractExtractNativeLibsTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractExtractNativeLibsTask.kt index 6e0661908..e5a336d44 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractExtractNativeLibsTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractExtractNativeLibsTask.kt @@ -3,12 +3,12 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.tasks +package dev.nucleusframework.nucleus.desktop.application.tasks -import io.github.kdroidfilter.nucleus.desktop.application.internal.NativeLibArchDetector -import io.github.kdroidfilter.nucleus.desktop.application.internal.NativeLibArchDetector.NativeArch -import io.github.kdroidfilter.nucleus.desktop.application.internal.NativeLibArchDetector.NativeOs -import io.github.kdroidfilter.nucleus.desktop.tasks.AbstractNucleusTask +import dev.nucleusframework.nucleus.desktop.application.internal.NativeLibArchDetector +import dev.nucleusframework.nucleus.desktop.application.internal.NativeLibArchDetector.NativeArch +import dev.nucleusframework.nucleus.desktop.application.internal.NativeLibArchDetector.NativeOs +import dev.nucleusframework.nucleus.desktop.tasks.AbstractNucleusTask import org.gradle.api.file.ConfigurableFileCollection import org.gradle.api.file.DirectoryProperty import org.gradle.api.provider.Property diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractGenerateAotCacheTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractGenerateAotCacheTask.kt similarity index 96% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractGenerateAotCacheTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractGenerateAotCacheTask.kt index 39374ddae..dc0847083 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractGenerateAotCacheTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractGenerateAotCacheTask.kt @@ -3,11 +3,11 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.tasks +package dev.nucleusframework.nucleus.desktop.application.tasks -import io.github.kdroidfilter.nucleus.desktop.application.internal.JvmRuntimeProperties -import io.github.kdroidfilter.nucleus.desktop.tasks.AbstractNucleusTask -import io.github.kdroidfilter.nucleus.internal.utils.notNullProperty +import dev.nucleusframework.nucleus.desktop.application.internal.JvmRuntimeProperties +import dev.nucleusframework.nucleus.desktop.tasks.AbstractNucleusTask +import dev.nucleusframework.nucleus.internal.utils.notNullProperty import org.gradle.api.GradleException import org.gradle.api.file.DirectoryProperty import org.gradle.api.file.RegularFileProperty @@ -26,6 +26,9 @@ import java.io.File private const val AOT_CACHE_FILENAME = "app.aot" private const val MIN_AOT_JDK_VERSION = 25 private const val DEFAULT_SAFETY_TIMEOUT_SECONDS = 300L +private const val XVFB_START_UP_DELAY_MS = 1000L +private const val PROCESS_POLL_INTERVAL_MS = 500L +private const val MS_PER_SECOND = 1000L /** * Generates a JDK 25+ AOT cache for a Compose Desktop distributable. @@ -113,7 +116,7 @@ abstract class AbstractGenerateAotCacheTask : AbstractNucleusTask() { baseDir .listFiles() ?.filter { it.isDirectory && it.name != ".DS_Store" } - ?: emptyList() + .orEmpty() return when { children.isEmpty() -> throw GradleException("Distributable app directory not found under $baseDir") children.size == 1 -> children.single() @@ -346,6 +349,7 @@ abstract class AbstractGenerateAotCacheTask : AbstractNucleusTask() { val args = mutableListOf(javaExe) args += "-XX:AOTCacheOutput=${aotCacheFile.absolutePath}" args += "-Dnucleus.aot.mode=training" + args += "--enable-native-access=ALL-UNNAMED" args += "-cp" args += classpath args += javaOptions @@ -368,16 +372,16 @@ abstract class AbstractGenerateAotCacheTask : AbstractNucleusTask() { ProcessBuilder("Xvfb", display, "-screen", "0", "1280x1024x24") .redirectErrorStream(true) .start() - Thread.sleep(1000) + Thread.sleep(XVFB_START_UP_DELAY_MS) processBuilder.environment()["DISPLAY"] = display logger.lifecycle("[aotCache] Started Xvfb on $display") } val process = processBuilder.start() - val deadline = System.currentTimeMillis() + safetyTimeoutSeconds.get() * 1000 + val deadline = System.currentTimeMillis() + safetyTimeoutSeconds.get() * MS_PER_SECOND while (process.isAlive && System.currentTimeMillis() < deadline) { - Thread.sleep(500) + Thread.sleep(PROCESS_POLL_INTERVAL_MS) } if (process.isAlive) { logger.warn("[aotCache] App did not self-terminate within safety timeout, forcing kill") diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractGenerateAppPropertiesTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractGenerateAppPropertiesTask.kt similarity index 96% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractGenerateAppPropertiesTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractGenerateAppPropertiesTask.kt index eff1069c9..8fe9ad04e 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractGenerateAppPropertiesTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractGenerateAppPropertiesTask.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.desktop.application.tasks +package dev.nucleusframework.nucleus.desktop.application.tasks import org.gradle.api.DefaultTask import org.gradle.api.file.DirectoryProperty diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractJLinkTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractJLinkTask.kt similarity index 82% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractJLinkTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractJLinkTask.kt index 040467e3d..c3622e300 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractJLinkTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractJLinkTask.kt @@ -3,14 +3,14 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.tasks +package dev.nucleusframework.nucleus.desktop.application.tasks -import io.github.kdroidfilter.nucleus.desktop.application.internal.JvmRuntimeProperties -import io.github.kdroidfilter.nucleus.desktop.application.internal.RuntimeCompressionLevel -import io.github.kdroidfilter.nucleus.desktop.application.internal.cliArg -import io.github.kdroidfilter.nucleus.internal.utils.ioFile -import io.github.kdroidfilter.nucleus.internal.utils.notNullProperty -import io.github.kdroidfilter.nucleus.internal.utils.nullableProperty +import dev.nucleusframework.nucleus.desktop.application.internal.JvmRuntimeProperties +import dev.nucleusframework.nucleus.desktop.application.internal.RuntimeCompressionLevel +import dev.nucleusframework.nucleus.desktop.application.internal.cliArg +import dev.nucleusframework.nucleus.internal.utils.ioFile +import dev.nucleusframework.nucleus.internal.utils.notNullProperty +import dev.nucleusframework.nucleus.internal.utils.nullableProperty import org.gradle.api.file.RegularFileProperty import org.gradle.api.provider.ListProperty import org.gradle.api.provider.Property diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractJPackageTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractJPackageTask.kt similarity index 88% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractJPackageTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractJPackageTask.kt index c0881d743..898d71ec0 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractJPackageTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractJPackageTask.kt @@ -3,52 +3,52 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.tasks - -import io.github.kdroidfilter.nucleus.desktop.application.dsl.FileAssociation -import io.github.kdroidfilter.nucleus.desktop.application.dsl.LaunchAgentDefinition -import io.github.kdroidfilter.nucleus.desktop.application.dsl.MacOSSigningSettings -import io.github.kdroidfilter.nucleus.desktop.application.internal.LaunchAgentPlistGenerator -import io.github.kdroidfilter.nucleus.desktop.application.dsl.TargetFormat -import io.github.kdroidfilter.nucleus.desktop.application.dsl.UrlProtocol -import io.github.kdroidfilter.nucleus.desktop.application.internal.APP_RESOURCES_DIR -import io.github.kdroidfilter.nucleus.desktop.application.internal.InfoPlistBuilder -import io.github.kdroidfilter.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.InfoPlistListValue -import io.github.kdroidfilter.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.InfoPlistMapValue -import io.github.kdroidfilter.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.InfoPlistStringValue -import io.github.kdroidfilter.nucleus.desktop.application.internal.JvmRuntimeProperties -import io.github.kdroidfilter.nucleus.desktop.application.internal.MacAssetsTool -import io.github.kdroidfilter.nucleus.desktop.application.internal.MacSigner -import io.github.kdroidfilter.nucleus.desktop.application.internal.MacSignerImpl -import io.github.kdroidfilter.nucleus.desktop.application.internal.NoCertificateSigner -import io.github.kdroidfilter.nucleus.desktop.application.internal.PlistKeys -import io.github.kdroidfilter.nucleus.desktop.application.internal.SKIKO_LIBRARY_PATH -import io.github.kdroidfilter.nucleus.desktop.application.internal.cliArg -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.FileCopyingProcessor -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.MacJarSignFileCopyingProcessor -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.SimpleFileCopyingProcessor -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.copyTo -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.copyZipEntry -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.findOutputFileOrDir -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.isDylibPath -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.isJarFile -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.mangledName -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.normalizedPath -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.transformJar -import io.github.kdroidfilter.nucleus.desktop.application.internal.javaOption -import io.github.kdroidfilter.nucleus.desktop.application.internal.validation.validate -import io.github.kdroidfilter.nucleus.internal.utils.OS -import io.github.kdroidfilter.nucleus.internal.utils.clearDirs -import io.github.kdroidfilter.nucleus.internal.utils.currentArch -import io.github.kdroidfilter.nucleus.internal.utils.currentOS -import io.github.kdroidfilter.nucleus.internal.utils.currentTarget -import io.github.kdroidfilter.nucleus.internal.utils.delete -import io.github.kdroidfilter.nucleus.internal.utils.ioFile -import io.github.kdroidfilter.nucleus.internal.utils.ioFileOrNull -import io.github.kdroidfilter.nucleus.internal.utils.mkdirs -import io.github.kdroidfilter.nucleus.internal.utils.notNullProperty -import io.github.kdroidfilter.nucleus.internal.utils.nullableProperty -import io.github.kdroidfilter.nucleus.internal.utils.stacktraceToString +package dev.nucleusframework.nucleus.desktop.application.tasks + +import dev.nucleusframework.nucleus.desktop.application.dsl.FileAssociation +import dev.nucleusframework.nucleus.desktop.application.dsl.LaunchAgentDefinition +import dev.nucleusframework.nucleus.desktop.application.dsl.MacOSSigningSettings +import dev.nucleusframework.nucleus.desktop.application.internal.LaunchAgentPlistGenerator +import dev.nucleusframework.nucleus.desktop.application.dsl.TargetFormat +import dev.nucleusframework.nucleus.desktop.application.dsl.UrlProtocol +import dev.nucleusframework.nucleus.desktop.application.internal.APP_RESOURCES_DIR +import dev.nucleusframework.nucleus.desktop.application.internal.InfoPlistBuilder +import dev.nucleusframework.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.InfoPlistListValue +import dev.nucleusframework.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.InfoPlistMapValue +import dev.nucleusframework.nucleus.desktop.application.internal.InfoPlistBuilder.InfoPlistValue.InfoPlistStringValue +import dev.nucleusframework.nucleus.desktop.application.internal.JvmRuntimeProperties +import dev.nucleusframework.nucleus.desktop.application.internal.MacAssetsTool +import dev.nucleusframework.nucleus.desktop.application.internal.MacSigner +import dev.nucleusframework.nucleus.desktop.application.internal.MacSignerImpl +import dev.nucleusframework.nucleus.desktop.application.internal.NoCertificateSigner +import dev.nucleusframework.nucleus.desktop.application.internal.PlistKeys +import dev.nucleusframework.nucleus.desktop.application.internal.SKIKO_LIBRARY_PATH +import dev.nucleusframework.nucleus.desktop.application.internal.cliArg +import dev.nucleusframework.nucleus.desktop.application.internal.files.FileCopyingProcessor +import dev.nucleusframework.nucleus.desktop.application.internal.files.MacJarSignFileCopyingProcessor +import dev.nucleusframework.nucleus.desktop.application.internal.files.SimpleFileCopyingProcessor +import dev.nucleusframework.nucleus.desktop.application.internal.files.copyTo +import dev.nucleusframework.nucleus.desktop.application.internal.files.copyZipEntry +import dev.nucleusframework.nucleus.desktop.application.internal.files.findOutputFileOrDir +import dev.nucleusframework.nucleus.desktop.application.internal.files.isDylibPath +import dev.nucleusframework.nucleus.desktop.application.internal.files.isJarFile +import dev.nucleusframework.nucleus.desktop.application.internal.files.mangledName +import dev.nucleusframework.nucleus.desktop.application.internal.files.normalizedPath +import dev.nucleusframework.nucleus.desktop.application.internal.files.transformJar +import dev.nucleusframework.nucleus.desktop.application.internal.javaOption +import dev.nucleusframework.nucleus.desktop.application.internal.validation.validate +import dev.nucleusframework.nucleus.internal.utils.OS +import dev.nucleusframework.nucleus.internal.utils.clearDirs +import dev.nucleusframework.nucleus.internal.utils.currentArch +import dev.nucleusframework.nucleus.internal.utils.currentOS +import dev.nucleusframework.nucleus.internal.utils.currentTarget +import dev.nucleusframework.nucleus.internal.utils.delete +import dev.nucleusframework.nucleus.internal.utils.ioFile +import dev.nucleusframework.nucleus.internal.utils.ioFileOrNull +import dev.nucleusframework.nucleus.internal.utils.mkdirs +import dev.nucleusframework.nucleus.internal.utils.notNullProperty +import dev.nucleusframework.nucleus.internal.utils.nullableProperty +import dev.nucleusframework.nucleus.internal.utils.stacktraceToString import org.gradle.api.file.ConfigurableFileCollection import org.gradle.api.file.Directory import org.gradle.api.file.DirectoryProperty @@ -97,7 +97,7 @@ import kotlin.io.path.isRegularFile * by electron-builder via [AbstractElectronBuilderPackageTask]. */ @DisableCachingByDefault(because = "Depends on external jpackage tool") -@Suppress("UnnecessaryAbstractClass") +@Suppress("UnnecessaryAbstractClass", "TooGenericExceptionCaught", "CyclomaticComplexMethod", "NestedBlockDepth", "LoopWithTooManyJumpStatements", "MaxLineLength") abstract class AbstractJPackageTask @Inject constructor( @@ -503,13 +503,24 @@ abstract class AbstractJPackageTask fun File.isMainUberJar() = packageFromUberJar.get() && name == launcherMainJar.ioFile.name val outdatedLibs = invalidateMappedLibs(inputChanges) + val destResourcesDir = packagedResourcesDir.ioFile + for (sourceFile in outdatedLibs) { assert(sourceFile.exists()) { "Lib file does not exist: $sourceFile" } libsMapping[sourceFile] = if (isSkikoForCurrentOS(sourceFile) || sourceFile.isMainUberJar()) { val unpackedFiles = unpackSkikoForCurrentOS(sourceFile, skikoDir.ioFile, fileOperations) - unpackedFiles.map { copyFileToLibsDir(it) } + unpackedFiles.map { file -> + if (sandboxingEnabled.get() && currentOS != OS.MacOS && (file.extension == "dll" || file.extension == "so" || file.name == "icudtl.dat")) { + val target = destResourcesDir.resolve(file.name) + fileOperations.mkdirs(destResourcesDir) + file.copyTo(target, overwrite = true) + target + } else { + copyFileToLibsDir(file) + } + } } else { listOf(copyFileToLibsDir(sourceFile)) } @@ -517,7 +528,6 @@ abstract class AbstractJPackageTask // todo: incremental copy fileOperations.clearDirs(packagedResourcesDir) - val destResourcesDir = packagedResourcesDir.ioFile val appResourcesDir = appResourcesDir.ioFileOrNull if (appResourcesDir != null) { for (file in appResourcesDir.walk()) { @@ -531,16 +541,6 @@ abstract class AbstractJPackageTask } } - // When sandboxing is enabled, Skiko's native DLL is in resources/ but its companion - // data file (icudtl.dat) is extracted by unpackSkikoForCurrentOS to libsDir. - // Copy it next to the DLL so SkLoadICU can find it. - if (sandboxingEnabled.get()) { - val icudtl = libsDir.resolve("icudtl.dat") - if (icudtl.exists()) { - icudtl.copyTo(destResourcesDir.resolve("icudtl.dat"), overwrite = true) - } - } - fileOperations.clearDirs(jpackageResources) if (currentOS == OS.MacOS) { val systemVersion = macMinimumSystemVersion.orNull ?: "10.13" @@ -615,6 +615,7 @@ abstract class AbstractJPackageTask val appEntitlementsFile = macEntitlementsFile.ioFileOrNull val runtimeEntitlementsFile = macRuntimeEntitlementsFile.ioFileOrNull + @Suppress("UnsafeCallOnNullableType") val macSigner = macSigner!! // Resign the runtime completely (and also the app dir only) // Sign all libs and executables in runtime @@ -827,6 +828,10 @@ abstract class AbstractJPackageTask // Serializable is only needed to avoid breaking configuration cache: // https://docs.gradle.org/current/userguide/configuration_cache.html#config_cache:requirements private class FilesMapping : Serializable { + companion object { + private const val serialVersionUID: Long = 0L + } + private var mapping = HashMap>() operator fun get(key: File): List? = mapping[key] diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractJvmToolOperationTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractJvmToolOperationTask.kt similarity index 78% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractJvmToolOperationTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractJvmToolOperationTask.kt index 73df37358..6109c4e9d 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractJvmToolOperationTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractJvmToolOperationTask.kt @@ -3,17 +3,26 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.tasks - -import io.github.kdroidfilter.nucleus.desktop.application.internal.NucleusProperties -import io.github.kdroidfilter.nucleus.desktop.tasks.AbstractNucleusTask -import io.github.kdroidfilter.nucleus.internal.utils.* +package dev.nucleusframework.nucleus.desktop.application.tasks + +import dev.nucleusframework.nucleus.desktop.application.internal.NucleusProperties +import dev.nucleusframework.nucleus.desktop.tasks.AbstractNucleusTask +import dev.nucleusframework.nucleus.internal.utils.clearDirs +import dev.nucleusframework.nucleus.internal.utils.delete +import dev.nucleusframework.nucleus.internal.utils.ioFile +import dev.nucleusframework.nucleus.internal.utils.jvmToolFile +import dev.nucleusframework.nucleus.internal.utils.notNullProperty import org.gradle.api.file.Directory import org.gradle.api.file.DirectoryProperty import org.gradle.api.provider.ListProperty import org.gradle.api.provider.Property import org.gradle.api.provider.Provider -import org.gradle.api.tasks.* +import org.gradle.api.tasks.Input +import org.gradle.api.tasks.Internal +import org.gradle.api.tasks.LocalState +import org.gradle.api.tasks.Optional +import org.gradle.api.tasks.OutputDirectory +import org.gradle.api.tasks.TaskAction import org.gradle.process.ExecResult import org.gradle.work.DisableCachingByDefault import org.gradle.work.InputChanges diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractNativeMacApplicationPackageAppDirTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractNativeMacApplicationPackageAppDirTask.kt similarity index 90% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractNativeMacApplicationPackageAppDirTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractNativeMacApplicationPackageAppDirTask.kt index ba87ae782..d3f3721db 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractNativeMacApplicationPackageAppDirTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractNativeMacApplicationPackageAppDirTask.kt @@ -3,14 +3,14 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.tasks - -import io.github.kdroidfilter.nucleus.desktop.application.internal.InfoPlistBuilder -import io.github.kdroidfilter.nucleus.desktop.application.internal.MacAssetsTool -import io.github.kdroidfilter.nucleus.desktop.application.internal.PlistKeys -import io.github.kdroidfilter.nucleus.internal.utils.ioFile -import io.github.kdroidfilter.nucleus.internal.utils.notNullProperty -import io.github.kdroidfilter.nucleus.internal.utils.nullableProperty +package dev.nucleusframework.nucleus.desktop.application.tasks + +import dev.nucleusframework.nucleus.desktop.application.internal.InfoPlistBuilder +import dev.nucleusframework.nucleus.desktop.application.internal.MacAssetsTool +import dev.nucleusframework.nucleus.desktop.application.internal.PlistKeys +import dev.nucleusframework.nucleus.internal.utils.ioFile +import dev.nucleusframework.nucleus.internal.utils.notNullProperty +import dev.nucleusframework.nucleus.internal.utils.nullableProperty import org.gradle.api.file.ConfigurableFileCollection import org.gradle.api.file.DirectoryProperty import org.gradle.api.file.RegularFileProperty @@ -82,6 +82,7 @@ abstract class AbstractNativeMacApplicationPackageAppDirTask : AbstractNativeMac appExecutableFile.setExecutable(true) macLayeredIcons.orNull?.let { + @Suppress("TooGenericExceptionCaught") try { macAssetsTool.compileAssets( iconDir = it.asFile, diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractNativeMacApplicationPackageDmgTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractNativeMacApplicationPackageDmgTask.kt similarity index 95% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractNativeMacApplicationPackageDmgTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractNativeMacApplicationPackageDmgTask.kt index 0f94179e5..c1310203d 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractNativeMacApplicationPackageDmgTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractNativeMacApplicationPackageDmgTask.kt @@ -3,14 +3,14 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.tasks - -import io.github.kdroidfilter.nucleus.desktop.application.dsl.DmgContentEntry -import io.github.kdroidfilter.nucleus.desktop.application.dsl.DmgFormat -import io.github.kdroidfilter.nucleus.desktop.application.internal.MACOS_DMG_TITLE_BAR_HEIGHT -import io.github.kdroidfilter.nucleus.desktop.application.internal.readImageDimensions -import io.github.kdroidfilter.nucleus.internal.utils.ioFile -import io.github.kdroidfilter.nucleus.internal.utils.notNullProperty +package dev.nucleusframework.nucleus.desktop.application.tasks + +import dev.nucleusframework.nucleus.desktop.application.dsl.DmgContentEntry +import dev.nucleusframework.nucleus.desktop.application.dsl.DmgFormat +import dev.nucleusframework.nucleus.desktop.application.internal.MACOS_DMG_TITLE_BAR_HEIGHT +import dev.nucleusframework.nucleus.desktop.application.internal.readImageDimensions +import dev.nucleusframework.nucleus.internal.utils.ioFile +import dev.nucleusframework.nucleus.internal.utils.notNullProperty import org.gradle.api.file.DirectoryProperty import org.gradle.api.file.RegularFileProperty import org.gradle.api.provider.ListProperty @@ -25,6 +25,7 @@ import org.gradle.work.DisableCachingByDefault import java.io.File @DisableCachingByDefault(because = "Depends on external macOS native tools") +@Suppress("LoopWithTooManyJumpStatements", "MagicNumber") abstract class AbstractNativeMacApplicationPackageDmgTask : AbstractNativeMacApplicationPackageTask() { companion object { private const val DEFAULT_ICON_SIZE = 72 @@ -35,6 +36,7 @@ abstract class AbstractNativeMacApplicationPackageDmgTask : AbstractNativeMacApp private const val CSS_SHORT_HEX_LENGTH = 3 private const val CSS_FULL_HEX_LENGTH = 6 private const val APPLE_SCRIPT_RGB_SCALE = 257 + private const val HDIUTIL_ATTACH_DELAY_MS = 3000L } @get:InputFile @@ -160,7 +162,7 @@ abstract class AbstractNativeMacApplicationPackageDmgTask : AbstractNativeMacApp "-noautoopen", imageFile.absolutePath, ) - Thread.sleep(3000) + Thread.sleep(HDIUTIL_ATTACH_DELAY_MS) var device: String? = null var volume: String? = null diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractNativeMacApplicationPackageTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractNativeMacApplicationPackageTask.kt similarity index 74% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractNativeMacApplicationPackageTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractNativeMacApplicationPackageTask.kt index 0d3de33e4..1494aaab1 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractNativeMacApplicationPackageTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractNativeMacApplicationPackageTask.kt @@ -3,15 +3,21 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.tasks +package dev.nucleusframework.nucleus.desktop.application.tasks -import io.github.kdroidfilter.nucleus.desktop.tasks.AbstractNucleusTask -import io.github.kdroidfilter.nucleus.internal.utils.* +import dev.nucleusframework.nucleus.desktop.tasks.AbstractNucleusTask +import dev.nucleusframework.nucleus.internal.utils.clearDirs +import dev.nucleusframework.nucleus.internal.utils.ioFile +import dev.nucleusframework.nucleus.internal.utils.notNullProperty import org.gradle.api.file.Directory import org.gradle.api.file.DirectoryProperty import org.gradle.api.provider.Property import org.gradle.api.provider.Provider -import org.gradle.api.tasks.* +import org.gradle.api.tasks.Input +import org.gradle.api.tasks.Internal +import org.gradle.api.tasks.LocalState +import org.gradle.api.tasks.OutputDirectory +import org.gradle.api.tasks.TaskAction import org.gradle.work.DisableCachingByDefault import java.io.File diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractNotarizationTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractNotarizationTask.kt similarity index 87% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractNotarizationTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractNotarizationTask.kt index 21c41f60c..ca992bc51 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractNotarizationTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractNotarizationTask.kt @@ -3,20 +3,20 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.tasks +package dev.nucleusframework.nucleus.desktop.application.tasks -import io.github.kdroidfilter.nucleus.desktop.application.dsl.MacOSNotarizationSettings -import io.github.kdroidfilter.nucleus.desktop.application.dsl.TargetFormat -import io.github.kdroidfilter.nucleus.desktop.application.internal.NOTARIZATION_REQUEST_INFO_FILE_NAME -import io.github.kdroidfilter.nucleus.desktop.application.internal.NotarizationRequestInfo -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.checkExistingFile -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.findOutputFileOrDir -import io.github.kdroidfilter.nucleus.desktop.application.internal.validation.ValidatedMacOSNotarizationSettings -import io.github.kdroidfilter.nucleus.desktop.application.internal.validation.toNotaryToolArgs -import io.github.kdroidfilter.nucleus.desktop.application.internal.validation.validate -import io.github.kdroidfilter.nucleus.desktop.tasks.AbstractNucleusTask -import io.github.kdroidfilter.nucleus.internal.utils.MacUtils -import io.github.kdroidfilter.nucleus.internal.utils.ioFile +import dev.nucleusframework.nucleus.desktop.application.dsl.MacOSNotarizationSettings +import dev.nucleusframework.nucleus.desktop.application.dsl.TargetFormat +import dev.nucleusframework.nucleus.desktop.application.internal.NOTARIZATION_REQUEST_INFO_FILE_NAME +import dev.nucleusframework.nucleus.desktop.application.internal.NotarizationRequestInfo +import dev.nucleusframework.nucleus.desktop.application.internal.files.checkExistingFile +import dev.nucleusframework.nucleus.desktop.application.internal.files.findOutputFileOrDir +import dev.nucleusframework.nucleus.desktop.application.internal.validation.ValidatedMacOSNotarizationSettings +import dev.nucleusframework.nucleus.desktop.application.internal.validation.toNotaryToolArgs +import dev.nucleusframework.nucleus.desktop.application.internal.validation.validate +import dev.nucleusframework.nucleus.desktop.tasks.AbstractNucleusTask +import dev.nucleusframework.nucleus.internal.utils.MacUtils +import dev.nucleusframework.nucleus.internal.utils.ioFile import org.gradle.api.file.DirectoryProperty import org.gradle.api.tasks.Input import org.gradle.api.tasks.InputDirectory @@ -90,9 +90,9 @@ abstract class AbstractNotarizationTask }, ) - if (submissionId != null) { - logger.lifecycle("Notarization submission ID: $submissionId (file: ${packageFile.name})") - saveNotarizationRequestInfo(submissionId!!) + submissionId?.let { id -> + logger.lifecycle("Notarization submission ID: $id (file: ${packageFile.name})") + saveNotarizationRequestInfo(id) } if (result.exitValue != 0 || stdout.contains("status: Invalid")) { @@ -238,7 +238,8 @@ abstract class AbstractNotarizationTask return lines.joinToString("\n") } - private fun isUrlEntry(trimmed: String): Boolean = trimmed.startsWith("- url:") || trimmed.startsWith("-url:") + private fun isUrlEntry(trimmed: String): Boolean = + trimmed.startsWith("- url:") || trimmed.startsWith("-url:") private fun extractUrl(trimmed: String): String = trimmed diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractPatchCaCertificatesTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractPatchCaCertificatesTask.kt similarity index 96% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractPatchCaCertificatesTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractPatchCaCertificatesTask.kt index 38926b4d2..0730478ba 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractPatchCaCertificatesTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractPatchCaCertificatesTask.kt @@ -3,10 +3,10 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.tasks +package dev.nucleusframework.nucleus.desktop.application.tasks -import io.github.kdroidfilter.nucleus.desktop.tasks.AbstractNucleusTask -import io.github.kdroidfilter.nucleus.internal.utils.notNullProperty +import dev.nucleusframework.nucleus.desktop.tasks.AbstractNucleusTask +import dev.nucleusframework.nucleus.internal.utils.notNullProperty import org.gradle.api.GradleException import org.gradle.api.file.ConfigurableFileCollection import org.gradle.api.file.DirectoryProperty diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractPatchMacJvmTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractPatchMacJvmTask.kt similarity index 96% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractPatchMacJvmTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractPatchMacJvmTask.kt index ff9172bbb..60dc6db90 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractPatchMacJvmTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractPatchMacJvmTask.kt @@ -3,9 +3,9 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.tasks +package dev.nucleusframework.nucleus.desktop.application.tasks -import io.github.kdroidfilter.nucleus.desktop.tasks.AbstractNucleusTask +import dev.nucleusframework.nucleus.desktop.tasks.AbstractNucleusTask import org.gradle.api.file.DirectoryProperty import org.gradle.api.file.RegularFile import org.gradle.api.provider.Property diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractProguardTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractProguardTask.kt similarity index 81% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractProguardTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractProguardTask.kt index f9307e650..5a5f0be0d 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractProguardTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractProguardTask.kt @@ -3,18 +3,37 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.tasks - -import io.github.kdroidfilter.nucleus.desktop.application.internal.* -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.mangledName -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.normalizedPath -import io.github.kdroidfilter.nucleus.desktop.tasks.AbstractNucleusTask -import io.github.kdroidfilter.nucleus.internal.utils.* -import org.gradle.api.file.* +package dev.nucleusframework.nucleus.desktop.application.tasks + +import dev.nucleusframework.nucleus.desktop.application.internal.ExternalToolRunner +import dev.nucleusframework.nucleus.desktop.application.internal.cliArg +import dev.nucleusframework.nucleus.desktop.application.internal.files.mangledName +import dev.nucleusframework.nucleus.desktop.application.internal.files.normalizedPath +import dev.nucleusframework.nucleus.desktop.tasks.AbstractNucleusTask +import dev.nucleusframework.nucleus.internal.utils.clearDirs +import dev.nucleusframework.nucleus.internal.utils.delete +import dev.nucleusframework.nucleus.internal.utils.ioFile +import dev.nucleusframework.nucleus.internal.utils.jvmToolFile +import dev.nucleusframework.nucleus.internal.utils.notNullProperty +import dev.nucleusframework.nucleus.internal.utils.nullableProperty +import org.gradle.api.file.ConfigurableFileCollection +import org.gradle.api.file.Directory +import org.gradle.api.file.DirectoryProperty +import org.gradle.api.file.RegularFile +import org.gradle.api.file.RegularFileProperty import org.gradle.api.provider.Property import org.gradle.api.provider.Provider -import org.gradle.api.tasks.* +import org.gradle.api.tasks.Classpath +import org.gradle.api.tasks.Input +import org.gradle.api.tasks.InputFile +import org.gradle.api.tasks.InputFiles +import org.gradle.api.tasks.Internal +import org.gradle.api.tasks.LocalState import org.gradle.api.tasks.Optional +import org.gradle.api.tasks.OutputDirectory +import org.gradle.api.tasks.PathSensitive +import org.gradle.api.tasks.PathSensitivity +import org.gradle.api.tasks.TaskAction import org.gradle.work.DisableCachingByDefault import java.io.File import java.io.Writer diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractRunAppXTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractRunAppXTask.kt similarity index 97% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractRunAppXTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractRunAppXTask.kt index abbadf065..cfe25a484 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractRunAppXTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractRunAppXTask.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.desktop.application.tasks +package dev.nucleusframework.nucleus.desktop.application.tasks -import io.github.kdroidfilter.nucleus.desktop.tasks.AbstractNucleusTask +import dev.nucleusframework.nucleus.desktop.tasks.AbstractNucleusTask import org.gradle.api.file.DirectoryProperty import org.gradle.api.provider.Property import org.gradle.api.tasks.Input diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractRunDistributableTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractRunDistributableTask.kt similarity index 80% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractRunDistributableTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractRunDistributableTask.kt index 8061cd72f..6d34c5170 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractRunDistributableTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractRunDistributableTask.kt @@ -3,13 +3,13 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.tasks +package dev.nucleusframework.nucleus.desktop.application.tasks -import io.github.kdroidfilter.nucleus.desktop.tasks.AbstractNucleusTask -import io.github.kdroidfilter.nucleus.internal.utils.OS -import io.github.kdroidfilter.nucleus.internal.utils.currentOS -import io.github.kdroidfilter.nucleus.internal.utils.executableName -import io.github.kdroidfilter.nucleus.internal.utils.ioFile +import dev.nucleusframework.nucleus.desktop.tasks.AbstractNucleusTask +import dev.nucleusframework.nucleus.internal.utils.OS +import dev.nucleusframework.nucleus.internal.utils.currentOS +import dev.nucleusframework.nucleus.internal.utils.executableName +import dev.nucleusframework.nucleus.internal.utils.ioFile import org.gradle.api.file.Directory import org.gradle.api.provider.Provider import org.gradle.api.tasks.Input @@ -46,10 +46,13 @@ abstract class AbstractRunDistributableTask .listFiles() // Sometimes ".DS_Store" files are created on macOS, so ignore them. ?.filterNot { it.name == ".DS_Store" } - if (files == null || files.isEmpty()) { + if (files.isNullOrEmpty()) { error("Could not find application image: $appImageRoot is empty!") } else if (files.size > 1) { - error("Could not find application image: $appImageRoot contains multiple children [${files.joinToString(", ")}]") + error( + "Could not find application image: $appImageRoot " + + "contains multiple children [${files.joinToString(", ")}]", + ) } else { files.single() } diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractStripNativeLibsFromJarsTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractStripNativeLibsFromJarsTask.kt similarity index 94% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractStripNativeLibsFromJarsTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractStripNativeLibsFromJarsTask.kt index 0077c7d53..58e9ae7be 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractStripNativeLibsFromJarsTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractStripNativeLibsFromJarsTask.kt @@ -3,11 +3,11 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.tasks +package dev.nucleusframework.nucleus.desktop.application.tasks -import io.github.kdroidfilter.nucleus.desktop.application.internal.NativeLibArchDetector -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.mangledName -import io.github.kdroidfilter.nucleus.desktop.tasks.AbstractNucleusTask +import dev.nucleusframework.nucleus.desktop.application.internal.NativeLibArchDetector +import dev.nucleusframework.nucleus.desktop.application.internal.files.mangledName +import dev.nucleusframework.nucleus.desktop.tasks.AbstractNucleusTask import org.gradle.api.file.ConfigurableFileCollection import org.gradle.api.file.DirectoryProperty import org.gradle.api.file.RegularFile diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractSuggestModulesTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractSuggestModulesTask.kt similarity index 73% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractSuggestModulesTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractSuggestModulesTask.kt index 5d9c239e9..784247d6d 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/application/tasks/AbstractSuggestModulesTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/application/tasks/AbstractSuggestModulesTask.kt @@ -3,21 +3,32 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.application.tasks +package dev.nucleusframework.nucleus.desktop.application.tasks -import io.github.kdroidfilter.nucleus.desktop.application.dsl.DEFAULT_RUNTIME_MODULES -import io.github.kdroidfilter.nucleus.desktop.application.internal.ExternalToolRunner -import io.github.kdroidfilter.nucleus.desktop.application.internal.NucleusProperties -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.normalizedPath -import io.github.kdroidfilter.nucleus.desktop.tasks.AbstractNucleusTask -import io.github.kdroidfilter.nucleus.internal.utils.* +import dev.nucleusframework.nucleus.desktop.application.dsl.DEFAULT_RUNTIME_MODULES +import dev.nucleusframework.nucleus.desktop.application.internal.ExternalToolRunner +import dev.nucleusframework.nucleus.desktop.application.internal.NucleusProperties +import dev.nucleusframework.nucleus.desktop.application.internal.files.normalizedPath +import dev.nucleusframework.nucleus.desktop.tasks.AbstractNucleusTask +import dev.nucleusframework.nucleus.internal.utils.clearDirs +import dev.nucleusframework.nucleus.internal.utils.delete +import dev.nucleusframework.nucleus.internal.utils.ioFile +import dev.nucleusframework.nucleus.internal.utils.jvmToolFile +import dev.nucleusframework.nucleus.internal.utils.notNullProperty import org.gradle.api.file.ConfigurableFileCollection import org.gradle.api.file.Directory import org.gradle.api.file.RegularFileProperty import org.gradle.api.provider.ListProperty import org.gradle.api.provider.Property import org.gradle.api.provider.Provider -import org.gradle.api.tasks.* +import org.gradle.api.tasks.Classpath +import org.gradle.api.tasks.Input +import org.gradle.api.tasks.InputFile +import org.gradle.api.tasks.InputFiles +import org.gradle.api.tasks.LocalState +import org.gradle.api.tasks.PathSensitive +import org.gradle.api.tasks.PathSensitivity +import org.gradle.api.tasks.TaskAction import org.gradle.work.DisableCachingByDefault @DisableCachingByDefault(because = "Depends on external jdeps tool") diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/tasks/AbstractJarsFlattenTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/tasks/AbstractJarsFlattenTask.kt similarity index 90% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/tasks/AbstractJarsFlattenTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/tasks/AbstractJarsFlattenTask.kt index fd56012b3..7ed33f5ac 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/tasks/AbstractJarsFlattenTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/tasks/AbstractJarsFlattenTask.kt @@ -3,12 +3,12 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.tasks +package dev.nucleusframework.nucleus.desktop.tasks -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.copyZipEntry -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.isJarFile -import io.github.kdroidfilter.nucleus.internal.utils.delete -import io.github.kdroidfilter.nucleus.internal.utils.ioFile +import dev.nucleusframework.nucleus.desktop.application.internal.files.copyZipEntry +import dev.nucleusframework.nucleus.desktop.application.internal.files.isJarFile +import dev.nucleusframework.nucleus.internal.utils.delete +import dev.nucleusframework.nucleus.internal.utils.ioFile import org.gradle.api.file.ConfigurableFileCollection import org.gradle.api.file.RegularFileProperty import org.gradle.api.tasks.Classpath @@ -108,7 +108,9 @@ abstract class AbstractJarsFlattenTask : AbstractNucleusTask() { } private fun isServiceFile(name: String): Boolean = - name.startsWith(SERVICES_PREFIX) && name.length > SERVICES_PREFIX.length && '/' !in name.substring(SERVICES_PREFIX.length) + name.startsWith(SERVICES_PREFIX) && + name.length > SERVICES_PREFIX.length && + '/' !in name.substring(SERVICES_PREFIX.length) private fun mergeServiceFile( name: String, diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/tasks/AbstractNucleusTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/tasks/AbstractNucleusTask.kt similarity index 86% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/tasks/AbstractNucleusTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/tasks/AbstractNucleusTask.kt index 1e71c0493..bc801ae43 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/tasks/AbstractNucleusTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/tasks/AbstractNucleusTask.kt @@ -3,11 +3,11 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.tasks +package dev.nucleusframework.nucleus.desktop.tasks -import io.github.kdroidfilter.nucleus.desktop.application.internal.ExternalToolRunner -import io.github.kdroidfilter.nucleus.desktop.application.internal.NucleusProperties -import io.github.kdroidfilter.nucleus.internal.utils.notNullProperty +import dev.nucleusframework.nucleus.desktop.application.internal.ExternalToolRunner +import dev.nucleusframework.nucleus.desktop.application.internal.NucleusProperties +import dev.nucleusframework.nucleus.internal.utils.notNullProperty import org.gradle.api.DefaultTask import org.gradle.api.file.ArchiveOperations import org.gradle.api.file.Directory diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/tasks/AbstractUnpackDefaultApplicationResourcesTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/tasks/AbstractUnpackDefaultApplicationResourcesTask.kt similarity index 89% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/tasks/AbstractUnpackDefaultApplicationResourcesTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/tasks/AbstractUnpackDefaultApplicationResourcesTask.kt index 27f3c598c..c1d3e9835 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/desktop/tasks/AbstractUnpackDefaultApplicationResourcesTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/desktop/tasks/AbstractUnpackDefaultApplicationResourcesTask.kt @@ -3,11 +3,11 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.desktop.tasks +package dev.nucleusframework.nucleus.desktop.tasks -import io.github.kdroidfilter.nucleus.NucleusBuildConfig -import io.github.kdroidfilter.nucleus.internal.utils.clearDirs -import io.github.kdroidfilter.nucleus.internal.utils.ioFile +import dev.nucleusframework.nucleus.NucleusBuildConfig +import dev.nucleusframework.nucleus.internal.utils.clearDirs +import dev.nucleusframework.nucleus.internal.utils.ioFile import org.gradle.api.file.Directory import org.gradle.api.file.FileSystemLocation import org.gradle.api.file.RegularFile @@ -30,8 +30,10 @@ abstract class AbstractUnpackDefaultApplicationResourcesTask : AbstractNucleusTa val macIcon: Provider = resourcesRootDir.map { it.file("default-icon-mac.icns") } val windowsIcon: Provider = resourcesRootDir.map { it.file("default-icon-windows.ico") } val linuxIcon: Provider = resourcesRootDir.map { it.file("default-icon-linux.png") } - val defaultComposeProguardRules: Provider = resourcesRootDir.map { it.file(DEFAULT_COMPOSE_PROGUARD_RULES_FILE_NAME) } - val defaultEntitlements: Provider = resourcesRootDir.map { it.file(DEFAULT_ENTITLEMENTS_FILE_NAME) } + val defaultComposeProguardRules: Provider = + resourcesRootDir.map { it.file(DEFAULT_COMPOSE_PROGUARD_RULES_FILE_NAME) } + val defaultEntitlements: Provider = + resourcesRootDir.map { it.file(DEFAULT_ENTITLEMENTS_FILE_NAME) } val defaultSandboxEntitlements: Provider = resourcesRootDir.map { it.file(DEFAULT_SANDBOX_ENTITLEMENTS_FILE_NAME) } val defaultSandboxRuntimeEntitlements: Provider = diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/experimental/internal/checkExperimentalTargets.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/experimental/internal/checkExperimentalTargets.kt similarity index 95% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/experimental/internal/checkExperimentalTargets.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/experimental/internal/checkExperimentalTargets.kt index d6f048790..427f39050 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/experimental/internal/checkExperimentalTargets.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/experimental/internal/checkExperimentalTargets.kt @@ -3,9 +3,9 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.experimental.internal +package dev.nucleusframework.nucleus.experimental.internal -import io.github.kdroidfilter.nucleus.internal.utils.findLocalOrGlobalProperty +import dev.nucleusframework.nucleus.internal.utils.findLocalOrGlobalProperty import org.gradle.api.Project import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformExtension import org.jetbrains.kotlin.gradle.plugin.KotlinTarget @@ -64,6 +64,7 @@ private fun checkExperimentalTargetsWithSkikoIsEnabled( } } +@Suppress("NestedBlockDepth") private fun checkTarget( project: Project, target: KotlinTarget, diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/ComposeCompilerArtifactProvider.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/ComposeCompilerArtifactProvider.kt similarity index 93% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/ComposeCompilerArtifactProvider.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/ComposeCompilerArtifactProvider.kt index 93bed5be2..dc1fc63bc 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/ComposeCompilerArtifactProvider.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/ComposeCompilerArtifactProvider.kt @@ -3,11 +3,12 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.internal +package dev.nucleusframework.nucleus.internal -import io.github.kdroidfilter.nucleus.internal.ComposeCompilerArtifactProvider.DefaultCompiler.pluginArtifact +import dev.nucleusframework.nucleus.internal.ComposeCompilerArtifactProvider.DefaultCompiler.pluginArtifact import org.jetbrains.kotlin.gradle.plugin.SubpluginArtifact +@Suppress("MagicNumber") internal class ComposeCompilerArtifactProvider( private val customPluginString: () -> String, ) { diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/IdeaImportTask.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/IdeaImportTask.kt similarity index 89% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/IdeaImportTask.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/IdeaImportTask.kt index a44595d2c..66bd42197 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/IdeaImportTask.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/IdeaImportTask.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.internal +package dev.nucleusframework.nucleus.internal import org.gradle.api.DefaultTask import org.gradle.api.Project @@ -24,7 +24,7 @@ internal abstract class IdeaImportTask : DefaultTask() { fun run() { try { safeAction() - } catch (e: Exception) { + } catch (@Suppress("TooGenericExceptionCaught") e: Exception) { // message must contain two ':' symbols to be parsed by IDE UI! logger.error("e: $name task was failed:", e) if (!ideaIsInSync.get()) throw e diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/Version.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/Version.kt similarity index 93% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/Version.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/Version.kt index 8d73a82cd..f9ee9d583 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/Version.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/Version.kt @@ -1,7 +1,8 @@ -package io.github.kdroidfilter.nucleus.internal +package dev.nucleusframework.nucleus.internal import kotlin.math.min +@Suppress("MagicNumber") internal data class Version( val major: Int, val minor: Int, @@ -54,7 +55,7 @@ internal data class Version( val major: Int = matchResult.groups[1]?.value?.toInt() ?: 0 val minor: Int = matchResult.groups[2]?.value?.toInt() ?: 0 val patch: Int = matchResult.groups[3]?.value?.toInt() ?: 0 - val meta: String = matchResult.groups[4]?.value ?: "" + val meta: String = matchResult.groups[4]?.value.orEmpty() return Version(major, minor, patch, meta) } } diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/constants.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/constants.kt similarity index 82% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/constants.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/constants.kt index 018f09c6f..13b30a0e8 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/constants.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/constants.kt @@ -3,12 +3,12 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.internal +package dev.nucleusframework.nucleus.internal internal const val KOTLIN_MPP_PLUGIN_ID = "org.jetbrains.kotlin.multiplatform" internal const val KOTLIN_JVM_PLUGIN_ID = "org.jetbrains.kotlin.jvm" internal const val KOTLIN_ANDROID_PLUGIN_ID = "org.jetbrains.kotlin.android" internal const val KOTLIN_JS_PLUGIN_ID = "org.jetbrains.kotlin.js" -internal const val NUCLEUS_PLUGIN_ID = "io.github.kdroidfilter.nucleus" +internal const val NUCLEUS_PLUGIN_ID = "dev.nucleusframework.nucleus" internal const val IDEA_IMPORT_TASK_NAME = "prepareKotlinIdeaImport" diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/projectExtensions.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/projectExtensions.kt similarity index 93% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/projectExtensions.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/projectExtensions.kt index dac666b14..f8d4aedb2 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/projectExtensions.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/projectExtensions.kt @@ -3,9 +3,9 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.internal +package dev.nucleusframework.nucleus.internal -import io.github.kdroidfilter.nucleus.NucleusExtension +import dev.nucleusframework.nucleus.NucleusExtension import org.gradle.api.Project import org.gradle.api.plugins.JavaPluginExtension import org.gradle.api.tasks.SourceSetContainer diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/requiredDslProperty.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/requiredDslProperty.kt similarity index 93% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/requiredDslProperty.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/requiredDslProperty.kt index 38aa700e1..9e88aaeb9 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/requiredDslProperty.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/requiredDslProperty.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.internal +package dev.nucleusframework.nucleus.internal import kotlin.reflect.KProperty diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/diagnosticUtils.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/diagnosticUtils.kt similarity index 89% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/diagnosticUtils.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/diagnosticUtils.kt index 64e4f82df..80e500ea8 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/diagnosticUtils.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/diagnosticUtils.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.internal.utils +package dev.nucleusframework.nucleus.internal.utils import java.io.PrintWriter import java.io.StringWriter diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/fileUtils.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/fileUtils.kt similarity index 96% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/fileUtils.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/fileUtils.kt index 2222d7de0..9626fc2a7 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/fileUtils.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/fileUtils.kt @@ -3,7 +3,9 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.internal.utils +@file:Suppress("TooManyFunctions") + +package dev.nucleusframework.nucleus.internal.utils import org.gradle.api.Project import org.gradle.api.file.Directory diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/gradleUtils.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/gradleUtils.kt similarity index 87% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/gradleUtils.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/gradleUtils.kt index 6ee121099..ea6f47535 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/gradleUtils.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/gradleUtils.kt @@ -3,9 +3,9 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.internal.utils +package dev.nucleusframework.nucleus.internal.utils -import io.github.kdroidfilter.nucleus.NucleusBuildConfig +import dev.nucleusframework.nucleus.NucleusBuildConfig import org.gradle.api.DomainObjectCollection import org.gradle.api.Project import org.gradle.api.artifacts.Configuration @@ -42,7 +42,12 @@ fun Project.getLocalProperty(key: String): String? { internal fun Project.detachedComposeGradleDependency( artifactId: String, groupId: String = "org.jetbrains.compose", -): Configuration = detachedDependency(groupId = groupId, artifactId = artifactId, version = NucleusBuildConfig.composeGradlePluginVersion) +): Configuration = + detachedDependency( + groupId = groupId, + artifactId = artifactId, + version = NucleusBuildConfig.composeGradlePluginVersion, + ) internal fun Project.detachedComposeDependency( artifactId: String, diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/osUtils.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/osUtils.kt similarity index 93% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/osUtils.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/osUtils.kt index eb744f6f4..1c6635e3c 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/osUtils.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/osUtils.kt @@ -3,10 +3,10 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.internal.utils +package dev.nucleusframework.nucleus.internal.utils -import io.github.kdroidfilter.nucleus.desktop.application.internal.files.checkExistingFile -import io.github.kdroidfilter.nucleus.desktop.application.tasks.MIN_JAVA_RUNTIME_VERSION +import dev.nucleusframework.nucleus.desktop.application.internal.files.checkExistingFile +import dev.nucleusframework.nucleus.desktop.application.tasks.MIN_JAVA_RUNTIME_VERSION import org.gradle.api.provider.Provider import java.io.File diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/providerUtils.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/providerUtils.kt similarity index 97% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/providerUtils.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/providerUtils.kt index 15471400a..5709057c6 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/providerUtils.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/providerUtils.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.internal.utils +package dev.nucleusframework.nucleus.internal.utils import org.gradle.api.Project import org.gradle.api.Task diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/stringUtils.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/stringUtils.kt similarity index 96% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/stringUtils.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/stringUtils.kt index ea56d79bb..027977c63 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/stringUtils.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/stringUtils.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.internal.utils +package dev.nucleusframework.nucleus.internal.utils internal fun String.uppercaseFirstChar(): String = transformFirstCharIfNeeded( diff --git a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/taskUtils.kt b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/taskUtils.kt similarity index 95% rename from plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/taskUtils.kt rename to plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/taskUtils.kt index bb09a3f79..4b80a840a 100644 --- a/plugin-build/plugin/src/main/kotlin/io/github/kdroidfilter/nucleus/internal/utils/taskUtils.kt +++ b/plugin-build/plugin/src/main/kotlin/dev/nucleusframework/nucleus/internal/utils/taskUtils.kt @@ -3,7 +3,7 @@ * Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. */ -package io.github.kdroidfilter.nucleus.internal.utils +package dev.nucleusframework.nucleus.internal.utils import org.gradle.api.Project import org.gradle.api.Task diff --git a/plugin-build/plugin/src/main/resources/default-compose-desktop-rules.pro b/plugin-build/plugin/src/main/resources/default-compose-desktop-rules.pro index fe46de660..3b8dff338 100644 --- a/plugin-build/plugin/src/main/resources/default-compose-desktop-rules.pro +++ b/plugin-build/plugin/src/main/resources/default-compose-desktop-rules.pro @@ -140,45 +140,51 @@ -dontwarn com.sun.jna.** -dontnote com.sun.jna.** +# Nucleus - Silence warnings and notes for all modules (many are optional at runtime) +-dontwarn dev.nucleusframework.nucleus.** +-dontnote dev.nucleusframework.nucleus.** + # Nucleus decorated-window JNI --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) # NativeDarkModeBridge is looked up by name from native code (FindClass + GetStaticMethodID) --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) # NativeLinuxBridge is looked up by name from native code (FindClass + GetStaticMethodID) --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.** { *; } +-dontwarn 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 ; } +-dontwarn dev.nucleusframework.nucleus.nativessl.** # Nucleus system-color JNI (macOS) # NativeMacSystemColorBridge is looked up by name from native code (FindClass + GetStaticMethodID) --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(); @@ -187,7 +193,7 @@ # Nucleus system-color JNI (Linux) # NativeLinuxSystemColorBridge is looked up by name from native code (FindClass + GetStaticMethodID) --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); @@ -195,36 +201,39 @@ # Nucleus system-color JNI (Windows) # NativeWindowsSystemColorBridge is looked up by name from native code (FindClass + GetStaticMethodID) --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); } --keep class io.github.kdroidfilter.nucleus.systemcolor.** { *; } +-keep class dev.nucleusframework.nucleus.systemcolor.** { *; } +-dontwarn dev.nucleusframework.nucleus.systemcolor.** # Nucleus energy-manager JNI (macOS) --keep class io.github.kdroidfilter.nucleus.energymanager.macos.NativeMacOsEnergyBridge { +-keep class dev.nucleusframework.nucleus.energymanager.macos.NativeMacOsEnergyBridge { native ; } # Nucleus energy-manager JNI (Linux) --keep class io.github.kdroidfilter.nucleus.energymanager.linux.NativeLinuxEnergyBridge { +-keep class dev.nucleusframework.nucleus.energymanager.linux.NativeLinuxEnergyBridge { native ; } # Nucleus energy-manager JNI (Windows) --keep class io.github.kdroidfilter.nucleus.energymanager.windows.NativeWindowsEnergyBridge { +-keep class dev.nucleusframework.nucleus.energymanager.windows.NativeWindowsEnergyBridge { native ; } --keep class io.github.kdroidfilter.nucleus.energymanager.** { *; } +-keep class dev.nucleusframework.nucleus.energymanager.** { *; } +-dontwarn dev.nucleusframework.nucleus.energymanager.** # Nucleus linux-hidpi JNI --keep class io.github.kdroidfilter.nucleus.hidpi.HiDpiLinuxBridge { +-keep class dev.nucleusframework.nucleus.hidpi.HiDpiLinuxBridge { native ; } +-dontwarn dev.nucleusframework.nucleus.hidpi.** # Nucleus notification-windows JNI — static callbacks invoked from native via FindClass/GetStaticMethodID --keep class io.github.kdroidfilter.nucleus.notification.windows.NativeWindowsNotificationBridge { +-keep class dev.nucleusframework.nucleus.notification.windows.NativeWindowsNotificationBridge { native ; static void onToastActivated(java.lang.String, java.lang.String, java.lang.String, java.lang.String[], java.lang.String[]); static void onToastDismissed(java.lang.String, java.lang.String, int); @@ -233,39 +242,46 @@ static void onToastUpdated(long, java.lang.String); static void onHistoryResult(long, java.lang.String[], java.lang.String[], java.lang.String); } --keep class io.github.kdroidfilter.nucleus.notification.windows.** { *; } --keep class io.github.kdroidfilter.nucleus.notification.common.** { *; } +-keep class dev.nucleusframework.nucleus.notification.windows.** { *; } +-keep class dev.nucleusframework.nucleus.notification.common.** { *; } +-dontwarn dev.nucleusframework.nucleus.notification.** # Nucleus media-control JNI — native code uses FindClass(BRIDGE_CLASS) + static callbacks --keep class io.github.kdroidfilter.nucleus.mediacontrol.** { *; } +-keep class dev.nucleusframework.nucleus.mediacontrol.** { *; } +-dontwarn dev.nucleusframework.nucleus.mediacontrol.** # Nucleus scheduler JNI --keep class io.github.kdroidfilter.nucleus.scheduler.** { *; } +-keep class dev.nucleusframework.nucleus.scheduler.** { *; } +-dontwarn dev.nucleusframework.nucleus.scheduler.** # Nucleus global-hotkey JNI — onHotKey is invoked from native code via JNI --keep class io.github.kdroidfilter.nucleus.globalhotkey.windows.NativeWindowsHotKeyBridge { +-keep class dev.nucleusframework.nucleus.globalhotkey.windows.NativeWindowsHotKeyBridge { native ; static void onHotKey(long, int, int); } --keep class io.github.kdroidfilter.nucleus.globalhotkey.macos.NativeMacOsHotKeyBridge { +-keep class dev.nucleusframework.nucleus.globalhotkey.macos.NativeMacOsHotKeyBridge { native ; static void onHotKey(long, int, int); } --keep class io.github.kdroidfilter.nucleus.globalhotkey.linux.NativeLinuxHotKeyBridge { +-keep class dev.nucleusframework.nucleus.globalhotkey.linux.NativeLinuxHotKeyBridge { native ; static void onHotKey(long, int, int); } +-dontwarn dev.nucleusframework.nucleus.globalhotkey.** # Nucleus launcher-windows JNI — ThumbBarClickListener.onThumbButtonClick is invoked from native --keep class io.github.kdroidfilter.nucleus.launcher.windows.NativeWindowsBadgeBridge { native ; } --keep class io.github.kdroidfilter.nucleus.launcher.windows.NativeWindowsJumpListBridge { native ; } --keep class io.github.kdroidfilter.nucleus.launcher.windows.NativeWindowsTaskbarBridge { native ; } --keep interface io.github.kdroidfilter.nucleus.launcher.windows.ThumbBarClickListener { +-keep class dev.nucleusframework.nucleus.launcher.windows.NativeWindowsBadgeBridge { native ; } +-keep class dev.nucleusframework.nucleus.launcher.windows.NativeWindowsJumpListBridge { native ; } +-keep class dev.nucleusframework.nucleus.launcher.windows.NativeWindowsTaskbarBridge { native ; } +-keep interface dev.nucleusframework.nucleus.launcher.windows.ThumbBarClickListener { void onThumbButtonClick(int); } --keep class * implements io.github.kdroidfilter.nucleus.launcher.windows.ThumbBarClickListener { +-keep class * implements dev.nucleusframework.nucleus.launcher.windows.ThumbBarClickListener { void onThumbButtonClick(int); } +-dontwarn dev.nucleusframework.nucleus.launcher.** + +-dontwarn dev.nucleusframework.nucleus.core.runtime.** -dontwarn sun.misc.Unsafe -dontwarn sun.awt.** diff --git a/plugin-build/plugin/src/main/resources/nucleus/graalvm/library-metadata/compose-mediaplayer.json b/plugin-build/plugin/src/main/resources/nucleus/graalvm/library-metadata/compose-mediaplayer.json index 449513559..99f0c013d 100644 --- a/plugin-build/plugin/src/main/resources/nucleus/graalvm/library-metadata/compose-mediaplayer.json +++ b/plugin-build/plugin/src/main/resources/nucleus/graalvm/library-metadata/compose-mediaplayer.json @@ -2,19 +2,19 @@ "_meta": { "description": "Compose MediaPlayer Windows (MediaFoundation via JNA)", "matchPackages": [ - "io.github.kdroidfilter.composemediaplayer" + "dev.nucleusframework.composemediaplayer" ] }, "reflection": [ { - "type": "io.github.kdroidfilter.composemediaplayer.windows.MediaFoundationLib", + "type": "dev.nucleusframework.composemediaplayer.windows.MediaFoundationLib", "allDeclaredFields": true, "allDeclaredMethods": true, "allDeclaredConstructors": true, "jniAccessible": true }, { - "type": "io.github.kdroidfilter.composemediaplayer.windows.MediaFoundationLib$NativeVideoMetadata", + "type": "dev.nucleusframework.composemediaplayer.windows.MediaFoundationLib$NativeVideoMetadata", "allDeclaredFields": true, "allDeclaredConstructors": true } diff --git a/plugin-build/plugin/src/main/resources/nucleus/graalvm/library-metadata/compose-webview-wry.json b/plugin-build/plugin/src/main/resources/nucleus/graalvm/library-metadata/compose-webview-wry.json index fd707af05..ad20a93cc 100644 --- a/plugin-build/plugin/src/main/resources/nucleus/graalvm/library-metadata/compose-webview-wry.json +++ b/plugin-build/plugin/src/main/resources/nucleus/graalvm/library-metadata/compose-webview-wry.json @@ -2,269 +2,269 @@ "_meta": { "description": "Compose WebView (Wry/UniFFI) native bindings", "matchPackages": [ - "io.github.kdroidfilter.webview.wry" + "dev.nucleusframework.webview.wry" ] }, "reflection": [ { - "type": "io.github.kdroidfilter.webview.wry.IntegrityCheckingUniffiLib", + "type": "dev.nucleusframework.webview.wry.IntegrityCheckingUniffiLib", "allDeclaredMethods": true, "allDeclaredFields": true, "allDeclaredConstructors": true, "jniAccessible": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiLib", + "type": "dev.nucleusframework.webview.wry.UniffiLib", "allDeclaredMethods": true, "allDeclaredFields": true, "allDeclaredConstructors": true, "jniAccessible": true }, { - "type": "io.github.kdroidfilter.webview.wry.ForeignBytesStruct", + "type": "dev.nucleusframework.webview.wry.ForeignBytesStruct", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.ForeignBytesStruct$ByValue", + "type": "dev.nucleusframework.webview.wry.ForeignBytesStruct$ByValue", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.RustBufferStruct", + "type": "dev.nucleusframework.webview.wry.RustBufferStruct", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.RustBufferStruct$ByValue", + "type": "dev.nucleusframework.webview.wry.RustBufferStruct$ByValue", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.RustBufferStruct$ByReference", + "type": "dev.nucleusframework.webview.wry.RustBufferStruct$ByReference", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiCallbackInterfaceFree", + "type": "dev.nucleusframework.webview.wry.UniffiCallbackInterfaceFree", "methods": [{"name": "callback", "parameterTypes": ["long"]}] }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiCallbackInterfaceJavaScriptCallbackMethod0", - "methods": [{"name": "callback", "parameterTypes": ["long", "io.github.kdroidfilter.webview.wry.RustBufferStruct$ByValue", "com.sun.jna.Pointer", "io.github.kdroidfilter.webview.wry.UniffiRustCallStatusStruct$ByReference"]}] + "type": "dev.nucleusframework.webview.wry.UniffiCallbackInterfaceJavaScriptCallbackMethod0", + "methods": [{"name": "callback", "parameterTypes": ["long", "dev.nucleusframework.webview.wry.RustBufferStruct$ByValue", "com.sun.jna.Pointer", "dev.nucleusframework.webview.wry.UniffiRustCallStatusStruct$ByReference"]}] }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiCallbackInterfaceNativeLoggerMethod0" + "type": "dev.nucleusframework.webview.wry.UniffiCallbackInterfaceNativeLoggerMethod0" }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiCallbackInterfaceNavigationHandlerMethod0", - "methods": [{"name": "callback", "parameterTypes": ["long", "io.github.kdroidfilter.webview.wry.RustBufferStruct$ByValue", "com.sun.jna.ptr.ByteByReference", "io.github.kdroidfilter.webview.wry.UniffiRustCallStatusStruct$ByReference"]}] + "type": "dev.nucleusframework.webview.wry.UniffiCallbackInterfaceNavigationHandlerMethod0", + "methods": [{"name": "callback", "parameterTypes": ["long", "dev.nucleusframework.webview.wry.RustBufferStruct$ByValue", "com.sun.jna.ptr.ByteByReference", "dev.nucleusframework.webview.wry.UniffiRustCallStatusStruct$ByReference"]}] }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiRustCallStatusStruct", + "type": "dev.nucleusframework.webview.wry.UniffiRustCallStatusStruct", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiRustCallStatusStruct$ByValue", + "type": "dev.nucleusframework.webview.wry.UniffiRustCallStatusStruct$ByValue", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiRustCallStatusStruct$ByReference", + "type": "dev.nucleusframework.webview.wry.UniffiRustCallStatusStruct$ByReference", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStruct", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStruct", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStruct$UniffiByValue", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStruct$UniffiByValue", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructF32Struct", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructF32Struct", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructF32Struct$UniffiByValue", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructF32Struct$UniffiByValue", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructF64Struct", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructF64Struct", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructF64Struct$UniffiByValue", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructF64Struct$UniffiByValue", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructI8Struct", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructI8Struct", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructI8Struct$UniffiByValue", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructI8Struct$UniffiByValue", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructI16Struct", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructI16Struct", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructI16Struct$UniffiByValue", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructI16Struct$UniffiByValue", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructI32Struct", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructI32Struct", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructI32Struct$UniffiByValue", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructI32Struct$UniffiByValue", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructI64Struct", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructI64Struct", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructI64Struct$UniffiByValue", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructI64Struct$UniffiByValue", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructU8Struct", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructU8Struct", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructU8Struct$UniffiByValue", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructU8Struct$UniffiByValue", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructU16Struct", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructU16Struct", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructU16Struct$UniffiByValue", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructU16Struct$UniffiByValue", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructU32Struct", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructU32Struct", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructU32Struct$UniffiByValue", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructU32Struct$UniffiByValue", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructU64Struct", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructU64Struct", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructU64Struct$UniffiByValue", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructU64Struct$UniffiByValue", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructPointerStruct", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructPointerStruct", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructPointerStruct$UniffiByValue", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructPointerStruct$UniffiByValue", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructRustBufferStruct", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructRustBufferStruct", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructRustBufferStruct$UniffiByValue", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructRustBufferStruct$UniffiByValue", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructVoidStruct", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructVoidStruct", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiForeignFutureStructVoidStruct$UniffiByValue", + "type": "dev.nucleusframework.webview.wry.UniffiForeignFutureStructVoidStruct$UniffiByValue", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiVTableCallbackInterfaceJavaScriptCallbackStruct", + "type": "dev.nucleusframework.webview.wry.UniffiVTableCallbackInterfaceJavaScriptCallbackStruct", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiVTableCallbackInterfaceJavaScriptCallbackStruct$UniffiByValue", + "type": "dev.nucleusframework.webview.wry.UniffiVTableCallbackInterfaceJavaScriptCallbackStruct$UniffiByValue", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiVTableCallbackInterfaceNativeLoggerStruct", + "type": "dev.nucleusframework.webview.wry.UniffiVTableCallbackInterfaceNativeLoggerStruct", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiVTableCallbackInterfaceNativeLoggerStruct$UniffiByValue", + "type": "dev.nucleusframework.webview.wry.UniffiVTableCallbackInterfaceNativeLoggerStruct$UniffiByValue", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiVTableCallbackInterfaceNavigationHandlerStruct", + "type": "dev.nucleusframework.webview.wry.UniffiVTableCallbackInterfaceNavigationHandlerStruct", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.UniffiVTableCallbackInterfaceNavigationHandlerStruct$UniffiByValue", + "type": "dev.nucleusframework.webview.wry.UniffiVTableCallbackInterfaceNavigationHandlerStruct$UniffiByValue", "allDeclaredFields": true, "allDeclaredConstructors": true }, { - "type": "io.github.kdroidfilter.webview.wry.WryWebViewPanel" + "type": "dev.nucleusframework.webview.wry.WryWebViewPanel" }, { - "type": "io.github.kdroidfilter.webview.wry.uniffiCallbackInterfaceJavaScriptCallback$onResult" + "type": "dev.nucleusframework.webview.wry.uniffiCallbackInterfaceJavaScriptCallback$onResult" }, { - "type": "io.github.kdroidfilter.webview.wry.uniffiCallbackInterfaceJavaScriptCallback$uniffiFree" + "type": "dev.nucleusframework.webview.wry.uniffiCallbackInterfaceJavaScriptCallback$uniffiFree" }, { - "type": "io.github.kdroidfilter.webview.wry.uniffiCallbackInterfaceNativeLogger$handleLog" + "type": "dev.nucleusframework.webview.wry.uniffiCallbackInterfaceNativeLogger$handleLog" }, { - "type": "io.github.kdroidfilter.webview.wry.uniffiCallbackInterfaceNativeLogger$uniffiFree" + "type": "dev.nucleusframework.webview.wry.uniffiCallbackInterfaceNativeLogger$uniffiFree" }, { - "type": "io.github.kdroidfilter.webview.wry.uniffiCallbackInterfaceNavigationHandler$handleNavigation" + "type": "dev.nucleusframework.webview.wry.uniffiCallbackInterfaceNavigationHandler$handleNavigation" }, { - "type": "io.github.kdroidfilter.webview.wry.uniffiCallbackInterfaceNavigationHandler$uniffiFree" + "type": "dev.nucleusframework.webview.wry.uniffiCallbackInterfaceNavigationHandler$uniffiFree" } ], "resources": [ diff --git a/plugin-build/plugin/src/main/resources/nucleus/graalvm/library-metadata/knotify.json b/plugin-build/plugin/src/main/resources/nucleus/graalvm/library-metadata/knotify.json index 1decb1629..13527f32e 100644 --- a/plugin-build/plugin/src/main/resources/nucleus/graalvm/library-metadata/knotify.json +++ b/plugin-build/plugin/src/main/resources/nucleus/graalvm/library-metadata/knotify.json @@ -2,50 +2,50 @@ "_meta": { "description": "KNotify Windows toast notification library", "matchPackages": [ - "io.github.kdroidfilter.knotify" + "dev.nucleusframework.knotify" ] }, "reflection": [ { - "type": "io.github.kdroidfilter.knotify.platform.windows.callbacks.ToastActivatedActionCallback", + "type": "dev.nucleusframework.knotify.platform.windows.callbacks.ToastActivatedActionCallback", "methods": [{"name": "invoke", "parameterTypes": ["com.sun.jna.Pointer", "int"]}] }, { - "type": "io.github.kdroidfilter.knotify.platform.windows.callbacks.ToastActivatedCallback", + "type": "dev.nucleusframework.knotify.platform.windows.callbacks.ToastActivatedCallback", "methods": [{"name": "invoke", "parameterTypes": ["com.sun.jna.Pointer"]}] }, { - "type": "io.github.kdroidfilter.knotify.platform.windows.callbacks.ToastDismissedCallback", + "type": "dev.nucleusframework.knotify.platform.windows.callbacks.ToastDismissedCallback", "methods": [{"name": "invoke", "parameterTypes": ["com.sun.jna.Pointer", "int"]}] }, { - "type": "io.github.kdroidfilter.knotify.platform.windows.callbacks.ToastFailedCallback" + "type": "dev.nucleusframework.knotify.platform.windows.callbacks.ToastFailedCallback" }, { - "type": "io.github.kdroidfilter.knotify.platform.windows.provider.WindowsNotificationProvider$createCallbacks$activatedActionCallback$1" + "type": "dev.nucleusframework.knotify.platform.windows.provider.WindowsNotificationProvider$createCallbacks$activatedActionCallback$1" }, { - "type": "io.github.kdroidfilter.knotify.platform.windows.provider.WindowsNotificationProvider$createCallbacks$activatedCallback$1" + "type": "dev.nucleusframework.knotify.platform.windows.provider.WindowsNotificationProvider$createCallbacks$activatedCallback$1" }, { - "type": "io.github.kdroidfilter.knotify.platform.windows.provider.WindowsNotificationProvider$createCallbacks$dismissedCallback$1" + "type": "dev.nucleusframework.knotify.platform.windows.provider.WindowsNotificationProvider$createCallbacks$dismissedCallback$1" }, { - "type": "io.github.kdroidfilter.knotify.platform.windows.provider.WindowsNotificationProvider$createCallbacks$failedCallback$1" + "type": "dev.nucleusframework.knotify.platform.windows.provider.WindowsNotificationProvider$createCallbacks$failedCallback$1" }, { - "type": "io.github.kdroidfilter.knotify.platform.windows.nativeintegration.WinToastLibC", + "type": "dev.nucleusframework.knotify.platform.windows.nativeintegration.WinToastLibC", "allDeclaredMethods": true }, { - "type": "io.github.kdroidfilter.knotify.platform.windows.nativeintegration.ExtendedUser32", + "type": "dev.nucleusframework.knotify.platform.windows.nativeintegration.ExtendedUser32", "allDeclaredMethods": true }, { - "type": {"proxy": ["io.github.kdroidfilter.knotify.platform.windows.nativeintegration.WinToastLibC"]} + "type": {"proxy": ["dev.nucleusframework.knotify.platform.windows.nativeintegration.WinToastLibC"]} }, { - "type": {"proxy": ["io.github.kdroidfilter.knotify.platform.windows.nativeintegration.ExtendedUser32"]} + "type": {"proxy": ["dev.nucleusframework.knotify.platform.windows.nativeintegration.ExtendedUser32"]} } ] } diff --git a/plugin-build/plugin/src/main/resources/nucleus/graalvm/library-metadata/platformtools.json b/plugin-build/plugin/src/main/resources/nucleus/graalvm/library-metadata/platformtools.json index 1eecaa72d..d05726022 100644 --- a/plugin-build/plugin/src/main/resources/nucleus/graalvm/library-metadata/platformtools.json +++ b/plugin-build/plugin/src/main/resources/nucleus/graalvm/library-metadata/platformtools.json @@ -2,14 +2,14 @@ "_meta": { "description": "KDroid PlatformTools (clipboard, etc.)", "matchPackages": [ - "io.github.kdroidfilter.platformtools" + "dev.nucleusframework.platformtools" ] }, "reflection": [ { "type": { "proxy": [ - "io.github.kdroidfilter.platformtools.clipboardmanager.windows.User32Extended" + "dev.nucleusframework.platformtools.clipboardmanager.windows.User32Extended" ] } } diff --git a/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/validation/ValidatedMacOSNotarizationSettingsTest.kt b/plugin-build/plugin/src/test/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/validation/ValidatedMacOSNotarizationSettingsTest.kt similarity index 98% rename from plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/validation/ValidatedMacOSNotarizationSettingsTest.kt rename to plugin-build/plugin/src/test/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/validation/ValidatedMacOSNotarizationSettingsTest.kt index 286f520f1..d490b56d7 100644 --- a/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/validation/ValidatedMacOSNotarizationSettingsTest.kt +++ b/plugin-build/plugin/src/test/kotlin/dev/nucleusframework/nucleus/desktop/application/internal/validation/ValidatedMacOSNotarizationSettingsTest.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.validation +package dev.nucleusframework.nucleus.desktop.application.internal.validation -import io.github.kdroidfilter.nucleus.desktop.application.dsl.MacOSNotarizationSettings +import dev.nucleusframework.nucleus.desktop.application.dsl.MacOSNotarizationSettings import org.gradle.testfixtures.ProjectBuilder import org.junit.Assert.assertEquals import org.junit.Assert.assertNull diff --git a/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/DmgBackgroundPaddingTest.kt b/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/DmgBackgroundPaddingTest.kt deleted file mode 100644 index c405e4313..000000000 --- a/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/DmgBackgroundPaddingTest.kt +++ /dev/null @@ -1,388 +0,0 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal - -import org.junit.Assert.assertEquals -import org.junit.Assert.assertNotNull -import org.junit.Assert.assertTrue -import org.junit.Assume -import org.junit.Rule -import org.junit.Test -import org.junit.rules.TemporaryFolder -import java.awt.Color -import java.awt.image.BufferedImage -import java.io.File -import javax.imageio.ImageIO - -class DmgBackgroundPaddingTest { - @get:Rule - val tmpDir = TemporaryFolder() - - // ---- readImageDimensions ---- - - @Test - fun `readImageDimensions returns correct size for PNG`() { - val img = createTestImage(300, 200) - val file = tmpDir.newFile("test.png") - ImageIO.write(img, "png", file) - - val dims = readImageDimensions(file) - assertNotNull(dims) - assertEquals(300, dims!!.first) - assertEquals(200, dims.second) - } - - @Test - fun `readImageDimensions returns correct size for TIFF`() { - val img = createTestImage(400, 250) - val file = tmpDir.newFile("test.tiff") - ImageIO.write(img, "tiff", file) - - val dims = readImageDimensions(file) - assertNotNull(dims) - assertEquals(400, dims!!.first) - assertEquals(250, dims.second) - } - - @Test - fun `readImageDimensions returns null for non-image file`() { - val file = tmpDir.newFile("test.txt") - file.writeText("not an image") - assertEquals(null, readImageDimensions(file)) - } - - // ---- padDmgBackgroundForTitleBar — copy semantics ---- - - @Test - fun `PNG is copied to outputDir with unchanged dimensions`() { - val source = tmpDir.newFile("background.png") - ImageIO.write(createTestImage(600, 400, Color.RED), "png", source) - val outputDir = tmpDir.newFolder("output") - - val result = padDmgBackgroundForTitleBar(source, outputDir) - - val dims = readImageDimensions(result) - assertNotNull(dims) - assertEquals(600, dims!!.first) - assertEquals(400, dims.second) - } - - @Test - fun `TIFF is copied to outputDir with unchanged dimensions`() { - val source = tmpDir.newFile("background.tiff") - ImageIO.write(createTestImage(500, 350, Color.BLUE), "tiff", source) - val outputDir = tmpDir.newFolder("output") - - val result = padDmgBackgroundForTitleBar(source, outputDir) - - val dims = readImageDimensions(result) - assertNotNull(dims) - assertEquals(500, dims!!.first) - assertEquals(350, dims.second) - } - - @Test - fun `TIFF bytes are not re-encoded - output is byte-identical to source`() { - val source = tmpDir.newFile("background.tiff") - ImageIO.write(createTestImage(400, 300, Color.GREEN), "tiff", source) - val originalBytes = source.readBytes() - val outputDir = tmpDir.newFolder("output") - - val result = padDmgBackgroundForTitleBar(source, outputDir) - - assertTrue("Result file must exist", result.isFile) - val resultBytes = result.readBytes() - assertTrue("TIFF bytes must be identical — no re-encoding allowed", originalBytes.contentEquals(resultBytes)) - } - - @Test - fun `output preserves the original filename for electron-builder @2x detection`() { - val source = tmpDir.newFile("myBackground.png") - ImageIO.write(createTestImage(200, 100), "png", source) - val outputDir = tmpDir.newFolder("output") - - val result = padDmgBackgroundForTitleBar(source, outputDir) - - assertEquals("myBackground.png", result.name) - assertTrue(result.parentFile.absolutePath.startsWith(outputDir.absolutePath)) - } - - @Test - fun `output file always exists after copy`() { - val source = tmpDir.newFile("background.tiff") - ImageIO.write(createTestImage(600, 400, Color.RED), "tiff", source) - val outputDir = tmpDir.newFolder("output") - - val result = padDmgBackgroundForTitleBar(source, outputDir) - - assertTrue("Result file must exist on disk", result.isFile) - assertTrue("Result file must be non-empty", result.length() > 0) - } - - @Test - fun `running copy twice produces identical output`() { - val source = tmpDir.newFile("bg.png") - ImageIO.write(createTestImage(200, 150, Color.GREEN), "png", source) - - val out1 = tmpDir.newFolder("out1") - val out2 = tmpDir.newFolder("out2") - - padDmgBackgroundForTitleBar(source, out1) - padDmgBackgroundForTitleBar(source, out2) - - val bytes1 = File(out1, "bg.png").readBytes() - val bytes2 = File(out2, "bg.png").readBytes() - assertTrue("Both copies must be byte-identical", bytes1.contentEquals(bytes2)) - } - - @Test - fun `copying already-copied image produces same dimensions`() { - val source = tmpDir.newFile("bg.png") - ImageIO.write(createTestImage(200, 100), "png", source) - val out1 = tmpDir.newFolder("out1") - val out2 = tmpDir.newFolder("out2") - - val firstResult = padDmgBackgroundForTitleBar(source, out1) - assertEquals(100, readImageDimensions(firstResult)!!.second) - - // Second pass on already-copied image must not grow further - val secondResult = padDmgBackgroundForTitleBar(firstResult, out2) - assertEquals(100, readImageDimensions(secondResult)!!.second) - } - - // ---- padDmgBackgroundForTitleBar — @2x Retina handling ---- - - @Test - fun `@2x retina variant is copied alongside primary image`() { - val sourceDir = tmpDir.newFolder("source") - val source1x = File(sourceDir, "background.png") - val source2x = File(sourceDir, "background@2x.png") - ImageIO.write(createTestImage(300, 200), "png", source1x) - ImageIO.write(createTestImage(600, 400), "png", source2x) - - val outputDir = tmpDir.newFolder("output") - padDmgBackgroundForTitleBar(source1x, outputDir) - - // 1x must be copied with original dimensions (no padding) - val copied1x = File(outputDir, "background.png") - assertTrue("1x output must exist", copied1x.isFile) - val dims1x = readImageDimensions(copied1x)!! - assertEquals(300, dims1x.first) - assertEquals(200, dims1x.second) - - // 2x must also be copied with original dimensions (no padding) - val copied2x = File(outputDir, "background@2x.png") - assertTrue("2x output must exist", copied2x.isFile) - val dims2x = readImageDimensions(copied2x)!! - assertEquals(600, dims2x.first) - assertEquals(400, dims2x.second) - } - - @Test - fun `@2x retina TIFF variant is copied byte-identically`() { - val sourceDir = tmpDir.newFolder("source") - val source1x = File(sourceDir, "background.tiff") - val source2x = File(sourceDir, "background@2x.tiff") - ImageIO.write(createTestImage(400, 300), "tiff", source1x) - ImageIO.write(createTestImage(800, 600), "tiff", source2x) - val original2xBytes = source2x.readBytes() - - val outputDir = tmpDir.newFolder("output") - padDmgBackgroundForTitleBar(source1x, outputDir) - - val copied2x = File(outputDir, "background@2x.tiff") - assertTrue("2x TIFF must be copied", copied2x.isFile) - assertTrue("2x TIFF bytes must be identical", original2xBytes.contentEquals(copied2x.readBytes())) - } - - @Test - fun `missing @2x variant does not cause failure`() { - val source = tmpDir.newFile("background.png") - ImageIO.write(createTestImage(300, 200), "png", source) - val outputDir = tmpDir.newFolder("output") - - val result = padDmgBackgroundForTitleBar(source, outputDir) - - assertTrue(result.isFile) - // 1x dimensions unchanged - assertEquals(200, readImageDimensions(result)!!.second) - } - - // ---- Window override computation ---- - - @Test - fun `window height override equals image height plus title bar`() { - val source = tmpDir.newFile("bg.png") - ImageIO.write(createTestImage(660, 400), "png", source) - val outputDir = tmpDir.newFolder("output") - - val result = padDmgBackgroundForTitleBar(source, outputDir) - val dims = readImageDimensions(result)!! - - val expectedWindowHeight = dims.second + MACOS_DMG_TITLE_BAR_HEIGHT - assertEquals("Window height = imageHeight + titleBarHeight", 400 + MACOS_DMG_TITLE_BAR_HEIGHT, expectedWindowHeight) - } - - // ---- Issue regressions ---- - - @Test - fun `issue 166 - TIFF copy result file exists on disk`() { - val source = tmpDir.newFile("background.tiff") - ImageIO.write(createTestImage(600, 400, Color.RED), "tiff", source) - val outputDir = tmpDir.newFolder("output") - - val result = padDmgBackgroundForTitleBar(source, outputDir) - - assertTrue("Result file must exist on disk (issue #166)", result.isFile) - assertTrue("Result file must be non-empty", result.length() > 0) - } - - @Test - fun `issue 166 - PNG copy result file exists on disk`() { - val source = tmpDir.newFile("background.png") - ImageIO.write(createTestImage(600, 400, Color.RED), "png", source) - val outputDir = tmpDir.newFolder("output") - - val result = padDmgBackgroundForTitleBar(source, outputDir) - - assertTrue("Result file must exist on disk", result.isFile) - assertTrue("Result file must be non-empty", result.length() > 0) - } - - @Test - fun `issue 166 - TIFF with alpha channel is copied without error`() { - val img = BufferedImage(500, 350, BufferedImage.TYPE_INT_ARGB) - val g = img.createGraphics() - g.color = Color(255, 0, 0, 128) - g.fillRect(0, 0, 500, 350) - g.dispose() - val source = tmpDir.newFile("background.tiff") - ImageIO.write(img, "tiff", source) - val outputDir = tmpDir.newFolder("output") - - val result = padDmgBackgroundForTitleBar(source, outputDir) - - assertTrue("Result file must exist on disk", result.isFile) - val resultImg = ImageIO.read(result) - assertNotNull("Result must be a readable image", resultImg) - assertEquals("Width must be preserved", 500, resultImg.width) - } - - @Test - fun `issue 166 - TIFF result can be read without FileNotFoundException`() { - val source = tmpDir.newFile("background.tiff") - ImageIO.write(createTestImage(800, 600, Color.GREEN), "tiff", source) - val outputDir = tmpDir.newFolder("dmg-assets") - - val copiedFile = padDmgBackgroundForTitleBar(source, outputDir) - - val bytes = copiedFile.readBytes() - assertTrue("Copied file must have content", bytes.isNotEmpty()) - val readBack = ImageIO.read(copiedFile) - assertNotNull("Must be a valid image file", readBack) - } - - @Test - fun `issue 166 - TIFF retina pair both exist on disk after copy`() { - val sourceDir = tmpDir.newFolder("source") - val source1x = File(sourceDir, "background.tiff") - val source2x = File(sourceDir, "background@2x.tiff") - ImageIO.write(createTestImage(400, 300), "tiff", source1x) - ImageIO.write(createTestImage(800, 600), "tiff", source2x) - - val outputDir = tmpDir.newFolder("output") - val result = padDmgBackgroundForTitleBar(source1x, outputDir) - - assertTrue("1x result must exist", result.isFile) - val retina = File(outputDir, "background@2x.tiff") - assertTrue("2x result must exist (issue #166 regression)", retina.isFile) - assertTrue("2x result must be non-empty", retina.length() > 0) - } - - // ---- Issue #185 — Apple TIFF end-to-end with real header.png ---- - - @Test - fun `issue 185 - sips-converted TIFF from header png is preserved byte-for-byte`() { - Assume.assumeTrue("sips is available (macOS only)", File("/usr/bin/sips").exists()) - - val projectRoot = File(System.getProperty("user.dir")).parentFile.parentFile - val headerPng = File(projectRoot, "art/header.png") - Assume.assumeTrue("art/header.png exists", headerPng.isFile) - - // Convert to TIFF using sips (preserves Apple metadata) - val sourceTiff = tmpDir.newFile("header.tiff") - val exitCode = ProcessBuilder( - "/usr/bin/sips", "-s", "format", "tiff", - headerPng.absolutePath, "--out", sourceTiff.absolutePath, - ).start().waitFor() - Assume.assumeTrue("sips conversion succeeded", exitCode == 0) - - val originalBytes = sourceTiff.readBytes() - val outputDir = tmpDir.newFolder("dmg-assets") - - val result = padDmgBackgroundForTitleBar(sourceTiff, outputDir) - - assertTrue("Copied TIFF must exist", result.isFile) - assertTrue("TIFF bytes must be identical — no re-encoding", originalBytes.contentEquals(result.readBytes())) - - // Verify readImageDimensions reads the correct dimensions - val dims = readImageDimensions(result) - assertNotNull("Must be able to read dimensions from sips TIFF", dims) - assertEquals("Width must be 1536 (header.png width)", 1536, dims!!.first) - assertEquals("Height must be 1024 (header.png height)", 1024, dims.second) - - // Verify the window override computation - val expectedWindowHeight = dims.second + MACOS_DMG_TITLE_BAR_HEIGHT - assertEquals("Window height = 1024 + $MACOS_DMG_TITLE_BAR_HEIGHT", 1024 + MACOS_DMG_TITLE_BAR_HEIGHT, expectedWindowHeight) - } - - @Test - fun `issue 185 - Apple multi-resolution TIFF from tiffutil is preserved byte-for-byte`() { - Assume.assumeTrue("sips is available (macOS only)", File("/usr/bin/sips").exists()) - Assume.assumeTrue("tiffutil is available (macOS only)", File("/usr/bin/tiffutil").exists()) - - val projectRoot = File(System.getProperty("user.dir")).parentFile.parentFile - val headerPng = File(projectRoot, "art/header.png") - Assume.assumeTrue("art/header.png exists", headerPng.isFile) - - // Build 1x TIFF - val tiff1x = tmpDir.newFile("header.tiff") - val exit1 = ProcessBuilder("/usr/bin/sips", "-s", "format", "tiff", headerPng.absolutePath, "--out", tiff1x.absolutePath).start().waitFor() - Assume.assumeTrue("sips 1x succeeded", exit1 == 0) - - // Build 2x TIFF (scale up) - val scaled2x = tmpDir.newFile("header_2x_scaled.png") - ProcessBuilder("/usr/bin/sips", "-z", "2048", "3072", headerPng.absolutePath, "--out", scaled2x.absolutePath).start().waitFor() - val tiff2x = tmpDir.newFile("header@2x.tiff") - ProcessBuilder("/usr/bin/sips", "-s", "format", "tiff", scaled2x.absolutePath, "--out", tiff2x.absolutePath).start().waitFor() - - // Combine into Apple multi-resolution TIFF - val multiResTiff = tmpDir.newFile("header_hires.tiff") - val exitMerge = ProcessBuilder("/usr/bin/tiffutil", "-cathidpicheck", tiff1x.absolutePath, tiff2x.absolutePath, "-out", multiResTiff.absolutePath).start().waitFor() - Assume.assumeTrue("tiffutil merge succeeded", exitMerge == 0) - - val originalBytes = multiResTiff.readBytes() - val outputDir = tmpDir.newFolder("dmg-assets") - - val result = padDmgBackgroundForTitleBar(multiResTiff, outputDir) - - assertTrue("Copied multi-res TIFF must exist", result.isFile) - assertTrue( - "Multi-resolution Apple TIFF bytes must be identical — no re-encoding allowed (issue #185)", - originalBytes.contentEquals(result.readBytes()), - ) - } - - // ---- helpers ---- - - private fun createTestImage( - width: Int, - height: Int, - color: Color = Color.RED, - ): BufferedImage { - val img = BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB) - val g = img.createGraphics() - g.color = color - g.fillRect(0, 0, width, height) - g.dispose() - return img - } -} diff --git a/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/BytecodeAnalyzerIntegrationTest.kt b/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/BytecodeAnalyzerIntegrationTest.kt deleted file mode 100644 index e72edac80..000000000 --- a/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/BytecodeAnalyzerIntegrationTest.kt +++ /dev/null @@ -1,156 +0,0 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer - -import org.junit.Assert.assertFalse -import org.junit.Assert.assertNotNull -import org.junit.Assert.assertTrue -import org.junit.Assume.assumeTrue -import org.junit.Test -import java.io.File - -class BytecodeAnalyzerIntegrationTest { - private val analysisLibraries: List by lazy { - val path = System.getProperty("test.analysis.libraries") ?: "" - path.split(File.pathSeparator).map(::File).filter { it.exists() } - } - - private val oracleRepoZip: File? by lazy { - System.getProperty("test.oracle.repo.zip")?.let { File(it) }?.takeIf { it.exists() } - } - - @Test - fun `full analysis of all test libraries produces non-empty result`() { - assumeTrue("No analysis libraries available", analysisLibraries.isNotEmpty()) - - val result = BytecodeAnalyzer.analyzeJars(analysisLibraries.filter { it.name.endsWith(".jar") }) - - assertTrue("Expected JNI entries", result.jniEntries.isNotEmpty()) - assertTrue("Expected reflection entries", result.allReflectionEntries.isNotEmpty()) - assertTrue("Expected resource patterns", result.resourcePatterns.isNotEmpty()) - } - - @Test - fun `JNA analysis detects core JNI types from Oracle config`() { - val jnaJar = analysisLibraries.find { it.name.contains("jna-") } - assumeTrue("JNA JAR not available", jnaJar != null) - assumeTrue("Oracle repo ZIP not available", oracleRepoZip != null) - - val analyzerResult = BytecodeAnalyzer.analyzeJar(jnaJar!!) - val oracleDir = NativeMethodDetectorTest.extractOracleRepoDir(oracleRepoZip!!, "net.java.dev.jna", "jna") - assumeTrue("Oracle metadata for JNA not found", oracleDir != null) - - val oracleResult = OracleRepoParser.parseMetadataDir(oracleDir!!) - - // Compare JNI — the Oracle config includes types accessed FROM native code too, - // which static analysis can't fully cover. Verify the gap report works. - val report = ResultComparator.compareJni(analyzerResult, oracleResult) - assertNotNull(report) - - // Should have at least some detected or partially detected types (classes with ACC_NATIVE) - val found = report.detected.size + report.partiallyDetected.size - assertTrue( - "Should detect or partially detect at least some Oracle JNI types, found: $found", - found > 0, - ) - - // NOT_DETECTABLE entries should have reasons - for (entry in report.notDetectable) { - assertNotNull("NOT_DETECTABLE entry ${entry.type} should have reason", entry.reason) - } - } - - @Test - fun `logback analysis detects service loader entries`() { - val logbackJar = analysisLibraries.find { it.name.contains("logback-classic") } - assumeTrue("Logback classic JAR not available", logbackJar != null) - - val result = BytecodeAnalyzer.analyzeJar(logbackJar!!) - - assertTrue( - "Expected service loader entries for logback", - result.serviceLoaderEntries.isNotEmpty(), - ) - - // All service implementations should have () method - for (entry in result.serviceLoaderEntries) { - assertTrue( - "Service ${entry.type} should have no-arg constructor", - entry.methods.any { it.name == "" && it.parameterTypes.isEmpty() }, - ) - } - } - - @Test - fun `gap report correctly categorizes entries`() { - assumeTrue("No analysis libraries available", analysisLibraries.isNotEmpty()) - assumeTrue("Oracle repo ZIP not available", oracleRepoZip != null) - - val jnaJar = analysisLibraries.find { it.name.contains("jna-") } - assumeTrue("JNA JAR not available", jnaJar != null) - - val analyzerResult = BytecodeAnalyzer.analyzeJar(jnaJar!!) - val oracleDir = NativeMethodDetectorTest.extractOracleRepoDir(oracleRepoZip!!, "net.java.dev.jna", "jna") - assumeTrue("Oracle metadata for JNA not found", oracleDir != null) - - val oracleResult = OracleRepoParser.parseMetadataDir(oracleDir!!) - val report = ResultComparator.compare(analyzerResult, oracleResult) - - // Report should have entries in at least some categories - assertFalse("Report should not be empty", report.entries.isEmpty()) - - // Verify report formatting works - val formatted = report.format() - assertTrue("Formatted report should contain summary", formatted.contains("Summary:")) - assertTrue("Formatted report should contain DETECTED count", formatted.contains("DETECTED:")) - - // Each NOT_DETECTABLE entry should have a reason - for (entry in report.notDetectable) { - assertNotNull( - "NOT_DETECTABLE entry ${entry.type} should have a reason", - entry.reason, - ) - assertTrue( - "Reason should not be blank for ${entry.type}", - entry.reason!!.isNotBlank(), - ) - } - } - - @Test - fun `analyzer finds extra entries beyond Oracle baseline`() { - val jnaJar = analysisLibraries.find { it.name.contains("jna-") } - assumeTrue("JNA JAR not available", jnaJar != null) - assumeTrue("Oracle repo ZIP not available", oracleRepoZip != null) - - val analyzerResult = BytecodeAnalyzer.analyzeJar(jnaJar!!) - val oracleDir = NativeMethodDetectorTest.extractOracleRepoDir(oracleRepoZip!!, "net.java.dev.jna", "jna") - assumeTrue("Oracle metadata for JNA not found", oracleDir != null) - - val oracleResult = OracleRepoParser.parseMetadataDir(oracleDir!!) - val report = ResultComparator.compare(analyzerResult, oracleResult) - - // Static analysis should find things the Oracle repo doesn't cover - assertTrue( - "Analyzer should find extra entries beyond Oracle baseline, found ${report.extra.size}", - report.extra.isNotEmpty(), - ) - } - - @Test - fun `AnalysisResult plus operator merges correctly`() { - val r1 = - AnalysisResult( - reflectionEntries = setOf(ReflectionEntry(type = "com.example.A")), - jniEntries = setOf(JniEntry(type = "com.example.B")), - ) - val r2 = - AnalysisResult( - reflectionEntries = setOf(ReflectionEntry(type = "com.example.C")), - resourcePatterns = setOf(ResourcePattern(glob = "some/resource.txt")), - ) - - val merged = r1 + r2 - assertTrue(merged.reflectionEntries.size == 2) - assertTrue(merged.jniEntries.size == 1) - assertTrue(merged.resourcePatterns.size == 1) - } -} diff --git a/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/ClassForNameDetectorTest.kt b/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/ClassForNameDetectorTest.kt deleted file mode 100644 index f9468f30d..000000000 --- a/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/ClassForNameDetectorTest.kt +++ /dev/null @@ -1,77 +0,0 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer - -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors.ClassForNameDetector -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors.isValidClassName -import org.junit.Assert.assertFalse -import org.junit.Assert.assertTrue -import org.junit.Assume.assumeTrue -import org.junit.Test -import java.io.File -import java.util.jar.JarFile - -class ClassForNameDetectorTest { - private val analysisLibraries: List by lazy { - val path = System.getProperty("test.analysis.libraries") ?: "" - path.split(File.pathSeparator).map(::File).filter { it.exists() } - } - - @Test - fun `detects Class forName calls in JNA jar`() { - val jnaJar = analysisLibraries.find { it.name.contains("jna-") } - assumeTrue("JNA JAR not available", jnaJar != null) - - var foundClassForName = false - JarFile(jnaJar!!).use { jar -> - for (entry in jar.entries()) { - if (!entry.name.endsWith(".class")) continue - val bytes = jar.getInputStream(entry).use { it.readBytes() } - val entries = ClassForNameDetector.detect(bytes) - if (entries.isNotEmpty()) { - foundClassForName = true - // All detected entries should have valid class names - for (e in entries) { - assertTrue( - "Detected class name should be valid: ${e.type}", - isValidClassName(e.type), - ) - } - } - } - } - // JNA uses Class.forName extensively - assertTrue("Expected to find Class.forName calls in JNA", foundClassForName) - } - - @Test - fun `detects Class forName calls across all test libraries`() { - assumeTrue("No analysis libraries available", analysisLibraries.isNotEmpty()) - - val allEntries = mutableSetOf() - for (jarFile in analysisLibraries) { - if (!jarFile.name.endsWith(".jar")) continue - val result = BytecodeAnalyzer.analyzeJar(jarFile) - allEntries.addAll(result.reflectionEntries) - } - - assertTrue( - "Expected to find some Class.forName entries across test libraries", - allEntries.isNotEmpty(), - ) - } - - @Test - fun `isValidClassName rejects invalid names`() { - assertFalse(isValidClassName("")) - assertFalse(isValidClassName(" ")) - assertFalse(isValidClassName("hello world")) - assertFalse(isValidClassName("not a class")) - } - - @Test - fun `isValidClassName accepts valid names`() { - assertTrue(isValidClassName("com.example.MyClass")) - assertTrue(isValidClassName("java.lang.String")) - assertTrue(isValidClassName("com.sun.jna.Native")) - assertTrue(isValidClassName("org.slf4j.LoggerFactory")) - } -} diff --git a/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/NativeMethodDetectorTest.kt b/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/NativeMethodDetectorTest.kt deleted file mode 100644 index dbdf3cc66..000000000 --- a/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/NativeMethodDetectorTest.kt +++ /dev/null @@ -1,149 +0,0 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer - -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors.NativeMethodDetector -import org.junit.Assert.assertTrue -import org.junit.Assume.assumeTrue -import org.junit.Test -import java.io.File -import java.util.jar.JarFile - -class NativeMethodDetectorTest { - private val analysisLibraries: List by lazy { - val path = System.getProperty("test.analysis.libraries") ?: "" - path.split(File.pathSeparator).map(::File).filter { it.exists() } - } - - private fun findJar(nameContains: String): File? = analysisLibraries.find { it.name.contains(nameContains) } - - @Test - fun `detects native methods in JNA jar`() { - val jnaJar = findJar("jna-") - assumeTrue("JNA JAR not available", jnaJar != null) - - val result = BytecodeAnalyzer.analyzeJar(jnaJar!!) - val jniTypes = result.jniEntries.map { it.type }.toSet() - - // JNA's Native class is full of native methods - assertTrue( - "Expected com.sun.jna.Native in JNI entries, got: $jniTypes", - jniTypes.contains("com.sun.jna.Native"), - ) - } - - @Test - fun `native method detector finds ACC_NATIVE flag`() { - val jnaJar = findJar("jna-") - assumeTrue("JNA JAR not available", jnaJar != null) - - var foundNativeMethods = false - JarFile(jnaJar!!).use { jar -> - for (entry in jar.entries()) { - if (!entry.name.endsWith(".class")) continue - val bytes = jar.getInputStream(entry).use { it.readBytes() } - val jniEntries = NativeMethodDetector.detect(bytes) - if (jniEntries.isNotEmpty()) { - foundNativeMethods = true - // Verify each entry has at least one method - for (jniEntry in jniEntries) { - assertTrue( - "JNI entry ${jniEntry.type} should have methods", - jniEntry.methods.isNotEmpty(), - ) - } - } - } - } - assertTrue("Should find at least one class with native methods in JNA", foundNativeMethods) - } - - @Test - fun `JNA analysis detects native method classes from Oracle JNI config`() { - val jnaJar = findJar("jna-") - val oracleZip = System.getProperty("test.oracle.repo.zip")?.let { File(it) } - assumeTrue("JNA JAR not available", jnaJar != null) - assumeTrue("Oracle repo ZIP not available", oracleZip != null && oracleZip.exists()) - - val result = BytecodeAnalyzer.analyzeJar(jnaJar!!) - val analyzerJniTypes = result.jniEntries.map { it.type }.toSet() - - val oracleDir = extractOracleRepoDir(oracleZip!!, "net.java.dev.jna", "jna") - assumeTrue("Oracle metadata for JNA not found in repo", oracleDir != null) - - val oracleResult = OracleRepoParser.parseMetadataDir(oracleDir!!) - val oracleJniTypes = oracleResult.jniEntries.map { it.type }.toSet() - - // The Oracle JNI config includes both classes with native methods AND classes - // accessed from native code. The NativeMethodDetector only finds ACC_NATIVE classes. - // Verify we detect a significant subset — at least the classes that declare native methods. - val detected = oracleJniTypes.intersect(analyzerJniTypes) - assertTrue( - "Analyzer should detect at least one Oracle JNI type, detected: $detected", - detected.isNotEmpty(), - ) - assertTrue( - "com.sun.jna.Native should be in both analyzer and Oracle JNI", - "com.sun.jna.Native" in detected, - ) - - // Gap report should categorize the rest as NOT_DETECTABLE - val report = ResultComparator.compareJni(result, oracleResult) - assertTrue( - "Gap report should have entries", - report.entries.isNotEmpty(), - ) - } - - companion object { - fun extractOracleRepoDir( - zipFile: File, - group: String, - artifact: String, - ): File? { - val tempDir = - kotlin.io.path - .createTempDirectory("oracle-repo-") - .toFile() - tempDir.deleteOnExit() - java.util.zip.ZipFile(zipFile).use { zip -> - for (entry in zip.entries()) { - if (entry.isDirectory) continue - val target = File(tempDir, entry.name) - target.parentFile.mkdirs() - zip.getInputStream(entry).use { input -> - target.outputStream().use { output -> input.copyTo(output) } - } - } - } - - // Oracle repo structure: metadata//// - // Find the module directory - return findModuleDir(tempDir, group, artifact) - } - - fun findModuleDir( - repoRoot: File, - group: String, - artifact: String, - ): File? { - // Search for the artifact directory recursively - val candidates = - repoRoot - .walkTopDown() - .filter { it.isDirectory && it.name == artifact && it.parentFile?.name == group } - .toList() - - if (candidates.isEmpty()) return null - - // Return the first version directory that has config files - val moduleDir = candidates.first() - return moduleDir - .listFiles() - ?.filter { it.isDirectory } - ?.firstOrNull { dir -> - dir.listFiles()?.any { - it.name.endsWith("-config.json") || it.name == "reachability-metadata.json" - } == true - } - } - } -} diff --git a/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/OracleRepoCoverageTest.kt b/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/OracleRepoCoverageTest.kt deleted file mode 100644 index 8d8c18a8e..000000000 --- a/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/OracleRepoCoverageTest.kt +++ /dev/null @@ -1,346 +0,0 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer - -import org.junit.Assert.assertTrue -import org.junit.Assert.fail -import org.junit.Assume.assumeTrue -import org.junit.Test -import java.io.File -import java.util.zip.ZipFile - -/** - * Comprehensive test that runs the static bytecode analyzer against every library - * in the Oracle GraalVM Reachability Metadata Repository and compares the results. - * - * Produces a detailed coverage report showing how much reflection/JNI metadata - * the static analyzer can discover compared to the Oracle manually-curated baseline. - */ -class OracleRepoCoverageTest { - private val analysisLibraries: Map by lazy { - val path = System.getProperty("test.analysis.libraries") ?: "" - val jars = path.split(File.pathSeparator).map(::File).filter { it.exists() && it.name.endsWith(".jar") } - jars.associateBy { jarToArtifactKey(it) } - } - - private val oracleRepoZip: File? by lazy { - System.getProperty("test.oracle.repo.zip")?.let { File(it) }?.takeIf { it.exists() } - } - - private fun extractOracleRepo(): Map { - val zipFile = oracleRepoZip ?: return emptyMap() - val tempDir = - kotlin.io.path - .createTempDirectory("oracle-full-repo-") - .toFile() - - ZipFile(zipFile).use { zip -> - for (entry in zip.entries()) { - if (entry.isDirectory) continue - val target = File(tempDir, entry.name) - target.parentFile.mkdirs() - zip.getInputStream(entry).use { input -> - target.outputStream().use { output -> input.copyTo(output) } - } - } - } - - val result = mutableMapOf() - tempDir - .walkTopDown() - .filter { it.name == "index.json" } - .forEach { indexFile -> - val artifactDir = indexFile.parentFile - val artifact = artifactDir.name - val group = artifactDir.parentFile.name - val key = "$group:$artifact" - - val versionDirs = - artifactDir - .listFiles() - ?.filter { it.isDirectory } - ?.filter { dir -> - dir.listFiles()?.any { - it.name.endsWith("-config.json") || it.name == "reachability-metadata.json" - } == true - } ?: emptyList() - - if (versionDirs.isNotEmpty()) { - result[key] = OracleLibraryMeta(group, artifact, versionDirs) - } - } - - return result - } - - private fun mergeOracleMetadata(meta: OracleLibraryMeta): AnalysisResult { - var merged = AnalysisResult() - for (dir in meta.metadataDirs) { - merged = merged + OracleRepoParser.parseMetadataDir(dir) - } - return merged - } - - private fun findMatchingJar(oracleKey: String): File? { - analysisLibraries[oracleKey]?.let { return it } - val artifact = oracleKey.substringAfter(":") - return analysisLibraries.entries - .firstOrNull { it.key.endsWith(":$artifact") } - ?.value - } - - @Test - fun `comprehensive Oracle repo coverage analysis`() { - assumeTrue("Oracle repo ZIP not available", oracleRepoZip != null) - assumeTrue("No analysis libraries available", analysisLibraries.isNotEmpty()) - - val oracleLibraries = extractOracleRepo() - assertTrue("Oracle repo should contain libraries", oracleLibraries.isNotEmpty()) - - val results = mutableListOf() - var matchedCount = 0 - var unmatchedOracle = 0 - - for ((key, oracleMeta) in oracleLibraries.entries.sortedBy { it.key }) { - val jarFile = findMatchingJar(key) - if (jarFile == null) { - unmatchedOracle++ - continue - } - matchedCount++ - - val analyzerResult = BytecodeAnalyzer.analyzeJar(jarFile) - val oracleResult = mergeOracleMetadata(oracleMeta) - val reflReport = ResultComparator.compareReflection(analyzerResult, oracleResult) - val jniReport = ResultComparator.compareJni(analyzerResult, oracleResult) - - results.add( - CoverageRow( - key = key, - oraRef = oracleResult.reflectionEntries.size, - detRef = reflReport.detected.size, - parRef = reflReport.partiallyDetected.size, - noRef = reflReport.notDetectable.size, - oraJni = oracleResult.jniEntries.size, - detJni = jniReport.detected.size, - parJni = jniReport.partiallyDetected.size, - noJni = jniReport.notDetectable.size, - extra = reflReport.extra.size + jniReport.extra.size, - svcLd = analyzerResult.serviceLoaderEntries.size, - resPat = analyzerResult.resourcePatterns.size, - ), - ) - } - - printReport(results, matchedCount, unmatchedOracle, oracleLibraries.size) - - assertTrue( - "Should match at least 30 Oracle repo libraries, but matched only $matchedCount", - matchedCount >= 30, - ) - - val totalExtra = results.sumOf { it.extra } - println("\nTotal EXTRA discoveries: $totalExtra") - } - - @Test - fun `per-library analysis does not crash and produces valid gap reasons`() { - assumeTrue("Oracle repo ZIP not available", oracleRepoZip != null) - assumeTrue("No analysis libraries available", analysisLibraries.isNotEmpty()) - - val oracleLibraries = extractOracleRepo() - val failures = mutableListOf() - - for ((key, oracleMeta) in oracleLibraries) { - val jarFile = findMatchingJar(key) ?: continue - - try { - val analyzerResult = BytecodeAnalyzer.analyzeJar(jarFile) - val oracleResult = mergeOracleMetadata(oracleMeta) - val report = ResultComparator.compare(analyzerResult, oracleResult) - - for (entry in report.notDetectable) { - if (entry.reason.isNullOrBlank()) { - failures.add("$key: NOT_DETECTABLE entry ${entry.type} missing reason") - } - } - } catch (e: Exception) { - failures.add("$key: ${e.javaClass.simpleName}: ${e.message}") - } - } - - if (failures.isNotEmpty()) { - fail("Failures:\n" + failures.joinToString("\n") { " - $it" }) - } - } - - @Test - fun `static analysis finds extra entries beyond Oracle baseline`() { - assumeTrue("Oracle repo ZIP not available", oracleRepoZip != null) - assumeTrue("No analysis libraries available", analysisLibraries.isNotEmpty()) - - val oracleLibraries = extractOracleRepo() - var totalExtra = 0 - - for ((key, oracleMeta) in oracleLibraries) { - val jarFile = findMatchingJar(key) ?: continue - val analyzerResult = BytecodeAnalyzer.analyzeJar(jarFile) - val oracleResult = mergeOracleMetadata(oracleMeta) - val report = ResultComparator.compare(analyzerResult, oracleResult) - totalExtra += report.extra.size - } - - println("Total EXTRA entries found beyond Oracle baseline: $totalExtra") - assertTrue("Static analysis should find extra entries", totalExtra > 0) - } - - @Test - fun `service loader detection covers libraries with META-INF services`() { - assumeTrue("No analysis libraries available", analysisLibraries.isNotEmpty()) - - var librariesWithServices = 0 - var totalServiceEntries = 0 - - for ((_, jarFile) in analysisLibraries) { - val result = BytecodeAnalyzer.analyzeJar(jarFile) - if (result.serviceLoaderEntries.isNotEmpty()) { - librariesWithServices++ - totalServiceEntries += result.serviceLoaderEntries.size - } - } - - println("Libraries with ServiceLoader entries: $librariesWithServices / ${analysisLibraries.size}") - println("Total ServiceLoader implementations: $totalServiceEntries") - assertTrue("Should find ServiceLoader entries", totalServiceEntries > 0) - } - - // ----- report ----- - - private fun printReport( - results: List, - matched: Int, - unmatched: Int, - total: Int, - ) { - val sep = "=".repeat(130) - println(sep) - println("ORACLE REACHABILITY METADATA REPOSITORY — STATIC ANALYZER COVERAGE REPORT") - println(sep) - println("Libraries in Oracle repo: $total | Matched: $matched | Unmatched: $unmatched") - println() - - val header = "%-50s | %5s | %5s | %5s | %5s | %5s | %5s | %5s | %5s | %5s | %5s | %5s | %5s" - println( - header.format( - "Library", - "OraRf", - "DetRf", - "ParRf", - "NoRf", - "Rf%", - "OraJn", - "DetJn", - "ParJn", - "NoJn", - "Extra", - "Svc", - "Res", - ), - ) - println("-".repeat(130)) - - val sorted = results.sortedByDescending { it.oraRef + it.oraJni } - for (r in sorted) { - val refPct = if (r.oraRef == 0) "N/A" else "${(r.detRef + r.parRef) * 100 / r.oraRef}%" - println( - header.format( - r.key.take(50), - r.oraRef, - r.detRef, - r.parRef, - r.noRef, - refPct, - r.oraJni, - r.detJni, - r.parJni, - r.noJni, - r.extra, - r.svcLd, - r.resPat, - ), - ) - } - - println("-".repeat(130)) - - val tOraRef = results.sumOf { it.oraRef } - val tDetRef = results.sumOf { it.detRef } - val tParRef = results.sumOf { it.parRef } - val tNoRef = results.sumOf { it.noRef } - val tOraJni = results.sumOf { it.oraJni } - val tDetJni = results.sumOf { it.detJni } - val tParJni = results.sumOf { it.parJni } - val tNoJni = results.sumOf { it.noJni } - val tExtra = results.sumOf { it.extra } - val tSvc = results.sumOf { it.svcLd } - val tRes = results.sumOf { it.resPat } - val refPctTotal = if (tOraRef == 0) "N/A" else "${(tDetRef + tParRef) * 100 / tOraRef}%" - - println( - header.format( - "TOTAL", - tOraRef, - tDetRef, - tParRef, - tNoRef, - refPctTotal, - tOraJni, - tDetJni, - tParJni, - tNoJni, - tExtra, - tSvc, - tRes, - ), - ) - println(sep) - } - - // ----- data ----- - - private data class OracleLibraryMeta( - val group: String, - val artifact: String, - val metadataDirs: List, - ) - - private data class CoverageRow( - val key: String, - val oraRef: Int, - val detRef: Int, - val parRef: Int, - val noRef: Int, - val oraJni: Int, - val detJni: Int, - val parJni: Int, - val noJni: Int, - val extra: Int, - val svcLd: Int, - val resPat: Int, - ) - - companion object { - /** - * Maps a JAR file to "group:artifact" from the Gradle cache path structure: - * .../group/artifact/version/hash/artifact-version.jar - */ - fun jarToArtifactKey(jar: File): String { - val parts = jar.absolutePath.split(File.separator) - val hashIdx = parts.indexOfLast { it.length == 40 && it.all { c -> c in '0'..'9' || c in 'a'..'f' } } - if (hashIdx >= 4) { - val artifact = parts[hashIdx - 2] - val group = parts[hashIdx - 3] - return "$group:$artifact" - } - return "unknown:${jar.nameWithoutExtension}" - } - } -} diff --git a/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/ReflectionApiDetectorTest.kt b/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/ReflectionApiDetectorTest.kt deleted file mode 100644 index eda4c1629..000000000 --- a/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/ReflectionApiDetectorTest.kt +++ /dev/null @@ -1,48 +0,0 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer - -import org.junit.Assert.assertTrue -import org.junit.Assume.assumeTrue -import org.junit.Test -import java.io.File - -class ReflectionApiDetectorTest { - private val analysisLibraries: List by lazy { - val path = System.getProperty("test.analysis.libraries") ?: "" - path.split(File.pathSeparator).map(::File).filter { it.exists() } - } - - @Test - fun `detects reflection API usage across test libraries`() { - assumeTrue("No analysis libraries available", analysisLibraries.isNotEmpty()) - - val allResults = - analysisLibraries - .filter { it.name.endsWith(".jar") } - .map { BytecodeAnalyzer.analyzeJar(it) } - .fold(AnalysisResult()) { acc, r -> acc + r } - - // Reflection API detection should find some entries across the test libs - // JNA and logback both use reflection extensively - val reflectionEntries = allResults.reflectionEntries - assertTrue( - "Expected to find reflection API entries across test libraries, got ${reflectionEntries.size}", - reflectionEntries.isNotEmpty(), - ) - } - - @Test - fun `detected entries have valid type names`() { - assumeTrue("No analysis libraries available", analysisLibraries.isNotEmpty()) - - for (jarFile in analysisLibraries) { - if (!jarFile.name.endsWith(".jar")) continue - val result = BytecodeAnalyzer.analyzeJar(jarFile) - for (entry in result.reflectionEntries) { - assertTrue( - "Reflection entry type should not be blank: ${entry.type}", - entry.type.isNotBlank(), - ) - } - } - } -} diff --git a/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/ResourceDetectorTest.kt b/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/ResourceDetectorTest.kt deleted file mode 100644 index bdc12c639..000000000 --- a/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/ResourceDetectorTest.kt +++ /dev/null @@ -1,76 +0,0 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer - -import org.junit.Assert.assertTrue -import org.junit.Assume.assumeTrue -import org.junit.Test -import java.io.File - -class ResourceDetectorTest { - private val analysisLibraries: List by lazy { - val path = System.getProperty("test.analysis.libraries") ?: "" - path.split(File.pathSeparator).map(::File).filter { it.exists() } - } - - @Test - fun `detects resource access patterns in logback`() { - val logbackJar = analysisLibraries.find { it.name.contains("logback-classic") } - assumeTrue("Logback classic JAR not available", logbackJar != null) - - val result = BytecodeAnalyzer.analyzeJar(logbackJar!!) - val allResources = result.resourcePatterns - val globs = allResources.mapNotNull { it.glob } - val bundles = allResources.mapNotNull { it.bundle } - - // Logback accesses various resources - assertTrue( - "Expected to find resource patterns in logback, got globs=$globs, bundles=$bundles", - allResources.isNotEmpty(), - ) - } - - @Test - fun `resource patterns have valid paths`() { - assumeTrue("No analysis libraries available", analysisLibraries.isNotEmpty()) - - for (jarFile in analysisLibraries) { - if (!jarFile.name.endsWith(".jar")) continue - val result = BytecodeAnalyzer.analyzeJar(jarFile) - for (pattern in result.resourcePatterns) { - if (pattern.glob != null) { - assertTrue( - "Resource glob should not be blank: ${pattern.glob}", - pattern.glob.isNotBlank(), - ) - // Should not have leading slash (normalized) - assertTrue( - "Resource glob should not start with /: ${pattern.glob}", - !pattern.glob.startsWith("/"), - ) - } - if (pattern.bundle != null) { - assertTrue( - "Bundle name should not be blank: ${pattern.bundle}", - pattern.bundle.isNotBlank(), - ) - } - } - } - } - - @Test - fun `detects resource bundles across test libraries`() { - assumeTrue("No analysis libraries available", analysisLibraries.isNotEmpty()) - - val allResults = - analysisLibraries - .filter { it.name.endsWith(".jar") } - .map { BytecodeAnalyzer.analyzeJar(it) } - .fold(AnalysisResult()) { acc, r -> acc + r } - - // At least some of our test libraries should use resources or bundles - assertTrue( - "Expected to find some resource patterns across test libraries", - allResults.resourcePatterns.isNotEmpty(), - ) - } -} diff --git a/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/ServiceLoaderDetectorTest.kt b/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/ServiceLoaderDetectorTest.kt deleted file mode 100644 index 6789f4489..000000000 --- a/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/ServiceLoaderDetectorTest.kt +++ /dev/null @@ -1,75 +0,0 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer - -import io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer.detectors.ServiceLoaderDetector -import org.junit.Assert.assertFalse -import org.junit.Assert.assertTrue -import org.junit.Assume.assumeTrue -import org.junit.Test -import java.io.File -import java.util.jar.JarFile - -class ServiceLoaderDetectorTest { - private val analysisLibraries: List by lazy { - val path = System.getProperty("test.analysis.libraries") ?: "" - path.split(File.pathSeparator).map(::File).filter { it.exists() } - } - - private fun findJar(nameContains: String): File? = analysisLibraries.find { it.name.contains(nameContains) } - - @Test - fun `detects service providers in logback classic jar`() { - val logbackJar = findJar("logback-classic") - assumeTrue("Logback classic JAR not available", logbackJar != null) - - val result = BytecodeAnalyzer.analyzeJar(logbackJar!!) - val serviceTypes = result.serviceLoaderEntries.map { it.type }.toSet() - - // Logback registers SLF4J service providers - assertTrue( - "Expected to find service loader entries in logback, got: $serviceTypes", - serviceTypes.isNotEmpty(), - ) - } - - @Test - fun `service file parser handles comments and blank lines`() { - val input = - """ - # This is a comment - com.example.ImplA - - # Another comment - com.example.ImplB # inline comment - """.trimIndent().byteInputStream() - - val implementations = ServiceLoaderDetector.parseServiceFile(input) - assertTrue(implementations.contains("com.example.ImplA")) - assertTrue(implementations.contains("com.example.ImplB")) - assertFalse(implementations.any { it.startsWith("#") }) - } - - @Test - fun `service loader detection produces resource patterns`() { - val logbackJar = findJar("logback-classic") - assumeTrue("Logback classic JAR not available", logbackJar != null) - - JarFile(logbackJar!!).use { jar -> - val result = ServiceLoaderDetector.detect(jar) - - // Should produce resource patterns for META-INF/services/ files - val serviceGlobs = result.resourcePatterns.mapNotNull { it.glob } - assertTrue( - "Expected META-INF/services/ resource patterns, got: $serviceGlobs", - serviceGlobs.any { it.startsWith("META-INF/services/") }, - ) - - // Each implementation should have a no-arg constructor entry - for (entry in result.reflectionEntries) { - assertTrue( - "Service implementation ${entry.type} should have () method", - entry.methods.any { it.name == "" && it.parameterTypes.isEmpty() }, - ) - } - } - } -} diff --git a/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/ZayitAnalyzerTest.kt b/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/ZayitAnalyzerTest.kt deleted file mode 100644 index 4571fdd47..000000000 --- a/plugin-build/plugin/src/test/kotlin/io/github/kdroidfilter/nucleus/desktop/application/internal/analyzer/ZayitAnalyzerTest.kt +++ /dev/null @@ -1,258 +0,0 @@ -package io.github.kdroidfilter.nucleus.desktop.application.internal.analyzer - -import org.junit.Assert.assertTrue -import org.junit.Assume.assumeTrue -import org.junit.Test -import java.io.File - -/** - * Real-world integration test: runs the static bytecode analyzer on the Zayit (SeforimApp) - * runtime dependencies and compares against the project's existing reachability-metadata.json. - * - * This validates that the analyzer works on a production Compose Desktop + Lucene + SQLite app. - */ -class ZayitAnalyzerTest { - private val zayitLibraries: List by lazy { - val path = System.getProperty("test.zayit.libraries") ?: "" - path.split(File.pathSeparator).map(::File).filter { it.exists() && it.name.endsWith(".jar") } - } - - private val zayitMetadataDir: File? by lazy { - System.getProperty("test.zayit.metadata.dir")?.let { File(it) }?.takeIf { it.exists() } - } - - @Test - fun `analyzer runs on all Zayit dependencies without errors`() { - assumeTrue("Zayit libraries not available", zayitLibraries.isNotEmpty()) - - val result = BytecodeAnalyzer.analyzeJars(zayitLibraries) - - println("=== ZAYIT STATIC ANALYSIS SUMMARY ===") - println("JARs analyzed: ${zayitLibraries.size}") - println("JNI entries found: ${result.jniEntries.size}") - println("Reflection entries found: ${result.reflectionEntries.size}") - println("ServiceLoader entries: ${result.serviceLoaderEntries.size}") - println("Resource patterns found: ${result.resourcePatterns.size}") - println("Total reflection (all): ${result.allReflectionEntries.size}") - - assertTrue("Should find JNI entries", result.jniEntries.isNotEmpty()) - assertTrue("Should find reflection entries", result.allReflectionEntries.isNotEmpty()) - assertTrue("Should find resource patterns", result.resourcePatterns.isNotEmpty()) - } - - @Test - fun `per-jar analysis breakdown`() { - assumeTrue("Zayit libraries not available", zayitLibraries.isNotEmpty()) - - println() - println("=".repeat(110)) - println("ZAYIT PER-JAR ANALYSIS BREAKDOWN") - println("=".repeat(110)) - - val header = "%-55s | %5s | %5s | %5s | %5s | %5s" - println(header.format("JAR", "JNI", "Refl", "SvcLd", "Res", "CfN")) - println("-".repeat(110)) - - var totalJni = 0 - var totalRefl = 0 - var totalSvc = 0 - var totalRes = 0 - var totalCfn = 0 - - for (jar in zayitLibraries.sortedBy { it.name }) { - val result = BytecodeAnalyzer.analyzeJar(jar) - val jni = result.jniEntries.size - val refl = result.reflectionEntries.size - val svc = result.serviceLoaderEntries.size - val res = result.resourcePatterns.size - val cfn = result.allReflectionEntries.size - refl // ClassForName vs other reflection - - totalJni += jni - totalRefl += refl - totalSvc += svc - totalRes += res - totalCfn += cfn - - if (jni + refl + svc + res > 0) { - println(header.format(jar.name.take(55), jni, refl, svc, res, cfn)) - } - } - - println("-".repeat(110)) - println(header.format("TOTAL", totalJni, totalRefl, totalSvc, totalRes, totalCfn)) - println("=".repeat(110)) - } - - @Test - fun `compare analyzer output with existing Zayit reachability-metadata`() { - assumeTrue("Zayit libraries not available", zayitLibraries.isNotEmpty()) - assumeTrue("Zayit metadata dir not available", zayitMetadataDir != null) - - val metadataFile = File(zayitMetadataDir!!, "reachability-metadata.json") - assumeTrue("reachability-metadata.json not found", metadataFile.exists()) - - // Parse existing metadata - val existingMetadata = OracleRepoParser.parseReachabilityMetadata(metadataFile) - - // Run analyzer on all Zayit JARs - val analyzerResult = BytecodeAnalyzer.analyzeJars(zayitLibraries) - - // Compare reflection - val existingReflTypes = existingMetadata.reflectionEntries.map { it.type }.toSet() - val analyzerReflTypes = analyzerResult.allReflectionEntries.map { it.type }.toSet() - - val coveredByAnalyzer = existingReflTypes.intersect(analyzerReflTypes) - val onlyInExisting = existingReflTypes - analyzerReflTypes - val onlyInAnalyzer = analyzerReflTypes - existingReflTypes - - println() - println("=".repeat(90)) - println("ZAYIT: ANALYZER vs EXISTING reachability-metadata.json") - println("=".repeat(90)) - println() - println("Existing metadata reflection types: ${existingReflTypes.size}") - println("Analyzer-detected reflection types: ${analyzerReflTypes.size}") - println("Overlap (both found): ${coveredByAnalyzer.size}") - println("Only in existing metadata: ${onlyInExisting.size}") - println("Only found by analyzer (NEW): ${onlyInAnalyzer.size}") - - val coveragePct = - if (existingReflTypes.isEmpty()) { - 0 - } else { - coveredByAnalyzer.size * 100 / existingReflTypes.size - } - println("Coverage of existing metadata: $coveragePct%") - - // Show what the analyzer found that the existing metadata doesn't have - if (onlyInAnalyzer.isNotEmpty()) { - println() - println("--- NEW entries found by static analysis (not in existing metadata) ---") - val grouped = onlyInAnalyzer.groupBy { it.substringBeforeLast('.', "unknown") } - for ((pkg, types) in grouped.entries.sortedByDescending { it.value.size }.take(20)) { - println(" $pkg (${types.size} types)") - for (t in types.take(5)) { - println(" - $t") - } - if (types.size > 5) println(" ... and ${types.size - 5} more") - } - } - - // Show types from existing metadata that the analyzer couldn't detect - if (onlyInExisting.isNotEmpty()) { - println() - println("--- Types in existing metadata NOT detected by static analysis ---") - println("(These require the tracing agent or manual configuration)") - val grouped = onlyInExisting.groupBy { it.substringBeforeLast('.', "unknown") } - for ((pkg, types) in grouped.entries.sortedByDescending { it.value.size }.take(20)) { - println(" $pkg (${types.size} types)") - for (t in types.take(5)) { - println(" - $t") - } - if (types.size > 5) println(" ... and ${types.size - 5} more") - } - } - - // Compare JNI - val existingJniTypes = existingMetadata.jniEntries.map { it.type }.toSet() - val analyzerJniTypes = analyzerResult.jniEntries.map { it.type }.toSet() - val jniOverlap = existingJniTypes.intersect(analyzerJniTypes) - val jniNew = analyzerJniTypes - existingJniTypes - - println() - println("--- JNI ---") - println("Existing JNI types: ${existingJniTypes.size}") - println("Analyzer JNI types: ${analyzerJniTypes.size}") - println("Overlap: ${jniOverlap.size}") - println("New JNI discoveries: ${jniNew.size}") - - // Compare resources - val existingResources = existingMetadata.resourcePatterns.mapNotNull { it.glob }.toSet() - val analyzerResources = analyzerResult.resourcePatterns.mapNotNull { it.glob }.toSet() - - println() - println("--- Resources ---") - println("Existing resource globs: ${existingResources.size}") - println("Analyzer resource globs: ${analyzerResources.size}") - println("New resource discoveries: ${(analyzerResources - existingResources).size}") - - // ServiceLoader entries are very important for GraalVM - println() - println("--- ServiceLoader ---") - println("ServiceLoader implementations found: ${analyzerResult.serviceLoaderEntries.size}") - for (entry in analyzerResult.serviceLoaderEntries.sortedBy { it.type }) { - println(" ${entry.type}") - } - - println() - println("=".repeat(90)) - } - - @Test - fun `Lucene reflection detection`() { - assumeTrue("Zayit libraries not available", zayitLibraries.isNotEmpty()) - - val luceneJars = zayitLibraries.filter { it.name.startsWith("lucene-") } - assumeTrue("No Lucene JARs found", luceneJars.isNotEmpty()) - - val result = BytecodeAnalyzer.analyzeJars(luceneJars) - - println() - println("=== LUCENE ANALYSIS ===") - println("JARs: ${luceneJars.map { it.name }}") - println("Reflection entries: ${result.reflectionEntries.size}") - println("ServiceLoader entries: ${result.serviceLoaderEntries.size}") - println("Resource patterns: ${result.resourcePatterns.size}") - - // Lucene uses ServiceLoader extensively for codecs, analyzers, etc. - assertTrue( - "Lucene should have ServiceLoader entries (codecs, analyzers)", - result.serviceLoaderEntries.isNotEmpty(), - ) - - // Show Lucene service implementations - println() - println("Lucene ServiceLoader implementations:") - for (entry in result.serviceLoaderEntries.sortedBy { it.type }) { - println(" ${entry.type}") - } - - println() - println("Lucene reflection entries:") - for (entry in result.reflectionEntries.sortedBy { it.type }) { - val details = mutableListOf() - if (entry.methods.isNotEmpty()) details.add("methods=${entry.methods.map { it.name }}") - if (entry.fields.isNotEmpty()) details.add("fields=${entry.fields}") - println(" ${entry.type} ${if (details.isNotEmpty()) details.joinToString() else ""}") - } - } - - @Test - fun `SQLite and JDBC reflection detection`() { - assumeTrue("Zayit libraries not available", zayitLibraries.isNotEmpty()) - - val sqliteJars = - zayitLibraries.filter { - it.name.contains("sqlite") || it.name.contains("sqldelight") || it.name.contains("jdbc") - } - assumeTrue("No SQLite/JDBC JARs found", sqliteJars.isNotEmpty()) - - val result = BytecodeAnalyzer.analyzeJars(sqliteJars) - - println() - println("=== SQLITE/JDBC ANALYSIS ===") - println("JARs: ${sqliteJars.map { it.name }}") - println("JNI entries: ${result.jniEntries.size}") - println("Reflection entries: ${result.reflectionEntries.size}") - println("ServiceLoader entries: ${result.serviceLoaderEntries.size}") - - // SQLite JDBC uses JNI for native SQLite - if (result.jniEntries.isNotEmpty()) { - println() - println("SQLite JNI entries:") - for (entry in result.jniEntries.sortedBy { it.type }) { - println(" ${entry.type} (${entry.methods.size} native methods)") - } - } - } -} diff --git a/sample-cmp/build.gradle.kts b/sample-cmp/build.gradle.kts index c6a864c18..808b8cf44 100644 --- a/sample-cmp/build.gradle.kts +++ b/sample-cmp/build.gradle.kts @@ -5,7 +5,7 @@ plugins { alias(libs.plugins.androidApplication) alias(libs.plugins.jetbrainsCompose) alias(libs.plugins.kotlinComposePlugin) - id("io.github.kdroidfilter.nucleus") + id("dev.nucleusframework.nucleus") } kotlin { diff --git a/sample-cmp/config/ktlint/baseline.xml b/sample-cmp/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/sample-cmp/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/sample-jni/build.gradle.kts b/sample-jni/build.gradle.kts index 4ecffdb82..8e945de0e 100644 --- a/sample-jni/build.gradle.kts +++ b/sample-jni/build.gradle.kts @@ -1,11 +1,11 @@ -import io.github.kdroidfilter.nucleus.desktop.application.dsl.TargetFormat +import dev.nucleusframework.nucleus.desktop.application.dsl.TargetFormat import org.jetbrains.kotlin.gradle.dsl.JvmTarget plugins { kotlin("jvm") alias(libs.plugins.kotlinComposePlugin) alias(libs.plugins.jetbrainsCompose) - id("io.github.kdroidfilter.nucleus") + id("dev.nucleusframework.nucleus") } dependencies { @@ -29,7 +29,7 @@ kotlin { } nucleus.application { - mainClass = "io.github.kdroidfilter.samplejni.MainKt" + mainClass = "dev.nucleusframework.samplejni.MainKt" nativeDistributions { targetFormats(TargetFormat.Dmg) diff --git a/sample-jni/config/ktlint/baseline.xml b/sample-jni/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/sample-jni/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/sample-jni/detekt-baseline.xml b/sample-jni/detekt-baseline.xml new file mode 100644 index 000000000..16c6fa90e --- /dev/null +++ b/sample-jni/detekt-baseline.xml @@ -0,0 +1,19 @@ + + + + + LongMethod:Main.kt:fun main + MagicNumber:ActionsTab.kt:0xFF7A8088 + MagicNumber:ActionsTab.kt:0xFF8AB4FF + MagicNumber:ActionsTab.kt:0xFFFF7777 + MagicNumber:ActionsTab.kt:2_000 + MagicNumber:Main.kt:0xFF0F1115 + MagicNumber:Main.kt:0xFF15181D + MagicNumber:Main.kt:0xFF1A1D24 + MagicNumber:Main.kt:0xFF34D399 + MagicNumber:Main.kt:0xFF6B7280 + MagicNumber:Main.kt:0xFF8AB4FF + MagicNumber:Main.kt:0xFFA0A4B0 + MagicNumber:Main.kt:0xFFE6E6E6 + + diff --git a/sample-jni/src/main/kotlin/io/github/kdroidfilter/samplejni/ActionsTab.kt b/sample-jni/src/main/kotlin/dev/nucleusframework/samplejni/ActionsTab.kt similarity index 97% rename from sample-jni/src/main/kotlin/io/github/kdroidfilter/samplejni/ActionsTab.kt rename to sample-jni/src/main/kotlin/dev/nucleusframework/samplejni/ActionsTab.kt index 7318a0785..963b26142 100644 --- a/sample-jni/src/main/kotlin/io/github/kdroidfilter/samplejni/ActionsTab.kt +++ b/sample-jni/src/main/kotlin/dev/nucleusframework/samplejni/ActionsTab.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.samplejni +package dev.nucleusframework.samplejni import androidx.compose.foundation.background import androidx.compose.foundation.border @@ -24,7 +24,7 @@ import androidx.compose.ui.text.TextStyle import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp -import io.github.kdroidfilter.nucleus.application.NucleusWindow +import dev.nucleusframework.nucleus.application.NucleusWindow @Composable fun ActionsTab( diff --git a/sample-jni/src/main/kotlin/io/github/kdroidfilter/samplejni/Main.kt b/sample-jni/src/main/kotlin/dev/nucleusframework/samplejni/Main.kt similarity index 88% rename from sample-jni/src/main/kotlin/io/github/kdroidfilter/samplejni/Main.kt rename to sample-jni/src/main/kotlin/dev/nucleusframework/samplejni/Main.kt index b55e19287..84d22fd94 100644 --- a/sample-jni/src/main/kotlin/io/github/kdroidfilter/samplejni/Main.kt +++ b/sample-jni/src/main/kotlin/dev/nucleusframework/samplejni/Main.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.samplejni +package dev.nucleusframework.samplejni import androidx.compose.foundation.background import androidx.compose.foundation.border @@ -28,22 +28,22 @@ import androidx.compose.ui.unit.DpSize import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import androidx.compose.ui.window.rememberWindowState -import io.github.kdroidfilter.nucleus.application.DecoratedWindow -import io.github.kdroidfilter.nucleus.application.NucleusBackend -import io.github.kdroidfilter.nucleus.application.nucleusApplication -import io.github.kdroidfilter.nucleus.window.NucleusDecoratedWindowTheme -import io.github.kdroidfilter.nucleus.window.TitleBar -import io.github.kdroidfilter.nucleus.window.macOSLargeCornerRadius -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 io.github.kdroidfilter.sampleshared.EventsTab -import io.github.kdroidfilter.sampleshared.FancyDemo -import io.github.kdroidfilter.sampleshared.PALETTE -import io.github.kdroidfilter.sampleshared.ScrollTab -import io.github.kdroidfilter.sampleshared.Tab -import io.github.kdroidfilter.sampleshared.TabBar -import io.github.kdroidfilter.sampleshared.logEvent +import dev.nucleusframework.nucleus.application.DecoratedWindow +import dev.nucleusframework.nucleus.application.NucleusBackend +import dev.nucleusframework.nucleus.application.nucleusApplication +import dev.nucleusframework.nucleus.window.NucleusDecoratedWindowTheme +import dev.nucleusframework.nucleus.window.TitleBar +import dev.nucleusframework.nucleus.window.macOSLargeCornerRadius +import dev.nucleusframework.nucleus.window.styling.TitleBarColors +import dev.nucleusframework.nucleus.window.styling.TitleBarMetrics +import dev.nucleusframework.nucleus.window.styling.TitleBarStyle +import dev.nucleusframework.sampleshared.EventsTab +import dev.nucleusframework.sampleshared.FancyDemo +import dev.nucleusframework.sampleshared.PALETTE +import dev.nucleusframework.sampleshared.ScrollTab +import dev.nucleusframework.sampleshared.Tab +import dev.nucleusframework.sampleshared.TabBar +import dev.nucleusframework.sampleshared.logEvent fun main() = nucleusApplication(backend = NucleusBackend.Awt) { diff --git a/sample-shared/config/ktlint/baseline.xml b/sample-shared/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/sample-shared/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/sample-shared/detekt-baseline.xml b/sample-shared/detekt-baseline.xml new file mode 100644 index 000000000..479442931 --- /dev/null +++ b/sample-shared/detekt-baseline.xml @@ -0,0 +1,66 @@ + + + + + LongMethod:A11yTab.kt:@Composable fun A11yTab + LongMethod:ComplexTab.kt:@Composable private fun TodoListSection + MagicNumber:A11yTab.kt:0.5f + MagicNumber:A11yTab.kt:0xFF11151B + MagicNumber:A11yTab.kt:0xFF12141A + MagicNumber:A11yTab.kt:0xFF1F2937 + MagicNumber:A11yTab.kt:0xFF34D399 + MagicNumber:A11yTab.kt:0xFF374151 + MagicNumber:A11yTab.kt:0xFF6B7280 + MagicNumber:A11yTab.kt:0xFF8AB4FF + MagicNumber:A11yTab.kt:0xFF9CA3AF + MagicNumber:A11yTab.kt:0xFFCBD5E1 + MagicNumber:A11yTab.kt:0xFFE6E6E6 + MagicNumber:A11yTab.kt:0xFFEF4444 + MagicNumber:A11yTab.kt:0xFFF59E0B + MagicNumber:A11yTab.kt:100 + MagicNumber:A11yTab.kt:1000 + MagicNumber:Common.kt:0xFF15181D + MagicNumber:Common.kt:0xFF8AB4FF + MagicNumber:Common.kt:0xFFA0A4B0 + MagicNumber:Common.kt:200 + MagicNumber:ComplexTab.kt:0.03f + MagicNumber:ComplexTab.kt:0xFF11151B + MagicNumber:ComplexTab.kt:0xFF12141A + MagicNumber:ComplexTab.kt:0xFF1A1F2A + MagicNumber:ComplexTab.kt:0xFF1F2937 + MagicNumber:ComplexTab.kt:0xFF34D399 + MagicNumber:ComplexTab.kt:0xFF374151 + MagicNumber:ComplexTab.kt:0xFF6B7280 + MagicNumber:ComplexTab.kt:0xFF8AB4FF + MagicNumber:ComplexTab.kt:0xFF9CA3AF + MagicNumber:ComplexTab.kt:0xFFCBD5E1 + MagicNumber:ComplexTab.kt:0xFFE6E6E6 + MagicNumber:ComplexTab.kt:100 + MagicNumber:ComplexTab.kt:3L + MagicNumber:ComplexTab.kt:4L + MagicNumber:EventsTab.kt:0xFF7A8088 + MagicNumber:EventsTab.kt:0xFFE6E6E6 + MagicNumber:FancyDemo.kt:0.27f + MagicNumber:FancyDemo.kt:0.42f + MagicNumber:FancyDemo.kt:0.5f + MagicNumber:FancyDemo.kt:0xFF06B6D4 + MagicNumber:FancyDemo.kt:0xFF07080B + MagicNumber:FancyDemo.kt:0xFF6366F1 + MagicNumber:FancyDemo.kt:0xFF8AB4FF + MagicNumber:FancyDemo.kt:0xFFB7B9C4 + MagicNumber:FancyDemo.kt:0xFFEC4899 + MagicNumber:FancyDemo.kt:0xFFF59E0B + MagicNumber:FancyDemo.kt:0xFFF5F5FA + MagicNumber:FancyDemo.kt:1.3f + MagicNumber:ScrollTab.kt:0xFFE6E6E6 + MagicNumber:ScrollTab.kt:200 + MagicNumber:ZoomTab.kt:0xFF0F1115 + MagicNumber:ZoomTab.kt:0xFF15181D + MagicNumber:ZoomTab.kt:0xFF34D399 + MagicNumber:ZoomTab.kt:0xFF8AB4FF + MagicNumber:ZoomTab.kt:0xFF8B5CF6 + MagicNumber:ZoomTab.kt:0xFFA0A4B0 + MagicNumber:ZoomTab.kt:0xFFE6E6E6 + MatchingDeclarationName:Common.kt:Tab + + diff --git a/sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/A11yTab.kt b/sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/A11yTab.kt similarity index 99% rename from sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/A11yTab.kt rename to sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/A11yTab.kt index 238895ea6..7a877fad3 100644 --- a/sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/A11yTab.kt +++ b/sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/A11yTab.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.sampleshared +package dev.nucleusframework.sampleshared import androidx.compose.foundation.background import androidx.compose.foundation.border diff --git a/sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/Common.kt b/sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/Common.kt similarity index 98% rename from sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/Common.kt rename to sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/Common.kt index 759bede53..b4c8d3fd7 100644 --- a/sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/Common.kt +++ b/sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/Common.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.sampleshared +package dev.nucleusframework.sampleshared import androidx.compose.foundation.background import androidx.compose.foundation.clickable diff --git a/sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/ComplexTab.kt b/sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/ComplexTab.kt similarity index 99% rename from sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/ComplexTab.kt rename to sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/ComplexTab.kt index e7c7c7a1a..f00899808 100644 --- a/sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/ComplexTab.kt +++ b/sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/ComplexTab.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.sampleshared +package dev.nucleusframework.sampleshared import androidx.compose.foundation.background import androidx.compose.foundation.border diff --git a/sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/EventsTab.kt b/sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/EventsTab.kt similarity index 98% rename from sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/EventsTab.kt rename to sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/EventsTab.kt index a1694fb2b..b422ff7be 100644 --- a/sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/EventsTab.kt +++ b/sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/EventsTab.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.sampleshared +package dev.nucleusframework.sampleshared import androidx.compose.foundation.background import androidx.compose.foundation.layout.Box diff --git a/sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/FancyDemo.kt b/sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/FancyDemo.kt similarity index 99% rename from sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/FancyDemo.kt rename to sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/FancyDemo.kt index 1a489afa2..9e4734642 100644 --- a/sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/FancyDemo.kt +++ b/sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/FancyDemo.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.sampleshared +package dev.nucleusframework.sampleshared import androidx.compose.animation.core.LinearEasing import androidx.compose.animation.core.animateFloat diff --git a/sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/ScrollTab.kt b/sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/ScrollTab.kt similarity index 98% rename from sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/ScrollTab.kt rename to sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/ScrollTab.kt index 2d4c131ad..232ce8788 100644 --- a/sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/ScrollTab.kt +++ b/sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/ScrollTab.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.sampleshared +package dev.nucleusframework.sampleshared import androidx.compose.foundation.VerticalScrollbar import androidx.compose.foundation.background diff --git a/sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/ZoomTab.kt b/sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/ZoomTab.kt similarity index 99% rename from sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/ZoomTab.kt rename to sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/ZoomTab.kt index d30c788b0..64de6f2da 100644 --- a/sample-shared/src/main/kotlin/io/github/kdroidfilter/sampleshared/ZoomTab.kt +++ b/sample-shared/src/main/kotlin/dev/nucleusframework/sampleshared/ZoomTab.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.sampleshared +package dev.nucleusframework.sampleshared import androidx.compose.foundation.background import androidx.compose.foundation.clickable diff --git a/sample-tao/build.gradle.kts b/sample-tao/build.gradle.kts index 4076bf591..3fe1036c4 100644 --- a/sample-tao/build.gradle.kts +++ b/sample-tao/build.gradle.kts @@ -1,12 +1,12 @@ -import io.github.kdroidfilter.nucleus.desktop.application.dsl.CompressionLevel -import io.github.kdroidfilter.nucleus.desktop.application.dsl.TargetFormat +import dev.nucleusframework.nucleus.desktop.application.dsl.CompressionLevel +import dev.nucleusframework.nucleus.desktop.application.dsl.TargetFormat import org.jetbrains.kotlin.gradle.dsl.JvmTarget plugins { kotlin("jvm") alias(libs.plugins.kotlinComposePlugin) alias(libs.plugins.jetbrainsCompose) - id("io.github.kdroidfilter.nucleus") + id("dev.nucleusframework.nucleus") } dependencies { @@ -42,7 +42,7 @@ tasks.withType().configureEach { } nucleus.application { - mainClass = "io.github.kdroidfilter.sampletao.MainKt" + mainClass = "dev.nucleusframework.sampletao.MainKt" // NOTE: -XstartOnFirstThread is intentionally NOT in `jvmArgs` here. The // Nucleus plugin forwards `jvmArgs` to native-image too, where the flag @@ -72,7 +72,7 @@ nucleus.application { packageVersion = "1.0.0" macOS { - bundleID = "io.github.kdroidfilter.sampletao" + bundleID = "dev.nucleusframework.sampletao" // macOsSdkVersion defaults to "26.0" in the Nucleus plugin — vtool // patches the binary's loader command so macOS 26 enables the // Liquid-Glass / large-corner-radius treatment automatically. diff --git a/sample-tao/config/ktlint/baseline.xml b/sample-tao/config/ktlint/baseline.xml new file mode 100644 index 000000000..7c5b1deb0 --- /dev/null +++ b/sample-tao/config/ktlint/baseline.xml @@ -0,0 +1,356 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sample-tao/detekt-baseline.xml b/sample-tao/detekt-baseline.xml new file mode 100644 index 000000000..4df3f6f5f --- /dev/null +++ b/sample-tao/detekt-baseline.xml @@ -0,0 +1,50 @@ + + + + + CyclomaticComplexMethod:Main.kt:private fun runApp + EmptyFunctionBlock:WebViewTab.kt:<no name provided>${} + LongMethod:ActionsTab.kt:@Composable fun ActionsTab + LongMethod:Main.kt:private fun runApp + MagicNumber:ActionsTab.kt:0xFF0F1115 + MagicNumber:ActionsTab.kt:0xFF7A8088 + MagicNumber:ActionsTab.kt:0xFF8AB4FF + MagicNumber:ActionsTab.kt:0xFFB0B5BD + MagicNumber:ActionsTab.kt:0xFFB7B9C4 + MagicNumber:ActionsTab.kt:0xFFFF7777 + MagicNumber:ActionsTab.kt:2_000 + MagicNumber:Main.kt:0xFF0F1115 + MagicNumber:Main.kt:0xFF15171C + MagicNumber:Main.kt:0xFF15181D + MagicNumber:Main.kt:0xFF1A1D24 + MagicNumber:Main.kt:0xFF1F2630 + MagicNumber:Main.kt:0xFF334155 + MagicNumber:Main.kt:0xFF34D399 + MagicNumber:Main.kt:0xFF3B82F6 + MagicNumber:Main.kt:0xFF6B7280 + MagicNumber:Main.kt:0xFF8AB4FF + MagicNumber:Main.kt:0xFF8B5CF6 + MagicNumber:Main.kt:0xFFA0A4B0 + MagicNumber:Main.kt:0xFFE6E6E6 + MagicNumber:SwiftUITab.kt:0.55f + MagicNumber:SwiftUITab.kt:0xCC0F172A + MagicNumber:SwiftUITab.kt:0xFF0F1115 + MagicNumber:SwiftUITab.kt:0xFFE6E6E6 + MagicNumber:WebViewTab.kt:0.3f + MagicNumber:WebViewTab.kt:0.4f + MagicNumber:WebViewTab.kt:0x4080D8FF + MagicNumber:WebViewTab.kt:0xCC0F172A + MagicNumber:WebViewTab.kt:0xFF0F1115 + MagicNumber:WebViewTab.kt:0xFF60A5FA + MagicNumber:WebViewTab.kt:0xFFE6E6E6 + MagicNumber:WebViewTab.kt:120L + MaxLineLength:Main.kt:. + MaxLineLength:Main.kt:<no name provided>$private val flavors = arrayOf(java.awt.datatransfer.DataFlavor.javaFileListFlavor) + TooGenericExceptionCaught:SampleSwiftUIBridge.kt:SampleSwiftUIBridge$t: Throwable + TooManyFunctions:SampleWebViewWindowsBridge.kt:SampleWebViewWindowsBridge + WildcardImport:Main.kt:import androidx.compose.foundation.layout.* + WildcardImport:Main.kt:import androidx.compose.runtime.* + WildcardImport:Main.kt:import androidx.compose.ui.input.key.* + WildcardImport:Main.kt:import dev.nucleusframework.sampleshared.* + + diff --git a/sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/ActionsTab.kt b/sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/ActionsTab.kt similarity index 99% rename from sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/ActionsTab.kt rename to sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/ActionsTab.kt index 81a0e42f3..2e4088165 100644 --- a/sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/ActionsTab.kt +++ b/sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/ActionsTab.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.sampletao +package dev.nucleusframework.sampletao import androidx.compose.foundation.background import androidx.compose.foundation.border @@ -34,7 +34,7 @@ import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import androidx.compose.ui.window.WindowPlacement -import io.github.kdroidfilter.nucleus.window.tao.TaoWindow +import dev.nucleusframework.nucleus.window.tao.TaoWindow @Composable fun ActionsTab( diff --git a/sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/Main.kt b/sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/Main.kt similarity index 94% rename from sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/Main.kt rename to sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/Main.kt index 3205ac283..201e1a5c6 100644 --- a/sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/Main.kt +++ b/sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/Main.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.sampletao +package dev.nucleusframework.sampletao import androidx.compose.foundation.ExperimentalFoundationApi import androidx.compose.foundation.background @@ -30,17 +30,17 @@ import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import androidx.compose.ui.window.rememberWindowState import java.awt.datatransfer.StringSelection -import io.github.kdroidfilter.nucleus.application.DecoratedWindow -import io.github.kdroidfilter.nucleus.application.NucleusBackend -import io.github.kdroidfilter.nucleus.application.nucleusApplication -import io.github.kdroidfilter.nucleus.graalvm.GraalVmInitializer -import io.github.kdroidfilter.nucleus.window.NucleusDecoratedWindowTheme -import io.github.kdroidfilter.nucleus.window.TitleBar -import io.github.kdroidfilter.nucleus.window.macOSLargeCornerRadius -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 io.github.kdroidfilter.sampleshared.* +import dev.nucleusframework.nucleus.application.DecoratedWindow +import dev.nucleusframework.nucleus.application.NucleusBackend +import dev.nucleusframework.nucleus.application.nucleusApplication +import dev.nucleusframework.nucleus.graalvm.GraalVmInitializer +import dev.nucleusframework.nucleus.window.NucleusDecoratedWindowTheme +import dev.nucleusframework.nucleus.window.TitleBar +import dev.nucleusframework.nucleus.window.macOSLargeCornerRadius +import dev.nucleusframework.nucleus.window.styling.TitleBarColors +import dev.nucleusframework.nucleus.window.styling.TitleBarMetrics +import dev.nucleusframework.nucleus.window.styling.TitleBarStyle +import dev.nucleusframework.sampleshared.* fun main() { GraalVmInitializer.initialize() @@ -50,7 +50,7 @@ fun main() { @OptIn(ExperimentalFoundationApi::class, ExperimentalComposeUiApi::class) @Composable private fun DnDStage0Banner(onLog: (String) -> Unit) { - val diag = io.github.kdroidfilter.nucleus.window.tao.TaoDnDDiagnostics + val diag = dev.nucleusframework.nucleus.window.tao.TaoDnDDiagnostics var dropCount by remember { mutableStateOf(0) } var lastDrop by remember { mutableStateOf(null) } val dropTarget = remember { diff --git a/sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/SampleSwiftUIBridge.kt b/sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/SampleSwiftUIBridge.kt similarity index 97% rename from sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/SampleSwiftUIBridge.kt rename to sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/SampleSwiftUIBridge.kt index 26c39942c..c851a0cca 100644 --- a/sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/SampleSwiftUIBridge.kt +++ b/sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/SampleSwiftUIBridge.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.sampletao +package dev.nucleusframework.sampletao import java.io.File import java.lang.foreign.Arena @@ -22,7 +22,7 @@ import kotlin.io.path.Path * * The Swift handle pointer is tracked as an opaque [MemorySegment]; the * `NSView*` pointer is exposed as a `Long` so it slots straight into - * [io.github.kdroidfilter.nucleus.window.tao.NucleusPlatformView.NsView] + * [dev.nucleusframework.nucleus.window.tao.NucleusPlatformView.NsView] * without further conversion. */ internal object SampleSwiftUIBridge { diff --git a/sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/SampleWebViewBridge.kt b/sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/SampleWebViewBridge.kt similarity index 88% rename from sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/SampleWebViewBridge.kt rename to sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/SampleWebViewBridge.kt index d45c74b0b..c7fea70ba 100644 --- a/sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/SampleWebViewBridge.kt +++ b/sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/SampleWebViewBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.sampletao +package dev.nucleusframework.sampletao -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader internal object SampleWebViewBridge { private const val LIBRARY_NAME = "sample_tao_webview" diff --git a/sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/SampleWebViewController.kt b/sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/SampleWebViewController.kt similarity index 97% rename from sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/SampleWebViewController.kt rename to sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/SampleWebViewController.kt index 074b87a75..5cf7fa626 100644 --- a/sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/SampleWebViewController.kt +++ b/sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/SampleWebViewController.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.sampletao +package dev.nucleusframework.sampletao -import io.github.kdroidfilter.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.core.runtime.Platform /** * Backend-agnostic façade over the macOS WKWebView and Linux diff --git a/sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/SampleWebViewLinuxBridge.kt b/sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/SampleWebViewLinuxBridge.kt similarity index 91% rename from sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/SampleWebViewLinuxBridge.kt rename to sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/SampleWebViewLinuxBridge.kt index 986b4fab9..3c39a2541 100644 --- a/sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/SampleWebViewLinuxBridge.kt +++ b/sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/SampleWebViewLinuxBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.sampletao +package dev.nucleusframework.sampletao -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader /** * JNI bridge to `linux/sample_webview.c`. Linux equivalent of the diff --git a/sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/SampleWebViewWindowsBridge.kt b/sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/SampleWebViewWindowsBridge.kt similarity index 96% rename from sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/SampleWebViewWindowsBridge.kt rename to sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/SampleWebViewWindowsBridge.kt index c0c2a25a8..6b3c0baea 100644 --- a/sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/SampleWebViewWindowsBridge.kt +++ b/sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/SampleWebViewWindowsBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.sampletao +package dev.nucleusframework.sampletao -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader /** * JNI bridge to the C++ WebView2 wrapper at diff --git a/sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/SwiftUITab.kt b/sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/SwiftUITab.kt similarity index 95% rename from sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/SwiftUITab.kt rename to sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/SwiftUITab.kt index 8fff82010..49bcf2384 100644 --- a/sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/SwiftUITab.kt +++ b/sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/SwiftUITab.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.sampletao +package dev.nucleusframework.sampletao import androidx.compose.foundation.background import androidx.compose.foundation.clickable @@ -26,10 +26,10 @@ import androidx.compose.ui.text.TextStyle import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.window.tao.NativeView -import io.github.kdroidfilter.nucleus.window.tao.NucleusPlatformView -import io.github.kdroidfilter.nucleus.window.tao.consumeOverlayPointerEvents +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.window.tao.NativeView +import dev.nucleusframework.nucleus.window.tao.NucleusPlatformView +import dev.nucleusframework.nucleus.window.tao.consumeOverlayPointerEvents import java.lang.foreign.MemorySegment /** diff --git a/sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/WebViewTab.kt b/sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/WebViewTab.kt similarity index 97% rename from sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/WebViewTab.kt rename to sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/WebViewTab.kt index 1e0739992..e66eca246 100644 --- a/sample-tao/src/main/kotlin/io/github/kdroidfilter/sampletao/WebViewTab.kt +++ b/sample-tao/src/main/kotlin/dev/nucleusframework/sampletao/WebViewTab.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.sampletao +package dev.nucleusframework.sampletao import androidx.compose.animation.core.LinearEasing import androidx.compose.animation.core.RepeatMode @@ -47,11 +47,11 @@ import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.input.ImeAction import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.window.tao.LocalTaoWindow -import io.github.kdroidfilter.nucleus.window.tao.NativeView -import io.github.kdroidfilter.nucleus.window.tao.NucleusPlatformView -import io.github.kdroidfilter.nucleus.window.tao.consumeOverlayPointerEvents +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.window.tao.LocalTaoWindow +import dev.nucleusframework.nucleus.window.tao.NativeView +import dev.nucleusframework.nucleus.window.tao.NucleusPlatformView +import dev.nucleusframework.nucleus.window.tao.consumeOverlayPointerEvents import kotlinx.coroutines.delay private const val INITIAL_URL = "https://nucleusframework.dev" diff --git a/sample-tao/src/main/native/linux/sample_webview.c b/sample-tao/src/main/native/linux/sample_webview.c index 86fc4c6f9..dae0eac21 100644 --- a/sample-tao/src/main/native/linux/sample_webview.c +++ b/sample-tao/src/main/native/linux/sample_webview.c @@ -23,7 +23,7 @@ #include JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewLinuxBridge_nativeCreate( +Java_dev_nucleusframework_sampletao_SampleWebViewLinuxBridge_nativeCreate( JNIEnv *env, jclass clazz) { (void) env; (void) clazz; @@ -38,7 +38,7 @@ Java_io_github_kdroidfilter_sampletao_SampleWebViewLinuxBridge_nativeCreate( } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewLinuxBridge_nativeRelease( +Java_dev_nucleusframework_sampletao_SampleWebViewLinuxBridge_nativeRelease( JNIEnv *env, jclass clazz, jlong handle) { (void) env; (void) clazz; @@ -58,7 +58,7 @@ Java_io_github_kdroidfilter_sampletao_SampleWebViewLinuxBridge_nativeRelease( } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewLinuxBridge_nativeLoadUrl( +Java_dev_nucleusframework_sampletao_SampleWebViewLinuxBridge_nativeLoadUrl( JNIEnv *env, jclass clazz, jlong handle, jstring url_str) { (void) clazz; @@ -71,7 +71,7 @@ Java_io_github_kdroidfilter_sampletao_SampleWebViewLinuxBridge_nativeLoadUrl( } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewLinuxBridge_nativeGoBack( +Java_dev_nucleusframework_sampletao_SampleWebViewLinuxBridge_nativeGoBack( JNIEnv *env, jclass clazz, jlong handle) { (void) env; (void) clazz; @@ -80,7 +80,7 @@ Java_io_github_kdroidfilter_sampletao_SampleWebViewLinuxBridge_nativeGoBack( } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewLinuxBridge_nativeGoForward( +Java_dev_nucleusframework_sampletao_SampleWebViewLinuxBridge_nativeGoForward( JNIEnv *env, jclass clazz, jlong handle) { (void) env; (void) clazz; @@ -89,7 +89,7 @@ Java_io_github_kdroidfilter_sampletao_SampleWebViewLinuxBridge_nativeGoForward( } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewLinuxBridge_nativeReload( +Java_dev_nucleusframework_sampletao_SampleWebViewLinuxBridge_nativeReload( JNIEnv *env, jclass clazz, jlong handle) { (void) env; (void) clazz; @@ -98,7 +98,7 @@ Java_io_github_kdroidfilter_sampletao_SampleWebViewLinuxBridge_nativeReload( } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewLinuxBridge_nativeCanGoBack( +Java_dev_nucleusframework_sampletao_SampleWebViewLinuxBridge_nativeCanGoBack( JNIEnv *env, jclass clazz, jlong handle) { (void) env; (void) clazz; @@ -108,7 +108,7 @@ Java_io_github_kdroidfilter_sampletao_SampleWebViewLinuxBridge_nativeCanGoBack( } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewLinuxBridge_nativeCanGoForward( +Java_dev_nucleusframework_sampletao_SampleWebViewLinuxBridge_nativeCanGoForward( JNIEnv *env, jclass clazz, jlong handle) { (void) env; (void) clazz; @@ -118,7 +118,7 @@ Java_io_github_kdroidfilter_sampletao_SampleWebViewLinuxBridge_nativeCanGoForwar } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewLinuxBridge_nativeCurrentUrl( +Java_dev_nucleusframework_sampletao_SampleWebViewLinuxBridge_nativeCurrentUrl( JNIEnv *env, jclass clazz, jlong handle) { (void) clazz; @@ -130,7 +130,7 @@ Java_io_github_kdroidfilter_sampletao_SampleWebViewLinuxBridge_nativeCurrentUrl( } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewLinuxBridge_nativeIsLoading( +Java_dev_nucleusframework_sampletao_SampleWebViewLinuxBridge_nativeIsLoading( JNIEnv *env, jclass clazz, jlong handle) { (void) env; (void) clazz; diff --git a/sample-tao/src/main/native/macos/sample_webview.m b/sample-tao/src/main/native/macos/sample_webview.m index eda4d4c13..b026c1862 100644 --- a/sample-tao/src/main/native/macos/sample_webview.m +++ b/sample-tao/src/main/native/macos/sample_webview.m @@ -16,7 +16,7 @@ #include JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewBridge_nativeCreate( +Java_dev_nucleusframework_sampletao_SampleWebViewBridge_nativeCreate( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -28,7 +28,7 @@ } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewBridge_nativeLoadUrl( +Java_dev_nucleusframework_sampletao_SampleWebViewBridge_nativeLoadUrl( JNIEnv *env, jclass clazz, jlong viewPtr, jstring urlStr) { (void)clazz; @@ -46,7 +46,7 @@ } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewBridge_nativeGoBack( +Java_dev_nucleusframework_sampletao_SampleWebViewBridge_nativeGoBack( JNIEnv *env, jclass clazz, jlong viewPtr) { (void)env; (void)clazz; @@ -56,7 +56,7 @@ } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewBridge_nativeGoForward( +Java_dev_nucleusframework_sampletao_SampleWebViewBridge_nativeGoForward( JNIEnv *env, jclass clazz, jlong viewPtr) { (void)env; (void)clazz; @@ -66,7 +66,7 @@ } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewBridge_nativeReload( +Java_dev_nucleusframework_sampletao_SampleWebViewBridge_nativeReload( JNIEnv *env, jclass clazz, jlong viewPtr) { (void)env; (void)clazz; @@ -76,7 +76,7 @@ } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewBridge_nativeCanGoBack( +Java_dev_nucleusframework_sampletao_SampleWebViewBridge_nativeCanGoBack( JNIEnv *env, jclass clazz, jlong viewPtr) { (void)env; (void)clazz; @@ -86,7 +86,7 @@ } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewBridge_nativeCanGoForward( +Java_dev_nucleusframework_sampletao_SampleWebViewBridge_nativeCanGoForward( JNIEnv *env, jclass clazz, jlong viewPtr) { (void)env; (void)clazz; @@ -96,7 +96,7 @@ } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewBridge_nativeIsLoading( +Java_dev_nucleusframework_sampletao_SampleWebViewBridge_nativeIsLoading( JNIEnv *env, jclass clazz, jlong viewPtr) { (void)env; (void)clazz; @@ -106,7 +106,7 @@ } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewBridge_nativeCurrentUrl( +Java_dev_nucleusframework_sampletao_SampleWebViewBridge_nativeCurrentUrl( JNIEnv *env, jclass clazz, jlong viewPtr) { (void)clazz; @@ -118,7 +118,7 @@ } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewBridge_nativeRelease( +Java_dev_nucleusframework_sampletao_SampleWebViewBridge_nativeRelease( JNIEnv *env, jclass clazz, jlong viewPtr) { (void)env; (void)clazz; diff --git a/sample-tao/src/main/native/windows/sample_webview.cpp b/sample-tao/src/main/native/windows/sample_webview.cpp index 55f7154d1..124c9a231 100644 --- a/sample-tao/src/main/native/windows/sample_webview.cpp +++ b/sample-tao/src/main/native/windows/sample_webview.cpp @@ -548,7 +548,7 @@ static WebViewState *lookup(jlong handle) { extern "C" { JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewWindowsBridge_nativeCreate( +Java_dev_nucleusframework_sampletao_SampleWebViewWindowsBridge_nativeCreate( JNIEnv *env, jclass, jlong parentHwnd, jstring initialUrl) { if (parentHwnd == 0) return 0; HWND parent = reinterpret_cast(static_cast(parentHwnd)); @@ -567,7 +567,7 @@ Java_io_github_kdroidfilter_sampletao_SampleWebViewWindowsBridge_nativeCreate( } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewWindowsBridge_nativeRelease( +Java_dev_nucleusframework_sampletao_SampleWebViewWindowsBridge_nativeRelease( JNIEnv *, jclass, jlong handle) { WebViewState *s = nullptr; { @@ -581,7 +581,7 @@ Java_io_github_kdroidfilter_sampletao_SampleWebViewWindowsBridge_nativeRelease( } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewWindowsBridge_nativeLoadUrl( +Java_dev_nucleusframework_sampletao_SampleWebViewWindowsBridge_nativeLoadUrl( JNIEnv *env, jclass, jlong handle, jstring url) { WebViewState *s = lookup(handle); if (!s || !s->webview) return; @@ -590,42 +590,42 @@ Java_io_github_kdroidfilter_sampletao_SampleWebViewWindowsBridge_nativeLoadUrl( } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewWindowsBridge_nativeGoBack( +Java_dev_nucleusframework_sampletao_SampleWebViewWindowsBridge_nativeGoBack( JNIEnv *, jclass, jlong handle) { WebViewState *s = lookup(handle); if (s && s->webview) s->webview->GoBack(); } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewWindowsBridge_nativeGoForward( +Java_dev_nucleusframework_sampletao_SampleWebViewWindowsBridge_nativeGoForward( JNIEnv *, jclass, jlong handle) { WebViewState *s = lookup(handle); if (s && s->webview) s->webview->GoForward(); } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewWindowsBridge_nativeReload( +Java_dev_nucleusframework_sampletao_SampleWebViewWindowsBridge_nativeReload( JNIEnv *, jclass, jlong handle) { WebViewState *s = lookup(handle); if (s && s->webview) s->webview->Reload(); } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewWindowsBridge_nativeCanGoBack( +Java_dev_nucleusframework_sampletao_SampleWebViewWindowsBridge_nativeCanGoBack( JNIEnv *, jclass, jlong handle) { WebViewState *s = lookup(handle); return (s && s->canGoBack.load(std::memory_order_acquire)) ? JNI_TRUE : JNI_FALSE; } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewWindowsBridge_nativeCanGoForward( +Java_dev_nucleusframework_sampletao_SampleWebViewWindowsBridge_nativeCanGoForward( JNIEnv *, jclass, jlong handle) { WebViewState *s = lookup(handle); return (s && s->canGoForward.load(std::memory_order_acquire)) ? JNI_TRUE : JNI_FALSE; } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewWindowsBridge_nativeCurrentUrl( +Java_dev_nucleusframework_sampletao_SampleWebViewWindowsBridge_nativeCurrentUrl( JNIEnv *env, jclass, jlong handle) { WebViewState *s = lookup(handle); if (!s) return nullptr; @@ -638,14 +638,14 @@ Java_io_github_kdroidfilter_sampletao_SampleWebViewWindowsBridge_nativeCurrentUr } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewWindowsBridge_nativeIsLoading( +Java_dev_nucleusframework_sampletao_SampleWebViewWindowsBridge_nativeIsLoading( JNIEnv *, jclass, jlong handle) { WebViewState *s = lookup(handle); return (s && s->isLoading.load(std::memory_order_acquire)) ? JNI_TRUE : JNI_FALSE; } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewWindowsBridge_nativeSetBounds( +Java_dev_nucleusframework_sampletao_SampleWebViewWindowsBridge_nativeSetBounds( JNIEnv *, jclass, jlong handle, jint xPx, jint yPx, jint widthPx, jint heightPx) { WebViewState *s = lookup(handle); if (!s) return; @@ -663,7 +663,7 @@ Java_io_github_kdroidfilter_sampletao_SampleWebViewWindowsBridge_nativeSetBounds } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_sampletao_SampleWebViewWindowsBridge_nativeSetCornerRadius( +Java_dev_nucleusframework_sampletao_SampleWebViewWindowsBridge_nativeSetCornerRadius( JNIEnv *, jclass, jlong handle, jfloat radiusPx) { WebViewState *s = lookup(handle); if (!s) return; diff --git a/scheduler-demo/build.gradle.kts b/scheduler-demo/build.gradle.kts index 5a530ee1c..f520b1c05 100644 --- a/scheduler-demo/build.gradle.kts +++ b/scheduler-demo/build.gradle.kts @@ -1,5 +1,5 @@ -import io.github.kdroidfilter.nucleus.desktop.application.dsl.SigningAlgorithm -import io.github.kdroidfilter.nucleus.desktop.application.dsl.TargetFormat +import dev.nucleusframework.nucleus.desktop.application.dsl.SigningAlgorithm +import dev.nucleusframework.nucleus.desktop.application.dsl.TargetFormat import org.jetbrains.kotlin.gradle.dsl.JvmTarget plugins { @@ -7,7 +7,7 @@ plugins { alias(libs.plugins.kotlinComposePlugin) alias(libs.plugins.jetbrainsCompose) alias(libs.plugins.kotlinxSerialization) - id("io.github.kdroidfilter.nucleus") + id("dev.nucleusframework.nucleus") } dependencies { @@ -59,7 +59,7 @@ nucleus.application { windows { signing { enabled = true - certificateFile.set(rootProject.file("example/packaging/KDroidFilter.pfx")) + certificateFile.set(rootProject.file("example/packaging/NucleusFramework.pfx")) certificatePassword = "ChangeMe-Temp123!" algorithm = SigningAlgorithm.Sha256 timestampServer = "http://timestamp.digicert.com" @@ -74,10 +74,10 @@ nucleus.application { appx { applicationId = "SchedulerDemo" - publisherDisplayName = "KDroidFilter" + publisherDisplayName = "NucleusFramework" displayName = "Scheduler Demo" publisher = "CN=D541E802-6D30-446A-864E-2E8ABD2DAA5E" - identityName = "KDroidFilter.SchedulerDemo" + identityName = "NucleusFramework.SchedulerDemo" languages = listOf("en-US", "fr-FR") } } diff --git a/scheduler-demo/config/ktlint/baseline.xml b/scheduler-demo/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/scheduler-demo/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/scheduler-demo/src/main/kotlin/schedulerdemo/Main.kt b/scheduler-demo/src/main/kotlin/schedulerdemo/Main.kt index 8bf716708..a48882a2e 100644 --- a/scheduler-demo/src/main/kotlin/schedulerdemo/Main.kt +++ b/scheduler-demo/src/main/kotlin/schedulerdemo/Main.kt @@ -3,11 +3,11 @@ package schedulerdemo import androidx.compose.ui.Alignment import androidx.compose.ui.window.WindowPosition import androidx.compose.ui.window.application -import io.github.kdroidfilter.nucleus.darkmodedetector.isSystemInDarkMode -import io.github.kdroidfilter.nucleus.scheduler.DesktopBootReceiver -import io.github.kdroidfilter.nucleus.scheduler.TaskRegistry -import io.github.kdroidfilter.nucleus.window.jewel.JewelDecoratedWindow -import io.github.kdroidfilter.nucleus.window.jewel.JewelTitleBar +import dev.nucleusframework.nucleus.darkmodedetector.isSystemInDarkMode +import dev.nucleusframework.nucleus.scheduler.DesktopBootReceiver +import dev.nucleusframework.nucleus.scheduler.TaskRegistry +import dev.nucleusframework.nucleus.window.jewel.JewelDecoratedWindow +import dev.nucleusframework.nucleus.window.jewel.JewelTitleBar import org.jetbrains.jewel.foundation.theme.JewelTheme import org.jetbrains.jewel.intui.standalone.theme.IntUiTheme import org.jetbrains.jewel.intui.standalone.theme.createDefaultTextStyle diff --git a/scheduler-demo/src/main/kotlin/schedulerdemo/SchedulerDemoView.kt b/scheduler-demo/src/main/kotlin/schedulerdemo/SchedulerDemoView.kt index a884f59f7..fd317cff9 100644 --- a/scheduler-demo/src/main/kotlin/schedulerdemo/SchedulerDemoView.kt +++ b/scheduler-demo/src/main/kotlin/schedulerdemo/SchedulerDemoView.kt @@ -23,10 +23,10 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.unit.dp -import io.github.kdroidfilter.nucleus.scheduler.CronExpression -import io.github.kdroidfilter.nucleus.scheduler.DesktopTaskScheduler -import io.github.kdroidfilter.nucleus.scheduler.TaskInfo -import io.github.kdroidfilter.nucleus.scheduler.TaskRequest +import dev.nucleusframework.nucleus.scheduler.CronExpression +import dev.nucleusframework.nucleus.scheduler.DesktopTaskScheduler +import dev.nucleusframework.nucleus.scheduler.TaskInfo +import dev.nucleusframework.nucleus.scheduler.TaskRequest import org.jetbrains.jewel.ui.component.DefaultButton import org.jetbrains.jewel.ui.component.GroupHeader import org.jetbrains.jewel.ui.component.OutlinedButton diff --git a/scheduler-demo/src/main/kotlin/schedulerdemo/task/SampleTasks.kt b/scheduler-demo/src/main/kotlin/schedulerdemo/task/SampleTasks.kt index a9f4dc970..538aab471 100644 --- a/scheduler-demo/src/main/kotlin/schedulerdemo/task/SampleTasks.kt +++ b/scheduler-demo/src/main/kotlin/schedulerdemo/task/SampleTasks.kt @@ -1,10 +1,10 @@ package schedulerdemo.task -import io.github.kdroidfilter.nucleus.scheduler.DesktopTask -import io.github.kdroidfilter.nucleus.scheduler.TaskContext -import io.github.kdroidfilter.nucleus.scheduler.TaskId -import io.github.kdroidfilter.nucleus.scheduler.TaskResult -import io.github.kdroidfilter.nucleus.scheduler.inputData +import dev.nucleusframework.nucleus.scheduler.DesktopTask +import dev.nucleusframework.nucleus.scheduler.TaskContext +import dev.nucleusframework.nucleus.scheduler.TaskId +import dev.nucleusframework.nucleus.scheduler.TaskResult +import dev.nucleusframework.nucleus.scheduler.inputData import kotlinx.serialization.Serializable import java.time.LocalDateTime import java.time.format.DateTimeFormatter diff --git a/scheduler-testing/build.gradle.kts b/scheduler-testing/build.gradle.kts index f27353b9d..e7a320be6 100644 --- a/scheduler-testing/build.gradle.kts +++ b/scheduler-testing/build.gradle.kts @@ -32,7 +32,7 @@ kotlin { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.scheduler-testing", publishVersion) + coordinates("dev.nucleusframework", "nucleus.scheduler-testing", publishVersion) pom { name.set("Nucleus Scheduler Testing") @@ -48,7 +48,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/scheduler-testing/config/ktlint/baseline.xml b/scheduler-testing/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/scheduler-testing/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/scheduler-testing/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/testing/TestConstraintChecker.kt b/scheduler-testing/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/testing/TestConstraintChecker.kt similarity index 87% rename from scheduler-testing/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/testing/TestConstraintChecker.kt rename to scheduler-testing/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/testing/TestConstraintChecker.kt index 7639bcc3a..d8a426a1d 100644 --- a/scheduler-testing/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/testing/TestConstraintChecker.kt +++ b/scheduler-testing/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/testing/TestConstraintChecker.kt @@ -1,11 +1,11 @@ -package io.github.kdroidfilter.nucleus.scheduler.testing - -import io.github.kdroidfilter.nucleus.scheduler.Constraints -import io.github.kdroidfilter.nucleus.scheduler.DesktopBootReceiver -import io.github.kdroidfilter.nucleus.scheduler.InternalSchedulerApi -import io.github.kdroidfilter.nucleus.scheduler.NetworkType -import io.github.kdroidfilter.nucleus.scheduler.internal.ConstraintChecker -import io.github.kdroidfilter.nucleus.scheduler.internal.ConstraintResult +package dev.nucleusframework.nucleus.scheduler.testing + +import dev.nucleusframework.nucleus.scheduler.Constraints +import dev.nucleusframework.nucleus.scheduler.DesktopBootReceiver +import dev.nucleusframework.nucleus.scheduler.InternalSchedulerApi +import dev.nucleusframework.nucleus.scheduler.NetworkType +import dev.nucleusframework.nucleus.scheduler.internal.ConstraintChecker +import dev.nucleusframework.nucleus.scheduler.internal.ConstraintResult import java.io.Closeable /** diff --git a/scheduler-testing/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/testing/TestDesktopTaskScheduler.kt b/scheduler-testing/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/testing/TestDesktopTaskScheduler.kt similarity index 92% rename from scheduler-testing/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/testing/TestDesktopTaskScheduler.kt rename to scheduler-testing/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/testing/TestDesktopTaskScheduler.kt index b7fc527fa..76c2e3fdc 100644 --- a/scheduler-testing/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/testing/TestDesktopTaskScheduler.kt +++ b/scheduler-testing/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/testing/TestDesktopTaskScheduler.kt @@ -1,20 +1,20 @@ -package io.github.kdroidfilter.nucleus.scheduler.testing - -import io.github.kdroidfilter.nucleus.scheduler.Constraints -import io.github.kdroidfilter.nucleus.scheduler.DesktopTaskScheduler -import io.github.kdroidfilter.nucleus.scheduler.ExistingTaskPolicy -import io.github.kdroidfilter.nucleus.scheduler.InternalSchedulerApi -import io.github.kdroidfilter.nucleus.scheduler.LastTaskResult -import io.github.kdroidfilter.nucleus.scheduler.TaskContext -import io.github.kdroidfilter.nucleus.scheduler.TaskId -import io.github.kdroidfilter.nucleus.scheduler.TaskInfo -import io.github.kdroidfilter.nucleus.scheduler.TaskRegistry -import io.github.kdroidfilter.nucleus.scheduler.TaskRequest -import io.github.kdroidfilter.nucleus.scheduler.TaskResult -import io.github.kdroidfilter.nucleus.scheduler.TaskState -import io.github.kdroidfilter.nucleus.scheduler.internal.ConstraintChecker -import io.github.kdroidfilter.nucleus.scheduler.internal.ConstraintResult -import io.github.kdroidfilter.nucleus.scheduler.internal.PlatformScheduler +package dev.nucleusframework.nucleus.scheduler.testing + +import dev.nucleusframework.nucleus.scheduler.Constraints +import dev.nucleusframework.nucleus.scheduler.DesktopTaskScheduler +import dev.nucleusframework.nucleus.scheduler.ExistingTaskPolicy +import dev.nucleusframework.nucleus.scheduler.InternalSchedulerApi +import dev.nucleusframework.nucleus.scheduler.LastTaskResult +import dev.nucleusframework.nucleus.scheduler.TaskContext +import dev.nucleusframework.nucleus.scheduler.TaskId +import dev.nucleusframework.nucleus.scheduler.TaskInfo +import dev.nucleusframework.nucleus.scheduler.TaskRegistry +import dev.nucleusframework.nucleus.scheduler.TaskRequest +import dev.nucleusframework.nucleus.scheduler.TaskResult +import dev.nucleusframework.nucleus.scheduler.TaskState +import dev.nucleusframework.nucleus.scheduler.internal.ConstraintChecker +import dev.nucleusframework.nucleus.scheduler.internal.ConstraintResult +import dev.nucleusframework.nucleus.scheduler.internal.PlatformScheduler import java.io.Closeable import kotlin.time.Duration @@ -187,7 +187,7 @@ public class TestDesktopTaskScheduler( * Otherwise the return value is the [TaskResult] produced by `doWork()`. * * @throws IllegalStateException if the task is not enqueued - * @throws io.github.kdroidfilter.nucleus.scheduler.TaskNotFoundException if [taskId] is not in [registry] + * @throws dev.nucleusframework.nucleus.scheduler.TaskNotFoundException if [taskId] is not in [registry] */ public suspend fun runTask( taskId: TaskId, diff --git a/scheduler-testing/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/testing/TestTaskRunner.kt b/scheduler-testing/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/testing/TestTaskRunner.kt similarity index 79% rename from scheduler-testing/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/testing/TestTaskRunner.kt rename to scheduler-testing/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/testing/TestTaskRunner.kt index 75f0faa1c..2e9297f4b 100644 --- a/scheduler-testing/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/testing/TestTaskRunner.kt +++ b/scheduler-testing/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/testing/TestTaskRunner.kt @@ -1,10 +1,10 @@ -package io.github.kdroidfilter.nucleus.scheduler.testing +package dev.nucleusframework.nucleus.scheduler.testing -import io.github.kdroidfilter.nucleus.scheduler.DesktopTask -import io.github.kdroidfilter.nucleus.scheduler.TaskContext -import io.github.kdroidfilter.nucleus.scheduler.TaskData -import io.github.kdroidfilter.nucleus.scheduler.TaskId -import io.github.kdroidfilter.nucleus.scheduler.TaskResult +import dev.nucleusframework.nucleus.scheduler.DesktopTask +import dev.nucleusframework.nucleus.scheduler.TaskContext +import dev.nucleusframework.nucleus.scheduler.TaskData +import dev.nucleusframework.nucleus.scheduler.TaskId +import dev.nucleusframework.nucleus.scheduler.TaskResult /** * Runs a [DesktopTask] in isolation without any OS scheduler involvement. diff --git a/scheduler-testing/src/test/kotlin/io/github/kdroidfilter/nucleus/scheduler/testing/SchedulerTestingTest.kt b/scheduler-testing/src/test/kotlin/dev/nucleusframework/nucleus/scheduler/testing/SchedulerTestingTest.kt similarity index 95% rename from scheduler-testing/src/test/kotlin/io/github/kdroidfilter/nucleus/scheduler/testing/SchedulerTestingTest.kt rename to scheduler-testing/src/test/kotlin/dev/nucleusframework/nucleus/scheduler/testing/SchedulerTestingTest.kt index dea45a70f..b421ccf01 100644 --- a/scheduler-testing/src/test/kotlin/io/github/kdroidfilter/nucleus/scheduler/testing/SchedulerTestingTest.kt +++ b/scheduler-testing/src/test/kotlin/dev/nucleusframework/nucleus/scheduler/testing/SchedulerTestingTest.kt @@ -1,18 +1,18 @@ -package io.github.kdroidfilter.nucleus.scheduler.testing - -import io.github.kdroidfilter.nucleus.scheduler.DesktopTask -import io.github.kdroidfilter.nucleus.scheduler.DesktopTaskScheduler -import io.github.kdroidfilter.nucleus.scheduler.ExistingTaskPolicy -import io.github.kdroidfilter.nucleus.scheduler.LastTaskResult -import io.github.kdroidfilter.nucleus.scheduler.TaskContext -import io.github.kdroidfilter.nucleus.scheduler.TaskData -import io.github.kdroidfilter.nucleus.scheduler.TaskId -import io.github.kdroidfilter.nucleus.scheduler.TaskRegistry -import io.github.kdroidfilter.nucleus.scheduler.TaskRequest -import io.github.kdroidfilter.nucleus.scheduler.TaskResult -import io.github.kdroidfilter.nucleus.scheduler.TaskState -import io.github.kdroidfilter.nucleus.scheduler.decode -import io.github.kdroidfilter.nucleus.scheduler.inputData +package dev.nucleusframework.nucleus.scheduler.testing + +import dev.nucleusframework.nucleus.scheduler.DesktopTask +import dev.nucleusframework.nucleus.scheduler.DesktopTaskScheduler +import dev.nucleusframework.nucleus.scheduler.ExistingTaskPolicy +import dev.nucleusframework.nucleus.scheduler.LastTaskResult +import dev.nucleusframework.nucleus.scheduler.TaskContext +import dev.nucleusframework.nucleus.scheduler.TaskData +import dev.nucleusframework.nucleus.scheduler.TaskId +import dev.nucleusframework.nucleus.scheduler.TaskRegistry +import dev.nucleusframework.nucleus.scheduler.TaskRequest +import dev.nucleusframework.nucleus.scheduler.TaskResult +import dev.nucleusframework.nucleus.scheduler.TaskState +import dev.nucleusframework.nucleus.scheduler.decode +import dev.nucleusframework.nucleus.scheduler.inputData import kotlinx.coroutines.runBlocking import kotlinx.serialization.Serializable import kotlin.test.Test diff --git a/scheduler/build.gradle.kts b/scheduler/build.gradle.kts index f1ef0b36a..2053eac14 100644 --- a/scheduler/build.gradle.kts +++ b/scheduler/build.gradle.kts @@ -85,7 +85,7 @@ tasks.configureEach { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.scheduler", publishVersion) + coordinates("dev.nucleusframework", "nucleus.scheduler", publishVersion) pom { name.set("Nucleus Scheduler") @@ -101,7 +101,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/scheduler/config/ktlint/baseline.xml b/scheduler/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/scheduler/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/Constraints.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/Constraints.kt similarity index 98% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/Constraints.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/Constraints.kt index 2c765b1c2..95b2a043c 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/Constraints.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/Constraints.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.scheduler +package dev.nucleusframework.nucleus.scheduler /** * Describes conditions that must be met before a scheduled task executes. diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/CronExpression.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/CronExpression.kt similarity index 97% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/CronExpression.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/CronExpression.kt index 3a76c2c30..72797e051 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/CronExpression.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/CronExpression.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.scheduler +package dev.nucleusframework.nucleus.scheduler import java.time.DayOfWeek import java.time.LocalTime diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/DesktopBootReceiver.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/DesktopBootReceiver.kt similarity index 91% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/DesktopBootReceiver.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/DesktopBootReceiver.kt index d311b5214..52b913e38 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/DesktopBootReceiver.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/DesktopBootReceiver.kt @@ -1,13 +1,13 @@ -package io.github.kdroidfilter.nucleus.scheduler - -import io.github.kdroidfilter.nucleus.core.runtime.NucleusApp -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.scheduler.internal.ConstraintChecker -import io.github.kdroidfilter.nucleus.scheduler.internal.LinuxSystemdScheduler -import io.github.kdroidfilter.nucleus.scheduler.internal.MacOSLaunchdScheduler -import io.github.kdroidfilter.nucleus.scheduler.internal.SystemInfoConstraintChecker -import io.github.kdroidfilter.nucleus.scheduler.internal.TaskMetadataStore -import io.github.kdroidfilter.nucleus.scheduler.internal.WindowsTaskScheduler +package dev.nucleusframework.nucleus.scheduler + +import dev.nucleusframework.nucleus.core.runtime.NucleusApp +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.scheduler.internal.ConstraintChecker +import dev.nucleusframework.nucleus.scheduler.internal.LinuxSystemdScheduler +import dev.nucleusframework.nucleus.scheduler.internal.MacOSLaunchdScheduler +import dev.nucleusframework.nucleus.scheduler.internal.SystemInfoConstraintChecker +import dev.nucleusframework.nucleus.scheduler.internal.TaskMetadataStore +import dev.nucleusframework.nucleus.scheduler.internal.WindowsTaskScheduler import kotlinx.coroutines.runBlocking import java.util.logging.Level import java.util.logging.Logger diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/DesktopTask.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/DesktopTask.kt similarity index 93% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/DesktopTask.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/DesktopTask.kt index bd4b8c611..c59ed1092 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/DesktopTask.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/DesktopTask.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.scheduler +package dev.nucleusframework.nucleus.scheduler /** * A unit of work that can be scheduled to run in the background, diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/DesktopTaskScheduler.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/DesktopTaskScheduler.kt similarity index 86% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/DesktopTaskScheduler.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/DesktopTaskScheduler.kt index eea761652..afa29f9b9 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/DesktopTaskScheduler.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/DesktopTaskScheduler.kt @@ -1,12 +1,12 @@ -package io.github.kdroidfilter.nucleus.scheduler +package dev.nucleusframework.nucleus.scheduler -import io.github.kdroidfilter.nucleus.core.runtime.ExecutableRuntime -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.scheduler.internal.LinuxSystemdScheduler -import io.github.kdroidfilter.nucleus.scheduler.internal.MacOSLaunchdScheduler -import io.github.kdroidfilter.nucleus.scheduler.internal.NoopScheduler -import io.github.kdroidfilter.nucleus.scheduler.internal.PlatformScheduler -import io.github.kdroidfilter.nucleus.scheduler.internal.WindowsTaskScheduler +import dev.nucleusframework.nucleus.core.runtime.ExecutableRuntime +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.scheduler.internal.LinuxSystemdScheduler +import dev.nucleusframework.nucleus.scheduler.internal.MacOSLaunchdScheduler +import dev.nucleusframework.nucleus.scheduler.internal.NoopScheduler +import dev.nucleusframework.nucleus.scheduler.internal.PlatformScheduler +import dev.nucleusframework.nucleus.scheduler.internal.WindowsTaskScheduler import java.util.logging.Logger /** diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/ExistingTaskPolicy.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/ExistingTaskPolicy.kt similarity index 96% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/ExistingTaskPolicy.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/ExistingTaskPolicy.kt index 96ad599bd..d53a24c37 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/ExistingTaskPolicy.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/ExistingTaskPolicy.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.scheduler +package dev.nucleusframework.nucleus.scheduler /** * Controls what happens when [DesktopTaskScheduler.enqueue] is called diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/InternalSchedulerApi.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/InternalSchedulerApi.kt similarity index 92% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/InternalSchedulerApi.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/InternalSchedulerApi.kt index 0841cf81c..7412f07d5 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/InternalSchedulerApi.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/InternalSchedulerApi.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.scheduler +package dev.nucleusframework.nucleus.scheduler /** * Marks declarations that are internal to the scheduler infrastructure diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/LastTaskResult.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/LastTaskResult.kt similarity index 96% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/LastTaskResult.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/LastTaskResult.kt index c553479a4..721e39c84 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/LastTaskResult.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/LastTaskResult.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.scheduler +package dev.nucleusframework.nucleus.scheduler import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/RetryPolicy.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/RetryPolicy.kt similarity index 96% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/RetryPolicy.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/RetryPolicy.kt index 02584d621..98bf779e4 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/RetryPolicy.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/RetryPolicy.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.scheduler +package dev.nucleusframework.nucleus.scheduler import kotlin.time.Duration import kotlin.time.Duration.Companion.minutes diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskContext.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskContext.kt similarity index 95% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskContext.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskContext.kt index 5be2054e6..a1dacb2c9 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskContext.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskContext.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.scheduler +package dev.nucleusframework.nucleus.scheduler import kotlinx.serialization.KSerializer import kotlinx.serialization.serializer diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskData.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskData.kt similarity index 98% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskData.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskData.kt index b3dd91fa4..7ae5857ec 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskData.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskData.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.scheduler +package dev.nucleusframework.nucleus.scheduler import kotlinx.serialization.KSerializer import kotlinx.serialization.json.Json diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskId.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskId.kt similarity index 94% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskId.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskId.kt index 43bb0d1df..fcd63b1a1 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskId.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskId.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.scheduler +package dev.nucleusframework.nucleus.scheduler /** * Strongly-typed identifier for a scheduled task. diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskInfo.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskInfo.kt similarity index 95% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskInfo.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskInfo.kt index 0151828fc..6006abe4c 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskInfo.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskInfo.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.scheduler +package dev.nucleusframework.nucleus.scheduler /** * Runtime information about a scheduled task. diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskRegistry.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskRegistry.kt similarity index 97% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskRegistry.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskRegistry.kt index 1cfe5baf6..cc2b22ac3 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskRegistry.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskRegistry.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.scheduler +package dev.nucleusframework.nucleus.scheduler /** * Maps task IDs to factory lambdas that create [DesktopTask] instances. diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskRequest.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskRequest.kt similarity index 99% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskRequest.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskRequest.kt index 0abb5b8f0..9afe37769 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskRequest.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskRequest.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.scheduler +package dev.nucleusframework.nucleus.scheduler import kotlinx.serialization.KSerializer import kotlinx.serialization.serializer diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskResult.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskResult.kt similarity index 93% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskResult.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskResult.kt index 6ce808f96..ec0a1824a 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/TaskResult.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/TaskResult.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.scheduler +package dev.nucleusframework.nucleus.scheduler /** * The outcome of a [DesktopTask.doWork] invocation. diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/ConstraintChecker.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/ConstraintChecker.kt similarity index 79% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/ConstraintChecker.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/ConstraintChecker.kt index 2a0d54d10..a1add999b 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/ConstraintChecker.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/ConstraintChecker.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.scheduler.internal +package dev.nucleusframework.nucleus.scheduler.internal -import io.github.kdroidfilter.nucleus.scheduler.Constraints -import io.github.kdroidfilter.nucleus.scheduler.InternalSchedulerApi +import dev.nucleusframework.nucleus.scheduler.Constraints +import dev.nucleusframework.nucleus.scheduler.InternalSchedulerApi /** * Result of evaluating [Constraints] against the current system state. diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/LinuxSystemdScheduler.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/LinuxSystemdScheduler.kt similarity index 96% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/LinuxSystemdScheduler.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/LinuxSystemdScheduler.kt index 6e23af860..ea0702463 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/LinuxSystemdScheduler.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/LinuxSystemdScheduler.kt @@ -1,12 +1,12 @@ -package io.github.kdroidfilter.nucleus.scheduler.internal - -import io.github.kdroidfilter.nucleus.core.runtime.NucleusApp -import io.github.kdroidfilter.nucleus.scheduler.ExistingTaskPolicy -import io.github.kdroidfilter.nucleus.scheduler.InternalSchedulerApi -import io.github.kdroidfilter.nucleus.scheduler.TaskId -import io.github.kdroidfilter.nucleus.scheduler.TaskInfo -import io.github.kdroidfilter.nucleus.scheduler.TaskRequest -import io.github.kdroidfilter.nucleus.scheduler.TaskState +package dev.nucleusframework.nucleus.scheduler.internal + +import dev.nucleusframework.nucleus.core.runtime.NucleusApp +import dev.nucleusframework.nucleus.scheduler.ExistingTaskPolicy +import dev.nucleusframework.nucleus.scheduler.InternalSchedulerApi +import dev.nucleusframework.nucleus.scheduler.TaskId +import dev.nucleusframework.nucleus.scheduler.TaskInfo +import dev.nucleusframework.nucleus.scheduler.TaskRequest +import dev.nucleusframework.nucleus.scheduler.TaskState import java.io.File import java.util.logging.Logger diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/LinuxSystemdSchedulerJni.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/LinuxSystemdSchedulerJni.kt similarity index 92% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/LinuxSystemdSchedulerJni.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/LinuxSystemdSchedulerJni.kt index bdeb22145..fa7b45932 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/LinuxSystemdSchedulerJni.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/LinuxSystemdSchedulerJni.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.scheduler.internal +package dev.nucleusframework.nucleus.scheduler.internal -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader private const val LIBRARY_NAME = "nucleus_scheduler_linux" diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/MacOSLaunchdScheduler.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/MacOSLaunchdScheduler.kt similarity index 97% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/MacOSLaunchdScheduler.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/MacOSLaunchdScheduler.kt index 053f5874b..9808e98ff 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/MacOSLaunchdScheduler.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/MacOSLaunchdScheduler.kt @@ -1,12 +1,12 @@ -package io.github.kdroidfilter.nucleus.scheduler.internal - -import io.github.kdroidfilter.nucleus.core.runtime.NucleusApp -import io.github.kdroidfilter.nucleus.scheduler.ExistingTaskPolicy -import io.github.kdroidfilter.nucleus.scheduler.InternalSchedulerApi -import io.github.kdroidfilter.nucleus.scheduler.TaskId -import io.github.kdroidfilter.nucleus.scheduler.TaskInfo -import io.github.kdroidfilter.nucleus.scheduler.TaskRequest -import io.github.kdroidfilter.nucleus.scheduler.TaskState +package dev.nucleusframework.nucleus.scheduler.internal + +import dev.nucleusframework.nucleus.core.runtime.NucleusApp +import dev.nucleusframework.nucleus.scheduler.ExistingTaskPolicy +import dev.nucleusframework.nucleus.scheduler.InternalSchedulerApi +import dev.nucleusframework.nucleus.scheduler.TaskId +import dev.nucleusframework.nucleus.scheduler.TaskInfo +import dev.nucleusframework.nucleus.scheduler.TaskRequest +import dev.nucleusframework.nucleus.scheduler.TaskState import java.io.File import java.util.concurrent.TimeUnit import java.util.logging.Level @@ -20,7 +20,7 @@ import java.util.logging.Logger * falling back to shell commands otherwise. * * Each task creates a plist with label - * `io.github.kdroidfilter.nucleus.{appId}.{taskId}`. + * `dev.nucleusframework.nucleus.{appId}.{taskId}`. */ @OptIn(InternalSchedulerApi::class) @Suppress("TooManyFunctions") @@ -28,7 +28,7 @@ internal object MacOSLaunchdScheduler : PlatformScheduler { private val logger = Logger.getLogger(MacOSLaunchdScheduler::class.java.name) private const val SCHEDULER_ARG = "--nucleus-scheduler-run" private const val COMMAND_TIMEOUT_SECONDS = 10L - private const val LABEL_PREFIX = "io.github.kdroidfilter.nucleus" + private const val LABEL_PREFIX = "dev.nucleusframework.nucleus" private const val CAL_NOT_SET = -1 private val useNative: Boolean = MacOSLaunchdSchedulerJni.isLoaded diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/MacOSLaunchdSchedulerJni.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/MacOSLaunchdSchedulerJni.kt similarity index 95% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/MacOSLaunchdSchedulerJni.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/MacOSLaunchdSchedulerJni.kt index e2bfb5809..dcecb7b1d 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/MacOSLaunchdSchedulerJni.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/MacOSLaunchdSchedulerJni.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.scheduler.internal +package dev.nucleusframework.nucleus.scheduler.internal -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader private const val LIBRARY_NAME = "nucleus_scheduler" diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/NoopScheduler.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/NoopScheduler.kt similarity index 64% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/NoopScheduler.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/NoopScheduler.kt index c770b4a72..8865e0df9 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/NoopScheduler.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/NoopScheduler.kt @@ -1,9 +1,9 @@ -package io.github.kdroidfilter.nucleus.scheduler.internal +package dev.nucleusframework.nucleus.scheduler.internal -import io.github.kdroidfilter.nucleus.scheduler.InternalSchedulerApi -import io.github.kdroidfilter.nucleus.scheduler.TaskId -import io.github.kdroidfilter.nucleus.scheduler.TaskInfo -import io.github.kdroidfilter.nucleus.scheduler.TaskRequest +import dev.nucleusframework.nucleus.scheduler.InternalSchedulerApi +import dev.nucleusframework.nucleus.scheduler.TaskId +import dev.nucleusframework.nucleus.scheduler.TaskInfo +import dev.nucleusframework.nucleus.scheduler.TaskRequest /** * No-op scheduler for unsupported platforms. diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/PlatformScheduler.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/PlatformScheduler.kt similarity index 75% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/PlatformScheduler.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/PlatformScheduler.kt index 66abf8060..33112ef1f 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/PlatformScheduler.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/PlatformScheduler.kt @@ -1,9 +1,9 @@ -package io.github.kdroidfilter.nucleus.scheduler.internal +package dev.nucleusframework.nucleus.scheduler.internal -import io.github.kdroidfilter.nucleus.scheduler.InternalSchedulerApi -import io.github.kdroidfilter.nucleus.scheduler.TaskId -import io.github.kdroidfilter.nucleus.scheduler.TaskInfo -import io.github.kdroidfilter.nucleus.scheduler.TaskRequest +import dev.nucleusframework.nucleus.scheduler.InternalSchedulerApi +import dev.nucleusframework.nucleus.scheduler.TaskId +import dev.nucleusframework.nucleus.scheduler.TaskInfo +import dev.nucleusframework.nucleus.scheduler.TaskRequest /** * Platform-specific scheduler backend. diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/SystemInfoConstraintChecker.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/SystemInfoConstraintChecker.kt similarity index 89% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/SystemInfoConstraintChecker.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/SystemInfoConstraintChecker.kt index 335f16d35..649c5301c 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/SystemInfoConstraintChecker.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/SystemInfoConstraintChecker.kt @@ -1,10 +1,10 @@ -package io.github.kdroidfilter.nucleus.scheduler.internal +package dev.nucleusframework.nucleus.scheduler.internal -import io.github.kdroidfilter.nucleus.scheduler.Constraints -import io.github.kdroidfilter.nucleus.scheduler.InternalSchedulerApi -import io.github.kdroidfilter.nucleus.scheduler.NetworkType -import io.github.kdroidfilter.nucleus.systeminfo.SystemInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.MeteredStatus +import dev.nucleusframework.nucleus.scheduler.Constraints +import dev.nucleusframework.nucleus.scheduler.InternalSchedulerApi +import dev.nucleusframework.nucleus.scheduler.NetworkType +import dev.nucleusframework.nucleus.systeminfo.SystemInfo +import dev.nucleusframework.nucleus.systeminfo.model.MeteredStatus import java.util.logging.Logger /** diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/TaskMetadataStore.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/TaskMetadataStore.kt similarity index 96% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/TaskMetadataStore.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/TaskMetadataStore.kt index 9e5c13000..bb69b0b1a 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/TaskMetadataStore.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/TaskMetadataStore.kt @@ -1,12 +1,12 @@ -package io.github.kdroidfilter.nucleus.scheduler.internal +package dev.nucleusframework.nucleus.scheduler.internal -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.scheduler.Constraints -import io.github.kdroidfilter.nucleus.scheduler.LastTaskResult -import io.github.kdroidfilter.nucleus.scheduler.NetworkType -import io.github.kdroidfilter.nucleus.scheduler.TaskContext -import io.github.kdroidfilter.nucleus.scheduler.TaskData -import io.github.kdroidfilter.nucleus.scheduler.TaskId +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.scheduler.Constraints +import dev.nucleusframework.nucleus.scheduler.LastTaskResult +import dev.nucleusframework.nucleus.scheduler.NetworkType +import dev.nucleusframework.nucleus.scheduler.TaskContext +import dev.nucleusframework.nucleus.scheduler.TaskData +import dev.nucleusframework.nucleus.scheduler.TaskId import kotlinx.serialization.json.Json import java.io.File import java.util.Properties diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/TaskWrapperScript.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/TaskWrapperScript.kt similarity index 97% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/TaskWrapperScript.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/TaskWrapperScript.kt index f08d42cdf..47f673545 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/TaskWrapperScript.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/TaskWrapperScript.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.scheduler.internal +package dev.nucleusframework.nucleus.scheduler.internal -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.scheduler.TaskId +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.scheduler.TaskId import java.io.File /** diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/WindowsTaskScheduler.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/WindowsTaskScheduler.kt similarity index 96% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/WindowsTaskScheduler.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/WindowsTaskScheduler.kt index 148e7949e..7200c8f06 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/WindowsTaskScheduler.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/WindowsTaskScheduler.kt @@ -1,12 +1,12 @@ -package io.github.kdroidfilter.nucleus.scheduler.internal - -import io.github.kdroidfilter.nucleus.core.runtime.NucleusApp -import io.github.kdroidfilter.nucleus.scheduler.ExistingTaskPolicy -import io.github.kdroidfilter.nucleus.scheduler.InternalSchedulerApi -import io.github.kdroidfilter.nucleus.scheduler.TaskId -import io.github.kdroidfilter.nucleus.scheduler.TaskInfo -import io.github.kdroidfilter.nucleus.scheduler.TaskRequest -import io.github.kdroidfilter.nucleus.scheduler.TaskState +package dev.nucleusframework.nucleus.scheduler.internal + +import dev.nucleusframework.nucleus.core.runtime.NucleusApp +import dev.nucleusframework.nucleus.scheduler.ExistingTaskPolicy +import dev.nucleusframework.nucleus.scheduler.InternalSchedulerApi +import dev.nucleusframework.nucleus.scheduler.TaskId +import dev.nucleusframework.nucleus.scheduler.TaskInfo +import dev.nucleusframework.nucleus.scheduler.TaskRequest +import dev.nucleusframework.nucleus.scheduler.TaskState import java.io.File import java.time.LocalDateTime import java.time.format.DateTimeFormatter diff --git a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/WindowsTaskSchedulerJni.kt b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/WindowsTaskSchedulerJni.kt similarity index 96% rename from scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/WindowsTaskSchedulerJni.kt rename to scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/WindowsTaskSchedulerJni.kt index 5840b0192..62cba1ca0 100644 --- a/scheduler/src/main/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/WindowsTaskSchedulerJni.kt +++ b/scheduler/src/main/kotlin/dev/nucleusframework/nucleus/scheduler/internal/WindowsTaskSchedulerJni.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.scheduler.internal +package dev.nucleusframework.nucleus.scheduler.internal -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader private const val LIBRARY_NAME = "nucleus_scheduler" diff --git a/scheduler/src/main/native/linux/nucleus_scheduler_linux.c b/scheduler/src/main/native/linux/nucleus_scheduler_linux.c index e1268bcdb..37e0d3bf9 100644 --- a/scheduler/src/main/native/linux/nucleus_scheduler_linux.c +++ b/scheduler/src/main/native/linux/nucleus_scheduler_linux.c @@ -25,7 +25,7 @@ /* ---- JNI class name macro --------------------------------------------- */ -#define JNI_PREFIX Java_io_github_kdroidfilter_nucleus_scheduler_internal_LinuxSystemdSchedulerJni_ +#define JNI_PREFIX Java_dev_nucleusframework_nucleus_scheduler_internal_LinuxSystemdSchedulerJni_ #define CONCAT2(a, b) a##b #define CONCAT(a, b) CONCAT2(a, b) #define JNI_FN(name) CONCAT(JNI_PREFIX, name) diff --git a/scheduler/src/main/native/macos/nucleus_scheduler.m b/scheduler/src/main/native/macos/nucleus_scheduler.m index 369b1f62f..b94db9487 100644 --- a/scheduler/src/main/native/macos/nucleus_scheduler.m +++ b/scheduler/src/main/native/macos/nucleus_scheduler.m @@ -14,7 +14,7 @@ // ============================================================================ #define JNI_CLASS(name) \ - Java_io_github_kdroidfilter_nucleus_scheduler_internal_MacOSLaunchdSchedulerJni_##name + Java_dev_nucleusframework_nucleus_scheduler_internal_MacOSLaunchdSchedulerJni_##name // ============================================================================ // JNI helpers diff --git a/scheduler/src/main/native/windows/nucleus_scheduler.cpp b/scheduler/src/main/native/windows/nucleus_scheduler.cpp index de6f223f8..098c16000 100644 --- a/scheduler/src/main/native/windows/nucleus_scheduler.cpp +++ b/scheduler/src/main/native/windows/nucleus_scheduler.cpp @@ -402,13 +402,13 @@ static jstring createTaskInternal( } // ─── JNI prefix ───────────────────────────────────────────────────────────── -// Package: io.github.kdroidfilter.nucleus.scheduler.internal +// Package: dev.nucleusframework.nucleus.scheduler.internal // Class: WindowsTaskSchedulerJni // Double indirection so JNI_CLASS is expanded before ## concatenation #define PASTE_(a, b) a##b #define PASTE(a, b) PASTE_(a, b) -#define JNI_CLASS Java_io_github_kdroidfilter_nucleus_scheduler_internal_WindowsTaskSchedulerJni_ +#define JNI_CLASS Java_dev_nucleusframework_nucleus_scheduler_internal_WindowsTaskSchedulerJni_ #define JNI_FN(name) JNIEXPORT auto JNICALL PASTE(JNI_CLASS, name) // ─── Task creation ────────────────────────────────────────────────────────── diff --git a/scheduler/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.scheduler/reachability-metadata.json b/scheduler/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.scheduler/reachability-metadata.json similarity index 94% rename from scheduler/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.scheduler/reachability-metadata.json rename to scheduler/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.scheduler/reachability-metadata.json index 3e1ff0aee..be46e02d9 100644 --- a/scheduler/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.scheduler/reachability-metadata.json +++ b/scheduler/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.scheduler/reachability-metadata.json @@ -1,7 +1,7 @@ { "reflection": [ { - "type": "io.github.kdroidfilter.nucleus.scheduler.internal.WindowsTaskSchedulerJni", + "type": "dev.nucleusframework.nucleus.scheduler.internal.WindowsTaskSchedulerJni", "jniAccessible": true, "methods": [ { @@ -51,7 +51,7 @@ ] }, { - "type": "io.github.kdroidfilter.nucleus.scheduler.internal.MacOSLaunchdSchedulerJni", + "type": "dev.nucleusframework.nucleus.scheduler.internal.MacOSLaunchdSchedulerJni", "jniAccessible": true, "methods": [ { @@ -85,7 +85,7 @@ ] }, { - "type": "io.github.kdroidfilter.nucleus.scheduler.internal.LinuxSystemdSchedulerJni", + "type": "dev.nucleusframework.nucleus.scheduler.internal.LinuxSystemdSchedulerJni", "jniAccessible": true, "methods": [ { diff --git a/scheduler/src/test/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/AppendCalendarIntervalTest.kt b/scheduler/src/test/kotlin/dev/nucleusframework/nucleus/scheduler/internal/AppendCalendarIntervalTest.kt similarity index 97% rename from scheduler/src/test/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/AppendCalendarIntervalTest.kt rename to scheduler/src/test/kotlin/dev/nucleusframework/nucleus/scheduler/internal/AppendCalendarIntervalTest.kt index bd6fbcd29..b89a8ef64 100644 --- a/scheduler/src/test/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/AppendCalendarIntervalTest.kt +++ b/scheduler/src/test/kotlin/dev/nucleusframework/nucleus/scheduler/internal/AppendCalendarIntervalTest.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.scheduler.internal +package dev.nucleusframework.nucleus.scheduler.internal import kotlin.test.Test import kotlin.test.assertFailsWith diff --git a/scheduler/src/test/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/BuildTimerUnitTest.kt b/scheduler/src/test/kotlin/dev/nucleusframework/nucleus/scheduler/internal/BuildTimerUnitTest.kt similarity index 92% rename from scheduler/src/test/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/BuildTimerUnitTest.kt rename to scheduler/src/test/kotlin/dev/nucleusframework/nucleus/scheduler/internal/BuildTimerUnitTest.kt index a2b4bcb8c..0ca1c1883 100644 --- a/scheduler/src/test/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/BuildTimerUnitTest.kt +++ b/scheduler/src/test/kotlin/dev/nucleusframework/nucleus/scheduler/internal/BuildTimerUnitTest.kt @@ -1,8 +1,8 @@ -package io.github.kdroidfilter.nucleus.scheduler.internal +package dev.nucleusframework.nucleus.scheduler.internal -import io.github.kdroidfilter.nucleus.scheduler.CronExpression -import io.github.kdroidfilter.nucleus.scheduler.TaskId -import io.github.kdroidfilter.nucleus.scheduler.TaskRequest +import dev.nucleusframework.nucleus.scheduler.CronExpression +import dev.nucleusframework.nucleus.scheduler.TaskId +import dev.nucleusframework.nucleus.scheduler.TaskRequest import java.time.LocalTime import kotlin.test.Test import kotlin.test.assertFalse diff --git a/scheduler/src/test/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/ConvertCronToSchtasksTest.kt b/scheduler/src/test/kotlin/dev/nucleusframework/nucleus/scheduler/internal/ConvertCronToSchtasksTest.kt similarity index 97% rename from scheduler/src/test/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/ConvertCronToSchtasksTest.kt rename to scheduler/src/test/kotlin/dev/nucleusframework/nucleus/scheduler/internal/ConvertCronToSchtasksTest.kt index 039c8218b..e5a3397b3 100644 --- a/scheduler/src/test/kotlin/io/github/kdroidfilter/nucleus/scheduler/internal/ConvertCronToSchtasksTest.kt +++ b/scheduler/src/test/kotlin/dev/nucleusframework/nucleus/scheduler/internal/ConvertCronToSchtasksTest.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.scheduler.internal +package dev.nucleusframework.nucleus.scheduler.internal import kotlin.test.Test import kotlin.test.assertEquals diff --git a/scripts/generate-llms-docs.py b/scripts/generate-llms-docs.py index edde0ea99..81de0fb6e 100644 --- a/scripts/generate-llms-docs.py +++ b/scripts/generate-llms-docs.py @@ -39,7 +39,7 @@ "runtime/index.md", } -SITE_URL = "https://nucleus.kdroidfilter.com" +SITE_URL = "https://nucleus.nucleusframework.com" # --------------------------------------------------------------------------- # Nav extraction (no PyYAML needed) @@ -145,8 +145,8 @@ def convert_admonition(m: re.Match) -> str: - Docs: {site_url} - 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 +- Gradle Plugin Portal: https://plugins.gradle.org/plugin/dev.nucleusframework.nucleus +- Maven Central: https://central.sonatype.com/search?q=dev.nucleusframework.nucleus - License: MIT """.format(site_url=SITE_URL) diff --git a/service-management-demo/build.gradle.kts b/service-management-demo/build.gradle.kts index 7b056bad9..39b4e2fae 100644 --- a/service-management-demo/build.gradle.kts +++ b/service-management-demo/build.gradle.kts @@ -1,11 +1,11 @@ -import io.github.kdroidfilter.nucleus.desktop.application.dsl.TargetFormat +import dev.nucleusframework.nucleus.desktop.application.dsl.TargetFormat import org.jetbrains.kotlin.gradle.dsl.JvmTarget plugins { kotlin("jvm") alias(libs.plugins.kotlinComposePlugin) alias(libs.plugins.jetbrainsCompose) - id("io.github.kdroidfilter.nucleus") + id("dev.nucleusframework.nucleus") } dependencies { @@ -45,12 +45,12 @@ nucleus.application { packageVersion = "1.0.0" macOS { - bundleID = "io.github.kdroidfilter.nucleus.servicemanagement.demo" + bundleID = "dev.nucleusframework.nucleus.servicemanagement.demo" appCategory = "public.app-category.utilities" dockName = "SMAppService Demo" launchAgents { - agent("io.github.kdroidfilter.nucleus.servicemanagement.demo.notifier") { + agent("dev.nucleusframework.nucleus.servicemanagement.demo.notifier") { arguments("--notify") startInterval(900) } diff --git a/service-management-demo/config/ktlint/baseline.xml b/service-management-demo/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/service-management-demo/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/service-management-demo/src/main/kotlin/servicemanagementdemo/Main.kt b/service-management-demo/src/main/kotlin/servicemanagementdemo/Main.kt index 2e0cd68fc..3948f22d3 100644 --- a/service-management-demo/src/main/kotlin/servicemanagementdemo/Main.kt +++ b/service-management-demo/src/main/kotlin/servicemanagementdemo/Main.kt @@ -25,14 +25,14 @@ import androidx.compose.ui.text.font.FontFamily import androidx.compose.ui.unit.dp import androidx.compose.ui.window.Window import androidx.compose.ui.window.application -import io.github.kdroidfilter.nucleus.notification.common.notification -import io.github.kdroidfilter.nucleus.servicemanagement.AppService -import io.github.kdroidfilter.nucleus.servicemanagement.AppServiceManager +import dev.nucleusframework.nucleus.notification.common.notification +import dev.nucleusframework.nucleus.servicemanagement.AppService +import dev.nucleusframework.nucleus.servicemanagement.AppServiceManager import java.awt.EventQueue import java.time.LocalTime import java.time.format.DateTimeFormatter -private const val AGENT_LABEL = "io.github.kdroidfilter.nucleus.servicemanagement.demo.notifier" +private const val AGENT_LABEL = "dev.nucleusframework.nucleus.servicemanagement.demo.notifier" fun main(args: Array) { if ("--notify" in args) { diff --git a/service-management-macos/build.gradle.kts b/service-management-macos/build.gradle.kts index a41052b59..8fe70f483 100644 --- a/service-management-macos/build.gradle.kts +++ b/service-management-macos/build.gradle.kts @@ -59,7 +59,7 @@ tasks.configureEach { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.service-management-macos", publishVersion) + coordinates("dev.nucleusframework", "nucleus.service-management-macos", publishVersion) pom { name.set("Nucleus Service Management macOS") @@ -75,7 +75,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/service-management-macos/config/ktlint/baseline.xml b/service-management-macos/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/service-management-macos/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/service-management-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/servicemanagement/AppService.kt b/service-management-macos/src/main/kotlin/dev/nucleusframework/nucleus/servicemanagement/AppService.kt similarity index 97% rename from service-management-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/servicemanagement/AppService.kt rename to service-management-macos/src/main/kotlin/dev/nucleusframework/nucleus/servicemanagement/AppService.kt index 5ad9fe730..cbb600ef2 100644 --- a/service-management-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/servicemanagement/AppService.kt +++ b/service-management-macos/src/main/kotlin/dev/nucleusframework/nucleus/servicemanagement/AppService.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.servicemanagement +package dev.nucleusframework.nucleus.servicemanagement /** * Describes an app service to manage with [AppServiceManager]. diff --git a/service-management-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/servicemanagement/AppServiceException.kt b/service-management-macos/src/main/kotlin/dev/nucleusframework/nucleus/servicemanagement/AppServiceException.kt similarity index 71% rename from service-management-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/servicemanagement/AppServiceException.kt rename to service-management-macos/src/main/kotlin/dev/nucleusframework/nucleus/servicemanagement/AppServiceException.kt index 69f6b20f2..35b8a619e 100644 --- a/service-management-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/servicemanagement/AppServiceException.kt +++ b/service-management-macos/src/main/kotlin/dev/nucleusframework/nucleus/servicemanagement/AppServiceException.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.servicemanagement +package dev.nucleusframework.nucleus.servicemanagement /** * Thrown when an [AppServiceManager] operation fails. diff --git a/service-management-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/servicemanagement/AppServiceManager.kt b/service-management-macos/src/main/kotlin/dev/nucleusframework/nucleus/servicemanagement/AppServiceManager.kt similarity index 96% rename from service-management-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/servicemanagement/AppServiceManager.kt rename to service-management-macos/src/main/kotlin/dev/nucleusframework/nucleus/servicemanagement/AppServiceManager.kt index a56b116bd..489c1ae2b 100644 --- a/service-management-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/servicemanagement/AppServiceManager.kt +++ b/service-management-macos/src/main/kotlin/dev/nucleusframework/nucleus/servicemanagement/AppServiceManager.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.servicemanagement +package dev.nucleusframework.nucleus.servicemanagement -import io.github.kdroidfilter.nucleus.servicemanagement.macos.NativeMacServiceManagementBridge +import dev.nucleusframework.nucleus.servicemanagement.macos.NativeMacServiceManagementBridge import java.util.logging.Logger /** diff --git a/service-management-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/servicemanagement/AppServiceStatus.kt b/service-management-macos/src/main/kotlin/dev/nucleusframework/nucleus/servicemanagement/AppServiceStatus.kt similarity index 93% rename from service-management-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/servicemanagement/AppServiceStatus.kt rename to service-management-macos/src/main/kotlin/dev/nucleusframework/nucleus/servicemanagement/AppServiceStatus.kt index bf900bdfe..6fb8c6d6c 100644 --- a/service-management-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/servicemanagement/AppServiceStatus.kt +++ b/service-management-macos/src/main/kotlin/dev/nucleusframework/nucleus/servicemanagement/AppServiceStatus.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.servicemanagement +package dev.nucleusframework.nucleus.servicemanagement /** * Maps `SMAppServiceStatus` from Apple's ServiceManagement framework. diff --git a/service-management-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/servicemanagement/macos/NativeMacServiceManagementBridge.kt b/service-management-macos/src/main/kotlin/dev/nucleusframework/nucleus/servicemanagement/macos/NativeMacServiceManagementBridge.kt similarity index 95% rename from service-management-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/servicemanagement/macos/NativeMacServiceManagementBridge.kt rename to service-management-macos/src/main/kotlin/dev/nucleusframework/nucleus/servicemanagement/macos/NativeMacServiceManagementBridge.kt index 79cc70a1d..ba3eb736c 100644 --- a/service-management-macos/src/main/kotlin/io/github/kdroidfilter/nucleus/servicemanagement/macos/NativeMacServiceManagementBridge.kt +++ b/service-management-macos/src/main/kotlin/dev/nucleusframework/nucleus/servicemanagement/macos/NativeMacServiceManagementBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.servicemanagement.macos +package dev.nucleusframework.nucleus.servicemanagement.macos -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader import java.util.concurrent.ConcurrentHashMap import java.util.concurrent.atomic.AtomicLong diff --git a/service-management-macos/src/main/native/macos/NucleusServiceManagementBridge.m b/service-management-macos/src/main/native/macos/NucleusServiceManagementBridge.m index e46292244..a3460f629 100644 --- a/service-management-macos/src/main/native/macos/NucleusServiceManagementBridge.m +++ b/service-management-macos/src/main/native/macos/NucleusServiceManagementBridge.m @@ -8,7 +8,7 @@ static JavaVM *g_jvm = NULL; -#define BRIDGE_CLASS "io/github/kdroidfilter/nucleus/servicemanagement/macos/NativeMacServiceManagementBridge" +#define BRIDGE_CLASS "dev/nucleusframework/nucleus/servicemanagement/macos/NativeMacServiceManagementBridge" // Service types (must match AppService.kt companion constants) #define TYPE_LOGIN_ITEM 0 @@ -99,7 +99,7 @@ static jstring toJString(JNIEnv *env, NSString *str) { // ============================================================================ JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_servicemanagement_macos_NativeMacServiceManagementBridge_nativeIsAvailable( +Java_dev_nucleusframework_nucleus_servicemanagement_macos_NativeMacServiceManagementBridge_nativeIsAvailable( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; if (@available(macOS 13.0, *)) { @@ -109,7 +109,7 @@ static jstring toJString(JNIEnv *env, NSString *str) { } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_servicemanagement_macos_NativeMacServiceManagementBridge_nativeRegister( +Java_dev_nucleusframework_nucleus_servicemanagement_macos_NativeMacServiceManagementBridge_nativeRegister( JNIEnv *env, jclass clazz, jint type, jstring jidentifier) { (void)clazz; @@ -140,7 +140,7 @@ static jstring toJString(JNIEnv *env, NSString *str) { } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_servicemanagement_macos_NativeMacServiceManagementBridge_nativeUnregister( +Java_dev_nucleusframework_nucleus_servicemanagement_macos_NativeMacServiceManagementBridge_nativeUnregister( JNIEnv *env, jclass clazz, jint type, jstring jidentifier, jlong callbackId) { (void)clazz; @@ -225,7 +225,7 @@ static jstring toJString(JNIEnv *env, NSString *str) { } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_servicemanagement_macos_NativeMacServiceManagementBridge_nativeGetStatus( +Java_dev_nucleusframework_nucleus_servicemanagement_macos_NativeMacServiceManagementBridge_nativeGetStatus( JNIEnv *env, jclass clazz, jint type, jstring jidentifier) { (void)clazz; @@ -245,7 +245,7 @@ static jstring toJString(JNIEnv *env, NSString *str) { } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_servicemanagement_macos_NativeMacServiceManagementBridge_nativeOpenSystemSettingsLoginItems( +Java_dev_nucleusframework_nucleus_servicemanagement_macos_NativeMacServiceManagementBridge_nativeOpenSystemSettingsLoginItems( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; diff --git a/service-management-macos/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.service-management-macos/reachability-metadata.json b/service-management-macos/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.service-management-macos/reachability-metadata.json similarity index 71% rename from service-management-macos/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.service-management-macos/reachability-metadata.json rename to service-management-macos/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.service-management-macos/reachability-metadata.json index cbed6c281..13836b111 100644 --- a/service-management-macos/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.service-management-macos/reachability-metadata.json +++ b/service-management-macos/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.service-management-macos/reachability-metadata.json @@ -1,7 +1,7 @@ { "reflection": [ { - "type": "io.github.kdroidfilter.nucleus.servicemanagement.macos.NativeMacServiceManagementBridge", + "type": "dev.nucleusframework.nucleus.servicemanagement.macos.NativeMacServiceManagementBridge", "jniAccessible": true, "methods": [ { diff --git a/sf-symbols/build.gradle.kts b/sf-symbols/build.gradle.kts index 8408c41d0..02f20e1e1 100644 --- a/sf-symbols/build.gradle.kts +++ b/sf-symbols/build.gradle.kts @@ -24,7 +24,7 @@ kotlin { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.sf-symbols", publishVersion) + coordinates("dev.nucleusframework", "nucleus.sf-symbols", publishVersion) pom { name.set("Nucleus SF Symbols") @@ -40,7 +40,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/sf-symbols/config/ktlint/baseline.xml b/sf-symbols/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/sf-symbols/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbol.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbol.kt similarity index 93% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbol.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbol.kt index f115efc77..deb0b4e34 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbol.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbol.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** * Type-safe representation of an Apple SF Symbol name. diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolArrows.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolArrows.kt similarity index 99% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolArrows.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolArrows.kt index 1100d9d52..09f72982e 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolArrows.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolArrows.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — Arrows (535 symbols). */ enum class SFSymbolArrows( diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolCommerce.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolCommerce.kt similarity index 99% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolCommerce.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolCommerce.kt index 08afc789a..ea9fc773a 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolCommerce.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolCommerce.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — Commerce (264 symbols). */ enum class SFSymbolCommerce( diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolCommunication.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolCommunication.kt similarity index 99% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolCommunication.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolCommunication.kt index 3a23e37e7..2af9f0d6b 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolCommunication.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolCommunication.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — Communication (101 symbols). */ enum class SFSymbolCommunication( diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolConnectivity.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolConnectivity.kt similarity index 96% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolConnectivity.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolConnectivity.kt index 411e1ee79..154f89baf 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolConnectivity.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolConnectivity.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — Connectivity (27 symbols). */ enum class SFSymbolConnectivity( diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolDevices.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolDevices.kt similarity index 99% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolDevices.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolDevices.kt index 077144ed8..5050f2f98 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolDevices.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolDevices.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — Devices (349 symbols). */ enum class SFSymbolDevices( diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolGeneral.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolGeneral.kt similarity index 99% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolGeneral.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolGeneral.kt index fbe827cd0..abc1c73b8 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolGeneral.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolGeneral.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — General (1362 symbols). */ enum class SFSymbolGeneral( diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolHealth.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolHealth.kt similarity index 98% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolHealth.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolHealth.kt index 513c14af5..cd495f029 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolHealth.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolHealth.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — Health (57 symbols). */ enum class SFSymbolHealth( diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolHuman.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolHuman.kt similarity index 99% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolHuman.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolHuman.kt index e0d39a541..b150c7898 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolHuman.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolHuman.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — Human (596 symbols). */ enum class SFSymbolHuman( diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolLetters.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolLetters.kt similarity index 99% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolLetters.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolLetters.kt index 02c026e8b..ac4bc85eb 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolLetters.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolLetters.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — Letters (142 symbols). */ enum class SFSymbolLetters( diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolLocation.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolLocation.kt similarity index 97% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolLocation.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolLocation.kt index 9f8ac36df..1e25d3b73 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolLocation.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolLocation.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — Location (47 symbols). */ enum class SFSymbolLocation( diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolMedia.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolMedia.kt similarity index 99% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolMedia.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolMedia.kt index a44e4e075..39a6b9cca 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolMedia.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolMedia.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — Media (238 symbols). */ enum class SFSymbolMedia( diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolNumbers.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolNumbers.kt similarity index 99% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolNumbers.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolNumbers.kt index 6a788e92e..240bf1603 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolNumbers.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolNumbers.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — Numbers (301 symbols). */ @Suppress("EnumNaming") diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolObjectsAndTools.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolObjectsAndTools.kt similarity index 99% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolObjectsAndTools.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolObjectsAndTools.kt index 2cbb281b2..270a8709e 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolObjectsAndTools.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolObjectsAndTools.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — ObjectsAndTools (358 symbols). */ enum class SFSymbolObjectsAndTools( diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolPower.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolPower.kt similarity index 98% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolPower.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolPower.kt index b9f165d40..24a8e2546 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolPower.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolPower.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — Power (76 symbols). */ enum class SFSymbolPower( diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolSecurity.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolSecurity.kt similarity index 98% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolSecurity.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolSecurity.kt index c30d8db3a..4790318e7 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolSecurity.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolSecurity.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — Security (62 symbols). */ enum class SFSymbolSecurity( diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolShapes.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolShapes.kt similarity index 99% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolShapes.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolShapes.kt index 296d0c2c5..16dd5a25a 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolShapes.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolShapes.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — Shapes (542 symbols). */ enum class SFSymbolShapes( diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolStatus.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolStatus.kt similarity index 99% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolStatus.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolStatus.kt index e3f20d40c..8d9ff7bc7 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolStatus.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolStatus.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — Status (273 symbols). */ enum class SFSymbolStatus( diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolTextFormatting.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolTextFormatting.kt similarity index 99% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolTextFormatting.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolTextFormatting.kt index 57fad79b9..df9b07c88 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolTextFormatting.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolTextFormatting.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — TextFormatting (117 symbols). */ enum class SFSymbolTextFormatting( diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolTime.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolTime.kt similarity index 98% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolTime.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolTime.kt index 73e5f9940..6153ffb6a 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolTime.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolTime.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — Time (45 symbols). */ enum class SFSymbolTime( diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolTransportation.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolTransportation.kt similarity index 99% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolTransportation.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolTransportation.kt index 8142c124e..c1b9a2d28 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolTransportation.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolTransportation.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — Transportation (417 symbols). */ enum class SFSymbolTransportation( diff --git a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolWeather.kt b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolWeather.kt similarity index 99% rename from sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolWeather.kt rename to sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolWeather.kt index 42c991981..4d199edee 100644 --- a/sf-symbols/src/main/kotlin/io/github/kdroidfilter/nucleus/sfsymbols/SFSymbolWeather.kt +++ b/sf-symbols/src/main/kotlin/dev/nucleusframework/nucleus/sfsymbols/SFSymbolWeather.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.sfsymbols +package dev.nucleusframework.nucleus.sfsymbols /** SF Symbols — Weather (286 symbols). */ enum class SFSymbolWeather( diff --git a/system-color/build.gradle.kts b/system-color/build.gradle.kts index 1ed09326b..165975d7f 100644 --- a/system-color/build.gradle.kts +++ b/system-color/build.gradle.kts @@ -98,7 +98,7 @@ tasks.configureEach { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.system-color", publishVersion) + coordinates("dev.nucleusframework", "nucleus.system-color", publishVersion) pom { name.set("Nucleus System Color") @@ -114,7 +114,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/system-color/config/ktlint/baseline.xml b/system-color/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/system-color/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/Logger.kt b/system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/Logger.kt similarity index 79% rename from system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/Logger.kt rename to system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/Logger.kt index 9365b001b..074bcdfee 100644 --- a/system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/Logger.kt +++ b/system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/Logger.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.systemcolor +package dev.nucleusframework.nucleus.systemcolor -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/system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/SystemColor.kt b/system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/SystemColor.kt similarity index 64% rename from system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/SystemColor.kt rename to system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/SystemColor.kt index 892e796ab..01c83670f 100644 --- a/system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/SystemColor.kt +++ b/system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/SystemColor.kt @@ -1,17 +1,17 @@ -package io.github.kdroidfilter.nucleus.systemcolor +package dev.nucleusframework.nucleus.systemcolor import androidx.compose.runtime.Composable import androidx.compose.ui.graphics.Color -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.systemcolor.linux.isLinuxAccentColorSupported -import io.github.kdroidfilter.nucleus.systemcolor.linux.linuxAccentColor -import io.github.kdroidfilter.nucleus.systemcolor.linux.linuxHighContrast -import io.github.kdroidfilter.nucleus.systemcolor.mac.MacSystemColorDetector -import io.github.kdroidfilter.nucleus.systemcolor.mac.isMacOsInHighContrast -import io.github.kdroidfilter.nucleus.systemcolor.mac.macOsAccentColor -import io.github.kdroidfilter.nucleus.systemcolor.windows.WindowsSystemColorDetector -import io.github.kdroidfilter.nucleus.systemcolor.windows.windowsAccentColor -import io.github.kdroidfilter.nucleus.systemcolor.windows.windowsHighContrast +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.systemcolor.linux.isLinuxAccentColorSupported +import dev.nucleusframework.nucleus.systemcolor.linux.linuxAccentColor +import dev.nucleusframework.nucleus.systemcolor.linux.linuxHighContrast +import dev.nucleusframework.nucleus.systemcolor.mac.MacSystemColorDetector +import dev.nucleusframework.nucleus.systemcolor.mac.isMacOsInHighContrast +import dev.nucleusframework.nucleus.systemcolor.mac.macOsAccentColor +import dev.nucleusframework.nucleus.systemcolor.windows.WindowsSystemColorDetector +import dev.nucleusframework.nucleus.systemcolor.windows.windowsAccentColor +import dev.nucleusframework.nucleus.systemcolor.windows.windowsHighContrast /** * Returns whether the current platform supports system accent color detection. diff --git a/system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/linux/LinuxSystemColor.kt b/system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/linux/LinuxSystemColor.kt similarity index 95% rename from system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/linux/LinuxSystemColor.kt rename to system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/linux/LinuxSystemColor.kt index 355343b4c..0d973f75e 100644 --- a/system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/linux/LinuxSystemColor.kt +++ b/system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/linux/LinuxSystemColor.kt @@ -1,11 +1,11 @@ -package io.github.kdroidfilter.nucleus.systemcolor.linux +package dev.nucleusframework.nucleus.systemcolor.linux import androidx.compose.runtime.Composable import androidx.compose.runtime.DisposableEffect import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.ui.graphics.Color -import io.github.kdroidfilter.nucleus.systemcolor.debugln +import dev.nucleusframework.nucleus.systemcolor.debugln import java.util.function.Consumer private const val TAG = "LinuxSystemColorDetector" diff --git a/system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/linux/NativeLinuxSystemColorBridge.kt b/system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/linux/NativeLinuxSystemColorBridge.kt similarity index 92% rename from system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/linux/NativeLinuxSystemColorBridge.kt rename to system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/linux/NativeLinuxSystemColorBridge.kt index 748f5a756..d0bc499d0 100644 --- a/system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/linux/NativeLinuxSystemColorBridge.kt +++ b/system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/linux/NativeLinuxSystemColorBridge.kt @@ -1,8 +1,8 @@ -package io.github.kdroidfilter.nucleus.systemcolor.linux +package dev.nucleusframework.nucleus.systemcolor.linux import androidx.compose.ui.graphics.Color -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader -import io.github.kdroidfilter.nucleus.systemcolor.debugln +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.systemcolor.debugln import java.util.concurrent.ConcurrentHashMap import java.util.function.Consumer diff --git a/system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/mac/MacSystemColor.kt b/system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/mac/MacSystemColor.kt similarity index 95% rename from system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/mac/MacSystemColor.kt rename to system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/mac/MacSystemColor.kt index 7bc30cf12..408bc82b7 100644 --- a/system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/mac/MacSystemColor.kt +++ b/system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/mac/MacSystemColor.kt @@ -1,11 +1,11 @@ -package io.github.kdroidfilter.nucleus.systemcolor.mac +package dev.nucleusframework.nucleus.systemcolor.mac import androidx.compose.runtime.Composable import androidx.compose.runtime.DisposableEffect import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.ui.graphics.Color -import io.github.kdroidfilter.nucleus.systemcolor.debugln +import dev.nucleusframework.nucleus.systemcolor.debugln import java.util.function.Consumer private const val TAG = "MacSystemColorDetector" diff --git a/system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/mac/NativeMacSystemColorBridge.kt b/system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/mac/NativeMacSystemColorBridge.kt similarity index 93% rename from system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/mac/NativeMacSystemColorBridge.kt rename to system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/mac/NativeMacSystemColorBridge.kt index 2301e57d5..8e282caf8 100644 --- a/system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/mac/NativeMacSystemColorBridge.kt +++ b/system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/mac/NativeMacSystemColorBridge.kt @@ -1,8 +1,8 @@ -package io.github.kdroidfilter.nucleus.systemcolor.mac +package dev.nucleusframework.nucleus.systemcolor.mac import androidx.compose.ui.graphics.Color -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader -import io.github.kdroidfilter.nucleus.systemcolor.debugln +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.systemcolor.debugln import java.util.concurrent.ConcurrentHashMap import java.util.function.Consumer diff --git a/system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/windows/NativeWindowsSystemColorBridge.kt b/system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/windows/NativeWindowsSystemColorBridge.kt similarity index 93% rename from system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/windows/NativeWindowsSystemColorBridge.kt rename to system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/windows/NativeWindowsSystemColorBridge.kt index 8ebb6c2ee..ce619a086 100644 --- a/system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/windows/NativeWindowsSystemColorBridge.kt +++ b/system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/windows/NativeWindowsSystemColorBridge.kt @@ -1,8 +1,8 @@ -package io.github.kdroidfilter.nucleus.systemcolor.windows +package dev.nucleusframework.nucleus.systemcolor.windows import androidx.compose.ui.graphics.Color -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader -import io.github.kdroidfilter.nucleus.systemcolor.debugln +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.systemcolor.debugln import java.util.concurrent.ConcurrentHashMap import java.util.function.Consumer diff --git a/system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/windows/WindowsSystemColor.kt b/system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/windows/WindowsSystemColor.kt similarity index 95% rename from system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/windows/WindowsSystemColor.kt rename to system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/windows/WindowsSystemColor.kt index 5e117c9ed..c91a294cb 100644 --- a/system-color/src/main/kotlin/io/github/kdroidfilter/nucleus/systemcolor/windows/WindowsSystemColor.kt +++ b/system-color/src/main/kotlin/dev/nucleusframework/nucleus/systemcolor/windows/WindowsSystemColor.kt @@ -1,11 +1,11 @@ -package io.github.kdroidfilter.nucleus.systemcolor.windows +package dev.nucleusframework.nucleus.systemcolor.windows import androidx.compose.runtime.Composable import androidx.compose.runtime.DisposableEffect import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.ui.graphics.Color -import io.github.kdroidfilter.nucleus.systemcolor.debugln +import dev.nucleusframework.nucleus.systemcolor.debugln import java.util.function.Consumer private const val TAG = "WindowsSystemColor" diff --git a/system-color/src/main/native/linux/nucleus_systemcolor_linux.c b/system-color/src/main/native/linux/nucleus_systemcolor_linux.c index c4d5e1ec6..56ace0ead 100644 --- a/system-color/src/main/native/linux/nucleus_systemcolor_linux.c +++ b/system-color/src/main/native/linux/nucleus_systemcolor_linux.c @@ -202,7 +202,7 @@ static void notify_accent_color_changed(double r, double g, double b) { } jclass cls = (*env)->FindClass(env, - "io/github/kdroidfilter/nucleus/systemcolor/linux/NativeLinuxSystemColorBridge"); + "dev/nucleusframework/nucleus/systemcolor/linux/NativeLinuxSystemColorBridge"); if (cls) { jmethodID mid = (*env)->GetStaticMethodID(env, cls, "onAccentColorChanged", "(FFF)V"); if (mid) { @@ -229,7 +229,7 @@ static void notify_high_contrast_changed(int isHigh) { } jclass cls = (*env)->FindClass(env, - "io/github/kdroidfilter/nucleus/systemcolor/linux/NativeLinuxSystemColorBridge"); + "dev/nucleusframework/nucleus/systemcolor/linux/NativeLinuxSystemColorBridge"); if (cls) { jmethodID mid = (*env)->GetStaticMethodID(env, cls, "onHighContrastChanged", "(Z)V"); if (mid) { @@ -359,7 +359,7 @@ static void *watch_thread_proc(void *arg) { /* ------------------------------------------------------------------ */ JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systemcolor_linux_NativeLinuxSystemColorBridge_nativeGetAccentColor( +Java_dev_nucleusframework_nucleus_systemcolor_linux_NativeLinuxSystemColorBridge_nativeGetAccentColor( JNIEnv *env, jclass clazz, jfloatArray out) { (void)clazz; double r = 0, g = 0, b = 0; @@ -370,14 +370,14 @@ Java_io_github_kdroidfilter_nucleus_systemcolor_linux_NativeLinuxSystemColorBrid } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systemcolor_linux_NativeLinuxSystemColorBridge_nativeIsHighContrast( +Java_dev_nucleusframework_nucleus_systemcolor_linux_NativeLinuxSystemColorBridge_nativeIsHighContrast( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; return read_high_contrast() ? JNI_TRUE : JNI_FALSE; } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systemcolor_linux_NativeLinuxSystemColorBridge_nativeIsAccentColorSupported( +Java_dev_nucleusframework_nucleus_systemcolor_linux_NativeLinuxSystemColorBridge_nativeIsAccentColorSupported( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; double r, g, b; @@ -385,7 +385,7 @@ Java_io_github_kdroidfilter_nucleus_systemcolor_linux_NativeLinuxSystemColorBrid } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_systemcolor_linux_NativeLinuxSystemColorBridge_nativeStartObserving( +Java_dev_nucleusframework_nucleus_systemcolor_linux_NativeLinuxSystemColorBridge_nativeStartObserving( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; if (g_watching) return; @@ -395,7 +395,7 @@ Java_io_github_kdroidfilter_nucleus_systemcolor_linux_NativeLinuxSystemColorBrid } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_systemcolor_linux_NativeLinuxSystemColorBridge_nativeStopObserving( +Java_dev_nucleusframework_nucleus_systemcolor_linux_NativeLinuxSystemColorBridge_nativeStopObserving( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; if (!g_watching) return; diff --git a/system-color/src/main/native/macos/NucleusSystemColorBridge.m b/system-color/src/main/native/macos/NucleusSystemColorBridge.m index 473941a9a..f4dd39894 100644 --- a/system-color/src/main/native/macos/NucleusSystemColorBridge.m +++ b/system-color/src/main/native/macos/NucleusSystemColorBridge.m @@ -30,7 +30,7 @@ static void notifyAccentColorChanged(void) { } jclass bridgeClass = (*env)->FindClass(env, - "io/github/kdroidfilter/nucleus/systemcolor/mac/NativeMacSystemColorBridge"); + "dev/nucleusframework/nucleus/systemcolor/mac/NativeMacSystemColorBridge"); if (bridgeClass != NULL) { if (!isAccentColorSet()) { // Multicolor mode: notify with null @@ -82,7 +82,7 @@ static void notifyContrastChanged(void) { accessibilityDisplayShouldIncreaseContrast] ? JNI_TRUE : JNI_FALSE; jclass bridgeClass = (*env)->FindClass(env, - "io/github/kdroidfilter/nucleus/systemcolor/mac/NativeMacSystemColorBridge"); + "dev/nucleusframework/nucleus/systemcolor/mac/NativeMacSystemColorBridge"); if (bridgeClass != NULL) { jmethodID method = (*env)->GetStaticMethodID(env, bridgeClass, "onContrastChanged", "(Z)V"); @@ -102,7 +102,7 @@ static void notifyContrastChanged(void) { // --- JNI exports --- JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systemcolor_mac_NativeMacSystemColorBridge_nativeGetAccentColor( +Java_dev_nucleusframework_nucleus_systemcolor_mac_NativeMacSystemColorBridge_nativeGetAccentColor( JNIEnv *env, jclass clazz, jfloatArray out) { @autoreleasepool { // In multicolor mode, AppleAccentColor is absent — return false so Kotlin gets null @@ -126,7 +126,7 @@ static void notifyContrastChanged(void) { } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systemcolor_mac_NativeMacSystemColorBridge_nativeIsHighContrast( +Java_dev_nucleusframework_nucleus_systemcolor_mac_NativeMacSystemColorBridge_nativeIsHighContrast( JNIEnv *env, jclass clazz) { @autoreleasepool { return [[NSWorkspace sharedWorkspace] @@ -135,7 +135,7 @@ static void notifyContrastChanged(void) { } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systemcolor_mac_NativeMacSystemColorBridge_nativeIsAccentColorSupported( +Java_dev_nucleusframework_nucleus_systemcolor_mac_NativeMacSystemColorBridge_nativeIsAccentColorSupported( JNIEnv *env, jclass clazz) { if (@available(macOS 10.14, *)) { return JNI_TRUE; @@ -144,7 +144,7 @@ static void notifyContrastChanged(void) { } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_systemcolor_mac_NativeMacSystemColorBridge_nativeStartObserving( +Java_dev_nucleusframework_nucleus_systemcolor_mac_NativeMacSystemColorBridge_nativeStartObserving( JNIEnv *env, jclass clazz) { if (g_colorObserver != nil) return; @@ -168,7 +168,7 @@ static void notifyContrastChanged(void) { } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_systemcolor_mac_NativeMacSystemColorBridge_nativeStopObserving( +Java_dev_nucleusframework_nucleus_systemcolor_mac_NativeMacSystemColorBridge_nativeStopObserving( JNIEnv *env, jclass clazz) { if (g_colorObserver != nil) { [[NSNotificationCenter defaultCenter] removeObserver:g_colorObserver]; diff --git a/system-color/src/main/native/windows/nucleus_systemcolor_windows.c b/system-color/src/main/native/windows/nucleus_systemcolor_windows.c index 4ee84217b..0842052b8 100644 --- a/system-color/src/main/native/windows/nucleus_systemcolor_windows.c +++ b/system-color/src/main/native/windows/nucleus_systemcolor_windows.c @@ -111,7 +111,7 @@ static void notifyAccentColorChanged(int r, int g, int b) { } jclass bridgeClass = (*env)->FindClass(env, - "io/github/kdroidfilter/nucleus/systemcolor/windows/NativeWindowsSystemColorBridge"); + "dev/nucleusframework/nucleus/systemcolor/windows/NativeWindowsSystemColorBridge"); if (bridgeClass != NULL) { jmethodID method = (*env)->GetStaticMethodID(env, bridgeClass, "onAccentColorChanged", "(III)V"); @@ -143,7 +143,7 @@ static void notifyHighContrastChanged(BOOL isHigh) { } jclass bridgeClass = (*env)->FindClass(env, - "io/github/kdroidfilter/nucleus/systemcolor/windows/NativeWindowsSystemColorBridge"); + "dev/nucleusframework/nucleus/systemcolor/windows/NativeWindowsSystemColorBridge"); if (bridgeClass != NULL) { jmethodID method = (*env)->GetStaticMethodID(env, bridgeClass, "onHighContrastChanged", "(Z)V"); @@ -237,7 +237,7 @@ static DWORD WINAPI watchThreadProc(LPVOID param) { /* ------------------------------------------------------------------ */ JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systemcolor_windows_NativeWindowsSystemColorBridge_nativeGetAccentColor( +Java_dev_nucleusframework_nucleus_systemcolor_windows_NativeWindowsSystemColorBridge_nativeGetAccentColor( JNIEnv *env, jclass clazz, jintArray out) { (void)clazz; int r = 0, g = 0, b = 0; @@ -249,14 +249,14 @@ Java_io_github_kdroidfilter_nucleus_systemcolor_windows_NativeWindowsSystemColor } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systemcolor_windows_NativeWindowsSystemColorBridge_nativeIsHighContrast( +Java_dev_nucleusframework_nucleus_systemcolor_windows_NativeWindowsSystemColorBridge_nativeIsHighContrast( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; return isHighContrast() ? JNI_TRUE : JNI_FALSE; } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systemcolor_windows_NativeWindowsSystemColorBridge_nativeIsAccentColorSupported( +Java_dev_nucleusframework_nucleus_systemcolor_windows_NativeWindowsSystemColorBridge_nativeIsAccentColorSupported( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; int r, g, b; @@ -264,7 +264,7 @@ Java_io_github_kdroidfilter_nucleus_systemcolor_windows_NativeWindowsSystemColor } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_systemcolor_windows_NativeWindowsSystemColorBridge_nativeStartObserving( +Java_dev_nucleusframework_nucleus_systemcolor_windows_NativeWindowsSystemColorBridge_nativeStartObserving( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; if (g_watchThread != NULL) return; @@ -275,7 +275,7 @@ Java_io_github_kdroidfilter_nucleus_systemcolor_windows_NativeWindowsSystemColor } JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_systemcolor_windows_NativeWindowsSystemColorBridge_nativeStopObserving( +Java_dev_nucleusframework_nucleus_systemcolor_windows_NativeWindowsSystemColorBridge_nativeStopObserving( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; if (g_watchThread == NULL) return; diff --git a/system-color/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.system-color/reachability-metadata.json b/system-color/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.system-color/reachability-metadata.json similarity index 79% rename from system-color/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.system-color/reachability-metadata.json rename to system-color/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.system-color/reachability-metadata.json index d26c8c936..785640c9c 100644 --- a/system-color/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.system-color/reachability-metadata.json +++ b/system-color/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.system-color/reachability-metadata.json @@ -1,7 +1,7 @@ { "reflection": [ { - "type": "io.github.kdroidfilter.nucleus.systemcolor.windows.NativeWindowsSystemColorBridge", + "type": "dev.nucleusframework.nucleus.systemcolor.windows.NativeWindowsSystemColorBridge", "jniAccessible": true, "methods": [ { @@ -15,7 +15,7 @@ ] }, { - "type": "io.github.kdroidfilter.nucleus.systemcolor.mac.NativeMacSystemColorBridge", + "type": "dev.nucleusframework.nucleus.systemcolor.mac.NativeMacSystemColorBridge", "jniAccessible": true, "methods": [ { @@ -33,7 +33,7 @@ ] }, { - "type": "io.github.kdroidfilter.nucleus.systemcolor.linux.NativeLinuxSystemColorBridge", + "type": "dev.nucleusframework.nucleus.systemcolor.linux.NativeLinuxSystemColorBridge", "jniAccessible": true, "methods": [ { diff --git a/system-info-demo/build.gradle.kts b/system-info-demo/build.gradle.kts index 8d62f58d4..8e1181684 100644 --- a/system-info-demo/build.gradle.kts +++ b/system-info-demo/build.gradle.kts @@ -1,13 +1,13 @@ -import io.github.kdroidfilter.nucleus.desktop.application.dsl.CompressionLevel -import io.github.kdroidfilter.nucleus.desktop.application.dsl.SigningAlgorithm -import io.github.kdroidfilter.nucleus.desktop.application.dsl.TargetFormat +import dev.nucleusframework.nucleus.desktop.application.dsl.CompressionLevel +import dev.nucleusframework.nucleus.desktop.application.dsl.SigningAlgorithm +import dev.nucleusframework.nucleus.desktop.application.dsl.TargetFormat import org.jetbrains.kotlin.gradle.dsl.JvmTarget plugins { kotlin("jvm") alias(libs.plugins.kotlinComposePlugin) alias(libs.plugins.jetbrainsCompose) - id("io.github.kdroidfilter.nucleus") + id("dev.nucleusframework.nucleus") } dependencies { @@ -85,13 +85,13 @@ nucleus.application { homepage = "https://github.com/kdroidFilter/Nucleus" linux { - debMaintainer = "KDroidFilter " + debMaintainer = "NucleusFramework " } windows { signing { enabled = true - certificateFile.set(rootProject.file("example/packaging/KDroidFilter.pfx")) + certificateFile.set(rootProject.file("example/packaging/NucleusFramework.pfx")) certificatePassword = "ChangeMe-Temp123!" algorithm = SigningAlgorithm.Sha256 timestampServer = "http://timestamp.digicert.com" @@ -99,7 +99,7 @@ nucleus.application { } macOS { - bundleID = "io.github.kdroidfilter.systeminfo" + bundleID = "dev.nucleusframework.systeminfo" dockName = "SystemInfo" } } diff --git a/system-info-demo/config/ktlint/baseline.xml b/system-info-demo/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/system-info-demo/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/system-info-demo/src/main/kotlin/systeminfodemo/Main.kt b/system-info-demo/src/main/kotlin/systeminfodemo/Main.kt index ccfcb00bf..a3a81996f 100644 --- a/system-info-demo/src/main/kotlin/systeminfodemo/Main.kt +++ b/system-info-demo/src/main/kotlin/systeminfodemo/Main.kt @@ -4,14 +4,14 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.window.WindowPosition import androidx.compose.ui.window.application import androidx.compose.ui.window.rememberWindowState -import io.github.kdroidfilter.nucleus.window.jewel.JewelDecoratedWindow +import dev.nucleusframework.nucleus.window.jewel.JewelDecoratedWindow import org.jetbrains.jewel.intui.standalone.theme.IntUiTheme import systeminfodemo.ui.AppContent import systeminfodemo.ui.AppTitleBar import systeminfodemo.ui.buildIslandsTheme fun main() { - io.github.kdroidfilter.nucleus.graalvm.GraalVmInitializer + dev.nucleusframework.nucleus.graalvm.GraalVmInitializer .initialize() application { diff --git a/system-info-demo/src/main/kotlin/systeminfodemo/ui/AppContent.kt b/system-info-demo/src/main/kotlin/systeminfodemo/ui/AppContent.kt index 50335341a..0e28bff4e 100644 --- a/system-info-demo/src/main/kotlin/systeminfodemo/ui/AppContent.kt +++ b/system-info-demo/src/main/kotlin/systeminfodemo/ui/AppContent.kt @@ -34,10 +34,10 @@ import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp -import io.github.kdroidfilter.nucleus.window.AwtDecoratedWindowScope -import io.github.kdroidfilter.nucleus.window.jewel.JewelTitleBar -import io.github.kdroidfilter.nucleus.window.macOSLargeCornerRadius -import io.github.kdroidfilter.nucleus.window.newFullscreenControls +import dev.nucleusframework.nucleus.window.AwtDecoratedWindowScope +import dev.nucleusframework.nucleus.window.jewel.JewelTitleBar +import dev.nucleusframework.nucleus.window.macOSLargeCornerRadius +import dev.nucleusframework.nucleus.window.newFullscreenControls import org.jetbrains.jewel.foundation.theme.JewelTheme import org.jetbrains.jewel.ui.Orientation import org.jetbrains.jewel.ui.component.Divider diff --git a/system-info-demo/src/main/kotlin/systeminfodemo/ui/Theme.kt b/system-info-demo/src/main/kotlin/systeminfodemo/ui/Theme.kt index 3dda9cfec..fe26fbe59 100644 --- a/system-info-demo/src/main/kotlin/systeminfodemo/ui/Theme.kt +++ b/system-info-demo/src/main/kotlin/systeminfodemo/ui/Theme.kt @@ -4,8 +4,8 @@ package systeminfodemo.ui import androidx.compose.runtime.Composable import androidx.compose.ui.graphics.Color -import io.github.kdroidfilter.nucleus.darkmodedetector.isSystemInDarkMode -import io.github.kdroidfilter.nucleus.systemcolor.systemAccentColor +import dev.nucleusframework.nucleus.darkmodedetector.isSystemInDarkMode +import dev.nucleusframework.nucleus.systemcolor.systemAccentColor import org.jetbrains.jewel.foundation.BorderColors import org.jetbrains.jewel.foundation.GlobalColors import org.jetbrains.jewel.foundation.OutlineColors diff --git a/system-info-demo/src/main/kotlin/systeminfodemo/ui/panels/NetworkPanel.kt b/system-info-demo/src/main/kotlin/systeminfodemo/ui/panels/NetworkPanel.kt index 24ff85cbe..dee7737bb 100644 --- a/system-info-demo/src/main/kotlin/systeminfodemo/ui/panels/NetworkPanel.kt +++ b/system-info-demo/src/main/kotlin/systeminfodemo/ui/panels/NetworkPanel.kt @@ -6,7 +6,7 @@ import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.unit.dp -import io.github.kdroidfilter.nucleus.systeminfo.model.MeteredStatus +import dev.nucleusframework.nucleus.systeminfo.model.MeteredStatus import systeminfodemo.ui.InfoRow import systeminfodemo.ui.SectionCard import systeminfodemo.ui.formatBytes diff --git a/system-info-demo/src/main/kotlin/systeminfodemo/ui/panels/OverviewPanel.kt b/system-info-demo/src/main/kotlin/systeminfodemo/ui/panels/OverviewPanel.kt index 7cf2aa6ab..1ad1ff71d 100644 --- a/system-info-demo/src/main/kotlin/systeminfodemo/ui/panels/OverviewPanel.kt +++ b/system-info-demo/src/main/kotlin/systeminfodemo/ui/panels/OverviewPanel.kt @@ -11,7 +11,7 @@ import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color import androidx.compose.ui.unit.dp -import io.github.kdroidfilter.nucleus.systeminfo.model.MeteredStatus +import dev.nucleusframework.nucleus.systeminfo.model.MeteredStatus import systeminfodemo.ui.InfoRow import systeminfodemo.ui.LineChart import systeminfodemo.ui.ProgressBar diff --git a/system-info-demo/src/main/kotlin/systeminfodemo/viewmodel/SystemInfoViewModel.kt b/system-info-demo/src/main/kotlin/systeminfodemo/viewmodel/SystemInfoViewModel.kt index d5742bbf8..0750de1c8 100644 --- a/system-info-demo/src/main/kotlin/systeminfodemo/viewmodel/SystemInfoViewModel.kt +++ b/system-info-demo/src/main/kotlin/systeminfodemo/viewmodel/SystemInfoViewModel.kt @@ -2,20 +2,20 @@ package systeminfodemo.viewmodel -import io.github.kdroidfilter.nucleus.systeminfo.SystemInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.BatteryInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ComponentInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ConnectivityInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.CpuGlobalInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.DiskInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.GpuInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.MemoryInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.MotherboardInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.NetworkInterfaceInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.OsInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ProcessInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ProductInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.UserInfo +import dev.nucleusframework.nucleus.systeminfo.SystemInfo +import dev.nucleusframework.nucleus.systeminfo.model.BatteryInfo +import dev.nucleusframework.nucleus.systeminfo.model.ComponentInfo +import dev.nucleusframework.nucleus.systeminfo.model.ConnectivityInfo +import dev.nucleusframework.nucleus.systeminfo.model.CpuGlobalInfo +import dev.nucleusframework.nucleus.systeminfo.model.DiskInfo +import dev.nucleusframework.nucleus.systeminfo.model.GpuInfo +import dev.nucleusframework.nucleus.systeminfo.model.MemoryInfo +import dev.nucleusframework.nucleus.systeminfo.model.MotherboardInfo +import dev.nucleusframework.nucleus.systeminfo.model.NetworkInterfaceInfo +import dev.nucleusframework.nucleus.systeminfo.model.OsInfo +import dev.nucleusframework.nucleus.systeminfo.model.ProcessInfo +import dev.nucleusframework.nucleus.systeminfo.model.ProductInfo +import dev.nucleusframework.nucleus.systeminfo.model.UserInfo import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.SupervisorJob diff --git a/system-info/build.gradle.kts b/system-info/build.gradle.kts index dcaa58a02..2456316d6 100644 --- a/system-info/build.gradle.kts +++ b/system-info/build.gradle.kts @@ -96,7 +96,7 @@ tasks.configureEach { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.system-info", publishVersion) + coordinates("dev.nucleusframework", "nucleus.system-info", publishVersion) pom { name.set("Nucleus System Info") @@ -114,7 +114,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/system-info/config/ktlint/baseline.xml b/system-info/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/system-info/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/PlatformSystemInfo.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/PlatformSystemInfo.kt new file mode 100644 index 000000000..ddebb123b --- /dev/null +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/PlatformSystemInfo.kt @@ -0,0 +1,50 @@ +package dev.nucleusframework.nucleus.systeminfo + +import dev.nucleusframework.nucleus.systeminfo.model.BatteryInfo +import dev.nucleusframework.nucleus.systeminfo.model.ComponentInfo +import dev.nucleusframework.nucleus.systeminfo.model.ConnectivityInfo +import dev.nucleusframework.nucleus.systeminfo.model.CpuGlobalInfo +import dev.nucleusframework.nucleus.systeminfo.model.DiskInfo +import dev.nucleusframework.nucleus.systeminfo.model.GpuInfo +import dev.nucleusframework.nucleus.systeminfo.model.MemoryInfo +import dev.nucleusframework.nucleus.systeminfo.model.MotherboardInfo +import dev.nucleusframework.nucleus.systeminfo.model.NetworkInterfaceInfo +import dev.nucleusframework.nucleus.systeminfo.model.OsInfo +import dev.nucleusframework.nucleus.systeminfo.model.ProcessInfo +import dev.nucleusframework.nucleus.systeminfo.model.ProductInfo +import dev.nucleusframework.nucleus.systeminfo.model.UserInfo + +@Suppress("TooManyFunctions") +internal interface PlatformSystemInfo { + fun isAvailable(): Boolean + + fun osInfo(): OsInfo? + + fun memoryInfo(): MemoryInfo? + + fun cpuInfo(): CpuGlobalInfo? + + fun disks(): List + + fun components(): List + + fun networks(): List + + fun users(): List + + fun motherboard(): MotherboardInfo? + + fun product(): ProductInfo? + + fun processes(): List + + fun process(pid: Long): ProcessInfo? + + fun gpus(): List + + fun batteryInfo(): BatteryInfo? + + fun idleTime(): Long + + fun connectivityInfo(): ConnectivityInfo? +} diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/SystemInfo.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/SystemInfo.kt similarity index 54% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/SystemInfo.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/SystemInfo.kt index 47f24d4f3..6767b35b6 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/SystemInfo.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/SystemInfo.kt @@ -1,22 +1,22 @@ -package io.github.kdroidfilter.nucleus.systeminfo - -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.systeminfo.linux.LinuxSystemInfo -import io.github.kdroidfilter.nucleus.systeminfo.macos.MacOsSystemInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.BatteryInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ComponentInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ConnectivityInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.CpuGlobalInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.DiskInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.GpuInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.MemoryInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.MotherboardInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.NetworkInterfaceInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.OsInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ProcessInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ProductInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.UserInfo -import io.github.kdroidfilter.nucleus.systeminfo.windows.WindowsSystemInfo +package dev.nucleusframework.nucleus.systeminfo + +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.systeminfo.linux.LinuxSystemInfo +import dev.nucleusframework.nucleus.systeminfo.macos.MacOsSystemInfo +import dev.nucleusframework.nucleus.systeminfo.model.BatteryInfo +import dev.nucleusframework.nucleus.systeminfo.model.ComponentInfo +import dev.nucleusframework.nucleus.systeminfo.model.ConnectivityInfo +import dev.nucleusframework.nucleus.systeminfo.model.CpuGlobalInfo +import dev.nucleusframework.nucleus.systeminfo.model.DiskInfo +import dev.nucleusframework.nucleus.systeminfo.model.GpuInfo +import dev.nucleusframework.nucleus.systeminfo.model.MemoryInfo +import dev.nucleusframework.nucleus.systeminfo.model.MotherboardInfo +import dev.nucleusframework.nucleus.systeminfo.model.NetworkInterfaceInfo +import dev.nucleusframework.nucleus.systeminfo.model.OsInfo +import dev.nucleusframework.nucleus.systeminfo.model.ProcessInfo +import dev.nucleusframework.nucleus.systeminfo.model.ProductInfo +import dev.nucleusframework.nucleus.systeminfo.model.UserInfo +import dev.nucleusframework.nucleus.systeminfo.windows.WindowsSystemInfo @Suppress("TooManyFunctions") object SystemInfo { diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/linux/LinuxSystemInfo.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/linux/LinuxSystemInfo.kt similarity index 93% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/linux/LinuxSystemInfo.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/linux/LinuxSystemInfo.kt index c2f9bc577..1f07cd9aa 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/linux/LinuxSystemInfo.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/linux/LinuxSystemInfo.kt @@ -1,22 +1,22 @@ -package io.github.kdroidfilter.nucleus.systeminfo.linux +package dev.nucleusframework.nucleus.systeminfo.linux -import io.github.kdroidfilter.nucleus.systeminfo.PlatformSystemInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.BatteryInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.BatteryState -import io.github.kdroidfilter.nucleus.systeminfo.model.ComponentInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ConnectivityInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.CpuGlobalInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.CpuInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.DiskInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.GpuInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.MemoryInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.MeteredStatus -import io.github.kdroidfilter.nucleus.systeminfo.model.MotherboardInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.NetworkInterfaceInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.OsInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ProcessInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ProductInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.UserInfo +import dev.nucleusframework.nucleus.systeminfo.PlatformSystemInfo +import dev.nucleusframework.nucleus.systeminfo.model.BatteryInfo +import dev.nucleusframework.nucleus.systeminfo.model.BatteryState +import dev.nucleusframework.nucleus.systeminfo.model.ComponentInfo +import dev.nucleusframework.nucleus.systeminfo.model.ConnectivityInfo +import dev.nucleusframework.nucleus.systeminfo.model.CpuGlobalInfo +import dev.nucleusframework.nucleus.systeminfo.model.CpuInfo +import dev.nucleusframework.nucleus.systeminfo.model.DiskInfo +import dev.nucleusframework.nucleus.systeminfo.model.GpuInfo +import dev.nucleusframework.nucleus.systeminfo.model.MemoryInfo +import dev.nucleusframework.nucleus.systeminfo.model.MeteredStatus +import dev.nucleusframework.nucleus.systeminfo.model.MotherboardInfo +import dev.nucleusframework.nucleus.systeminfo.model.NetworkInterfaceInfo +import dev.nucleusframework.nucleus.systeminfo.model.OsInfo +import dev.nucleusframework.nucleus.systeminfo.model.ProcessInfo +import dev.nucleusframework.nucleus.systeminfo.model.ProductInfo +import dev.nucleusframework.nucleus.systeminfo.model.UserInfo @Suppress("TooManyFunctions", "ReturnCount") internal object LinuxSystemInfo : PlatformSystemInfo { diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/linux/NativeLinuxSystemInfoBridge.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/linux/NativeLinuxSystemInfoBridge.kt similarity index 98% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/linux/NativeLinuxSystemInfoBridge.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/linux/NativeLinuxSystemInfoBridge.kt index efd47d5b6..62ffe0876 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/linux/NativeLinuxSystemInfoBridge.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/linux/NativeLinuxSystemInfoBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.systeminfo.linux +package dev.nucleusframework.nucleus.systeminfo.linux -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader private const val LIBRARY_NAME = "nucleus_system_info" diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/macos/MacOsSystemInfo.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/macos/MacOsSystemInfo.kt similarity index 93% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/macos/MacOsSystemInfo.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/macos/MacOsSystemInfo.kt index 02bde59ce..7abd0c755 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/macos/MacOsSystemInfo.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/macos/MacOsSystemInfo.kt @@ -1,22 +1,22 @@ -package io.github.kdroidfilter.nucleus.systeminfo.macos +package dev.nucleusframework.nucleus.systeminfo.macos -import io.github.kdroidfilter.nucleus.systeminfo.PlatformSystemInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.BatteryInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.BatteryState -import io.github.kdroidfilter.nucleus.systeminfo.model.ComponentInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ConnectivityInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.CpuGlobalInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.CpuInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.DiskInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.GpuInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.MemoryInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.MeteredStatus -import io.github.kdroidfilter.nucleus.systeminfo.model.MotherboardInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.NetworkInterfaceInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.OsInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ProcessInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ProductInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.UserInfo +import dev.nucleusframework.nucleus.systeminfo.PlatformSystemInfo +import dev.nucleusframework.nucleus.systeminfo.model.BatteryInfo +import dev.nucleusframework.nucleus.systeminfo.model.BatteryState +import dev.nucleusframework.nucleus.systeminfo.model.ComponentInfo +import dev.nucleusframework.nucleus.systeminfo.model.ConnectivityInfo +import dev.nucleusframework.nucleus.systeminfo.model.CpuGlobalInfo +import dev.nucleusframework.nucleus.systeminfo.model.CpuInfo +import dev.nucleusframework.nucleus.systeminfo.model.DiskInfo +import dev.nucleusframework.nucleus.systeminfo.model.GpuInfo +import dev.nucleusframework.nucleus.systeminfo.model.MemoryInfo +import dev.nucleusframework.nucleus.systeminfo.model.MeteredStatus +import dev.nucleusframework.nucleus.systeminfo.model.MotherboardInfo +import dev.nucleusframework.nucleus.systeminfo.model.NetworkInterfaceInfo +import dev.nucleusframework.nucleus.systeminfo.model.OsInfo +import dev.nucleusframework.nucleus.systeminfo.model.ProcessInfo +import dev.nucleusframework.nucleus.systeminfo.model.ProductInfo +import dev.nucleusframework.nucleus.systeminfo.model.UserInfo @Suppress("TooManyFunctions", "ReturnCount") internal object MacOsSystemInfo : PlatformSystemInfo { diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/macos/NativeMacOsSystemInfoBridge.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/macos/NativeMacOsSystemInfoBridge.kt similarity index 98% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/macos/NativeMacOsSystemInfoBridge.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/macos/NativeMacOsSystemInfoBridge.kt index 503a69170..9b14a6cd9 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/macos/NativeMacOsSystemInfoBridge.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/macos/NativeMacOsSystemInfoBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.systeminfo.macos +package dev.nucleusframework.nucleus.systeminfo.macos -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader private const val LIBRARY_NAME = "nucleus_system_info" diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/BatteryInfo.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/BatteryInfo.kt similarity index 89% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/BatteryInfo.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/BatteryInfo.kt index effa970c4..8044b34de 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/BatteryInfo.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/BatteryInfo.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.systeminfo.model +package dev.nucleusframework.nucleus.systeminfo.model data class BatteryInfo( val stateOfCharge: Float, diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/BatteryState.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/BatteryState.kt similarity index 59% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/BatteryState.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/BatteryState.kt index f9cb47b2b..a0dd4450c 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/BatteryState.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/BatteryState.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.systeminfo.model +package dev.nucleusframework.nucleus.systeminfo.model enum class BatteryState { Charging, diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/ComponentInfo.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/ComponentInfo.kt similarity index 69% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/ComponentInfo.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/ComponentInfo.kt index e1018d34a..260e8f94a 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/ComponentInfo.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/ComponentInfo.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.systeminfo.model +package dev.nucleusframework.nucleus.systeminfo.model data class ComponentInfo( val label: String, diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/ConnectivityInfo.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/ConnectivityInfo.kt similarity index 77% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/ConnectivityInfo.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/ConnectivityInfo.kt index 139f9a85a..9ef5defcf 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/ConnectivityInfo.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/ConnectivityInfo.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.systeminfo.model +package dev.nucleusframework.nucleus.systeminfo.model data class ConnectivityInfo( val isConnected: Boolean, diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/CpuGlobalInfo.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/CpuGlobalInfo.kt similarity index 68% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/CpuGlobalInfo.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/CpuGlobalInfo.kt index 18158c6db..4ceb55298 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/CpuGlobalInfo.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/CpuGlobalInfo.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.systeminfo.model +package dev.nucleusframework.nucleus.systeminfo.model data class CpuGlobalInfo( val globalCpuUsage: Float, diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/CpuInfo.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/CpuInfo.kt similarity index 72% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/CpuInfo.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/CpuInfo.kt index 134b50b38..4a10d41b5 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/CpuInfo.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/CpuInfo.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.systeminfo.model +package dev.nucleusframework.nucleus.systeminfo.model data class CpuInfo( val name: String, diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/DiskInfo.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/DiskInfo.kt similarity index 81% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/DiskInfo.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/DiskInfo.kt index c83daad13..51aa37342 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/DiskInfo.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/DiskInfo.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.systeminfo.model +package dev.nucleusframework.nucleus.systeminfo.model data class DiskInfo( val name: String, diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/GpuInfo.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/GpuInfo.kt similarity index 89% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/GpuInfo.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/GpuInfo.kt index d59a0fcff..ed33a1c44 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/GpuInfo.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/GpuInfo.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.systeminfo.model +package dev.nucleusframework.nucleus.systeminfo.model data class GpuInfo( val name: String, diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/MemoryInfo.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/MemoryInfo.kt similarity index 78% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/MemoryInfo.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/MemoryInfo.kt index 2d1cb9207..2c1e5fdcf 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/MemoryInfo.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/MemoryInfo.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.systeminfo.model +package dev.nucleusframework.nucleus.systeminfo.model data class MemoryInfo( val totalMemory: Long, diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/MotherboardInfo.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/MotherboardInfo.kt similarity index 74% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/MotherboardInfo.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/MotherboardInfo.kt index 4c929b0c9..f7f31cc76 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/MotherboardInfo.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/MotherboardInfo.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.systeminfo.model +package dev.nucleusframework.nucleus.systeminfo.model data class MotherboardInfo( val name: String?, diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/NetworkInterfaceInfo.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/NetworkInterfaceInfo.kt similarity index 84% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/NetworkInterfaceInfo.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/NetworkInterfaceInfo.kt index 62ef7f386..786874f83 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/NetworkInterfaceInfo.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/NetworkInterfaceInfo.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.systeminfo.model +package dev.nucleusframework.nucleus.systeminfo.model data class NetworkInterfaceInfo( val name: String, diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/OsInfo.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/OsInfo.kt similarity index 82% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/OsInfo.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/OsInfo.kt index 6b77819f4..339628cb3 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/OsInfo.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/OsInfo.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.systeminfo.model +package dev.nucleusframework.nucleus.systeminfo.model data class OsInfo( val name: String?, diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/ProcessInfo.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/ProcessInfo.kt similarity index 85% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/ProcessInfo.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/ProcessInfo.kt index ec50f5252..bd023b0fc 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/ProcessInfo.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/ProcessInfo.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.systeminfo.model +package dev.nucleusframework.nucleus.systeminfo.model data class ProcessInfo( val pid: Long, diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/ProductInfo.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/ProductInfo.kt similarity index 78% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/ProductInfo.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/ProductInfo.kt index 44f494ef2..5ac38f02c 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/ProductInfo.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/ProductInfo.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.systeminfo.model +package dev.nucleusframework.nucleus.systeminfo.model data class ProductInfo( val name: String?, diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/UserInfo.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/UserInfo.kt similarity index 68% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/UserInfo.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/UserInfo.kt index df088ead0..3783f8de7 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/model/UserInfo.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/model/UserInfo.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.systeminfo.model +package dev.nucleusframework.nucleus.systeminfo.model data class UserInfo( val name: String, diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/windows/NativeWindowsSystemInfoBridge.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/windows/NativeWindowsSystemInfoBridge.kt similarity index 98% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/windows/NativeWindowsSystemInfoBridge.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/windows/NativeWindowsSystemInfoBridge.kt index 36555dd98..c2a1754bc 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/windows/NativeWindowsSystemInfoBridge.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/windows/NativeWindowsSystemInfoBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.systeminfo.windows +package dev.nucleusframework.nucleus.systeminfo.windows -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader private const val LIBRARY_NAME = "nucleus_system_info" diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/windows/WindowsSystemInfo.kt b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/windows/WindowsSystemInfo.kt similarity index 93% rename from system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/windows/WindowsSystemInfo.kt rename to system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/windows/WindowsSystemInfo.kt index ffc581dda..c74cf345c 100644 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/windows/WindowsSystemInfo.kt +++ b/system-info/src/main/kotlin/dev/nucleusframework/nucleus/systeminfo/windows/WindowsSystemInfo.kt @@ -1,22 +1,22 @@ -package io.github.kdroidfilter.nucleus.systeminfo.windows +package dev.nucleusframework.nucleus.systeminfo.windows -import io.github.kdroidfilter.nucleus.systeminfo.PlatformSystemInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.BatteryInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.BatteryState -import io.github.kdroidfilter.nucleus.systeminfo.model.ComponentInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ConnectivityInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.CpuGlobalInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.CpuInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.DiskInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.GpuInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.MemoryInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.MeteredStatus -import io.github.kdroidfilter.nucleus.systeminfo.model.MotherboardInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.NetworkInterfaceInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.OsInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ProcessInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ProductInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.UserInfo +import dev.nucleusframework.nucleus.systeminfo.PlatformSystemInfo +import dev.nucleusframework.nucleus.systeminfo.model.BatteryInfo +import dev.nucleusframework.nucleus.systeminfo.model.BatteryState +import dev.nucleusframework.nucleus.systeminfo.model.ComponentInfo +import dev.nucleusframework.nucleus.systeminfo.model.ConnectivityInfo +import dev.nucleusframework.nucleus.systeminfo.model.CpuGlobalInfo +import dev.nucleusframework.nucleus.systeminfo.model.CpuInfo +import dev.nucleusframework.nucleus.systeminfo.model.DiskInfo +import dev.nucleusframework.nucleus.systeminfo.model.GpuInfo +import dev.nucleusframework.nucleus.systeminfo.model.MemoryInfo +import dev.nucleusframework.nucleus.systeminfo.model.MeteredStatus +import dev.nucleusframework.nucleus.systeminfo.model.MotherboardInfo +import dev.nucleusframework.nucleus.systeminfo.model.NetworkInterfaceInfo +import dev.nucleusframework.nucleus.systeminfo.model.OsInfo +import dev.nucleusframework.nucleus.systeminfo.model.ProcessInfo +import dev.nucleusframework.nucleus.systeminfo.model.ProductInfo +import dev.nucleusframework.nucleus.systeminfo.model.UserInfo @Suppress("TooManyFunctions", "ReturnCount") internal object WindowsSystemInfo : PlatformSystemInfo { diff --git a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/PlatformSystemInfo.kt b/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/PlatformSystemInfo.kt deleted file mode 100644 index dbcafe054..000000000 --- a/system-info/src/main/kotlin/io/github/kdroidfilter/nucleus/systeminfo/PlatformSystemInfo.kt +++ /dev/null @@ -1,50 +0,0 @@ -package io.github.kdroidfilter.nucleus.systeminfo - -import io.github.kdroidfilter.nucleus.systeminfo.model.BatteryInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ComponentInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ConnectivityInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.CpuGlobalInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.DiskInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.GpuInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.MemoryInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.MotherboardInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.NetworkInterfaceInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.OsInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ProcessInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.ProductInfo -import io.github.kdroidfilter.nucleus.systeminfo.model.UserInfo - -@Suppress("TooManyFunctions") -internal interface PlatformSystemInfo { - fun isAvailable(): Boolean - - fun osInfo(): OsInfo? - - fun memoryInfo(): MemoryInfo? - - fun cpuInfo(): CpuGlobalInfo? - - fun disks(): List - - fun components(): List - - fun networks(): List - - fun users(): List - - fun motherboard(): MotherboardInfo? - - fun product(): ProductInfo? - - fun processes(): List - - fun process(pid: Long): ProcessInfo? - - fun gpus(): List - - fun batteryInfo(): BatteryInfo? - - fun idleTime(): Long - - fun connectivityInfo(): ConnectivityInfo? -} diff --git a/system-info/src/main/native/linux/nucleus_system_info_battery.c b/system-info/src/main/native/linux/nucleus_system_info_battery.c index 9f659c14a..9d8e29a6d 100644 --- a/system-info/src/main/native/linux/nucleus_system_info_battery.c +++ b/system-info/src/main/native/linux/nucleus_system_info_battery.c @@ -183,19 +183,19 @@ static long get_energy_full_uwh(const char *bat) { } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryPresent( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryPresent( JNIEnv *env, jclass clazz) { return find_battery_path() != NULL ? JNI_TRUE : JNI_FALSE; } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryExternalConnected( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryExternalConnected( JNIEnv *env, jclass clazz) { return is_ac_online() ? JNI_TRUE : JNI_FALSE; } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryIsCharging( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryIsCharging( JNIEnv *env, jclass clazz) { const char *bat = find_battery_path(); if (!bat) return JNI_FALSE; @@ -207,7 +207,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryFullyCharged( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryFullyCharged( JNIEnv *env, jclass clazz) { const char *bat = find_battery_path(); if (!bat) return JNI_FALSE; @@ -219,7 +219,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryCurrentCapacity( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryCurrentCapacity( JNIEnv *env, jclass clazz) { const char *bat = find_battery_path(); if (!bat) return 0; @@ -227,7 +227,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryMaxCapacity( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryMaxCapacity( JNIEnv *env, jclass clazz) { const char *bat = find_battery_path(); if (!bat) return 0; @@ -235,7 +235,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryDesignCapacity( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryDesignCapacity( JNIEnv *env, jclass clazz) { const char *bat = find_battery_path(); if (!bat) return 0; @@ -243,7 +243,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryCycleCount( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryCycleCount( JNIEnv *env, jclass clazz) { const char *bat = find_battery_path(); if (!bat) return 0; @@ -253,7 +253,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryVoltage( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryVoltage( JNIEnv *env, jclass clazz) { const char *bat = find_battery_path(); if (!bat) return 0; @@ -263,7 +263,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryAmperage( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryAmperage( JNIEnv *env, jclass clazz) { const char *bat = find_battery_path(); if (!bat) return 0; @@ -287,7 +287,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jfloat JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryTemperature( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryTemperature( JNIEnv *env, jclass clazz) { const char *bat = find_battery_path(); if (!bat) return (jfloat)NAN; @@ -298,7 +298,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryTimeRemaining( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryTimeRemaining( JNIEnv *env, jclass clazz) { const char *bat = find_battery_path(); if (!bat) return -1; @@ -337,7 +337,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryManufacturer( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryManufacturer( JNIEnv *env, jclass clazz) { const char *bat = find_battery_path(); if (!bat) return NULL; @@ -348,7 +348,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryModelName( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatteryModelName( JNIEnv *env, jclass clazz) { const char *bat = find_battery_path(); if (!bat) return NULL; @@ -359,7 +359,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatterySerialNumber( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBatterySerialNumber( JNIEnv *env, jclass clazz) { const char *bat = find_battery_path(); if (!bat) return NULL; diff --git a/system-info/src/main/native/linux/nucleus_system_info_common.h b/system-info/src/main/native/linux/nucleus_system_info_common.h index f0c25227a..f549691a5 100644 --- a/system-info/src/main/native/linux/nucleus_system_info_common.h +++ b/system-info/src/main/native/linux/nucleus_system_info_common.h @@ -10,7 +10,7 @@ #include // JNI class path for the Linux bridge -#define BRIDGE_CLASS "io/github/kdroidfilter/nucleus/systeminfo/linux/NativeLinuxSystemInfoBridge" +#define BRIDGE_CLASS "dev/nucleusframework/nucleus/systeminfo/linux/NativeLinuxSystemInfoBridge" // Helper: create a Java String from a C string, handling NULL gracefully static inline jstring to_jstring(JNIEnv *env, const char *str) { diff --git a/system-info/src/main/native/linux/nucleus_system_info_component.c b/system-info/src/main/native/linux/nucleus_system_info_component.c index b99fffd58..e434a4818 100644 --- a/system-info/src/main/native/linux/nucleus_system_info_component.c +++ b/system-info/src/main/native/linux/nucleus_system_info_component.c @@ -87,14 +87,14 @@ static void refresh_components(void) { } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeComponentCount( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeComponentCount( JNIEnv *env, jclass clazz) { refresh_components(); return (jint)g_component_count; } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeComponentLabels( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeComponentLabels( JNIEnv *env, jclass clazz) { if (g_component_count <= 0) return NULL; const char **arr = (const char **)malloc(g_component_count * sizeof(char *)); @@ -105,7 +105,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeComponentTemperatures( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeComponentTemperatures( JNIEnv *env, jclass clazz) { if (g_component_count <= 0) return NULL; jfloat *vals = (jfloat *)malloc(g_component_count * sizeof(jfloat)); @@ -117,7 +117,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeComponentMaxTemperatures( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeComponentMaxTemperatures( JNIEnv *env, jclass clazz) { if (g_component_count <= 0) return NULL; jfloat *vals = (jfloat *)malloc(g_component_count * sizeof(jfloat)); @@ -129,7 +129,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeComponentCriticalTemperatures( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeComponentCriticalTemperatures( JNIEnv *env, jclass clazz) { if (g_component_count <= 0) return NULL; jfloat *vals = (jfloat *)malloc(g_component_count * sizeof(jfloat)); diff --git a/system-info/src/main/native/linux/nucleus_system_info_connectivity.c b/system-info/src/main/native/linux/nucleus_system_info_connectivity.c index 7e2a6723b..264a64e0c 100644 --- a/system-info/src/main/native/linux/nucleus_system_info_connectivity.c +++ b/system-info/src/main/native/linux/nucleus_system_info_connectivity.c @@ -137,7 +137,7 @@ static int portalGetMetered(GioFuncs *f, GDBusConnection *conn) { // --------------------------------------------------------------------------- JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeIsNetworkConnected( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeIsNetworkConnected( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; @@ -165,7 +165,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge // --------------------------------------------------------------------------- JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGetMeteredStatus( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGetMeteredStatus( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; diff --git a/system-info/src/main/native/linux/nucleus_system_info_cpu.c b/system-info/src/main/native/linux/nucleus_system_info_cpu.c index 6a028413f..e05d253ae 100644 --- a/system-info/src/main/native/linux/nucleus_system_info_cpu.c +++ b/system-info/src/main/native/linux/nucleus_system_info_cpu.c @@ -128,13 +128,13 @@ static void compute_per_cpu_usage(float *usages, int count) { } JNIEXPORT jfloat JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGlobalCpuUsage( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGlobalCpuUsage( JNIEnv *env, jclass clazz) { return (jfloat)compute_global_cpu_usage(); } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativePhysicalCoreCount( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativePhysicalCoreCount( JNIEnv *env, jclass clazz) { // Count unique "core id" entries per "physical id" in /proc/cpuinfo FILE *f = fopen("/proc/cpuinfo", "r"); @@ -170,13 +170,13 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeCpuCount( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeCpuCount( JNIEnv *env, jclass clazz) { return (jint)count_logical_cpus(); } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeCpuNames( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeCpuNames( JNIEnv *env, jclass clazz) { int count = count_logical_cpus(); if (count <= 0 || count > MAX_CPUS) return NULL; @@ -193,7 +193,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeCpuVendorIds( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeCpuVendorIds( JNIEnv *env, jclass clazz) { int count = count_logical_cpus(); if (count <= 0 || count > MAX_CPUS) return NULL; @@ -210,7 +210,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeCpuBrands( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeCpuBrands( JNIEnv *env, jclass clazz) { int count = count_logical_cpus(); if (count <= 0 || count > MAX_CPUS) return NULL; @@ -227,7 +227,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeCpuFrequencies( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeCpuFrequencies( JNIEnv *env, jclass clazz) { int count = count_logical_cpus(); if (count <= 0 || count > MAX_CPUS) return NULL; @@ -245,7 +245,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeCpuUsages( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeCpuUsages( JNIEnv *env, jclass clazz) { int count = count_logical_cpus(); if (count <= 0 || count > MAX_CPUS) return NULL; diff --git a/system-info/src/main/native/linux/nucleus_system_info_disk.c b/system-info/src/main/native/linux/nucleus_system_info_disk.c index 5b3124efe..4d25e3702 100644 --- a/system-info/src/main/native/linux/nucleus_system_info_disk.c +++ b/system-info/src/main/native/linux/nucleus_system_info_disk.c @@ -107,14 +107,14 @@ static void refresh_disks(void) { } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeDiskCount( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeDiskCount( JNIEnv *env, jclass clazz) { refresh_disks(); return (jint)g_disk_count; } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeDiskNames( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeDiskNames( JNIEnv *env, jclass clazz) { if (g_disk_count <= 0) return NULL; const char **arr = (const char **)malloc(g_disk_count * sizeof(char *)); @@ -125,7 +125,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeDiskFileSystems( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeDiskFileSystems( JNIEnv *env, jclass clazz) { if (g_disk_count <= 0) return NULL; const char **arr = (const char **)malloc(g_disk_count * sizeof(char *)); @@ -136,7 +136,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeDiskMountPoints( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeDiskMountPoints( JNIEnv *env, jclass clazz) { if (g_disk_count <= 0) return NULL; const char **arr = (const char **)malloc(g_disk_count * sizeof(char *)); @@ -147,7 +147,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeDiskTotalSpaces( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeDiskTotalSpaces( JNIEnv *env, jclass clazz) { if (g_disk_count <= 0) return NULL; jlong *vals = (jlong *)malloc(g_disk_count * sizeof(jlong)); @@ -159,7 +159,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeDiskAvailableSpaces( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeDiskAvailableSpaces( JNIEnv *env, jclass clazz) { if (g_disk_count <= 0) return NULL; jlong *vals = (jlong *)malloc(g_disk_count * sizeof(jlong)); @@ -171,7 +171,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeDiskKinds( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeDiskKinds( JNIEnv *env, jclass clazz) { if (g_disk_count <= 0) return NULL; const char **arr = (const char **)malloc(g_disk_count * sizeof(char *)); @@ -182,7 +182,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jbooleanArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeDiskRemovable( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeDiskRemovable( JNIEnv *env, jclass clazz) { if (g_disk_count <= 0) return NULL; jboolean *vals = (jboolean *)malloc(g_disk_count * sizeof(jboolean)); @@ -194,7 +194,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jbooleanArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeDiskReadOnly( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeDiskReadOnly( JNIEnv *env, jclass clazz) { if (g_disk_count <= 0) return NULL; jboolean *vals = (jboolean *)malloc(g_disk_count * sizeof(jboolean)); diff --git a/system-info/src/main/native/linux/nucleus_system_info_gpu.c b/system-info/src/main/native/linux/nucleus_system_info_gpu.c index afbbe239d..550f55bf8 100644 --- a/system-info/src/main/native/linux/nucleus_system_info_gpu.c +++ b/system-info/src/main/native/linux/nucleus_system_info_gpu.c @@ -641,7 +641,7 @@ static void refresh_all_gpus(void) { // --------------------------------------------------------------------------- JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuCount( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuCount( JNIEnv *env, jclass cls) { (void)env; (void)cls; refresh_all_gpus(); @@ -649,7 +649,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuNames( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuNames( JNIEnv *env, jclass cls) { (void)cls; ensure_gpus_initialized(); @@ -659,7 +659,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuVendorIds( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuVendorIds( JNIEnv *env, jclass cls) { (void)cls; ensure_gpus_initialized(); @@ -671,7 +671,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuDeviceIds( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuDeviceIds( JNIEnv *env, jclass cls) { (void)cls; ensure_gpus_initialized(); @@ -683,7 +683,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuDedicatedVideoMemories( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuDedicatedVideoMemories( JNIEnv *env, jclass cls) { (void)cls; ensure_gpus_initialized(); @@ -695,7 +695,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuDedicatedSystemMemories( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuDedicatedSystemMemories( JNIEnv *env, jclass cls) { (void)cls; ensure_gpus_initialized(); @@ -707,7 +707,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuSharedSystemMemories( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuSharedSystemMemories( JNIEnv *env, jclass cls) { (void)cls; ensure_gpus_initialized(); @@ -719,7 +719,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuDriverVersions( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuDriverVersions( JNIEnv *env, jclass cls) { (void)cls; ensure_gpus_initialized(); @@ -729,7 +729,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuTemperatures( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuTemperatures( JNIEnv *env, jclass cls) { (void)cls; ensure_gpus_initialized(); @@ -741,7 +741,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuUsages( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuUsages( JNIEnv *env, jclass cls) { (void)cls; ensure_gpus_initialized(); @@ -753,7 +753,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuMemoryUsed( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuMemoryUsed( JNIEnv *env, jclass cls) { (void)cls; ensure_gpus_initialized(); @@ -765,7 +765,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jintArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuCoreClocks( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuCoreClocks( JNIEnv *env, jclass cls) { (void)cls; ensure_gpus_initialized(); @@ -777,7 +777,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jintArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuMemoryClocks( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuMemoryClocks( JNIEnv *env, jclass cls) { (void)cls; ensure_gpus_initialized(); @@ -789,7 +789,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuFanSpeeds( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuFanSpeeds( JNIEnv *env, jclass cls) { (void)cls; ensure_gpus_initialized(); @@ -801,7 +801,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuPowerDraws( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeGpuPowerDraws( JNIEnv *env, jclass cls) { (void)cls; ensure_gpus_initialized(); diff --git a/system-info/src/main/native/linux/nucleus_system_info_hardware.c b/system-info/src/main/native/linux/nucleus_system_info_hardware.c index 6e4475f83..6f54236f5 100644 --- a/system-info/src/main/native/linux/nucleus_system_info_hardware.c +++ b/system-info/src/main/native/linux/nucleus_system_info_hardware.c @@ -18,74 +18,74 @@ static jstring read_dmi_field(JNIEnv *env, const char *field) { // Motherboard JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeMotherboardName( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeMotherboardName( JNIEnv *env, jclass clazz) { return read_dmi_field(env, "board_name"); } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeMotherboardVendor( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeMotherboardVendor( JNIEnv *env, jclass clazz) { return read_dmi_field(env, "board_vendor"); } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeMotherboardVersion( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeMotherboardVersion( JNIEnv *env, jclass clazz) { return read_dmi_field(env, "board_version"); } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeMotherboardSerial( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeMotherboardSerial( JNIEnv *env, jclass clazz) { return read_dmi_field(env, "board_serial"); } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeMotherboardAssetTag( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeMotherboardAssetTag( JNIEnv *env, jclass clazz) { return read_dmi_field(env, "board_asset_tag"); } // Product JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProductName( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProductName( JNIEnv *env, jclass clazz) { return read_dmi_field(env, "product_name"); } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProductFamily( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProductFamily( JNIEnv *env, jclass clazz) { return read_dmi_field(env, "product_family"); } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProductSerial( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProductSerial( JNIEnv *env, jclass clazz) { return read_dmi_field(env, "product_serial"); } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProductSku( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProductSku( JNIEnv *env, jclass clazz) { return read_dmi_field(env, "product_sku"); } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProductUuid( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProductUuid( JNIEnv *env, jclass clazz) { return read_dmi_field(env, "product_uuid"); } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProductVersion( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProductVersion( JNIEnv *env, jclass clazz) { return read_dmi_field(env, "product_version"); } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProductVendor( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProductVendor( JNIEnv *env, jclass clazz) { return read_dmi_field(env, "sys_vendor"); } diff --git a/system-info/src/main/native/linux/nucleus_system_info_idle.c b/system-info/src/main/native/linux/nucleus_system_info_idle.c index 38b45b033..8e171262d 100644 --- a/system-info/src/main/native/linux/nucleus_system_info_idle.c +++ b/system-info/src/main/native/linux/nucleus_system_info_idle.c @@ -248,7 +248,7 @@ static jlong getIdleTimeFreedesktopDBus(GioFuncs *f) { // --------------------------------------------------------------------------- JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeIdleTimeSeconds( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeIdleTimeSeconds( JNIEnv *env, jclass clazz) { (void)env; (void)clazz; diff --git a/system-info/src/main/native/linux/nucleus_system_info_memory.c b/system-info/src/main/native/linux/nucleus_system_info_memory.c index 6c99220ff..8ef80846a 100644 --- a/system-info/src/main/native/linux/nucleus_system_info_memory.c +++ b/system-info/src/main/native/linux/nucleus_system_info_memory.c @@ -39,7 +39,7 @@ static int read_meminfo(meminfo_t *mi) { } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeTotalMemory( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeTotalMemory( JNIEnv *env, jclass clazz) { meminfo_t mi; if (read_meminfo(&mi) != 0) return 0; @@ -47,7 +47,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeFreeMemory( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeFreeMemory( JNIEnv *env, jclass clazz) { meminfo_t mi; if (read_meminfo(&mi) != 0) return 0; @@ -55,7 +55,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeAvailableMemory( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeAvailableMemory( JNIEnv *env, jclass clazz) { meminfo_t mi; if (read_meminfo(&mi) != 0) return 0; @@ -63,7 +63,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeUsedMemory( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeUsedMemory( JNIEnv *env, jclass clazz) { meminfo_t mi; if (read_meminfo(&mi) != 0) return 0; @@ -71,7 +71,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeTotalSwap( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeTotalSwap( JNIEnv *env, jclass clazz) { meminfo_t mi; if (read_meminfo(&mi) != 0) return 0; @@ -79,7 +79,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeFreeSwap( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeFreeSwap( JNIEnv *env, jclass clazz) { meminfo_t mi; if (read_meminfo(&mi) != 0) return 0; @@ -87,7 +87,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeUsedSwap( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeUsedSwap( JNIEnv *env, jclass clazz) { meminfo_t mi; if (read_meminfo(&mi) != 0) return 0; diff --git a/system-info/src/main/native/linux/nucleus_system_info_network.c b/system-info/src/main/native/linux/nucleus_system_info_network.c index a8987302b..77e427f19 100644 --- a/system-info/src/main/native/linux/nucleus_system_info_network.c +++ b/system-info/src/main/native/linux/nucleus_system_info_network.c @@ -80,14 +80,14 @@ static void refresh_networks(void) { } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeNetworkCount( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeNetworkCount( JNIEnv *env, jclass clazz) { refresh_networks(); return (jint)g_net_count; } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeNetworkNames( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeNetworkNames( JNIEnv *env, jclass clazz) { if (g_net_count <= 0) return NULL; const char **arr = (const char **)malloc(g_net_count * sizeof(char *)); @@ -99,7 +99,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge #define LONG_ARRAY_GETTER(jni_name, field) \ JNIEXPORT jlongArray JNICALL \ -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_##jni_name( \ +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_##jni_name( \ JNIEnv *env, jclass clazz) { \ if (g_net_count <= 0) return NULL; \ jlong *vals = (jlong *)malloc(g_net_count * sizeof(jlong)); \ @@ -119,7 +119,7 @@ LONG_ARRAY_GETTER(nativeNetworkErrorsTransmitted, tx_errors) LONG_ARRAY_GETTER(nativeNetworkMtus, mtu) JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeNetworkMacAddresses( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeNetworkMacAddresses( JNIEnv *env, jclass clazz) { if (g_net_count <= 0) return NULL; const char **arr = (const char **)malloc(g_net_count * sizeof(char *)); diff --git a/system-info/src/main/native/linux/nucleus_system_info_os.c b/system-info/src/main/native/linux/nucleus_system_info_os.c index 5bd75c0c8..56326dd12 100644 --- a/system-info/src/main/native/linux/nucleus_system_info_os.c +++ b/system-info/src/main/native/linux/nucleus_system_info_os.c @@ -31,7 +31,7 @@ static char *parse_os_release(const char *key) { } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeOsName( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeOsName( JNIEnv *env, jclass clazz) { char *name = parse_os_release("NAME"); if (!name) return NULL; @@ -41,7 +41,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeKernelVersion( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeKernelVersion( JNIEnv *env, jclass clazz) { struct utsname info; if (uname(&info) != 0) return NULL; @@ -49,7 +49,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeOsVersion( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeOsVersion( JNIEnv *env, jclass clazz) { char *version = parse_os_release("VERSION_ID"); if (!version) return NULL; @@ -59,7 +59,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeLongOsVersion( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeLongOsVersion( JNIEnv *env, jclass clazz) { char *name = parse_os_release("PRETTY_NAME"); if (!name) { @@ -83,7 +83,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeDistributionId( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeDistributionId( JNIEnv *env, jclass clazz) { char *id = parse_os_release("ID"); if (!id) return to_jstring(env, "linux"); @@ -93,7 +93,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeHostName( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeHostName( JNIEnv *env, jclass clazz) { char buf[256]; if (gethostname(buf, sizeof(buf)) != 0) return NULL; @@ -101,7 +101,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeCpuArch( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeCpuArch( JNIEnv *env, jclass clazz) { struct utsname info; if (uname(&info) != 0) return NULL; @@ -109,7 +109,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeUptime( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeUptime( JNIEnv *env, jclass clazz) { struct sysinfo si; if (sysinfo(&si) != 0) return 0; @@ -117,7 +117,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBootTime( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeBootTime( JNIEnv *env, jclass clazz) { struct sysinfo si; if (sysinfo(&si) != 0) return 0; diff --git a/system-info/src/main/native/linux/nucleus_system_info_process.c b/system-info/src/main/native/linux/nucleus_system_info_process.c index d6d4d936c..7ebca8dad 100644 --- a/system-info/src/main/native/linux/nucleus_system_info_process.c +++ b/system-info/src/main/native/linux/nucleus_system_info_process.c @@ -164,7 +164,7 @@ static void refresh_processes(void) { } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessCount( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessCount( JNIEnv *env, jclass clazz) { refresh_processes(); return (jint)g_proc_count; @@ -172,7 +172,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge #define PROC_STRING_ARRAY(jni_name, field) \ JNIEXPORT jobjectArray JNICALL \ -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_##jni_name( \ +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_##jni_name( \ JNIEnv *env, jclass clazz) { \ if (g_proc_count <= 0) return NULL; \ const char **arr = (const char **)malloc(g_proc_count * sizeof(char *)); \ @@ -184,7 +184,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge #define PROC_LONG_ARRAY(jni_name, field) \ JNIEXPORT jlongArray JNICALL \ -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_##jni_name( \ +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_##jni_name( \ JNIEnv *env, jclass clazz) { \ if (g_proc_count <= 0) return NULL; \ jlong *vals = (jlong *)malloc(g_proc_count * sizeof(jlong)); \ @@ -209,7 +209,7 @@ PROC_STRING_ARRAY(nativeProcessCwds, cwd) PROC_STRING_ARRAY(nativeProcessRoots, root) JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessCpuUsages( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessCpuUsages( JNIEnv *env, jclass clazz) { if (g_proc_count <= 0) return NULL; jfloat *vals = (jfloat *)malloc(g_proc_count * sizeof(jfloat)); @@ -229,7 +229,7 @@ static int read_single_process(long pid, proc_entry_t *pe) { } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidName( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidName( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((long)pid, &pe) != 0) return NULL; @@ -237,7 +237,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidExe( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidExe( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((long)pid, &pe) != 0) return NULL; @@ -245,7 +245,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidMemory( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidMemory( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((long)pid, &pe) != 0) return 0; @@ -253,7 +253,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidVirtualMemory( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidVirtualMemory( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((long)pid, &pe) != 0) return 0; @@ -261,7 +261,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jfloat JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidCpuUsage( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidCpuUsage( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((long)pid, &pe) != 0) return 0.0f; @@ -269,7 +269,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidStatus( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidStatus( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((long)pid, &pe) != 0) return NULL; @@ -277,7 +277,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidStartTime( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidStartTime( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((long)pid, &pe) != 0) return 0; @@ -285,7 +285,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidRunTime( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidRunTime( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((long)pid, &pe) != 0) return 0; @@ -293,7 +293,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidParentPid( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidParentPid( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((long)pid, &pe) != 0) return -1; @@ -301,7 +301,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidCmd( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidCmd( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((long)pid, &pe) != 0) return NULL; @@ -309,7 +309,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidCwd( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidCwd( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((long)pid, &pe) != 0) return NULL; @@ -317,7 +317,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidRoot( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeProcessByPidRoot( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((long)pid, &pe) != 0) return NULL; diff --git a/system-info/src/main/native/linux/nucleus_system_info_user.c b/system-info/src/main/native/linux/nucleus_system_info_user.c index ff66db1d2..60d330b86 100644 --- a/system-info/src/main/native/linux/nucleus_system_info_user.c +++ b/system-info/src/main/native/linux/nucleus_system_info_user.c @@ -64,14 +64,14 @@ static void refresh_users(void) { } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeUserCount( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeUserCount( JNIEnv *env, jclass clazz) { refresh_users(); return (jint)g_user_count; } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeUserNames( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeUserNames( JNIEnv *env, jclass clazz) { if (g_user_count <= 0) return NULL; const char **arr = (const char **)malloc(g_user_count * sizeof(char *)); @@ -82,7 +82,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeUserIds( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeUserIds( JNIEnv *env, jclass clazz) { if (g_user_count <= 0) return NULL; const char **arr = (const char **)malloc(g_user_count * sizeof(char *)); @@ -93,7 +93,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeUserGroupIds( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeUserGroupIds( JNIEnv *env, jclass clazz) { if (g_user_count <= 0) return NULL; const char **arr = (const char **)malloc(g_user_count * sizeof(char *)); @@ -104,7 +104,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeUserGroups( +Java_dev_nucleusframework_nucleus_systeminfo_linux_NativeLinuxSystemInfoBridge_nativeUserGroups( JNIEnv *env, jclass clazz) { if (g_user_count <= 0) return NULL; const char **arr = (const char **)malloc(g_user_count * sizeof(char *)); diff --git a/system-info/src/main/native/macos/nucleus_system_info_battery.c b/system-info/src/main/native/macos/nucleus_system_info_battery.c index d54f782e6..9e8bc6075 100644 --- a/system-info/src/main/native/macos/nucleus_system_info_battery.c +++ b/system-info/src/main/native/macos/nucleus_system_info_battery.c @@ -63,7 +63,7 @@ static int32_t get_raw_or_standard_capacity(CFDictionaryRef dict, CFStringRef ra } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryPresent( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryPresent( JNIEnv *env, jclass clazz) { CFDictionaryRef props = copy_battery_properties(); if (!props) return JNI_FALSE; @@ -73,7 +73,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryExternalConnected( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryExternalConnected( JNIEnv *env, jclass clazz) { CFDictionaryRef props = copy_battery_properties(); if (!props) return JNI_FALSE; @@ -83,7 +83,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryIsCharging( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryIsCharging( JNIEnv *env, jclass clazz) { CFDictionaryRef props = copy_battery_properties(); if (!props) return JNI_FALSE; @@ -93,7 +93,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryFullyCharged( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryFullyCharged( JNIEnv *env, jclass clazz) { CFDictionaryRef props = copy_battery_properties(); if (!props) return JNI_FALSE; @@ -103,7 +103,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryCurrentCapacity( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryCurrentCapacity( JNIEnv *env, jclass clazz) { CFDictionaryRef props = copy_battery_properties(); if (!props) return 0; @@ -114,7 +114,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryMaxCapacity( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryMaxCapacity( JNIEnv *env, jclass clazz) { CFDictionaryRef props = copy_battery_properties(); if (!props) return 0; @@ -125,7 +125,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryDesignCapacity( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryDesignCapacity( JNIEnv *env, jclass clazz) { CFDictionaryRef props = copy_battery_properties(); if (!props) return 0; @@ -135,7 +135,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryCycleCount( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryCycleCount( JNIEnv *env, jclass clazz) { CFDictionaryRef props = copy_battery_properties(); if (!props) return 0; @@ -145,7 +145,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryVoltage( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryVoltage( JNIEnv *env, jclass clazz) { CFDictionaryRef props = copy_battery_properties(); if (!props) return 0; @@ -155,7 +155,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryAmperage( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryAmperage( JNIEnv *env, jclass clazz) { CFDictionaryRef props = copy_battery_properties(); if (!props) return 0; @@ -165,7 +165,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jfloat JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryTemperature( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryTemperature( JNIEnv *env, jclass clazz) { CFDictionaryRef props = copy_battery_properties(); if (!props) return (jfloat)NAN; @@ -176,7 +176,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryTimeRemaining( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryTimeRemaining( JNIEnv *env, jclass clazz) { CFDictionaryRef props = copy_battery_properties(); if (!props) return -1; @@ -188,7 +188,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryManufacturer( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryManufacturer( JNIEnv *env, jclass clazz) { CFDictionaryRef props = copy_battery_properties(); if (!props) return NULL; @@ -200,7 +200,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryModelName( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatteryModelName( JNIEnv *env, jclass clazz) { CFDictionaryRef props = copy_battery_properties(); if (!props) return NULL; @@ -212,7 +212,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatterySerialNumber( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBatterySerialNumber( JNIEnv *env, jclass clazz) { CFDictionaryRef props = copy_battery_properties(); if (!props) return NULL; diff --git a/system-info/src/main/native/macos/nucleus_system_info_common.h b/system-info/src/main/native/macos/nucleus_system_info_common.h index 1e555a33b..dea153585 100644 --- a/system-info/src/main/native/macos/nucleus_system_info_common.h +++ b/system-info/src/main/native/macos/nucleus_system_info_common.h @@ -11,7 +11,7 @@ #include // JNI class path for the macOS bridge -#define BRIDGE_CLASS "io/github/kdroidfilter/nucleus/systeminfo/macos/NativeMacOsSystemInfoBridge" +#define BRIDGE_CLASS "dev/nucleusframework/nucleus/systeminfo/macos/NativeMacOsSystemInfoBridge" // Helper: create a Java String from a C string, handling NULL gracefully static inline jstring to_jstring(JNIEnv *env, const char *str) { diff --git a/system-info/src/main/native/macos/nucleus_system_info_component.c b/system-info/src/main/native/macos/nucleus_system_info_component.c index 7db366423..ffcf714a5 100644 --- a/system-info/src/main/native/macos/nucleus_system_info_component.c +++ b/system-info/src/main/native/macos/nucleus_system_info_component.c @@ -383,14 +383,14 @@ static void refresh_components(void) { } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeComponentCount( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeComponentCount( JNIEnv *env, jclass clazz) { refresh_components(); return (jint)g_component_count; } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeComponentLabels( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeComponentLabels( JNIEnv *env, jclass clazz) { if (g_component_count <= 0) return NULL; const char **arr = (const char **)malloc(g_component_count * sizeof(char *)); @@ -401,7 +401,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeComponentTemperatures( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeComponentTemperatures( JNIEnv *env, jclass clazz) { if (g_component_count <= 0) return NULL; jfloat *vals = (jfloat *)malloc(g_component_count * sizeof(jfloat)); @@ -413,7 +413,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeComponentMaxTemperatures( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeComponentMaxTemperatures( JNIEnv *env, jclass clazz) { if (g_component_count <= 0) return NULL; jfloat *vals = (jfloat *)malloc(g_component_count * sizeof(jfloat)); @@ -425,7 +425,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeComponentCriticalTemperatures( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeComponentCriticalTemperatures( JNIEnv *env, jclass clazz) { if (g_component_count <= 0) return NULL; jfloat *vals = (jfloat *)malloc(g_component_count * sizeof(jfloat)); diff --git a/system-info/src/main/native/macos/nucleus_system_info_connectivity.c b/system-info/src/main/native/macos/nucleus_system_info_connectivity.c index 6b540988b..f9ab9839b 100644 --- a/system-info/src/main/native/macos/nucleus_system_info_connectivity.c +++ b/system-info/src/main/native/macos/nucleus_system_info_connectivity.c @@ -41,7 +41,7 @@ static bool query_network_path(path_snapshot_t *out) { } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeIsNetworkConnected( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeIsNetworkConnected( JNIEnv *env, jclass clazz) { path_snapshot_t snap; @@ -50,7 +50,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGetMeteredStatus( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGetMeteredStatus( JNIEnv *env, jclass clazz) { path_snapshot_t snap; diff --git a/system-info/src/main/native/macos/nucleus_system_info_cpu.c b/system-info/src/main/native/macos/nucleus_system_info_cpu.c index 3a09036a8..b1bfbca1e 100644 --- a/system-info/src/main/native/macos/nucleus_system_info_cpu.c +++ b/system-info/src/main/native/macos/nucleus_system_info_cpu.c @@ -147,7 +147,7 @@ static void read_cpu_ticks(float *global_usage, float *per_cpu_usages, int count } JNIEXPORT jfloat JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGlobalCpuUsage( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGlobalCpuUsage( JNIEnv *env, jclass clazz) { float usage = 0.0f; read_cpu_ticks(&usage, NULL, 0); @@ -155,7 +155,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativePhysicalCoreCount( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativePhysicalCoreCount( JNIEnv *env, jclass clazz) { int32_t count = 0; sysctl_int32("hw.physicalcpu", &count); @@ -163,13 +163,13 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeCpuCount( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeCpuCount( JNIEnv *env, jclass clazz) { return (jint)count_logical_cpus(); } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeCpuNames( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeCpuNames( JNIEnv *env, jclass clazz) { int count = count_logical_cpus(); if (count <= 0 || count > MAX_CPUS) return NULL; @@ -186,7 +186,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeCpuVendorIds( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeCpuVendorIds( JNIEnv *env, jclass clazz) { int count = count_logical_cpus(); if (count <= 0 || count > MAX_CPUS) return NULL; @@ -201,7 +201,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeCpuBrands( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeCpuBrands( JNIEnv *env, jclass clazz) { int count = count_logical_cpus(); if (count <= 0 || count > MAX_CPUS) return NULL; @@ -219,7 +219,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeCpuFrequencies( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeCpuFrequencies( JNIEnv *env, jclass clazz) { int count = count_logical_cpus(); if (count <= 0 || count > MAX_CPUS) return NULL; @@ -235,7 +235,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeCpuUsages( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeCpuUsages( JNIEnv *env, jclass clazz) { int count = count_logical_cpus(); if (count <= 0 || count > MAX_CPUS) return NULL; diff --git a/system-info/src/main/native/macos/nucleus_system_info_disk.c b/system-info/src/main/native/macos/nucleus_system_info_disk.c index abe8ac67c..d64eab888 100644 --- a/system-info/src/main/native/macos/nucleus_system_info_disk.c +++ b/system-info/src/main/native/macos/nucleus_system_info_disk.c @@ -161,14 +161,14 @@ static void refresh_disks(void) { } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeDiskCount( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeDiskCount( JNIEnv *env, jclass clazz) { refresh_disks(); return (jint)g_disk_count; } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeDiskNames( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeDiskNames( JNIEnv *env, jclass clazz) { if (g_disk_count <= 0) return NULL; const char **arr = (const char **)malloc(g_disk_count * sizeof(char *)); @@ -179,7 +179,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeDiskFileSystems( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeDiskFileSystems( JNIEnv *env, jclass clazz) { if (g_disk_count <= 0) return NULL; const char **arr = (const char **)malloc(g_disk_count * sizeof(char *)); @@ -190,7 +190,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeDiskMountPoints( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeDiskMountPoints( JNIEnv *env, jclass clazz) { if (g_disk_count <= 0) return NULL; const char **arr = (const char **)malloc(g_disk_count * sizeof(char *)); @@ -201,7 +201,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeDiskTotalSpaces( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeDiskTotalSpaces( JNIEnv *env, jclass clazz) { if (g_disk_count <= 0) return NULL; jlong *vals = (jlong *)malloc(g_disk_count * sizeof(jlong)); @@ -213,7 +213,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeDiskAvailableSpaces( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeDiskAvailableSpaces( JNIEnv *env, jclass clazz) { if (g_disk_count <= 0) return NULL; jlong *vals = (jlong *)malloc(g_disk_count * sizeof(jlong)); @@ -225,7 +225,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeDiskKinds( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeDiskKinds( JNIEnv *env, jclass clazz) { if (g_disk_count <= 0) return NULL; const char **arr = (const char **)malloc(g_disk_count * sizeof(char *)); @@ -236,7 +236,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jbooleanArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeDiskRemovable( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeDiskRemovable( JNIEnv *env, jclass clazz) { if (g_disk_count <= 0) return NULL; jboolean *vals = (jboolean *)malloc(g_disk_count * sizeof(jboolean)); @@ -248,7 +248,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jbooleanArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeDiskReadOnly( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeDiskReadOnly( JNIEnv *env, jclass clazz) { if (g_disk_count <= 0) return NULL; jboolean *vals = (jboolean *)malloc(g_disk_count * sizeof(jboolean)); diff --git a/system-info/src/main/native/macos/nucleus_system_info_gpu.c b/system-info/src/main/native/macos/nucleus_system_info_gpu.c index 5b759d7d8..1075221d8 100644 --- a/system-info/src/main/native/macos/nucleus_system_info_gpu.c +++ b/system-info/src/main/native/macos/nucleus_system_info_gpu.c @@ -446,14 +446,14 @@ static void refresh_gpus(void) { // ---- JNI exports: static info ---- JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuCount( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuCount( JNIEnv *env, jclass clazz) { refresh_gpus(); return (jint)g_gpu_count; } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuNames( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuNames( JNIEnv *env, jclass clazz) { if (g_gpu_count <= 0) return NULL; const char **arr = (const char **)malloc(g_gpu_count * sizeof(char *)); @@ -464,7 +464,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuVendorIds( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuVendorIds( JNIEnv *env, jclass clazz) { if (g_gpu_count <= 0) return NULL; jlong *vals = (jlong *)malloc(g_gpu_count * sizeof(jlong)); @@ -476,7 +476,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuDeviceIds( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuDeviceIds( JNIEnv *env, jclass clazz) { if (g_gpu_count <= 0) return NULL; jlong *vals = (jlong *)malloc(g_gpu_count * sizeof(jlong)); @@ -488,7 +488,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuDedicatedVideoMemories( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuDedicatedVideoMemories( JNIEnv *env, jclass clazz) { if (g_gpu_count <= 0) return NULL; jlong *vals = (jlong *)malloc(g_gpu_count * sizeof(jlong)); @@ -500,7 +500,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuDedicatedSystemMemories( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuDedicatedSystemMemories( JNIEnv *env, jclass clazz) { if (g_gpu_count <= 0) return NULL; jlong *vals = (jlong *)malloc(g_gpu_count * sizeof(jlong)); @@ -512,7 +512,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuSharedSystemMemories( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuSharedSystemMemories( JNIEnv *env, jclass clazz) { if (g_gpu_count <= 0) return NULL; jlong *vals = (jlong *)malloc(g_gpu_count * sizeof(jlong)); @@ -524,7 +524,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuDriverVersions( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuDriverVersions( JNIEnv *env, jclass clazz) { if (g_gpu_count <= 0) return NULL; const char **arr = (const char **)malloc(g_gpu_count * sizeof(char *)); @@ -537,7 +537,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge // ---- JNI exports: live metrics ---- JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuTemperatures( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuTemperatures( JNIEnv *env, jclass clazz) { if (g_gpu_count <= 0) return NULL; jfloat *vals = (jfloat *)malloc(g_gpu_count * sizeof(jfloat)); @@ -549,7 +549,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuUsages( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuUsages( JNIEnv *env, jclass clazz) { if (g_gpu_count <= 0) return NULL; jfloat *vals = (jfloat *)malloc(g_gpu_count * sizeof(jfloat)); @@ -561,7 +561,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuMemoryUsed( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuMemoryUsed( JNIEnv *env, jclass clazz) { if (g_gpu_count <= 0) return NULL; jlong *vals = (jlong *)malloc(g_gpu_count * sizeof(jlong)); @@ -573,7 +573,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jintArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuCoreClocks( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuCoreClocks( JNIEnv *env, jclass clazz) { if (g_gpu_count <= 0) return NULL; jint *vals = (jint *)malloc(g_gpu_count * sizeof(jint)); @@ -585,7 +585,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jintArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuMemoryClocks( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuMemoryClocks( JNIEnv *env, jclass clazz) { if (g_gpu_count <= 0) return NULL; jint *vals = (jint *)malloc(g_gpu_count * sizeof(jint)); @@ -597,7 +597,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuFanSpeeds( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuFanSpeeds( JNIEnv *env, jclass clazz) { if (g_gpu_count <= 0) return NULL; jfloat *vals = (jfloat *)malloc(g_gpu_count * sizeof(jfloat)); @@ -609,7 +609,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuPowerDraws( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeGpuPowerDraws( JNIEnv *env, jclass clazz) { if (g_gpu_count <= 0) return NULL; jfloat *vals = (jfloat *)malloc(g_gpu_count * sizeof(jfloat)); diff --git a/system-info/src/main/native/macos/nucleus_system_info_hardware.c b/system-info/src/main/native/macos/nucleus_system_info_hardware.c index 387d5885f..956c7b256 100644 --- a/system-info/src/main/native/macos/nucleus_system_info_hardware.c +++ b/system-info/src/main/native/macos/nucleus_system_info_hardware.c @@ -51,7 +51,7 @@ static char *read_platform_property(const char *property_name) { // Motherboard — on Mac, "board" maps to the logic board JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeMotherboardName( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeMotherboardName( JNIEnv *env, jclass clazz) { char *val = read_platform_property("board-id"); if (!val) return NULL; @@ -61,7 +61,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeMotherboardVendor( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeMotherboardVendor( JNIEnv *env, jclass clazz) { char *val = read_platform_property("manufacturer"); if (!val) return to_jstring(env, "Apple Inc."); @@ -71,7 +71,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeMotherboardVersion( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeMotherboardVersion( JNIEnv *env, jclass clazz) { char *val = read_platform_property("version"); if (!val) return NULL; @@ -81,7 +81,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeMotherboardSerial( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeMotherboardSerial( JNIEnv *env, jclass clazz) { char *val = read_platform_property("IOPlatformSerialNumber"); if (!val) return NULL; @@ -91,7 +91,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeMotherboardAssetTag( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeMotherboardAssetTag( JNIEnv *env, jclass clazz) { // Macs don't have asset tags in IORegistry return NULL; @@ -99,7 +99,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge // Product JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProductName( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProductName( JNIEnv *env, jclass clazz) { char *val = read_platform_property("product-name"); if (!val) { @@ -113,7 +113,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProductFamily( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProductFamily( JNIEnv *env, jclass clazz) { // Derive family from model identifier (e.g., "MacBookPro18,1" -> "MacBook Pro") char *model = sysctl_string("hw.model"); @@ -132,7 +132,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProductSerial( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProductSerial( JNIEnv *env, jclass clazz) { char *val = read_platform_property("IOPlatformSerialNumber"); if (!val) return NULL; @@ -142,7 +142,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProductSku( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProductSku( JNIEnv *env, jclass clazz) { // Macs don't have SKU in IORegistry; use hw.model as closest equivalent char *val = sysctl_string("hw.model"); @@ -153,7 +153,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProductUuid( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProductUuid( JNIEnv *env, jclass clazz) { char *val = read_platform_property("IOPlatformUUID"); if (!val) return NULL; @@ -163,7 +163,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProductVersion( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProductVersion( JNIEnv *env, jclass clazz) { char *val = sysctl_string("hw.model"); if (!val) return NULL; @@ -173,7 +173,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProductVendor( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProductVendor( JNIEnv *env, jclass clazz) { char *val = read_platform_property("manufacturer"); if (!val) return to_jstring(env, "Apple Inc."); diff --git a/system-info/src/main/native/macos/nucleus_system_info_idle.c b/system-info/src/main/native/macos/nucleus_system_info_idle.c index a880756e3..1162f139f 100644 --- a/system-info/src/main/native/macos/nucleus_system_info_idle.c +++ b/system-info/src/main/native/macos/nucleus_system_info_idle.c @@ -5,7 +5,7 @@ #include JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeIdleTimeSeconds( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeIdleTimeSeconds( JNIEnv *env, jclass clazz) { io_iterator_t iter = 0; if (IOServiceGetMatchingServices(kIOMainPortDefault, diff --git a/system-info/src/main/native/macos/nucleus_system_info_memory.c b/system-info/src/main/native/macos/nucleus_system_info_memory.c index 7fb1ddd52..5f9c68692 100644 --- a/system-info/src/main/native/macos/nucleus_system_info_memory.c +++ b/system-info/src/main/native/macos/nucleus_system_info_memory.c @@ -20,7 +20,7 @@ static int get_vm_stats(vm_statistics64_data_t *stats) { } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeTotalMemory( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeTotalMemory( JNIEnv *env, jclass clazz) { int64_t total = 0; sysctl_int64("hw.memsize", &total); @@ -28,7 +28,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeFreeMemory( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeFreeMemory( JNIEnv *env, jclass clazz) { vm_statistics64_data_t stats; if (get_vm_stats(&stats) != 0) return 0; @@ -36,7 +36,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeAvailableMemory( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeAvailableMemory( JNIEnv *env, jclass clazz) { int64_t total = 0; sysctl_int64("hw.memsize", &total); @@ -50,7 +50,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeUsedMemory( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeUsedMemory( JNIEnv *env, jclass clazz) { vm_statistics64_data_t stats; if (get_vm_stats(&stats) != 0) return 0; @@ -77,7 +77,7 @@ static int get_swap_info(swap_info_t *si) { } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeTotalSwap( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeTotalSwap( JNIEnv *env, jclass clazz) { swap_info_t si; if (get_swap_info(&si) != 0) return 0; @@ -85,7 +85,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeFreeSwap( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeFreeSwap( JNIEnv *env, jclass clazz) { swap_info_t si; if (get_swap_info(&si) != 0) return 0; @@ -93,7 +93,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeUsedSwap( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeUsedSwap( JNIEnv *env, jclass clazz) { swap_info_t si; if (get_swap_info(&si) != 0) return 0; diff --git a/system-info/src/main/native/macos/nucleus_system_info_network.c b/system-info/src/main/native/macos/nucleus_system_info_network.c index 75e711d94..936d4500a 100644 --- a/system-info/src/main/native/macos/nucleus_system_info_network.c +++ b/system-info/src/main/native/macos/nucleus_system_info_network.c @@ -83,14 +83,14 @@ static void refresh_networks(void) { } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeNetworkCount( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeNetworkCount( JNIEnv *env, jclass clazz) { refresh_networks(); return (jint)g_net_count; } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeNetworkNames( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeNetworkNames( JNIEnv *env, jclass clazz) { if (g_net_count <= 0) return NULL; const char **arr = (const char **)malloc(g_net_count * sizeof(char *)); @@ -102,7 +102,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge #define LONG_ARRAY_GETTER(jni_name, field) \ JNIEXPORT jlongArray JNICALL \ -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_##jni_name( \ +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_##jni_name( \ JNIEnv *env, jclass clazz) { \ if (g_net_count <= 0) return NULL; \ jlong *vals = (jlong *)malloc(g_net_count * sizeof(jlong)); \ @@ -122,7 +122,7 @@ LONG_ARRAY_GETTER(nativeNetworkErrorsTransmitted, tx_errors) LONG_ARRAY_GETTER(nativeNetworkMtus, mtu) JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeNetworkMacAddresses( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeNetworkMacAddresses( JNIEnv *env, jclass clazz) { if (g_net_count <= 0) return NULL; const char **arr = (const char **)malloc(g_net_count * sizeof(char *)); diff --git a/system-info/src/main/native/macos/nucleus_system_info_os.c b/system-info/src/main/native/macos/nucleus_system_info_os.c index 6362ae2a0..6c9786624 100644 --- a/system-info/src/main/native/macos/nucleus_system_info_os.c +++ b/system-info/src/main/native/macos/nucleus_system_info_os.c @@ -26,13 +26,13 @@ static const char *macos_codename(int major, int minor) { } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeOsName( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeOsName( JNIEnv *env, jclass clazz) { return to_jstring(env, "macOS"); } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeKernelVersion( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeKernelVersion( JNIEnv *env, jclass clazz) { char *ver = sysctl_string("kern.osrelease"); if (!ver) return NULL; @@ -42,7 +42,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeOsVersion( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeOsVersion( JNIEnv *env, jclass clazz) { char *ver = sysctl_string("kern.osproductversion"); if (!ver) return NULL; @@ -52,7 +52,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeLongOsVersion( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeLongOsVersion( JNIEnv *env, jclass clazz) { char *version = sysctl_string("kern.osproductversion"); char *kernel = sysctl_string("kern.osrelease"); @@ -76,13 +76,13 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeDistributionId( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeDistributionId( JNIEnv *env, jclass clazz) { return to_jstring(env, "macos"); } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeHostName( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeHostName( JNIEnv *env, jclass clazz) { char buf[256]; if (gethostname(buf, sizeof(buf)) != 0) return NULL; @@ -90,7 +90,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeCpuArch( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeCpuArch( JNIEnv *env, jclass clazz) { char *arch = sysctl_string("hw.machine"); if (!arch) return NULL; @@ -108,7 +108,7 @@ static int64_t get_boot_time_sec(void) { } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeUptime( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeUptime( JNIEnv *env, jclass clazz) { int64_t boot = get_boot_time_sec(); if (boot == 0) return 0; @@ -116,7 +116,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBootTime( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeBootTime( JNIEnv *env, jclass clazz) { return (jlong)get_boot_time_sec(); } diff --git a/system-info/src/main/native/macos/nucleus_system_info_process.c b/system-info/src/main/native/macos/nucleus_system_info_process.c index 99b45248d..5999fb34b 100644 --- a/system-info/src/main/native/macos/nucleus_system_info_process.c +++ b/system-info/src/main/native/macos/nucleus_system_info_process.c @@ -127,7 +127,7 @@ static void refresh_processes(void) { } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessCount( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessCount( JNIEnv *env, jclass clazz) { refresh_processes(); return (jint)g_proc_count; @@ -135,7 +135,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge #define PROC_STRING_ARRAY(jni_name, field) \ JNIEXPORT jobjectArray JNICALL \ -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_##jni_name( \ +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_##jni_name( \ JNIEnv *env, jclass clazz) { \ if (g_proc_count <= 0) return NULL; \ const char **arr = (const char **)malloc(g_proc_count * sizeof(char *)); \ @@ -147,7 +147,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge #define PROC_LONG_ARRAY(jni_name, field) \ JNIEXPORT jlongArray JNICALL \ -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_##jni_name( \ +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_##jni_name( \ JNIEnv *env, jclass clazz) { \ if (g_proc_count <= 0) return NULL; \ jlong *vals = (jlong *)malloc(g_proc_count * sizeof(jlong)); \ @@ -172,7 +172,7 @@ PROC_STRING_ARRAY(nativeProcessCwds, cwd) PROC_STRING_ARRAY(nativeProcessRoots, root) JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessCpuUsages( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessCpuUsages( JNIEnv *env, jclass clazz) { if (g_proc_count <= 0) return NULL; jfloat *vals = (jfloat *)malloc(g_proc_count * sizeof(jfloat)); @@ -190,7 +190,7 @@ static int read_single_process(pid_t pid, proc_entry_t *pe) { } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidName( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidName( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((pid_t)pid, &pe) != 0) return NULL; @@ -198,7 +198,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidExe( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidExe( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((pid_t)pid, &pe) != 0) return NULL; @@ -206,7 +206,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidMemory( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidMemory( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((pid_t)pid, &pe) != 0) return 0; @@ -214,7 +214,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidVirtualMemory( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidVirtualMemory( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((pid_t)pid, &pe) != 0) return 0; @@ -222,7 +222,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jfloat JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidCpuUsage( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidCpuUsage( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((pid_t)pid, &pe) != 0) return 0.0f; @@ -230,7 +230,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidStatus( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidStatus( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((pid_t)pid, &pe) != 0) return NULL; @@ -238,7 +238,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidStartTime( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidStartTime( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((pid_t)pid, &pe) != 0) return 0; @@ -246,7 +246,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidRunTime( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidRunTime( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((pid_t)pid, &pe) != 0) return 0; @@ -254,7 +254,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidParentPid( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidParentPid( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((pid_t)pid, &pe) != 0) return -1; @@ -262,7 +262,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidCmd( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidCmd( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((pid_t)pid, &pe) != 0) return NULL; @@ -270,7 +270,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidCwd( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidCwd( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((pid_t)pid, &pe) != 0) return NULL; @@ -278,7 +278,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidRoot( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeProcessByPidRoot( JNIEnv *env, jclass clazz, jlong pid) { proc_entry_t pe; if (read_single_process((pid_t)pid, &pe) != 0) return NULL; diff --git a/system-info/src/main/native/macos/nucleus_system_info_user.c b/system-info/src/main/native/macos/nucleus_system_info_user.c index 218c045d3..8715d1b2e 100644 --- a/system-info/src/main/native/macos/nucleus_system_info_user.c +++ b/system-info/src/main/native/macos/nucleus_system_info_user.c @@ -63,14 +63,14 @@ static void refresh_users(void) { } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeUserCount( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeUserCount( JNIEnv *env, jclass clazz) { refresh_users(); return (jint)g_user_count; } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeUserNames( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeUserNames( JNIEnv *env, jclass clazz) { if (g_user_count <= 0) return NULL; const char **arr = (const char **)malloc(g_user_count * sizeof(char *)); @@ -81,7 +81,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeUserIds( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeUserIds( JNIEnv *env, jclass clazz) { if (g_user_count <= 0) return NULL; const char **arr = (const char **)malloc(g_user_count * sizeof(char *)); @@ -92,7 +92,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeUserGroupIds( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeUserGroupIds( JNIEnv *env, jclass clazz) { if (g_user_count <= 0) return NULL; const char **arr = (const char **)malloc(g_user_count * sizeof(char *)); @@ -103,7 +103,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeUserGroups( +Java_dev_nucleusframework_nucleus_systeminfo_macos_NativeMacOsSystemInfoBridge_nativeUserGroups( JNIEnv *env, jclass clazz) { if (g_user_count <= 0) return NULL; const char **arr = (const char **)malloc(g_user_count * sizeof(char *)); diff --git a/system-info/src/main/native/windows/nucleus_system_info_battery.c b/system-info/src/main/native/windows/nucleus_system_info_battery.c index 1a58a1c20..76fb075c3 100644 --- a/system-info/src/main/native/windows/nucleus_system_info_battery.c +++ b/system-info/src/main/native/windows/nucleus_system_info_battery.c @@ -219,7 +219,7 @@ static BatteryData *get_battery(void) { // The Kotlin side should call nativeBatteryPresent first, which triggers the query. JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryPresent( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryPresent( JNIEnv *env, jclass clazz) { // Re-query each time batteryPresent is called (it's always called first) g_battery_queried = FALSE; @@ -228,7 +228,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryExternalConnected( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryExternalConnected( JNIEnv *env, jclass clazz) { BatteryData *bat = get_battery(); if (!bat->valid) return JNI_FALSE; @@ -236,7 +236,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryIsCharging( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryIsCharging( JNIEnv *env, jclass clazz) { BatteryData *bat = get_battery(); if (!bat->valid) return JNI_FALSE; @@ -244,7 +244,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryFullyCharged( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryFullyCharged( JNIEnv *env, jclass clazz) { BatteryData *bat = get_battery(); if (!bat->valid) return JNI_FALSE; @@ -258,7 +258,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryCurrentCapacity( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryCurrentCapacity( JNIEnv *env, jclass clazz) { BatteryData *bat = get_battery(); if (!bat->valid) return 0; @@ -267,7 +267,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryMaxCapacity( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryMaxCapacity( JNIEnv *env, jclass clazz) { BatteryData *bat = get_battery(); if (!bat->valid) return 0; @@ -275,7 +275,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryDesignCapacity( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryDesignCapacity( JNIEnv *env, jclass clazz) { BatteryData *bat = get_battery(); if (!bat->valid) return 0; @@ -283,7 +283,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryCycleCount( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryCycleCount( JNIEnv *env, jclass clazz) { BatteryData *bat = get_battery(); if (!bat->valid) return 0; @@ -291,7 +291,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryVoltage( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryVoltage( JNIEnv *env, jclass clazz) { BatteryData *bat = get_battery(); if (!bat->valid) return 0; @@ -299,7 +299,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryAmperage( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryAmperage( JNIEnv *env, jclass clazz) { BatteryData *bat = get_battery(); if (!bat->valid) return 0; @@ -309,7 +309,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jfloat JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryTemperature( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryTemperature( JNIEnv *env, jclass clazz) { BatteryData *bat = get_battery(); if (!bat->valid || !bat->temperature_valid) return (jfloat)NAN; @@ -318,7 +318,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryTimeRemaining( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryTimeRemaining( JNIEnv *env, jclass clazz) { BatteryData *bat = get_battery(); if (!bat->valid) return -1; @@ -348,7 +348,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryManufacturer( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryManufacturer( JNIEnv *env, jclass clazz) { BatteryData *bat = get_battery(); if (!bat->valid) return NULL; @@ -356,7 +356,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryModelName( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatteryModelName( JNIEnv *env, jclass clazz) { BatteryData *bat = get_battery(); if (!bat->valid) return NULL; @@ -364,7 +364,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatterySerialNumber( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBatterySerialNumber( JNIEnv *env, jclass clazz) { BatteryData *bat = get_battery(); if (!bat->valid) return NULL; diff --git a/system-info/src/main/native/windows/nucleus_system_info_common.h b/system-info/src/main/native/windows/nucleus_system_info_common.h index 37c2f0a04..5145d2c91 100644 --- a/system-info/src/main/native/windows/nucleus_system_info_common.h +++ b/system-info/src/main/native/windows/nucleus_system_info_common.h @@ -20,7 +20,7 @@ #include // JNI class path for the Windows bridge -#define BRIDGE_CLASS "io/github/kdroidfilter/nucleus/systeminfo/windows/NativeWindowsSystemInfoBridge" +#define BRIDGE_CLASS "dev/nucleusframework/nucleus/systeminfo/windows/NativeWindowsSystemInfoBridge" // Helper: convert a wide string to a UTF-8 malloc'd string. Caller must free. static inline char *wchar_to_utf8(const wchar_t *wstr) { diff --git a/system-info/src/main/native/windows/nucleus_system_info_component.c b/system-info/src/main/native/windows/nucleus_system_info_component.c index f0cd3c197..041f563d3 100644 --- a/system-info/src/main/native/windows/nucleus_system_info_component.c +++ b/system-info/src/main/native/windows/nucleus_system_info_component.c @@ -7,31 +7,31 @@ #include "nucleus_system_info_common.h" JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeComponentCount( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeComponentCount( JNIEnv *env, jclass clazz) { return 0; } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeComponentLabels( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeComponentLabels( JNIEnv *env, jclass clazz) { return to_string_array(env, NULL, 0); } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeComponentTemperatures( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeComponentTemperatures( JNIEnv *env, jclass clazz) { return (*env)->NewFloatArray(env, 0); } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeComponentMaxTemperatures( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeComponentMaxTemperatures( JNIEnv *env, jclass clazz) { return (*env)->NewFloatArray(env, 0); } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeComponentCriticalTemperatures( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeComponentCriticalTemperatures( JNIEnv *env, jclass clazz) { return (*env)->NewFloatArray(env, 0); } diff --git a/system-info/src/main/native/windows/nucleus_system_info_connectivity.c b/system-info/src/main/native/windows/nucleus_system_info_connectivity.c index 9ab00bee0..7ecb498d6 100644 --- a/system-info/src/main/native/windows/nucleus_system_info_connectivity.c +++ b/system-info/src/main/native/windows/nucleus_system_info_connectivity.c @@ -6,7 +6,7 @@ #include JNIEXPORT jboolean JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeIsNetworkConnected( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeIsNetworkConnected( JNIEnv *env, jclass clazz) { HRESULT hrInit = CoInitializeEx(NULL, COINIT_MULTITHREADED); @@ -36,7 +36,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGetMeteredStatus( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGetMeteredStatus( JNIEnv *env, jclass clazz) { HRESULT hrInit = CoInitializeEx(NULL, COINIT_MULTITHREADED); diff --git a/system-info/src/main/native/windows/nucleus_system_info_cpu.c b/system-info/src/main/native/windows/nucleus_system_info_cpu.c index 71aa1b7f1..e581c26f1 100644 --- a/system-info/src/main/native/windows/nucleus_system_info_cpu.c +++ b/system-info/src/main/native/windows/nucleus_system_info_cpu.c @@ -207,7 +207,7 @@ static void refresh_perf_data(void) { } JNIEXPORT jfloat JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGlobalCpuUsage( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGlobalCpuUsage( JNIEnv *env, jclass clazz) { FILETIME idle_ft, kernel_ft, user_ft; if (!GetSystemTimes(&idle_ft, &kernel_ft, &user_ft)) return 0.0f; @@ -240,7 +240,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativePhysicalCoreCount( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativePhysicalCoreCount( JNIEnv *env, jclass clazz) { DWORD len = 0; GetLogicalProcessorInformationEx(RelationProcessorCore, NULL, &len); @@ -267,13 +267,13 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeCpuCount( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeCpuCount( JNIEnv *env, jclass clazz) { return get_logical_cpu_count(); } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeCpuNames( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeCpuNames( JNIEnv *env, jclass clazz) { int count = get_logical_cpu_count(); const char **names = (const char **)malloc(count * sizeof(char *)); @@ -290,7 +290,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeCpuVendorIds( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeCpuVendorIds( JNIEnv *env, jclass clazz) { int count = get_logical_cpu_count(); char vendor[16]; @@ -304,7 +304,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeCpuBrands( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeCpuBrands( JNIEnv *env, jclass clazz) { int count = get_logical_cpu_count(); char brand[64]; @@ -328,7 +328,7 @@ typedef struct { } MY_PROCESSOR_POWER_INFORMATION; JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeCpuFrequencies( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeCpuFrequencies( JNIEnv *env, jclass clazz) { int count = get_logical_cpu_count(); jlongArray arr = (*env)->NewLongArray(env, count); @@ -372,7 +372,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeCpuUsages( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeCpuUsages( JNIEnv *env, jclass clazz) { int count = get_logical_cpu_count(); jfloatArray arr = (*env)->NewFloatArray(env, count); diff --git a/system-info/src/main/native/windows/nucleus_system_info_disk.c b/system-info/src/main/native/windows/nucleus_system_info_disk.c index 39f672acb..db7411e76 100644 --- a/system-info/src/main/native/windows/nucleus_system_info_disk.c +++ b/system-info/src/main/native/windows/nucleus_system_info_disk.c @@ -115,14 +115,14 @@ static void refresh_disks(void) { } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeDiskCount( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeDiskCount( JNIEnv *env, jclass clazz) { refresh_disks(); return g_disk_count; } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeDiskNames( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeDiskNames( JNIEnv *env, jclass clazz) { const char *names[MAX_DISKS]; for (int i = 0; i < g_disk_count; i++) names[i] = g_disks[i].name; @@ -130,7 +130,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeDiskFileSystems( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeDiskFileSystems( JNIEnv *env, jclass clazz) { const char *fs[MAX_DISKS]; for (int i = 0; i < g_disk_count; i++) fs[i] = g_disks[i].file_system; @@ -138,7 +138,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeDiskMountPoints( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeDiskMountPoints( JNIEnv *env, jclass clazz) { const char *mps[MAX_DISKS]; for (int i = 0; i < g_disk_count; i++) mps[i] = g_disks[i].mount_point; @@ -146,7 +146,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeDiskTotalSpaces( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeDiskTotalSpaces( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_disk_count); jlong *vals = (jlong *)malloc(g_disk_count * sizeof(jlong)); @@ -158,7 +158,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeDiskAvailableSpaces( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeDiskAvailableSpaces( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_disk_count); jlong *vals = (jlong *)malloc(g_disk_count * sizeof(jlong)); @@ -170,7 +170,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeDiskKinds( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeDiskKinds( JNIEnv *env, jclass clazz) { const char *kinds[MAX_DISKS]; for (int i = 0; i < g_disk_count; i++) kinds[i] = g_disks[i].kind; @@ -178,7 +178,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jbooleanArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeDiskRemovable( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeDiskRemovable( JNIEnv *env, jclass clazz) { jbooleanArray arr = (*env)->NewBooleanArray(env, g_disk_count); jboolean *vals = (jboolean *)malloc(g_disk_count * sizeof(jboolean)); @@ -190,7 +190,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jbooleanArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeDiskReadOnly( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeDiskReadOnly( JNIEnv *env, jclass clazz) { jbooleanArray arr = (*env)->NewBooleanArray(env, g_disk_count); jboolean *vals = (jboolean *)malloc(g_disk_count * sizeof(jboolean)); diff --git a/system-info/src/main/native/windows/nucleus_system_info_gpu.c b/system-info/src/main/native/windows/nucleus_system_info_gpu.c index 9b942664d..963215102 100644 --- a/system-info/src/main/native/windows/nucleus_system_info_gpu.c +++ b/system-info/src/main/native/windows/nucleus_system_info_gpu.c @@ -686,14 +686,14 @@ static void refresh_gpus(void) { // ============================================================================ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuCount( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuCount( JNIEnv *env, jclass clazz) { refresh_gpus(); return g_gpu_count; } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuNames( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuNames( JNIEnv *env, jclass clazz) { const char *names[MAX_GPUS]; for (int i = 0; i < g_gpu_count; i++) names[i] = g_gpus[i].name; @@ -701,7 +701,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuVendorIds( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuVendorIds( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_gpu_count); jlong *vals = (jlong *)malloc(g_gpu_count * sizeof(jlong)); @@ -712,7 +712,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuDeviceIds( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuDeviceIds( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_gpu_count); jlong *vals = (jlong *)malloc(g_gpu_count * sizeof(jlong)); @@ -723,7 +723,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuDedicatedVideoMemories( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuDedicatedVideoMemories( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_gpu_count); jlong *vals = (jlong *)malloc(g_gpu_count * sizeof(jlong)); @@ -734,7 +734,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuDedicatedSystemMemories( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuDedicatedSystemMemories( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_gpu_count); jlong *vals = (jlong *)malloc(g_gpu_count * sizeof(jlong)); @@ -745,7 +745,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuSharedSystemMemories( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuSharedSystemMemories( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_gpu_count); jlong *vals = (jlong *)malloc(g_gpu_count * sizeof(jlong)); @@ -756,7 +756,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuDriverVersions( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuDriverVersions( JNIEnv *env, jclass clazz) { const char *versions[MAX_GPUS]; for (int i = 0; i < g_gpu_count; i++) versions[i] = g_gpus[i].driver_version; @@ -766,7 +766,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr // Live metrics JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuTemperatures( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuTemperatures( JNIEnv *env, jclass clazz) { jfloatArray arr = (*env)->NewFloatArray(env, g_gpu_count); jfloat *vals = (jfloat *)malloc(g_gpu_count * sizeof(jfloat)); @@ -777,7 +777,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuUsages( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuUsages( JNIEnv *env, jclass clazz) { jfloatArray arr = (*env)->NewFloatArray(env, g_gpu_count); jfloat *vals = (jfloat *)malloc(g_gpu_count * sizeof(jfloat)); @@ -788,7 +788,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuMemoryUsed( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuMemoryUsed( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_gpu_count); jlong *vals = (jlong *)malloc(g_gpu_count * sizeof(jlong)); @@ -799,7 +799,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jintArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuCoreClocks( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuCoreClocks( JNIEnv *env, jclass clazz) { jintArray arr = (*env)->NewIntArray(env, g_gpu_count); jint *vals = (jint *)malloc(g_gpu_count * sizeof(jint)); @@ -810,7 +810,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jintArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuMemoryClocks( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuMemoryClocks( JNIEnv *env, jclass clazz) { jintArray arr = (*env)->NewIntArray(env, g_gpu_count); jint *vals = (jint *)malloc(g_gpu_count * sizeof(jint)); @@ -821,7 +821,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuFanSpeeds( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuFanSpeeds( JNIEnv *env, jclass clazz) { jfloatArray arr = (*env)->NewFloatArray(env, g_gpu_count); jfloat *vals = (jfloat *)malloc(g_gpu_count * sizeof(jfloat)); @@ -832,7 +832,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuPowerDraws( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeGpuPowerDraws( JNIEnv *env, jclass clazz) { jfloatArray arr = (*env)->NewFloatArray(env, g_gpu_count); jfloat *vals = (jfloat *)malloc(g_gpu_count * sizeof(jfloat)); diff --git a/system-info/src/main/native/windows/nucleus_system_info_hardware.c b/system-info/src/main/native/windows/nucleus_system_info_hardware.c index 0cb47bcd4..421d5ff21 100644 --- a/system-info/src/main/native/windows/nucleus_system_info_hardware.c +++ b/system-info/src/main/native/windows/nucleus_system_info_hardware.c @@ -112,7 +112,7 @@ static const BYTE *find_smbios_struct(BYTE type, BYTE *out_length) { // --- Motherboard (Type 2) --- JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeMotherboardName( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeMotherboardName( JNIEnv *env, jclass clazz) { BYTE len; const BYTE *s = find_smbios_struct(2, &len); @@ -121,7 +121,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeMotherboardVendor( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeMotherboardVendor( JNIEnv *env, jclass clazz) { BYTE len; const BYTE *s = find_smbios_struct(2, &len); @@ -130,7 +130,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeMotherboardVersion( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeMotherboardVersion( JNIEnv *env, jclass clazz) { BYTE len; const BYTE *s = find_smbios_struct(2, &len); @@ -139,7 +139,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeMotherboardSerial( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeMotherboardSerial( JNIEnv *env, jclass clazz) { BYTE len; const BYTE *s = find_smbios_struct(2, &len); @@ -148,7 +148,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeMotherboardAssetTag( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeMotherboardAssetTag( JNIEnv *env, jclass clazz) { BYTE len; const BYTE *s = find_smbios_struct(2, &len); @@ -159,7 +159,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr // --- Product (Type 1) --- JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProductName( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProductName( JNIEnv *env, jclass clazz) { BYTE len; const BYTE *s = find_smbios_struct(1, &len); @@ -168,7 +168,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProductFamily( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProductFamily( JNIEnv *env, jclass clazz) { BYTE len; const BYTE *s = find_smbios_struct(1, &len); @@ -177,7 +177,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProductSerial( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProductSerial( JNIEnv *env, jclass clazz) { BYTE len; const BYTE *s = find_smbios_struct(1, &len); @@ -186,7 +186,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProductSku( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProductSku( JNIEnv *env, jclass clazz) { BYTE len; const BYTE *s = find_smbios_struct(1, &len); @@ -195,7 +195,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProductUuid( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProductUuid( JNIEnv *env, jclass clazz) { BYTE len; const BYTE *s = find_smbios_struct(1, &len); @@ -228,7 +228,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProductVersion( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProductVersion( JNIEnv *env, jclass clazz) { BYTE len; const BYTE *s = find_smbios_struct(1, &len); @@ -237,7 +237,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProductVendor( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProductVendor( JNIEnv *env, jclass clazz) { BYTE len; const BYTE *s = find_smbios_struct(1, &len); diff --git a/system-info/src/main/native/windows/nucleus_system_info_idle.c b/system-info/src/main/native/windows/nucleus_system_info_idle.c index 91f906c11..4428bcaad 100644 --- a/system-info/src/main/native/windows/nucleus_system_info_idle.c +++ b/system-info/src/main/native/windows/nucleus_system_info_idle.c @@ -3,7 +3,7 @@ #include "nucleus_system_info_common.h" JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeIdleTimeSeconds( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeIdleTimeSeconds( JNIEnv *env, jclass clazz) { LASTINPUTINFO lii; lii.cbSize = sizeof(LASTINPUTINFO); diff --git a/system-info/src/main/native/windows/nucleus_system_info_memory.c b/system-info/src/main/native/windows/nucleus_system_info_memory.c index b1fde2148..15550f8df 100644 --- a/system-info/src/main/native/windows/nucleus_system_info_memory.c +++ b/system-info/src/main/native/windows/nucleus_system_info_memory.c @@ -10,7 +10,7 @@ static BOOL get_mem_status(MEMORYSTATUSEX *ms) { } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeTotalMemory( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeTotalMemory( JNIEnv *env, jclass clazz) { MEMORYSTATUSEX ms; if (!get_mem_status(&ms)) return 0; @@ -18,7 +18,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeFreeMemory( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeFreeMemory( JNIEnv *env, jclass clazz) { MEMORYSTATUSEX ms; if (!get_mem_status(&ms)) return 0; @@ -26,7 +26,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeAvailableMemory( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeAvailableMemory( JNIEnv *env, jclass clazz) { MEMORYSTATUSEX ms; if (!get_mem_status(&ms)) return 0; @@ -34,7 +34,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeUsedMemory( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeUsedMemory( JNIEnv *env, jclass clazz) { MEMORYSTATUSEX ms; if (!get_mem_status(&ms)) return 0; @@ -42,7 +42,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeTotalSwap( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeTotalSwap( JNIEnv *env, jclass clazz) { PERFORMANCE_INFORMATION pi; pi.cb = sizeof(pi); @@ -53,7 +53,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeFreeSwap( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeFreeSwap( JNIEnv *env, jclass clazz) { PERFORMANCE_INFORMATION pi; pi.cb = sizeof(pi); @@ -70,7 +70,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeUsedSwap( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeUsedSwap( JNIEnv *env, jclass clazz) { PERFORMANCE_INFORMATION pi; pi.cb = sizeof(pi); diff --git a/system-info/src/main/native/windows/nucleus_system_info_network.c b/system-info/src/main/native/windows/nucleus_system_info_network.c index b0a40c63e..e8905c90c 100644 --- a/system-info/src/main/native/windows/nucleus_system_info_network.c +++ b/system-info/src/main/native/windows/nucleus_system_info_network.c @@ -104,14 +104,14 @@ static void refresh_networks(void) { } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeNetworkCount( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeNetworkCount( JNIEnv *env, jclass clazz) { refresh_networks(); return g_net_count; } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeNetworkNames( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeNetworkNames( JNIEnv *env, jclass clazz) { const char *names[MAX_NETWORKS]; for (int i = 0; i < g_net_count; i++) names[i] = g_nets[i].name; @@ -119,7 +119,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeNetworkReceivedBytes( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeNetworkReceivedBytes( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_net_count); jlong *vals = (jlong *)malloc(g_net_count * sizeof(jlong)); @@ -131,7 +131,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeNetworkTransmittedBytes( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeNetworkTransmittedBytes( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_net_count); jlong *vals = (jlong *)malloc(g_net_count * sizeof(jlong)); @@ -143,7 +143,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeNetworkReceivedPackets( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeNetworkReceivedPackets( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_net_count); jlong *vals = (jlong *)malloc(g_net_count * sizeof(jlong)); @@ -155,7 +155,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeNetworkTransmittedPackets( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeNetworkTransmittedPackets( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_net_count); jlong *vals = (jlong *)malloc(g_net_count * sizeof(jlong)); @@ -167,7 +167,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeNetworkErrorsReceived( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeNetworkErrorsReceived( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_net_count); jlong *vals = (jlong *)malloc(g_net_count * sizeof(jlong)); @@ -179,7 +179,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeNetworkErrorsTransmitted( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeNetworkErrorsTransmitted( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_net_count); jlong *vals = (jlong *)malloc(g_net_count * sizeof(jlong)); @@ -191,7 +191,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeNetworkMacAddresses( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeNetworkMacAddresses( JNIEnv *env, jclass clazz) { const char *macs[MAX_NETWORKS]; for (int i = 0; i < g_net_count; i++) macs[i] = g_nets[i].mac_address; @@ -199,7 +199,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeNetworkMtus( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeNetworkMtus( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_net_count); jlong *vals = (jlong *)malloc(g_net_count * sizeof(jlong)); diff --git a/system-info/src/main/native/windows/nucleus_system_info_os.c b/system-info/src/main/native/windows/nucleus_system_info_os.c index 150be13b4..f71a03604 100644 --- a/system-info/src/main/native/windows/nucleus_system_info_os.c +++ b/system-info/src/main/native/windows/nucleus_system_info_os.c @@ -6,7 +6,7 @@ #define NT_CURRENT_VERSION L"SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion" JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeOsName( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeOsName( JNIEnv *env, jclass clazz) { char *product = reg_read_string(HKEY_LOCAL_MACHINE, NT_CURRENT_VERSION, L"ProductName"); if (!product) return to_jstring(env, "Windows"); @@ -42,7 +42,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeKernelVersion( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeKernelVersion( JNIEnv *env, jclass clazz) { char *build = reg_read_string(HKEY_LOCAL_MACHINE, NT_CURRENT_VERSION, L"CurrentBuildNumber"); if (!build) return NULL; @@ -60,7 +60,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeOsVersion( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeOsVersion( JNIEnv *env, jclass clazz) { DWORD major = 0, minor = 0; if (!reg_read_dword(HKEY_LOCAL_MACHINE, NT_CURRENT_VERSION, L"CurrentMajorVersionNumber", &major)) @@ -78,7 +78,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeLongOsVersion( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeLongOsVersion( JNIEnv *env, jclass clazz) { char *product = reg_read_string(HKEY_LOCAL_MACHINE, NT_CURRENT_VERSION, L"ProductName"); char *display_ver = reg_read_string(HKEY_LOCAL_MACHINE, NT_CURRENT_VERSION, L"DisplayVersion"); @@ -124,13 +124,13 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeDistributionId( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeDistributionId( JNIEnv *env, jclass clazz) { return to_jstring(env, "windows"); } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeHostName( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeHostName( JNIEnv *env, jclass clazz) { wchar_t buf[256]; DWORD size = sizeof(buf) / sizeof(buf[0]); @@ -139,7 +139,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeCpuArch( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeCpuArch( JNIEnv *env, jclass clazz) { SYSTEM_INFO si; GetNativeSystemInfo(&si); @@ -154,13 +154,13 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeUptime( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeUptime( JNIEnv *env, jclass clazz) { return (jlong)(GetTickCount64() / 1000ULL); } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBootTime( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeBootTime( JNIEnv *env, jclass clazz) { ULONGLONG uptime_ms = GetTickCount64(); FILETIME ft; diff --git a/system-info/src/main/native/windows/nucleus_system_info_process.c b/system-info/src/main/native/windows/nucleus_system_info_process.c index 58552e8ef..ff2f7abe1 100644 --- a/system-info/src/main/native/windows/nucleus_system_info_process.c +++ b/system-info/src/main/native/windows/nucleus_system_info_process.c @@ -168,14 +168,14 @@ static int fill_single_process(DWORD pid, process_entry_t *p) { // --- JNI bulk process functions --- JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessCount( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessCount( JNIEnv *env, jclass clazz) { refresh_processes(); return g_proc_count; } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessPids( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessPids( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_proc_count); jlong *vals = (jlong *)malloc(g_proc_count * sizeof(jlong)); @@ -187,7 +187,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessNames( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessNames( JNIEnv *env, jclass clazz) { const char *names[MAX_PROCS]; for (int i = 0; i < g_proc_count; i++) names[i] = g_procs[i].name; @@ -195,7 +195,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessExes( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessExes( JNIEnv *env, jclass clazz) { const char *exes[MAX_PROCS]; for (int i = 0; i < g_proc_count; i++) exes[i] = g_procs[i].exe; @@ -203,7 +203,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessMemories( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessMemories( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_proc_count); jlong *vals = (jlong *)malloc(g_proc_count * sizeof(jlong)); @@ -215,7 +215,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessVirtualMemories( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessVirtualMemories( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_proc_count); jlong *vals = (jlong *)malloc(g_proc_count * sizeof(jlong)); @@ -227,7 +227,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jfloatArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessCpuUsages( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessCpuUsages( JNIEnv *env, jclass clazz) { jfloatArray arr = (*env)->NewFloatArray(env, g_proc_count); jfloat *vals = (jfloat *)malloc(g_proc_count * sizeof(jfloat)); @@ -239,7 +239,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessStatuses( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessStatuses( JNIEnv *env, jclass clazz) { const char *statuses[MAX_PROCS]; for (int i = 0; i < g_proc_count; i++) statuses[i] = g_procs[i].status; @@ -247,7 +247,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessStartTimes( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessStartTimes( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_proc_count); jlong *vals = (jlong *)malloc(g_proc_count * sizeof(jlong)); @@ -259,7 +259,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessRunTimes( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessRunTimes( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_proc_count); jlong *vals = (jlong *)malloc(g_proc_count * sizeof(jlong)); @@ -271,7 +271,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlongArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessParentPids( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessParentPids( JNIEnv *env, jclass clazz) { jlongArray arr = (*env)->NewLongArray(env, g_proc_count); jlong *vals = (jlong *)malloc(g_proc_count * sizeof(jlong)); @@ -283,7 +283,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessCmds( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessCmds( JNIEnv *env, jclass clazz) { const char *cmds[MAX_PROCS]; for (int i = 0; i < g_proc_count; i++) cmds[i] = g_procs[i].cmd; @@ -291,7 +291,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessCwds( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessCwds( JNIEnv *env, jclass clazz) { const char *cwds[MAX_PROCS]; for (int i = 0; i < g_proc_count; i++) cwds[i] = g_procs[i].cwd; @@ -299,7 +299,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessRoots( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessRoots( JNIEnv *env, jclass clazz) { // Windows doesn't have a per-process root concept; use exe drive root const char *roots[MAX_PROCS]; @@ -321,7 +321,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr // --- Single process by PID --- JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidName( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidName( JNIEnv *env, jclass clazz, jlong pid) { process_entry_t p; if (!fill_single_process((DWORD)pid, &p)) return NULL; @@ -329,7 +329,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidExe( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidExe( JNIEnv *env, jclass clazz, jlong pid) { process_entry_t p; if (!fill_single_process((DWORD)pid, &p)) return NULL; @@ -337,7 +337,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidMemory( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidMemory( JNIEnv *env, jclass clazz, jlong pid) { process_entry_t p; if (!fill_single_process((DWORD)pid, &p)) return 0; @@ -345,7 +345,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidVirtualMemory( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidVirtualMemory( JNIEnv *env, jclass clazz, jlong pid) { process_entry_t p; if (!fill_single_process((DWORD)pid, &p)) return 0; @@ -353,7 +353,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jfloat JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidCpuUsage( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidCpuUsage( JNIEnv *env, jclass clazz, jlong pid) { process_entry_t p; if (!fill_single_process((DWORD)pid, &p)) return 0.0f; @@ -361,7 +361,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidStatus( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidStatus( JNIEnv *env, jclass clazz, jlong pid) { process_entry_t p; if (!fill_single_process((DWORD)pid, &p)) return NULL; @@ -369,7 +369,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidStartTime( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidStartTime( JNIEnv *env, jclass clazz, jlong pid) { process_entry_t p; if (!fill_single_process((DWORD)pid, &p)) return 0; @@ -377,7 +377,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidRunTime( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidRunTime( JNIEnv *env, jclass clazz, jlong pid) { process_entry_t p; if (!fill_single_process((DWORD)pid, &p)) return 0; @@ -385,7 +385,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jlong JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidParentPid( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidParentPid( JNIEnv *env, jclass clazz, jlong pid) { process_entry_t p; if (!fill_single_process((DWORD)pid, &p)) return -1; @@ -393,7 +393,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidCmd( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidCmd( JNIEnv *env, jclass clazz, jlong pid) { process_entry_t p; if (!fill_single_process((DWORD)pid, &p)) return NULL; @@ -401,7 +401,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidCwd( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidCwd( JNIEnv *env, jclass clazz, jlong pid) { process_entry_t p; if (!fill_single_process((DWORD)pid, &p)) return NULL; @@ -409,7 +409,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jstring JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidRoot( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeProcessByPidRoot( JNIEnv *env, jclass clazz, jlong pid) { process_entry_t p; if (!fill_single_process((DWORD)pid, &p)) return NULL; diff --git a/system-info/src/main/native/windows/nucleus_system_info_user.c b/system-info/src/main/native/windows/nucleus_system_info_user.c index 57d54e102..9196b7106 100644 --- a/system-info/src/main/native/windows/nucleus_system_info_user.c +++ b/system-info/src/main/native/windows/nucleus_system_info_user.c @@ -107,14 +107,14 @@ static void refresh_users(void) { } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeUserCount( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeUserCount( JNIEnv *env, jclass clazz) { refresh_users(); return g_user_count; } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeUserNames( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeUserNames( JNIEnv *env, jclass clazz) { const char *names[MAX_USERS]; for (int i = 0; i < g_user_count; i++) names[i] = g_users[i].name; @@ -122,7 +122,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeUserIds( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeUserIds( JNIEnv *env, jclass clazz) { const char *ids[MAX_USERS]; for (int i = 0; i < g_user_count; i++) ids[i] = g_users[i].sid_str; @@ -130,7 +130,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeUserGroupIds( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeUserGroupIds( JNIEnv *env, jclass clazz) { const char *gids[MAX_USERS]; for (int i = 0; i < g_user_count; i++) gids[i] = g_users[i].primary_gid; @@ -138,7 +138,7 @@ Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBr } JNIEXPORT jobjectArray JNICALL -Java_io_github_kdroidfilter_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeUserGroups( +Java_dev_nucleusframework_nucleus_systeminfo_windows_NativeWindowsSystemInfoBridge_nativeUserGroups( JNIEnv *env, jclass clazz) { const char *groups[MAX_USERS]; for (int i = 0; i < g_user_count; i++) groups[i] = g_users[i].groups; diff --git a/system-info/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.system-info/reachability-metadata.json b/system-info/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.system-info/reachability-metadata.json new file mode 100644 index 000000000..8f80e8280 --- /dev/null +++ b/system-info/src/main/resources/META-INF/native-image/dev.nucleusframework/nucleus.system-info/reachability-metadata.json @@ -0,0 +1,19 @@ +{ + "reflection": [ + { + "type": "dev.nucleusframework.nucleus.systeminfo.linux.NativeLinuxSystemInfoBridge", + "jniAccessible": true, + "methods": [] + }, + { + "type": "dev.nucleusframework.nucleus.systeminfo.macos.NativeMacOsSystemInfoBridge", + "jniAccessible": true, + "methods": [] + }, + { + "type": "dev.nucleusframework.nucleus.systeminfo.windows.NativeWindowsSystemInfoBridge", + "jniAccessible": true, + "methods": [] + } + ] +} diff --git a/system-info/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.system-info/reachability-metadata.json b/system-info/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.system-info/reachability-metadata.json deleted file mode 100644 index a91a2ce52..000000000 --- a/system-info/src/main/resources/META-INF/native-image/io.github.kdroidfilter/nucleus.system-info/reachability-metadata.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "reflection": [ - { - "type": "io.github.kdroidfilter.nucleus.systeminfo.linux.NativeLinuxSystemInfoBridge", - "jniAccessible": true, - "methods": [] - }, - { - "type": "io.github.kdroidfilter.nucleus.systeminfo.macos.NativeMacOsSystemInfoBridge", - "jniAccessible": true, - "methods": [] - }, - { - "type": "io.github.kdroidfilter.nucleus.systeminfo.windows.NativeWindowsSystemInfoBridge", - "jniAccessible": true, - "methods": [] - } - ] -} diff --git a/system-info/src/test/kotlin/io/github/kdroidfilter/nucleus/systeminfo/SystemInfoSmokeTest.kt b/system-info/src/test/kotlin/dev/nucleusframework/nucleus/systeminfo/SystemInfoSmokeTest.kt similarity index 99% rename from system-info/src/test/kotlin/io/github/kdroidfilter/nucleus/systeminfo/SystemInfoSmokeTest.kt rename to system-info/src/test/kotlin/dev/nucleusframework/nucleus/systeminfo/SystemInfoSmokeTest.kt index 1e072128f..4edc1f454 100644 --- a/system-info/src/test/kotlin/io/github/kdroidfilter/nucleus/systeminfo/SystemInfoSmokeTest.kt +++ b/system-info/src/test/kotlin/dev/nucleusframework/nucleus/systeminfo/SystemInfoSmokeTest.kt @@ -1,6 +1,6 @@ @file:Suppress("MaxLineLength") -package io.github.kdroidfilter.nucleus.systeminfo +package dev.nucleusframework.nucleus.systeminfo import kotlin.test.Test import kotlin.test.assertNotNull diff --git a/system-info/src/test/kotlin/io/github/kdroidfilter/nucleus/systeminfo/SystemInfoTest.kt b/system-info/src/test/kotlin/dev/nucleusframework/nucleus/systeminfo/SystemInfoTest.kt similarity index 98% rename from system-info/src/test/kotlin/io/github/kdroidfilter/nucleus/systeminfo/SystemInfoTest.kt rename to system-info/src/test/kotlin/dev/nucleusframework/nucleus/systeminfo/SystemInfoTest.kt index 39e44a435..63bff4d1a 100644 --- a/system-info/src/test/kotlin/io/github/kdroidfilter/nucleus/systeminfo/SystemInfoTest.kt +++ b/system-info/src/test/kotlin/dev/nucleusframework/nucleus/systeminfo/SystemInfoTest.kt @@ -1,6 +1,6 @@ @file:Suppress("MaxLineLength") -package io.github.kdroidfilter.nucleus.systeminfo +package dev.nucleusframework.nucleus.systeminfo import kotlin.test.Test import kotlin.test.assertNotNull diff --git a/taskbar-progress-tao/build.gradle.kts b/taskbar-progress-tao/build.gradle.kts index 336c2cba4..47dc09e14 100644 --- a/taskbar-progress-tao/build.gradle.kts +++ b/taskbar-progress-tao/build.gradle.kts @@ -38,7 +38,7 @@ kotlin { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.taskbar-progress-tao", publishVersion) + coordinates("dev.nucleusframework", "nucleus.taskbar-progress-tao", publishVersion) pom { name.set("Nucleus Taskbar Progress (Tao)") @@ -54,7 +54,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/taskbar-progress-tao/config/ktlint/baseline.xml b/taskbar-progress-tao/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/taskbar-progress-tao/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/taskbar-progress-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/tao/NucleusTaskbarProgress.kt b/taskbar-progress-tao/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/tao/NucleusTaskbarProgress.kt similarity index 94% rename from taskbar-progress-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/tao/NucleusTaskbarProgress.kt rename to taskbar-progress-tao/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/tao/NucleusTaskbarProgress.kt index babbb1b4f..ef44c5e71 100644 --- a/taskbar-progress-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/tao/NucleusTaskbarProgress.kt +++ b/taskbar-progress-tao/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/tao/NucleusTaskbarProgress.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.taskbarprogress.tao +package dev.nucleusframework.nucleus.taskbarprogress.tao -import io.github.kdroidfilter.nucleus.application.NucleusWindow -import io.github.kdroidfilter.nucleus.taskbarprogress.TaskbarProgress +import dev.nucleusframework.nucleus.application.NucleusWindow +import dev.nucleusframework.nucleus.taskbarprogress.TaskbarProgress import java.util.concurrent.Executors /** @@ -111,7 +111,7 @@ object NucleusTaskbarProgress { private inline fun dispatch( window: NucleusWindow, crossinline awt: (java.awt.Window) -> Boolean, - crossinline tao: (io.github.kdroidfilter.nucleus.window.tao.TaoWindow) -> Boolean, + crossinline tao: (dev.nucleusframework.nucleus.window.tao.TaoWindow) -> Boolean, ): Boolean { val awtWindow = window.unsafe.awtWindow val taoWindow = window.unsafe.taoWindow diff --git a/taskbar-progress-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/tao/TaoTaskbarProgress.kt b/taskbar-progress-tao/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/tao/TaoTaskbarProgress.kt similarity index 91% rename from taskbar-progress-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/tao/TaoTaskbarProgress.kt rename to taskbar-progress-tao/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/tao/TaoTaskbarProgress.kt index 13dd410ab..ec58a248d 100644 --- a/taskbar-progress-tao/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/tao/TaoTaskbarProgress.kt +++ b/taskbar-progress-tao/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/tao/TaoTaskbarProgress.kt @@ -1,11 +1,11 @@ -package io.github.kdroidfilter.nucleus.taskbarprogress.tao +package dev.nucleusframework.nucleus.taskbarprogress.tao import androidx.compose.runtime.Composable import androidx.compose.runtime.remember -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.taskbarprogress.TaskbarProgress -import io.github.kdroidfilter.nucleus.window.tao.LocalTaoWindow -import io.github.kdroidfilter.nucleus.window.tao.TaoWindow +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.taskbarprogress.TaskbarProgress +import dev.nucleusframework.nucleus.window.tao.LocalTaoWindow +import dev.nucleusframework.nucleus.window.tao.TaoWindow /** * Tao-backend façade over [TaskbarProgress]. On Windows it resolves the HWND diff --git a/taskbar-progress/build.gradle.kts b/taskbar-progress/build.gradle.kts index 29f4a6356..da38f6f61 100644 --- a/taskbar-progress/build.gradle.kts +++ b/taskbar-progress/build.gradle.kts @@ -79,7 +79,7 @@ tasks.configureEach { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.taskbar-progress", publishVersion) + coordinates("dev.nucleusframework", "nucleus.taskbar-progress", publishVersion) pom { name.set("Nucleus Taskbar Progress") @@ -95,7 +95,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/taskbar-progress/config/ktlint/baseline.xml b/taskbar-progress/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/taskbar-progress/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/taskbar-progress/detekt-baseline.xml b/taskbar-progress/detekt-baseline.xml new file mode 100644 index 000000000..9de2083a5 --- /dev/null +++ b/taskbar-progress/detekt-baseline.xml @@ -0,0 +1,7 @@ + + + + + TooManyFunctions:TaskbarProgress.kt:TaskbarProgress + + diff --git a/taskbar-progress/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/TaskbarProgress.kt b/taskbar-progress/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/TaskbarProgress.kt similarity index 96% rename from taskbar-progress/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/TaskbarProgress.kt rename to taskbar-progress/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/TaskbarProgress.kt index 60011016f..1fba0fb89 100644 --- a/taskbar-progress/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/TaskbarProgress.kt +++ b/taskbar-progress/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/TaskbarProgress.kt @@ -1,10 +1,10 @@ -package io.github.kdroidfilter.nucleus.taskbarprogress +package dev.nucleusframework.nucleus.taskbarprogress -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.taskbarprogress.linux.LinuxDesktopFileDetector -import io.github.kdroidfilter.nucleus.taskbarprogress.linux.NativeLinuxTaskbarBridge -import io.github.kdroidfilter.nucleus.taskbarprogress.macos.NativeMacOsTaskbarBridge -import io.github.kdroidfilter.nucleus.taskbarprogress.windows.NativeWindowsTaskbarBridge +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.taskbarprogress.linux.LinuxDesktopFileDetector +import dev.nucleusframework.nucleus.taskbarprogress.linux.NativeLinuxTaskbarBridge +import dev.nucleusframework.nucleus.taskbarprogress.macos.NativeMacOsTaskbarBridge +import dev.nucleusframework.nucleus.taskbarprogress.windows.NativeWindowsTaskbarBridge import java.awt.Window /** diff --git a/taskbar-progress/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/linux/LinuxDesktopFileDetector.kt b/taskbar-progress/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/linux/LinuxDesktopFileDetector.kt similarity index 51% rename from taskbar-progress/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/linux/LinuxDesktopFileDetector.kt rename to taskbar-progress/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/linux/LinuxDesktopFileDetector.kt index 1ba365d37..053dc621f 100644 --- a/taskbar-progress/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/linux/LinuxDesktopFileDetector.kt +++ b/taskbar-progress/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/linux/LinuxDesktopFileDetector.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.taskbarprogress.linux +package dev.nucleusframework.nucleus.taskbarprogress.linux -import io.github.kdroidfilter.nucleus.core.runtime.tools.LinuxDesktopFileDetector as CoreDetector +import dev.nucleusframework.nucleus.core.runtime.tools.LinuxDesktopFileDetector as CoreDetector /** Delegates to [CoreDetector] in core-runtime. */ internal object LinuxDesktopFileDetector { diff --git a/taskbar-progress/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/linux/NativeLinuxTaskbarBridge.kt b/taskbar-progress/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/linux/NativeLinuxTaskbarBridge.kt similarity index 88% rename from taskbar-progress/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/linux/NativeLinuxTaskbarBridge.kt rename to taskbar-progress/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/linux/NativeLinuxTaskbarBridge.kt index f9b121f5a..587833de3 100644 --- a/taskbar-progress/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/linux/NativeLinuxTaskbarBridge.kt +++ b/taskbar-progress/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/linux/NativeLinuxTaskbarBridge.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.taskbarprogress.linux +package dev.nucleusframework.nucleus.taskbarprogress.linux -import io.github.kdroidfilter.nucleus.launcher.linux.LauncherProperties -import io.github.kdroidfilter.nucleus.launcher.linux.LinuxLauncherEntry +import dev.nucleusframework.nucleus.launcher.linux.LauncherProperties +import dev.nucleusframework.nucleus.launcher.linux.LinuxLauncherEntry private const val STATE_NO_PROGRESS = 0x00 diff --git a/taskbar-progress/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/macos/NativeMacOsTaskbarBridge.kt b/taskbar-progress/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/macos/NativeMacOsTaskbarBridge.kt similarity index 81% rename from taskbar-progress/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/macos/NativeMacOsTaskbarBridge.kt rename to taskbar-progress/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/macos/NativeMacOsTaskbarBridge.kt index 9fabfd02a..fa1ee4510 100644 --- a/taskbar-progress/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/macos/NativeMacOsTaskbarBridge.kt +++ b/taskbar-progress/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/macos/NativeMacOsTaskbarBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.taskbarprogress.macos +package dev.nucleusframework.nucleus.taskbarprogress.macos -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader private const val LIBRARY_NAME = "nucleus_taskbar_progress" diff --git a/taskbar-progress/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/windows/NativeWindowsTaskbarBridge.kt b/taskbar-progress/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/windows/NativeWindowsTaskbarBridge.kt similarity index 88% rename from taskbar-progress/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/windows/NativeWindowsTaskbarBridge.kt rename to taskbar-progress/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/windows/NativeWindowsTaskbarBridge.kt index e00856274..7d045b553 100644 --- a/taskbar-progress/src/main/kotlin/io/github/kdroidfilter/nucleus/taskbarprogress/windows/NativeWindowsTaskbarBridge.kt +++ b/taskbar-progress/src/main/kotlin/dev/nucleusframework/nucleus/taskbarprogress/windows/NativeWindowsTaskbarBridge.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.taskbarprogress.windows +package dev.nucleusframework.nucleus.taskbarprogress.windows -import io.github.kdroidfilter.nucleus.core.runtime.NativeLibraryLoader +import dev.nucleusframework.nucleus.core.runtime.NativeLibraryLoader import java.awt.Window private const val LIBRARY_NAME = "nucleus_taskbar_progress" diff --git a/taskbar-progress/src/main/native/macos/nucleus_taskbar_progress_macos.m b/taskbar-progress/src/main/native/macos/nucleus_taskbar_progress_macos.m index fc9ec508e..131c12f80 100644 --- a/taskbar-progress/src/main/native/macos/nucleus_taskbar_progress_macos.m +++ b/taskbar-progress/src/main/native/macos/nucleus_taskbar_progress_macos.m @@ -117,7 +117,7 @@ static void runOnMain(void (^block)(void)) { /* ---- JNI: nativeSetDockProgress ----------------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_taskbarprogress_macos_NativeMacOsTaskbarBridge_nativeSetDockProgress( +Java_dev_nucleusframework_nucleus_taskbarprogress_macos_NativeMacOsTaskbarBridge_nativeSetDockProgress( JNIEnv *env, jclass clazz, jlong completed, jlong total) { (void)env; (void)clazz; @@ -149,7 +149,7 @@ static void runOnMain(void (^block)(void)) { /* ---- JNI: nativeSetDockState -------------------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_taskbarprogress_macos_NativeMacOsTaskbarBridge_nativeSetDockState( +Java_dev_nucleusframework_nucleus_taskbarprogress_macos_NativeMacOsTaskbarBridge_nativeSetDockState( JNIEnv *env, jclass clazz, jint flags) { (void)env; (void)clazz; @@ -183,7 +183,7 @@ static void runOnMain(void (^block)(void)) { /* ---- JNI: nativeRequestAttention ---------------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_taskbarprogress_macos_NativeMacOsTaskbarBridge_nativeRequestAttention( +Java_dev_nucleusframework_nucleus_taskbarprogress_macos_NativeMacOsTaskbarBridge_nativeRequestAttention( JNIEnv *env, jclass clazz, jint type) { (void)env; (void)clazz; @@ -206,7 +206,7 @@ static void runOnMain(void (^block)(void)) { /* ---- JNI: nativeCancelAttention ----------------------------------- */ JNIEXPORT void JNICALL -Java_io_github_kdroidfilter_nucleus_taskbarprogress_macos_NativeMacOsTaskbarBridge_nativeCancelAttention( +Java_dev_nucleusframework_nucleus_taskbarprogress_macos_NativeMacOsTaskbarBridge_nativeCancelAttention( JNIEnv *env, jclass clazz, jint requestId) { (void)env; (void)clazz; diff --git a/taskbar-progress/src/main/native/windows/nucleus_taskbar_progress.c b/taskbar-progress/src/main/native/windows/nucleus_taskbar_progress.c index a24ea933e..49b988b8d 100644 --- a/taskbar-progress/src/main/native/windows/nucleus_taskbar_progress.c +++ b/taskbar-progress/src/main/native/windows/nucleus_taskbar_progress.c @@ -266,7 +266,7 @@ static jint SetProgressStateByHwnd(HWND hwnd, jint flags) { /* ---- AWT-window-driven entrypoints ------------------------------- */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_taskbarprogress_windows_NativeWindowsTaskbarBridge_nativeSetProgress( +Java_dev_nucleusframework_nucleus_taskbarprogress_windows_NativeWindowsTaskbarBridge_nativeSetProgress( JNIEnv *env, jclass clazz, jobject awtWindow, jlong completed, jlong total) { HWND hwnd; @@ -278,7 +278,7 @@ Java_io_github_kdroidfilter_nucleus_taskbarprogress_windows_NativeWindowsTaskbar /* ---- HWND-driven entrypoints (used by non-AWT backends, e.g. Tao) - */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_taskbarprogress_windows_NativeWindowsTaskbarBridge_nativeSetProgressByHwnd( +Java_dev_nucleusframework_nucleus_taskbarprogress_windows_NativeWindowsTaskbarBridge_nativeSetProgressByHwnd( JNIEnv *env, jclass clazz, jlong hwnd, jlong completed, jlong total) { (void)env; (void)clazz; @@ -286,7 +286,7 @@ Java_io_github_kdroidfilter_nucleus_taskbarprogress_windows_NativeWindowsTaskbar } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_taskbarprogress_windows_NativeWindowsTaskbarBridge_nativeSetProgressStateByHwnd( +Java_dev_nucleusframework_nucleus_taskbarprogress_windows_NativeWindowsTaskbarBridge_nativeSetProgressStateByHwnd( JNIEnv *env, jclass clazz, jlong hwnd, jint flags) { (void)env; (void)clazz; @@ -294,7 +294,7 @@ Java_io_github_kdroidfilter_nucleus_taskbarprogress_windows_NativeWindowsTaskbar } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_taskbarprogress_windows_NativeWindowsTaskbarBridge_nativeSetProgressState( +Java_dev_nucleusframework_nucleus_taskbarprogress_windows_NativeWindowsTaskbarBridge_nativeSetProgressState( JNIEnv *env, jclass clazz, jobject awtWindow, jint flags) { HWND hwnd; @@ -352,7 +352,7 @@ static jint RequestAttentionByHwnd(HWND hwnd, jint type) { * type: 0 = stop, 1 = informational (tray only, 4 flashes), 2 = critical (all, until foreground) */ JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_taskbarprogress_windows_NativeWindowsTaskbarBridge_nativeRequestAttention( +Java_dev_nucleusframework_nucleus_taskbarprogress_windows_NativeWindowsTaskbarBridge_nativeRequestAttention( JNIEnv *env, jclass clazz, jobject awtWindow, jint type) { HWND hwnd; @@ -362,7 +362,7 @@ Java_io_github_kdroidfilter_nucleus_taskbarprogress_windows_NativeWindowsTaskbar } JNIEXPORT jint JNICALL -Java_io_github_kdroidfilter_nucleus_taskbarprogress_windows_NativeWindowsTaskbarBridge_nativeRequestAttentionByHwnd( +Java_dev_nucleusframework_nucleus_taskbarprogress_windows_NativeWindowsTaskbarBridge_nativeRequestAttentionByHwnd( JNIEnv *env, jclass clazz, jlong hwnd, jint type) { (void)env; (void)clazz; diff --git a/tmp/souvlaki b/tmp/souvlaki deleted file mode 160000 index 023e1a98f..000000000 --- a/tmp/souvlaki +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 023e1a98f2b31704cfc48c160809ed3c5e139345 diff --git a/updater-runtime/build.gradle.kts b/updater-runtime/build.gradle.kts index dc2c12230..c77a97bbc 100644 --- a/updater-runtime/build.gradle.kts +++ b/updater-runtime/build.gradle.kts @@ -31,7 +31,7 @@ kotlin { } mavenPublishing { - coordinates("io.github.kdroidfilter", "nucleus.updater-runtime", publishVersion) + coordinates("dev.nucleusframework", "nucleus.updater-runtime", publishVersion) pom { name.set("Nucleus Updater Runtime") @@ -47,7 +47,7 @@ mavenPublishing { developers { developer { - id.set("kdroidfilter") + id.set("kdroidFilter") name.set("kdroidFilter") url.set("https://github.com/kdroidFilter") } diff --git a/updater-runtime/config/ktlint/baseline.xml b/updater-runtime/config/ktlint/baseline.xml new file mode 100644 index 000000000..981420778 --- /dev/null +++ b/updater-runtime/config/ktlint/baseline.xml @@ -0,0 +1,3 @@ + + + diff --git a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/DownloadProgress.kt b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/DownloadProgress.kt similarity index 77% rename from updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/DownloadProgress.kt rename to updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/DownloadProgress.kt index 78ce599ba..dc6cca1c6 100644 --- a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/DownloadProgress.kt +++ b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/DownloadProgress.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.updater +package dev.nucleusframework.nucleus.updater import java.io.File diff --git a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/NucleusUpdater.kt b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/NucleusUpdater.kt similarity index 91% rename from updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/NucleusUpdater.kt rename to updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/NucleusUpdater.kt index 913457229..93781578a 100644 --- a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/NucleusUpdater.kt +++ b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/NucleusUpdater.kt @@ -1,18 +1,18 @@ -package io.github.kdroidfilter.nucleus.updater - -import io.github.kdroidfilter.nucleus.core.runtime.ExecutableRuntime -import io.github.kdroidfilter.nucleus.core.runtime.ExecutableType -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.updater.exception.ChecksumException -import io.github.kdroidfilter.nucleus.updater.exception.NetworkException -import io.github.kdroidfilter.nucleus.updater.exception.NoMatchingFileException -import io.github.kdroidfilter.nucleus.updater.exception.UpdateException -import io.github.kdroidfilter.nucleus.updater.internal.ChecksumVerifier -import io.github.kdroidfilter.nucleus.updater.internal.FileSelector -import io.github.kdroidfilter.nucleus.updater.internal.PlatformInfo -import io.github.kdroidfilter.nucleus.updater.internal.PlatformInstaller -import io.github.kdroidfilter.nucleus.updater.internal.UpdateMarker -import io.github.kdroidfilter.nucleus.updater.internal.YamlParser +package dev.nucleusframework.nucleus.updater + +import dev.nucleusframework.nucleus.core.runtime.ExecutableRuntime +import dev.nucleusframework.nucleus.core.runtime.ExecutableType +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.updater.exception.ChecksumException +import dev.nucleusframework.nucleus.updater.exception.NetworkException +import dev.nucleusframework.nucleus.updater.exception.NoMatchingFileException +import dev.nucleusframework.nucleus.updater.exception.UpdateException +import dev.nucleusframework.nucleus.updater.internal.ChecksumVerifier +import dev.nucleusframework.nucleus.updater.internal.FileSelector +import dev.nucleusframework.nucleus.updater.internal.PlatformInfo +import dev.nucleusframework.nucleus.updater.internal.PlatformInstaller +import dev.nucleusframework.nucleus.updater.internal.UpdateMarker +import dev.nucleusframework.nucleus.updater.internal.YamlParser import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.flow diff --git a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/UpdateEvent.kt b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/UpdateEvent.kt similarity index 85% rename from updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/UpdateEvent.kt rename to updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/UpdateEvent.kt index 04c0b83ae..bb0d0ae1f 100644 --- a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/UpdateEvent.kt +++ b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/UpdateEvent.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.updater +package dev.nucleusframework.nucleus.updater /** * Represents a completed update detected at application startup. diff --git a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/UpdateInfo.kt b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/UpdateInfo.kt similarity index 86% rename from updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/UpdateInfo.kt rename to updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/UpdateInfo.kt index cf9552a30..62f8f1090 100644 --- a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/UpdateInfo.kt +++ b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/UpdateInfo.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.updater +package dev.nucleusframework.nucleus.updater data class UpdateInfo( val version: String, diff --git a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/UpdateLevel.kt b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/UpdateLevel.kt similarity index 62% rename from updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/UpdateLevel.kt rename to updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/UpdateLevel.kt index 884d45c91..2154e5e70 100644 --- a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/UpdateLevel.kt +++ b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/UpdateLevel.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.updater +package dev.nucleusframework.nucleus.updater enum class UpdateLevel { MAJOR, diff --git a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/UpdateResult.kt b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/UpdateResult.kt similarity index 69% rename from updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/UpdateResult.kt rename to updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/UpdateResult.kt index 8a171f839..c08ad35dd 100644 --- a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/UpdateResult.kt +++ b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/UpdateResult.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.updater +package dev.nucleusframework.nucleus.updater -import io.github.kdroidfilter.nucleus.updater.exception.UpdateException +import dev.nucleusframework.nucleus.updater.exception.UpdateException sealed class UpdateResult { data class Available( diff --git a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/UpdaterConfig.kt b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/UpdaterConfig.kt similarity index 79% rename from updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/UpdaterConfig.kt rename to updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/UpdaterConfig.kt index 313f67793..6d9665b72 100644 --- a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/UpdaterConfig.kt +++ b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/UpdaterConfig.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.updater +package dev.nucleusframework.nucleus.updater -import io.github.kdroidfilter.nucleus.core.runtime.ExecutableRuntime -import io.github.kdroidfilter.nucleus.updater.provider.UpdateProvider +import dev.nucleusframework.nucleus.core.runtime.ExecutableRuntime +import dev.nucleusframework.nucleus.updater.provider.UpdateProvider import java.net.http.HttpClient class UpdaterConfig { @@ -18,7 +18,7 @@ class UpdaterConfig { /** * Custom HTTP client used for all update checks and downloads. * Defaults to a standard client with redirect following enabled. - * Override with [io.github.kdroidfilter.nucleus.nativehttp.NativeHttpClient.create] to + * Override with [dev.nucleusframework.nucleus.nativehttp.NativeHttpClient.create] to * trust enterprise or user-installed certificates. */ var httpClient: HttpClient? = null diff --git a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/Version.kt b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/Version.kt similarity index 98% rename from updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/Version.kt rename to updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/Version.kt index b28153f92..07b80f3de 100644 --- a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/Version.kt +++ b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/Version.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.updater +package dev.nucleusframework.nucleus.updater import kotlin.math.min diff --git a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/exception/UpdateException.kt b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/exception/UpdateException.kt similarity index 91% rename from updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/exception/UpdateException.kt rename to updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/exception/UpdateException.kt index 7d49f6255..f891b23e8 100644 --- a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/exception/UpdateException.kt +++ b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/exception/UpdateException.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.updater.exception +package dev.nucleusframework.nucleus.updater.exception open class UpdateException( message: String, diff --git a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/internal/ChecksumVerifier.kt b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/internal/ChecksumVerifier.kt similarity index 93% rename from updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/internal/ChecksumVerifier.kt rename to updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/internal/ChecksumVerifier.kt index 96d1a947c..8d7a701d7 100644 --- a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/internal/ChecksumVerifier.kt +++ b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/internal/ChecksumVerifier.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.updater.internal +package dev.nucleusframework.nucleus.updater.internal import java.io.File import java.security.MessageDigest diff --git a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/internal/FileSelector.kt b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/internal/FileSelector.kt similarity index 96% rename from updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/internal/FileSelector.kt rename to updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/internal/FileSelector.kt index 21ae697be..7ca483d98 100644 --- a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/internal/FileSelector.kt +++ b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/internal/FileSelector.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.updater.internal +package dev.nucleusframework.nucleus.updater.internal -import io.github.kdroidfilter.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.core.runtime.Platform internal object FileSelector { // Formats that share .exe and need suffix-based matching in the filename. diff --git a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/internal/PlatformInfo.kt b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/internal/PlatformInfo.kt similarity index 86% rename from updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/internal/PlatformInfo.kt rename to updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/internal/PlatformInfo.kt index 99eaf41f3..b2c032129 100644 --- a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/internal/PlatformInfo.kt +++ b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/internal/PlatformInfo.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.updater.internal +package dev.nucleusframework.nucleus.updater.internal -import io.github.kdroidfilter.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.core.runtime.Platform internal enum class Arch { X64, diff --git a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/internal/PlatformInstaller.kt b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/internal/PlatformInstaller.kt similarity index 98% rename from updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/internal/PlatformInstaller.kt rename to updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/internal/PlatformInstaller.kt index 5855b44da..67e59b35e 100644 --- a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/internal/PlatformInstaller.kt +++ b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/internal/PlatformInstaller.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.updater.internal +package dev.nucleusframework.nucleus.updater.internal -import io.github.kdroidfilter.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.core.runtime.Platform import java.io.File import kotlin.system.exitProcess diff --git a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/internal/UpdateMarker.kt b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/internal/UpdateMarker.kt similarity index 95% rename from updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/internal/UpdateMarker.kt rename to updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/internal/UpdateMarker.kt index c315aa4e0..33f554149 100644 --- a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/internal/UpdateMarker.kt +++ b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/internal/UpdateMarker.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.updater.internal +package dev.nucleusframework.nucleus.updater.internal -import io.github.kdroidfilter.nucleus.core.runtime.NucleusApp +import dev.nucleusframework.nucleus.core.runtime.NucleusApp import java.io.File /** diff --git a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/internal/YamlParser.kt b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/internal/YamlParser.kt similarity index 96% rename from updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/internal/YamlParser.kt rename to updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/internal/YamlParser.kt index b86bfee3f..a60cc12b4 100644 --- a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/internal/YamlParser.kt +++ b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/internal/YamlParser.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.updater.internal +package dev.nucleusframework.nucleus.updater.internal -import io.github.kdroidfilter.nucleus.updater.exception.ParseException +import dev.nucleusframework.nucleus.updater.exception.ParseException internal data class YamlMetadata( val version: String, diff --git a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/provider/GenericProvider.kt b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/provider/GenericProvider.kt similarity index 87% rename from updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/provider/GenericProvider.kt rename to updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/provider/GenericProvider.kt index 469782f88..6173100b1 100644 --- a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/provider/GenericProvider.kt +++ b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/provider/GenericProvider.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.updater.provider +package dev.nucleusframework.nucleus.updater.provider -import io.github.kdroidfilter.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.core.runtime.Platform class GenericProvider( val baseUrl: String, diff --git a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/provider/GitHubProvider.kt b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/provider/GitHubProvider.kt similarity index 90% rename from updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/provider/GitHubProvider.kt rename to updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/provider/GitHubProvider.kt index 40df89916..14d686745 100644 --- a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/provider/GitHubProvider.kt +++ b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/provider/GitHubProvider.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.updater.provider +package dev.nucleusframework.nucleus.updater.provider -import io.github.kdroidfilter.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.core.runtime.Platform class GitHubProvider( val owner: String, diff --git a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/provider/UpdateProvider.kt b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/provider/UpdateProvider.kt similarity index 70% rename from updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/provider/UpdateProvider.kt rename to updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/provider/UpdateProvider.kt index 23057bc42..0bf4f0f15 100644 --- a/updater-runtime/src/main/kotlin/io/github/kdroidfilter/nucleus/updater/provider/UpdateProvider.kt +++ b/updater-runtime/src/main/kotlin/dev/nucleusframework/nucleus/updater/provider/UpdateProvider.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.updater.provider +package dev.nucleusframework.nucleus.updater.provider -import io.github.kdroidfilter.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.core.runtime.Platform interface UpdateProvider { fun getUpdateMetadataUrl( diff --git a/updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/ChecksumVerifierTest.kt b/updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/ChecksumVerifierTest.kt similarity index 94% rename from updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/ChecksumVerifierTest.kt rename to updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/ChecksumVerifierTest.kt index 7b197b116..c3c340284 100644 --- a/updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/ChecksumVerifierTest.kt +++ b/updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/ChecksumVerifierTest.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.updater +package dev.nucleusframework.nucleus.updater -import io.github.kdroidfilter.nucleus.updater.internal.ChecksumVerifier +import dev.nucleusframework.nucleus.updater.internal.ChecksumVerifier import org.junit.Assert.assertFalse import org.junit.Assert.assertNotNull import org.junit.Assert.assertTrue diff --git a/updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/FakeUpdateProvider.kt b/updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/FakeUpdateProvider.kt similarity index 66% rename from updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/FakeUpdateProvider.kt rename to updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/FakeUpdateProvider.kt index 3ab00d30b..a0faaef61 100644 --- a/updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/FakeUpdateProvider.kt +++ b/updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/FakeUpdateProvider.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.updater +package dev.nucleusframework.nucleus.updater -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.updater.provider.UpdateProvider +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.updater.provider.UpdateProvider class FakeUpdateProvider : UpdateProvider { override fun getUpdateMetadataUrl( diff --git a/updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/FileSelectorTest.kt b/updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/FileSelectorTest.kt similarity index 94% rename from updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/FileSelectorTest.kt rename to updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/FileSelectorTest.kt index 2bad6d70d..fb8883008 100644 --- a/updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/FileSelectorTest.kt +++ b/updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/FileSelectorTest.kt @@ -1,9 +1,9 @@ -package io.github.kdroidfilter.nucleus.updater +package dev.nucleusframework.nucleus.updater -import io.github.kdroidfilter.nucleus.core.runtime.Platform -import io.github.kdroidfilter.nucleus.updater.internal.Arch -import io.github.kdroidfilter.nucleus.updater.internal.FileSelector -import io.github.kdroidfilter.nucleus.updater.internal.YamlFileEntry +import dev.nucleusframework.nucleus.core.runtime.Platform +import dev.nucleusframework.nucleus.updater.internal.Arch +import dev.nucleusframework.nucleus.updater.internal.FileSelector +import dev.nucleusframework.nucleus.updater.internal.YamlFileEntry import org.junit.Assert.assertEquals import org.junit.Assert.assertNotNull import org.junit.Assert.assertNull diff --git a/updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/UpdateEventTest.kt b/updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/UpdateEventTest.kt similarity index 95% rename from updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/UpdateEventTest.kt rename to updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/UpdateEventTest.kt index 8b5ce85d8..8aea008c8 100644 --- a/updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/UpdateEventTest.kt +++ b/updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/UpdateEventTest.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.updater +package dev.nucleusframework.nucleus.updater -import io.github.kdroidfilter.nucleus.updater.internal.UpdateMarker +import dev.nucleusframework.nucleus.updater.internal.UpdateMarker import org.junit.After import org.junit.Assert.assertEquals import org.junit.Assert.assertFalse diff --git a/updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/UpdateMarkerTest.kt b/updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/UpdateMarkerTest.kt similarity index 94% rename from updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/UpdateMarkerTest.kt rename to updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/UpdateMarkerTest.kt index 26a35364f..736c96657 100644 --- a/updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/UpdateMarkerTest.kt +++ b/updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/UpdateMarkerTest.kt @@ -1,6 +1,6 @@ -package io.github.kdroidfilter.nucleus.updater +package dev.nucleusframework.nucleus.updater -import io.github.kdroidfilter.nucleus.updater.internal.UpdateMarker +import dev.nucleusframework.nucleus.updater.internal.UpdateMarker import org.junit.After import org.junit.Assert.assertEquals import org.junit.Assert.assertFalse diff --git a/updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/VersionTest.kt b/updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/VersionTest.kt similarity index 98% rename from updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/VersionTest.kt rename to updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/VersionTest.kt index 3d0dda598..585e84c48 100644 --- a/updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/VersionTest.kt +++ b/updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/VersionTest.kt @@ -1,4 +1,4 @@ -package io.github.kdroidfilter.nucleus.updater +package dev.nucleusframework.nucleus.updater import org.junit.Assert.assertEquals import org.junit.Assert.assertTrue diff --git a/updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/YamlParserTest.kt b/updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/YamlParserTest.kt similarity index 95% rename from updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/YamlParserTest.kt rename to updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/YamlParserTest.kt index 73580519e..b73840f12 100644 --- a/updater-runtime/src/test/kotlin/io/github/kdroidfilter/nucleus/updater/YamlParserTest.kt +++ b/updater-runtime/src/test/kotlin/dev/nucleusframework/nucleus/updater/YamlParserTest.kt @@ -1,7 +1,7 @@ -package io.github.kdroidfilter.nucleus.updater +package dev.nucleusframework.nucleus.updater -import io.github.kdroidfilter.nucleus.updater.exception.ParseException -import io.github.kdroidfilter.nucleus.updater.internal.YamlParser +import dev.nucleusframework.nucleus.updater.exception.ParseException +import dev.nucleusframework.nucleus.updater.internal.YamlParser import org.junit.Assert.assertEquals import org.junit.Assert.assertNull import org.junit.Test