Am 03.01.2011 um 12:42 schrieb v...@lyx.org: > Author: vfr > Date: Mon Jan 3 12:42:01 2011 > New Revision: 37068 > URL: http://www.lyx.org/trac/changeset/37068 > > Log: > Remove GuiToolbar::allowauto_ and define this property in the > Toolbars.h::Visibility enum. > > Now, there is the bug that autoallow is incorrectly set to true when > visibility_ has the Visibility::SAMEROW flag. One shouldn't use >= on an enum > (GuiToolbar::setVisibility), as newly added items will exhibit unexpected > behaviour. > > Modified: > lyx-devel/trunk/src/frontends/qt4/GuiToolbar.cpp > lyx-devel/trunk/src/frontends/qt4/GuiToolbar.h > lyx-devel/trunk/src/frontends/qt4/Toolbars.h
Ok, thanks. Now I have the following reduced patch left. Ok to apply? Stephan
Index: src/frontends/qt4/GuiToolbar.cpp =================================================================== --- src/frontends/qt4/GuiToolbar.cpp (Revision 37068) +++ src/frontends/qt4/GuiToolbar.cpp (Arbeitskopie) @@ -90,6 +90,8 @@ void GuiToolbar::setVisibility(int visibility) { visibility_ = visibility; + if (!visibility_) + visibility_ = guiApp->toolbars().defaultVisibility(fromqstr(objectName())); } Index: src/frontends/qt4/Toolbars.cpp =================================================================== --- src/frontends/qt4/Toolbars.cpp (Revision 37068) +++ src/frontends/qt4/Toolbars.cpp (Arbeitskopie) @@ -370,7 +370,7 @@ } toolbar_visibility_[name] = visibility; - if (visibility >= MATH) { + if (visibility & ALLOWAUTO) { if (ToolbarInfo const * ti = info(name)) const_cast<ToolbarInfo *>(ti)->gui_name += " (" + _("auto") + ")";