From 4a4dddbfbf51bda428888b1e06be79ce59eb3a6c Mon Sep 17 00:00:00 2001 From: David Tardon Date: Jan 07 2014 18:28:30 +0000 Subject: Resolves: rhbz#1047017 All the selected toolbars became unselected coming out from the full screen option --- diff --git a/0001-fdo-66864-Return-from-full-screen-should-restore-too.patch b/0001-fdo-66864-Return-from-full-screen-should-restore-too.patch new file mode 100644 index 0000000..25dae6e --- /dev/null +++ b/0001-fdo-66864-Return-from-full-screen-should-restore-too.patch @@ -0,0 +1,81 @@ +From 171f2ca39a08299abe54e92e8096cdaa5e02a4dc Mon Sep 17 00:00:00 2001 +From: Jan Holesovsky +Date: Fri, 15 Nov 2013 10:59:36 +0100 +Subject: [PATCH] fdo#66864: Return from full-screen should restore toolbars. + +The fix for fdo#37758 was not correct, we shouldn't fiddle with the m_bVisible +itself, but instead react on the m_bMasterHide flag; or at least that is my +understanding of the related framework code (why is it so confusing?!) + +Change-Id: I791fcea9e5e5313b6a5b776cb3187cbd1a028386 +(cherry picked from commit 986644335c3f9e99ec3c6bebc0b75cca0acdf79b) +Reviewed-on: https://gerrit.libreoffice.org/7065 +Reviewed-by: Jan Holesovsky +Tested-by: Jan Holesovsky +--- + .../source/layoutmanager/toolbarlayoutmanager.cxx | 26 +++++++++------------- + 1 file changed, 11 insertions(+), 15 deletions(-) + +diff --git a/framework/source/layoutmanager/toolbarlayoutmanager.cxx b/framework/source/layoutmanager/toolbarlayoutmanager.cxx +index 52a0d7b..1bb03d1 100644 +--- a/framework/source/layoutmanager/toolbarlayoutmanager.cxx ++++ b/framework/source/layoutmanager/toolbarlayoutmanager.cxx +@@ -294,7 +294,7 @@ Rectangle ToolbarLayoutManager::implts_calcDockingArea() + SolarMutexGuard aGuard; + + Window* pWindow = VCLUnoHelper::GetWindow( xWindow ); +- if ( pWindow && !xDockWindow->isFloating() && pConstIter->m_bVisible ) ++ if ( pWindow && !xDockWindow->isFloating() && pConstIter->m_bVisible && !pConstIter->m_bMasterHide ) + { + awt::Rectangle aPosSize = xWindow->getPosSize(); + if ( pConstIter->m_aDockedData.m_nDockedArea != nCurrDockingArea ) +@@ -442,7 +442,7 @@ bool ToolbarLayoutManager::requestToolbar( const OUString& rResourceURL ) + if ( !xUIElement.is() ) + bMustCallCreate = true; + +- bool bCreateOrShowToolbar( aRequestedToolbar.m_bVisible & !aRequestedToolbar.m_bMasterHide ); ++ bool bCreateOrShowToolbar( aRequestedToolbar.m_bVisible && !aRequestedToolbar.m_bMasterHide ); + + uno::Reference< awt::XWindow2 > xContainerWindow( m_xContainerWindow, uno::UNO_QUERY ); + if ( xContainerWindow.is() && aRequestedToolbar.m_bFloating ) +@@ -681,28 +681,24 @@ void ToolbarLayoutManager::setVisible( bool bVisible ) + UIElementVector::iterator pIter; + for ( pIter = aUIElementVector.begin(); pIter != aUIElementVector.end(); ++pIter ) + { +- pIter->m_bMasterHide = !bVisible; ++ if (!pIter->m_bFloating) ++ { ++ UIElement aUIElement(*pIter); ++ aUIElement.m_bMasterHide = !bVisible; ++ implts_setToolbar(aUIElement); ++ implts_setLayoutDirty(); ++ } ++ + Window* pWindow = getWindowFromXUIElement( pIter->m_xUIElement ); + if ( pWindow ) + { +- bool bSetVisible( pIter->m_bVisible & bVisible ); ++ bool bSetVisible( pIter->m_bVisible && bVisible ); + if ( !bSetVisible ) +- { + pWindow->Hide(); +- +- UIElement aUIElement( *pIter ); +- if ( !aUIElement.m_bFloating ) +- implts_setLayoutDirty(); +- +- aUIElement.m_bVisible = false; +- implts_setToolbar( aUIElement ); +- } + else + { + if ( pIter->m_bFloating ) + pWindow->Show(true, SHOW_NOFOCUSCHANGE | SHOW_NOACTIVATE ); +- else +- implts_setLayoutDirty(); + } + } + } +-- +1.8.3.4 (Apple Git-47) + diff --git a/libreoffice.spec b/libreoffice.spec index 61344b1..9f42f5d 100644 --- a/libreoffice.spec +++ b/libreoffice.spec @@ -42,7 +42,7 @@ Summary: Free Software Productivity Suite Name: libreoffice Epoch: 1 Version: %{libo_version}.2 -Release: 2%{?libo_prerelease}%{?dist} +Release: 3%{?libo_prerelease}%{?dist} License: (MPLv1.1 or LGPLv3+) and LGPLv3 and LGPLv2+ and BSD and (MPLv1.1 or GPLv2 or LGPLv2 or Netscape) and Public Domain and ASL 2.0 and Artistic and MPLv2.0 Group: Applications/Productivity URL: http://www.libreoffice.org/default/ @@ -2118,6 +2118,10 @@ update-desktop-database %{_datadir}/applications &> /dev/null || : %endif %changelog +* Tue Jan 07 2014 David Tardon - 1:4.1.4.2-3 +- Resolves: rhbz#1047017 All the selected toolbars became unselected + coming out from the full screen option + * Wed Dec 18 2013 Caolán McNamara - 1:4.1.4.2-2 - Resolves: rhbz#1040708 rebuild against new libstdc++ to fix std::nth_element