LibreOffice Gerrit News for core on 2015-03-07
Moin! * Open changes on master for project core changed in the last 25 hours: First time contributors doing great things! + Resolves tdf#80137 Paste array formula into range pastes as non-array for in https://gerrit.libreoffice.org/14770 from Henry Castro about module sc End of freshness + Percentages should also be translatable… in https://gerrit.libreoffice.org/14767 from Adolfo Jayme Barrientos about module svx + Rendering support for multiStop GradientFill (OOXML LINEAR) in https://gerrit.libreoffice.org/12056 from Vinaya Mandke about module UnoControls, chart2, drawinglayer, filter, include, offapi, oox, sc, sd, sfx2, svx, sw, toolkit, vbahelper, vcl, xmloff + tdf#89666: vcl: speed up HbLayoutEngine with cache in SwTxtFormatInfo in https://gerrit.libreoffice.org/14732 from Michael Stahl about module include, sw, vcl + embeddedobj: convert emboleobj.*.component to constructor syntax in https://gerrit.libreoffice.org/14687 from Chris Sherlock about module embeddedobj + sc: use constructor syntax in sc.component in https://gerrit.libreoffice.org/14750 from Chris Sherlock about module sc + svl: use constructor syntax in svl.component in https://gerrit.libreoffice.org/14705 from Chris Sherlock about module svl + sd: use constructor syntax for sdd.component in https://gerrit.libreoffice.org/14704 from Chris Sherlock about module sd + Convert ScDocument to constructor syntax, remove sc_component_getFactory( in https://gerrit.libreoffice.org/14751 from Chris Sherlock about module sc + scaddins: use constructor syntax for date.component in https://gerrit.libreoffice.org/14707 from Chris Sherlock about module scaddins + scaddins: use constructor syntax for pricing.component in https://gerrit.libreoffice.org/14706 from Chris Sherlock about module scaddins + avmedia: use constructor syntax for avmedia.component in https://gerrit.libreoffice.org/14709 from Chris Sherlock about module avmedia + animations: convert animcore.component to constructor usage in https://gerrit.libreoffice.org/14612 from Chris Sherlock about module animations + scaddins: use constructor syntax for analysis.component in https://gerrit.libreoffice.org/14708 from Chris Sherlock about module scaddins + canvas: use constructor syntax in canvas.component in https://gerrit.libreoffice.org/14756 from Chris Sherlock about module canvas + package: use constructor syntax in xstor.component in https://gerrit.libreoffice.org/14757 from Chris Sherlock about module package + xmlsecurity: use constructor syntax in xsec_xmlsec.component in https://gerrit.libreoffice.org/14758 from Chris Sherlock about module xmlsecurity + sc: use constructor syntax in scd.component in https://gerrit.libreoffice.org/14753 from Chris Sherlock about module sc + sc: use constructor syntax in scfilt.component in https://gerrit.libreoffice.org/14752 from Chris Sherlock about module sc + scripting: use constructor syntax in vbaevents.component in https://gerrit.libreoffice.org/14754 from Chris Sherlock about module scripting + sd: convert sd.component to constructor usage in https://gerrit.libreoffice.org/14688 from Chris Sherlock about module sd + sw: further components converted to constructor method in https://gerrit.libreoffice.org/14586 from Chris Sherlock about module sw + sd: use constructor syntax for rest of sd.component in https://gerrit.libreoffice.org/14689 from Chris Sherlock about module sd + Spare extra call stack in https://gerrit.libreoffice.org/14765 from Takeshi Abe about module starmath + loplugin:constantfunction: canvas in https://gerrit.libreoffice.org/14762 from Noel Grandin about module canvas, include + SfxItemHandle is only used in one place, so inline it in https://gerrit.libreoffice.org/14764 from Noel Grandin about module forms, include, svl + loplugin:constantfunction: editeng in https://gerrit.libreoffice.org/14763 from Noel Grandin about module editeng, include + loplugin:constantfunction: oox in https://gerrit.libreoffice.org/14761 from Noel Grandin about module include, oox + loplugin:constantfunction: svx in https://gerrit.libreoffice.org/14759 from Noel Grandin about module include, sc, svx + loplugin:constantfunction: linguistic in https://gerrit.libreoffice.org/14760 from Noel Grandin about module include, linguistic * Merged changes on master for project core changed in the last 25 hours: + convert error number to string in https://gerrit.libreoffice.org/14776 from LeMoyne Castle + tdf#89267: Reduce duplicate code in https://gerrit.libreoffice.org/14694 from Pranav Kant + tdf#89391 : Datasource URL in Database Properties window cannot be viewed in https://gerrit.libreoffice.org/14766 from Szymon Kłos + this drawAlphaBitmap variant is unused in https://gerrit.libreoffice.org/14755 from Caolán McNamara * Abandoned changes on master for project core changed in the last 25 hours: + Perft
[Libreoffice-commits] core.git: basic/source
basic/source/sbx/sbxstr.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 3b585737ff6bda7d28dd293465f5061ad5006f6e Author: LeMoyne Castle Date: Fri Mar 6 01:15:12 2015 -0700 convert error number to string BASIC error type was printing as "Error "+ odd char instead of "Error " + error number Change-Id: I7407833626d6117f932cc29c6dab1a8a64c50b5a Reviewed-on: https://gerrit.libreoffice.org/14776 Reviewed-by: Tor Lillqvist Tested-by: Tor Lillqvist diff --git a/basic/source/sbx/sbxstr.cxx b/basic/source/sbx/sbxstr.cxx index ded077a..bfd2b62 100644 --- a/basic/source/sbx/sbxstr.cxx +++ b/basic/source/sbx/sbxstr.cxx @@ -102,7 +102,7 @@ OUString ImpGetString( const SbxValues* p ) case SbxERROR: // Here the String "Error n" is generated aRes = SbxRes( STRING_ERRORMSG ); -aRes += OUString( p->nUShort ); break; +aRes += OUString::number(p->nUShort); break; case SbxDATE: ImpPutDate( &aTmp, p->nDouble ); break; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
Crash test update
New crashtest update available at http://dev-builds.libreoffice.org/crashtest/d9101e9416d9a285028ccb74895f6ba3964cce46/ exportCrashes.csv Description: Binary data importCrash.csv Description: Binary data validationErrors.csv Description: Binary data ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Interest in contributing to Libreoffice (GSOC 2015)
Hello My name is Amate Yolande and I am interested in contributing to the Libreoffice community for google summer of code 2015. I am proficient in c/c++ programming. I have successful compiled and built the Libreoffice source code and I am presently trying to find an Easy Hack to work on. I would like to work on the "Implement Xara X import filter" project since I have some experience with working on CAD geometry converters. I would like get some directives on how to get started with respect to this project. Thanks ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: Branch 'feature/tiled-editing' - 6 commits - sc/inc sc/source
sc/inc/docuno.hxx | 15 +-- sc/source/ui/inc/gridwin.hxx | 12 ++ sc/source/ui/inc/output.hxx|1 sc/source/ui/unoobj/docuno.cxx | 30 ++ sc/source/ui/view/gridwin.cxx | 20 sc/source/ui/view/gridwin4.cxx | 197 + sc/source/ui/view/output3.cxx |3 7 files changed, 156 insertions(+), 122 deletions(-) New commits: commit b256187042fbcba5d4a1047fc8dccf6693d4b823 Author: Jan Holesovsky Date: Sat Mar 7 00:48:03 2015 +0100 sc tiled mouse events: Proof-of-concept. One has to click & press enter to be able to type into the cell. The typing is visible only in the top left tile, but even in the other tiles, the text gets there - when you manage to invalidate everything, the text appears. Change-Id: I7c9c0a52949a514eb3de7a7fe64f11597377d39f diff --git a/sc/inc/docuno.hxx b/sc/inc/docuno.hxx index f277efc..ab7b6e9 100644 --- a/sc/inc/docuno.hxx +++ b/sc/inc/docuno.hxx @@ -368,7 +368,7 @@ public: virtual sal_Int32 SAL_CALL getFormulaCellNumberLimit() throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE; -// @see vcl::ITiledRenderable::paintTile(). +/// @see vcl::ITiledRenderable::paintTile(). virtual void paintTile( VirtualDevice& rDevice, int nOutputWidth, int nOutputHeight, @@ -377,21 +377,24 @@ public: long nTileWidth, long nTileHeight ) SAL_OVERRIDE; -// @see vcl::ITiledRenderable::getDocumentSize(). +/// @see vcl::ITiledRenderable::getDocumentSize(). virtual Size getDocumentSize() SAL_OVERRIDE; -// @see vcl::ITiledRenderable::setPart(). +/// @see vcl::ITiledRenderable::setPart(). virtual void setPart(int nPart) SAL_OVERRIDE; -// @see vcl::ITiledRenderable::getPart(). +/// @see vcl::ITiledRenderable::getPart(). virtual int getPart() SAL_OVERRIDE; -// @see vcl::ITiledRenderable::getParts(). +/// @see vcl::ITiledRenderable::getParts(). virtual int getParts() SAL_OVERRIDE; -// @see vcl::ITiledRenderable::registerCallback(). +/// @see vcl::ITiledRenderable::registerCallback(). virtual void registerCallback(LibreOfficeKitCallback pCallback, void* pData) SAL_OVERRIDE; +/// @see vcl::ITiledRenderable::postMouseEvent(). +virtual void postMouseEvent(int nType, int nX, int nY, int nCount) SAL_OVERRIDE; + /// @see vcl::ITiledRenderable::initializeForTiledRendering(). virtual void initializeForTiledRendering() SAL_OVERRIDE; }; diff --git a/sc/source/ui/inc/gridwin.hxx b/sc/source/ui/inc/gridwin.hxx index 7bc053d..56498ab 100644 --- a/sc/source/ui/inc/gridwin.hxx +++ b/sc/source/ui/inc/gridwin.hxx @@ -325,6 +325,12 @@ public: /// @see OutputDevice::LogicInvalidate(). void LogicInvalidate(const ::vcl::Region* pRegion) SAL_OVERRIDE; +/// Same as MouseButtonDown(), but coordinates are in logic unit. +void LogicMouseButtonDown(const MouseEvent& rMouseEvent); + +/// Same as MouseButtonUp(), but coordinates are in logic unit. +void LogicMouseButtonUp(const MouseEvent& rMouseEvent); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > CreateAccessible() SAL_OVERRIDE; voidFakeButtonUp(); diff --git a/sc/source/ui/unoobj/docuno.cxx b/sc/source/ui/unoobj/docuno.cxx index d8697d4..eb22350 100644 --- a/sc/source/ui/unoobj/docuno.cxx +++ b/sc/source/ui/unoobj/docuno.cxx @@ -27,6 +27,7 @@ #include #include +#include #include #include #include @@ -518,6 +519,35 @@ void ScModelObj::registerCallback(LibreOfficeKitCallback pCallback, void* pData) pDocShell->GetDocument().GetDrawLayer()->registerLibreOfficeKitCallback(pCallback, pData); } +void ScModelObj::postMouseEvent(int nType, int nX, int nY, int nCount) +{ +SolarMutexGuard aGuard; + +// There seems to be no clear way of getting the grid window for this +// particular document, hence we need to hope we get the right window. +ScViewData* pViewData = ScDocShell::GetViewData(); +ScGridWindow* pGridWindow = pViewData->GetActiveWin(); + +if (!pGridWindow) +return; + +// Calc operates in pixels... +MouseEvent aEvent(Point(nX / TWIPS_PER_PIXEL, nY / TWIPS_PER_PIXEL), nCount, MouseEventModifiers::SIMPLECLICK, MOUSE_LEFT); + +switch (nType) +{ +case LOK_MOUSEEVENT_MOUSEBUTTONDOWN: +pGridWindow->LogicMouseButtonDown(aEvent); +break; +case LOK_MOUSEEVENT_MOUSEBUTTONUP: +pGridWindow->LogicMouseButtonUp(aEvent); +break; +default: +assert(false); +break; +} +} + void ScModelObj::initializeForTiledRendering() { SolarMutexGuard aGuard; diff --git a/sc/source/ui/view/gridwin.cxx b/sc/source/ui/view/gridwin.cxx index b65c209..d980dfc 100644 --- a/sc/source/ui/view/grid
Re: Interested in Contributing to LibreOffice
Hi Tanmay! Did you look at Easy Hacks page? It's a good place to start: https://wiki.documentfoundation.org/Development/Easy_Hacks I think you will find something for yourself among "Interesting" tasks, requiring C++ skills. Regards, Łukasz Hryniuk On 06/03/15 14:40, Tanmay Sahay wrote: Hello, everyone! I am Tanmay Sahay, a Sophomore from IIIT Hyderabad. I've been programming in C++ for around 3 years, and I'm proficient in algorithmic programming. LibreOffice interests me. I've looked up the basic development workflow; this enabled me to successfully build my own development version of LibreOffice from the repository I cloned. It would be great if someone could direct me to the areas of development where my algorithmic programming can be put to use, as I'm keen on contributing! With regards, *Tanmay Sahay* *CSE, 2013-17* *IIIT Hyderabad* ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: 3 commits - formula/source include/formula sc/source
formula/source/core/api/token.cxx | 18 ++ include/formula/tokenarray.hxx|4 sc/source/core/tool/compiler.cxx | 28 3 files changed, 46 insertions(+), 4 deletions(-) New commits: commit 333f8a76341f5b4921e89012d133007503e49612 Author: Eike Rathke Date: Fri Mar 6 23:22:45 2015 +0100 first stab at handling table[] all range Change-Id: I608cf04cf4b0b991f4a45a868566faeae5be77c9 diff --git a/sc/source/core/tool/compiler.cxx b/sc/source/core/tool/compiler.cxx index 0ab8f9b..dce9171 100644 --- a/sc/source/core/tool/compiler.cxx +++ b/sc/source/core/tool/compiler.cxx @@ -3931,6 +3931,17 @@ ScTokenArray* ScCompiler::CompileString( const OUString& rFormula ) { static_cast(pArr)->MergeRangeReference( aPos); } +else if (eLastOp == ocDBArea && pNewToken->GetOpCode() == ocTableRefOpen) +{ +sal_uInt16 nIdx = pArr->GetLen() - 1; +const FormulaToken* pPrev = pArr->PeekPrev( nIdx); +if (pPrev && pPrev->GetOpCode() == ocDBArea) +{ +// pPrev may be dead hereafter. +static_cast(pArr)->ReplaceToken( 1, +new ScTableRefToken( pPrev->GetIndex(), ScTableRefToken::ALL)); +} +} eLastOp = maRawToken.GetOpCode(); if ( bAutoCorrect ) aCorrectedFormula += aCorrectedSymbol; @@ -4664,12 +4675,19 @@ bool ScCompiler::HandleTableRef() aRange.aEnd.SetTab(aRange.aStart.Tab()); ScTokenArray* pNew = new ScTokenArray(); ScTableRefToken::Item eItem = pTR->GetItem(); +bool bGotToken = false; if (eItem == ScTableRefToken::ALL) { ScComplexRefData aRefData; aRefData.InitFlags(); aRefData.SetRange(aRange, aPos); pNew->AddDoubleReference( aRefData ); +// Optional [] (or [#All]) may follow. +if ((bGotToken = GetToken()) && mpToken->GetOpCode() == ocTableRefOpen) +{ +if ((bGotToken = GetToken()) && mpToken->GetOpCode() == ocTableRefClose) +bGotToken = false; // get next token below +} } else { @@ -4678,7 +4696,7 @@ bool ScCompiler::HandleTableRef() } PushTokenArray( pNew, true ); pNew->Reset(); -return GetToken(); +return bGotToken ? true : GetToken(); } return true; } commit 40c9a46b78b8919aae82dd9b94774d63bb9cb4e6 Author: Eike Rathke Date: Fri Mar 6 22:39:53 2015 +0100 add FormulaTokenArray::ReplaceToken() Change-Id: I42c893677c1b8a35ee502a9ae438d4c0f19867d3 diff --git a/formula/source/core/api/token.cxx b/formula/source/core/api/token.cxx index 567c12c..117f276 100644 --- a/formula/source/core/api/token.cxx +++ b/formula/source/core/api/token.cxx @@ -849,6 +849,24 @@ FormulaToken* FormulaTokenArray::MergeArray( ) return NULL; } +FormulaToken* FormulaTokenArray::ReplaceToken( sal_uInt16 nOffset, FormulaToken* t ) +{ +if (nOffset < nLen) +{ +CheckToken(*t); +sal_uInt16 nPos = nLen - nOffset - 1; +t->IncRef(); +pCode[nPos]->DecRef(); +pCode[nPos] = t; +return t; +} +else +{ +t->Delete(); +return NULL; +} +} + FormulaToken* FormulaTokenArray::Add( FormulaToken* t ) { if( !pCode ) diff --git a/include/formula/tokenarray.hxx b/include/formula/tokenarray.hxx index 244a7b9..c70e6c1d 100644 --- a/include/formula/tokenarray.hxx +++ b/include/formula/tokenarray.hxx @@ -115,6 +115,10 @@ protected: /// Also used by the compiler. The token MUST had been allocated with new! FormulaToken* Add( FormulaToken* ); +/** Also used by the compiler. The token MUST had been allocated with new! +@param nOffset negative offset of token, 0==last, 1==previous, ... + */ +FormulaToken* ReplaceToken( sal_uInt16 nOffset, FormulaToken* ); inline voidSetCombinedBitsRecalcMode( ScRecalcMode nBits ) { nMode |= (nBits & ~RECALCMODE_EMASK); } inline ScRecalcModeGetCombinedBitsRecalcMode() const commit bc4293bde13001a5e959ff90c189111932c05b3b Author: Eike Rathke Date: Fri Mar 6 21:56:22 2015 +0100 clarify this visually Change-Id: I04c1a00903cc0c057fc436e391f93b1e05eed8a1 diff --git a/sc/source/core/tool/compiler.cxx b/sc/source/core/tool/compiler.cxx index 6469918..0ab8f9b 100644 --- a/sc/source/core/tool/compiler.cxx +++ b/sc/source/core/tool/compiler.cxx @@ -3924,11 +3924,13 @@ ScTokenArray* ScCompiler::CompileString( const OUString& rFormula ) FormulaToken* pNewToken = static_cast(pArr)->Add( maRawToken.CreateToken()); if (!pNewToken) { -SetError(errCodeOverflow); break; +SetError(errCodeOverflow); +break; } -
[Libreoffice-commits] core.git: sc/qa
sc/qa/unit/opencl-test.cxx |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) New commits: commit 8ea45048b83e685090484c959f642118cfebef6c Author: Tor Lillqvist Date: Fri Mar 6 23:09:59 2015 +0200 WaE: passing 'class rtl::OUString' by value, rather pass by reference Change-Id: Id5cea16da184b12b6a630dc7e9c0f7d199b1da49 diff --git a/sc/qa/unit/opencl-test.cxx b/sc/qa/unit/opencl-test.cxx index f6a6ae3..5c72a3d 100644 --- a/sc/qa/unit/opencl-test.cxx +++ b/sc/qa/unit/opencl-test.cxx @@ -535,11 +535,11 @@ private: // Test env variables and methods ScDocShellRef xDocSh; ScDocShellRef xDocShRes; -bool initTestEnv(const OUString fileName, sal_Int32 nFormat, +bool initTestEnv(const OUString& fileName, sal_Int32 nFormat, bool bReadWrite); }; -bool ScOpenCLTest::initTestEnv(const OUString fileName, sal_Int32 nFormat, +bool ScOpenCLTest::initTestEnv(const OUString& fileName, sal_Int32 nFormat, bool bReadWrite) { if(!detectOpenCLDevice()) ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sc/qa
sc/qa/unit/opencl-test.cxx | 2351 + 1 file changed, 683 insertions(+), 1668 deletions(-) New commits: commit 0ef455bdc33356dcf00e3a2f724b2a18e15de38f Author: Pranav Kant Date: Sun Mar 1 21:32:22 2015 +0530 tdf#89267: Reduce duplicate code Change-Id: Ib0c8801841e122be58f5a931c7413b08487e1f23 Reviewed-on: https://gerrit.libreoffice.org/14694 Reviewed-by: Tor Lillqvist Tested-by: Tor Lillqvist diff --git a/sc/qa/unit/opencl-test.cxx b/sc/qa/unit/opencl-test.cxx index 9f2fb4f..f6a6ae3 100644 --- a/sc/qa/unit/opencl-test.cxx +++ b/sc/qa/unit/opencl-test.cxx @@ -297,6 +297,7 @@ public: void testStatisticalFormulaStDevA1(); void testStatisticalFormulaStDevPA1(); void testFinancialMDurationFormula1(); + CPPUNIT_TEST_SUITE(ScOpenCLTest); CPPUNIT_TEST(testSharedFormulaXLS); CPPUNIT_TEST(testFinacialFormula); @@ -530,8 +531,30 @@ public: private: uno::Reference m_xCalcComponent; + +// Test env variables and methods +ScDocShellRef xDocSh; +ScDocShellRef xDocShRes; +bool initTestEnv(const OUString fileName, sal_Int32 nFormat, + bool bReadWrite); }; +bool ScOpenCLTest::initTestEnv(const OUString fileName, sal_Int32 nFormat, +bool bReadWrite) +{ +if(!detectOpenCLDevice()) +return false; + +xDocSh = loadDoc(fileName, nFormat, bReadWrite); +CPPUNIT_ASSERT_MESSAGE("Failed to load document.", xDocSh.Is()); +enableOpenCL(); + +xDocShRes = loadDoc(fileName, nFormat, bReadWrite); +CPPUNIT_ASSERT_MESSAGE("Failed to load document.", xDocShRes.Is()); + +return true; +} + bool ScOpenCLTest::load(const OUString &rFilter, const OUString &rURL, const OUString &rUserData, unsigned int nFilterFlags, unsigned int nClipboardID, unsigned int nFilterVersion) @@ -558,16 +581,12 @@ void ScOpenCLTest::enableOpenCL() void ScOpenCLTest::testCompilerHorizontal() { -if (!detectOpenCLDevice()) +if(!initTestEnv("opencl/compiler/horizontal.", ODS, false)) return; - -ScDocShellRef xDocSh = loadDoc("opencl/compiler/horizontal.", ODS); ScDocument& rDoc = xDocSh->GetDocument(); -enableOpenCL(); +ScDocument& rDocRes = xDocShRes->GetDocument(); rDoc.CalcAll(); -ScDocShellRef xDocShRes = loadDoc("opencl/compiler/horizontal.", ODS); -ScDocument& rDocRes = xDocShRes->GetDocument(); // Check the results of formula cells in the shared formula range. for (SCROW i = 1; i < 5; ++i) { @@ -581,21 +600,16 @@ void ScOpenCLTest::testCompilerHorizontal() fExcel = rDocRes.GetValue(ScAddress(14, i, 0)); CPPUNIT_ASSERT_DOUBLES_EQUAL(fExcel, fLibre, fabs(0.0001*fExcel)); } -xDocSh->DoClose(); -xDocShRes->DoClose(); } + void ScOpenCLTest::testCompilerNested() { -if (!detectOpenCLDevice()) +if(!initTestEnv("opencl/compiler/nested.", ODS, false)) return; - -ScDocShellRef xDocSh = loadDoc("opencl/compiler/nested.", ODS); ScDocument& rDoc = xDocSh->GetDocument(); -enableOpenCL(); +ScDocument& rDocRes = xDocShRes->GetDocument(); rDoc.CalcAll(); -ScDocShellRef xDocShRes = loadDoc("opencl/compiler/nested.", ODS); -ScDocument& rDocRes = xDocShRes->GetDocument(); // Check the results of formula cells in the shared formula range. for (SCROW i = 1; i < 5; ++i) { @@ -603,24 +617,16 @@ void ScOpenCLTest::testCompilerNested() double fExcel = rDocRes.GetValue(ScAddress(2, i, 0)); CPPUNIT_ASSERT_DOUBLES_EQUAL(fExcel, fLibre, fabs(0.0001*fExcel)); } -xDocSh->DoClose(); -xDocShRes->DoClose(); } void ScOpenCLTest::testCompilerString() { -if (!detectOpenCLDevice()) +if(!initTestEnv("opencl/compiler/string.", ODS, false)) return; - -ScDocShellRef xDocSh = loadDoc("opencl/compiler/string.", ODS); -CPPUNIT_ASSERT_MESSAGE("Failed to load document.", xDocSh.Is()); ScDocument& rDoc = xDocSh->GetDocument(); -enableOpenCL(); +ScDocument& rDocRes = xDocShRes->GetDocument(); rDoc.CalcAll(); -ScDocShellRef xDocShRes = loadDoc("opencl/compiler/string.", ODS); -CPPUNIT_ASSERT_MESSAGE("Failed to load document.", xDocShRes.Is()); -ScDocument& rDocRes = xDocShRes->GetDocument(); // Check the results of formula cells in the shared formula range. for (SCROW i = 1; i < 5; ++i) { @@ -632,24 +638,16 @@ void ScOpenCLTest::testCompilerString() fExcel = rDocRes.GetValue(ScAddress(3, i, 0)); CPPUNIT_ASSERT_DOUBLES_EQUAL(fExcel, fLibre, fabs(0.0001*fExcel)); } -xDocSh->DoClose(); -xDocShRes->DoClose(); } void ScOpenCLTest::testCompilerInEq() { -if (!detectOpenCLDevice()) +if(!initTestEnv("opencl/compiler/ineq.", ODS, false)) return; - -ScDocShellRef xDocSh = loadDoc("opencl/compiler/ineq.", ODS); -CPPUNIT_ASSERT_MESSAGE("Failed to load document.", xDocSh.Is()); ScDocument& rDoc = xDocSh
[Libreoffice-commits] core.git: vcl/source
vcl/source/outdev/map.cxx |8 ++-- 1 file changed, 6 insertions(+), 2 deletions(-) New commits: commit be5a6706b6a34a57774714929b9b7fe06f69173e Author: Stephan Bergmann Date: Fri Mar 6 21:29:24 2015 +0100 Handle degenerate case of nMapNum == 0 ...appears to be occasionally necessary, probably since d8e7bc042bd0912a66c231b101cecda0f838a80f "Remove hack of replacing 0 with 1/LONG_MAX" Change-Id: I1eb7277bfdc9722c761bd03678cd770a3763de1f diff --git a/vcl/source/outdev/map.cxx b/vcl/source/outdev/map.cxx index 5a43c07..b359e50 100644 --- a/vcl/source/outdev/map.cxx +++ b/vcl/source/outdev/map.cxx @@ -374,9 +374,9 @@ static long ImplLogicToPixel( long n, long nDPI, long nMapNum, long nMapDenom, } else #else -assert(nMapNum > 0); +assert(nMapNum >= 0); assert(nDPI > 0); -assert(std::abs(n) < std::numeric_limits::max() / nMapNum / nDPI); //detect overflows +assert(nMapNum == 0 || std::abs(n) < std::numeric_limits::max() / nMapNum / nDPI); //detect overflows #endif { sal_Int64 n64 = n; @@ -399,6 +399,10 @@ static long ImplPixelToLogic( long n, long nDPI, long nMapNum, long nMapDenom, { // To "use" it... (void) nThres; + if (nMapNum == 0) + { + return 0; + } #if (SAL_TYPES_SIZEOFLONG < 8) if( (+n < nThres) && (-n < nThres) ) n = (2 * n * nMapDenom) / (nDPI * nMapNum); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sc/inc
sc/inc/refreshtimer.hxx |6 -- 1 file changed, 4 insertions(+), 2 deletions(-) New commits: commit 9b4abcd1c45a646a1ac9120fe1c489ba6bb44e95 Author: Jan-Marek Glogowski Date: Fri Mar 6 19:11:31 2015 +0100 Little build fix to Windows ScRefreshTimer For whatever reason "objdump.exe -t xicontent.o" on Windows now lists Start@ScRefreshTimer@@EAEXXZ (probably because it's now a virtual function). Also the reference to SetRefreshDelay vanished after dropping the virtual keyword from SetRefreshDelay. The linux object file doesn't even refer to a ScRefreshTimer function. Start() can stay private, as the timer is handled via SetRefreshDelay. Probably Stop() should also become private in this case. This also reverts 2c0189a8a3aeb3668bf6de1ea1958ba475b80a38 Change-Id: I2a6900cd6bd76c4fec9f30131152b60a5bd2c2e7 diff --git a/sc/inc/refreshtimer.hxx b/sc/inc/refreshtimer.hxx index 20c57db..a87686b 100644 --- a/sc/inc/refreshtimer.hxx +++ b/sc/inc/refreshtimer.hxx @@ -55,9 +55,11 @@ public: sal_uLong GetRefreshDelay() const; void StopRefreshTimer(); -SC_DLLPUBLIC virtual void SetRefreshDelay( sal_uLong nSeconds ); +void SetRefreshDelay( sal_uLong nSeconds ); SC_DLLPUBLIC virtual void Invoke() SAL_OVERRIDE; -virtual void Start() SAL_OVERRIDE; + +private: +SC_DLLPUBLIC virtual void Start() SAL_OVERRIDE; }; #endif // INCLUDED_SC_INC_REFRESHTIMER_HXX ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: officecfg/registry sc/source
officecfg/registry/schema/org/openoffice/Office/Calc.xcs |2 +- sc/source/core/tool/calcconfig.cxx |1 + 2 files changed, 2 insertions(+), 1 deletion(-) New commits: commit acaafc03e623ac25d4408605f34d50618926c5d0 Author: Tor Lillqvist Date: Fri Mar 6 18:02:56 2015 +0200 Add NORMSDIST to the default OpenCL use opcode subset Change-Id: I7ee56f06e8e50180e31c01253c9100c11b485c0d diff --git a/officecfg/registry/schema/org/openoffice/Office/Calc.xcs b/officecfg/registry/schema/org/openoffice/Office/Calc.xcs index 679e868..e680389 100644 --- a/officecfg/registry/schema/org/openoffice/Office/Calc.xcs +++ b/officecfg/registry/schema/org/openoffice/Office/Calc.xcs @@ -1373,7 +1373,7 @@ true, and a formula contains only these operators and functions, it might be calculated using OpenCL. - +;-;*;/;RAND;SIN;COS;TAN;ATAN;EXP;LN;SQRT;NORMSINV;ROUND;POWER;SUMPRODUCT;MIN;MAX;SUM;PRODUCT;AVERAGE;COUNT;VAR;NORMDIST;CORREL;COVAR;PEARSON;SLOPE;SUMIFS + +;-;*;/;RAND;SIN;COS;TAN;ATAN;EXP;LN;SQRT;NORMSDIST;NORMSINV;ROUND;POWER;SUMPRODUCT;MIN;MAX;SUM;PRODUCT;AVERAGE;COUNT;VAR;NORMDIST;CORREL;COVAR;PEARSON;SLOPE;SUMIFS diff --git a/sc/source/core/tool/calcconfig.cxx b/sc/source/core/tool/calcconfig.cxx index 7a108f5..6fd4345 100644 --- a/sc/source/core/tool/calcconfig.cxx +++ b/sc/source/core/tool/calcconfig.cxx @@ -53,6 +53,7 @@ void ScCalcConfig::setOpenCLConfigToDefault() maOpenCLSubsetOpCodes.insert(ocExp); maOpenCLSubsetOpCodes.insert(ocLn); maOpenCLSubsetOpCodes.insert(ocSqrt); +maOpenCLSubsetOpCodes.insert(ocStdNormDist); maOpenCLSubsetOpCodes.insert(ocSNormInv); maOpenCLSubsetOpCodes.insert(ocRound); maOpenCLSubsetOpCodes.insert(ocPower); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'feature/tiled-editing' - 2 commits - include/svx svx/inc svx/source
include/svx/sdr/overlay/overlaymanager.hxx|8 ++-- include/svx/sdr/overlay/overlayobjectlist.hxx |1 + svx/inc/sdr/overlay/overlaymanagerbuffered.hxx|2 ++ svx/source/sdr/overlay/overlaymanager.cxx |7 --- svx/source/sdr/overlay/overlaymanagerbuffered.cxx |5 - svx/source/sdr/overlay/overlayobjectlist.cxx |8 +++- svx/source/svdraw/sdrpaintwindow.cxx |4 ++-- 7 files changed, 26 insertions(+), 9 deletions(-) New commits: commit e0d9fe71fb6fbd1bc78b99d91201fd12ecd5b56c Author: Miklos Vajna Date: Fri Mar 6 18:23:58 2015 +0100 sdr::overlay::OverlayObjectList: when tiled rendering, don't work with pixels Change-Id: Iaf7c31db65ecc4945f9d19e9031632443fa3823f diff --git a/include/svx/sdr/overlay/overlayobjectlist.hxx b/include/svx/sdr/overlay/overlayobjectlist.hxx index a3bda78..57f6860 100644 --- a/include/svx/sdr/overlay/overlayobjectlist.hxx +++ b/include/svx/sdr/overlay/overlayobjectlist.hxx @@ -27,6 +27,7 @@ #define DEFAULT_VALUE_FOR_HITTEST_PIXEL (2L) +#define DEFAULT_VALUE_FOR_HITTEST_TWIP (30L) diff --git a/svx/source/sdr/overlay/overlayobjectlist.cxx b/svx/source/sdr/overlay/overlayobjectlist.cxx index 5b949c3..16c9264 100644 --- a/svx/source/sdr/overlay/overlayobjectlist.cxx +++ b/svx/source/sdr/overlay/overlayobjectlist.cxx @@ -19,6 +19,7 @@ #include #include +#include #include #include #include @@ -72,8 +73,13 @@ namespace sdr { if(0.0 == fLogicTolerance) { -const Size aSizeLogic(pManager->getOutputDevice().PixelToLogic( +Size aSizeLogic(pManager->getOutputDevice().PixelToLogic( Size(DEFAULT_VALUE_FOR_HITTEST_PIXEL, DEFAULT_VALUE_FOR_HITTEST_PIXEL))); + +// When tiled rendering, we always work in twips, use the non-pixel default. +if (pManager->getModel()->isTiledRendering()) +aSizeLogic = Size(DEFAULT_VALUE_FOR_HITTEST_TWIP, DEFAULT_VALUE_FOR_HITTEST_TWIP); + fLogicTolerance = aSizeLogic.Width(); } commit 6e0ed503c5e2b372e91b136a0b2349387faca3ef Author: Miklos Vajna Date: Fri Mar 6 17:36:16 2015 +0100 Add sdr::overlay::OverlayManager::getModel() Can't access the SdrModel from sdr::overlay::OverlayObjectList otherwise. Change-Id: I0530985fb79659bd9de95d944b06edfb883f4403 diff --git a/include/svx/sdr/overlay/overlaymanager.hxx b/include/svx/sdr/overlay/overlaymanager.hxx index 24e77e8..ef9fa5b 100644 --- a/include/svx/sdr/overlay/overlaymanager.hxx +++ b/include/svx/sdr/overlay/overlaymanager.hxx @@ -36,6 +36,7 @@ // predeclarations class OutputDevice; +class SdrModel; namespace vcl { class Region; } namespace sdr { namespace overlay { @@ -63,6 +64,7 @@ namespace sdr protected: // the OutputDevice to work on, set on construction and not to be changed OutputDevice& rmOutputDevice; +const SdrModel* mpModel; // the vector of registered OverlayObjects OverlayObjectVector maOverlayObjects; @@ -92,11 +94,11 @@ namespace sdr // ViewTransformation and evtl. correct mfDiscreteOne double getDiscreteOne() const; -OverlayManager(OutputDevice& rOutputDevice); +OverlayManager(OutputDevice& rOutputDevice, const SdrModel* pModel); virtual ~OverlayManager(); public: -static rtl::Reference create(OutputDevice& rOutputDevice); +static rtl::Reference create(OutputDevice& rOutputDevice, const SdrModel* pModel); // access to current ViewInformation2D; this call checks and evtl. updates ViewInformation2D const drawinglayer::geometry::ViewInformation2D getCurrentViewInformation2D() const; @@ -115,6 +117,8 @@ namespace sdr // get the OutputDevice OutputDevice& getOutputDevice() const { return rmOutputDevice; } +// Get the draw model. +const SdrModel* getModel() const { return mpModel; } // add and remove OverlayObjects void add(OverlayObject& rOverlayObject); diff --git a/svx/inc/sdr/overlay/overlaymanagerbuffered.hxx b/svx/inc/sdr/overlay/overlaymanagerbuffered.hxx index 7379597..95ad3d2 100644 --- a/svx/inc/sdr/overlay/overlaymanagerbuffered.hxx +++ b/svx/inc/sdr/overlay/overlaymanagerbuffered.hxx @@ -63,11 +63,13 @@ namespace sdr OverlayManagerBuffered( OutputDevice& rOutputDevice, +const SdrModel* pModel, bool bRefreshWithPreRendering = false); virtual ~OverlayManagerBuffered(); public: static rtl::Reference cre
Page breaks in Web Layout
In Web Layout one shouldn't expect _*any*_ page breaks whatsoever, as by definition it should not have a concept of pages. However, Writer sometimes (and not so consistently) generates pages. In some documents Writer generates dozens of pages in Web Layout, but "Update All" reduces them to a few pages only. During editing, when layout formatting is triggered again, the pages change (both where they are split and their number). For comparison, the same document when opened in MS Word one immediately notices two differences (well, three). First, there is exactly 1 page in web view (the equivalent to Web Layout) and no other. Second, the table of contents show the page numbers as they would appear in the Print Layout (great feature, imho,) unlike Writer which shows the page numbers in the Web Layout (which is next to useless). (The third is simply how fast formatting is in Word's web view, which is reasonable as there is hardly any pagination necessary beyond line-break calculation). I've tried tracing why and how Writer creates these phantom pages in Web Layout but my search doesn't seem to be productive so far. I learned that resizing the window can cause _more_ pages to be generated! In fact, a document that has no extra pages in Web Layout can be made to have multiple pages by simply making its window smaller and smaller (it seems to be due to the relationship between the font-size, page zoom, and the window dimensions). I did notice that recent commits (post new year) have improved the situation a little (fewer pages are now generated for the same documents than using 4.4 or an older master build). **Does anyone know what's going on? Has anyone tried to fix this? Can anyone help me if there are no active efforts towards the same end?** ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: Make.exe for Cygwin
I have merged gnu-make-lo with upstream 4.1 and have binaries with the following flavors: 64- and 32-bit Upstream 4.1 + my low-res stat workaround. 64- and 32-bit Upstream 4.1 + my low-res stat workaround + LO patches (excluding depcache). Didn't get a chance to do performance runs, but the binaries do work and build LO fine (I only tried the 64-bit versions). Let me know how you'd like me to share them for test runs before we decide on which to settle. If LO patches do not yield significant benefit then we can/should discard them. On Wed, Feb 25, 2015 at 8:18 AM, Michael Stahl wrote: > On 25.02.2015 13:32, Ashod Nakashian wrote: >> On Wed, Feb 25, 2015 at 3:26 AM, Matúš Kukan wrote: >>> >>> Nice :-), could we perhaps upload 64bit version to >>> http://dev-www.libreoffice.org/bin/cygwin/ too? >>> >> >> Michael has mentioned (above) that the 4.0 is unstable. > > actually only 4.0 build for Win32 was unstable for me, the Cygwin 4.0 > build didn't crash. > >> Please see our exchange, we do seem to be in agreement to move away >> from lo fork of make and test a more recent (4.1) upstream build. >> I'm currently working on making a test binary (32 and 64 bits) >> available for internal testing. > > for a Win32 build there is probably no benefit and all downside to > 64-bit since make has a huge graph with lots of pointers so it's just > slower and eats more memory. > >>> I am confused, do people build make themselves or don't use 64bit cygwin. >> >> I'd hope anyone attempting to build LO will be savvy enough to use >> 64-bit cygwin on a 64-bit machine (for performance reasons). >> I know I do, and the make binary on dev-www.libreoffice.org, which is >> 32-bits, works perfectly fine (so it's not accurate that it won't run >> on a 64-bit cygwin, because it's not a cygwin binary, rather it's a >> native windows binary). > > that is true for the Win32 make. the (only) benefit that a 64-bit > Cygwin make binary has is that those who want to build 4.3 or earlier > releases (which cannot be built with Win32 make) *and* have 64-bit > Cygwin installed don't have to build it from source. > > that is certainly nice to have, but not critical. > > > ___ > LibreOffice mailing list > LibreOffice@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/libreoffice ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: chart2/source dbaccess/source desktop/source forms/source include/vbahelper sc/inc sc/source vbahelper/source
chart2/source/controller/chartapiwrapper/DiagramWrapper.cxx |4 chart2/source/controller/main/ChartController_Position.cxx | 26 +-- chart2/source/controller/main/CommandDispatchContainer.cxx |6 chart2/source/controller/main/CommandDispatchContainer.hxx |2 chart2/source/view/main/DummyXShape.cxx |4 chart2/source/view/main/DummyXShape.hxx |2 dbaccess/source/core/dataaccess/documentdefinition.cxx |4 dbaccess/source/core/dataaccess/documentdefinition.hxx |2 desktop/source/deployment/gui/dp_gui_dialog2.cxx| 28 +-- desktop/source/deployment/gui/dp_gui_extensioncmdqueue.cxx |2 desktop/source/deployment/gui/dp_gui_extlistbox.cxx | 92 ++-- desktop/source/deployment/gui/dp_gui_extlistbox.hxx |6 forms/source/xforms/binding.cxx |6 include/vbahelper/vbashape.hxx |2 include/vbahelper/vbashapes.hxx |2 sc/inc/document.hxx |2 sc/source/core/data/documen9.cxx|4 sc/source/core/data/formulacell.cxx | 12 - sc/source/filter/xml/XMLChangeTrackingImportHelper.hxx |4 sc/source/filter/xml/XMLExportIterator.cxx |8 - sc/source/filter/xml/XMLExportIterator.hxx |2 sc/source/filter/xml/XMLStylesExportHelper.cxx |8 - sc/source/filter/xml/XMLStylesExportHelper.hxx |2 sc/source/filter/xml/xmldrani.hxx |4 sc/source/filter/xml/xmlexprt.cxx |4 sc/source/filter/xml/xmlexprt.hxx |2 sc/source/filter/xml/xmlimprt.cxx |4 sc/source/filter/xml/xmlimprt.hxx |2 vbahelper/source/vbahelper/vbaapplicationbase.cxx |2 vbahelper/source/vbahelper/vbacolorformat.cxx |2 vbahelper/source/vbahelper/vbacolorformat.hxx |2 vbahelper/source/vbahelper/vbacommandbar.cxx|8 - vbahelper/source/vbahelper/vbacommandbar.hxx|6 vbahelper/source/vbahelper/vbalineformat.cxx|2 vbahelper/source/vbahelper/vbalineformat.hxx|2 vbahelper/source/vbahelper/vbashape.cxx |2 vbahelper/source/vbahelper/vbashapes.cxx|2 37 files changed, 137 insertions(+), 137 deletions(-) New commits: commit 567f51192483059ec57c16a6045141746d4b01f9 Author: Caolán McNamara Date: Fri Mar 6 15:49:35 2015 + V801: Decreased performance Change-Id: I97c7977fdfea57b5d1c45ce0c5902b74cc719db9 diff --git a/chart2/source/controller/chartapiwrapper/DiagramWrapper.cxx b/chart2/source/controller/chartapiwrapper/DiagramWrapper.cxx index 2962053..c0c7c7f 100644 --- a/chart2/source/controller/chartapiwrapper/DiagramWrapper.cxx +++ b/chart2/source/controller/chartapiwrapper/DiagramWrapper.cxx @@ -486,10 +486,10 @@ struct StaticDiagramWrapperPropertyArray : public rtl::StaticAggregate< Sequence { }; -bool lcl_isXYChart( const Reference< chart2::XDiagram > xDiagram ) +bool lcl_isXYChart( const Reference< chart2::XDiagram >& rDiagram ) { bool bRet = false; -Reference< chart2::XChartType > xChartType( ::chart::DiagramHelper::getChartTypeByIndex( xDiagram, 0 ) ); +Reference< chart2::XChartType > xChartType( ::chart::DiagramHelper::getChartTypeByIndex( rDiagram, 0 ) ); if( xChartType.is() ) { OUString aChartType( xChartType->getChartType() ); diff --git a/chart2/source/controller/main/ChartController_Position.cxx b/chart2/source/controller/main/ChartController_Position.cxx index 4a5884a4..298f2d6 100644 --- a/chart2/source/controller/main/ChartController_Position.cxx +++ b/chart2/source/controller/main/ChartController_Position.cxx @@ -47,7 +47,7 @@ namespace chart using namespace ::com::sun::star; using namespace ::com::sun::star::chart2; -void lcl_getPositionAndSizeFromItemSet( const SfxItemSet& rItemSet, awt::Rectangle& rPosAndSize, const awt::Size aOriginalSize ) +void lcl_getPositionAndSizeFromItemSet( const SfxItemSet& rItemSet, awt::Rectangle& rPosAndSize, const awt::Size& rOriginalSize ) { long nPosX(0); long nPosY(0); @@ -75,32 +75,32 @@ void lcl_getPositionAndSizeFromItemSet( const SfxItemSet& rItemSet, awt::Rectang case RP_LT: break; case RP_MT: -nPosX += ( aOriginalSize.Width - nSizX ) / 2; +nPosX += ( rOriginalSize.Width - nSizX ) / 2; break; case RP_RT: -nPosX += aOriginalSize.Width - nSizX; +nPosX += rOriginalSize.Width - nSizX; break; case RP_LM: -nPosY += ( aOriginalSize.Height - nSizY ) / 2; +
[Libreoffice-commits] core.git: vcl/workben
vcl/workben/vcldemo.cxx | 30 ++ 1 file changed, 26 insertions(+), 4 deletions(-) New commits: commit ef6f2490a697e7c23fea40c567f751db05f1bbbf Author: Michael Meeks Date: Fri Mar 6 16:50:09 2015 + vcldemo: add a tooltip to debug rendering issue. Change-Id: Ic7c02736505969c3d74acc59b80794b3be62bf6b diff --git a/vcl/workben/vcldemo.cxx b/vcl/workben/vcldemo.cxx index 70e4ac8..435e4e8 100644 --- a/vcl/workben/vcldemo.cxx +++ b/vcl/workben/vcldemo.cxx @@ -28,10 +28,12 @@ #include #include #include +#include #include #include #include #include +#include #include #include #include @@ -1434,15 +1436,18 @@ public: class DemoWidgets : public WorkWindow { -VclBox *mpBox; +VclBox *mpBox; +ToolBox*mpToolbox; +PushButton *mpButton; public: DemoWidgets() : -WorkWindow(NULL, WB_STDWORK) +WorkWindow(NULL, WB_STDWORK), +mpBox(new VclVBox(this, false, 3)), +mpToolbox(new ToolBox(mpBox)), +mpButton(new PushButton(mpBox)) { SetText("VCL widget demo"); -mpBox = new VclVBox(this, false, 3); - Wallpaper aWallpaper(BitmapEx("sfx2/res/startcenter-logo.png")); aWallpaper.SetStyle(WALLPAPER_BOTTOMRIGHT); aWallpaper.SetColor(COL_RED); @@ -1450,10 +1455,27 @@ public: mpBox->SetBackground(aWallpaper); mpBox->Show(); +Help::EnableQuickHelp(); +Help::EnableBalloonHelp(); +Help::EnableExtHelp(); +mpToolbox->SetHelpText("Help text"); +mpToolbox->InsertItem(0, "Toolbar item"); +mpToolbox->SetQuickHelpText(0, "This is a tooltip popup"); +mpToolbox->SetHelpText(0, "This is a longer help text popup"); +mpToolbox->InsertSeparator(); +mpToolbox->Show(); + +mpButton->SetText("Click me; go on"); +mpToolbox->SetQuickHelpText("button help text"); +mpButton->Show(); + Show(); } virtual ~DemoWidgets() { +delete mpButton; +delete mpToolbox; +delete mpBox; } virtual void Paint(const Rectangle&) SAL_OVERRIDE { ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'feature/priorities' - vcl/workben
vcl/workben/vcldemo.cxx | 30 ++ 1 file changed, 26 insertions(+), 4 deletions(-) New commits: commit 15b390e8255d07a5a40fe9de0f71d97a66ab54ff Author: Michael Meeks Date: Fri Mar 6 16:50:09 2015 + vcldemo: add a tooltip to debug rendering issue. Change-Id: Ic7c02736505969c3d74acc59b80794b3be62bf6b diff --git a/vcl/workben/vcldemo.cxx b/vcl/workben/vcldemo.cxx index f02ac03..f1b210e 100644 --- a/vcl/workben/vcldemo.cxx +++ b/vcl/workben/vcldemo.cxx @@ -28,10 +28,12 @@ #include #include #include +#include #include #include #include #include +#include #include #include #include @@ -1434,15 +1436,18 @@ public: class DemoWidgets : public WorkWindow { -VclBox *mpBox; +VclBox *mpBox; +ToolBox*mpToolbox; +PushButton *mpButton; public: DemoWidgets() : -WorkWindow(NULL, WB_STDWORK) +WorkWindow(NULL, WB_STDWORK), +mpBox(new VclVBox(this, false, 3)), +mpToolbox(new ToolBox(mpBox)), +mpButton(new PushButton(mpBox)) { SetText("VCL widget demo"); -mpBox = new VclVBox(this, false, 3); - Wallpaper aWallpaper(BitmapEx("sfx2/res/startcenter-logo.png")); aWallpaper.SetStyle(WALLPAPER_BOTTOMRIGHT); aWallpaper.SetColor(COL_RED); @@ -1450,10 +1455,27 @@ public: mpBox->SetBackground(aWallpaper); mpBox->Show(); +Help::EnableQuickHelp(); +Help::EnableBalloonHelp(); +Help::EnableExtHelp(); +mpToolbox->SetHelpText("Help text"); +mpToolbox->InsertItem(0, "Toolbar item"); +mpToolbox->SetQuickHelpText(0, "This is a tooltip popup"); +mpToolbox->SetHelpText(0, "This is a longer help text popup"); +mpToolbox->InsertSeparator(); +mpToolbox->Show(); + +mpButton->SetText("Click me; go on"); +mpToolbox->SetQuickHelpText("button help text"); +mpButton->Show(); + Show(); } virtual ~DemoWidgets() { +delete mpButton; +delete mpToolbox; +delete mpBox; } virtual void Paint(const Rectangle&) SAL_OVERRIDE { ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'feature/priorities' - 0 commits -
Rebased ref, commits from common ancestor: ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
Re: Calc: LO 4.4.1.2 print and sort problems
> On March 6, 2015 at 10:12 AM Anthonys Lists wrote: > > > I probably ought to file a bug/enhancement report, but if anyone's > interested they can investigate. > > First the weirdo/bug. I've got an old spreadsheet from 3.5/3.4 days. It > has six sheets in it. On three sheets, clicking print preview or print > gave you a blank sheet, despite data on the sheet. On the other three, > things worked fine. Copying the data to a new sheet fixed the problem, > but it was weird hitting it ... Go to Format - Print Ranges - Edit and see if the print area is set to '- none -'. If so, set that to '- entire sheet -'. OOo in the old days set this to - none - by default, and did something incredibly weird to ignore this under certain use cases (which in turn caused other weird behaviors that users reported as bugs). We have changed the default to - entire sheet - in order to remove the weirdness which IMO made no sense at all. > And the enhancement - sort seems to always guess wrong about a header > row. That makes sorting a real pain, because the dialog comes up on the > sort criteria tab. You then have to switch to the options tab, set/reset > the "range contains column labels", and go back to sort criteria. NOT > user friendly. Yup, I agree, this is not user-friendly. And this is strictly a UX issue, so hopefully someone (or some people) who have been working on this sort of UI polish can jump in and come up with a way to improve it. What the code does is incredibly simple, so as long as we have a good proposal for alternative behavior we should be able to change this fairly easily. And I personally have no objection for changing this. Best, Kohei ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: sc/inc
sc/inc/refreshtimer.hxx |4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) New commits: commit 2c0189a8a3aeb3668bf6de1ea1958ba475b80a38 Author: Tobias Madl Date: Fri Mar 6 16:55:17 2015 +0100 Autotimer: added function to public Change-Id: I6522e7a2bb895973d9d8cf1b7cfbad2f2abc62a2 diff --git a/sc/inc/refreshtimer.hxx b/sc/inc/refreshtimer.hxx index 29a0028e..20c57db 100644 --- a/sc/inc/refreshtimer.hxx +++ b/sc/inc/refreshtimer.hxx @@ -57,9 +57,7 @@ public: SC_DLLPUBLIC virtual void SetRefreshDelay( sal_uLong nSeconds ); SC_DLLPUBLIC virtual void Invoke() SAL_OVERRIDE; - -private: -void Start(); +virtual void Start() SAL_OVERRIDE; }; #endif // INCLUDED_SC_INC_REFRESHTIMER_HXX ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sc/source
sc/source/core/opencl/op_statistical.cxx |5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) New commits: commit 3da65dc8982167517f19e80a288b049118bc3d23 Author: Tor Lillqvist Date: Fri Mar 6 17:35:09 2015 +0200 Return #VALUE! instead of NaN in the OpenCL NORMSINV() Change-Id: I5bf4d5bb84cc85e631b27741a6fc171ec99eead4 diff --git a/sc/source/core/opencl/op_statistical.cxx b/sc/source/core/opencl/op_statistical.cxx index f6f346f..6e38f84 100644 --- a/sc/source/core/opencl/op_statistical.cxx +++ b/sc/source/core/opencl/op_statistical.cxx @@ -4765,8 +4765,9 @@ void OpNormsinv:: GenSlidingWindowFunction ss <<"}\n"; ss << "z = q < 0.0 ? (-1)*z : z;\n"; ss <<"}\n"; -ss <<"double tmp = z;\n"; -ss <<"return tmp;\n"; +ss <<"if (isnan(z))\n"; +ss <<"return CreateDoubleError(errNoValue);\n"; +ss <<"return z;\n"; ss <<"}\n"; } void OpMedian::GenSlidingWindowFunction( ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: 2 commits - sw/uiconfig vcl/unx
sw/uiconfig/swriter/ui/wordcount.ui | 37 -- vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx |7 2 files changed, 41 insertions(+), 3 deletions(-) New commits: commit 2a0b6705724c4ea65b56eb0f45bccfa253d9fdc2 Author: Caolán McNamara Date: Fri Mar 6 15:24:08 2015 + clip nwf rendering Change-Id: Ib42304e9ceb6b49e2dd8ed92f2a86409921e9ef6 diff --git a/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx b/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx index 8e518d6..f294b80 100644 --- a/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx +++ b/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx @@ -910,6 +910,7 @@ bool GtkSalGraphics::drawNativeControl( ControlType nType, ControlPart nPart, co } cairo_t *cr = getCairoContext(); +clipRegion(cr); cairo_translate(cr, rControlRegion.Left(), rControlRegion.Top()); gtk_style_context_save(context); @@ -956,6 +957,7 @@ bool GtkSalGraphics::drawNativeControl( ControlType nType, ControlPart nPart, co break; } +cairo_surface_flush(cairo_get_target(cr)); cairo_destroy(cr); // unref mpFrame->damaged(basegfx::B2IBox(rControlRegion.Left(), rControlRegion.Top(), rControlRegion.Right(), rControlRegion.Bottom())); commit 59619dbe971852d5cd35dcc3f78eda9bebeb99aa Author: Caolán McNamara Date: Fri Mar 6 09:08:18 2015 + gdk_window_move_region is not helpful looking into gtk it doesn't move anything, it just exposes the moved from and moved to areas to force them to be redrawn, its not in practice an optimization Change-Id: I38ea91d2463094bab50c436302022849986a3b0c diff --git a/sw/uiconfig/swriter/ui/wordcount.ui b/sw/uiconfig/swriter/ui/wordcount.ui index 588ba0b..9d9e8dc 100644 --- a/sw/uiconfig/swriter/ui/wordcount.ui +++ b/sw/uiconfig/swriter/ui/wordcount.ui @@ -1,12 +1,11 @@ - + False 6 Word Count -False True dialog @@ -75,6 +74,8 @@ 0 1 +1 +1 @@ -87,6 +88,8 @@ 0 2 +1 +1 @@ -99,6 +102,8 @@ 0 3 +1 +1 @@ -114,6 +119,8 @@ 1 1 +1 +1 @@ -129,6 +136,8 @@ 1 2 +1 +1 @@ -144,6 +153,8 @@ 1 3 +1 +1 @@ -159,6 +170,8 @@ 1 0 +1 +1 @@ -174,6 +187,8 @@ 2 0 +1 +1 @@ -189,6 +204,8 @@ 2 1 +1 +1 @@ -204,6 +221,8 @@ 2 2 +1 +1 @@ -219,6 +238,8 @@ 2 3 +1 +1 @@ -231,6 +252,8 @@ 0 4 +1 +1 @@ -246,6 +269,8 @@ 1 4 +1 +1 @@ -261,6 +286,8 @@ 2 4 +1 +1 @@ -273,6 +300,8 @@ 0 5 +1 +1 @@ -288,6 +317,8 @@ 1 5 +1 +1 @@ -303,6 +334,8 @@ 2 5 +1 +1 diff --git a/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx b/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx index 6db5fef..8e518d6 100644 --- a/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx +++ b/vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx @@ -1536,8 +1536,10 @@ void GtkSalGraphics::copyArea( long nDestX, long nDestY, long nSrcWidth, long nSr
Calc: LO 4.4.1.2 print and sort problems
I probably ought to file a bug/enhancement report, but if anyone's interested they can investigate. First the weirdo/bug. I've got an old spreadsheet from 3.5/3.4 days. It has six sheets in it. On three sheets, clicking print preview or print gave you a blank sheet, despite data on the sheet. On the other three, things worked fine. Copying the data to a new sheet fixed the problem, but it was weird hitting it ... And the enhancement - sort seems to always guess wrong about a header row. That makes sorting a real pain, because the dialog comes up on the sort criteria tab. You then have to switch to the options tab, set/reset the "range contains column labels", and go back to sort criteria. NOT user friendly. Shouldn't we move this option at least on to the sort criteria tab? I can understand why it's on the options tab, but seeing as it directly affects the options available on the sort criteria tab, there is a very strong argument that this particular option does belong on the sort criteria tab. Cheers, Wol ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: [Libreoffice-qa] Bugs with Backtrace but Not Reproduced
Le 06/03/2015 15:26, Joel Madero a écrit : >> Got a link for those issues handy ? > https://bugs.documentfoundation.org/buglist.cgi?list_id=525899®etlastlist=525899 > Thanks but I only get this in return from Bugzilla : Sorry, I seem to have lost the cookie that recorded the results of your last search. I'm afraid you will have to start again from the search page. Alex ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: include/vcl
include/vcl/timer.hxx |8 1 file changed, 4 insertions(+), 4 deletions(-) New commits: commit e7c2b4b981b9b43c31fa442d5596b7a765dbe699 Author: Tobias Madl Date: Fri Mar 6 15:45:03 2015 +0100 Timer: added virtual before definition Change-Id: Ief4da1f1241fc4175f5ad132fd103e6d29470b58 diff --git a/include/vcl/timer.hxx b/include/vcl/timer.hxx index 004e78c..e2fd4a7 100644 --- a/include/vcl/timer.hxx +++ b/include/vcl/timer.hxx @@ -30,9 +30,9 @@ protected: sal_uLong mnTimeout; boolmbAuto; -void SetDeletionFlags() SAL_OVERRIDE; -bool ReadyForSchedule( bool bTimer ) SAL_OVERRIDE; -sal_uLong UpdateMinPeriod( sal_uLong nMinPeriod, sal_uLong nTime ) SAL_OVERRIDE; +virtual void SetDeletionFlags() SAL_OVERRIDE; +virtual bool ReadyForSchedule( bool bTimer ) SAL_OVERRIDE; +virtual sal_uLong UpdateMinPeriod( sal_uLong nMinPeriod, sal_uLong nTime ) SAL_OVERRIDE; public: Timer(); @@ -47,7 +47,7 @@ public: virtual voidInvoke() SAL_OVERRIDE; voidTimeout() { Invoke(); } Timer& operator=( const Timer& rTimer ); -voidStart() SAL_OVERRIDE; +virtual voidStart() SAL_OVERRIDE; static void ImplStartTimer( ImplSVData* pSVData, sal_uLong nMS ); }; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sc/source
sc/source/core/opencl/op_statistical.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 6f4dc6af39ecf2f90155205ad097601a8b2f602c Author: Tor Lillqvist Date: Fri Mar 6 16:40:59 2015 +0200 One more #VALUE! instead of 'nan' Change-Id: Ib7fe0d9ed2f5b5aae95b73a01f1eb059a01dc2b4 diff --git a/sc/source/core/opencl/op_statistical.cxx b/sc/source/core/opencl/op_statistical.cxx index fa5027f..f6f346f 100644 --- a/sc/source/core/opencl/op_statistical.cxx +++ b/sc/source/core/opencl/op_statistical.cxx @@ -2659,7 +2659,7 @@ void OpSlope::GenSlidingWindowFunction(std::stringstream &ss, ss << "}\n"; ss << "if (fCount < 1.0)\n"; -ss << "return NAN;\n"; +ss << "return CreateDoubleError(errNoValue);\n"; ss << "else\n"; ss << "{\n"; ss << "fMeanX = fSumX * pow(fCount,-1.0);\n"; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
Re: [Libreoffice-qa] Bugs with Backtrace but Not Reproduced
On 03/06/2015 12:11 AM, Alex Thurgood wrote: > Le 06/03/2015 05:52, Joel Madero a écrit : > > Hi Joel, > >> I'm curious if anyone has any thoughts about bugs that have backtraces >> but QA has been unable to repro. Should these just be pushed to NEW ? >> >> Currently there are 8 UNCONFIRMED crashers - at least one or two of >> those have backtraces but have had other members of QA say they cannot >> reproduce. >> > Got a link for those issues handy ? https://bugs.documentfoundation.org/buglist.cgi?list_id=525899®etlastlist=525899 There are the 8 crashers currently reported and unconfirmed. At least 2 of them have backtraces - one of the other ones has some kind of a system dump or something... If we can just mark as NEW then I suggest we start automatically asking users to do a backtrace (at least suggest and link to the wiki). Might save a few rounds of NEEDINFO -> UNCONFIRMED -> NEEDINFO -> WFM -> UNCONFIRMED ;) Best, Joel > > Alex > > ___ > List Name: Libreoffice-qa mailing list > Mail address: libreoffice...@lists.freedesktop.org > Change settings: http://lists.freedesktop.org/mailman/listinfo/libreoffice-qa > Problems? > http://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/ > Posting guidelines + more: http://wiki.documentfoundation.org/Netiquette > List archive: http://lists.freedesktop.org/archives/libreoffice-qa/ ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: 2 commits - desktop/source filter/source
desktop/source/deployment/manager/dp_manager.cxx |3 +-- filter/source/msfilter/svdfppt.cxx | 13 - 2 files changed, 5 insertions(+), 11 deletions(-) New commits: commit ca3700c42238e71684ec1d5f5eacaea4b1ca3b30 Author: Bjoern Michaelsen Date: Fri Mar 6 14:48:24 2015 +0100 v612: obfuscated if/goto Change-Id: Ia12b325e41238b9e12e2f388273bd01b96d61c08 diff --git a/filter/source/msfilter/svdfppt.cxx b/filter/source/msfilter/svdfppt.cxx index d7d9cf1..6f0fb86 100644 --- a/filter/source/msfilter/svdfppt.cxx +++ b/filter/source/msfilter/svdfppt.cxx @@ -3178,11 +3178,10 @@ PPTExtParaProv::PPTExtParaProv( SdrPowerPointImport& rMan, SvStream& rSt, const DffRecordHeader aContentDataHd; const DffRecordHeader* pListHd = rMan.aDocRecManager.GetRecordHeader( PPT_PST_List, SEEK_FROM_BEGINNING ); -while( pListHd ) -{ +if( pListHd ) pListHd->SeekToContent( rSt ); -if ( !rMan.SeekToContentOfProgTag( 9, rSt, *pListHd, aContentDataHd ) ) -break; +if ( pListHd && rMan.SeekToContentOfProgTag( 9, rSt, *pListHd, aContentDataHd ) ) +{ while ( ( rSt.GetError() == 0 ) && ( rSt.Tell() < aContentDataHd.GetRecEndFilePos() ) ) { ReadDffRecordHeader( rSt, aHd ); @@ -3257,13 +3256,10 @@ PPTExtParaProv::PPTExtParaProv( SdrPowerPointImport& rMan, SvStream& rSt, const } aHd.SeekToEndOfRecord( rSt ); } -break; } -while( pHd ) +if ( pHd && rMan.SeekToContentOfProgTag( 9, rSt, *pHd, aContentDataHd ) ) { // get the extended paragraph styles on mainmaster ( graphical bullets, num ruling ... ) -if ( !rMan.SeekToContentOfProgTag( 9, rSt, *pHd, aContentDataHd ) ) -break; while ( ( rSt.GetError() == 0 ) && ( rSt.Tell() < aContentDataHd.GetRecEndFilePos() ) ) { ReadDffRecordHeader( rSt, aHd ); @@ -3308,7 +3304,6 @@ PPTExtParaProv::PPTExtParaProv( SdrPowerPointImport& rMan, SvStream& rSt, const } aHd.SeekToEndOfRecord( rSt ); } -break; } rSt.Seek( nOldPos ); } commit 8da61f23384c7f3f2850a6362765506e4e078862 Author: Bjoern Michaelsen Date: Fri Mar 6 14:35:24 2015 +0100 v612: obfuscated if Change-Id: Idbcb1f7461ac5a1d5e07d7d65f6a7d86f2e3cc57 diff --git a/desktop/source/deployment/manager/dp_manager.cxx b/desktop/source/deployment/manager/dp_manager.cxx index 8d90501..92f32c5 100644 --- a/desktop/source/deployment/manager/dp_manager.cxx +++ b/desktop/source/deployment/manager/dp_manager.cxx @@ -93,11 +93,10 @@ OUString getExtensionFolder(OUString const & parentFolder, StrTitle::createCursor (tempFolder, ::ucbhelper::INCLUDE_FOLDERS_ONLY ) ); OUString title; -while (xResultSet->next()) +if (xResultSet->next()) { title = Reference( xResultSet, UNO_QUERY_THROW )->getString(1 /* Title */ ) ; -break; } return title; } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'feature/slideshow_onlySprites' - slideshow/source
slideshow/source/engine/slide/shapemanagerimpl.cxx | 35 ++--- slideshow/source/engine/slide/shapemanagerimpl.hxx |2 + 2 files changed, 33 insertions(+), 4 deletions(-) New commits: commit 21009ded43206124264a17992cb554f89aac6b75 Author: Michael Jaumann Date: Fri Mar 6 14:01:53 2015 + added updateSprites in shapemangerimpl Change-Id: I72e768be6bfaae1d6eccc25cebc12f995efdf55e diff --git a/slideshow/source/engine/slide/shapemanagerimpl.cxx b/slideshow/source/engine/slide/shapemanagerimpl.cxx index 47d12bf..0db4f80 100644 --- a/slideshow/source/engine/slide/shapemanagerimpl.cxx +++ b/slideshow/source/engine/slide/shapemanagerimpl.cxx @@ -343,8 +343,7 @@ void ShapeManagerImpl::viewsChanged() bool ShapeManagerImpl::update() { -//if( mbEnabled) - // return mpLayerManager->update(); +updateSprites(); return false; } @@ -381,8 +380,36 @@ void ShapeManagerImpl::leaveAnimationMode( const AnimatableShapeSharedPtr& rShap void ShapeManagerImpl::notifyShapeUpdate( const ShapeSharedPtr& rShape ) { - // if( mbEnabled ) - // mpLayerManager->notifyShapeUpdate(rShape); +if( rShape->isVisible() || rShape->isBackgroundDetached() ) + maUpdateShapes.insert( rShape ); +} + +bool ShapeManagerImpl::updateSprites() +{ +bool bRet(true); + +// send update() calls to every shape in the +// maUpdateShapes set, which is _animated_ (i.e. a +// sprite). +const ShapeUpdateSet::const_iterator aEnd=maUpdateShapes.end(); +ShapeUpdateSet::const_iterator aCurrShape=maUpdateShapes.begin(); +while( aCurrShape != aEnd ) +{ +if( (*aCurrShape)->isBackgroundDetached() ) +{ +// can update shape directly, without +// affecting layer content (shape is +// currently displayed in a sprite) +if( !(*aCurrShape)->update() ) +bRet = false; // delay error exit +} + +++aCurrShape; +} + +maUpdateShapes.clear(); + +return bRet; } ShapeSharedPtr ShapeManagerImpl::lookupShape( uno::Reference< drawing::XShape > const & xShape ) const diff --git a/slideshow/source/engine/slide/shapemanagerimpl.hxx b/slideshow/source/engine/slide/shapemanagerimpl.hxx index ab98c6a..c1b9916 100644 --- a/slideshow/source/engine/slide/shapemanagerimpl.hxx +++ b/slideshow/source/engine/slide/shapemanagerimpl.hxx @@ -198,6 +198,8 @@ private: ::com::sun::star::drawing::XShape>& xShape, sal_Int16 nCursor ); +bool updateSprites(); + /** Common stuff when adding a shape */ void implAddShape( const ShapeSharedPtr& rShape ); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] dev-tools.git: scripts/tpconv.py
scripts/tpconv.py |4 1 file changed, 4 insertions(+) New commits: commit f7f1a8847326bfa5d12feaa9bc6c82ff3d2acd98 Author: Miklos Vajna Date: Fri Mar 6 15:00:36 2015 +0100 tpconv: allow pixel to logic conversion Change-Id: I0e0448fc9efa4dc53e1dfd8e1b65ba68c56f36f3 diff --git a/scripts/tpconv.py b/scripts/tpconv.py index a9e7bd1..8215349 100755 --- a/scripts/tpconv.py +++ b/scripts/tpconv.py @@ -28,6 +28,10 @@ conv = { 'emu': 1, # EMU / EMU } +# We know that VirtualDevices use a DPI of 96. +# Could use 'gtk.gdk.screen_get_default().get_resolution()' from pygtk. +conv['pixel'] = conv['inch'] / 96; + def convert(amount, fro, to): # convert to EMU emu = amount * conv[re.sub("s$", "", fro)] ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: desktop/source drawinglayer/source include/sfx2 include/svx include/vcl sc/inc sc/source sd/source sfx2/source svx/inc svx/source sw/source vcl/osx vcl/source vcl/win
desktop/source/app/app.cxx|2 +- drawinglayer/source/primitive2d/textlayoutdevice.cxx |4 ++-- drawinglayer/source/processor2d/vclhelperbufferdevice.cxx |4 ++-- include/sfx2/objsh.hxx|2 +- include/svx/sdr/animation/scheduler.hxx |2 +- include/vcl/debugevent.hxx|2 +- sc/inc/refreshtimer.hxx |2 +- sc/source/core/tool/refreshtimer.cxx |2 +- sc/source/filter/oox/workbookfragment.cxx |2 +- sd/source/ui/remotecontrol/ImagePreparer.cxx |2 +- sd/source/ui/remotecontrol/ImagePreparer.hxx |2 +- sd/source/ui/remotecontrol/Receiver.cxx |2 +- sd/source/ui/remotecontrol/Receiver.hxx |2 +- sfx2/source/appl/linksrc.cxx |4 ++-- sfx2/source/doc/objmisc.cxx |2 +- svx/inc/sdr/contact/objectcontactofpageview.hxx |2 +- svx/source/inc/eventhandler.hxx |2 +- svx/source/sdr/animation/scheduler.cxx|2 +- svx/source/sdr/contact/objectcontactofpageview.cxx|6 +++--- svx/source/sdr/contact/viewobjectcontactofpageobj.cxx |6 +++--- svx/source/sdr/event/eventhandler.cxx |2 +- sw/source/uibase/inc/gloslst.hxx |2 +- sw/source/uibase/utlui/gloslst.cxx|2 +- vcl/osx/salinst.cxx |6 +++--- vcl/osx/salnativewidgets.cxx |2 +- vcl/source/window/debugevent.cxx |2 +- vcl/win/source/gdi/salbmp.cxx |2 +- 27 files changed, 36 insertions(+), 36 deletions(-) New commits: commit d05a64df34fd143670cb939b72abfb32d6b714c7 Author: Tobias Madl Date: Fri Mar 6 14:48:18 2015 +0100 Timer/Idle: adapted inherited funktions Change-Id: I7714a4638b03d020820b276028c0819ef054fa26 diff --git a/desktop/source/app/app.cxx b/desktop/source/app/app.cxx index 145c0c1..01b20d5 100644 --- a/desktop/source/app/app.cxx +++ b/desktop/source/app/app.cxx @@ -1910,7 +1910,7 @@ class ExitTimer : public Timer SetTimeout(500); Start(); } -virtual void Timeout() SAL_OVERRIDE +virtual void Invoke() SAL_OVERRIDE { exit(42); } diff --git a/drawinglayer/source/primitive2d/textlayoutdevice.cxx b/drawinglayer/source/primitive2d/textlayoutdevice.cxx index b1e1ad0..9196259 100644 --- a/drawinglayer/source/primitive2d/textlayoutdevice.cxx +++ b/drawinglayer/source/primitive2d/textlayoutdevice.cxx @@ -65,7 +65,7 @@ namespace public: explicit ImpTimedRefDev(scoped_timed_RefDev& rOwnerofMe); virtual ~ImpTimedRefDev(); -virtual void Timeout() SAL_OVERRIDE; +virtual void Invoke() SAL_OVERRIDE; VirtualDevice& acquireVirtualDevice(); void releaseVirtualDevice(); @@ -87,7 +87,7 @@ namespace delete mpVirDev; } -void ImpTimedRefDev::Timeout() +void ImpTimedRefDev::Invoke() { // for obvious reasons, do not call anything after this mrOwnerOfMe.reset(); diff --git a/drawinglayer/source/processor2d/vclhelperbufferdevice.cxx b/drawinglayer/source/processor2d/vclhelperbufferdevice.cxx index feb2df0..efa41c8 100644 --- a/drawinglayer/source/processor2d/vclhelperbufferdevice.cxx +++ b/drawinglayer/source/processor2d/vclhelperbufferdevice.cxx @@ -51,7 +51,7 @@ namespace void free(VirtualDevice& rDevice); // Timer virtuals -virtual void Timeout() SAL_OVERRIDE; +virtual void Invoke() SAL_OVERRIDE; }; VDevBuffer::VDevBuffer() @@ -191,7 +191,7 @@ namespace Start(); } -void VDevBuffer::Timeout() +void VDevBuffer::Invoke() { ::osl::MutexGuard aGuard(m_aMutex); diff --git a/include/sfx2/objsh.hxx b/include/sfx2/objsh.hxx index d08baa9..289a2da 100644 --- a/include/sfx2/objsh.hxx +++ b/include/sfx2/objsh.hxx @@ -776,7 +776,7 @@ class AutoReloadTimer_Impl : public Timer public: AutoReloadTimer_Impl( const OUString& rURL, sal_uInt32 nTime, SfxObjectShell* pSh ); -virtual void Timeout() SAL_OVERRIDE; +virtual void Invoke() SAL_OVERRIDE; }; class SFX2_DLLPUBLIC SfxObjectShellItem: public SfxPoolItem diff --git a/include/svx/sdr/animation/scheduler.hxx b/include/svx/sdr/animation/scheduler.hxx index 5a5ca9e..1feda3a 100644 --- a/include/svx/sdr/animation/scheduler.hxx +++ b/include/svx/sdr/animation/scheduler.hxx @@ -116,7 +116,7 @@ namespace sdr virtual ~Scheduler(); // From baseclass Timer, the timeout call -virtual void Timeout() SAL_OVERRIDE; +virtual void Invoke() SAL_OVERRIDE
Interested in Contributing to LibreOffice
Hello, everyone! I am Tanmay Sahay, a Sophomore from IIIT Hyderabad. I've been programming in C++ for around 3 years, and I'm proficient in algorithmic programming. LibreOffice interests me. I've looked up the basic development workflow; this enabled me to successfully build my own development version of LibreOffice from the repository I cloned. It would be great if someone could direct me to the areas of development where my algorithmic programming can be put to use, as I'm keen on contributing! With regards, *Tanmay Sahay* *CSE, 2013-17* *IIIT Hyderabad* ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] dev-tools.git: test-bugzilla-files/analyze-logs.py
test-bugzilla-files/analyze-logs.py | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) New commits: commit bc0aabc6e6fc8880a1e2d7979411b0ebd9d2ee91 Author: Christian Lohmaier Date: Fri Mar 6 13:53:19 2015 +0100 don't overwrite a file we're still reading from slurp in the inputfile to avoid this also use sorted output to allow for easier comparison and use the writer's default value instead of assigning 0 manually diff --git a/test-bugzilla-files/analyze-logs.py b/test-bugzilla-files/analyze-logs.py index 8cae85b..b52dcb1 100644 --- a/test-bugzilla-files/analyze-logs.py +++ b/test-bugzilla-files/analyze-logs.py @@ -65,17 +65,17 @@ def get_directories(): def import_csv(filename): if not os.path.exists(filename): return None -reader = csv.DictReader(open(filename)) +infile = open(filename,'r') +reader = csv.DictReader(infile.readlines()) +infile.close() return reader def export_csv(filename, data, reader): fieldnames = set(data.keys()) -for entry in set(reader.fieldnames).difference(data.iterkeys()): -data[entry] = 0 if not reader is None: -fieldnames |= set(reader.fieldnames) -writer = csv.DictWriter(open(filename, "w"), fieldnames) +fieldnames.update(reader.fieldnames) +writer = csv.DictWriter(open(filename, "w"), sorted(fieldnames), restval=0) writer.writeheader() if not reader is None: for row in reader: ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'feature/slideshow_onlySprites' - slideshow/source
slideshow/source/engine/slide/shapemanagerimpl.cxx | 98 - slideshow/source/engine/slide/shapemanagerimpl.hxx | 22 slideshow/source/engine/slide/slideimpl.cxx|7 + 3 files changed, 122 insertions(+), 5 deletions(-) New commits: commit 42322e7f428a96eb1b2b10c81221e088613e8d1b Author: Michael Jaumann Date: Fri Mar 6 12:36:44 2015 + views for shapeManager Change-Id: I9ff223f03d7edb76092e1c38f56946e35c94f229 diff --git a/slideshow/source/engine/slide/shapemanagerimpl.cxx b/slideshow/source/engine/slide/shapemanagerimpl.cxx index a2e68b0..47d12bf 100644 --- a/slideshow/source/engine/slide/shapemanagerimpl.cxx +++ b/slideshow/source/engine/slide/shapemanagerimpl.cxx @@ -36,13 +36,15 @@ using namespace com::sun::star; namespace slideshow { namespace internal { -ShapeManagerImpl::ShapeManagerImpl( EventMultiplexer&rMultiplexer, +ShapeManagerImpl::ShapeManagerImpl( const UnoViewContainer& rViews, +EventMultiplexer&rMultiplexer, CursorManager& rCursorManager, const ShapeEventListenerMap& rGlobalListenersMap, const ShapeCursorMap& rGlobalCursorMap ): maXShapeHash( 101 ), maAllShapes(), maUpdateShapes(), +mrViews(rViews), mrMultiplexer(rMultiplexer), mrCursorManager(rCursorManager), mrGlobalListenersMap(rGlobalListenersMap), @@ -54,6 +56,31 @@ ShapeManagerImpl::ShapeManagerImpl( EventMultiplexer& rMultiplexer, { } +template void ShapeManagerImpl::manageViews( + LayerFunc layerFunc, + ShapeFunc shapeFunc ) +{ +LayerSharedPtr pCurrLayer; +ViewLayerSharedPtr pCurrViewLayer; +LayerShapeMap::const_iterator aIter( maAllShapes.begin() ); +const LayerShapeMap::const_iterator aEnd ( maAllShapes.end() ); +while( aIter != aEnd ) +{ +LayerSharedPtr pLayer = aIter->second.lock(); +if( pLayer && pLayer != pCurrLayer ) +{ +pCurrLayer = pLayer; +pCurrViewLayer = layerFunc(pCurrLayer); +} + +if( pCurrViewLayer ) +shapeFunc(aIter->first,pCurrViewLayer); + +++aIter; +} +} + void ShapeManagerImpl::activate( bool bSlideBackgoundPainted ) { if( !mbEnabled ) @@ -245,6 +272,75 @@ bool ShapeManagerImpl::handleMouseMoved( const awt::MouseEvent& e ) // handler should see it, too. } +void ShapeManagerImpl::viewAdded( const UnoViewSharedPtr& rView ) +{ +// view must be member of mrViews container +OSL_ASSERT( std::find(mrViews.begin(), + mrViews.end(), + rView) != mrViews.end() ); + +// init view content +rView->clearAll(); + +// add View to all registered shapes +manageViews( +boost::bind(&Layer::addView, +_1, +boost::cref(rView)), +// repaint on view add +boost::bind(&Shape::addViewLayer, +_1, +_2, +true) ); +} + +void ShapeManagerImpl::viewRemoved( const UnoViewSharedPtr& rView ) +{ +// view must not be member of mrViews container anymore +OSL_ASSERT( std::find(mrViews.begin(), + mrViews.end(), + rView) == mrViews.end() ); + +// remove View from all registered shapes +manageViews( +boost::bind(&Layer::removeView, +_1, +boost::cref(rView)), +boost::bind(&Shape::removeViewLayer, +_1, +_2) ); +} + +void ShapeManagerImpl::viewChanged( const UnoViewSharedPtr& rView ) +{ +(void)rView; + +// view must be member of mrViews container +OSL_ASSERT( std::find(mrViews.begin(), + mrViews.end(), + rView) != mrViews.end() ); + +// TODO(P2): selectively update only changed view +viewsChanged(); +} + +void ShapeManagerImpl::viewsChanged() +{ + +// clear view area +::std::for_each( mrViews.begin(), + mrViews.end(), + ::boost::mem_fn(&View::clearAll) ); + +// TODO(F3): resize and repaint all layers + +// render all shapes +std::for_each( maAllShapes.begin(), + maAllShapes.end(), + boost::bind(&Shape::render, + boost::bind( ::o3tl::select1st(), _1)) ); +} + bool ShapeManagerImpl::update() { //if( mbEnabled) diff --git a/slideshow/source/engine/slide/shapemanagerimpl.hxx b/slideshow/source/engine/slide/shapemanagerimpl.hxx index 108e58a..ab98c6a 100644 --- a/slideshow/source/engine/slide/shapemanagerimpl.hxx +++ b/slideshow/source/engine/slide/shapemanagerimpl.hxx @@ -64,7 +64,8 @@ public:
[Libreoffice-commits] core.git: Branch 'feature/tiled-editing' - android/Bootstrap android/experimental include/LibreOfficeKit
android/Bootstrap/src/org/libreoffice/kit/Document.java |2 + android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitTileProvider.java | 18 +- include/LibreOfficeKit/LibreOfficeKitEnums.h |8 +++- 3 files changed, 26 insertions(+), 2 deletions(-) New commits: commit ab934a73748a6f8b393f386968b6ce94e4f6a884 Author: Siqi Liu Date: Fri Mar 6 13:35:34 2015 +0100 tdf#89705: provides callback for url handling on android. Change-Id: Ie28cd768519fbdc305f98e1d764d05bd209951ca diff --git a/android/Bootstrap/src/org/libreoffice/kit/Document.java b/android/Bootstrap/src/org/libreoffice/kit/Document.java index 8c20f70..56d92b0 100644 --- a/android/Bootstrap/src/org/libreoffice/kit/Document.java +++ b/android/Bootstrap/src/org/libreoffice/kit/Document.java @@ -40,6 +40,8 @@ public class Document { public static final int CALLBACK_TEXT_SELECTION_START = 3; public static final int CALLBACK_TEXT_SELECTION_END = 4; public static final int CALLBACK_CURSOR_VISIBLE = 5; +// LOK_CALLBACK_GRAPHIC_SELECTION = 6 +public static final int CALLBACK_HYPERLINK_CLICKED = 7; /** * Text selection types diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitTileProvider.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitTileProvider.java index 0ef12c6..179c6ff 100644 --- a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitTileProvider.java +++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitTileProvider.java @@ -5,6 +5,8 @@ import android.graphics.PointF; import android.graphics.RectF; import android.util.Log; import android.view.KeyEvent; +import android.net.Uri; +import android.content.Intent; import org.libreoffice.kit.DirectBufferAllocator; import org.libreoffice.kit.Document; @@ -411,10 +413,24 @@ public class LOKitTileProvider implements TileProvider, Document.MessageCallback */ @Override public void messageRetrieved(int messageID, String payload) { +/** + * Handles messages that do not require entering editing mode. + */ +switch (messageID) { +case Document.CALLBACK_HYPERLINK_CLICKED: +if (!payload.startsWith("http://";) && +!payload.startsWith("https://";)) +payload = "http://"; + payload; + +Intent url_intent = new Intent(Intent.ACTION_VIEW); +url_intent.setData(Uri.parse(payload)); +LibreOfficeMainActivity.mAppContext.startActivity(url_intent); +return; +} + if (!LOKitShell.isEditingEnabled()) { return; } - mInvalidationHandler.processMessage(messageID, payload); } } diff --git a/include/LibreOfficeKit/LibreOfficeKitEnums.h b/include/LibreOfficeKit/LibreOfficeKitEnums.h index cc5a32b..b8ab5f6 100644 --- a/include/LibreOfficeKit/LibreOfficeKitEnums.h +++ b/include/LibreOfficeKit/LibreOfficeKitEnums.h @@ -94,7 +94,13 @@ typedef enum * * Rectangle format is the same as LOK_CALLBACK_INVALIDATE_TILES. */ -LOK_CALLBACK_GRAPHIC_SELECTION +LOK_CALLBACK_GRAPHIC_SELECTION, + +/** + * User clicked on an hyperlink that should be handled by other + * applications accordingly. + */ +LOK_CALLBACK_HYPERLINK_CLICKED } LibreOfficeKitCallbackType; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sc/source
sc/source/core/opencl/op_statistical.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit 1028643bc7d294e4c32b4ccea288d90088abae53 Author: Tor Lillqvist Date: Fri Mar 6 14:21:24 2015 +0200 Return a #DIV/0! error in one case in the OpenCL SLOPE() implementation Instead of a bare NAN. There are still many places in this function where the code bluntly returns a bare NAN. That is always the wrong thing to do. However, it is not certain that the #DIV/0! is the right error in all cases. One would need to check in each case how to get there, and what the reference C++ implementation and other spreadsheet products do in such a case. Change-Id: I5454609082a92144b1afc3c1745586bfe8ef87f8 diff --git a/sc/source/core/opencl/op_statistical.cxx b/sc/source/core/opencl/op_statistical.cxx index c9e74f9..fa5027f 100644 --- a/sc/source/core/opencl/op_statistical.cxx +++ b/sc/source/core/opencl/op_statistical.cxx @@ -2703,7 +2703,7 @@ void OpSlope::GenSlidingWindowFunction(std::stringstream &ss, ss << "fSumSqrDeltaX += (argX-fMeanX) * (argX-fMeanX);\n"; ss << "}\n"; ss << "if(fSumSqrDeltaX == 0.0)\n"; -ss << "return NAN;\n"; +ss << "return CreateDoubleError(errDivisionByZero);\n"; ss << "else\n"; ss << "{\n"; ss << "return fSumDeltaXDeltaY*pow(fSumSqrDeltaX,-1.0);\n"; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'feature/priorities' - 3 commits - include/vcl vcl/inc vcl/source
include/vcl/scheduler.hxx| 22 -- include/vcl/timer.hxx|4 +-- vcl/inc/svdata.hxx |3 -- vcl/source/app/scheduler.cxx | 52 --- vcl/source/app/svapp.cxx |4 --- vcl/source/app/svmain.cxx|1 vcl/source/app/timer.cxx |6 +--- 7 files changed, 40 insertions(+), 52 deletions(-) New commits: commit 950d093f21a1ce42020386052aaff8c0812d57a0 Author: Tobias Madl Date: Fri Mar 6 10:39:49 2015 + adapted comments and variable names Change-Id: I4f2c1d743ce2f30e8c24180b73f0716fc13b459e diff --git a/include/vcl/timer.hxx b/include/vcl/timer.hxx index a999559..004e78c 100644 --- a/include/vcl/timer.hxx +++ b/include/vcl/timer.hxx @@ -40,10 +40,10 @@ public: /// Make it possible to associate a callback with this timer handler /// of course, you can also sub-class and override 'Invoke' -voidSetTimeout( sal_uLong nTimeoutMs ); -sal_uLong GetTimeout() const { return mnTimeout; } voidSetTimeoutHdl( const Link& rLink ) { maTimeoutHdl = rLink; } const Link& GetTimeoutHdl() const { return maTimeoutHdl; } +voidSetTimeout( sal_uLong nTimeoutMs ); +sal_uLong GetTimeout() const { return mnTimeout; } virtual voidInvoke() SAL_OVERRIDE; voidTimeout() { Invoke(); } Timer& operator=( const Timer& rTimer ); diff --git a/vcl/inc/svdata.hxx b/vcl/inc/svdata.hxx index 132c272..967f3df 100644 --- a/vcl/inc/svdata.hxx +++ b/vcl/inc/svdata.hxx @@ -317,8 +317,7 @@ struct ImplSVData SalSystem* mpSalSystem;// SalSystem interface ResMgr* mpResMgr; // SV-Resource-Manager sal_uLong mnTimerPeriod; // current timer period -sal_uLong mnTimerUpdate; // TimerCallbackProcs on stack -boolmbNotAllTimerCalled;// true: Timer must still be processed +sal_uLong mnUpdateStack; // Scheduler on stack ImplSVAppData maAppData; // indepen data for class Application ImplSVGDIData maGDIData; // indepen data for Output classes ImplSVWinData maWinData; // indepen data for Windows classes diff --git a/vcl/source/app/scheduler.cxx b/vcl/source/app/scheduler.cxx index fc52b90..5a0061f 100644 --- a/vcl/source/app/scheduler.cxx +++ b/vcl/source/app/scheduler.cxx @@ -23,11 +23,14 @@ #include #include +#define MAX_TIMER_PERIOD((sal_uLong)0x) + void ImplSchedulerData::Invoke() { if (mbDelete || mbInScheduler ) return; +// prepare Scheduler Object for deletion after handling mpScheduler->SetDeletionFlags(); // invoke it @@ -41,20 +44,20 @@ ImplSchedulerData *ImplSchedulerData::GetMostImportantTask( bool bTimer ) ImplSVData* pSVData = ImplGetSVData(); ImplSchedulerData *pMostUrgent = NULL; -for ( ImplSchedulerData *p = pSVData->mpFirstSchedulerData; p; p = p->mpNext ) +for ( ImplSchedulerData *pSchedulerData = pSVData->mpFirstSchedulerData; pSchedulerData; pSchedulerData = pSchedulerData->mpNext ) { -if ( !p->mpScheduler || p->mbDelete || p->mnUpdateStack >= pSVData->mnTimerUpdate || !p->mpScheduler->ReadyForSchedule( bTimer ) ) +if ( !pSchedulerData->mpScheduler || pSchedulerData->mbDelete || pSchedulerData->mnUpdateStack >= pSVData->mnUpdateStack +|| !pSchedulerData->mpScheduler->ReadyForSchedule( bTimer ) ) continue; if (!pMostUrgent) -pMostUrgent = p; +pMostUrgent = pSchedulerData; else { // Find the highest priority. -// If the priority of the current idle is higher (numerical value is lower) than -// the priority of the most urgent, the priority of most urgent is increased and -// the current is the new most urgent. So starving is impossible. -if ( p->mpScheduler->GetPriority() < pMostUrgent->mpScheduler->GetPriority() ) -pMostUrgent = p; +// If the priority of the current task is higher (numerical value is lower) than +// the priority of the most urgent, the current task gets the new most urgent. +if ( pSchedulerData->mpScheduler->GetPriority() < pMostUrgent->mpScheduler->GetPriority() ) +pMostUrgent = pSchedulerData; } } @@ -101,6 +104,7 @@ void Scheduler::ImplDeInitScheduler() void Scheduler::CallbackTaskScheduling(bool ignore) { +// this function is for the saltimer callback (void)ignore; Scheduler::ProcessTaskScheduling( true ); } @@ -108,12 +112,13 @@ void Scheduler::CallbackTaskScheduling(bool ignore) void Scheduler::ProcessTaskS
Re: minutes of ESC call ...
On Fri, Mar 6, 2015 at 1:59 PM, Michael Meeks wrote: > > > > * Jenkins update (Norbert) > + mostly green >+ queue 64 patches long, Chris pushed a 20x deep series 3x in a row. Is it possible to (a) have a way of cancelling stuff in the queue if we need to re-push patches to gerrit? and/or (b) teach Jenkins/gerrit that if someone pushes an update to Gerrit and the job is already in the queue, then cancel the job already in the queue, and queue the new job? ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
minutes of ESC call ...
* Present: + Bjoern, Caolan, Miklos, Michael M, Norbert, Robinson, Cedric, Sophie, Lionel, Cloph, Stephan, Eike, Jan-Marek, Moggi, Michael S, Kendy, Andras, Thorsten * Completed Action Items: + write blog post to promote hack-fests (Bjoern) [ awesome, cf. twitter, G+ etc. ] + add finishing the Firebird driver to GSOC wiki page (Lionel) * Pending Action Items: + please file an Easy-Hack this week: just a bug with whiteboard: (All) "EasyHack DifficultyBeginner SkillCpp TopicCleanup" + thanks to: + http://bit.ly/1Dd4y8b + make sure to create a new openid if you are using the Google openID (all) [ Good to move; 665 accounts not yet moved; vs. 20 have moved. deadline is mid April. + no rescue / recovery path as/when/if it goes wrong. you need an OpenID account to login to replace it. How many peple didn't use Google to start ? (Bjoern) + around 700 google only (Norbert) Can we add a banner to Gerrit ? (Jan-Marek) + not so easily on the Login page. + could make a DOS - to switch off Google now (Bjoern) + with some annoying click-through etc. ? + will install an up-grade that removes the Google icon (Norbert) + lots of people don't know what to type in there. Can we get an OpenID provider at TDF ? (Kendy) + in theory; but people still have to move. People using Fedora, LaunchPad, Verisign, + setup our own OpenId ? still have to migrate. + infra. perspective - better to move to TDF LDAP for SSO across the board. ] * Release Engineering update (Cloph) + 4.4.2 RC1 + schedule RC1 - on Tuesday ? + currently only 2x patches waiting for review. + 4.3.7 due end of April + RC1 & branch-off - end of April / start of May + 4.5.0 / 5.0.0 - 1st Alpha release - start of May. + Android & iOS Remote + patches in gerrit status ? + need to get in contact with the submitter; will take care of them * 5.0 for the next release ? (Michael) + fine just marketing (Norbert) + no objections from tech. side, but likes 2015-1 (Bjoern) + profile migration from 3 to 4 a bit painful (Stephan) + does it make sense technically to require a profile migration + if not; just stick with a '4' in the user-profile. + on the other hand, if nothing needed ... + not unusual to have an API & user visible version (Miklos) + in the support group: "reset your profile" (Norbert) + seen blogs / forms -> reset your profile. + mostly extensions busting things (Bjoern) + could just copy 4/ -> 5/ and move on in the migration (Michael) + create unnecessary cruft (Lionel) + UX guys a bit annoyed, preserving toolbar settings between vers (Kendy) + people didn't see new improvements if they tweaked stuff. + some sort of migration would be welcome from a UX perspective. + perhaps worth investing some time in this. + prolly better to make people aware of this in a better way than a lossy migration (Stephan) + a bug to drop settings users set explicitly (Markus) + really hard to see programaticaly what was changed (Kendy/Michael) + still do-able with an info-bar question; -> use them ? (Kendy) + can a user reset the profile ? (Norbert) + no (Kendy) + usually do a ver. # bump to do more disruptive changes in UNO API (Bjoern) + could we use the opportunity to do more disruptive changes ? + eg. PropertyValue & NamedValue -> same thing. + code for both; could we kill one or make 1 an ext'n of the other ? + do whatever ABI breakage we want to (Norbert) + no big ABI changes on the roadmap (Stephan) + previous plan - was constant small changes (Michael) + seemed to do well with this plan. + as long as the API doesn't break so much (jmux) + last time lots broke & we had to fix a lot. + not expecting a big change at this boundary (Norbert) + could raise the Linux base-line to RHEL6 ... (mst) + could drop some of the KDE3 stuff ? and/or compile KDE4 bits. + I guess many people would prefer a KDE4 based backend to KDE3 (Jan-Marek) + Munich is just looking for the Ubuntu 12.04 baseline / gcc 4.6, so I guess this would be ok (Jan-Marek) + Munich is just compiling the KDE4 backend for LO "5.0" and 4.1 (Jan-Marek) => more a marketing decision, no compelling reasons not to. * GSoC (Cedric/Thorsten) + we're accepted! + student application period: March 16 to March 27th + under 2x weeks from now + quite a few mentors missing in Melange. + other
[Libreoffice-commits] core.git: sc/source
sc/source/core/opencl/op_statistical.cxx |2 ++ 1 file changed, 2 insertions(+) New commits: commit 100c518e980f6abdc93c727c524b738200236bf2 Author: Tor Lillqvist Date: Fri Mar 6 13:43:04 2015 +0200 Set #VALUE! error in PEARSON() OpenCL implementation when appropriate Returning a NaN with no "double error" semantic payload as such does not make sense. "Pure" NaNs are displayed in Calc as "nan" which probably is not what we want. Change-Id: I85dc55328669bd27478be438dd5a9970d24cf7f9 diff --git a/sc/source/core/opencl/op_statistical.cxx b/sc/source/core/opencl/op_statistical.cxx index 0f3c1e8..c9e74f9 100644 --- a/sc/source/core/opencl/op_statistical.cxx +++ b/sc/source/core/opencl/op_statistical.cxx @@ -3323,6 +3323,8 @@ void OpPearson::GenSlidingWindowFunction( ss << " }\n"; ss << " double tmp = ( fSumDeltaXDeltaY / "; ss << "sqrt( fSumX * fSumY));\n\t"; +ss << " if (isnan(tmp))\n"; +ss << " return CreateDoubleError(errNoValue);\n"; ss << " return tmp;\n"; ss << "}\n"; } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Bug 89641] Page counters in status bars are inconsistent: “Page N / N” vs. “Page N of N”
https://bugs.documentfoundation.org/show_bug.cgi?id=89641 --- Comment #4 from Jan Holesovsky --- dobragab: For Calc, have a look at sc/source/ui/view/cellsh.cxx , search for STR_TABLE. You want to change the STR_TABLE in sc/source/ui/src/globstr.src to have a kind of "Sheet %1 of %2" and adapt the code in cellsh.cxx the same way as in http://cgit.freedesktop.org/libreoffice/core/commit/?id=4b4e4ccf8d571fd6f6ee538c4e406b07fc810e2d For Draw/Impress, you wrote me that you have some proof-of-concept patch, but that you have some issues with that - best if you can push the patch to gerrit, and we can sort out the missing pieces there as part of the review :-) Thanks for working on this! -- You are receiving this mail because: You are on the CC list for the bug. ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: Branch 'libreoffice-4-4' - dbaccess/source
dbaccess/source/ui/control/curledit.cxx | 15 +++ dbaccess/source/ui/dlg/ConnectionHelper.cxx |1 + dbaccess/source/ui/inc/curledit.hxx |1 + 3 files changed, 17 insertions(+) New commits: commit 8ace7ee616e7a38f7c626a74e680b928832c78df Author: Szymon KÅos Date: Thu Mar 5 23:15:26 2015 +0100 tdf#89391 : Datasource URL in Database Properties window cannot be viewed Change-Id: Ia3e978e3fd9c0ce19ec679c41d40a34338147c37 (cherry picked from commit 1ac9985ade97f91869a11ce45231ffd6a5440959) Reviewed-on: https://gerrit.libreoffice.org/14768 Reviewed-by: Lionel Elie Mamane Tested-by: Lionel Elie Mamane diff --git a/dbaccess/source/ui/control/curledit.cxx b/dbaccess/source/ui/control/curledit.cxx index 22d8241..4dc9d7f 100644 --- a/dbaccess/source/ui/control/curledit.cxx +++ b/dbaccess/source/ui/control/curledit.cxx @@ -67,6 +67,21 @@ void OConnectionURLEdit::SetText(const OUString& _rStr) SetText(_rStr, aNoSelection); } +void OConnectionURLEdit::Resize() +{ +if (GetSubEdit()) +{ +Size aMySize = GetSizePixel(); +sal_Int32 nTextWidth = 0; +if ( m_pForcedPrefix && m_bShowPrefix) +{ +nTextWidth = m_pForcedPrefix->GetTextWidth(m_pForcedPrefix->GetText()) + 2; +m_pForcedPrefix->SetPosSizePixel(Point(0, -2), Size(nTextWidth, aMySize.Height())); +} +GetSubEdit()->SetPosSizePixel(Point(nTextWidth, -2), Size(aMySize.Width() - nTextWidth - 4, aMySize.Height())); +} +} + void OConnectionURLEdit::SetText(const OUString& _rStr, const Selection& /*_rNewSelection*/) { // create new sub controls, if necessary diff --git a/dbaccess/source/ui/dlg/ConnectionHelper.cxx b/dbaccess/source/ui/dlg/ConnectionHelper.cxx index 0c404dc..a2f8278 100644 --- a/dbaccess/source/ui/dlg/ConnectionHelper.cxx +++ b/dbaccess/source/ui/dlg/ConnectionHelper.cxx @@ -127,6 +127,7 @@ namespace dbaui m_pFT_Connection->Show(); m_pConnectionURL->Show(); +m_pConnectionURL->Resize(); m_pConnectionURL->ShowPrefix( ::dbaccess::DST_JDBC == m_pCollection->determineType(m_eType) ); bool bEnableBrowseButton = m_pCollection->supportsBrowsing( m_eType ); diff --git a/dbaccess/source/ui/inc/curledit.hxx b/dbaccess/source/ui/inc/curledit.hxx index dc1a429..f3a0dca 100644 --- a/dbaccess/source/ui/inc/curledit.hxx +++ b/dbaccess/source/ui/inc/curledit.hxx @@ -49,6 +49,7 @@ public: virtual voidSetText(const OUString& _rStr) SAL_OVERRIDE; virtual voidSetText(const OUString& _rStr, const Selection& _rNewSelection) SAL_OVERRIDE; virtual OUString GetText() const SAL_OVERRIDE; +virtual void Resize() SAL_OVERRIDE; /** Showsthe Prefix @param _bShowPrefix ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: dbaccess/source
dbaccess/source/ui/control/curledit.cxx | 15 +++ dbaccess/source/ui/dlg/ConnectionHelper.cxx |1 + dbaccess/source/ui/inc/curledit.hxx |1 + 3 files changed, 17 insertions(+) New commits: commit 1ac9985ade97f91869a11ce45231ffd6a5440959 Author: Szymon KÅos Date: Thu Mar 5 23:15:26 2015 +0100 tdf#89391 : Datasource URL in Database Properties window cannot be viewed Change-Id: Ia3e978e3fd9c0ce19ec679c41d40a34338147c37 Reviewed-on: https://gerrit.libreoffice.org/14766 Reviewed-by: Lionel Elie Mamane Tested-by: Lionel Elie Mamane diff --git a/dbaccess/source/ui/control/curledit.cxx b/dbaccess/source/ui/control/curledit.cxx index 22d8241..4dc9d7f 100644 --- a/dbaccess/source/ui/control/curledit.cxx +++ b/dbaccess/source/ui/control/curledit.cxx @@ -67,6 +67,21 @@ void OConnectionURLEdit::SetText(const OUString& _rStr) SetText(_rStr, aNoSelection); } +void OConnectionURLEdit::Resize() +{ +if (GetSubEdit()) +{ +Size aMySize = GetSizePixel(); +sal_Int32 nTextWidth = 0; +if ( m_pForcedPrefix && m_bShowPrefix) +{ +nTextWidth = m_pForcedPrefix->GetTextWidth(m_pForcedPrefix->GetText()) + 2; +m_pForcedPrefix->SetPosSizePixel(Point(0, -2), Size(nTextWidth, aMySize.Height())); +} +GetSubEdit()->SetPosSizePixel(Point(nTextWidth, -2), Size(aMySize.Width() - nTextWidth - 4, aMySize.Height())); +} +} + void OConnectionURLEdit::SetText(const OUString& _rStr, const Selection& /*_rNewSelection*/) { // create new sub controls, if necessary diff --git a/dbaccess/source/ui/dlg/ConnectionHelper.cxx b/dbaccess/source/ui/dlg/ConnectionHelper.cxx index 7649be1..eeb3bd4 100644 --- a/dbaccess/source/ui/dlg/ConnectionHelper.cxx +++ b/dbaccess/source/ui/dlg/ConnectionHelper.cxx @@ -127,6 +127,7 @@ namespace dbaui m_pFT_Connection->Show(); m_pConnectionURL->Show(); +m_pConnectionURL->Resize(); m_pConnectionURL->ShowPrefix( ::dbaccess::DST_JDBC == m_pCollection->determineType(m_eType) ); bool bEnableBrowseButton = m_pCollection->supportsBrowsing( m_eType ); diff --git a/dbaccess/source/ui/inc/curledit.hxx b/dbaccess/source/ui/inc/curledit.hxx index a08bcf0..cb92013 100644 --- a/dbaccess/source/ui/inc/curledit.hxx +++ b/dbaccess/source/ui/inc/curledit.hxx @@ -49,6 +49,7 @@ public: virtual voidSetText(const OUString& _rStr) SAL_OVERRIDE; virtual voidSetText(const OUString& _rStr, const Selection& _rNewSelection) SAL_OVERRIDE; virtual OUString GetText() const SAL_OVERRIDE; +virtual void Resize() SAL_OVERRIDE; /** Showsthe Prefix @param _bShowPrefix ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'feature/slideshow_onlySprites' - slideshow/source
slideshow/source/engine/slide/shapemanagerimpl.cxx | 17 + slideshow/source/engine/slide/shapemanagerimpl.hxx |5 + slideshow/source/engine/slide/slideimpl.cxx|8 3 files changed, 26 insertions(+), 4 deletions(-) New commits: commit f7f8706b404b5b61856fbc3e96985b5ca70ee78c Author: Michael Jaumann Date: Fri Mar 6 10:58:34 2015 + addShape for shapemanagerimpl Change-Id: I965760aa642126cf4616e7f89b4d4859efb0823a diff --git a/slideshow/source/engine/slide/shapemanagerimpl.cxx b/slideshow/source/engine/slide/shapemanagerimpl.cxx index f364b2d..a2e68b0 100644 --- a/slideshow/source/engine/slide/shapemanagerimpl.cxx +++ b/slideshow/source/engine/slide/shapemanagerimpl.cxx @@ -397,6 +397,23 @@ void ShapeManagerImpl::implAddShape( const ShapeSharedPtr& rShape ) notifyShapeUpdate( rShape ); } +void ShapeManagerImpl::addShape( const ShapeSharedPtr& rShape ) +{ +ENSURE_OR_THROW( rShape, "ShapeManagerImpl::addShape(): invalid Shape" ); + +// add shape to XShape hash map +if( !maXShapeHash.insert( +XShapeHash::value_type( rShape->getXShape(), +rShape) ).second ) +{ +// entry already present, nothing to do +return; +} + +// add shape to appropriate layer +implAddShape( rShape ); +} + void ShapeManagerImpl::implRemoveShape( const ShapeSharedPtr& rShape ) { ENSURE_OR_THROW( rShape, "ShapeManagerImpl::implRemoveShape(): invalid Shape" ); diff --git a/slideshow/source/engine/slide/shapemanagerimpl.hxx b/slideshow/source/engine/slide/shapemanagerimpl.hxx index 05d94e2..108e58a 100644 --- a/slideshow/source/engine/slide/shapemanagerimpl.hxx +++ b/slideshow/source/engine/slide/shapemanagerimpl.hxx @@ -68,6 +68,11 @@ public: CursorManager& rCursorManager, const ShapeEventListenerMap& rGlobalListenersMap, const ShapeCursorMap&rGlobalCursorMap ); +/** Add the shape to this object + +This method adds a shape to the page. + */ +void addShape( const ShapeSharedPtr& rShape ); /** Enables event listening. diff --git a/slideshow/source/engine/slide/slideimpl.cxx b/slideshow/source/engine/slide/slideimpl.cxx index 4c7f294..7d7ef62 100644 --- a/slideshow/source/engine/slide/slideimpl.cxx +++ b/slideshow/source/engine/slide/slideimpl.cxx @@ -1049,15 +1049,15 @@ bool SlideImpl::loadShapes() 0, /* shape num starts at 0 */ true ); - /* mpLayerManager->addShape( -aMPShapesFunctor.importBackgroundShape() );*/ +mpShapeManager->addShape( +aMPShapesFunctor.importBackgroundShape() ); while( !aMPShapesFunctor.isImportDone() ) { ShapeSharedPtr const& rShape( aMPShapesFunctor.importShape() ); if( rShape ) - /* mpLayerManager->addShape( rShape );*/; +mpShapeManager->addShape( rShape );; } addPolygons(aMPShapesFunctor.getPolygons()); @@ -1102,7 +1102,7 @@ bool SlideImpl::loadShapes() ShapeSharedPtr const& rShape( aShapesFunctor.importShape() ); if( rShape ) -/*mpLayerManager->addShape( rShape );*/; +mpShapeManager->addShape( rShape );; } addPolygons(aShapesFunctor.getPolygons()); } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sc/source
sc/source/core/opencl/op_statistical.cxx |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit d9101e9416d9a285028ccb74895f6ba3964cce46 Author: Tor Lillqvist Date: Fri Mar 6 13:01:21 2015 +0200 Set #VALUE! error in COVAR() OpenCL implementation when appropriate Returning -DBL_MAX doesn't make sense. The traditional C++ implementation and other spreadsheet products return an error. Change-Id: I71117c0b1f113d31ad6eb0c1798b74f96b3a75de diff --git a/sc/source/core/opencl/op_statistical.cxx b/sc/source/core/opencl/op_statistical.cxx index e6fb8e6..0f3c1e8 100644 --- a/sc/source/core/opencl/op_statistical.cxx +++ b/sc/source/core/opencl/op_statistical.cxx @@ -7048,7 +7048,7 @@ void OpCovar::GenSlidingWindowFunction(std::stringstream& ss, ss << "}\n"; } ss << "if(cnt < 1) {\n"; -ss << "return -DBL_MAX;\n"; +ss << "return CreateDoubleError(errNoValue);\n"; ss << "}\n"; ss << "else {\n"; ss << "vMean0 = vSum0 / cnt;\n"; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'feature/tiled-editing' - include/LibreOfficeKit libreofficekit/source sw/source
include/LibreOfficeKit/LibreOfficeKitEnums.h |6 +++--- libreofficekit/source/gtk/lokdocview.c |2 +- sw/source/core/crsr/crsrsh.cxx | 16 sw/source/core/crsr/viscrs.cxx |6 -- 4 files changed, 12 insertions(+), 18 deletions(-) New commits: commit 718e663306d9f4eba45512d198ed173f440c3c59 Author: Miklos Vajna Date: Fri Mar 6 11:02:40 2015 +0100 sw: move LOK_CALLBACK_CURSOR_VISIBLE event from SwVisCrsr to SwCrsrShell This should fix the problem that LOK_CALLBACK_CURSOR_VISIBLE is emitted 2 times during every mouse click (hide, then show), while the motivation behind this callback is to just hide the blinking cursor for image selection, i.e. it's never emitted during normal text editing. Change-Id: Id2a2b1102589f8151f640af3fcb50b646d261275 diff --git a/include/LibreOfficeKit/LibreOfficeKitEnums.h b/include/LibreOfficeKit/LibreOfficeKitEnums.h index 1cb3da4..cc5a32b 100644 --- a/include/LibreOfficeKit/LibreOfficeKitEnums.h +++ b/include/LibreOfficeKit/LibreOfficeKitEnums.h @@ -83,9 +83,9 @@ typedef enum /** * The blinking text cursor is now visible or not. * - * Clients should assume that this is false initially and are expected to - * show a blinking cursor at the rectangle described by - * LOK_CALLBACK_INVALIDATE_VISIBLE_CURSOR once it becomes true. Payload is + * Clients should assume that this is true initially and are expected to + * hide the blinking cursor at the rectangle described by + * LOK_CALLBACK_INVALIDATE_VISIBLE_CURSOR once it becomes false. Payload is * either the "true" or the "false" string. */ LOK_CALLBACK_CURSOR_VISIBLE, diff --git a/libreofficekit/source/gtk/lokdocview.c b/libreofficekit/source/gtk/lokdocview.c index a6108bd..a6b2d1c 100644 --- a/libreofficekit/source/gtk/lokdocview.c +++ b/libreofficekit/source/gtk/lokdocview.c @@ -247,7 +247,7 @@ static void lok_docview_init( LOKDocView* pDocView ) pDocView->m_bEdit = FALSE; memset(&pDocView->m_aVisibleCursor, 0, sizeof(pDocView->m_aVisibleCursor)); pDocView->m_bCursorOverlayVisible = FALSE; -pDocView->m_bCursorVisible = FALSE; +pDocView->m_bCursorVisible = TRUE; pDocView->m_nLastButtonPressTime = 0; pDocView->m_nLastButtonReleaseTime = 0; pDocView->m_pTextSelectionRectangles = NULL; diff --git a/sw/source/core/crsr/crsrsh.cxx b/sw/source/core/crsr/crsrsh.cxx index 982a2ac..ef020fd 100644 --- a/sw/source/core/crsr/crsrsh.cxx +++ b/sw/source/core/crsr/crsrsh.cxx @@ -62,6 +62,7 @@ #include #include #include +#include #if defined(IOS) #include @@ -2119,10 +2120,10 @@ void SwCrsrShell::ShowCrsr() { m_bSVCrsrVis = true; m_pCurCrsr->SetShowTxtInputFldOverlay( true ); -#if defined(IOS) -// This was dummied out both for Android and for TiledLibreOffice (iOS) anyway -// touch_ui_show_keyboard(); -#endif + +if (isTiledRendering()) +libreOfficeKitCallback(LOK_CALLBACK_CURSOR_VISIBLE, OString::boolean(true).getStr()); + UpdateCrsr(); } } @@ -2136,10 +2137,9 @@ void SwCrsrShell::HideCrsr() SET_CURR_SHELL( this ); m_pCurCrsr->SetShowTxtInputFldOverlay( false ); m_pVisCrsr->Hide(); -#if defined(IOS) -// This was dummied out both for Android and for TiledLibreOffice (iOS) anyway -// touch_ui_hide_keyboard(); -#endif + +if (isTiledRendering()) +libreOfficeKitCallback(LOK_CALLBACK_CURSOR_VISIBLE, OString::boolean(false).getStr()); } } diff --git a/sw/source/core/crsr/viscrs.cxx b/sw/source/core/crsr/viscrs.cxx index 28f6a61..c0b4a33 100644 --- a/sw/source/core/crsr/viscrs.cxx +++ b/sw/source/core/crsr/viscrs.cxx @@ -93,16 +93,10 @@ void SwVisCrsr::Show() if( m_pCrsrShell->VisArea().IsOver( m_pCrsrShell->m_aCharRect ) || m_pCrsrShell->isTiledRendering() ) _SetPosAndShow(); } - -if (m_pCrsrShell->isTiledRendering()) -m_pCrsrShell->libreOfficeKitCallback(LOK_CALLBACK_CURSOR_VISIBLE, OString::boolean(true).getStr()); } void SwVisCrsr::Hide() { -if (m_pCrsrShell->isTiledRendering()) -m_pCrsrShell->libreOfficeKitCallback(LOK_CALLBACK_CURSOR_VISIBLE, OString::boolean(false).getStr()); - if( m_bIsVisible ) { m_bIsVisible = false; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'feature/tiled-editing' - 3 commits - android/experimental
android/experimental/LOAndroid3/src/java/org/libreoffice/LibreOfficeMainActivity.java |1 android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/LayerView.java | 347 -- 2 files changed, 174 insertions(+), 174 deletions(-) New commits: commit 6a7b05fb8c80786c9659aafbc6dd798ecf0d486e Author: Siqi Liu Date: Fri Mar 6 11:48:03 2015 +0100 add missing Activity import Change-Id: I892b66265b411ea6f727bdacf41b45de055b2a37 diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/LibreOfficeMainActivity.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/LibreOfficeMainActivity.java index 0634c1d..2f2eada 100644 --- a/android/experimental/LOAndroid3/src/java/org/libreoffice/LibreOfficeMainActivity.java +++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/LibreOfficeMainActivity.java @@ -1,5 +1,6 @@ package org.libreoffice; +import android.app.Activity; import android.app.AlertDialog; import android.content.ContentResolver; import android.content.Context; commit baa2330a321629c82ce2e18e63ace0f2b19ef606 Author: Siqi Liu Date: Fri Mar 6 11:47:21 2015 +0100 reapply changes to LayerView Change-Id: I597621a0a68cf484d5117a5f5b77c3d122b14822 diff --git a/android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/LayerView.java b/android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/LayerView.java index 3f0fb78..88d93ca 100644 --- a/android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/LayerView.java +++ b/android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/LayerView.java @@ -28,6 +28,7 @@ import android.widget.FrameLayout; import org.libreoffice.LibreOfficeMainActivity; import org.libreoffice.R; import org.mozilla.gecko.OnInterceptTouchListener; +import org.mozilla.gecko.OnSlideSwipeListener; /** * A view rendered by the layer compositor. @@ -110,6 +111,7 @@ public class LayerView extends FrameLayout { setFocusableInTouchMode(true); createGLThread(); +setOnTouchListener(new OnSlideSwipeListener(getContext(), mLayerClient)); } public void show() { commit d70dfd380684dbc9dbee55be11576905e40b5a34 Author: Siqi Liu Date: Fri Mar 6 11:39:43 2015 +0100 revert changes on LayerView Change-Id: I724a5bbc3dcb3372a3bf3810306658f4427b95a0 diff --git a/android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/LayerView.java b/android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/LayerView.java index c5b24fd..3f0fb78 100644 --- a/android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/LayerView.java +++ b/android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/LayerView.java @@ -28,7 +28,6 @@ import android.widget.FrameLayout; import org.libreoffice.LibreOfficeMainActivity; import org.libreoffice.R; import org.mozilla.gecko.OnInterceptTouchListener; -import org.mozilla.gecko.OnSlideSwipeListener; /** * A view rendered by the layer compositor. @@ -111,349 +110,347 @@ public class LayerView extends FrameLayout { setFocusableInTouchMode(true); createGLThread(); - -setOnTouchListener(new OnSlideSwipeListener(getContext(), mLayerClient)); } public void show() { -// Fix this if TextureView support is turned back on above -mSurfaceView.setVisibility(View.VISIBLE); +// Fix this if TextureView support is turned back on above +mSurfaceView.setVisibility(View.VISIBLE); } public void hide() { -// Fix this if TextureView support is turned back on above -mSurfaceView.setVisibility(View.INVISIBLE); +// Fix this if TextureView support is turned back on above +mSurfaceView.setVisibility(View.INVISIBLE); } public void destroy() { -if (mLayerClient != null) { -mLayerClient.destroy(); -} -if (mRenderer != null) { -mRenderer.destroy(); -} +if (mLayerClient != null) { +mLayerClient.destroy(); +} +if (mRenderer != null) { +mRenderer.destroy(); +} } public void setTouchIntercepter(final OnInterceptTouchListener touchIntercepter) { -// this gets run on the gecko thread, but for thread safety we want the assignment -// on the UI thread. -post(new Runnable() { -public void run() { -mTouchIntercepter = touchIntercepter; -} -}); +// this gets run on the gecko thread, but for thread safety we want the assignment +// on the UI thread. +post(new Runnable() { +public void run() { +mTouchIntercepter = touchIntercepter; +} +}); } public void setInputConnectionHandler(InputConnectionHandler inputConnectionHandler) { -
Crash test update
New crashtest update available at http://dev-builds.libreoffice.org/crashtest/b8ca219893a6e14bfea3cec5522532c144ad2fa6/ exportCrashes.csv Description: Binary data importCrash.csv Description: Binary data validationErrors.csv Description: Binary data ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: Branch 'feature/slideshow_onlySprites' - 2 commits - slideshow/source
slideshow/source/engine/slide/shapemanagerimpl.cxx | 136 - slideshow/source/engine/slide/shapemanagerimpl.hxx | 56 +++- slideshow/source/engine/slide/slideimpl.cxx| 40 +- 3 files changed, 167 insertions(+), 65 deletions(-) New commits: commit c4f5e1e9d1984fc3d3ca689a5615d9ead92a7bd6 Author: Michael Jaumann Date: Fri Mar 6 10:40:23 2015 + shape maps from LayerManager moved maps/ functionality to ShapeManager Change-Id: Iadb2c6f1b090b7ac384cb66c03fd5667e6c6971c diff --git a/slideshow/source/engine/slide/shapemanagerimpl.cxx b/slideshow/source/engine/slide/shapemanagerimpl.cxx index 71fc7f1..f364b2d 100644 --- a/slideshow/source/engine/slide/shapemanagerimpl.cxx +++ b/slideshow/source/engine/slide/shapemanagerimpl.cxx @@ -40,6 +40,9 @@ ShapeManagerImpl::ShapeManagerImpl( EventMultiplexer& rMultiplexer, CursorManager& rCursorManager, const ShapeEventListenerMap& rGlobalListenersMap, const ShapeCursorMap& rGlobalCursorMap ): +maXShapeHash( 101 ), +maAllShapes(), +maUpdateShapes(), mrMultiplexer(rMultiplexer), mrCursorManager(rCursorManager), mrGlobalListenersMap(rGlobalListenersMap), @@ -288,10 +291,14 @@ void ShapeManagerImpl::notifyShapeUpdate( const ShapeSharedPtr& rShape ) ShapeSharedPtr ShapeManagerImpl::lookupShape( uno::Reference< drawing::XShape > const & xShape ) const { - /* if( mpLayerManager ) -return mpLayerManager->lookupShape(xShape);*/ +ENSURE_OR_THROW( xShape.is(), "LayerManager::lookupShape(): invalid Shape" ); -return ShapeSharedPtr(); +const XShapeHash::const_iterator aIter( maXShapeHash.find( xShape )); +if( aIter == maXShapeHash.end() ) + return ShapeSharedPtr(); // not found + +// found, return data part of entry pair. +return aIter->second; } void ShapeManagerImpl::addHyperlinkArea( const HyperlinkAreaSharedPtr& rArea ) @@ -375,6 +382,54 @@ bool ShapeManagerImpl::listenerAdded( return true; } +void ShapeManagerImpl::implAddShape( const ShapeSharedPtr& rShape ) +{ +ENSURE_OR_THROW( rShape, "ShapeManagerImpl::implAddShape(): invalid Shape" ); + +LayerShapeMap::value_type aValue (rShape, LayerWeakPtr()); + +OSL_ASSERT( maAllShapes.find(rShape) == maAllShapes.end() ); // shape must not be added already + +maAllShapes.insert(aValue); + +// update shape, it's just added and not yet painted +if( rShape->isVisible() ) +notifyShapeUpdate( rShape ); +} + +void ShapeManagerImpl::implRemoveShape( const ShapeSharedPtr& rShape ) +{ +ENSURE_OR_THROW( rShape, "ShapeManagerImpl::implRemoveShape(): invalid Shape" ); + +const LayerShapeMap::iterator aShapeEntry( maAllShapes.find(rShape) ); + +if( aShapeEntry == maAllShapes.end() ) +return; + +const bool bShapeUpdateNotified = maUpdateShapes.erase( rShape ) != 0; + +// Enter shape area to the update area, but only if shape +// is visible and not in sprite mode (otherwise, updating +// the area doesn't do actual harm, but costs time) +// Actually, also add it if it was listed in +// maUpdateShapes (might have just gone invisible). +if( bShapeUpdateNotified || +(rShape->isVisible() && + !rShape->isBackgroundDetached()) ) +{ +LayerSharedPtr pLayer = aShapeEntry->second.lock(); +if( pLayer ) +{ +// store area early, once the shape is removed from +// the layers, it no longer has any view references +pLayer->addUpdateRange( rShape->getUpdateArea() ); +} +} + +rShape->clearAllViewLayers(); +maAllShapes.erase( aShapeEntry ); +} + bool ShapeManagerImpl::listenerRemoved( const uno::Reference& /*xListener*/, const uno::Reference& xShape ) diff --git a/slideshow/source/engine/slide/shapemanagerimpl.hxx b/slideshow/source/engine/slide/shapemanagerimpl.hxx index 4f5f2f1..05d94e2 100644 --- a/slideshow/source/engine/slide/shapemanagerimpl.hxx +++ b/slideshow/source/engine/slide/shapemanagerimpl.hxx @@ -88,8 +88,20 @@ public: virtual void dispose() SAL_OVERRIDE; +virtual ShapeSharedPtr lookupShape( +::com::sun::star::uno::Reference< + ::com::sun::star::drawing::XShape > const & xShape ) const SAL_OVERRIDE; + private: +class ShapeComparator +{ +public: +bool operator() (const ShapeSharedPtr& rpS1, const ShapeSharedPtr& rpS2 ) const +{ +return Shape::lessThanShape::compare(rpS1.get(), rpS2.get()); +} +}; // MouseEventHandler interface @@ -121,9 +133,7 @@ private: virtual void enterAnimationMode( const AnimatableShapeSharedPtr& rShape ) SAL_OVERRIDE; virtual void leaveAnimationMode( const AnimatableShapeSharedPtr& rShape ) SAL_OVERRIDE; virtual vo
[Libreoffice-commits] core.git: include/sfx2 sc/inc sc/source svx/source
include/sfx2/sidebar/IContextChangeReceiver.hxx |2 +- sc/inc/afmtuno.hxx |3 +-- sc/inc/cellsuno.hxx |6 ++ sc/inc/dapiuno.hxx |3 +-- sc/inc/datauno.hxx |3 +-- sc/inc/docuno.hxx|3 +-- sc/inc/fmtuno.hxx|6 ++ sc/inc/srchuno.hxx |3 +-- sc/inc/styleuno.hxx |3 +-- sc/inc/textuno.hxx | 12 sc/source/ui/sidebar/AlignmentPropertyPanel.cxx |8 +++- sc/source/ui/sidebar/AlignmentPropertyPanel.hxx |2 +- sc/source/ui/sidebar/CellAppearancePropertyPanel.cxx |9 +++-- sc/source/ui/sidebar/CellAppearancePropertyPanel.hxx |2 +- sc/source/ui/sidebar/NumberFormatPropertyPanel.cxx |8 +++- sc/source/ui/sidebar/NumberFormatPropertyPanel.hxx |2 +- sc/source/ui/unoobj/afmtuno.cxx |5 ++--- sc/source/ui/unoobj/cellsuno.cxx |8 sc/source/ui/unoobj/dapiuno.cxx | 15 +++ sc/source/ui/unoobj/datauno.cxx |5 ++--- sc/source/ui/unoobj/docuno.cxx |4 ++-- sc/source/ui/unoobj/fmtuno.cxx | 10 -- sc/source/ui/unoobj/srchuno.cxx |5 ++--- sc/source/ui/unoobj/styleuno.cxx |5 ++--- sc/source/ui/unoobj/textuno.cxx | 16 svx/source/sidebar/paragraph/ParaPropertyPanel.cxx |6 +++--- svx/source/sidebar/paragraph/ParaPropertyPanel.hxx |2 +- svx/source/sidebar/possize/PosSizePropertyPanel.cxx |6 +++--- svx/source/sidebar/possize/PosSizePropertyPanel.hxx |2 +- svx/source/sidebar/text/TextPropertyPanel.cxx|6 +++--- svx/source/sidebar/text/TextPropertyPanel.hxx|2 +- 31 files changed, 72 insertions(+), 100 deletions(-) New commits: commit 3f6f21e6e7721bbca13c1e632c0247939538ba82 Author: Caolán McNamara Date: Thu Mar 5 20:48:50 2015 + V801: Decreased performance Change-Id: Ia58f19c7121dc8a835436bcefc7fd1e3789407db diff --git a/include/sfx2/sidebar/IContextChangeReceiver.hxx b/include/sfx2/sidebar/IContextChangeReceiver.hxx index cf6e159..ea5c24a 100644 --- a/include/sfx2/sidebar/IContextChangeReceiver.hxx +++ b/include/sfx2/sidebar/IContextChangeReceiver.hxx @@ -31,7 +31,7 @@ class SFX2_DLLPUBLIC IContextChangeReceiver public: virtual ~IContextChangeReceiver (); -virtual void HandleContextChange (const EnumContext aContext) = 0; +virtual void HandleContextChange (const EnumContext& rContext) = 0; }; } } // end of namespace ::sd::sidebar diff --git a/sc/inc/afmtuno.hxx b/sc/inc/afmtuno.hxx index 8ebdb14..5e1da0e 100644 --- a/sc/inc/afmtuno.hxx +++ b/sc/inc/afmtuno.hxx @@ -224,8 +224,7 @@ public: throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE; static const ::com::sun::star::uno::Sequence& getUnoTunnelId(); -static ScAutoFormatObj* getImplementation( const ::com::sun::star::uno::Reference< -::com::sun::star::uno::XInterface> xObj ); +static ScAutoFormatObj* getImplementation(const css::uno::Reference& rObj); }; class ScAutoFormatFieldObj : public ::cppu::WeakImplHelper2< diff --git a/sc/inc/cellsuno.hxx b/sc/inc/cellsuno.hxx index ba9dedb..a4fc6fa 100644 --- a/sc/inc/cellsuno.hxx +++ b/sc/inc/cellsuno.hxx @@ -492,8 +492,7 @@ public: throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE; static const com::sun::star::uno::Sequence& getUnoTunnelId(); -static ScCellRangesBase* getImplementation( const com::sun::star::uno::Reference< -com::sun::star::uno::XInterface> xObj ); +static ScCellRangesBase* getImplementation(const css::uno::Reference& rObj); // XTypeProvider virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes() @@ -1259,8 +1258,7 @@ public: throw(::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE; static const com::sun::star::uno::Sequence& getUnoTunnelId(); -static ScTableSheetObj* getImplementation( const com::sun::star::uno::Reference< -com::sun::star::uno::XInterface> xObj ); +static ScTableSheetObj* getImplementation(const css::uno::Reference< com::sun::star::uno::XInterface>& rObj); // XTypeProvider virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes() diff --git a/sc/inc/dapiuno.hxx b/sc/i
[Libreoffice-commits] core.git: 4 commits - formula/source officecfg/registry sc/source
formula/source/core/api/vectortoken.cxx | 10 -- officecfg/registry/schema/org/openoffice/Office/Calc.xcs |2 +- sc/source/core/data/grouptokenconverter.cxx | 12 sc/source/core/opencl/op_statistical.cxx |2 +- sc/source/core/tool/calcconfig.cxx |5 + 5 files changed, 27 insertions(+), 4 deletions(-) New commits: commit 4cd7b4ab8aeaf61f5e30e4b63e039b7bb9519e85 Author: Tor Lillqvist Date: Fri Mar 6 11:31:18 2015 +0200 Set #DIV/0! error in VAR() OpenCL implementation when appropriate Returning DBL_MAX doesn't make sense. The traditional C++ implementation and other spreadsheet products return an error. Change-Id: I8189c3ecf4aa7b1df00ec2fd8b91030085848bf4 diff --git a/sc/source/core/opencl/op_statistical.cxx b/sc/source/core/opencl/op_statistical.cxx index d47c446..e6fb8e6 100644 --- a/sc/source/core/opencl/op_statistical.cxx +++ b/sc/source/core/opencl/op_statistical.cxx @@ -194,7 +194,7 @@ void OpVar::GenSlidingWindowFunction(std::stringstream &ss, } } ss << "if (fCount <= 1.0)\n"; -ss << "return DBL_MAX;\n"; +ss << "return CreateDoubleError(errDivisionByZero);\n"; ss << "else\n"; ss << "return vSum * pow(fCount - 1.0,-1.0);\n"; ss << "}\n"; commit fa4ce83f567cfb735bdfd2319458585ded4cd554 Author: Tor Lillqvist Date: Fri Mar 6 11:21:02 2015 +0200 Don't return negative values from ScGroupTokenConverter::trimLength() Surely it doesn't make sense, but we should return zero instead? At the two call sites, there are tests against a zero having been returned, but not against a negative value. And the return value is even passed as the nArrayLength parameter to a formula::DoubleVectorRefToken constructor, which is of type size_t, thus unsigned. Passing for instance -4 to it ends up being interpreted as 18446744073709551612, which has fun consequences. Change-Id: Ifca97cd4bae8e921345bcf9d0ca6bb040e3c3b79 diff --git a/sc/source/core/data/grouptokenconverter.cxx b/sc/source/core/data/grouptokenconverter.cxx index bfb6de3..da3964c 100644 --- a/sc/source/core/data/grouptokenconverter.cxx +++ b/sc/source/core/data/grouptokenconverter.cxx @@ -63,7 +63,19 @@ SCROW ScGroupTokenConverter::trimLength(SCTAB nTab, SCCOL nCol1, SCCOL nCol2, SC SCROW nLastRow = nRow + nRowLen - 1; // current last row. nLastRow = mrDoc.GetLastDataRow(nTab, nCol1, nCol2, nLastRow); if (nLastRow < (nRow + nRowLen - 1)) +{ +// This can end up negative! Was that the original intent, or +// is it accidental? Was it not like that originally but the +// surrounding conditions changed? nRowLen = nLastRow - nRow + 1; +// Anyway, let's assume it doesn't make sense to return a +// negative value here. But should we then return 0 or 1? In +// the "Column is empty" case below, we return 1, why!? And, +// at the callsites there are tests for a zero value returned +// from this function (but not for a negative one). +if (nRowLen < 0) +nRowLen = 0; +} else if (nLastRow == 0) // Column is empty. nRowLen = 1; commit abbd86925dab2621f38c85d8be8772ca56f037f6 Author: Tor Lillqvist Date: Fri Mar 6 11:35:11 2015 +0200 Add a few SAL_INFOs Change-Id: I252987d6c5e5da56a83742c96b4e86abbb7108c6 diff --git a/formula/source/core/api/vectortoken.cxx b/formula/source/core/api/vectortoken.cxx index b0077aa..99f7dec 100644 --- a/formula/source/core/api/vectortoken.cxx +++ b/formula/source/core/api/vectortoken.cxx @@ -42,7 +42,10 @@ bool VectorRefArray::isValid() const } SingleVectorRefToken::SingleVectorRefToken( const VectorRefArray& rArray, size_t nReqLength, size_t nArrayLength ) : -FormulaToken(svSingleVectorRef, ocPush), maArray(rArray), mnRequestedLength(nReqLength), mnArrayLength(nArrayLength) {} +FormulaToken(svSingleVectorRef, ocPush), maArray(rArray), mnRequestedLength(nReqLength), mnArrayLength(nArrayLength) +{ +SAL_INFO("formula.core", "Created SingleVectorRefToken nReqLength=" << nReqLength << " nArrayLength=" << nArrayLength); +} FormulaToken* SingleVectorRefToken::Clone() const { @@ -64,7 +67,10 @@ DoubleVectorRefToken::DoubleVectorRefToken( size_t nRefRowSize, bool bStartFixed, bool bEndFixed ) : FormulaToken(svDoubleVectorRef, ocPush), maArrays(rArrays), mnRequestedLength(nReqLength), mnArrayLength(nArrayLength), -mnRefRowSize(nRefRowSize), mbStartFixed(bStartFixed), mbEndFixed(bEndFixed) {} +mnRefRowSize(nRefRowSize), mbStartFixed(bStartFixed), mbEndFixed(bEndFixed) +{ +SAL_INFO("formula.core", "Created DoubleVectorRefToken nReqLength=" << nReqLength << " nArrayLength=" << nArrayLength); +} FormulaToken* DoubleVectorRefToken::Clone() const { commit 0ab2973f84234dccf9cc22ffd179039065e9
[Libreoffice-commits] core.git: vcl/source
vcl/source/window/decoview.cxx | 10 ++ 1 file changed, 6 insertions(+), 4 deletions(-) New commits: commit 9a93277b869caca4db054385db59fc7b7d541570 Author: Miklos Vajna Date: Fri Mar 6 10:13:20 2015 +0100 vcl: fix Android build Change-Id: Ib71d74d4b66b02a6a680b5ab0c905b987d59cf7f diff --git a/vcl/source/window/decoview.cxx b/vcl/source/window/decoview.cxx index 8545e87..c04c430 100644 --- a/vcl/source/window/decoview.cxx +++ b/vcl/source/window/decoview.cxx @@ -28,6 +28,8 @@ BUTTON_DRAW_CHECKED | \ BUTTON_DRAW_HIGHLIGHT) +using namespace std; + namespace { long AdjustRectToSquare( Rectangle &rRect ) @@ -,15 +1113,15 @@ void DecorationView::DrawHandle(const Rectangle& rRect, bool bVertical) if (bVertical) { aLocation = Rectangle(nHalfWidth - nRadius, - std::round(fDistance * i) - nRadius, + round(fDistance * i) - nRadius, nHalfWidth + nRadius, - std::round(fDistance * i) + nRadius); + round(fDistance * i) + nRadius); } else { -aLocation = Rectangle(std::round(fDistance * i) - nRadius, +aLocation = Rectangle(round(fDistance * i) - nRadius, nHalfHeight - nRadius, - std::round(fDistance * i) + nRadius, + round(fDistance * i) + nRadius, nHalfHeight + nRadius); } mpOutDev->DrawEllipse(aLocation); ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sw/source
sw/source/filter/ww8/docxattributeoutput.cxx | 18 ++ sw/source/filter/ww8/docxattributeoutput.hxx |2 +- 2 files changed, 7 insertions(+), 13 deletions(-) New commits: commit 352c40dd5ce715f6ae654b8dedf2fc2145275a1d Author: Miklos Vajna Date: Fri Mar 6 09:17:19 2015 +0100 DocxAttributeOutput::m_pCharLangAttrList: use unique_ptr Change-Id: I43b59b4359a010e7b64df5825ae3ce845e47fc4b diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx index 5b6793c..0c4bf84 100644 --- a/sw/source/filter/ww8/docxattributeoutput.cxx +++ b/sw/source/filter/ww8/docxattributeoutput.cxx @@ -927,8 +927,7 @@ void DocxAttributeOutput::EndParagraphProperties(const SfxItemSet& rParagraphMar // we are done exporting the redline attributes. std::unique_ptr pFontsAttrList_Original(m_pFontsAttrList.release()); std::unique_ptr pEastAsianLayoutAttrList_Original(m_pEastAsianLayoutAttrList.release()); -::sax_fastparser::FastAttributeList *pCharLangAttrList_Original= m_pCharLangAttrList; -m_pCharLangAttrList= NULL; +std::unique_ptr pCharLangAttrList_Original(m_pCharLangAttrList.release()); lcl_writeParagraphMarkerProperties(*this, rParagraphMarkerProperties); @@ -938,7 +937,7 @@ void DocxAttributeOutput::EndParagraphProperties(const SfxItemSet& rParagraphMar // Revert back the original values that were stored in 'm_pFontsAttrList', 'm_pEastAsianLayoutAttrList', 'm_pCharLangAttrList' m_pFontsAttrList.reset(pFontsAttrList_Original.release()); m_pEastAsianLayoutAttrList.reset(pEastAsianLayoutAttrList_Original.release()); -m_pCharLangAttrList= pCharLangAttrList_Original; +m_pCharLangAttrList.reset(pCharLangAttrList_Original.release()); if ( pRedlineParagraphMarkerDeleted ) { @@ -1643,7 +1642,7 @@ void DocxAttributeOutput::InitCollectedRunProperties() { m_pFontsAttrList = 0; m_pEastAsianLayoutAttrList = 0; -m_pCharLangAttrList = NULL; +m_pCharLangAttrList = 0; // Write the elements in the spec order static const sal_Int32 aOrder[] = @@ -1900,9 +1899,7 @@ void DocxAttributeOutput::WriteCollectedRunProperties() if ( m_pCharLangAttrList ) { -XFastAttributeListRef xAttrList( m_pCharLangAttrList ); -m_pCharLangAttrList = NULL; - +XFastAttributeListRef xAttrList( m_pCharLangAttrList.release() ); m_pSerializer->singleElementNS( XML_w, XML_lang, xAttrList ); } @@ -2341,8 +2338,7 @@ void DocxAttributeOutput::Redline( const SwRedlineData* pRedlineData) // we are done exporting the redline attributes. std::unique_ptr pFontsAttrList_Original(m_pFontsAttrList.release()); std::unique_ptr pEastAsianLayoutAttrList_Original(m_pEastAsianLayoutAttrList.release()); -::sax_fastparser::FastAttributeList *pCharLangAttrList_Original= m_pCharLangAttrList; -m_pCharLangAttrList= NULL; +std::unique_ptr pCharLangAttrList_Original(m_pCharLangAttrList.release()); // Output the redline item set m_rExport.OutputItemSet( *pChangesSet, false, true, i18n::ScriptType::LATIN, m_rExport.mbExportModeRTF ); @@ -2353,7 +2349,7 @@ void DocxAttributeOutput::Redline( const SwRedlineData* pRedlineData) // Revert back the original values that were stored in 'm_pFontsAttrList', 'm_pEastAsianLayoutAttrList', 'm_pCharLangAttrList' m_pFontsAttrList.reset(pFontsAttrList_Original.release()); m_pEastAsianLayoutAttrList.reset(pEastAsianLayoutAttrList_Original.release()); -m_pCharLangAttrList= pCharLangAttrList_Original; + m_pCharLangAttrList.reset(pCharLangAttrList_Original.release()); m_pSerializer->endElementNS( XML_w, XML_rPr ); @@ -8286,7 +8282,6 @@ DocxAttributeOutput::DocxAttributeOutput( DocxExport &rExport, FSHelperPtr pSeri : m_rExport( rExport ), m_pSerializer( pSerializer ), m_rDrawingML( *pDrawingML ), - m_pCharLangAttrList( NULL ), m_pSectionSpacingAttrList( NULL ), m_pParagraphSpacingAttrList( NULL ), m_pHyperlinkAttrList( NULL ), @@ -8359,7 +8354,6 @@ DocxAttributeOutput::DocxAttributeOutput( DocxExport &rExport, FSHelperPtr pSeri DocxAttributeOutput::~DocxAttributeOutput() { -delete m_pCharLangAttrList, m_pCharLangAttrList = NULL; delete m_pSectionSpacingAttrList, m_pSectionSpacingAttrList = NULL; delete m_pParagraphSpacingAttrList, m_pParagraphSpacingAttrList = NULL; delete m_pHyperlinkAttrList, m_pHyperlinkAttrList = NULL; diff --git a/sw/source/filter/ww8/docxattributeoutput.hxx b/sw/source/filter/ww8/docxattributeoutput.hxx index 950bda6..2387b3a 100644 --- a/sw/source/filter/ww8/docxattributeoutput.hxx +++ b/sw/sour
Re: Bugs with Backtrace but Not Reproduced
Le 06/03/2015 05:52, Joel Madero a écrit : Hi Joel, > > I'm curious if anyone has any thoughts about bugs that have backtraces > but QA has been unable to repro. Should these just be pushed to NEW ? > > Currently there are 8 UNCONFIRMED crashers - at least one or two of > those have backtraces but have had other members of QA say they cannot > reproduce. > Got a link for those issues handy ? Alex ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice