From 2a66335ec2f3a5a095049e32ba5ce35729b58c7a Mon Sep 17 00:00:00 2001 From: Fredia Huya-Kouadio Date: Mon, 10 Feb 2025 10:02:48 -0800 Subject: [PATCH] Address API regression from https://github.com/godotengine/godot/pull/101050 --- .../java/org/godotengine/editor/BaseGodotEditor.kt | 12 +++++------- .../main/java/org/godotengine/editor/GodotXRGame.kt | 12 +++++------- .../lib/src/org/godotengine/godot/GodotActivity.kt | 13 ++----------- 3 files changed, 12 insertions(+), 25 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 e22c4aa8cc62..4a7612c28fa4 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 @@ -300,14 +300,12 @@ abstract class BaseGodotEditor : GodotActivity(), GameMenuFragment.GameMenuListe } } - @CallSuper - override fun updateCommandLineParams(args: Array) { - val args = if (BuildConfig.BUILD_TYPE == "dev") { - args + "--benchmark" - } else { - args + override fun getCommandLine(): MutableList { + val params = super.getCommandLine() + if (BuildConfig.BUILD_TYPE == "dev" && !params.contains("--benchmark")) { + params.add("--benchmark") } - super.updateCommandLineParams(args); + return params } protected fun retrieveEditorWindowInfo(args: Array, gameEmbedMode: GameEmbedMode): EditorWindowInfo { diff --git a/platform/android/java/editor/src/main/java/org/godotengine/editor/GodotXRGame.kt b/platform/android/java/editor/src/main/java/org/godotengine/editor/GodotXRGame.kt index 172dc166b617..529d166fe8d3 100644 --- a/platform/android/java/editor/src/main/java/org/godotengine/editor/GodotXRGame.kt +++ b/platform/android/java/editor/src/main/java/org/godotengine/editor/GodotXRGame.kt @@ -40,18 +40,16 @@ open class GodotXRGame: BaseGodotGame() { override fun overrideOrientationRequest() = true - override fun updateCommandLineParams(args: Array) { - val updatedArgs = ArrayList() - if (!args.contains(XRMode.OPENXR.cmdLineArg)) { + override fun getCommandLine(): MutableList { + val updatedArgs = super.getCommandLine() + if (!updatedArgs.contains(XRMode.OPENXR.cmdLineArg)) { updatedArgs.add(XRMode.OPENXR.cmdLineArg) } - if (!args.contains(XR_MODE_ARG)) { + if (!updatedArgs.contains(XR_MODE_ARG)) { updatedArgs.add(XR_MODE_ARG) updatedArgs.add("on") } - updatedArgs.addAll(args) - - super.updateCommandLineParams(updatedArgs.toTypedArray()) + return updatedArgs } override fun getEditorWindowInfo() = XR_RUN_GAME_INFO diff --git a/platform/android/java/lib/src/org/godotengine/godot/GodotActivity.kt b/platform/android/java/lib/src/org/godotengine/godot/GodotActivity.kt index 72e63346fa0f..a40653b1d23b 100644 --- a/platform/android/java/lib/src/org/godotengine/godot/GodotActivity.kt +++ b/platform/android/java/lib/src/org/godotengine/godot/GodotActivity.kt @@ -75,7 +75,7 @@ abstract class GodotActivity : FragmentActivity(), GodotHost { override fun onCreate(savedInstanceState: Bundle?) { val params = intent.getStringArrayExtra(EXTRA_COMMAND_LINE_PARAMS) Log.d(TAG, "Starting intent $intent with parameters ${params.contentToString()}") - updateCommandLineParams(params ?: emptyArray()) + commandLineParams.addAll(params ?: emptyArray()) super.onCreate(savedInstanceState) @@ -215,14 +215,5 @@ abstract class GodotActivity : FragmentActivity(), GodotHost { return GodotFragment() } - @CallSuper - protected open fun updateCommandLineParams(args: Array) { - // Update the list of command line params with the new args - commandLineParams.clear() - if (args.isNotEmpty()) { - commandLineParams.addAll(args) - } - } - - final override fun getCommandLine() = commandLineParams + override fun getCommandLine(): MutableList = commandLineParams }