configure.ac | 2 - dtrans/source/win32/dtobj/XTDataObject.cxx | 38 ----------------------------- dtrans/source/win32/dtobj/XTDataObject.hxx | 3 -- include/vcl/svapp.hxx | 4 --- sc/source/core/data/document10.cxx | 7 +++-- sc/source/ui/view/viewfun2.cxx | 12 ++++++--- toolkit/source/awt/asynccallback.cxx | 3 +- 7 files changed, 18 insertions(+), 51 deletions(-)
New commits: commit e91d2c2d59b035e40bdefac5fe06fb210180ed86 Author: Andras Timar <andras.ti...@collabora.com> Date: Wed Mar 1 16:13:15 2017 +0100 Bump version to 5.1-21 Change-Id: I39c14759e6b974e08af9a4c1781fc2286078b74c diff --git a/configure.ac b/configure.ac index b1b6ee0..cc7599f 100644 --- a/configure.ac +++ b/configure.ac @@ -9,7 +9,7 @@ dnl in order to create a configure script. # several non-alphanumeric characters, those are split off and used only for the # ABOUTBOXPRODUCTVERSIONSUFFIX in openoffice.lst. Why that is necessary, no idea. -AC_INIT([Collabora Office],[5.1.10.20],[],[],[https://collaboraoffice.com/]) +AC_INIT([Collabora Office],[5.1.10.21],[],[],[https://collaboraoffice.com/]) AC_PREREQ([2.59]) commit d063db2f6dc3e6f36ec53cd5d7f4c1ed1095774c Author: Markus Mohrhard <markus.mohrh...@googlemail.com> Date: Mon Sep 19 17:18:21 2016 +0200 tdf#100393, handle copying one cell to multiple cols with cond format The same fix has been applied for rows already. Change-Id: I77300680a657fb874d07641fbae928eb6c210acd (cherry picked from commit 3a9917b66d6820ec9f2844f8292a46d8b0b9180b) diff --git a/sc/source/core/data/document10.cxx b/sc/source/core/data/document10.cxx index 99bc8a2..a5e95a37 100644 --- a/sc/source/core/data/document10.cxx +++ b/sc/source/core/data/document10.cxx @@ -125,8 +125,11 @@ bool ScDocument::CopyOneCellFromClip( if (rCxt.getInsertFlag() & InsertDeleteFlags::ATTRIB) for (SCROW nRow = nRow1; nRow <= nRow2; ++nRow) { - maTabs[i]->CopyConditionalFormat(nCol1, nRow, nCol2, nRow, nCol1 - aClipRange.aStart.Col(), - nRow - aClipRange.aStart.Row(), pSrcTab); + for (SCCOL nCol = nCol1; nCol <= nCol2; ++nCol) + { + maTabs[i]->CopyConditionalFormat(nCol, nRow, nCol, nRow, nCol - aClipRange.aStart.Col(), + nRow - aClipRange.aStart.Row(), pSrcTab); + } } } commit 38903acb970cf5d6ef10b47b65f996dd266d6d72 Author: Laurent Balland-Poirier <laurent.balland-poir...@laposte.net> Date: Wed Jul 20 20:27:23 2016 +0200 tdf#90943 Don't ask to move cells if they are empty During merge of cells, test of empty cells was wrong. Test of first column should not be done if there is only 1 row Change-Id: If8011f3e6d6e9006d242a8c2ef0fcb2ce12180ad Reviewed-on: https://gerrit.libreoffice.org/27354 Reviewed-by: Eike Rathke <er...@redhat.com> Tested-by: Eike Rathke <er...@redhat.com> (cherry picked from commit 0baeea95f38a5cdb19936290c69d33541274ad41) diff --git a/sc/source/ui/view/viewfun2.cxx b/sc/source/ui/view/viewfun2.cxx index 273b290..3e40098 100644 --- a/sc/source/ui/view/viewfun2.cxx +++ b/sc/source/ui/view/viewfun2.cxx @@ -1063,9 +1063,15 @@ bool ScViewFunc::MergeCells( bool bApi, bool& rDoContents, bool bRecord, bool bC SCTAB i = *itr; aMergeOption.maTabs.insert(i); - if (!rDoc.IsBlockEmpty(i, nStartCol, nStartRow+1, nStartCol, nEndRow) || - !rDoc.IsBlockEmpty(i, nStartCol+1, nStartRow, nEndCol, nEndRow)) - bAskDialog = true; + if ( nEndRow == nStartRow ) + { + if (!rDoc.IsBlockEmpty(i, nStartCol+1, nStartRow, nEndCol, nEndRow)) + bAskDialog = true; + } + else + if (!rDoc.IsBlockEmpty(i, nStartCol, nStartRow+1, nStartCol, nEndRow) || + !rDoc.IsBlockEmpty(i, nStartCol+1, nStartRow, nEndCol, nEndRow)) + bAskDialog = true; } bool bOk = true; commit 0759c5973cf7be07789f21204540f62594224b86 Author: Andras Timar <andras.ti...@collabora.com> Date: Wed Mar 1 16:11:53 2017 +0100 Revert "tdf#103852 avoid clipboard deadlock" This reverts commit 56b7eb743e82c1e12bc91d73f526e705f2c70b39. diff --git a/dtrans/source/win32/dtobj/XTDataObject.cxx b/dtrans/source/win32/dtobj/XTDataObject.cxx index d36328a..3c8a937 100644 --- a/dtrans/source/win32/dtobj/XTDataObject.cxx +++ b/dtrans/source/win32/dtobj/XTDataObject.cxx @@ -25,11 +25,8 @@ #include "DTransHelper.hxx" #include "TxtCnvtHlp.hxx" #include <com/sun/star/datatransfer/clipboard/XClipboardEx.hpp> -#include "com/sun/star/awt/AsyncCallback.hpp" -#include "com/sun/star/awt/XCallback.hpp" #include "FmtFilter.hxx" #include <comphelper/processfactory.hxx> -#include <cppuhelper/implbase.hxx> #if defined _MSC_VER #pragma warning(push,1) @@ -55,33 +52,6 @@ using namespace com::sun::star::datatransfer::clipboard; using namespace com::sun::star::uno; using namespace com::sun::star::lang; -namespace -{ - -/** - We need to destroy XTransferable in the main thread to avoid dead lock - when locking in the clipboard thread. So we transfer the ownership of the - XTransferable reference to this object and release it when the callback - is executed in main thread. -*/ -class AsyncDereference : public cppu::WeakImplHelper<css::awt::XCallback> -{ - Reference<XTransferable> maTransferable; - -public: - AsyncDereference(css::uno::Reference<css::datatransfer::XTransferable> const & rTransferable) - : maTransferable(rTransferable) - {} - - virtual void SAL_CALL notify(css::uno::Any const &) - throw (css::uno::RuntimeException, std::exception) override - { - maTransferable.set(nullptr); - } -}; - -} - // a helper class that will be thrown by the function validateFormatEtc class CInvalidFormatEtcException @@ -97,20 +67,12 @@ CXTDataObject::CXTDataObject( const Reference< XComponentContext >& rxContext, const Reference< XTransferable >& aXTransferable ) : m_nRefCnt( 0 ) , m_XTransferable( aXTransferable ) - , m_XComponentContext( rxContext ) , m_bFormatEtcContainerInitialized( sal_False ) , m_DataFormatTranslator( rxContext ) , m_FormatRegistrar( rxContext, m_DataFormatTranslator ) { } -CXTDataObject::~CXTDataObject() -{ - css::awt::AsyncCallback::create(m_XComponentContext)->addCallback( - new AsyncDereference(m_XTransferable), - css::uno::Any()); -} - // IUnknown->QueryInterface STDMETHODIMP CXTDataObject::QueryInterface( REFIID iid, LPVOID* ppvObject ) diff --git a/dtrans/source/win32/dtobj/XTDataObject.hxx b/dtrans/source/win32/dtobj/XTDataObject.hxx index f9e98e8..3d8d71c 100644 --- a/dtrans/source/win32/dtobj/XTDataObject.hxx +++ b/dtrans/source/win32/dtobj/XTDataObject.hxx @@ -64,7 +64,7 @@ class CXTDataObject : public IDataObject public: CXTDataObject( const css::uno::Reference< css::uno::XComponentContext >& rxContext, const css::uno::Reference< css::datatransfer::XTransferable >& aXTransferable ); - virtual ~CXTDataObject(); + virtual ~CXTDataObject() {} // ole interface implementation @@ -118,7 +118,6 @@ private: private: LONG m_nRefCnt; css::uno::Reference< css::datatransfer::XTransferable > m_XTransferable; - css::uno::Reference< css::uno::XComponentContext> m_XComponentContext; CFormatEtcContainer m_FormatEtcContainer; sal_Bool m_bFormatEtcContainerInitialized; CDataFormatTranslator m_DataFormatTranslator; diff --git a/include/vcl/svapp.hxx b/include/vcl/svapp.hxx index 7ae4da4..c31bf89 100644 --- a/include/vcl/svapp.hxx +++ b/include/vcl/svapp.hxx @@ -782,13 +782,9 @@ public: User events allow for the deferreal of work to later in the main-loop - at idle. - Execution of the deferred work is thread-safe which means all the tasks are executed - serially, so no thread-safety locks between tasks are necessary. - @param rLink Link to event callback function @param pCaller Pointer to data sent to the event by the caller. Optional. @param bReferenceLink If true - hold a VclPtr<> reference on the Link's instance. - Taking the reference is guarded by a SolarMutexGuard. @return the event ID used to post the event. */ diff --git a/toolkit/source/awt/asynccallback.cxx b/toolkit/source/awt/asynccallback.cxx index 26239ab..62ebe1e 100644 --- a/toolkit/source/awt/asynccallback.cxx +++ b/toolkit/source/awt/asynccallback.cxx @@ -88,7 +88,8 @@ void SAL_CALL AsyncCallback::addCallback(const css::uno::Reference< css::awt::XC { if ( Application::IsInMain() ) { - // NOTE: We don't need SolarMutexGuard here as Application::PostUserEvent is thread-safe + SolarMutexGuard aSolarGuard; + CallbackData* pCallbackData = new CallbackData( xCallback, aData ); Application::PostUserEvent( LINK( this, AsyncCallback, Notify_Impl ), pCallbackData ); } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits