mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 11:08:11 +00:00
LibGUI: Make focus events more aware of why focus is changing
This patch adds GUI::FocusEvent which has a GUI::FocusSource. The focus source is one of three things: - Programmatic - Mouse - Keyboard This allows receivers of focus events to implement different behaviors depending on how they receive/lose focus.
This commit is contained in:
parent
110b3d89d3
commit
75b8f4e4e6
14 changed files with 94 additions and 41 deletions
|
@ -166,8 +166,8 @@ protected:
|
|||
virtual void mousemove_event(MouseEvent&) override;
|
||||
virtual void doubleclick_event(MouseEvent&) override;
|
||||
virtual void keydown_event(KeyEvent&) override;
|
||||
virtual void focusin_event(Core::Event&) override;
|
||||
virtual void focusout_event(Core::Event&) override;
|
||||
virtual void focusin_event(FocusEvent&) override;
|
||||
virtual void focusout_event(FocusEvent&) override;
|
||||
virtual void timer_event(Core::TimerEvent&) override;
|
||||
virtual bool accepts_focus() const override { return true; }
|
||||
virtual void enter_event(Core::Event&) override;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue