sfx2/source/sidebar/SidebarController.cxx | 9 ++++++++- test/source/sheet/xviewsplitable.cxx | 4 ++-- 2 files changed, 10 insertions(+), 3 deletions(-)
New commits: commit bff470b5826b6c76d34ea6f5b78b41245632374d Author: Samuel Mehrbrodt <samuel.mehrbr...@cib.de> AuthorDate: Fri Mar 22 16:17:11 2019 +0100 Commit: Thorsten Behrens <thorsten.behr...@cib.de> CommitDate: Tue Mar 26 14:13:49 2019 +0100 Related tdf#124263 Make sure sidebar is wide enough for content If panel's requested minimal size is smaller than current sidebar width, enlarge the sidebar to fit the content. Change-Id: I9baa4ef6c01d5563951d4df0d939883fce02e87b Reviewed-on: https://gerrit.libreoffice.org/69561 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbr...@cib.de> (cherry picked from commit a58391b1f61db702a5246c5a33717cbba68c5252) Reviewed-on: https://gerrit.libreoffice.org/69698 Reviewed-by: Thorsten Behrens <thorsten.behr...@cib.de> Tested-by: Thorsten Behrens <thorsten.behr...@cib.de> diff --git a/sfx2/source/sidebar/SidebarController.cxx b/sfx2/source/sidebar/SidebarController.cxx index aa30d5cc185e..1121dcea1d32 100644 --- a/sfx2/source/sidebar/SidebarController.cxx +++ b/sfx2/source/sidebar/SidebarController.cxx @@ -1195,9 +1195,16 @@ void SidebarController::RestrictWidth (sal_Int32 nWidth) { const sal_uInt16 nId (pSplitWindow->GetItemId(mpParentWindow.get())); const sal_uInt16 nSetId (pSplitWindow->GetSet(nId)); + const sal_Int32 nRequestedWidth + = (TabBar::GetDefaultWidth() + nWidth) * mpTabBar->GetDPIScaleFactor(); + + // Make sure the sidebar is wide enough to fit the requested content + if (pSplitWindow->GetSizePixel().Width() < nRequestedWidth) + SetChildWindowWidth(nRequestedWidth); + pSplitWindow->SetItemSizeRange( nSetId, - Range(TabBar::GetDefaultWidth() * mpTabBar->GetDPIScaleFactor() + nWidth, + Range(nRequestedWidth, getMaximumWidth() * mpTabBar->GetDPIScaleFactor())); } } diff --git a/test/source/sheet/xviewsplitable.cxx b/test/source/sheet/xviewsplitable.cxx index 7dd18aed2ebb..d88122f584f6 100644 --- a/test/source/sheet/xviewsplitable.cxx +++ b/test/source/sheet/xviewsplitable.cxx @@ -23,12 +23,12 @@ void XViewSplitable::testSplit() uno::Reference< sheet::XViewSplitable > xViewSplitable(init(), UNO_QUERY_THROW); CPPUNIT_ASSERT_MESSAGE("View is already split", !xViewSplitable->getIsWindowSplit()); - xViewSplitable->splitAtPosition(101, 51); + xViewSplitable->splitAtPosition(90, 51); CPPUNIT_ASSERT_MESSAGE("View wasn't split", xViewSplitable->getIsWindowSplit()); CPPUNIT_ASSERT_EQUAL_MESSAGE("Wrong horizontal pixel position", - sal_Int32(101), xViewSplitable->getSplitHorizontal()); + sal_Int32(90), xViewSplitable->getSplitHorizontal()); CPPUNIT_ASSERT_EQUAL_MESSAGE("Wrong vertical pixel position", sal_Int32(51), xViewSplitable->getSplitVertical()); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits