diff options
author | Szymon Kłos <szymon.klos@collabora.com> | 2020-12-17 14:44:51 +0100 |
---|---|---|
committer | Szymon Kłos <szymon.klos@collabora.com> | 2020-12-29 11:34:00 +0100 |
commit | 0027d94e4f2f41fd492dab6970d7d10a0e1e17cf (patch) | |
tree | daf1b7873f2dc159cfb56c6d220253e12067de4f /vcl | |
parent | e4a8f55d8b44583e7aefe453e73a450fee95917a (diff) |
lok: don't use focus window to request help
Use clicked button instead - what leads to the correct window.
If only focused window was taken into account sometimes
it caused incorrect help link to be used.
Change-Id: I645dc1ffa6a6d6d363ea5f9874fa830c441516c7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107882
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108429
Tested-by: Jenkins
Diffstat (limited to 'vcl')
-rw-r--r-- | vcl/source/app/salvtables.cxx | 5 | ||||
-rw-r--r-- | vcl/source/control/button.cxx | 2 | ||||
-rw-r--r-- | vcl/source/window/dialog.cxx | 2 |
3 files changed, 4 insertions, 5 deletions
diff --git a/vcl/source/app/salvtables.cxx b/vcl/source/app/salvtables.cxx index 47563271e05b..e8755eb5b1d5 100644 --- a/vcl/source/app/salvtables.cxx +++ b/vcl/source/app/salvtables.cxx @@ -80,8 +80,7 @@ #include <window.h> #include <wizdlg.hxx> #include <salvtables.hxx> - -#include <boost/property_tree/ptree.hpp> +#include <comphelper/lok.hxx> SalFrame::SalFrame() : m_pWindow(nullptr) @@ -6867,7 +6866,7 @@ void SalInstanceWindow::help() { //show help for widget with keyboard focus vcl::Window* pWidget = ImplGetSVData()->mpWinData->mpFocusWin; - if (!pWidget) + if (!pWidget || comphelper::LibreOfficeKit::isActive()) pWidget = m_xWindow; OString sHelpId = pWidget->GetHelpId(); while (sHelpId.isEmpty()) diff --git a/vcl/source/control/button.cxx b/vcl/source/control/button.cxx index 38b32d4f54af..f7bc3ba80f7f 100644 --- a/vcl/source/control/button.cxx +++ b/vcl/source/control/button.cxx @@ -1773,7 +1773,7 @@ void HelpButton::Click() if ( !GetClickHdl() ) { vcl::Window* pFocusWin = Application::GetFocusWindow(); - if ( !pFocusWin ) + if ( !pFocusWin || comphelper::LibreOfficeKit::isActive() ) pFocusWin = this; HelpEvent aEvt( pFocusWin->GetPointerPosPixel(), HelpEventMode::CONTEXT ); diff --git a/vcl/source/window/dialog.cxx b/vcl/source/window/dialog.cxx index da1d4a5bce24..0001353e9060 100644 --- a/vcl/source/window/dialog.cxx +++ b/vcl/source/window/dialog.cxx @@ -1406,7 +1406,7 @@ IMPL_LINK(Dialog, ResponseHdl, Button*, pButton, void) if (nResponse == RET_HELP) { vcl::Window* pFocusWin = Application::GetFocusWindow(); - if (!pFocusWin) + if (!pFocusWin || comphelper::LibreOfficeKit::isActive()) pFocusWin = pButton; HelpEvent aEvt(pFocusWin->GetPointerPosPixel(), HelpEventMode::CONTEXT); pFocusWin->RequestHelp(aEvt); |