[Libreoffice-commits] core.git: sw/source
sw/source/core/fields/cellfml.cxx | 126 - sw/source/core/fields/chpfld.cxx | 106 ++--- sw/source/core/fields/dbfld.cxx | 26 ++--- sw/source/core/fields/ddefld.cxx | 26 ++--- sw/source/core/fields/docufld.cxx | 152 +++--- sw/source/core/fields/expfld.cxx | 58 +-- sw/source/core/fields/reffld.cxx | 190 +++--- sw/source/core/fields/textapi.cxx | 22 ++-- sw/source/core/fields/usrfld.cxx | 32 +++--- 9 files changed, 369 insertions(+), 369 deletions(-) New commits: commit 197e11313b139c23b71bd949c3769d506610bc83 Author: Noel Grandin AuthorDate: Thu Jul 30 10:34:53 2020 +0200 Commit: Noel Grandin CommitDate: Sat Aug 1 09:19:16 2020 +0200 loplugin:flatten in sw/core/fields Change-Id: I42f9dd59300f215b6d8ff9f73a9f6893dbb9a8be Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99899 Tested-by: Jenkins Reviewed-by: Noel Grandin diff --git a/sw/source/core/fields/cellfml.cxx b/sw/source/core/fields/cellfml.cxx index db2375997e78..755d81f23fcc 100644 --- a/sw/source/core/fields/cellfml.cxx +++ b/sw/source/core/fields/cellfml.cxx @@ -946,42 +946,42 @@ void SwTableFormula::GetBoxes( const SwTableBox& rSttBox, const SwTable* pTable = pStt->FindTabFrame()->GetTable(); // filter headline boxes -if( pTable->GetRowsToRepeat() > 0 ) -{ -do {// middle-check loop -const SwTableLine* pLine = rSttBox.GetUpper(); -while( pLine->GetUpper() ) -pLine = pLine->GetUpper()->GetUpper(); +if( pTable->GetRowsToRepeat() <= 0 ) +return; -if( pTable->IsHeadline( *pLine ) ) -break; // headline in this area! +do {// middle-check loop +const SwTableLine* pLine = rSttBox.GetUpper(); +while( pLine->GetUpper() ) +pLine = pLine->GetUpper()->GetUpper(); -// maybe start and end are swapped -pLine = rEndBox.GetUpper(); -while ( pLine->GetUpper() ) -pLine = pLine->GetUpper()->GetUpper(); +if( pTable->IsHeadline( *pLine ) ) +break; // headline in this area! -if( pTable->IsHeadline( *pLine ) ) -break; // headline in this area! +// maybe start and end are swapped +pLine = rEndBox.GetUpper(); +while ( pLine->GetUpper() ) +pLine = pLine->GetUpper()->GetUpper(); -const SwTabFrame *pStartTable = pStt->FindTabFrame(); -const SwTabFrame *pEndTable = pEnd->FindTabFrame(); +if( pTable->IsHeadline( *pLine ) ) +break; // headline in this area! -if (pStartTable == pEndTable) // no split table -break; +const SwTabFrame *pStartTable = pStt->FindTabFrame(); +const SwTabFrame *pEndTable = pEnd->FindTabFrame(); -// then remove table headers -for (size_t n = 0; n < rBoxes.size(); ++n) -{ -pLine = rBoxes[n]->GetUpper(); -while( pLine->GetUpper() ) -pLine = pLine->GetUpper()->GetUpper(); +if (pStartTable == pEndTable) // no split table +break; -if( pTable->IsHeadline( *pLine ) ) -rBoxes.erase( rBoxes.begin() + n-- ); -} -} while( false ); -} +// then remove table headers +for (size_t n = 0; n < rBoxes.size(); ++n) +{ +pLine = rBoxes[n]->GetUpper(); +while( pLine->GetUpper() ) +pLine = pLine->GetUpper()->GetUpper(); + +if( pTable->IsHeadline( *pLine ) ) +rBoxes.erase( rBoxes.begin() + n-- ); +} +} while( false ); } /// Are all boxes valid that are referenced by the formula? @@ -989,48 +989,48 @@ void SwTableFormula::HasValidBoxes_( const SwTable& rTable, OUStringBuffer& , OUString& rFirstBox, OUString* pLastBox, void* pPara ) const { bool* pBValid = static_cast(pPara); -if( *pBValid ) // wrong is wrong -{ -SwTableBox* pSttBox = nullptr, *pEndBox = nullptr; -rFirstBox = rFirstBox.copy(1); // delete identifier of box +if( !(*pBValid) ) // wrong is wrong +return; -// area in this parenthesis? -if( pLastBox ) -rFirstBox = rFirstBox.copy( pLastBox->getLength()+1 ); +SwTableBox* pSttBox = nullptr, *pEndBox = nullptr; +rFirstBox = rFirstBox.copy(1); // delete identifier of box -switch (m_eNmType) -{ -case INTRNL_NAME: -if( pLastBox ) -pEndBox = reinterpret_cast(sal::static_int_cast(pLastBox->toInt64())); -pSttBox = reinterpret_cast(sal::static_int_cast(rFirstBox.toInt64())); -break; +// area in this parenthesis? +if( pLastBox ) +
[Libreoffice-commits] core.git: sw/source
sw/source/core/docnode/finalthreadmanager.cxx | 28 sw/source/core/docnode/ndnum.cxx| 46 - sw/source/core/docnode/ndsect.cxx | 194 +++--- sw/source/core/docnode/ndtbl.cxx| 229 +++ sw/source/core/docnode/ndtbl1.cxx | 618 ++-- sw/source/core/docnode/node.cxx | 182 ++--- sw/source/core/docnode/nodes.cxx| 86 +- sw/source/core/docnode/retrievedinputstreamdata.cxx | 34 - sw/source/core/docnode/section.cxx | 174 ++--- sw/source/core/docnode/threadmanager.cxx| 20 10 files changed, 806 insertions(+), 805 deletions(-) New commits: commit aa703bc1253454f3783ea6314928505925a1b247 Author: Noel Grandin AuthorDate: Thu Jul 30 10:34:16 2020 +0200 Commit: Noel Grandin CommitDate: Sat Aug 1 09:19:31 2020 +0200 loplugin:flatten in sw/core/docnode Change-Id: Id0b37a9060ab77ecfd8c4aa2b340ab7b958ba109 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99897 Tested-by: Jenkins Reviewed-by: Noel Grandin diff --git a/sw/source/core/docnode/finalthreadmanager.cxx b/sw/source/core/docnode/finalthreadmanager.cxx index 80ddd75c3da9..506d054b47e2 100644 --- a/sw/source/core/docnode/finalthreadmanager.cxx +++ b/sw/source/core/docnode/finalthreadmanager.cxx @@ -318,26 +318,26 @@ void SAL_CALL FinalThreadManager::cancelAllJobs() maThreads.clear(); } -if ( !aThreads.empty() ) -{ -osl::MutexGuard aGuard(maMutex); +if ( aThreads.empty() ) +return; -if ( mpCancelJobsThread == nullptr ) +osl::MutexGuard aGuard(maMutex); + +if ( mpCancelJobsThread == nullptr ) +{ +mpCancelJobsThread.reset(new CancelJobsThread( aThreads )); +if ( !mpCancelJobsThread->create() ) { -mpCancelJobsThread.reset(new CancelJobsThread( aThreads )); -if ( !mpCancelJobsThread->create() ) +mpCancelJobsThread.reset(); +for (auto const& elem : aThreads) { -mpCancelJobsThread.reset(); -for (auto const& elem : aThreads) -{ -elem->cancel(); -} -aThreads.clear(); +elem->cancel(); } +aThreads.clear(); } -else -mpCancelJobsThread->addJobs( aThreads ); } +else +mpCancelJobsThread->addJobs( aThreads ); } // css::frame::XTerminateListener diff --git a/sw/source/core/docnode/ndnum.cxx b/sw/source/core/docnode/ndnum.cxx index 1e8e75256a04..d5fbe435d6bd 100644 --- a/sw/source/core/docnode/ndnum.cxx +++ b/sw/source/core/docnode/ndnum.cxx @@ -40,36 +40,36 @@ void SwNodes::UpdateOutlineNode(SwNode & rNd) { SwTextNode * pTextNd = rNd.GetTextNode(); -if (pTextNd && pTextNd->IsOutlineStateChanged()) -{ -bool bFound = m_pOutlineNodes->find(pTextNd) != m_pOutlineNodes->end(); +if (!(pTextNd && pTextNd->IsOutlineStateChanged())) +return; + +bool bFound = m_pOutlineNodes->find(pTextNd) != m_pOutlineNodes->end(); -if (pTextNd->IsOutline()) +if (pTextNd->IsOutline()) +{ +if (! bFound) { -if (! bFound) +// assure that text is in the correct nodes array +if ( &(pTextNd->GetNodes()) == this ) { -// assure that text is in the correct nodes array -if ( &(pTextNd->GetNodes()) == this ) -{ -m_pOutlineNodes->insert(pTextNd); -} -else -{ -OSL_FAIL( " - given text node isn't in the correct nodes array. This is a serious defect" ); -} +m_pOutlineNodes->insert(pTextNd); +} +else +{ +OSL_FAIL( " - given text node isn't in the correct nodes array. This is a serious defect" ); } } -else -{ -if (bFound) -m_pOutlineNodes->erase(pTextNd); -} +} +else +{ +if (bFound) +m_pOutlineNodes->erase(pTextNd); +} -pTextNd->UpdateOutlineState(); +pTextNd->UpdateOutlineState(); -// update the structure fields -GetDoc()->getIDocumentFieldsAccess().GetSysFieldType( SwFieldIds::Chapter )->UpdateFields(); -} +// update the structure fields +GetDoc()->getIDocumentFieldsAccess().GetSysFieldType( SwFieldIds::Chapter )->UpdateFields(); } void SwNodes::UpdateOutlineIdx( const SwNode& rNd ) diff --git a/sw/source/core/docnode/ndsect.cxx b/sw/source/core/docnode/ndsect.cxx index 1c85a27a4853..a8658f99cf7b 100644 --- a/sw/source/core/docnode/ndsect.cxx +++ b/sw/source/core/docnode/ndsect.cxx @@ -750,29 +750,29 @@ void SwDoc::UpdateSection( size_t const nPos, SwSectionData
[Libreoffice-commits] core.git: 2 commits - sw/source
sw/source/core/doc/DocumentChartDataProviderManager.cxx | 40 - sw/source/core/doc/DocumentContentOperationsManager.cxx | 308 sw/source/core/doc/DocumentDeviceManager.cxx| 56 - sw/source/core/doc/DocumentDrawModelManager.cxx | 26 sw/source/core/doc/DocumentFieldsManager.cxx| 62 - sw/source/core/doc/DocumentRedlineManager.cxx | 120 +-- sw/source/core/doc/DocumentSettingManager.cxx | 40 - sw/source/core/doc/DocumentStatisticsManager.cxx| 22 sw/source/core/doc/acmplwrd.cxx | 28 sw/source/core/doc/doc.cxx | 140 +-- sw/source/core/doc/docbm.cxx| 42 - sw/source/core/doc/docchart.cxx | 24 sw/source/core/doc/doccomp.cxx | 204 ++--- sw/source/core/doc/docdesc.cxx | 48 - sw/source/core/doc/docedt.cxx | 78 +- sw/source/core/doc/docfld.cxx | 70 - sw/source/core/doc/docfmt.cxx | 68 - sw/source/core/doc/doclay.cxx | 50 - sw/source/core/doc/docnew.cxx | 34 sw/source/core/doc/docnum.cxx | 101 +- sw/source/core/doc/docredln.cxx | 184 ++--- sw/source/core/doc/docsort.cxx | 22 sw/source/core/doc/doctxm.cxx | 51 - sw/source/core/doc/docxforms.cxx| 56 - sw/source/core/doc/extinput.cxx | 287 +++ sw/source/core/doc/fmtcol.cxx | 28 sw/source/core/doc/htmltbl.cxx | 491 ++--- sw/source/core/doc/notxtfrm.cxx | 72 - sw/source/core/doc/number.cxx | 126 +-- sw/source/core/doc/swserv.cxx | 152 ++-- sw/source/core/doc/tblafmt.cxx | 134 +-- sw/source/core/doc/tblcpy.cxx | 236 +++--- sw/source/core/doc/tblrwcl.cxx | 96 +- sw/source/core/doc/textboxhelper.cxx| 578 sw/source/core/doc/visiturl.cxx | 78 +- sw/source/core/draw/dcontact.cxx| 148 ++-- sw/source/core/draw/dflyobj.cxx | 234 +++--- sw/source/core/draw/dview.cxx | 136 +-- sw/source/core/edit/acorrect.cxx| 66 - sw/source/core/edit/autofmt.cxx | 94 +- sw/source/core/edit/edfcol.cxx | 54 - sw/source/core/edit/editsh.cxx | 38 - sw/source/core/edit/edlingu.cxx | 200 ++--- sw/source/core/edit/edsect.cxx | 30 sw/source/core/edit/edtox.cxx | 44 - sw/source/core/edit/edundo.cxx | 30 46 files changed, 2613 insertions(+), 2613 deletions(-) New commits: commit da64ad86e9f2dd66fbcecb46dcc22626e9f5a6a6 Author: Noel Grandin AuthorDate: Thu Jul 30 10:34:02 2020 +0200 Commit: Noel Grandin CommitDate: Sat Aug 1 09:20:08 2020 +0200 loplugin:flatten in sw/core/doc Change-Id: If7738d47ec0273f24eee99b7336380cfa78c1243 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99896 Tested-by: Jenkins Reviewed-by: Noel Grandin diff --git a/sw/source/core/doc/DocumentChartDataProviderManager.cxx b/sw/source/core/doc/DocumentChartDataProviderManager.cxx index 90785725e2dd..72640b4629d4 100644 --- a/sw/source/core/doc/DocumentChartDataProviderManager.cxx +++ b/sw/source/core/doc/DocumentChartDataProviderManager.cxx @@ -55,32 +55,32 @@ SwChartDataProvider * DocumentChartDataProviderManager::GetChartDataProvider( bo void DocumentChartDataProviderManager::CreateChartInternalDataProviders( const SwTable *pTable ) { -if (pTable) +if (!pTable) +return; + +OUString aName( pTable->GetFrameFormat()->GetName() ); +SwOLENode *pONd; +SwStartNode *pStNd; +SwNodeIndex aIdx( *m_rDoc.GetNodes().GetEndOfAutotext().StartOfSectionNode(), 1 ); +while (nullptr != (pStNd = aIdx.GetNode().GetStartNode())) { -OUString aName( pTable->GetFrameFormat()->GetName() ); -SwOLENode *pONd; -SwStartNode *pStNd; -SwNodeIndex aIdx( *m_rDoc.GetNodes().GetEndOfAutotext().StartOfSectionNode(), 1 ); -while (nullptr != (pStNd = aIdx.GetNode().GetStartNode())) +++aIdx; +pONd = aIdx.GetNode().GetOLENode(); +if( pONd && +aName == pONd->GetChartTableName() /* OLE node is chart? */ && +nullptr != (pONd->getLayoutFrame( m_rDoc.getIDocumentLayoutAccess().GetCurrentLayout() )) /* chart frame is not hidden */ ) { -
[Libreoffice-commits] core.git: sw/source
sw/source/core/layout/anchoreddrawobject.cxx| 164 +-- sw/source/core/layout/anchoredobject.cxx| 228 ++-- sw/source/core/layout/atrfrm.cxx| 302 ++--- sw/source/core/layout/calcmove.cxx | 438 sw/source/core/layout/colfrm.cxx| 44 sw/source/core/layout/findfrm.cxx | 98 - sw/source/core/layout/fly.cxx | 318 ++--- sw/source/core/layout/flycnt.cxx| 362 +++--- sw/source/core/layout/flyincnt.cxx | 34 sw/source/core/layout/flylay.cxx| 74 - sw/source/core/layout/frmtool.cxx | 366 +++--- sw/source/core/layout/ftnfrm.cxx| 630 +-- sw/source/core/layout/layact.cxx| 52 sw/source/core/layout/laycache.cxx | 346 +++--- sw/source/core/layout/objectformattertxtfrm.cxx | 36 sw/source/core/layout/pagechg.cxx | 202 +-- sw/source/core/layout/paintfrm.cxx | 1290 sw/source/core/layout/sectfrm.cxx | 296 ++--- sw/source/core/layout/ssfrm.cxx | 180 +-- sw/source/core/layout/tabfrm.cxx| 192 +-- sw/source/core/layout/wsfrm.cxx | 688 ++-- 21 files changed, 3174 insertions(+), 3166 deletions(-) New commits: commit a0ec43251e8b8a0805306ca5ad86794550916fce Author: Noel Grandin AuthorDate: Thu Jul 30 10:35:22 2020 +0200 Commit: Noel Grandin CommitDate: Sat Aug 1 11:43:08 2020 +0200 loplugin:flatten in sw/core/layout Change-Id: I67fd1a269d960174b88c57da4a0588f5d9252660 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99885 Tested-by: Jenkins Reviewed-by: Noel Grandin diff --git a/sw/source/core/layout/anchoreddrawobject.cxx b/sw/source/core/layout/anchoreddrawobject.cxx index cc84e0bc4597..8960d4075ad9 100644 --- a/sw/source/core/layout/anchoreddrawobject.cxx +++ b/sw/source/core/layout/anchoreddrawobject.cxx @@ -342,26 +342,26 @@ void SwAnchoredDrawObject::MakeObjPos() } // --> #i62875# -if ( mbCaptureAfterLayoutDirChange && - GetPageFrame() ) -{ -SwRect aPageRect( GetPageFrame()->getFrameArea() ); -SwRect aObjRect( GetObjRect() ); -if ( aObjRect.Right() >= aPageRect.Right() + 10 ) -{ -Size aSize( aPageRect.Right() - aObjRect.Right(), 0 ); -DrawObj()->Move( aSize ); -aObjRect = GetObjRect(); -} +if ( !(mbCaptureAfterLayoutDirChange && + GetPageFrame()) ) +return; -if ( aObjRect.Left() + 10 <= aPageRect.Left() ) -{ -Size aSize( aPageRect.Left() - aObjRect.Left(), 0 ); -DrawObj()->Move( aSize ); -} +SwRect aPageRect( GetPageFrame()->getFrameArea() ); +SwRect aObjRect( GetObjRect() ); +if ( aObjRect.Right() >= aPageRect.Right() + 10 ) +{ +Size aSize( aPageRect.Right() - aObjRect.Right(), 0 ); +DrawObj()->Move( aSize ); +aObjRect = GetObjRect(); +} -mbCaptureAfterLayoutDirChange = false; +if ( aObjRect.Left() + 10 <= aPageRect.Left() ) +{ +Size aSize( aPageRect.Left() - aObjRect.Left(), 0 ); +DrawObj()->Move( aSize ); } + +mbCaptureAfterLayoutDirChange = false; } /** method for the intrinsic positioning of an at-paragraph|at-character @@ -523,84 +523,84 @@ void SwAnchoredDrawObject::SetDrawObjAnchor() */ void SwAnchoredDrawObject::InvalidatePage_( SwPageFrame* _pPageFrame ) { -if ( _pPageFrame && !_pPageFrame->GetFormat()->GetDoc()->IsInDtor() ) +if ( !(_pPageFrame && !_pPageFrame->GetFormat()->GetDoc()->IsInDtor()) ) +return; + +if ( !_pPageFrame->GetUpper() ) +return; + +// --> #i35007# - correct invalidation for as-character +// anchored objects. +if ( GetFrameFormat().GetAnchor().GetAnchorId() == RndStdIds::FLY_AS_CHAR ) { -if ( _pPageFrame->GetUpper() ) -{ -// --> #i35007# - correct invalidation for as-character -// anchored objects. -if ( GetFrameFormat().GetAnchor().GetAnchorId() == RndStdIds::FLY_AS_CHAR ) -{ -_pPageFrame->InvalidateFlyInCnt(); -} -else -{ -_pPageFrame->InvalidateFlyLayout(); -} +_pPageFrame->InvalidateFlyInCnt(); +} +else +{ +_pPageFrame->InvalidateFlyLayout(); +} -SwRootFrame* pRootFrame = static_cast(_pPageFrame->GetUpper()); -pRootFrame->DisallowTurbo(); -if ( pRootFrame->GetTurbo() ) -{ -const SwContentFrame* pTmpFrame = pRootFrame->GetTurbo(); -pRootFrame->ResetTurbo(); -pTmpFrame->InvalidatePage(); -} -pRootFrame->SetIdleFlags(); -} +SwRootFrame* pRootFrame = static_cast(_pPageFram
[Libreoffice-commits] core.git: connectivity/Library_sdbc2.mk connectivity/source
connectivity/Library_sdbc2.mk |1 connectivity/source/manager/mdrivermanager.cxx | 59 +--- connectivity/source/manager/mdrivermanager.hxx | 22 +++-- connectivity/source/manager/mregistration.cxx | 61 - connectivity/source/manager/sdbc2.component|7 ++ 5 files changed, 45 insertions(+), 105 deletions(-) New commits: commit e01f3e8b49843e6ff69fdc83c3b576ba91e992c1 Author: Noel Grandin AuthorDate: Thu Jul 9 12:05:27 2020 +0200 Commit: Noel Grandin CommitDate: Sat Aug 1 13:14:25 2020 +0200 connectivity/sdbc2: create instances with uno constructors See tdf#74608 for motivation Change-Id: I707b0e506aa152ec104e677dc09968c2dc1ac9fc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98422 Tested-by: Jenkins Reviewed-by: Noel Grandin diff --git a/connectivity/Library_sdbc2.mk b/connectivity/Library_sdbc2.mk index 494dc4208a09..5685d1af1de1 100644 --- a/connectivity/Library_sdbc2.mk +++ b/connectivity/Library_sdbc2.mk @@ -33,7 +33,6 @@ $(eval $(call gb_Library_use_libraries,sdbc2,\ $(eval $(call gb_Library_add_exception_objects,sdbc2,\ connectivity/source/manager/mdrivermanager \ - connectivity/source/manager/mregistration \ )) # vim: set noet sw=4 ts=4: diff --git a/connectivity/source/manager/mdrivermanager.cxx b/connectivity/source/manager/mdrivermanager.cxx index 3f66e0606baa..fba247ffab1c 100644 --- a/connectivity/source/manager/mdrivermanager.cxx +++ b/connectivity/source/manager/mdrivermanager.cxx @@ -31,11 +31,16 @@ #include #include #include +#include #include #include #include +static osl::Mutex g_InstanceGuard; +static rtl::Reference g_Instance; +static bool g_Disposed = false; + namespace drivermanager { @@ -237,7 +242,8 @@ Any SAL_CALL ODriverEnumeration::nextElement( ) } OSDBCDriverManager::OSDBCDriverManager( const Reference< XComponentContext >& _rxContext ) -:m_xContext( _rxContext ) +:OSDBCDriverManager_Base(m_aMutex) +,m_xContext( _rxContext ) ,m_aEventLogger( _rxContext, "org.openoffice.logging.sdbc.DriverManager" ) ,m_aDriverConfig(m_xContext) ,m_nLoginTimeout(0) @@ -254,6 +260,15 @@ OSDBCDriverManager::~OSDBCDriverManager() { } +// XComponent +void SAL_CALL OSDBCDriverManager::dispose() +{ +OSDBCDriverManager_Base::dispose(); +osl::MutexGuard aGuard(g_InstanceGuard); +g_Instance.clear(); +g_Disposed = true; +} + void OSDBCDriverManager::bootstrapDrivers() { Reference< XContentEnumerationAccess > xEnumAccess( m_xContext->getServiceManager(), UNO_QUERY ); @@ -507,7 +522,7 @@ sal_Bool SAL_CALL OSDBCDriverManager::hasElements( ) OUString SAL_CALL OSDBCDriverManager::getImplementationName( ) { -return getImplementationName_static(); +return "com.sun.star.comp.sdbc.OSDBCDriverManager"; } sal_Bool SAL_CALL OSDBCDriverManager::supportsService( const OUString& _rServiceName ) @@ -518,31 +533,7 @@ sal_Bool SAL_CALL OSDBCDriverManager::supportsService( const OUString& _rService Sequence< OUString > SAL_CALL OSDBCDriverManager::getSupportedServiceNames( ) { -return getSupportedServiceNames_static(); -} - - -Reference< XInterface > OSDBCDriverManager::Create( const Reference< XMultiServiceFactory >& _rxFactory ) -{ -return *( new OSDBCDriverManager( comphelper::getComponentContext(_rxFactory) ) ); -} - - -OUString OSDBCDriverManager::getImplementationName_static( ) -{ -return "com.sun.star.comp.sdbc.OSDBCDriverManager"; -} - - -Sequence< OUString > OSDBCDriverManager::getSupportedServiceNames_static( ) -{ -return { getSingletonName_static() }; -} - - -OUString OSDBCDriverManager::getSingletonName_static( ) -{ -return "com.sun.star.sdbc.DriverManager"; +return { "com.sun.star.sdbc.DriverManager" }; } @@ -677,4 +668,18 @@ Reference< XDriver > OSDBCDriverManager::implGetDriverForURL(const OUString& _rU } // namespace drivermanager +extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface* +connectivity_OSDBCDriverManager_get_implementation( +css::uno::XComponentContext* context , css::uno::Sequence const&) +{ +osl::MutexGuard aGuard(g_InstanceGuard); +if (g_Disposed) +return nullptr; +if (!g_Instance) +g_Instance.set(new drivermanager::OSDBCDriverManager(context)); +g_Instance->acquire(); +return static_cast(g_Instance.get()); +} + + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/connectivity/source/manager/mdrivermanager.hxx b/connectivity/source/manager/mdrivermanager.hxx index 21e7bb5df7ac..20fc0a72df7b 100644 --- a/connectivity/source/manager/mdrivermanager.hxx +++ b/connectivity/source/manager/mdrivermanager.hxx @@ -31,7 +31,8 @@ #include #include -#include +#include +#include #include #include #include @@ -51,16 +52,15 @@ namespace drivermanager // OSDBCDriverManager - the one-instance service for managing SDBC drivers
[Libreoffice-commits] core.git: sw/source
sw/source/core/attr/calbck.cxx | 58 ++--- sw/source/core/attr/cellatr.cxx | 102 +- sw/source/core/attr/format.cxx | 40 ++-- sw/source/core/bastyp/index.cxx | 22 +- sw/source/core/crsr/bookmrk.cxx | 94 - sw/source/core/crsr/callnk.cxx | 22 +- sw/source/core/crsr/crsrsh.cxx | 393 +++- sw/source/core/crsr/swcrsr.cxx | 72 +++ sw/source/core/crsr/trvlcol.cxx | 44 ++-- sw/source/core/crsr/viscrs.cxx | 262 +- 10 files changed, 554 insertions(+), 555 deletions(-) New commits: commit fb34aeb7842eaa852c82c3d73c722411c11885d7 Author: Noel Grandin AuthorDate: Thu Jul 30 10:33:15 2020 +0200 Commit: Noel Grandin CommitDate: Sat Aug 1 13:14:05 2020 +0200 loplugin:flatten in sw/core/access..sc/core/crsr Change-Id: I073545c11e2261703e5255abefaf82a2bbea5211 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99934 Tested-by: Jenkins Reviewed-by: Noel Grandin diff --git a/sw/source/core/attr/calbck.cxx b/sw/source/core/attr/calbck.cxx index cef9b02b059f..4eb04a5ede98 100644 --- a/sw/source/core/attr/calbck.cxx +++ b/sw/source/core/attr/calbck.cxx @@ -219,41 +219,41 @@ void SwModify::Add( SwClient* pDepend ) DBG_TESTSOLARMUTEX(); OSL_ENSURE( !m_bLockClientList, "Client inserted while in Modify" ); -if(pDepend->m_pRegisteredIn != this ) -{ +if(pDepend->m_pRegisteredIn == this ) +return; + #if OSL_DEBUG_LEVEL > 0 -if(sw::ClientIteratorBase::s_pClientIters) +if(sw::ClientIteratorBase::s_pClientIters) +{ +for(auto& rIter : sw::ClientIteratorBase::s_pClientIters->GetRingContainer()) { -for(auto& rIter : sw::ClientIteratorBase::s_pClientIters->GetRingContainer()) -{ -SAL_WARN_IF(&rIter.m_rRoot == m_pWriterListeners, "sw.core", "a " << typeid(*pDepend).name() << " client added as listener to a " << typeid(*this).name() << " during client iteration."); -} +SAL_WARN_IF(&rIter.m_rRoot == m_pWriterListeners, "sw.core", "a " << typeid(*pDepend).name() << " client added as listener to a " << typeid(*this).name() << " during client iteration."); } +} #endif -// deregister new client in case it is already registered elsewhere -if( pDepend->m_pRegisteredIn != nullptr ) -pDepend->m_pRegisteredIn->Remove( pDepend ); +// deregister new client in case it is already registered elsewhere +if( pDepend->m_pRegisteredIn != nullptr ) +pDepend->m_pRegisteredIn->Remove( pDepend ); -if( !m_pWriterListeners ) -{ -// first client added -m_pWriterListeners = pDepend; -m_pWriterListeners->m_pLeft = nullptr; -m_pWriterListeners->m_pRight = nullptr; -} -else -{ -// append client -pDepend->m_pRight = m_pWriterListeners->m_pRight; -m_pWriterListeners->m_pRight = pDepend; -pDepend->m_pLeft = m_pWriterListeners; -if( pDepend->m_pRight ) -pDepend->m_pRight->m_pLeft = pDepend; -} - -// connect client to me -pDepend->m_pRegisteredIn = this; +if( !m_pWriterListeners ) +{ +// first client added +m_pWriterListeners = pDepend; +m_pWriterListeners->m_pLeft = nullptr; +m_pWriterListeners->m_pRight = nullptr; } +else +{ +// append client +pDepend->m_pRight = m_pWriterListeners->m_pRight; +m_pWriterListeners->m_pRight = pDepend; +pDepend->m_pLeft = m_pWriterListeners; +if( pDepend->m_pRight ) +pDepend->m_pRight->m_pLeft = pDepend; +} + +// connect client to me +pDepend->m_pRegisteredIn = this; } SwClient* SwModify::Remove( SwClient* pDepend ) diff --git a/sw/source/core/attr/cellatr.cxx b/sw/source/core/attr/cellatr.cxx index a0a459ed8596..b7e4f507f0c2 100644 --- a/sw/source/core/attr/cellatr.cxx +++ b/sw/source/core/attr/cellatr.cxx @@ -124,62 +124,62 @@ void SwTableBoxFormula::ChangeState( const SfxPoolItem* pItem ) if (!pNd || &pNd->GetNodes() != &pNd->GetDoc()->GetNodes()) return; pTableNd = pNd->FindTableNode(); -if( pTableNd != nullptr ) +if( pTableNd == nullptr ) +return; + +switch( pUpdateField->m_eFlags ) { -switch( pUpdateField->m_eFlags ) +case TBL_CALC: +// reset value flag +ChgValid( false ); +break; +case TBL_BOXNAME: +if( &pTableNd->GetTable() == pUpdateField->m_pTable ) +// use external rendering +PtrToBoxNm( pUpdateField->m_pTable ); +break; +case TBL_BOXPTR: +// internal rendering +BoxNmToPtr( &pTableNd->GetTable() ); +break; +case TBL_RELBOXNAME: +if( &pTableNd->GetTable() == pUpdateField->m_pTable ) +// relative rendering +
[Libreoffice-commits] core.git: sw/qa
sw/qa/uitest/writer_tests3/hyperlinkdialog.py |2 -- 1 file changed, 2 deletions(-) New commits: commit bc16f329b7aadbc429be10f0b0b1e90b6e9545ae Author: Stephan Bergmann AuthorDate: Sat Aug 1 11:08:36 2020 +0200 Commit: Stephan Bergmann CommitDate: Sat Aug 1 13:21:29 2020 +0200 Remove the wait_until_property_is_updated calls again They had been added with 27798238ecb200e0753b013c79df0e6c014c7a7a "uitest : Avoid any timing issue in test_insert_hyperlink" and 1cdda798def040fe778348061c0e18b28aa0e6bd "Further timing issues with test_insert_hyperlink", but 63049e98a659290229d3356e76d49cea44575011 "Reliably set up controls of hyperlink dialog in constructor" now argues that they are probably not necessary after all: For one, they had presumably been added as blind fixes, without actually understanding what's going on (that's at least true for the second, monkey-see-monkey-do one by me). And for another, after I had seen their failures frequently with my local ASan+UBSan Linux build, I haven't seen them at all in lots of executions of that test with the 63049e98a659290229d3356e76d49cea44575011 fix included. So lets assume that those "magic" calls are indeed not necessary after all. If we run into trouble again, they can be added back. Change-Id: I6f4417c9fd243758a03a4de05270f342e7147d27 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99931 Tested-by: Jenkins Reviewed-by: Stephan Bergmann diff --git a/sw/qa/uitest/writer_tests3/hyperlinkdialog.py b/sw/qa/uitest/writer_tests3/hyperlinkdialog.py index 6e3285b5f3ba..5b414242babc 100644 --- a/sw/qa/uitest/writer_tests3/hyperlinkdialog.py +++ b/sw/qa/uitest/writer_tests3/hyperlinkdialog.py @@ -63,12 +63,10 @@ class HyperlinkDialog(UITestCase): xtarget = xDialog.getChild("target") xtarget.executeAction("TYPE", mkPropertyValues({"TEXT": "http://www.libreoffice.org/"})) -self.ui_test.wait_until_property_is_updated(xtarget, "Text", "http://www.libreoffice.org/";) self.assertEqual(get_state_as_dict(xtarget)["Text"], "http://www.libreoffice.org/";) xindication = xDialog.getChild("indication") xindication.executeAction("TYPE", mkPropertyValues({"TEXT": "link"})) -self.ui_test.wait_until_property_is_updated(xindication, "Text", "link") self.assertEqual(get_state_as_dict(xindication)["Text"], "link") xok = xDialog.getChild("ok") ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sw/qa
sw/qa/uitest/writer_tests3/hyperlinkdialog.py |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) New commits: commit f86214c2a6ce3d42b09360e490e15404db6c6a21 Author: Stephan Bergmann AuthorDate: Sat Aug 1 11:19:14 2020 +0200 Commit: Stephan Bergmann CommitDate: Sat Aug 1 13:22:13 2020 +0200 Use a more conventional START/END_POS range For the content of the selection it should not make a difference if that range is "backward" or "forward", but the latter looks cleaner. Change-Id: Ibc27ac257c9338f9b17ace10fbec938b1db394eb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99932 Tested-by: Jenkins Reviewed-by: Stephan Bergmann diff --git a/sw/qa/uitest/writer_tests3/hyperlinkdialog.py b/sw/qa/uitest/writer_tests3/hyperlinkdialog.py index 5b414242babc..a8a42a02a3d1 100644 --- a/sw/qa/uitest/writer_tests3/hyperlinkdialog.py +++ b/sw/qa/uitest/writer_tests3/hyperlinkdialog.py @@ -75,7 +75,7 @@ class HyperlinkDialog(UITestCase): # Check that the link is added xMainWindow = self.xUITest.getTopFocusWindow() xedit = xMainWindow.getChild("writer_edit") -xedit.executeAction("SELECT", mkPropertyValues({"END_POS": "0", "START_POS": "4"})) +xedit.executeAction("SELECT", mkPropertyValues({"START_POS": "0", "END_POS": "4"})) self.assertEqual(get_state_as_dict(xedit)["SelectedText"], "link") self.ui_test.close_doc() ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sw/source
sw/source/core/SwNumberTree/SwNodeNum.cxx| 40 - sw/source/core/SwNumberTree/SwNumberTree.cxx | 206 +++ sw/source/core/access/AccessibilityCheck.cxx | 367 ++-- sw/source/core/access/acccontext.cxx | 129 ++-- sw/source/core/access/accframebase.cxx | 62 +- sw/source/core/access/accmap.cxx | 792 +-- sw/source/core/access/accpage.cxx| 20 sw/source/core/access/accpara.cxx| 36 - sw/source/core/access/accselectionhelper.cxx | 26 9 files changed, 835 insertions(+), 843 deletions(-) New commits: commit a27236b9071d3cf09adbb5bc4fea9edebe96d145 Author: Noel Grandin AuthorDate: Thu Jul 30 10:32:56 2020 +0200 Commit: Noel Grandin CommitDate: Sat Aug 1 13:28:56 2020 +0200 loplugin:flatten in sw/core/access Change-Id: I0116fe288b97d22c3f170f139fe95cfd06d89d8f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99935 Tested-by: Jenkins Reviewed-by: Noel Grandin diff --git a/sw/source/core/SwNumberTree/SwNodeNum.cxx b/sw/source/core/SwNumberTree/SwNodeNum.cxx index f77b002a67ff..38c00087bd52 100644 --- a/sw/source/core/SwNumberTree/SwNodeNum.cxx +++ b/sw/source/core/SwNumberTree/SwNodeNum.cxx @@ -328,26 +328,26 @@ void SwNodeNum::UnregisterMeAndChildrenDueToRootDelete( SwNodeNum& rNodeNum ) UnregisterMeAndChildrenDueToRootDelete( *pChildNode ); } -if ( !bIsPhantom ) -{ -SwTextNode* pTextNode( rNodeNum.GetTextNode() ); -if ( pTextNode ) -{ -pTextNode->RemoveFromList(); -// --> clear all list attributes and the list style -std::set aResetAttrsArray; -aResetAttrsArray.insert( aResetAttrsArray.end(), RES_PARATR_LIST_ID ); -aResetAttrsArray.insert( aResetAttrsArray.end(), RES_PARATR_LIST_LEVEL ); -aResetAttrsArray.insert( aResetAttrsArray.end(), RES_PARATR_LIST_ISRESTART ); -aResetAttrsArray.insert( aResetAttrsArray.end(), RES_PARATR_LIST_RESTARTVALUE ); -aResetAttrsArray.insert( aResetAttrsArray.end(), RES_PARATR_LIST_ISCOUNTED ); -aResetAttrsArray.insert( aResetAttrsArray.end(), RES_PARATR_NUMRULE ); -SwPaM aPam( *pTextNode ); -pTextNode->GetDoc()->ResetAttrs( aPam, false, -aResetAttrsArray, -false ); -} -} +if ( bIsPhantom ) +return; + +SwTextNode* pTextNode( rNodeNum.GetTextNode() ); +if ( !pTextNode ) +return; + +pTextNode->RemoveFromList(); +// --> clear all list attributes and the list style +std::set aResetAttrsArray; +aResetAttrsArray.insert( aResetAttrsArray.end(), RES_PARATR_LIST_ID ); +aResetAttrsArray.insert( aResetAttrsArray.end(), RES_PARATR_LIST_LEVEL ); +aResetAttrsArray.insert( aResetAttrsArray.end(), RES_PARATR_LIST_ISRESTART ); +aResetAttrsArray.insert( aResetAttrsArray.end(), RES_PARATR_LIST_RESTARTVALUE ); +aResetAttrsArray.insert( aResetAttrsArray.end(), RES_PARATR_LIST_ISCOUNTED ); +aResetAttrsArray.insert( aResetAttrsArray.end(), RES_PARATR_NUMRULE ); +SwPaM aPam( *pTextNode ); +pTextNode->GetDoc()->ResetAttrs( aPam, false, +aResetAttrsArray, +false ); } // #i81002# diff --git a/sw/source/core/SwNumberTree/SwNumberTree.cxx b/sw/source/core/SwNumberTree/SwNumberTree.cxx index 2b2ab634b518..ab78733da94c 100644 --- a/sw/source/core/SwNumberTree/SwNumberTree.cxx +++ b/sw/source/core/SwNumberTree/SwNumberTree.cxx @@ -107,21 +107,21 @@ void SwNumberTreeNode::ClearObsoletePhantoms() { tSwNumberTreeChildren::iterator aIt = mChildren.begin(); -if (aIt != mChildren.end() && (*aIt)->IsPhantom()) -{ -(*aIt)->ClearObsoletePhantoms(); +if (!(aIt != mChildren.end() && (*aIt)->IsPhantom())) +return; -if ((*aIt)->mChildren.empty()) -{ -// #i60652# -// Because could destroy the element, which -// is referenced by , it's needed to adjust -// before erasing . -SetLastValid(mChildren.end()); +(*aIt)->ClearObsoletePhantoms(); -delete *aIt; -mChildren.erase(aIt); -} +if ((*aIt)->mChildren.empty()) +{ +// #i60652# +// Because could destroy the element, which +// is referenced by , it's needed to adjust +// before erasing . +SetLastValid(mChildren.end()); + +delete *aIt; +mChildren.erase(aIt); } } @@ -130,102 +130,102 @@ void SwNumberTreeNode::ValidateHierarchical(const SwNumberTreeNode * pNode) cons tSwNumberTreeChildren::const_iterator aValidateIt = GetIterator(pNode); -if (aValidateIt != mChildren.end()) -{ -OSL_ENSURE((*aValidateIt)->mpParent == this, "wrong parent"); +if (aValida
[Libreoffice-commits] core.git: writerfilter/source
writerfilter/source/dmapper/DomainMapper.cxx | 10 +--- writerfilter/source/dmapper/PropertyMap.cxx | 31 +-- 2 files changed, 22 insertions(+), 19 deletions(-) New commits: commit e6b0def979c8e6076f2548a2f4c376867c9e7fdc Author: Justin Luth AuthorDate: Sat Aug 1 10:11:30 2020 +0300 Commit: Justin Luth CommitDate: Sat Aug 1 14:41:27 2020 +0200 NFC writerfilter: change m_nColumnCount to be the # of cols Change-Id: I00f6fea1ee93bf2598d0cfde73fb2de17f0eb379 --- and not # of columns - 1. Life is already too confusing to add that complication to it. Not quite NFC. There is one place where a column count of 1 would have set column separator/space. I didn't think that would be necessary. Change-Id: I87a7bfb5e746e8b7e4c57ddf40b0740d0ef35aba Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99930 Tested-by: Jenkins Reviewed-by: Justin Luth diff --git a/writerfilter/source/dmapper/DomainMapper.cxx b/writerfilter/source/dmapper/DomainMapper.cxx index 1bec709d0f51..adb2f8359662 100644 --- a/writerfilter/source/dmapper/DomainMapper.cxx +++ b/writerfilter/source/dmapper/DomainMapper.cxx @@ -2134,10 +2134,11 @@ void DomainMapper::sprmWithProps( Sprm& rSprm, const PropertyMapPtr& rContext ) pProperties->resolve(*pSectHdl); if(pSectionContext && !m_pImpl->isInIndexContext()) { +sal_Int16 nColumnCount = pSectHdl->GetNum() == 1 ? 0 : pSectHdl->GetNum(); if( pSectHdl->IsEqualWidth() ) { pSectionContext->SetEvenlySpaced( true ); -pSectionContext->SetColumnCount( static_cast(pSectHdl->GetNum() - 1) ); +pSectionContext->SetColumnCount( nColumnCount ); pSectionContext->SetColumnDistance( pSectHdl->GetSpace() ); pSectionContext->SetSeparatorLine( pSectHdl->IsSeparator() ); } @@ -2145,7 +2146,8 @@ void DomainMapper::sprmWithProps( Sprm& rSprm, const PropertyMapPtr& rContext ) { pSectionContext->SetEvenlySpaced( false ); pSectionContext->SetColumnDistance( pSectHdl->GetSpace() ); -pSectionContext->SetColumnCount( static_cast(pSectHdl->GetColumns().size() -1)); +nColumnCount = pSectHdl->GetColumns().size(); +pSectionContext->SetColumnCount( nColumnCount == 1 ? 0 : nColumnCount ); std::vector::const_iterator tmpIter = pSectHdl->GetColumns().begin(); for (; tmpIter != pSectHdl->GetColumns().end(); ++tmpIter) { @@ -2155,9 +2157,9 @@ void DomainMapper::sprmWithProps( Sprm& rSprm, const PropertyMapPtr& rContext ) } pSectionContext->SetSeparatorLine( pSectHdl->IsSeparator() ); } -else if( pSectHdl->GetNum() > 0 ) +else if( nColumnCount ) { -pSectionContext->SetColumnCount( static_cast(pSectHdl->GetNum()) - 1 ); +pSectionContext->SetColumnCount( nColumnCount ); pSectionContext->SetColumnDistance( pSectHdl->GetSpace() ); pSectionContext->SetSeparatorLine( pSectHdl->IsSeparator() ); } diff --git a/writerfilter/source/dmapper/PropertyMap.cxx b/writerfilter/source/dmapper/PropertyMap.cxx index 44e34fad585c..5f8d9a906ba3 100644 --- a/writerfilter/source/dmapper/PropertyMap.cxx +++ b/writerfilter/source/dmapper/PropertyMap.cxx @@ -721,6 +721,7 @@ uno::Reference< text::XTextColumns > SectionPropertyMap::ApplyColumnProperties( DomainMapper_Impl& rDM_Impl ) { uno::Reference< text::XTextColumns > xColumns; +assert( m_nColumnCount > 1 && "ApplyColumnProperties called without any columns" ); try { const OUString sTextColumns = getPropertyName( PROP_TEXT_COLUMNS ); @@ -728,13 +729,13 @@ uno::Reference< text::XTextColumns > SectionPropertyMap::ApplyColumnProperties( xColumnContainer->getPropertyValue( sTextColumns ) >>= xColumns; uno::Reference< beans::XPropertySet > xColumnPropSet( xColumns, uno::UNO_QUERY_THROW ); if ( !m_bEvenlySpaced && - ( sal_Int32(m_aColWidth.size()) == (m_nColumnCount + 1) ) && - ( (sal_Int32(m_aColDistance.size()) == m_nColumnCount) || (sal_Int32(m_aColDistance.size()) == m_nColumnCount + 1) ) ) + ( sal_Int32(m_aColWidth.size()) == m_nColumnCount ) && + ( (sal_Int32(m_aColDistance.size()) == m_nColumnCount - 1) || (sal_Int32(m_aColDistance.size()) == m_nColumnCount) ) ) { // the column width in word is an absolute value, in OOo it's relative // the distances are both absolute
[Libreoffice-commits] core.git: vcl/source
vcl/source/outdev/bitmap.cxx | 13 +++-- 1 file changed, 11 insertions(+), 2 deletions(-) New commits: commit 6beec0ec54975aa02e391c223633a42f6f5afe0e Author: Caolán McNamara AuthorDate: Fri Jul 31 20:58:30 2020 +0100 Commit: Caolán McNamara CommitDate: Sat Aug 1 16:11:05 2020 +0200 tdf#135325 previews missing content drawn via DrawTransformedBitmapEx Typically in these OutputDevice methods, the record-to-metafile case the MetaFile is already written to before the test against mbOutputClipped to determine that output to the current device would result in no visual output (due to the output being outside the bounds of the device). In this case the metafile is written after the test, so we must continue past mbOutputClipped if recording to a metafile. It's typical to record with a device of nominal size and play back later against something of a totally different size. Change-Id: Id1249b10f919165582f7de65b4cdc4d48074abaa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99900 Tested-by: Jenkins Reviewed-by: Caolán McNamara diff --git a/vcl/source/outdev/bitmap.cxx b/vcl/source/outdev/bitmap.cxx index 83b625d828cb..83c1843a5300 100644 --- a/vcl/source/outdev/bitmap.cxx +++ b/vcl/source/outdev/bitmap.cxx @@ -1213,7 +1213,17 @@ void OutputDevice::DrawTransformedBitmapEx( if ( mbInitClipRegion ) InitClipRegion(); -if ( mbOutputClipped ) +const bool bMetafile(nullptr != mpMetaFile); +/* + tdf#135325 typically in these OutputDevice methods the in + record-to-metafile case MetaFile is already written to before the test + against mbOutputClipped to determine that output to the current device + would result in no visual output. In this case the metafile is written + after the test, so we must continue past mbOutputClipped if recording to + a metafile. It's typical to record with a device of nominal size and + play back later against something of a totally different size. + */ +if (mbOutputClipped && !bMetafile) return; #ifdef DO_TIME_TEST @@ -1233,7 +1243,6 @@ void OutputDevice::DrawTransformedBitmapEx( static bool bAllowPreferDirectPaint(true); const bool bInvert(RasterOp::Invert == meRasterOp); const bool bBitmapChangedColor(mnDrawMode & (DrawModeFlags::BlackBitmap | DrawModeFlags::WhiteBitmap | DrawModeFlags::GrayBitmap )); -const bool bMetafile(nullptr != mpMetaFile); const bool bTryDirectPaint(!bInvert && !bBitmapChangedColor && !bMetafile); if(bAllowPreferDirectPaint && bTryDirectPaint) ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: vcl/source
vcl/source/outdev/bitmap.cxx | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) New commits: commit 0898838bc962bae9ab698e1f585a67d832260110 Author: Caolán McNamara AuthorDate: Fri Jul 31 21:04:45 2020 +0100 Commit: Caolán McNamara CommitDate: Sat Aug 1 16:11:23 2020 +0200 tidy up language a bit Change-Id: I3bc840da190e50f03bbd1cc57f49fbdb809e4be5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99901 Tested-by: Jenkins Reviewed-by: Caolán McNamara diff --git a/vcl/source/outdev/bitmap.cxx b/vcl/source/outdev/bitmap.cxx index 83c1843a5300..508b7df307d3 100644 --- a/vcl/source/outdev/bitmap.cxx +++ b/vcl/source/outdev/bitmap.cxx @@ -1215,13 +1215,13 @@ void OutputDevice::DrawTransformedBitmapEx( const bool bMetafile(nullptr != mpMetaFile); /* - tdf#135325 typically in these OutputDevice methods the in - record-to-metafile case MetaFile is already written to before the test - against mbOutputClipped to determine that output to the current device - would result in no visual output. In this case the metafile is written - after the test, so we must continue past mbOutputClipped if recording to - a metafile. It's typical to record with a device of nominal size and - play back later against something of a totally different size. + tdf#135325 typically in these OutputDevice methods, for the in + record-to-metafile case the MetaFile is already written to before the + test against mbOutputClipped to determine that output to the current + device would result in no visual output. In this case the metafile is + written after the test, so we must continue past mbOutputClipped if + recording to a metafile. It's typical to record with a device of nominal + size and play back later against something of a totally different size. */ if (mbOutputClipped && !bMetafile) return; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: sw/source
sw/source/ui/vba/vbalistformat.cxx | 173 - 1 file changed, 172 insertions(+), 1 deletion(-) New commits: commit dc5d8d39e229b2fb1091c179942e6dae9d160101 Author: Mike Kaganski AuthorDate: Fri Jul 31 11:01:32 2020 +0300 Commit: Mike Kaganski CommitDate: Sat Aug 1 18:50:11 2020 +0200 Implement VBA's ListFormat.ConvertNumbersToText This only handles lists with PositionAndSpaceMode::LABEL_ALIGNMENT. TODO: handle PositionAndSpaceMode::LABEL_WIDTH_AND_POSITION. TODO: handle NumberingType::BITMAP. It doesn't align number according to Adjust, since that requires to use a tab stop at the number position with appropriate alignment, and it's unclear how would that interact with LabelFollowedBy modes other than LISTTAB. When first tab stop position is greater than ParaLeftMargin, Writer uses left margin as implicit tab stop position, thus in this case list appearance is different from processed text appearance. In case of justified paragraphs, space after number (which does not participate in justification when part of numbering) becomes part of justification after conversion to text. Change-Id: I88ad6617f8a09307ecad9d28edee92a59c68a4d4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99939 Tested-by: Mike Kaganski Reviewed-by: Mike Kaganski diff --git a/sw/source/ui/vba/vbalistformat.cxx b/sw/source/ui/vba/vbalistformat.cxx index 9ad18ebfcf33..d8642cb7fab0 100644 --- a/sw/source/ui/vba/vbalistformat.cxx +++ b/sw/source/ui/vba/vbalistformat.cxx @@ -20,11 +20,23 @@ #include #include #include +#include #include #include +#include +#include #include +#include +#include +#include +#include +#include +#include +#include #include "vbalisttemplate.hxx" +#include + using namespace ::ooo::vba; using namespace ::com::sun::star; @@ -88,7 +100,166 @@ void SAL_CALL SwVbaListFormat::ApplyListTemplate( const css::uno::Reference< wor void SAL_CALL SwVbaListFormat::ConvertNumbersToText( ) { -throw uno::RuntimeException("Not implemented" ); +css::uno::Reference xModel(getThisWordDoc(mxContext)); +css::uno::Reference xUndoSupplier( +xModel, css::uno::UNO_QUERY_THROW); +css::uno::Reference xUndoManager(xUndoSupplier->getUndoManager()); +xUndoManager->enterUndoContext("ConvertNumbersToText"); +xModel->lockControllers(); +comphelper::ScopeGuard g([xModel, xUndoManager]() { +xModel->unlockControllers(); +xUndoManager->leaveUndoContext(); +}); + +css::uno::Reference xEnumAccess(mxTextRange, + css::uno::UNO_QUERY_THROW); +auto xEnum = xEnumAccess->createEnumeration(); +if (!xEnum->hasMoreElements()) +return; + +std::vector> aParagraphs; +while (xEnum->hasMoreElements()) +aParagraphs.emplace_back(xEnum->nextElement(), css::uno::UNO_QUERY_THROW); + +// in reverse order, to get proper label strings +for (auto it = aParagraphs.rbegin(); it != aParagraphs.rend(); ++it) +{ +if (bool bNumber; ((*it)->getPropertyValue("NumberingIsNumber") >>= bNumber) && bNumber) +{ +css::uno::Reference xRange(*it, css::uno::UNO_QUERY_THROW); +OUString sLabelString; +(*it)->getPropertyValue("ListLabelString") >>= sLabelString; +// sal_Int16 nAdjust = SAL_MAX_INT16; // TODO? +sal_Int16 nNumberingType = SAL_MAX_INT16; // css::style::NumberingType +sal_Int16 nPositionAndSpaceMode = SAL_MAX_INT16; +sal_Int16 nLabelFollowedBy = SAL_MAX_INT16; +sal_Int32 nListtabStopPosition = SAL_MAX_INT32; +sal_Int32 nFirstLineIndent = SAL_MAX_INT32; +sal_Int32 nIndentAt = SAL_MAX_INT32; +OUString sCharStyleName, sBulletChar; +css::awt::FontDescriptor aBulletFont; +bool bHasFont; +css::util::Color aBulletColor = css::util::Color(COL_AUTO); +bool bHasColor; + +{ +sal_uInt16 nLevel = SAL_MAX_UINT16; +(*it)->getPropertyValue("NumberingLevel") >>= nLevel; +css::uno::Reference xNumberingRules; +(*it)->getPropertyValue("NumberingRules") >>= xNumberingRules; +comphelper::SequenceAsHashMap aLevelRule(xNumberingRules->getByIndex(nLevel)); + +// See offapi/com/sun/star/text/NumberingLevel.idl +aLevelRule["CharStyleName"] >>= sCharStyleName; +aLevelRule["NumberingType"] >>= nNumberingType; +// TODO: aLevelRule["Adjust"] >>= nAdjust; // HoriOrientation::LEFT/RIGHT/CENTER +aLevelRule["PositionAndSpaceMode"] >>= nPositionAndSpaceMode; +aLevelRule["LabelFollowedBy"] >>= nLabelFollowedBy; +aLevelRule["ListtabStopPosition"] >>= nListtabStopPos
[Libreoffice-commits] core.git: Branch 'libreoffice-7-0' - vcl/source
vcl/source/outdev/bitmap.cxx | 13 +++-- 1 file changed, 11 insertions(+), 2 deletions(-) New commits: commit 509e34d69cd15dc8532f90e8875f8afbdb2cec60 Author: Caolán McNamara AuthorDate: Fri Jul 31 20:58:30 2020 +0100 Commit: Adolfo Jayme Barrientos CommitDate: Sat Aug 1 19:29:43 2020 +0200 tdf#135325 previews missing content drawn via DrawTransformedBitmapEx Typically in these OutputDevice methods, the record-to-metafile case the MetaFile is already written to before the test against mbOutputClipped to determine that output to the current device would result in no visual output (due to the output being outside the bounds of the device). In this case the metafile is written after the test, so we must continue past mbOutputClipped if recording to a metafile. It's typical to record with a device of nominal size and play back later against something of a totally different size. Change-Id: Id1249b10f919165582f7de65b4cdc4d48074abaa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99911 Tested-by: Jenkins Reviewed-by: Adolfo Jayme Barrientos diff --git a/vcl/source/outdev/bitmap.cxx b/vcl/source/outdev/bitmap.cxx index 83b625d828cb..83c1843a5300 100644 --- a/vcl/source/outdev/bitmap.cxx +++ b/vcl/source/outdev/bitmap.cxx @@ -1213,7 +1213,17 @@ void OutputDevice::DrawTransformedBitmapEx( if ( mbInitClipRegion ) InitClipRegion(); -if ( mbOutputClipped ) +const bool bMetafile(nullptr != mpMetaFile); +/* + tdf#135325 typically in these OutputDevice methods the in + record-to-metafile case MetaFile is already written to before the test + against mbOutputClipped to determine that output to the current device + would result in no visual output. In this case the metafile is written + after the test, so we must continue past mbOutputClipped if recording to + a metafile. It's typical to record with a device of nominal size and + play back later against something of a totally different size. + */ +if (mbOutputClipped && !bMetafile) return; #ifdef DO_TIME_TEST @@ -1233,7 +1243,6 @@ void OutputDevice::DrawTransformedBitmapEx( static bool bAllowPreferDirectPaint(true); const bool bInvert(RasterOp::Invert == meRasterOp); const bool bBitmapChangedColor(mnDrawMode & (DrawModeFlags::BlackBitmap | DrawModeFlags::WhiteBitmap | DrawModeFlags::GrayBitmap )); -const bool bMetafile(nullptr != mpMetaFile); const bool bTryDirectPaint(!bInvert && !bBitmapChangedColor && !bMetafile); if(bAllowPreferDirectPaint && bTryDirectPaint) ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
How to add new source code file in directory
Hi, For example, i try to add new file in starmath source directory. I was unsuccessful to do it, the build system ignores it. (i have intentionally put garbage in it to stop compilation, make clean, but nothing better ) I have not found practical notice to do this probably simple operation... A little clue makes me happy. (the next step is to add custom library, but it's the next step) Tks Régis Perdreau ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice
Re: How to add new source code file in directory
forget, i have found why (problem is between chair and keyboard mainly) tks for your attention. Régis Perdreau Le sam. 1 août 2020 à 20:24, Regis Perdreau a écrit : > Hi, > > For example, i try to add new file in starmath source directory. > I was unsuccessful to do it, the build system ignores it. > (i have intentionally put garbage in it to stop compilation, make clean, > but nothing better ) > I have not found practical notice to do this probably simple operation... > A little clue makes me happy. > > (the next step is to add custom library, but it's the next step) > > Tks > > Régis Perdreau > > ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: Branch 'libreoffice-6-4' - sw/source
sw/source/core/layout/frmtool.cxx |4 1 file changed, 4 insertions(+) New commits: commit f5f042fd0a8f107064763e04bdbbc098311e8d88 Author: Michael Stahl AuthorDate: Fri Jul 31 13:32:29 2020 +0200 Commit: Thorsten Behrens CommitDate: Sun Aug 2 00:03:55 2020 +0200 tdf#134931 sw_redlinehide: fix layout following paste of table The pasted table does get a SwTabFrame but the problem is that TurboAction() is called and formats the pre-existing SwTextFrame and somehow that just sets all the valid flags on the new SwTabFrame without doing any formatting. Previously, SwNodes::CopyNodes(bNewFrames=true) would call SwTabFrame::Paste() which invalidates the page. In InsertCnt_(), for new SwSectionFrames InvalidatePage() is already called so do the same for SwTabFrame which gets rid of the "turbo". (regression from 166b5010b402a41b192b1659093a25acf9065fd9) Change-Id: I970a04bd8e76f5418bddb66af915ac466f44daf3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99867 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit 5f7b937e9f81824f11022bc6b4dd222f700883cd) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99845 Reviewed-by: Thorsten Behrens diff --git a/sw/source/core/layout/frmtool.cxx b/sw/source/core/layout/frmtool.cxx index af968c9d3e58..745c1818d859 100644 --- a/sw/source/core/layout/frmtool.cxx +++ b/sw/source/core/layout/frmtool.cxx @@ -1615,6 +1615,10 @@ void InsertCnt_( SwLayoutFrame *pLay, SwDoc *pDoc, pPageMaker->CheckInsert( nIndex ); pFrame->InsertBehind( pLay, pPrv ); +if (pPage) // would null in SwCellFrame ctor +{ // tdf#134931 call ResetTurbo(); not sure if Paste() would be +pFrame->InvalidatePage(pPage); // better than InsertBehind()? +} // #i27138# // notify accessibility paragraphs objects about changed // CONTENT_FLOWS_FROM/_TO relation. ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-7-0' - sw/source
sw/source/core/layout/frmtool.cxx |4 1 file changed, 4 insertions(+) New commits: commit 31f083b483c2932dff515dfdef7f330c6142a485 Author: Michael Stahl AuthorDate: Fri Jul 31 13:32:29 2020 +0200 Commit: Thorsten Behrens CommitDate: Sun Aug 2 00:03:39 2020 +0200 tdf#134931 sw_redlinehide: fix layout following paste of table The pasted table does get a SwTabFrame but the problem is that TurboAction() is called and formats the pre-existing SwTextFrame and somehow that just sets all the valid flags on the new SwTabFrame without doing any formatting. Previously, SwNodes::CopyNodes(bNewFrames=true) would call SwTabFrame::Paste() which invalidates the page. In InsertCnt_(), for new SwSectionFrames InvalidatePage() is already called so do the same for SwTabFrame which gets rid of the "turbo". (regression from 166b5010b402a41b192b1659093a25acf9065fd9) Change-Id: I970a04bd8e76f5418bddb66af915ac466f44daf3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99867 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit 5f7b937e9f81824f11022bc6b4dd222f700883cd) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99844 Reviewed-by: Thorsten Behrens diff --git a/sw/source/core/layout/frmtool.cxx b/sw/source/core/layout/frmtool.cxx index 05ab000c359c..15e1d71eb7e8 100644 --- a/sw/source/core/layout/frmtool.cxx +++ b/sw/source/core/layout/frmtool.cxx @@ -1615,6 +1615,10 @@ void InsertCnt_( SwLayoutFrame *pLay, SwDoc *pDoc, pPageMaker->CheckInsert( nIndex ); pFrame->InsertBehind( pLay, pPrv ); +if (pPage) // would null in SwCellFrame ctor +{ // tdf#134931 call ResetTurbo(); not sure if Paste() would be +pFrame->InvalidatePage(pPage); // better than InsertBehind()? +} // #i27138# // notify accessibility paragraphs objects about changed // CONTENT_FLOWS_FROM/_TO relation. ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'libreoffice-7-0' - sw/qa sw/source
sw/qa/extras/uiwriter/data/tdf134436.fodt | 83 sw/qa/extras/uiwriter/uiwriter.cxx | 81 +++ sw/source/core/doc/DocumentContentOperationsManager.cxx | 15 ++ 3 files changed, 178 insertions(+), 1 deletion(-) New commits: commit 50af5ecd1484457cccb8a62b920bf78cbe49d253 Author: Michael Stahl AuthorDate: Thu Jul 30 18:27:28 2020 +0200 Commit: Thorsten Behrens CommitDate: Sun Aug 2 00:04:46 2020 +0200 tdf#134436 sw: fix SwUndoDelete::RedoImpl() with section at end... ... of document; the root cause is that in some intermediate delete operation, the delete will remove a section start/end node pair that surrounds the last text node in the document, but SwUndoDelete::RedoImpl() will not remove it, thus for subsequent Undo actions the indexes are messed up and weird things happen. Fix this in DocumentContentOperationsManager::DeleteRangeImplImpl(), with the same weird "is point at the end" check as SwUndoDelete. Change-Id: Iebf20d3c129c69692df8d57e3c5b9e6fec281e4b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99810 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit 22a77cb83a3769a8b43d80565282988a74214866) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99835 Reviewed-by: Thorsten Behrens diff --git a/sw/qa/extras/uiwriter/data/tdf134436.fodt b/sw/qa/extras/uiwriter/data/tdf134436.fodt new file mode 100644 index ..40d02a83a23b --- /dev/null +++ b/sw/qa/extras/uiwriter/data/tdf134436.fodt @@ -0,0 +1,83 @@ + + +http://openoffice.org/2009/office"; xmlns:css3t="http://www.w3.org/TR/css3-text/"; xmlns:grddl="http://www.w3.org/2003/g/data-view#"; xmlns:xhtml="http://www.w3.org/1999/xhtml"; xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xmlns:xsd="http://www.w3.org/2001/XMLSchema"; xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:oooc="http://openoffice.org/2004/calc"; xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:ooow="http://openoffice.org/2004/writer"; xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:dc="http://purl.org/dc/elements/1.1/"; xmlns:rpt="http://openoffice.org/2005/report"; xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:config="urn:oasis:names:tc:opendocument:xmlns :config:1.0" xmlns:xlink="http://www.w3.org/1999/xlink"; xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:ooo="http://openoffice.org/2004/office"; xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2" xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0" xmlns:tableooo="http://openoffice.org/2009/table"; xmlns:drawooo="http://openoffice.org/2010/draw"; xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0" xmlns:dom="http://www.w3.org/2001/xml-events"; xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML"; xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:script="ur n:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:xforms="http://www.w3.org/2002/xforms"; office:version="1.3" office:mimetype="application/vnd.oasis.opendocument.text"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + a + + + + b + + + + + + diff --git a/sw/qa/extras/uiwriter/uiwriter.cxx b/sw/qa/extras/uiwriter/uiwriter.cxx index f9077e1bb02e..54ae76383693 100644 --- a/sw/qa/extras/uiwriter/uiwriter.cxx +++ b/sw/qa/extras/uiwriter/uiwriter.cxx @@ -5531,6 +5531,87 @@ void SwUiWriterTest::testRedlineCopyPaste() CPPUNIT_ASSERT_EQUAL(OUString("abcdefgh"), pTextNode->GetText()); } +CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf134436) +{ +load(DATA_DIRECTORY, "tdf134436.fodt"); + +SwXTextDocument* pXTextDocument = dynamic_cast(mxComponent.get()); +CPPUNIT_ASSERT(pXTextDocument); +SwDoc * pDoc = pXTextDocument->GetDocShell()->GetDoc(); +CPPUNIT_ASSERT(pDoc); +SwWrtShell * pWrtShell = pDoc->GetDocShell()->GetWrtShell(); +CPPUNIT_ASSERT(pWrtShell); + +uno::Reference xModel(mxComponent, uno::UNO_QUERY); +uno::
[Libreoffice-commits] core.git: Branch 'libreoffice-6-4' - sw/qa sw/source
sw/qa/extras/uiwriter/data/tdf134436.fodt | 83 sw/qa/extras/uiwriter/uiwriter.cxx | 81 +++ sw/source/core/doc/DocumentContentOperationsManager.cxx | 13 ++ 3 files changed, 177 insertions(+) New commits: commit a45400449536d75b4858821d88197fffefe66631 Author: Michael Stahl AuthorDate: Thu Jul 30 18:27:28 2020 +0200 Commit: Thorsten Behrens CommitDate: Sun Aug 2 00:05:17 2020 +0200 tdf#134436 sw: fix SwUndoDelete::RedoImpl() with section at end... ... of document; the root cause is that in some intermediate delete operation, the delete will remove a section start/end node pair that surrounds the last text node in the document, but SwUndoDelete::RedoImpl() will not remove it, thus for subsequent Undo actions the indexes are messed up and weird things happen. Fix this in DocumentContentOperationsManager::DeleteRangeImplImpl(), with the same weird "is point at the end" check as SwUndoDelete. Change-Id: Iebf20d3c129c69692df8d57e3c5b9e6fec281e4b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99810 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit 22a77cb83a3769a8b43d80565282988a74214866) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99858 Reviewed-by: Thorsten Behrens diff --git a/sw/qa/extras/uiwriter/data/tdf134436.fodt b/sw/qa/extras/uiwriter/data/tdf134436.fodt new file mode 100644 index ..40d02a83a23b --- /dev/null +++ b/sw/qa/extras/uiwriter/data/tdf134436.fodt @@ -0,0 +1,83 @@ + + +http://openoffice.org/2009/office"; xmlns:css3t="http://www.w3.org/TR/css3-text/"; xmlns:grddl="http://www.w3.org/2003/g/data-view#"; xmlns:xhtml="http://www.w3.org/1999/xhtml"; xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xmlns:xsd="http://www.w3.org/2001/XMLSchema"; xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:oooc="http://openoffice.org/2004/calc"; xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:ooow="http://openoffice.org/2004/writer"; xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:dc="http://purl.org/dc/elements/1.1/"; xmlns:rpt="http://openoffice.org/2005/report"; xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:config="urn:oasis:names:tc:opendocument:xmlns :config:1.0" xmlns:xlink="http://www.w3.org/1999/xlink"; xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:ooo="http://openoffice.org/2004/office"; xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2" xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0" xmlns:tableooo="http://openoffice.org/2009/table"; xmlns:drawooo="http://openoffice.org/2010/draw"; xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0" xmlns:dom="http://www.w3.org/2001/xml-events"; xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML"; xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:script="ur n:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:xforms="http://www.w3.org/2002/xforms"; office:version="1.3" office:mimetype="application/vnd.oasis.opendocument.text"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + a + + + + b + + + + + + diff --git a/sw/qa/extras/uiwriter/uiwriter.cxx b/sw/qa/extras/uiwriter/uiwriter.cxx index 157773a7648a..c14306e233c9 100644 --- a/sw/qa/extras/uiwriter/uiwriter.cxx +++ b/sw/qa/extras/uiwriter/uiwriter.cxx @@ -5472,6 +5472,87 @@ void SwUiWriterTest::testRedlineCopyPaste() CPPUNIT_ASSERT_EQUAL(OUString("abcdefgh"), pTextNode->GetText()); } +CPPUNIT_TEST_FIXTURE(SwUiWriterTest, testTdf134436) +{ +load(DATA_DIRECTORY, "tdf134436.fodt"); + +SwXTextDocument* pXTextDocument = dynamic_cast(mxComponent.get()); +CPPUNIT_ASSERT(pXTextDocument); +SwDoc * pDoc = pXTextDocument->GetDocShell()->GetDoc(); +CPPUNIT_ASSERT(pDoc); +SwWrtShell * pWrtShell = pDoc->GetDocShell()->GetWrtShell(); +CPPUNIT_ASSERT(pWrtShell); + +uno::Reference xModel(mxComponent, uno::UNO_QUERY); +uno::Reference xTex
[Libreoffice-commits] core.git: Branch 'libreoffice-6-4' - sw/source
sw/source/core/layout/tabfrm.cxx |1 + 1 file changed, 1 insertion(+) New commits: commit ffb822516a84c57c19638eafd51a4059a0592d5a Author: Michael Stahl AuthorDate: Fri Jul 31 14:46:13 2020 +0200 Commit: Thorsten Behrens CommitDate: Sun Aug 2 00:05:57 2020 +0200 tdf#134965 sw: avoid RemoveFollowFlowLine() SNAFU A follow-flow-line SwRowFrame is deleted in RemoveFollowFlowLine() while it is being iterated in stack frame #18. 0 SwRowFrame::~SwRowFrame() (this=0xaa035b0, __in_chrg=) at sw/source/core/layout/tabfrm.cxx:3807 1 SwFrame::DestroyFrame(SwFrame*) (pFrame=0xaa035b0) at sw/source/core/layout/ssfrm.cxx:389 2 SwTabFrame::RemoveFollowFlowLine() (this=0x9c16790) at sw/source/core/layout/tabfrm.cxx:945 3 SwTabFrame::MakeAll(OutputDevice*) (this=0x9c16790, pRenderContext=0x72afaf0) at sw/source/core/layout/tabfrm.cxx:2203 4 SwFrame::PrepareMake(OutputDevice*) (this=0x9c16790, pRenderContext=0x72afaf0) at sw/source/core/layout/calcmove.cxx:370 5 SwFrame::Calc(OutputDevice*) const (this=0x9c16790, pRenderContext=0x72afaf0) at sw/source/core/layout/trvlfrm.cxx:1791 6 SwFrame::PrepareMake(OutputDevice*) (this=0x925b740, pRenderContext=0x72afaf0) at sw/source/core/layout/calcmove.cxx:248 7 SwFrame::Calc(OutputDevice*) const (this=0x925b740, pRenderContext=0x72afaf0) at sw/source/core/layout/trvlfrm.cxx:1791 8 SwFrame::PrepareMake(OutputDevice*) (this=0x925b8e0, pRenderContext=0x72afaf0) at sw/source/core/layout/calcmove.cxx:248 9 SwFrame::Calc(OutputDevice*) const (this=0x925b8e0, pRenderContext=0x72afaf0) at sw/source/core/layout/trvlfrm.cxx:1791 10 SwFrame::PrepareMake(OutputDevice*) (this=0x925ba70, pRenderContext=0x72afaf0) at sw/source/core/layout/calcmove.cxx:248 11 SwFrame::Calc(OutputDevice*) const (this=0x925ba70, pRenderContext=0x72afaf0) at sw/source/core/layout/trvlfrm.cxx:1791 12 SwFrame::MakePos() (this=0x925bc20) at sw/source/core/layout/calcmove.cxx:552 13 SwTextFrame::MakePos() (this=0x925bc20) at sw/source/core/text/frmform.cxx:339 14 SwContentFrame::MakeAll(OutputDevice*) (this=0x925bc20) at sw/source/core/layout/calcmove.cxx:1408 15 SwFrame::PrepareMake(OutputDevice*) (this=0x925bc20, pRenderContext=0x72afaf0) at sw/source/core/layout/calcmove.cxx:370 16 SwFrame::Calc(OutputDevice*) const (this=0x925bc20, pRenderContext=0x72afaf0) at sw/source/core/layout/trvlfrm.cxx:1791 17 SwContentFrame::CalcLowers(SwLayoutFrame&, SwLayoutFrame const&, long, bool) (rLay=..., rDontLeave=..., nBottom=168478, bSkipRowSpanCells=true) at sw/source/core/layout/tabfrm.cxx:1521 18 lcl_RecalcRow(SwRowFrame&, long) (rRow=..., nBottom=168478) at sw/source/core/layout/tabfrm.cxx:1651 19 SwTabFrame::MakeAll(OutputDevice*) (this=0x93ec7e0, pRenderContext=0x72afaf0) at sw/source/core/layout/tabfrm.cxx:2421 20 SwFrame::PrepareMake(OutputDevice*) (this=0x3df3cc0, pRenderContext=0x72afaf0) at sw/source/core/layout/calcmove.cxx:316 21 SwFrame::Calc(OutputDevice*) const (this=0x3df3cc0, pRenderContext=0x72afaf0) at sw/source/core/layout/trvlfrm.cxx:1791 22 GetFrameOfModify(SwRootFrame const*, SwModify const&, SwFrameType, SwPosition const*, std::pair const*) (pLayout=0x72aa850, rMod=..., nFrameType=(SwFrameType::Txt | SwFrameType::NoTxt), pPos=0x71f35e0, pViewPosAndCalcFrame=0x7ffc99f591a0) at sw/source/core/layout/frmtool.cxx:3697 23 SwContentNode::getLayoutFrame(SwRootFrame const*, SwPosition const*, std::pair const*) const (this=0x6fcfb50, _pRoot=0x72aa850, pPos=0x71f35e0, pViewPosAndCalcFrame=0x7ffc99f591a0) at sw/source/core/docnode/node.cxx:1194 24 SwCursorShell::GetCurrFrame(bool) const (this=0x72a9730, bCalcFrame=true) at sw/source/core/crsr/crsrsh.cxx:2455 25 SwFEShell::GetAnyCurRect(CurRectType, Point const*, com::sun::star::uno::Reference const&) const (this=0x72a9730, eType=CurRectType::PageCalc, pPt=0x0, xObj=empty uno::Reference) at sw/source/core/frmedt/fews.cxx:113 26 SwView::StateStatusLine(SfxItemSet&) (this=0x72af430, rSet=SfxItemSet of pool 0x6fa3d50 with parent 0x0 and Which ranges: [(1, 1), (10221, 10221), (10223, 10225), (11064, 11065), (21182, 21182), (21185, 21185), (21189, 21189)] = {...}) at sw/source/uibase/uiview/view2.cxx:1517 Not obvious why this changed with calling MakeFrames() instead of SwNodes::CopyNodes(bNewFrames=true) or how to best prevent it; adding another FrameDeleteGuard avoids the crash at least. (regression from 166b5010b402a41b192b1659093a25acf9065fd9) Change-Id: Ifd5a0c93064c9536429dda30a2c4ebc7a31b7e7d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99870 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit aed92491f356b008fe1cd25b5cd6cc43279db3a3) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99848 Reviewed-by: Thorsten Behrens diff --git a/sw/source/core/layout/tabfrm.cxx b/sw/source/cor
[Libreoffice-commits] core.git: Branch 'libreoffice-7-0' - sw/source
sw/source/core/layout/tabfrm.cxx |1 + 1 file changed, 1 insertion(+) New commits: commit 2d681cd9433c5e68cdb24c00128fe1153c278fce Author: Michael Stahl AuthorDate: Fri Jul 31 14:46:13 2020 +0200 Commit: Thorsten Behrens CommitDate: Sun Aug 2 00:05:44 2020 +0200 tdf#134965 sw: avoid RemoveFollowFlowLine() SNAFU A follow-flow-line SwRowFrame is deleted in RemoveFollowFlowLine() while it is being iterated in stack frame #18. 0 SwRowFrame::~SwRowFrame() (this=0xaa035b0, __in_chrg=) at sw/source/core/layout/tabfrm.cxx:3807 1 SwFrame::DestroyFrame(SwFrame*) (pFrame=0xaa035b0) at sw/source/core/layout/ssfrm.cxx:389 2 SwTabFrame::RemoveFollowFlowLine() (this=0x9c16790) at sw/source/core/layout/tabfrm.cxx:945 3 SwTabFrame::MakeAll(OutputDevice*) (this=0x9c16790, pRenderContext=0x72afaf0) at sw/source/core/layout/tabfrm.cxx:2203 4 SwFrame::PrepareMake(OutputDevice*) (this=0x9c16790, pRenderContext=0x72afaf0) at sw/source/core/layout/calcmove.cxx:370 5 SwFrame::Calc(OutputDevice*) const (this=0x9c16790, pRenderContext=0x72afaf0) at sw/source/core/layout/trvlfrm.cxx:1791 6 SwFrame::PrepareMake(OutputDevice*) (this=0x925b740, pRenderContext=0x72afaf0) at sw/source/core/layout/calcmove.cxx:248 7 SwFrame::Calc(OutputDevice*) const (this=0x925b740, pRenderContext=0x72afaf0) at sw/source/core/layout/trvlfrm.cxx:1791 8 SwFrame::PrepareMake(OutputDevice*) (this=0x925b8e0, pRenderContext=0x72afaf0) at sw/source/core/layout/calcmove.cxx:248 9 SwFrame::Calc(OutputDevice*) const (this=0x925b8e0, pRenderContext=0x72afaf0) at sw/source/core/layout/trvlfrm.cxx:1791 10 SwFrame::PrepareMake(OutputDevice*) (this=0x925ba70, pRenderContext=0x72afaf0) at sw/source/core/layout/calcmove.cxx:248 11 SwFrame::Calc(OutputDevice*) const (this=0x925ba70, pRenderContext=0x72afaf0) at sw/source/core/layout/trvlfrm.cxx:1791 12 SwFrame::MakePos() (this=0x925bc20) at sw/source/core/layout/calcmove.cxx:552 13 SwTextFrame::MakePos() (this=0x925bc20) at sw/source/core/text/frmform.cxx:339 14 SwContentFrame::MakeAll(OutputDevice*) (this=0x925bc20) at sw/source/core/layout/calcmove.cxx:1408 15 SwFrame::PrepareMake(OutputDevice*) (this=0x925bc20, pRenderContext=0x72afaf0) at sw/source/core/layout/calcmove.cxx:370 16 SwFrame::Calc(OutputDevice*) const (this=0x925bc20, pRenderContext=0x72afaf0) at sw/source/core/layout/trvlfrm.cxx:1791 17 SwContentFrame::CalcLowers(SwLayoutFrame&, SwLayoutFrame const&, long, bool) (rLay=..., rDontLeave=..., nBottom=168478, bSkipRowSpanCells=true) at sw/source/core/layout/tabfrm.cxx:1521 18 lcl_RecalcRow(SwRowFrame&, long) (rRow=..., nBottom=168478) at sw/source/core/layout/tabfrm.cxx:1651 19 SwTabFrame::MakeAll(OutputDevice*) (this=0x93ec7e0, pRenderContext=0x72afaf0) at sw/source/core/layout/tabfrm.cxx:2421 20 SwFrame::PrepareMake(OutputDevice*) (this=0x3df3cc0, pRenderContext=0x72afaf0) at sw/source/core/layout/calcmove.cxx:316 21 SwFrame::Calc(OutputDevice*) const (this=0x3df3cc0, pRenderContext=0x72afaf0) at sw/source/core/layout/trvlfrm.cxx:1791 22 GetFrameOfModify(SwRootFrame const*, SwModify const&, SwFrameType, SwPosition const*, std::pair const*) (pLayout=0x72aa850, rMod=..., nFrameType=(SwFrameType::Txt | SwFrameType::NoTxt), pPos=0x71f35e0, pViewPosAndCalcFrame=0x7ffc99f591a0) at sw/source/core/layout/frmtool.cxx:3697 23 SwContentNode::getLayoutFrame(SwRootFrame const*, SwPosition const*, std::pair const*) const (this=0x6fcfb50, _pRoot=0x72aa850, pPos=0x71f35e0, pViewPosAndCalcFrame=0x7ffc99f591a0) at sw/source/core/docnode/node.cxx:1194 24 SwCursorShell::GetCurrFrame(bool) const (this=0x72a9730, bCalcFrame=true) at sw/source/core/crsr/crsrsh.cxx:2455 25 SwFEShell::GetAnyCurRect(CurRectType, Point const*, com::sun::star::uno::Reference const&) const (this=0x72a9730, eType=CurRectType::PageCalc, pPt=0x0, xObj=empty uno::Reference) at sw/source/core/frmedt/fews.cxx:113 26 SwView::StateStatusLine(SfxItemSet&) (this=0x72af430, rSet=SfxItemSet of pool 0x6fa3d50 with parent 0x0 and Which ranges: [(1, 1), (10221, 10221), (10223, 10225), (11064, 11065), (21182, 21182), (21185, 21185), (21189, 21189)] = {...}) at sw/source/uibase/uiview/view2.cxx:1517 Not obvious why this changed with calling MakeFrames() instead of SwNodes::CopyNodes(bNewFrames=true) or how to best prevent it; adding another FrameDeleteGuard avoids the crash at least. (regression from 166b5010b402a41b192b1659093a25acf9065fd9) Change-Id: Ifd5a0c93064c9536429dda30a2c4ebc7a31b7e7d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99870 Tested-by: Jenkins Reviewed-by: Michael Stahl (cherry picked from commit aed92491f356b008fe1cd25b5cd6cc43279db3a3) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99847 Reviewed-by: Thorsten Behrens diff --git a/sw/source/core/layout/tabfrm.cxx b/sw/source/cor
Re: How to add new source code file in directory
Hello Régis, Here's what you should type: git add Julien -- Sent from: http://document-foundation-mail-archive.969070.n3.nabble.com/Dev-f1639786.html ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice
compiling Libreoffice online android doesn't display document.
Hi, I have Build LOOL for android following instructions from this link https://github.com/LibreOffice/online/blob/master/android/README, I have used master branches for building both core and online repositories and have compiled build for ArmV7 on ubuntu 18.04 machine but when opening any type of document it just opens a white screen on the device, also when i try to edit the document i can see the cursor but no text is visible as i type and after i save the edited document and open it using other app the changes are saved in the document. I am not sure if i have missed something in the build process could you suggest some guide or solution to this problem. -- Sent from: http://document-foundation-mail-archive.969070.n3.nabble.com/Dev-f1639786.html ___ LibreOffice mailing list LibreOffice@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice
[Libreoffice-commits] core.git: svx/source
svx/source/gallery2/gallerybinaryengine.cxx |1 - 1 file changed, 1 deletion(-) New commits: commit 0ef35ba89894d2aa2cb96f991f1b874b8017ec4d Author: Andrea Gelmini AuthorDate: Sat Aug 1 23:08:39 2020 +0200 Commit: Andrea Gelmini CommitDate: Sun Aug 2 08:46:59 2020 +0200 Removed duplicated include Change-Id: I3decadf858fd6d107efd6ac78e1b56f7195b4e91 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99776 Tested-by: Jenkins Reviewed-by: Andrea Gelmini diff --git a/svx/source/gallery2/gallerybinaryengine.cxx b/svx/source/gallery2/gallerybinaryengine.cxx index f5ddc213000e..987a0ffb22e7 100644 --- a/svx/source/gallery2/gallerybinaryengine.cxx +++ b/svx/source/gallery2/gallerybinaryengine.cxx @@ -41,7 +41,6 @@ #include #include #include -#include #include using namespace ::com::sun::star; ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-6.4' - sw/source
sw/source/ui/dbui/mmresultdialogs.cxx | 19 +-- 1 file changed, 9 insertions(+), 10 deletions(-) New commits: commit 9bdef35a045bbfc064c9dc2c1df7acd91daac9e3 Author: Gülşah Köse AuthorDate: Mon Jul 27 22:26:13 2020 +0300 Commit: Andras Timar CommitDate: Sun Aug 2 08:58:22 2020 +0200 Use enable/disable widgets instead of hide/show. Change-Id: Ied3eb671155b88d47a5a91fcd81351492ccf9bb9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99560 Tested-by: Jenkins Reviewed-by: Gülşah Köse (cherry picked from commit 08d16c76e48b43e4f74bb6f9e57605f43f27) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99534 Tested-by: Jenkins CollaboraOffice Reviewed-by: Andras Timar diff --git a/sw/source/ui/dbui/mmresultdialogs.cxx b/sw/source/ui/dbui/mmresultdialogs.cxx index bbc88ebb30bc..23b3a640f6bb 100644 --- a/sw/source/ui/dbui/mmresultdialogs.cxx +++ b/sw/source/ui/dbui/mmresultdialogs.cxx @@ -345,9 +345,9 @@ SwMMResultEmailDialog::SwMMResultEmailDialog(weld::Window* pParent) m_xOKButton->connect_clicked(LINK(this, SwMMResultEmailDialog, SendDocumentsHdl_Impl)); -m_xPasswordCB->hide(); -m_xPasswordFT->hide(); -m_xPasswordLB->hide(); +m_xPasswordCB->set_sensitive(false); +m_xPasswordFT->set_sensitive(false); +m_xPasswordLB->set_sensitive(false); FillInEmailSettings(); } @@ -854,17 +854,16 @@ IMPL_LINK(SwMMResultEmailDialog, SendTypeHdl_Impl, weld::ComboBox&, rBox, void) if(bIsPDF) { -m_xPasswordCB->show(); -m_xPasswordFT->show(); -m_xPasswordLB->show(); +m_xPasswordCB->set_sensitive(true); +m_xPasswordFT->set_sensitive(true); +m_xPasswordLB->set_sensitive(true); CheckHdl(*m_xPasswordCB); } else { -m_xPasswordCB->hide(); -m_xPasswordFT->hide(); -m_xPasswordLB->hide(); - +m_xPasswordCB->set_sensitive(false); +m_xPasswordFT->set_sensitive(false); +m_xPasswordLB->set_sensitive(false); } } ___ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits