summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--svx/source/svdraw/svdedxv.cxx9
-rw-r--r--svx/source/table/svdotable.cxx19
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();