basic/source/classes/sb.cxx | 19 +++- dev/null |binary filter/source/xslt/odf2xhtml/export/xhtml/body.xsl | 4 icon-themes/galaxy/res/helpimg/rechenlt.png |binary sd/source/ui/app/sdxfer.cxx | 18 +++- sfx2/source/sidebar/SidebarController.cxx | 90 ++++++++------------- sw/qa/extras/odfimport/odfimport.cxx | 2 sw/source/core/doc/docbm.cxx | 2 sw/source/core/layout/flowfrm.cxx | 9 +- sw/source/core/unocore/unoframe.cxx | 7 + sw/source/core/unocore/unotext.cxx | 19 ++-- sw/source/filter/ww8/docxattributeoutput.cxx | 2 12 files changed, 99 insertions(+), 73 deletions(-)
New commits: commit 8ebb31f73a68a388a2c37d810db92c6fce35b0b2 Author: Andras Timar <[email protected]> Date: Mon May 18 18:59:30 2015 +0200 tdf#80075 correct Writer formula bar screenshot (There is no localizable content in new screenshot.) Conflicts: icon-themes/galaxy/res/helpimg/tr/rechenlt.png Change-Id: I140d6996c747d2ca8938d2072711041896044b18 Reviewed-on: https://gerrit.libreoffice.org/15791 Reviewed-by: Adolfo Jayme Barrientos <[email protected]> Tested-by: Adolfo Jayme Barrientos <[email protected]> diff --git a/icon-themes/galaxy/res/helpimg/bg/rechenlt.png b/icon-themes/galaxy/res/helpimg/bg/rechenlt.png deleted file mode 100644 index 0147e33..0000000 Binary files a/icon-themes/galaxy/res/helpimg/bg/rechenlt.png and /dev/null differ diff --git a/icon-themes/galaxy/res/helpimg/cs/rechenlt.png b/icon-themes/galaxy/res/helpimg/cs/rechenlt.png deleted file mode 100644 index fc0b645..0000000 Binary files a/icon-themes/galaxy/res/helpimg/cs/rechenlt.png and /dev/null differ diff --git a/icon-themes/galaxy/res/helpimg/da/rechenlt.png b/icon-themes/galaxy/res/helpimg/da/rechenlt.png deleted file mode 100644 index b79771d..0000000 Binary files a/icon-themes/galaxy/res/helpimg/da/rechenlt.png and /dev/null differ diff --git a/icon-themes/galaxy/res/helpimg/de/rechenlt.png b/icon-themes/galaxy/res/helpimg/de/rechenlt.png deleted file mode 100644 index d7340bf..0000000 Binary files a/icon-themes/galaxy/res/helpimg/de/rechenlt.png and /dev/null differ diff --git a/icon-themes/galaxy/res/helpimg/es/rechenlt.png b/icon-themes/galaxy/res/helpimg/es/rechenlt.png deleted file mode 100644 index b5ce022..0000000 Binary files a/icon-themes/galaxy/res/helpimg/es/rechenlt.png and /dev/null differ diff --git a/icon-themes/galaxy/res/helpimg/et/rechenlt.png b/icon-themes/galaxy/res/helpimg/et/rechenlt.png deleted file mode 100644 index fc0b645..0000000 Binary files a/icon-themes/galaxy/res/helpimg/et/rechenlt.png and /dev/null differ diff --git a/icon-themes/galaxy/res/helpimg/fr/rechenlt.png b/icon-themes/galaxy/res/helpimg/fr/rechenlt.png deleted file mode 100644 index 099ce6a..0000000 Binary files a/icon-themes/galaxy/res/helpimg/fr/rechenlt.png and /dev/null differ diff --git a/icon-themes/galaxy/res/helpimg/hu/rechenlt.png b/icon-themes/galaxy/res/helpimg/hu/rechenlt.png deleted file mode 100644 index 23b3645..0000000 Binary files a/icon-themes/galaxy/res/helpimg/hu/rechenlt.png and /dev/null differ diff --git a/icon-themes/galaxy/res/helpimg/it/rechenlt.png b/icon-themes/galaxy/res/helpimg/it/rechenlt.png deleted file mode 100644 index 1c64d49..0000000 Binary files a/icon-themes/galaxy/res/helpimg/it/rechenlt.png and /dev/null differ diff --git a/icon-themes/galaxy/res/helpimg/ja/rechenlt.png b/icon-themes/galaxy/res/helpimg/ja/rechenlt.png deleted file mode 100644 index 02aab56..0000000 Binary files a/icon-themes/galaxy/res/helpimg/ja/rechenlt.png and /dev/null differ diff --git a/icon-themes/galaxy/res/helpimg/km/rechenlt.png b/icon-themes/galaxy/res/helpimg/km/rechenlt.png deleted file mode 100644 index 6083a52..0000000 Binary files a/icon-themes/galaxy/res/helpimg/km/rechenlt.png and /dev/null differ diff --git a/icon-themes/galaxy/res/helpimg/ko/rechenlt.png b/icon-themes/galaxy/res/helpimg/ko/rechenlt.png deleted file mode 100644 index 101d650..0000000 Binary files a/icon-themes/galaxy/res/helpimg/ko/rechenlt.png and /dev/null differ diff --git a/icon-themes/galaxy/res/helpimg/pl/rechenlt.png b/icon-themes/galaxy/res/helpimg/pl/rechenlt.png deleted file mode 100644 index 45df963..0000000 Binary files a/icon-themes/galaxy/res/helpimg/pl/rechenlt.png and /dev/null differ diff --git a/icon-themes/galaxy/res/helpimg/pt-BR/rechenlt.png b/icon-themes/galaxy/res/helpimg/pt-BR/rechenlt.png deleted file mode 100644 index 890d8d8..0000000 Binary files a/icon-themes/galaxy/res/helpimg/pt-BR/rechenlt.png and /dev/null differ diff --git a/icon-themes/galaxy/res/helpimg/pt/rechenlt.png b/icon-themes/galaxy/res/helpimg/pt/rechenlt.png deleted file mode 100644 index 890d8d8..0000000 Binary files a/icon-themes/galaxy/res/helpimg/pt/rechenlt.png and /dev/null differ diff --git a/icon-themes/galaxy/res/helpimg/rechenlt.png b/icon-themes/galaxy/res/helpimg/rechenlt.png index ef322de..924e83e 100644 Binary files a/icon-themes/galaxy/res/helpimg/rechenlt.png and b/icon-themes/galaxy/res/helpimg/rechenlt.png differ diff --git a/icon-themes/galaxy/res/helpimg/sk/rechenlt.png b/icon-themes/galaxy/res/helpimg/sk/rechenlt.png deleted file mode 100644 index fc0b645..0000000 Binary files a/icon-themes/galaxy/res/helpimg/sk/rechenlt.png and /dev/null differ diff --git a/icon-themes/galaxy/res/helpimg/sl/rechenlt.png b/icon-themes/galaxy/res/helpimg/sl/rechenlt.png deleted file mode 100644 index 8e60bea..0000000 Binary files a/icon-themes/galaxy/res/helpimg/sl/rechenlt.png and /dev/null differ diff --git a/icon-themes/galaxy/res/helpimg/sv/rechenlt.png b/icon-themes/galaxy/res/helpimg/sv/rechenlt.png deleted file mode 100644 index dd736ae..0000000 Binary files a/icon-themes/galaxy/res/helpimg/sv/rechenlt.png and /dev/null differ diff --git a/icon-themes/galaxy/res/helpimg/tr/rechenlt.png b/icon-themes/galaxy/res/helpimg/tr/rechenlt.png deleted file mode 100644 index 64f96f2..0000000 Binary files a/icon-themes/galaxy/res/helpimg/tr/rechenlt.png and /dev/null differ diff --git a/icon-themes/galaxy/res/helpimg/zh-CN/rechenlt.png b/icon-themes/galaxy/res/helpimg/zh-CN/rechenlt.png deleted file mode 100644 index b14e3a2..0000000 Binary files a/icon-themes/galaxy/res/helpimg/zh-CN/rechenlt.png and /dev/null differ diff --git a/icon-themes/galaxy/res/helpimg/zh-TW/rechenlt.png b/icon-themes/galaxy/res/helpimg/zh-TW/rechenlt.png deleted file mode 100644 index 54ccac3..0000000 Binary files a/icon-themes/galaxy/res/helpimg/zh-TW/rechenlt.png and /dev/null differ commit bbd94a62df2fb9184b7e64d2abcf47934e1c5bd6 Author: Michael Stahl <[email protected]> Date: Fri May 15 23:57:04 2015 +0200 tdf#90808: sw: fix detection of duplicate CrossRefBookmarks The check for existing bookmark positions is using the wrong position. It must use the Start of the pam, because the constructor of CrossRefBookmark only uses the Start of the pam. (cherry picked from commit 9d0c51daea67104349cac26de9839afa8baeb099) Conflicts: sw/source/core/doc/docbm.cxx Change-Id: I343f1c0e3571847a965a27571f01136810e83485 Reviewed-on: https://gerrit.libreoffice.org/15745 Reviewed-by: Caolán McNamara <[email protected]> Tested-by: Caolán McNamara <[email protected]> diff --git a/sw/source/core/doc/docbm.cxx b/sw/source/core/doc/docbm.cxx index 9567c3a..ce0ff19 100644 --- a/sw/source/core/doc/docbm.cxx +++ b/sw/source/core/doc/docbm.cxx @@ -377,7 +377,7 @@ namespace sw { namespace mark " - more than USHRT_MAX marks are not supported correctly"); // There should only be one CrossRefBookmark per Textnode per Type if ((eType == CROSSREF_NUMITEM_BOOKMARK || eType == CROSSREF_HEADING_BOOKMARK) - && (lcl_FindMarkAtPos(m_vBookmarks, *rPaM.GetPoint(), eType) != m_vBookmarks.end())) + && (lcl_FindMarkAtPos(m_vBookmarks, *rPaM.Start(), eType) != m_vBookmarks.end())) { // this can happen via UNO API SAL_WARN("sw.core", "MarkManager::makeMark(..)" " - refusing to create duplicate CrossRefBookmark"); commit 7ee4e2564496a2df244432330019d6a904831b62 Author: Michael Stahl <[email protected]> Date: Fri May 15 18:09:37 2015 +0200 tdf#91140: ODF import: try to ignore invalid draw:fill="solid" ... which was apparently written by LO >= 4.1 on a frame with image background, under unknown circumstances. Change-Id: Ie86643ab67f58bfe5c19d6a1f80a7af8f793edf2 (cherry picked from commit 97887cd810194ee556d2ec12f2a8be40075c29d2) Reviewed-on: https://gerrit.libreoffice.org/15743 Reviewed-by: Caolán McNamara <[email protected]> Tested-by: Caolán McNamara <[email protected]> diff --git a/sw/qa/extras/odfimport/odfimport.cxx b/sw/qa/extras/odfimport/odfimport.cxx index 5db4370..1dfef14 100644 --- a/sw/qa/extras/odfimport/odfimport.cxx +++ b/sw/qa/extras/odfimport/odfimport.cxx @@ -562,7 +562,7 @@ DECLARE_ODFIMPORT_TEST(fdo81223, "fdo81223.odt") uno::Reference<beans::XPropertySet> xFrame(xIndexAccess->getByIndex(0), uno::UNO_QUERY); sal_Int32 nValue(0); xFrame->getPropertyValue("BackColor") >>= nValue; - CPPUNIT_ASSERT_EQUAL(sal_Int32(0xfeffffff), nValue); + CPPUNIT_ASSERT_EQUAL(sal_Int32(0xffffffff), nValue); } DECLARE_ODFIMPORT_TEST(fdo90130_1, "fdo90130-1.odt") diff --git a/sw/source/core/unocore/unoframe.cxx b/sw/source/core/unocore/unoframe.cxx index a418203..7168777 100644 --- a/sw/source/core/unocore/unoframe.cxx +++ b/sw/source/core/unocore/unoframe.cxx @@ -254,8 +254,13 @@ bool BaseFrameProperties_Impl::FillBaseProperties(SfxItemSet& rToSet, const SfxI const uno::Any* pXFillBackgroundItem = 0; GetProperty(XATTR_FILLBACKGROUND, 0, pXFillBackgroundItem); const uno::Any* pOwnAttrFillBmpItem = 0; GetProperty(OWN_ATTR_FILLBMP_MODE, 0, pOwnAttrFillBmpItem); + // tdf#91140: ignore SOLID fill style for determining if fill style is used + // but there is a GraphicURL + const bool bFillStyleUsed(pXFillStyleItem && pXFillStyleItem->hasValue() && + (pXFillStyleItem->get<drawing::FillStyle>() != drawing::FillStyle_SOLID + || !pGrURL)); const bool bXFillStyleItemUsed( - pXFillStyleItem || + bFillStyleUsed || pXFillColorItem || pXFillGradientItem || pXFillGradientNameItem || pXFillHatchItem || pXFillHatchNameItem || commit a658823a3fe0c18c369013a799510dcf1062bd91 Author: Caolán McNamara <[email protected]> Date: Fri May 8 15:49:08 2015 +0100 misspell some words, copy and paste slide to gimp and we don't want to see the mis-spelt underlines Change-Id: Ib3ae29297a1697e0f7b0caa816504da7edf721d1 Reviewed-on: https://gerrit.libreoffice.org/15679 Reviewed-by: Adolfo Jayme Barrientos <[email protected]> Tested-by: Adolfo Jayme Barrientos <[email protected]> diff --git a/sd/source/ui/app/sdxfer.cxx b/sd/source/ui/app/sdxfer.cxx index dda4f74..4ac1fac 100644 --- a/sd/source/ui/app/sdxfer.cxx +++ b/sd/source/ui/app/sdxfer.cxx @@ -518,13 +518,27 @@ bool SdTransferable::GetData( const DataFlavor& rFlavor, const OUString& rDestDo } else if( nFormat == FORMAT_GDIMETAFILE ) { - if( mpSdViewIntern ) + if (mpSdViewIntern) + { + const bool bToggleOnlineSpell = mpSdDrawDocumentIntern && mpSdDrawDocumentIntern->GetOnlineSpell(); + if (bToggleOnlineSpell) + mpSdDrawDocumentIntern->SetOnlineSpell(false); bOK = SetGDIMetaFile( mpSdViewIntern->GetMarkedObjMetaFile( true ), rFlavor ); + if (bToggleOnlineSpell) + mpSdDrawDocumentIntern->SetOnlineSpell(true); + } } else if( FORMAT_BITMAP == nFormat || SOT_FORMATSTR_ID_PNG == nFormat ) { - if( mpSdViewIntern ) + if (mpSdViewIntern) + { + const bool bToggleOnlineSpell = mpSdDrawDocumentIntern && mpSdDrawDocumentIntern->GetOnlineSpell(); + if (bToggleOnlineSpell) + mpSdDrawDocumentIntern->SetOnlineSpell(false); bOK = SetBitmapEx( mpSdViewIntern->GetMarkedObjBitmapEx(true), rFlavor ); + if (bToggleOnlineSpell) + mpSdDrawDocumentIntern->SetOnlineSpell(true); + } } else if( ( nFormat == FORMAT_STRING ) && mpBookmark ) { commit 9b9ce755a7665c5ef06b9d167ec834afd847a5a9 Author: Robert Antoni Buj Gelonch <[email protected]> Date: Thu May 14 15:46:02 2015 +0200 odf2xhtml: tdf#66999 there is no attribute 'name' Change-Id: If00ef284326f16f59a2e85864a344b634a02f37e Reviewed-on: https://gerrit.libreoffice.org/15730 Reviewed-by: Adolfo Jayme Barrientos <[email protected]> Tested-by: Adolfo Jayme Barrientos <[email protected]> diff --git a/filter/source/xslt/odf2xhtml/export/xhtml/body.xsl b/filter/source/xslt/odf2xhtml/export/xhtml/body.xsl index a89adfc..615e1a1 100644 --- a/filter/source/xslt/odf2xhtml/export/xhtml/body.xsl +++ b/filter/source/xslt/odf2xhtml/export/xhtml/body.xsl @@ -2909,7 +2909,7 @@ <xsl:template match="text:bookmark|text:bookmark-start"> <xsl:element name="a"> - <xsl:attribute name="name"> + <xsl:attribute name="id"> <xsl:value-of select="@text:name"/> </xsl:attribute> </xsl:element> commit 5fdac22dd2d7f3f80df7265cad7ce1d95d255dcf Author: Robert Antoni Buj Gelonch <[email protected]> Date: Thu May 14 15:49:53 2015 +0200 odf2xhtml: tdf#66999 character 'â' is not allowed in the value of attribute 'id' Change-Id: I3c72917cf809adbb8b074cd187c50b12def1616c Reviewed-on: https://gerrit.libreoffice.org/15731 Reviewed-by: Adolfo Jayme Barrientos <[email protected]> Tested-by: Adolfo Jayme Barrientos <[email protected]> diff --git a/filter/source/xslt/odf2xhtml/export/xhtml/body.xsl b/filter/source/xslt/odf2xhtml/export/xhtml/body.xsl index 32f0ffe..a89adfc 100644 --- a/filter/source/xslt/odf2xhtml/export/xhtml/body.xsl +++ b/filter/source/xslt/odf2xhtml/export/xhtml/body.xsl @@ -1262,7 +1262,7 @@ <!-- REFERENCE HANDLING - ANCHOR --> <xsl:element namespace="{$namespace}" name="a"> <xsl:attribute name="id"> - <xsl:value-of select="translate(concat('a_',normalize-space($headingNumber), '_', normalize-space($title)), '
&<>.,;: %()[]/\+', '___________________________')"/> + <xsl:value-of select="translate(concat('a_',normalize-space($headingNumber), '_', normalize-space($title)), '
&<>â.,;: %()[]/\+', '____________________________')" disable-output-escaping="yes"/> </xsl:attribute> <xsl:element name="span"> commit cb5ef57d3c36bf8ce2ec0908ef68a15a37b38c65 Author: Michael Stahl <[email protected]> Date: Wed May 13 23:48:51 2015 +0200 tdf#85424: sw: fix ~SwIndexReg assert in SwXText::insertControlCharacter() Remove pointless duplicate temporary PaM. Change-Id: I28a1937928b6c3c21442bbfcb77377372c1cf40b (cherry picked from commit 847b4537928ff64cfdd6532704f7c48d947ac00f) Reviewed-on: https://gerrit.libreoffice.org/15725 Reviewed-by: Caolán McNamara <[email protected]> Tested-by: Caolán McNamara <[email protected]> diff --git a/sw/source/core/unocore/unotext.cxx b/sw/source/core/unocore/unotext.cxx index 2be0de2..f2ad346 100644 --- a/sw/source/core/unocore/unotext.cxx +++ b/sw/source/core/unocore/unotext.cxx @@ -415,10 +415,10 @@ throw (lang::IllegalArgumentException, uno::RuntimeException, std::exception) IDocumentContentOperations::INS_EMPTYEXPAND) : IDocumentContentOperations::INS_EMPTYEXPAND; - SwPaM aTmp(*aPam.Start()); if (bAbsorb && aPam.HasMark()) { m_pImpl->m_pDoc->getIDocumentContentOperations().DeleteAndJoin(aPam); + aPam.DeleteMark(); } sal_Unicode cIns = 0; @@ -426,13 +426,13 @@ throw (lang::IllegalArgumentException, uno::RuntimeException, std::exception) { case text::ControlCharacter::PARAGRAPH_BREAK : // a table cell now becomes an ordinary text cell! - m_pImpl->m_pDoc->ClearBoxNumAttrs( aTmp.GetPoint()->nNode ); - m_pImpl->m_pDoc->getIDocumentContentOperations().SplitNode( *aTmp.GetPoint(), false ); + m_pImpl->m_pDoc->ClearBoxNumAttrs(aPam.GetPoint()->nNode); + m_pImpl->m_pDoc->getIDocumentContentOperations().SplitNode(*aPam.GetPoint(), false); break; case text::ControlCharacter::APPEND_PARAGRAPH: { - m_pImpl->m_pDoc->ClearBoxNumAttrs( aTmp.GetPoint()->nNode ); - m_pImpl->m_pDoc->getIDocumentContentOperations().AppendTxtNode( *aTmp.GetPoint() ); + m_pImpl->m_pDoc->ClearBoxNumAttrs(aPam.GetPoint()->nNode); + m_pImpl->m_pDoc->getIDocumentContentOperations().AppendTxtNode(*aPam.GetPoint()); const uno::Reference<lang::XUnoTunnel> xRangeTunnel( xTextRange, uno::UNO_QUERY); @@ -443,12 +443,12 @@ throw (lang::IllegalArgumentException, uno::RuntimeException, std::exception) xRangeTunnel); if (pRange) { - pRange->SetPositions(aTmp); + pRange->SetPositions(aPam); } else if (pCursor) { SwPaM *const pCrsr = pCursor->GetPaM(); - *pCrsr->GetPoint() = *aTmp.GetPoint(); + *pCrsr->GetPoint() = *aPam.GetPoint(); pCrsr->DeleteMark(); } } @@ -460,7 +460,8 @@ throw (lang::IllegalArgumentException, uno::RuntimeException, std::exception) } if (cIns) { - m_pImpl->m_pDoc->getIDocumentContentOperations().InsertString( aTmp, OUString(cIns), nInsertFlags ); + m_pImpl->m_pDoc->getIDocumentContentOperations().InsertString( + aPam, OUString(cIns), nInsertFlags); } if (bAbsorb) @@ -472,7 +473,7 @@ throw (lang::IllegalArgumentException, uno::RuntimeException, std::exception) OTextCursorHelper *const pCursor = ::sw::UnoTunnelGetImplementation<OTextCursorHelper>(xRangeTunnel); - SwCursor aCrsr(*aTmp.GetPoint(),0,false); + SwCursor aCrsr(*aPam.GetPoint(), 0, false); SwUnoCursorHelper::SelectPam(aCrsr, true); aCrsr.Left(1, CRSR_SKIP_CHARS, false, false); // here, the PaM needs to be moved: commit b86e3519f783df1bf286a9a26d5769c0e836934c Author: Michael Stahl <[email protected]> Date: Tue May 12 13:47:38 2015 +0200 tdf#90969: basic: add horrible hack to avoid crash due to ... ... the stupid global variable GaDocBasicItems. Change-Id: Ib849e0e2b661e54005d00091f6d6fc474dc5549b (cherry picked from commit be88e305eeac88e51f83efc004d4b60b87f1e757) Reviewed-on: https://gerrit.libreoffice.org/15715 Reviewed-by: Björn Michaelsen <[email protected]> Tested-by: Björn Michaelsen <[email protected]> diff --git a/basic/source/classes/sb.cxx b/basic/source/classes/sb.cxx index c24828a..2f5be56 100644 --- a/basic/source/classes/sb.cxx +++ b/basic/source/classes/sb.cxx @@ -24,6 +24,7 @@ #include <tools/rcid.h> #include <tools/stream.hxx> #include <tools/errinf.hxx> +#include <tools/solarmutex.hxx> #include <basic/sbx.hxx> #include <tools/rc.hxx> #include <vcl/svapp.hxx> @@ -109,10 +110,22 @@ DocBasicItem::DocBasicItem( StarBASIC& rDocBasic ) : DocBasicItem::~DocBasicItem() { - SolarMutexGuard g; + // tdf#90969 HACK: don't use SolarMutexGuard - there is a horrible global + // map GaDocBasicItems holding instances, and these get deleted from exit + // handlers, when the SolarMutex is already dead + tools::SolarMutex::Acquire(); - stopListening(); - mxClassModules.Clear(); // release with SolarMutex locked + try + { + stopListening(); + mxClassModules.Clear(); // release with SolarMutex locked + } + catch (...) + { + assert(false); + } + + tools::SolarMutex::Release(); } void DocBasicItem::clearDependingVarsOnDelete( StarBASIC& rDeletedBasic ) commit b1a7a81a7c9054584b0cd812456704e17f060352 Author: Caolán McNamara <[email protected]> Date: Thu May 7 14:37:36 2015 +0100 Resolves: tdf#72007: on switching decks keep our left indent, don't assume 0 Change-Id: I878c999611e1294d5107f1cf2c000d9ed5f88cb1 (cherry picked from commit 4073afa350387f9fc9194347ad78c6cbdabbb812) Related: tdf#72007 align to right if undocked Change-Id: Ia0af0493e0af6c945006e6a1f6f918f7b104068d (cherry picked from commit 8b867887022903bc5788b01db51dfcec521dc878) Reviewed-on: https://gerrit.libreoffice.org/15689 Reviewed-by: Adolfo Jayme Barrientos <[email protected]> Tested-by: Adolfo Jayme Barrientos <[email protected]> diff --git a/sfx2/source/sidebar/SidebarController.cxx b/sfx2/source/sidebar/SidebarController.cxx index 620bfeb..5f275ee 100644 --- a/sfx2/source/sidebar/SidebarController.cxx +++ b/sfx2/source/sidebar/SidebarController.cxx @@ -344,62 +344,33 @@ void SidebarController::NotifyResize (void) if (mpCurrentDeck) { SfxSplitWindow* pSplitWindow = GetSplitWindow(); - if (pSplitWindow) //in sidebar mode + WindowAlign eAlign = pSplitWindow ? pSplitWindow->GetAlign() : WINDOWALIGN_RIGHT; + long nDeckX, nTabX; + if (eAlign == WINDOWALIGN_LEFT) // attach the Sidebar towards the left-side of screen { - // Find out that which side of the Window do we need to attach the Sidebar? - if ( pSplitWindow->GetAlign() == WINDOWALIGN_RIGHT ) // attach the Sidebar towards the right-side of screen - { - // Place the deck first. - { - if (bIsDeckVisible) - { - mpCurrentDeck->setPosSizePixel(0,0, nWidth-nTabBarDefaultWidth, nHeight); - mpCurrentDeck->Show(); - mpCurrentDeck->RequestLayout(); - } - else - mpCurrentDeck->Hide(); - } - - // Now place the tab bar. - mpTabBar->setPosSizePixel(nWidth-nTabBarDefaultWidth,0,nTabBarDefaultWidth,nHeight); - mpTabBar->Show(); - } - else if ( pSplitWindow->GetAlign() == WINDOWALIGN_LEFT) // attach the Sidebar towards the left-side of screen - { - // Place the tab bar first. - mpTabBar->setPosSizePixel(0,0,nTabBarDefaultWidth,nHeight); - mpTabBar->Show(); - - // Now place the deck. - if (bIsDeckVisible) - { - mpCurrentDeck->setPosSizePixel(nTabBarDefaultWidth,0, nWidth-nTabBarDefaultWidth, nHeight); - mpCurrentDeck->Show(); - mpCurrentDeck->RequestLayout(); - } - else - mpCurrentDeck->Hide(); - } + nDeckX = nTabBarDefaultWidth; + nTabX = 0; } - else //floating window mode + else // attach the Sidebar towards the right-side of screen { - // Place the deck first. - { - if (bIsDeckVisible) - { - mpCurrentDeck->setPosSizePixel(0,0, nWidth-nTabBarDefaultWidth, nHeight); - mpCurrentDeck->Show(); - mpCurrentDeck->RequestLayout(); - } - else - mpCurrentDeck->Hide(); - } + nDeckX = 0; + nTabX = nWidth-nTabBarDefaultWidth; + } - // Now place the tab bar. - mpTabBar->setPosSizePixel(nWidth-nTabBarDefaultWidth,0,nTabBarDefaultWidth,nHeight); - mpTabBar->Show(); + // Place the deck first. + if (bIsDeckVisible) + { + mpCurrentDeck->setPosSizePixel(nDeckX, 0, nWidth - nTabBarDefaultWidth, nHeight); + mpCurrentDeck->Show(); + mpCurrentDeck->RequestLayout(); } + else + mpCurrentDeck->Hide(); + + // Now place the tab bar. + mpTabBar->setPosSizePixel(nTabX, 0, nTabBarDefaultWidth, nHeight); + mpTabBar->Show(); + } // Determine if the closer of the deck can be shown. @@ -693,11 +664,24 @@ void SidebarController::SwitchToDeck ( } aNewPanels.resize(nWriteIndex); + SfxSplitWindow* pSplitWindow = GetSplitWindow(); + sal_Int32 nTabBarDefaultWidth = TabBar::GetDefaultWidth() * mpTabBar->GetDPIScaleFactor(); + WindowAlign eAlign = pSplitWindow ? pSplitWindow->GetAlign() : WINDOWALIGN_RIGHT; + long nDeckX; + if (eAlign == WINDOWALIGN_LEFT) // attach the Sidebar towards the left-side of screen + { + nDeckX = nTabBarDefaultWidth; + } + else // attach the Sidebar towards the right-side of screen + { + nDeckX = 0; + } + // Activate the deck and the new set of panels. mpCurrentDeck->setPosSizePixel( + nDeckX, 0, - 0, - mpParentWindow->GetSizePixel().Width()-TabBar::GetDefaultWidth() * mpTabBar->GetDPIScaleFactor(), + mpParentWindow->GetSizePixel().Width() - nTabBarDefaultWidth, mpParentWindow->GetSizePixel().Height()); mpCurrentDeck->SetPanels(aNewPanels); commit 63e33aa0f46d775bcb8f696a3993b974808105aa Author: Caolán McNamara <[email protected]> Date: Fri May 1 12:12:28 2015 +0100 Resolves: tdf#90141 layout crash with table in footnote this also makes cloudon File_1308.docx not crash, which is the last outstanding crashtesting import failure Change-Id: I06867a1b06316c6dab62ebd8a55f3a02b57b9f31 (cherry picked from commit 971adcd9e19e0bcab5855aae9be58d2203b46169) Reviewed-on: https://gerrit.libreoffice.org/15584 Reviewed-by: Michael Stahl <[email protected]> Tested-by: Michael Stahl <[email protected]> diff --git a/sw/source/core/layout/flowfrm.cxx b/sw/source/core/layout/flowfrm.cxx index e9b05f9..255817a 100644 --- a/sw/source/core/layout/flowfrm.cxx +++ b/sw/source/core/layout/flowfrm.cxx @@ -1780,8 +1780,15 @@ bool SwFlowFrm::MoveFwd( bool bMakePage, bool bPageBreak, bool bMoveAlways ) { //!!!!MoveFtnCntFwd might need to be updated as well. SwFtnBossFrm *pOldBoss = m_rThis.FindFtnBossFrm(); - if ( m_rThis.IsInFtn() ) + if (m_rThis.IsInFtn()) + { + if (!m_rThis.IsCntntFrm()) + { + SAL_WARN("sw.core", "Tables in footnotes are not truly supported"); + return false; + } return static_cast<SwCntntFrm&>(m_rThis).MoveFtnCntFwd( bMakePage, pOldBoss ); + } if( !IsFwdMoveAllowed() && !bMoveAlways ) { commit f6ea8e4313146b6011bc47f82d00c75985261cdb Author: Caolán McNamara <[email protected]> Date: Tue Apr 28 10:27:32 2015 +0100 fix assert on re-export of fdo72640-6.docx to docx and hopefully loads more Change-Id: I04f9f757378e25191d7334bd52e418cf84bdf887 (cherry picked from commit 11cac95f57c5e7836413a73667d74128c4afd3e7) Signed-off-by: Michael Stahl <[email protected]> diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx index cacbe97..d6ad76d 100644 --- a/sw/source/filter/ww8/docxattributeoutput.cxx +++ b/sw/source/filter/ww8/docxattributeoutput.cxx @@ -6005,6 +6005,8 @@ void DocxAttributeOutput::NumberingLevel( sal_uInt8 nLevel, } m_rExport.OutputItemSet( *pOutSet, false, true, i18n::ScriptType::LATIN, m_rExport.mbExportModeRTF ); + WriteCollectedRunProperties(); + m_pSerializer->endElementNS( XML_w, XML_rPr ); }
_______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
