1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 10:47:35 +00:00

LibGUI+WindowServer: Replace WindowInput{Enter,Leave} Events

with WindowInput{Preempted,Restored} Events and allow Widgets to save
the state of their focus preemption. As of now, only Popups will
preempt input and trigger these events.
This commit is contained in:
thankyouverycool 2022-11-17 08:39:20 -05:00 committed by Andreas Kling
parent 901878bad9
commit 5d567565a4
11 changed files with 50 additions and 45 deletions

View file

@ -97,6 +97,7 @@ public:
Function<void()> on_close;
Function<CloseRequestDecision()> on_close_request;
Function<void(bool is_active_input)> on_active_input_change;
Function<void(bool is_preempted)> on_input_preemption_change;
Function<void(bool is_active_window)> on_active_window_change;
Function<void(InputPreemptor)> on_input_preemption;
@ -259,7 +260,7 @@ private:
void handle_multi_paint_event(MultiPaintEvent&);
void handle_key_event(KeyEvent&);
void handle_resize_event(ResizeEvent&);
void handle_input_entered_or_left_event(Core::Event&);
void handle_input_preemption_event(Core::Event&);
void handle_became_active_or_inactive_event(Core::Event&);
void handle_close_request();
void handle_theme_change_event(ThemeChangeEvent&);