Summary: | docked windows shrink up to zero size on resize | ||
---|---|---|---|
Product: | LibreOffice | Reporter: | Ivan Timofeev (retired) <timofeev.i.s> |
Component: | UI | Assignee: | Prashant <prashant3.yishu> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | arnaud.versini, prashant3.yishu |
Priority: | high | Keywords: | regression |
Version: | 4.2.0.0.alpha0+ Master | ||
Hardware: | Other | ||
OS: | All | ||
Whiteboard: | target:4.2.0 | ||
Crash report or crash signature: | Regression By: | ||
Bug Depends on: | |||
Bug Blocks: | 65675, 74519 |
Description
Ivan Timofeev (retired)
2013-10-05 06:12:35 UTC
confirmed on Ubuntu, mark as high importance. Adding to Most Annoying bugs. Prashant: The problem is that mpSplitSet->mpItems[mnSplitPos].mnMaxSize can be -1 (meaning no limit) which here turns into -1 always; but even if we do something like --- a/vcl/source/window/splitwin.cxx +++ b/vcl/source/window/splitwin.cxx @@ -2559,12 +2559,14 @@ void SplitWindow::Tracking( const TrackingEvent& rTEvt ) // where is the sidebar is attached? if ( (mpSplitSet == mpMainSet) && mbBottomRight ) - nNewSize = mnMaxSize - mnMStartPos; // right hand side of the screen + nNewSize = mnMaxSize - mnMSplitPos; // right hand side of the screen else - nNewSize = mnMStartPos; // left hand side of the screen + nNewSize = mnMSplitPos; // left hand side of the screen // do not make the sidebar wider than mnMaxSize - nNewSize = std::min(nNewSize, mpSplitSet->mpItems[mnSplitPos].mnMaxSize); + nNewSize = std::max(nNewSize, 0L); + if (mpSplitSet->mpItems[mnSplitPos].mnMaxSize > 0) + nNewSize = std::min(nNewSize, mpSplitSet->mpItems[mnSplitPos].mnMaxSize); SplitItem( mpSplitSet->mpItems[mnSplitPos].mnId, nNewSize, bPropSmaller, bPropGreater ); there are still some corner cases that need to sort out, namingly: * F5 + dock it * make the Writer window smaller * move the handle with the mouse to 0 and back, and see how the navigator keeps growing until it fills the entire window Please have a look :-) I'll revert 16ea2dc1f572d698923c770a2a58f7ab402d1298 for now, let's push it again when we have the full solution. Jan Holesovsky committed a patch related to this issue. It has been pushed to "master": http://cgit.freedesktop.org/libreoffice/core/commit/?id=6f17d2bccbf8dd63736a49e227d1984da6a72a65 fdo#70160: Revert "Sidebar: Correcting anomalous mouse behaviour while resizing" The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback. So, is this fixed now and can be closed ? I'm going to call this fixed. If I misunderstand feel free to reopen |