diff options
author | Caolán McNamara <caolanm@redhat.com> | 2019-05-14 16:01:58 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2019-05-14 18:32:05 +0200 |
commit | 4cac171dd6c82f55624ba6e7185d69bcb5507cb1 (patch) | |
tree | fb47bf6ab6e4f92afd10922923c110edfd5419e9 /vcl/source | |
parent | 135eb77464a7a4682547e28ac5e291abff145f3c (diff) |
Resolves: tdf#125266 hang on selecting read online help
Change-Id: I46d14df66c529495a7e9f1596fcdbb0b093810c5
Reviewed-on: https://gerrit.libreoffice.org/72298
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'vcl/source')
-rw-r--r-- | vcl/source/window/dialog.cxx | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/vcl/source/window/dialog.cxx b/vcl/source/window/dialog.cxx index bd17f377043d..21957995644e 100644 --- a/vcl/source/window/dialog.cxx +++ b/vcl/source/window/dialog.cxx @@ -1576,8 +1576,12 @@ void TopLevelWindowLocker::incBusy(const weld::Window* pIgnore) vcl::Window *pTopWin = Application::GetFirstTopLevelWindow(); while (pTopWin) { - if (pTopWin->GetFrameWeld() != pIgnore) - aTopLevels.push_back(pTopWin); + vcl::Window* pCandidate = pTopWin; + if (pCandidate->GetType() == WindowType::BORDERWINDOW) + pCandidate = pCandidate->GetWindow(GetWindowType::FirstChild); + // tdf#125266 ignore HelpTextWindows + if (pCandidate && pCandidate->GetType() != WindowType::HELPTEXTWINDOW && pCandidate->GetFrameWeld() != pIgnore) + aTopLevels.push_back(pCandidate); pTopWin = Application::GetNextTopLevelWindow(pTopWin); } for (auto& a : aTopLevels) |