diff options
-rw-r--r-- | svx/source/svdraw/svdedxv.cxx | 9 | ||||
-rw-r--r-- | svx/source/table/svdotable.cxx | 19 |
2 files changed, 14 insertions, 14 deletions
diff --git a/svx/source/svdraw/svdedxv.cxx b/svx/source/svdraw/svdedxv.cxx index ff71c07db5bb..ea521d790752 100644 --- a/svx/source/svdraw/svdedxv.cxx +++ b/svx/source/svdraw/svdedxv.cxx @@ -2228,9 +2228,8 @@ void SdrObjEditView::TakeFormatPaintBrush( std::shared_ptr< SfxItemSet >& rForma if( pObj && (pObj->GetObjInventor() == SdrInventor::Default ) && (pObj->GetObjIdentifier() == OBJ_TABLE) ) { auto pTable = static_cast<const sdr::table::SdrTableObj*>(pObj); - if (pTable->getActiveCell().is()) { - SfxItemSet const & rSet = pTable->GetActiveCellItemSet(); - rFormatSet->Put(rSet); + if (mxSelectionController.is() && pTable->getActiveCell().is()) { + mxSelectionController->GetAttributes(*rFormatSet, false); } } } @@ -2378,8 +2377,8 @@ void SdrObjEditView::ApplyFormatPaintBrush( SfxItemSet& rFormatSet, bool bNoChar if( pObj && (pObj->GetObjInventor() == SdrInventor::Default) && (pObj->GetObjIdentifier() == OBJ_TABLE) ) { auto pTable = static_cast<sdr::table::SdrTableObj*>(pObj); - if (pTable->getActiveCell().is()) { - pTable->SetMergedItemSetAndBroadcastOnActiveCell(rFormatSet); + if (pTable->getActiveCell().is() && mxSelectionController.is()) { + mxSelectionController->SetAttributes(rFormatSet, false); } } } diff --git a/svx/source/table/svdotable.cxx b/svx/source/table/svdotable.cxx index 4c51d4149465..ef58d32b4a5b 100644 --- a/svx/source/table/svdotable.cxx +++ b/svx/source/table/svdotable.cxx @@ -1768,18 +1768,19 @@ bool SdrTableObj::BegTextEdit(SdrOutliner& rOutl) void SdrTableObj::EndTextEdit(SdrOutliner& rOutl) { - if(rOutl.IsModified()) + + if (GetModel() && GetModel()->IsUndoEnabled() && !mpImpl->maUndos.empty()) { - if( GetModel() && GetModel()->IsUndoEnabled() ) - { - // These actions should be on the undo stack after text edit. - for (std::unique_ptr<SdrUndoAction>& pAction : mpImpl->maUndos) - GetModel()->AddUndo(pAction.release()); - mpImpl->maUndos.clear(); + // These actions should be on the undo stack after text edit. + for (std::unique_ptr<SdrUndoAction>& pAction : mpImpl->maUndos) + GetModel()->AddUndo(pAction.release()); + mpImpl->maUndos.clear(); - GetModel()->AddUndo( GetModel()->GetSdrUndoFactory().CreateUndoGeoObject(*this) ); - } + GetModel()->AddUndo(GetModel()->GetSdrUndoFactory().CreateUndoGeoObject(*this)); + } + if(rOutl.IsModified()) + { OutlinerParaObject* pNewText = nullptr; Paragraph* p1stPara = rOutl.GetParagraph( 0 ); sal_Int32 nParaAnz = rOutl.GetParagraphCount(); |