summaryrefslogtreecommitdiff
path: root/vcl/qt5
diff options
context:
space:
mode:
authorMichael Weghorn <m.weghorn@posteo.de>2024-08-06 17:54:45 +0200
committerMichael Weghorn <m.weghorn@posteo.de>2024-08-07 07:11:55 +0200
commitfcb6b33eafdc756d2c821a58c0e8cdc1f4cc352c (patch)
tree6949d881dfbf691e63c31956b974e33a7c78d151 /vcl/qt5
parenta8d894be5d6f39b9dde6f144858f58bb1081eb12 (diff)
tdf#130857 qt weld: Implement focus-related methods
Change-Id: I064ff205ceb9d008667cf3a3a6e73047ea5ca3e0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171556 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Diffstat (limited to 'vcl/qt5')
-rw-r--r--vcl/qt5/QtInstanceWidget.cxx21
1 files changed, 18 insertions, 3 deletions
diff --git a/vcl/qt5/QtInstanceWidget.cxx b/vcl/qt5/QtInstanceWidget.cxx
index 602b278e8eb7..34dd3b611c74 100644
--- a/vcl/qt5/QtInstanceWidget.cxx
+++ b/vcl/qt5/QtInstanceWidget.cxx
@@ -42,11 +42,26 @@ bool QtInstanceWidget::is_visible() const
return m_pWidget->isVisibleTo(pTopLevel) && pTopLevel->isVisible();
}
-void QtInstanceWidget::set_can_focus(bool) {}
+void QtInstanceWidget::set_can_focus(bool bCanFocus)
+{
+ assert(m_pWidget);
+ if (bCanFocus)
+ m_pWidget->setFocusPolicy(Qt::FocusPolicy::StrongFocus);
+ else
+ m_pWidget->setFocusPolicy(Qt::FocusPolicy::NoFocus);
+}
-void QtInstanceWidget::grab_focus() {}
+void QtInstanceWidget::grab_focus()
+{
+ assert(m_pWidget);
+ m_pWidget->setFocus();
+}
-bool QtInstanceWidget::has_focus() const { return true; }
+bool QtInstanceWidget::has_focus() const
+{
+ assert(m_pWidget);
+ return m_pWidget->hasFocus();
+}
bool QtInstanceWidget::is_active() const { return true; }