summaryrefslogtreecommitdiff
path: root/sc
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2019-08-19 10:34:56 +0100
committerCaolán McNamara <caolanm@redhat.com>2019-08-19 12:39:51 +0200
commited8dc2fcf8faa90657d500ec3b5d06e1352d8e82 (patch)
tree6a2d3f042df822f0529850b062b013cd2b8b298d /sc
parentc54e0ce0bf8a32a4928e00f3885a92e3db188bc8 (diff)
Resolves: tdf#127003 explicit grab focus needs explicit link callback
Change-Id: I5131e5c49e7f7c2ef9bac8943420643ad8afef38 Reviewed-on: https://gerrit.libreoffice.org/77707 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'sc')
-rw-r--r--sc/source/ui/inc/tphfedit.hxx1
-rw-r--r--sc/source/ui/pagedlg/tphfedit.cxx12
2 files changed, 13 insertions, 0 deletions
diff --git a/sc/source/ui/inc/tphfedit.hxx b/sc/source/ui/inc/tphfedit.hxx
index ce47f287a6c4..175c0fa443d3 100644
--- a/sc/source/ui/inc/tphfedit.hxx
+++ b/sc/source/ui/inc/tphfedit.hxx
@@ -71,6 +71,7 @@ public:
protected:
virtual void makeEditEngine() override;
virtual bool KeyInput( const KeyEvent& rKEvt ) override;
+ virtual bool MouseButtonDown(const MouseEvent& rMEvt) override;
virtual void GetFocus() override;
virtual void LoseFocus() override;
diff --git a/sc/source/ui/pagedlg/tphfedit.cxx b/sc/source/ui/pagedlg/tphfedit.cxx
index 9a41ffdd5476..d0cc03aadfb5 100644
--- a/sc/source/ui/pagedlg/tphfedit.cxx
+++ b/sc/source/ui/pagedlg/tphfedit.cxx
@@ -252,6 +252,18 @@ void ScEditWindow::LoseFocus()
WeldEditView::LoseFocus();
}
+bool ScEditWindow::MouseButtonDown(const MouseEvent& rMEvt)
+{
+ bool bHadFocus = HasFocus();
+ bool bRet = WeldEditView::MouseButtonDown(rMEvt);
+ if (!bHadFocus)
+ {
+ assert(HasFocus());
+ GetFocus();
+ }
+ return bRet;
+}
+
css::uno::Reference< css::accessibility::XAccessible > ScEditWindow::CreateAccessible()
{
pAcc = new ScAccessibleEditControlObject(this);