diff --git a/core/input/input.cpp b/core/input/input.cpp index f9a361c761..8d518ef6ce 100644 --- a/core/input/input.cpp +++ b/core/input/input.cpp @@ -129,6 +129,7 @@ void Input::_bind_methods() { ClassDB::bind_method(D_METHOD("set_custom_mouse_cursor", "image", "shape", "hotspot"), &Input::set_custom_mouse_cursor, DEFVAL(CURSOR_ARROW), DEFVAL(Vector2())); ClassDB::bind_method(D_METHOD("parse_input_event", "event"), &Input::parse_input_event); ClassDB::bind_method(D_METHOD("set_use_accumulated_input", "enable"), &Input::set_use_accumulated_input); + ClassDB::bind_method(D_METHOD("flush_buffered_events"), &Input::flush_buffered_events); BIND_ENUM_CONSTANT(MOUSE_MODE_VISIBLE); BIND_ENUM_CONSTANT(MOUSE_MODE_HIDDEN); diff --git a/doc/classes/Input.xml b/doc/classes/Input.xml index 00ead31115..5d9c25b374 100644 --- a/doc/classes/Input.xml +++ b/doc/classes/Input.xml @@ -37,6 +37,13 @@ Adds a new mapping entry (in SDL2 format) to the mapping database. Optionally update already connected devices. + + + + Sends all input events which are in the current buffer to the game loop. These events may have been buffered as a result of accumulated input ([method set_use_accumulated_input]) or agile input flushing ([member ProjectSettings.input_devices/buffering/agile_event_flushing]). + The engine will already do this itself at key execution points (at least once per frame). However, this can be useful in advanced cases where you want precise control over the timing of event handling. + +