desktop/CppunitTest_desktop_lib.mk | 2 + desktop/qa/data/blank_presentation.odp |binary desktop/qa/desktop_lib/test_desktop_lib.cxx | 3 ++ sc/inc/address.hxx | 2 + sc/sdi/scalc.sdi | 2 - sc/source/core/data/fillinfo.cxx | 23 ++++++++++++------- sc/source/ui/docshell/impex.cxx | 3 +- sc/source/ui/unoobj/docuno.cxx | 16 ++++++++++++- sc/source/ui/view/cellsh3.cxx | 32 +++++++++++++++++++++------ sc/source/ui/view/gridwin.cxx | 8 ++++++ sc/source/ui/view/tabview3.cxx | 4 ++- sw/source/uibase/uno/SwXDocumentSettings.cxx | 2 - 12 files changed, 78 insertions(+), 19 deletions(-)
New commits: commit f9ff27f6959ddfc16adbbf4d965458c3633b9747 Author: Andras Timar <[email protected]> Date: Mon Jun 13 00:37:55 2016 +0200 add desktop/qa/data/blank_presentation.odp Change-Id: Ib41270d589dfa166cb2fb8d7f14a1caaedf4d4fc diff --git a/desktop/CppunitTest_desktop_lib.mk b/desktop/CppunitTest_desktop_lib.mk index 2119e15..75418be 100644 --- a/desktop/CppunitTest_desktop_lib.mk +++ b/desktop/CppunitTest_desktop_lib.mk @@ -61,6 +61,8 @@ $(eval $(call gb_CppunitTest_use_components,desktop_lib,\ sw/util/swd \ sc/util/sc \ sc/util/scd \ + sd/util/sd \ + sd/util/sdd \ toolkit/util/tk \ ucb/source/core/ucb1 \ ucb/source/ucp/file/ucpfile1 \ diff --git a/desktop/qa/data/blank_presentation.odp b/desktop/qa/data/blank_presentation.odp new file mode 100644 index 0000000..157901f Binary files /dev/null and b/desktop/qa/data/blank_presentation.odp differ diff --git a/desktop/qa/desktop_lib/test_desktop_lib.cxx b/desktop/qa/desktop_lib/test_desktop_lib.cxx index e8f6ff4..dc1282f 100644 --- a/desktop/qa/desktop_lib/test_desktop_lib.cxx +++ b/desktop/qa/desktop_lib/test_desktop_lib.cxx @@ -130,6 +130,9 @@ LibLODocument_Impl* DesktopLOKTest::loadDoc(const char* pName, LibreOfficeKitDoc case LOK_DOCTYPE_SPREADSHEET: aService = "com.sun.star.sheet.SpreadsheetDocument"; break; + case LOK_DOCTYPE_PRESENTATION: + aService = "com.sun.star.presentation.PresentationDocument"; + break; default: CPPUNIT_ASSERT(false); break; commit c82627a66b00197656f4a0a793b9cf2ce0747a21 Author: Henry Castro <[email protected]> Date: Wed Jun 1 14:24:12 2016 -0400 sc lok: limit movement of the cursor (cherry picked from commit 538d0c92ae2d5cb36869360a0889bc063a854f47) Change-Id: Ic7fe2dec012efb8ba180feb4d3df6f4bfbf6c38a diff --git a/sc/inc/address.hxx b/sc/inc/address.hxx index 8ac565c..4654ced 100644 --- a/sc/inc/address.hxx +++ b/sc/inc/address.hxx @@ -70,6 +70,8 @@ const SCROW MAXROW = MAXROWCOUNT - 1; const SCCOL MAXCOL = MAXCOLCOUNT - 1; const SCTAB MAXTAB = MAXTABCOUNT - 1; const SCCOLROW MAXCOLROW = MAXROW; +// Maximun tiled rendering values +const SCROW MAXTILEDROW = 1000; // Limit the initial tab count to prevent users to set the count too high, // which could cause the memory usage of blank documents to exceed the // available system memory. diff --git a/sc/source/ui/view/gridwin.cxx b/sc/source/ui/view/gridwin.cxx index 2f74bbb..d19d90d 100644 --- a/sc/source/ui/view/gridwin.cxx +++ b/sc/source/ui/view/gridwin.cxx @@ -138,6 +138,7 @@ #define LOK_USE_UNSTABLE_API #include <LibreOfficeKit/LibreOfficeKitEnums.h> +#include <comphelper/lok.hxx> #include <memory> #include <vector> @@ -1979,6 +1980,13 @@ void ScGridWindow::HandleMouseButtonDown( const MouseEvent& rMEvt, MouseEventSta pViewData->GetPosFromPixel( aPos.X(), aPos.Y(), eWhich, nPosX, nPosY ); SCTAB nTab = pViewData->GetTabNo(); + if ( comphelper::LibreOfficeKit::isActive() && nPosY > MAXTILEDROW - 1 ) + { + nButtonDown = 0; + nMouseStatus = SC_GM_NONE; + return; + } + // Auto filter / pivot table / data select popup. This shouldn't activate the part. if ( !bDouble && !bFormulaMode && rMEvt.IsLeft() ) diff --git a/sc/source/ui/view/tabview3.cxx b/sc/source/ui/view/tabview3.cxx index 0e592b4..bc0581d 100644 --- a/sc/source/ui/view/tabview3.cxx +++ b/sc/source/ui/view/tabview3.cxx @@ -62,6 +62,8 @@ #include "tabprotection.hxx" #include "markdata.hxx" #include <formula/FormulaCompiler.hxx> +#include <comphelper/lok.hxx> +#include <LibreOfficeKit/LibreOfficeKitEnums.h> #include <com/sun/star/chart2/data/HighlightedRange.hpp> @@ -976,7 +978,7 @@ void ScTabView::MoveCursorAbs( SCsCOL nCurX, SCsROW nCurY, ScFollowMode eMode, if (nCurX < 0) nCurX = 0; if (nCurY < 0) nCurY = 0; if (nCurX > MAXCOL) nCurX = MAXCOL; - if (nCurY > MAXROW) nCurY = MAXROW; + nCurY = std::min(nCurY, comphelper::LibreOfficeKit::isActive() ? MAXTILEDROW - 1 : MAXROW); HideAllCursors(); commit b8efab44b2777a6763e291d03abd4906171d2735 Author: Markus Mohrhard <[email protected]> Date: Sun Mar 27 00:30:09 2016 +0100 extract function from ScDocument::FillInfo A first step in breaking the function into smaller pieces. Change-Id: I94aeb11fd9c44a7eaa198cb39f208b574ef2758d Reviewed-on: https://gerrit.libreoffice.org/23548 Tested-by: Jenkins <[email protected]> Reviewed-by: Markus Mohrhard <[email protected]> (cherry picked from commit efea43b4c4f42023a540079866b065068ae8a8e5) Reviewed-on: https://gerrit.libreoffice.org/25280 Reviewed-by: Ashod Nakashian <[email protected]> Tested-by: Ashod Nakashian <[email protected]> (cherry picked from commit 16c3defa8ff6330e4c21ba42177d92665a67ac0b) diff --git a/sc/source/core/data/fillinfo.cxx b/sc/source/core/data/fillinfo.cxx index 89c81a6..33319cb 100644 --- a/sc/source/core/data/fillinfo.cxx +++ b/sc/source/core/data/fillinfo.cxx @@ -195,6 +195,20 @@ public: } }; +bool isRotateItemUsed(ScDocumentPool *pPool) +{ + sal_uInt32 nRotCount = pPool->GetItemCount2( ATTR_ROTATE_VALUE ); + for (sal_uInt32 nItem=0; nItem<nRotCount; nItem++) + { + if (pPool->GetItem2( ATTR_ROTATE_VALUE, nItem )) + { + return true; + } + } + + return false; +} + } void ScDocument::FillInfo( @@ -312,14 +326,7 @@ void ScDocument::FillInfo( // Rotated text... // Is Attribute really used in document? - bool bAnyItem = false; - sal_uInt32 nRotCount = pPool->GetItemCount2( ATTR_ROTATE_VALUE ); - for (sal_uInt32 nItem=0; nItem<nRotCount; nItem++) - if (pPool->GetItem2( ATTR_ROTATE_VALUE, nItem )) - { - bAnyItem = true; - break; - } + bool bAnyItem = isRotateItemUsed(pPool); SCCOL nRotMax = nCol2; if ( bAnyItem && HasAttrib( 0,nRow1,nTab, MAXCOL,nRow2+1,nTab, commit 6fe0149c78e2d76fe4ee284b153e593176e39cb0 Author: Pranav Kant <[email protected]> Date: Wed Jun 1 12:58:30 2016 +0530 sc lok: Add new param to .uno:EnterString to prevent committing If new param, DontCommit, is specified start the edit engine and edit the current cell. This helps in not triggering calculations that depend on the current cell. In case DontCommit param is missing, it will work as it used to. Change-Id: I62408932e52ff68fa11568cfc16a43e4c1e919c5 Reviewed-on: https://gerrit.libreoffice.org/25753 Tested-by: Jenkins <[email protected]> Reviewed-by: pranavk <[email protected]> (cherry picked from commit c14627d66ca8d9fe14272fadb5305857101f513e) Reviewed-on: https://gerrit.libreoffice.org/25788 Tested-by: pranavk <[email protected]> (cherry picked from commit 4b2c9e9b6641160829af143885fda48a78a2a3a7) diff --git a/sc/sdi/scalc.sdi b/sc/sdi/scalc.sdi index 4746117..f1a7225 100644 --- a/sc/sdi/scalc.sdi +++ b/sc/sdi/scalc.sdi @@ -9046,7 +9046,7 @@ SfxVoidItem Ungroup SID_OUTLINE_REMOVE ] SfxVoidItem EnterString SID_ENTER_STRING -(SfxStringItem StringName SID_ENTER_STRING) +(SfxStringItem StringName SID_ENTER_STRING,SfxBoolItem DontCommit FN_PARAM_1) [ /* flags: */ AutoUpdate = FALSE, diff --git a/sc/source/ui/view/cellsh3.cxx b/sc/source/ui/view/cellsh3.cxx index d2fd259..132fe93 100644 --- a/sc/source/ui/view/cellsh3.cxx +++ b/sc/source/ui/view/cellsh3.cxx @@ -18,6 +18,8 @@ */ #include "scitems.hxx" +#include <editeng/editview.hxx> +#include <editeng/editeng.hxx> #include <sfx2/viewfrm.hxx> #include <sfx2/bindings.hxx> #include <sfx2/dispatch.hxx> @@ -177,19 +179,37 @@ void ScCellShell::Execute( SfxRequest& rReq ) { OUString aStr( static_cast<const SfxStringItem&>(pReqArgs-> Get( SID_ENTER_STRING )).GetValue() ); - - pTabViewShell->EnterData( GetViewData()->GetCurX(), - GetViewData()->GetCurY(), - GetViewData()->GetTabNo(), - aStr ); + const SfxPoolItem* pDontCommitItem; + bool bCommit = true; + if (pReqArgs->HasItem(FN_PARAM_1, &pDontCommitItem)) + bCommit = !(static_cast<const SfxBoolItem*>(pDontCommitItem)->GetValue()); ScInputHandler* pHdl = SC_MOD()->GetInputHdl( pTabViewShell ); + if (bCommit) + { + pTabViewShell->EnterData( GetViewData()->GetCurX(), + GetViewData()->GetCurY(), + GetViewData()->GetTabNo(), + aStr ); + } + else + { + SC_MOD()->SetInputMode(SC_INPUT_TABLE); + + EditView* pTableView = pHdl->GetActiveView(); + pHdl->DataChanging(); + if (pTableView) + pTableView->GetEditEngine()->SetText(aStr); + pHdl->DataChanged(); + + SC_MOD()->SetInputMode(SC_INPUT_NONE); + } + if ( !pHdl || !pHdl->IsInEnterHandler() ) { // UpdateInputHandler is needed after the cell content // has changed, but if called from EnterHandler, UpdateInputHandler // will be called later when moving the cursor. - pTabViewShell->UpdateInputHandler(); } commit 0c35b728fa3eb46d32bd6bf52307bd58a80ec55e Author: Pranav Kant <[email protected]> Date: Wed Jun 8 10:27:58 2016 +0530 sc lok: catch unhandled exception Now, after 432b27ec73940738bb0b4f9d3d749c70a2525700, we do not export newlines when empty range is selected. Trying to get transfer data in such a case throws an exception. (cherry-picked from commit 82ed95b7554cfa3b5e98f67cc53c6219e3a09886) Change-Id: If2b16bfa2c1932b0599108b989e62e200c1b3b27 (cherry picked from commit 4a2d6bf7ca582a063a209e6dfd59e00f5cb57bfe) diff --git a/sc/source/ui/unoobj/docuno.cxx b/sc/source/ui/unoobj/docuno.cxx index e81336a..3c5779c 100644 --- a/sc/source/ui/unoobj/docuno.cxx +++ b/sc/source/ui/unoobj/docuno.cxx @@ -755,7 +755,21 @@ OString ScModelObj::getTextSelection(const char* pMimeType, OString& rUsedMimeTy if (!xTransferable.is() || !xTransferable->isDataFlavorSupported(aFlavor)) return OString(); - uno::Any aAny(xTransferable->getTransferData(aFlavor)); + uno::Any aAny; + try + { + aAny = xTransferable->getTransferData(aFlavor); + } + catch (const datatransfer::UnsupportedFlavorException e) + { + OSL_TRACE("Caught UnsupportedFlavorException '%s'", OUStringToOString(e.Message, RTL_TEXTENCODING_UTF8).getStr()); + return OString(); + } + catch (const css::uno::Exception& e) + { + OSL_TRACE("Caught UNO Exception '%s'", OUStringToOString(e.Message, RTL_TEXTENCODING_UTF8).getStr()); + return OString(); + } OString aRet; if (aFlavor.DataType == cppu::UnoType<OUString>::get()) commit 4afccdf6e66283643864401543848e6dc31408cf Author: Pranav Kant <[email protected]> Date: Fri Jun 3 00:46:48 2016 +0530 sc: Don't export in case of invalid range For example, copying an empty column or row range, and then pasting as unformatted text exports all the newline characters inspite of the fact that this is an invalid data range. The problem becomes worse when someone tries to copy an entire column which implies exporting MAXROW times newline characters. Change-Id: Ie0a09890e2d0cd5f44d89d520959248e65365ad7 (cherry picked from commit 432b27ec73940738bb0b4f9d3d749c70a2525700) (cherry picked from commit 14a27ac51d52c7741c8597a2603d2683572e5254) diff --git a/sc/source/ui/docshell/impex.cxx b/sc/source/ui/docshell/impex.cxx index 1f84bdc..5988bdb 100644 --- a/sc/source/ui/docshell/impex.cxx +++ b/sc/source/ui/docshell/impex.cxx @@ -1599,7 +1599,8 @@ bool ScImportExport::Doc2Text( SvStream& rStrm ) SCTAB nEndTab = aRange.aEnd.Tab(); if (!pDoc->GetClipParam().isMultiRange() && nStartTab == nEndTab) - pDoc->ShrinkToDataArea( nStartTab, nStartCol, nStartRow, nEndCol, nEndRow ); + if (!pDoc->ShrinkToDataArea( nStartTab, nStartCol, nStartRow, nEndCol, nEndRow )) + return false; OUString aCell; commit b845432185efa77a93b9654c65acf1a1cc5b85f7 Author: Andras Timar <[email protected]> Date: Mon Jun 13 00:10:20 2016 +0200 Revert "-Werror=missing-field-initializers." This reverts commit 9afccca15068e3796b30a5910f2abcd9457789ac. diff --git a/sw/source/uibase/uno/SwXDocumentSettings.cxx b/sw/source/uibase/uno/SwXDocumentSettings.cxx index f309399..1dad3e0 100644 --- a/sw/source/uibase/uno/SwXDocumentSettings.cxx +++ b/sw/source/uibase/uno/SwXDocumentSettings.cxx @@ -206,7 +206,7 @@ static MasterPropertySetInfo * lcl_createSettingsInfo() { OUString("ApplyParagraphMarkFormatToNumbering"), HANDLE_APPLY_PARAGRAPH_MARK_FORMAT_TO_NUMBERING, cppu::UnoType<bool>::get(), 0}, { OUString("PropLineSpacingShrinksFirstLine"), HANDLE_PROP_LINE_SPACING_SHRINKS_FIRST_LINE, cppu::UnoType<bool>::get(), 0}, { OUString("SubtractFlysAnchoredAtFlys"), HANDLE_SUBTRACT_FLYS, cppu::UnoType<bool>::get(), 0}, - { OUString("InBrowseMode"), HANDLE_BROWSE_MODE, cppu::UnoType<bool>::get(), 0, 0}, + { OUString("InBrowseMode"), HANDLE_BROWSE_MODE, cppu::UnoType<bool>::get(), 0}, /* * As OS said, we don't have a view when we need to set this, so I have to * find another solution before adding them to this property set - MTG _______________________________________________ Libreoffice-commits mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
