diff options
author | devloglogan <devloglogan@gmail.com> | 2024-09-03 08:38:42 -0500 |
---|---|---|
committer | devloglogan <devloglogan@gmail.com> | 2024-09-09 07:15:15 -0500 |
commit | 16e1d8a81b9284bfae6db2966fb12e32951df54c (patch) | |
tree | cd855560951adec94f1f14df97b5d43e426aa5b6 /platform/android/java | |
parent | 5675c76461e197d3929a1142cfb84ab1a76ac9dd (diff) | |
download | redot-engine-16e1d8a81b9284bfae6db2966fb12e32951df54c.tar.gz |
Disable some editor settings by default in the XR Editor
Diffstat (limited to 'platform/android/java')
4 files changed, 29 insertions, 0 deletions
diff --git a/platform/android/java/editor/src/main/java/org/godotengine/editor/BaseGodotEditor.kt b/platform/android/java/editor/src/main/java/org/godotengine/editor/BaseGodotEditor.kt index 50daf44d2a..d296d6ad03 100644 --- a/platform/android/java/editor/src/main/java/org/godotengine/editor/BaseGodotEditor.kt +++ b/platform/android/java/editor/src/main/java/org/godotengine/editor/BaseGodotEditor.kt @@ -511,4 +511,12 @@ abstract class BaseGodotEditor : GodotActivity() { val godot = godot ?: return Error.ERR_UNCONFIGURED return verifyApk(godot.fileAccessHandler, apkPath) } + + override fun supportsFeature(featureTag: String): Boolean { + if (featureTag == "xr_editor") { + return isNativeXRDevice(); + } + + return false + } } diff --git a/platform/android/java/lib/src/org/godotengine/godot/Godot.kt b/platform/android/java/lib/src/org/godotengine/godot/Godot.kt index 38bd336e2d..5b1d09e749 100644 --- a/platform/android/java/lib/src/org/godotengine/godot/Godot.kt +++ b/platform/android/java/lib/src/org/godotengine/godot/Godot.kt @@ -992,6 +992,10 @@ class Godot(private val context: Context) { */ @Keep private fun hasFeature(feature: String): Boolean { + if (primaryHost?.supportsFeature(feature) ?: false) { + return true; + } + for (plugin in pluginRegistry.allPlugins) { if (plugin.supportsFeature(feature)) { return true diff --git a/platform/android/java/lib/src/org/godotengine/godot/GodotFragment.java b/platform/android/java/lib/src/org/godotengine/godot/GodotFragment.java index e0f5744368..d60595c0bb 100644 --- a/platform/android/java/lib/src/org/godotengine/godot/GodotFragment.java +++ b/platform/android/java/lib/src/org/godotengine/godot/GodotFragment.java @@ -501,4 +501,12 @@ public class GodotFragment extends Fragment implements IDownloaderClient, GodotH } return Error.ERR_UNAVAILABLE; } + + @Override + public boolean supportsFeature(String featureTag) { + if (parentHost != null) { + return parentHost.supportsFeature(featureTag); + } + return false; + } } diff --git a/platform/android/java/lib/src/org/godotengine/godot/GodotHost.java b/platform/android/java/lib/src/org/godotengine/godot/GodotHost.java index f1c84e90a7..344b73f799 100644 --- a/platform/android/java/lib/src/org/godotengine/godot/GodotHost.java +++ b/platform/android/java/lib/src/org/godotengine/godot/GodotHost.java @@ -136,4 +136,13 @@ public interface GodotHost { default Error verifyApk(@NonNull String apkPath) { return Error.ERR_UNAVAILABLE; } + + /** + * Returns whether the given feature tag is supported. + * + * @see <a href="https://docs.godotengine.org/en/stable/tutorials/export/feature_tags.html">Feature tags</a> + */ + default boolean supportsFeature(String featureTag) { + return false; + } } |