summaryrefslogtreecommitdiff
path: root/Source/Android
diff options
context:
space:
mode:
authorSimonx22 <simon@oatmealdome.me>2025-11-17 15:31:30 -0500
committerSimonx22 <simon@oatmealdome.me>2025-11-17 15:31:30 -0500
commit123b242e9bbe27fc85656f0d9dfab5b519f1fb9d (patch)
tree0af8c1ef310380907597609c8e84a18d3da45ad3 /Source/Android
parent0d22dc039292fc74b7cfe2b0ec413a2b52ed29b6 (diff)
Android: Convert BooleanSupplier to Kotlin
Diffstat (limited to 'Source/Android')
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/utils/BooleanSupplier.java11
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/utils/BooleanSupplier.kt16
2 files changed, 16 insertions, 11 deletions
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/utils/BooleanSupplier.java b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/utils/BooleanSupplier.java
deleted file mode 100644
index 6df6dfbac6..0000000000
--- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/utils/BooleanSupplier.java
+++ /dev/null
@@ -1,11 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-package org.dolphinemu.dolphinemu.utils;
-
-import androidx.annotation.Keep;
-
-public interface BooleanSupplier
-{
- @Keep
- boolean get();
-}
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/utils/BooleanSupplier.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/utils/BooleanSupplier.kt
new file mode 100644
index 0000000000..b7dcd196e6
--- /dev/null
+++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/utils/BooleanSupplier.kt
@@ -0,0 +1,16 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+package org.dolphinemu.dolphinemu.utils
+
+import androidx.annotation.Keep
+
+/**
+ * java.util.function.BooleanSupplier is only provided starting with API 24, while Dolphin still supports API
+ * 21. API desugaring lets Kotlin/Java code use it on older Android versions, but JNI `FindClass("java/util/
+ * function/BooleanSupplier")` isn’t desugared, so native code can’t look up that type reliably on API 23 and
+ * below. Because of that limitation, we keep our own interface instead of relying on the platform type.
+ */
+@Keep
+fun interface BooleanSupplier {
+ fun get(): Boolean
+}