diff options
author | Caolán McNamara <caolanm@redhat.com> | 2021-02-11 15:52:07 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2021-02-11 20:40:48 +0100 |
commit | 816994a1759e1760e4b55f327a2c957fba3860e0 (patch) | |
tree | 2235f1ca5fbbbab5ff85e08c38b4ce633b9d6de0 /extensions | |
parent | 8fd90cf3b8df45f4e2b4273d9bbec52a88f4751f (diff) |
tdf#140239 leave current cursor valid if the contents won't change
Change-Id: I854e8e94c7415d9046088e364f966390c4fb762f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110770
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'extensions')
-rw-r--r-- | extensions/source/propctrlr/usercontrol.cxx | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/extensions/source/propctrlr/usercontrol.cxx b/extensions/source/propctrlr/usercontrol.cxx index 74390e1fcde2..fbf829b62938 100644 --- a/extensions/source/propctrlr/usercontrol.cxx +++ b/extensions/source/propctrlr/usercontrol.cxx @@ -241,18 +241,16 @@ namespace pcr { } - void SAL_CALL OFileUrlControl::setValue( const Any& _rValue ) + void SAL_CALL OFileUrlControl::setValue(const Any& rValue) { OUString sURL; - if ( _rValue >>= sURL ) - { - if (GraphicObject::isGraphicObjectUniqueIdURL(sURL)) - getTypedControlWindow()->set_entry_text(getTypedControlWindow()->GetPlaceHolder()); - else - getTypedControlWindow()->set_entry_text(sURL); - } - else - getTypedControlWindow()->set_entry_text( "" ); + SvtURLBox* pControlWindow = getTypedControlWindow(); + bool bSuccess = rValue >>= sURL; + if (bSuccess && GraphicObject::isGraphicObjectUniqueIdURL(sURL)) + sURL = pControlWindow->GetPlaceHolder(); + // tdf#140239 leave current cursor valid if the contents won't change + if (sURL != pControlWindow->GetURL()) + pControlWindow->set_entry_text(sURL); } Any SAL_CALL OFileUrlControl::getValue() |