From c154d94964773ae0e1de3125dbeb284b870c489f Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Tue, 11 Oct 2022 11:38:03 +0200 Subject: [PATCH] Ladybird/WebContentView: Accept focus and notify WebContent on change --- Ladybird/WebContentView.cpp | 12 ++++++++++++ Ladybird/WebContentView.h | 2 ++ 2 files changed, 14 insertions(+) diff --git a/Ladybird/WebContentView.cpp b/Ladybird/WebContentView.cpp index 04f705c9bf..939bb3036b 100644 --- a/Ladybird/WebContentView.cpp +++ b/Ladybird/WebContentView.cpp @@ -58,6 +58,8 @@ WebContentView::WebContentView() { setMouseTracking(true); + setFocusPolicy(Qt::FocusPolicy::StrongFocus); + m_inverse_pixel_scaling_ratio = 1.0 / devicePixelRatio(); verticalScrollBar()->setSingleStep(24); @@ -354,6 +356,16 @@ void WebContentView::keyReleaseEvent(QKeyEvent* event) client().async_key_up(keycode, modifiers, point); } +void WebContentView::focusInEvent(QFocusEvent*) +{ + client().async_set_has_focus(true); +} + +void WebContentView::focusOutEvent(QFocusEvent*) +{ + client().async_set_has_focus(false); +} + Gfx::IntPoint WebContentView::to_content(Gfx::IntPoint viewport_position) const { return viewport_position.translated(horizontalScrollBar()->value(), verticalScrollBar()->value()); diff --git a/Ladybird/WebContentView.h b/Ladybird/WebContentView.h index 80f2976ad7..975ca0b68a 100644 --- a/Ladybird/WebContentView.h +++ b/Ladybird/WebContentView.h @@ -85,6 +85,8 @@ public: virtual void keyReleaseEvent(QKeyEvent* event) override; virtual void showEvent(QShowEvent*) override; virtual void hideEvent(QHideEvent*) override; + virtual void focusInEvent(QFocusEvent*) override; + virtual void focusOutEvent(QFocusEvent*) override; void debug_request(String const& request, String const& argument);