summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKohei Yoshida <kohei.yoshida@collabora.com>2014-10-26 14:43:14 -0700
committerKohei Yoshida <kohei.yoshida@collabora.com>2014-10-26 14:45:52 -0700
commit10fc138307afb4b39baddb0d56eb8e986e5d29ea (patch)
tree2cbfd2b7ee0991e162af65152281841f647f0090
parent8c6d3cd45e2183a19f91e9a30c1fdc699de393f8 (diff)
fdo#85215: Don't adjust references wrt cell position when disabled.
Change-Id: Ie1a12cc189bcb66fad59ea9901ac0dc95bb68788
-rw-r--r--sc/source/core/data/table3.cxx7
-rw-r--r--sc/source/ui/undo/undosort.cxx3
2 files changed, 6 insertions, 4 deletions
diff --git a/sc/source/core/data/table3.cxx b/sc/source/core/data/table3.cxx
index e41458b9e9d7..3e8250ab219a 100644
--- a/sc/source/core/data/table3.cxx
+++ b/sc/source/core/data/table3.cxx
@@ -854,8 +854,11 @@ void ScTable::SortReorderByRow(
ScAddress aOldPos = rCell.maCell.mpFormula->aPos;
ScFormulaCell* pNew = rCell.maCell.mpFormula->Clone( aCellPos, SC_CLONECELL_DEFAULT);
- pNew->CopyAllBroadcasters(*rCell.maCell.mpFormula);
- pNew->GetCode()->AdjustReferenceOnMovedOrigin(aOldPos, aCellPos);
+ if (pArray->IsUpdateRefs())
+ {
+ pNew->CopyAllBroadcasters(*rCell.maCell.mpFormula);
+ pNew->GetCode()->AdjustReferenceOnMovedOrigin(aOldPos, aCellPos);
+ }
rCellStore.push_back(pNew);
}
diff --git a/sc/source/ui/undo/undosort.cxx b/sc/source/ui/undo/undosort.cxx
index fbd10ae45f4a..ead54d4541cc 100644
--- a/sc/source/ui/undo/undosort.cxx
+++ b/sc/source/ui/undo/undosort.cxx
@@ -46,8 +46,7 @@ void UndoSort::Execute( bool bUndo )
ScUndoUtil::MarkSimpleBlock(pDocShell, maParam.maSortRange);
- pDocShell->PostPaint(maParam.maSortRange, PAINT_GRID);
- pDocShell->PostDataChanged();
+ rDoc.SetDirty(maParam.maSortRange);
if (!aParam.mbUpdateRefs)
rDoc.BroadcastCells(aParam.maSortRange, SC_HINT_DATACHANGED);
}