summaryrefslogtreecommitdiff
path: root/vcl/source
diff options
context:
space:
mode:
authorSzymon Kłos <szymon.klos@collabora.com>2020-12-17 14:44:51 +0100
committerSzymon Kłos <szymon.klos@collabora.com>2020-12-29 11:34:00 +0100
commit0027d94e4f2f41fd492dab6970d7d10a0e1e17cf (patch)
treedaf1b7873f2dc159cfb56c6d220253e12067de4f /vcl/source
parente4a8f55d8b44583e7aefe453e73a450fee95917a (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/source')
-rw-r--r--vcl/source/app/salvtables.cxx5
-rw-r--r--vcl/source/control/button.cxx2
-rw-r--r--vcl/source/window/dialog.cxx2
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);