summaryrefslogtreecommitdiff
path: root/sc/source/ui/condformat
diff options
context:
space:
mode:
authorMike Kaganski <mike.kaganski@collabora.com>2018-12-04 21:28:46 +0300
committerMike Kaganski <mike.kaganski@collabora.com>2018-12-05 05:26:50 +0100
commit6c5839d399c6277a7f2f0e214a20996761563525 (patch)
treea42e71deff1c886de13919da88fbeb75ee1e67a6 /sc/source/ui/condformat
parent63ff8602c16b0c26927dc3413b12a5368fe367b0 (diff)
tdf#117332: select replaced text to properly replace it next time
... othervise the next drag event will insert the new range immediately after the just inserted, resulting in invalid reference. Regression after commit 42aece949ec96c775b31216bddd723aa5321e966 don't replace content of formula field when selecting range, tdf#58635 Change-Id: I7dfdc1ce041ebadf4406dbb605676d87cd489efa Reviewed-on: https://gerrit.libreoffice.org/64574 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
Diffstat (limited to 'sc/source/ui/condformat')
-rw-r--r--sc/source/ui/condformat/condformatdlg.cxx6
1 files changed, 6 insertions, 0 deletions
diff --git a/sc/source/ui/condformat/condformatdlg.cxx b/sc/source/ui/condformat/condformatdlg.cxx
index 64952101d0ea..79e0e3f233d6 100644
--- a/sc/source/ui/condformat/condformatdlg.cxx
+++ b/sc/source/ui/condformat/condformatdlg.cxx
@@ -674,7 +674,13 @@ void ScCondFormatDlg::SetReference(const ScRange& rRef, ScDocument*)
OUString aRefStr(rRef.Format(nFlags, mpViewData->GetDocument(),
ScAddress::Details(mpViewData->GetDocument()->GetAddressConvention(), 0, 0)));
if (pEdit != mpEdRange)
+ {
+ Selection sel = pEdit->GetSelection();
+ sel.Justify(); // in case of RtL selection
+ sel.Max() = sel.Min() + aRefStr.getLength();
pEdit->ReplaceSelected(aRefStr);
+ pEdit->SetSelection(sel); // to replace it again with next drag event
+ }
else
pEdit->SetRefString( aRefStr );
updateTitle();