From e611e166516ac6fcb5cd88d1848385ab7ad5ab15 Mon Sep 17 00:00:00 2001 From: Jose Falanga Date: Wed, 19 Aug 2026 16:20:25 -0300 Subject: [PATCH 1/3] readability: add type annotations, fix logger method - Added : Variant annotations to exit_button, container, focus_group - Fixed logger.warning -> logger.warn for consistency --- plugin.gd | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/plugin.gd b/plugin.gd index e8de1fa..44af8ba 100644 --- a/plugin.gd +++ b/plugin.gd @@ -51,11 +51,11 @@ func _try_add_button() -> bool: if not power_menu: return false - var exit_button = power_menu.get("exit_button") + var exit_button: Variant = power_menu.get("exit_button") if not exit_button: return false - var container = exit_button.get_parent() + var container: Variant = exit_button.get_parent() if not container: return false if container.has_node(BUTTON_NAME): @@ -74,7 +74,7 @@ func _try_add_button() -> bool: container.add_child(button) container.move_child(button, exit_button.get_index()) - var focus_group = power_menu.get("focus_group") + var focus_group: Variant = power_menu.get("focus_group") if focus_group and focus_group.has_method("recalculate_focus"): focus_group.recalculate_focus() @@ -106,7 +106,7 @@ func _restart_inputplumber() -> void: var out: Array = [] var code := OS.execute("sudo", ["-n", "systemctl", "restart", "inputplumber"], out) if code != OK: - logger.warning("Unable to restart InputPlumber: " + _result_text(out)) + logger.warn("Unable to restart InputPlumber: " + _result_text(out)) ## Returns the session recorded by os-session-select before OpenGamepadUI was From 005412fa717368d22bef39030ed60729663b3050 Mon Sep 17 00:00:00 2001 From: Jose Falanga Date: Wed, 19 Aug 2026 16:41:33 -0300 Subject: [PATCH 2/3] readability: MAX_POLL_FRAMES, _poll_for_power_menu, BUTTON_LABEL --- plugin.gd | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/plugin.gd b/plugin.gd index 44af8ba..ac55d00 100644 --- a/plugin.gd +++ b/plugin.gd @@ -10,7 +10,8 @@ extends Plugin const SESSION_SELECT_PATH := "/usr/lib/os-session-select" const POWER_MENU_GROUP := "power_menu" const BUTTON_NAME := "SwitchToSteamButton" -const MAX_ATTEMPTS := 600 +const BUTTON_LABEL := "Switch to Steam" +const MAX_POLL_FRAMES := 600 # ChimeraOS records the session that was active before OpenGamepadUI took over # in this file when the OpenGamepadUI session is entered. We return to that @@ -35,11 +36,11 @@ func _ready() -> void: if not _has_session_switcher(): logger.info("No session switcher script detected: " + SESSION_SELECT_PATH) return - _add_button_when_ready() + _poll_for_power_menu() -func _add_button_when_ready() -> void: - for i in MAX_ATTEMPTS: +func _poll_for_power_menu() -> void: + for i in MAX_POLL_FRAMES: if _try_add_button(): return await get_tree().process_frame @@ -68,7 +69,7 @@ func _try_add_button() -> bool: var button := button_scene.instantiate() button.name = BUTTON_NAME button.set("click_focuses", false) - button.set("text", "Switch to Steam") + button.set("text", BUTTON_LABEL) button.pressed.connect(_switch_session) container.add_child(button) From c941539b4731dd5de61a3f1e0d8307c6b53e080c Mon Sep 17 00:00:00 2001 From: Jose Falanga Date: Wed, 19 Aug 2026 16:42:26 -0300 Subject: [PATCH 3/3] Bump version to v0.1.4 --- plugin.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugin.json b/plugin.json index 8983666..0b18c40 100644 --- a/plugin.json +++ b/plugin.json @@ -1,7 +1,7 @@ { "plugin.id": "chimera-steam-switch", "plugin.name": "Chimera Steam Switch", - "plugin.version": "0.1.3", + "plugin.version": "0.1.4", "plugin.min-api-version": "1.1.0", "plugin.link": "https://forge.thergic.ar/jose/steam-button-opengamepadui-plugin", "plugin.source": "https://forge.thergic.ar/jose/steam-button-opengamepadui-plugin",