diff options
Diffstat (limited to 'client')
| -rw-r--r-- | client/global.gd | 2 | ||||
| -rw-r--r-- | client/menu/menu.gd | 2 | 
2 files changed, 4 insertions, 0 deletions
| diff --git a/client/global.gd b/client/global.gd index fdb4df28..4ea07a4f 100644 --- a/client/global.gd +++ b/client/global.gd @@ -60,8 +60,10 @@ func _init():  	update_fullscreen()  	update_language() +var focused_node: Control  func _ready():  	get_viewport().gui_focus_changed.connect(Sound.play_hover_maybe) +	get_viewport().gui_focus_changed.connect(func (node): focused_node = node)  func _input(_event):  	if Input.is_action_just_pressed("fullscreen"): diff --git a/client/menu/menu.gd b/client/menu/menu.gd index 5e7ba34c..2c539bd9 100644 --- a/client/menu/menu.gd +++ b/client/menu/menu.gd @@ -34,6 +34,7 @@ func menu_anim_cover(state: bool):  var popup: Menu = null  func submenu(path: String, instant: bool = false): +	var prev_focus = Global.focused_node  	if popup != null: return  	await menu_anim_cover(true)  	popup = load(path).instantiate() @@ -43,6 +44,7 @@ func submenu(path: String, instant: bool = false):  	await submenu_close  	print("Submenu closed ", path)  	await menu_anim_cover(false) +	if prev_focus != null: prev_focus.grab_focus()  func exit():  	await self.menu_anim_exit() | 
