aboutsummaryrefslogtreecommitdiff
path: root/main.gd
diff options
context:
space:
mode:
Diffstat (limited to 'main.gd')
-rw-r--r--main.gd17
1 files changed, 17 insertions, 0 deletions
diff --git a/main.gd b/main.gd
index 5612e01..ec449df 100644
--- a/main.gd
+++ b/main.gd
@@ -2,7 +2,10 @@ extends Control
var power_throttle_timeout: float
+onready var popup := get_node("/root/main/popup") as ModalPopup
onready var file_picker := get_node("/root/main/file_picker") as FileDialog
+onready var stage := get_node("/root/main/stage") as Stage
+onready var database := get_node("/root/main/database") as Database
onready var controls_sensible_to_keyboard := [
self,
file_picker,
@@ -46,3 +49,17 @@ func _unhandled_input(event: InputEvent):
power_throttle_timeout = 3.5
+func _notification(what: int):
+ if what == MainLoop.NOTIFICATION_WM_GO_BACK_REQUEST:
+ if popup.visible:
+ popup.call_deferred("dismiss")
+ elif file_picker.visible:
+ file_picker.hide()
+ elif stage.visible:
+ stage.discard_action()
+ elif database.selected_idx != -1:
+ database.clear_selection()
+ else:
+ get_tree().quit()
+
+