Hi Noel & co. I'll CC the public dev list on this since it may be of wider interest.
On Mon, 2011-10-24 at 11:24 +0100, Noel Power wrote: > something like this should work ( although doesn't on master or 3.4 > but... does appear to work on 3.3 :-/ ) seems like this really is a > regression Carlos - reading the code, it looks like 'setVisible' is what you want to be calling - it -looks- (on a first glance) as if it doesn't save the state in this case - so it should be something we can call and will not alter the other documents (but perhaps I'm mistaken). > sub togglefind > layoutManager = thisComponent.currentController.frame.layoutManager > findbarUrl = "private:resource/toolbar/findbar" > bVis = layoutmanager.iselementvisible( "private:resource/toolbar/findbar" ) > msgbox "Findbar currently IsVisible? " & bVis > > if bVis then > layoutmanager.hideElement( findbarUrl ) > else > layoutmanager.showelement( findbarUrl ) > endif > > end sub I'm personally suspicious of: commit 560e5132f606b1fcd790e3cf97d665cec8c442fc Author: Carsten Driesner <c...@openoffice.org> Date: Mon Nov 1 13:29:26 2010 +0100 dockingwindows: #i112595# Fixed problem related to changes for better layouting. Further code rework Which does the: - if ( pWindow && pIter->m_bFloating ) - pWindow->Show(bVisible & bToolbarVisible, SHOW_NOFOCUSCHANGE | SHOW_NOACTIVATE ); + if ( pWindow ) + { + bool bSetVisible( pIter->m_bVisible & bVisible ); + if ( !bSetVisible ) + pWindow->Hide(); + else + { + if ( pIter->m_bFloating ) + pWindow->Show(true, SHOW_NOFOCUSCHANGE | SHOW_NOACTIVATE ); + else + implts_setLayoutDirty(); + } Which (at first glance) doesn't seem to hide non-floating windows ( or perhaps I'm missing how the dirty notification propagates somehow ). HTH, Michael. -- michael.me...@suse.com <><, Pseudo Engineer, itinerant idiot _______________________________________________ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice