On Sun, 2012-01-29 at 15:01 +0400, Ivan Timofeev wrote: > what is the reason to have this flag? Why only set this flag without > actually showing? And why not change this flag accordingly when actually > showing? (This is what the patch fixes.)
Digging into the git history it looks like a collection of various cumulative errors. The original code with... git show 7b0b5cdf source/ui/inc/scroll.hxx source/ui/uiview/scroll.cxx it seems that this SwScrollbar had its own SwScrollbar::Show method and inherits from Window which has a Window::Show method as well. The Window::Show isn't virtual, so it was just an unfortunately named wrapper method that only works if called directly. git show 5eeb54d5 then appears to replace a lot of "Show" with Scrollbar::Show so various code paths that used to go through the Wrapper method no longer do, but go direct to the baseclass Show. 02a9026b then comes along and fixes the warning that SwScrollbar::Show hides the Window::Show by renaming it ExtendedShow So... at the lines where we currently have ScrollBar::Show, where your patch adds bVisible = ..., the code used to call what is now "ExtendedShow" which sets bVisible = ... as well as some other stuff. At this stage it's a mangled train-wreck and e.g. changing the SwScrollbar::Show lines (except the one inside SwScrollbar::Show itself) back to ExtendedShow might trigger another pile of bugs. C. _______________________________________________ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice