[Libreoffice-commits] core.git: Branch 'libreoffice-6-1' - sfx2/source
Libreoffice Gerrit user
logerrit at kemper.freedesktop.org
Mon Sep 3 14:35:14 UTC 2018
sfx2/source/appl/sfxhelp.cxx | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
New commits:
commit e6a0d77e144cf41459cc1124244638e562b8d0db
Author: Caolán McNamara <caolanm at redhat.com>
AuthorDate: Thu Aug 30 13:45:12 2018 +0100
Commit: Miklos Vajna <vmiklos at collabora.co.uk>
CommitDate: Mon Sep 3 16:34:51 2018 +0200
tdf#119579 skip floating windows as potential parent for missing help dialog
Change-Id: Ibcee9a6aab0b04bf52f3e75a46f52d98864eee4c
Reviewed-on: https://gerrit.libreoffice.org/59809
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos at collabora.co.uk>
diff --git a/sfx2/source/appl/sfxhelp.cxx b/sfx2/source/appl/sfxhelp.cxx
index c754cdb0d86f..8cf29fedbdf4 100644
--- a/sfx2/source/appl/sfxhelp.cxx
+++ b/sfx2/source/appl/sfxhelp.cxx
@@ -724,6 +724,21 @@ static bool impl_showOfflineHelp( const OUString& rURL )
return false;
}
+namespace
+{
+ // tdf#119579 skip floating windows as potential parent for missing help dialog
+ const vcl::Window* GetBestParent(const vcl::Window* pWindow)
+ {
+ while (pWindow)
+ {
+ if (pWindow->IsSystemWindow() && pWindow->GetType() != WindowType::FLOATINGWINDOW)
+ break;
+ pWindow = pWindow->GetParent();
+ }
+ return pWindow;
+ }
+}
+
bool SfxHelp::Start_Impl(const OUString& rURL, const vcl::Window* pWindow, const OUString& rKeyword)
{
OUStringBuffer aHelpRootURL("vnd.sun.star.help://");
@@ -824,6 +839,8 @@ bool SfxHelp::Start_Impl(const OUString& rURL, const vcl::Window* pWindow, const
return true;
}
+ pWindow = GetBestParent(pWindow);
+
if ( !impl_hasHelpInstalled() )
{
std::unique_ptr<weld::Builder> xBuilder(Application::CreateBuilder(pWindow ? pWindow->GetFrameWeld() : nullptr, "sfx/ui/helpmanual.ui"));
More information about the Libreoffice-commits
mailing list