summaryrefslogtreecommitdiff
path: root/vcl/source/window/brdwin.cxx
diff options
context:
space:
mode:
authorMaxim Monastirsky <momonasmon@gmail.com>2018-01-17 21:08:59 +0200
committerCaolán McNamara <caolanm@redhat.com>2018-01-27 21:00:34 +0100
commita658ed6be2072b54fa0ec4759f24c00639145a06 (patch)
tree21c310b256c142fbd099e8beddb096a1e9f1bb51 /vcl/source/window/brdwin.cxx
parent8932ada4d8841499aa809f6b29efc1402fe95c1e (diff)
tdf#115057 Never use ImplPopupFloatWin for anything except ToolBox
ImplPopupFloatWin draws the window title and frame directly on the client window, which is incompatible with .ui layouts, as they try to occupy the whole available space. Instead just use a plain FloatingWindow whenever possible, and change the border window code to mimic the behavior of ImplPopupFloatWin, wrt removing part of the frame of toolbar popups w/o a title. Change-Id: If72ea89e31f913470faad7fcb8083f9b9787c9a8 Reviewed-on: https://gerrit.libreoffice.org/48094 Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com> Tested-by: Maxim Monastirsky <momonasmon@gmail.com> (cherry picked from commit 829b0564959411d0cc64169fe69153a714050c0d) Reviewed-on: https://gerrit.libreoffice.org/48202 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'vcl/source/window/brdwin.cxx')
-rw-r--r--vcl/source/window/brdwin.cxx4
1 files changed, 2 insertions, 2 deletions
diff --git a/vcl/source/window/brdwin.cxx b/vcl/source/window/brdwin.cxx
index c929d0be35f8..5d8b14c7cde9 100644
--- a/vcl/source/window/brdwin.cxx
+++ b/vcl/source/window/brdwin.cxx
@@ -1418,7 +1418,7 @@ void ImplStdBorderWindowView::DrawWindow(vcl::RenderContext& rRenderContext, con
vcl::Region oldClipRgn(rRenderContext.GetClipRegion());
// for popups, don't draw part of the frame
- if (pData->mnTitleType == BorderWindowTitleType::Popup)
+ if (pData->mnTitleType >= BorderWindowTitleType::Popup)
{
FloatingWindow* pWin = dynamic_cast<FloatingWindow*>(pData->mpBorderWindow->GetWindow(GetWindowType::Client));
if (pWin)
@@ -1444,7 +1444,7 @@ void ImplStdBorderWindowView::DrawWindow(vcl::RenderContext& rRenderContext, con
--aInRect.Bottom();
// restore
- if (pData->mnTitleType == BorderWindowTitleType::Popup)
+ if (pData->mnTitleType >= BorderWindowTitleType::Popup)
rRenderContext.SetClipRegion(oldClipRgn);
// Draw Border