aboutsummaryrefslogtreecommitdiff
path: root/client/gui
diff options
context:
space:
mode:
Diffstat (limited to 'client/gui')
-rw-r--r--client/gui/menus/settings/input/input_setting.gd5
-rw-r--r--client/gui/menus/settings/input/input_value_node.gd2
2 files changed, 4 insertions, 3 deletions
diff --git a/client/gui/menus/settings/input/input_setting.gd b/client/gui/menus/settings/input/input_setting.gd
index 3533cddf..2fb4af3d 100644
--- a/client/gui/menus/settings/input/input_setting.gd
+++ b/client/gui/menus/settings/input/input_setting.gd
@@ -25,10 +25,13 @@ func _init(new_id: String):
func create_row():
var row = super()
row.value_node = INPUT_VALUE_NODE_SCENE.instantiate()
- Settings.hook_changed_init(key, "preview",
+ # Manual initial update without update() since that needs to wait for _ready
+ row.value_node.value = Settings.read(key)
+ Settings.hook_changed(key, "preview",
func(value):
if is_instance_valid(row):
row.value_node.value = value
+ row.value_node.update()
)
row.value_node.changed.connect(func(): Settings.write(key, row.value_node.value))
return row
diff --git a/client/gui/menus/settings/input/input_value_node.gd b/client/gui/menus/settings/input/input_value_node.gd
index 29b53850..fe5768cf 100644
--- a/client/gui/menus/settings/input/input_value_node.gd
+++ b/client/gui/menus/settings/input/input_value_node.gd
@@ -45,7 +45,6 @@ func update(fix_focus: bool = false):
func erase_event(e: InputEvent):
value.erase(e)
- update(true)
changed.emit()
func _input(e: InputEvent):
@@ -57,7 +56,6 @@ func _input(e: InputEvent):
value.append(e)
_on_add_pressed()
- update()
changed.emit()
func _on_add_pressed() -> void: