mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 04:07:45 +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
|
@ -165,7 +165,7 @@ void ConsoleWidget::clear_output()
|
|||
m_output_view->update();
|
||||
}
|
||||
|
||||
void ConsoleWidget::focusin_event(Core::Event&)
|
||||
void ConsoleWidget::focusin_event(GUI::FocusEvent&)
|
||||
{
|
||||
m_input->set_focus(true);
|
||||
}
|
||||
|
|
|
@ -48,7 +48,7 @@ private:
|
|||
ConsoleWidget();
|
||||
|
||||
virtual bool accepts_focus() const override { return true; }
|
||||
virtual void focusin_event(Core::Event&) override;
|
||||
virtual void focusin_event(GUI::FocusEvent&) override;
|
||||
|
||||
RefPtr<GUI::TextBox> m_input;
|
||||
RefPtr<Web::PageView> m_output_view;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue