summaryrefslogtreecommitdiff
path: root/editeng
diff options
context:
space:
mode:
authorSamuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>2021-11-30 23:34:11 +0100
committerSamuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>2021-12-06 14:11:44 +0100
commitb9362e87a3646a6693b81fb0d40e28ce7813a251 (patch)
tree38bd07bc0ff06cdb8e4bc0a0483400d61371d053 /editeng
parent8368f48df8d67f6c712534647f4d375bf219ae99 (diff)
tdf#145671 Don't open URL twice in cell edit mode
Change-Id: I8a324d6a037c8a5c0efc0b2825657513c2f9841c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126159 Tested-by: Jenkins Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
Diffstat (limited to 'editeng')
-rw-r--r--editeng/source/editeng/editeng.cxx3
-rw-r--r--editeng/source/editeng/impedit2.cxx6
2 files changed, 6 insertions, 3 deletions
diff --git a/editeng/source/editeng/editeng.cxx b/editeng/source/editeng/editeng.cxx
index ae30e651b594..b557dd693d72 100644
--- a/editeng/source/editeng/editeng.cxx
+++ b/editeng/source/editeng/editeng.cxx
@@ -2588,8 +2588,9 @@ OUString EditEngine::CalcFieldValue( const SvxFieldItem&, sal_Int32, sal_Int32,
return OUString(' ');
}
-void EditEngine::FieldClicked( const SvxFieldItem& )
+bool EditEngine::FieldClicked( const SvxFieldItem& )
{
+ return false;
}
diff --git a/editeng/source/editeng/impedit2.cxx b/editeng/source/editeng/impedit2.cxx
index 47672cb090f3..cbbfddff51c7 100644
--- a/editeng/source/editeng/impedit2.cxx
+++ b/editeng/source/editeng/impedit2.cxx
@@ -611,8 +611,11 @@ bool ImpEditEngine::MouseButtonUp( const MouseEvent& rMEvt, EditView* pView )
Point aLogicClick = rOutDev.PixelToLogic(rMEvt.GetPosPixel());
if (const SvxFieldItem* pFld = pView->GetField(aLogicClick))
{
+ bool bUrlOpened = GetEditEnginePtr()->FieldClicked( *pFld );
+ auto pUrlField = dynamic_cast<const SvxURLField*>(pFld->GetField());
+
// tdf#121039 When in edit mode, editeng is responsible for opening the URL on mouse click
- if (auto pUrlField = dynamic_cast<const SvxURLField*>(pFld->GetField()))
+ if (!bUrlOpened && pUrlField)
{
bool bCtrlClickHappened = rMEvt.IsMod1();
bool bCtrlClickSecOption
@@ -627,7 +630,6 @@ bool ImpEditEngine::MouseButtonUp( const MouseEvent& rMEvt, EditView* pView )
css::system::SystemShellExecuteFlags::DEFAULTS);
}
}
- GetEditEnginePtr()->FieldClicked( *pFld );
}
}
}