From 5b863fdc25848817ef11f0c1a33ef45a4160aa2c Mon Sep 17 00:00:00 2001 From: dam Date: Mon, 27 Dec 2021 03:31:03 +0000 Subject: Allow to scroll database screen without selecting item on touch-down. --- test_input.gd | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 test_input.gd (limited to 'test_input.gd') diff --git a/test_input.gd b/test_input.gd new file mode 100644 index 0000000..bae409d --- /dev/null +++ b/test_input.gd @@ -0,0 +1,42 @@ +extends ColorRect + +onready var debug: RichTextLabel = get_node("/root/main/debug") + + +func _gui_input(event): +# if name == "a": +# accept_event() +# if name == "b" : #&& (event is InputEventScreenTouch): +# if name == "b": +# get_tree().set_input_as_handled() +# accept_event() +# if name == "b" && event is InputEventScreenTouch && event.is_pressed() == false: +# simulate_click() +# call_deferred("simulate_click") + + if event is InputEventScreenTouch || event is InputEventMouseButton: + debug.text += "%s> %-24s\t:\t%s\n" % [name, event.get_class(), event.is_pressed()] + else: + debug.text += "%s> %s\n" % [name, event.get_class()] + + +func simulate_click(): + var event_touch = InputEventScreenTouch.new() + event_touch.index = 0 + event_touch.position = self.get_global_mouse_position() + + var event_mouse = InputEventMouseButton.new() + event_mouse.button_index = BUTTON_LEFT + event_mouse.button_mask = BUTTON_MASK_LEFT + event_mouse.position = self.get_global_mouse_position() + + self.mouse_filter = Control.MOUSE_FILTER_IGNORE + event_mouse.pressed = true + event_touch.pressed = true +# Input.parse_input_event(event_mouse) + Input.parse_input_event(event_touch) + event_mouse.pressed = false + event_touch.pressed = false +# Input.parse_input_event(event_mouse) + Input.parse_input_event(event_touch) + self.mouse_filter = Control.MOUSE_FILTER_STOP -- cgit v1.2.3