diff options
author | Caolán McNamara <caolanm@redhat.com> | 2021-08-04 12:44:37 +0100 |
---|---|---|
committer | Michael Stahl <michael.stahl@allotropia.de> | 2021-08-10 19:52:56 +0200 |
commit | e77d6b92c51a8adf517fd283cf8984345bc3f8ce (patch) | |
tree | d36db90c2d7348781c85deb4c15bdd4f8ad2eb0a /include | |
parent | 99420dc0b80df22d12519efca05803898fbfcfbd (diff) |
Resolves: tdf#143023 explicitly connect to ControlBase focus-[in/out]
instead of listening to the generic vcl::Window/Control focus events.
The thing which really gets/loses focus is now a Widget hosted inside
the ControlBase.
also contains...
fix comment
Change-Id: Ia1783aff3fded7fd73de2b04b9aced647771a92c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119998
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
establish that DbCellControl Window member is always a ControlBase
and remove resulting known redundant dynamic_casting
Change-Id: I5f098ef1adee3ad5d2a2bc5fcd30523f980df2f9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119999
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
EventWindow is always a svt::ControlBase
Change-Id: I012d0bea687aa6d5965a4e2f6ce3899bfc629f1b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120004
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Diffstat (limited to 'include')
-rw-r--r-- | include/svtools/editbrowsebox.hxx | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/include/svtools/editbrowsebox.hxx b/include/svtools/editbrowsebox.hxx index 0a9067d73733..052fe1d26092 100644 --- a/include/svtools/editbrowsebox.hxx +++ b/include/svtools/editbrowsebox.hxx @@ -172,18 +172,25 @@ namespace svt virtual bool ProcessKey(const KeyEvent& rKEvt); - // chain after the FocusOutHdl + // chain after the FocusInHdl void SetFocusInHdl(const Link<LinkParamNone*,void>& rHdl) { m_aFocusInHdl = rHdl; } + // chain after the FocusOutHdl + void SetFocusOutHdl(const Link<LinkParamNone*,void>& rHdl) + { + m_aFocusOutHdl = rHdl; + } + protected: DECL_LINK(KeyInputHdl, const KeyEvent&, bool); DECL_LINK(FocusInHdl, weld::Widget&, void); DECL_LINK(FocusOutHdl, weld::Widget&, void); private: Link<LinkParamNone*,void> m_aFocusInHdl; + Link<LinkParamNone*,void> m_aFocusOutHdl; }; class SVT_DLLPUBLIC EditControlBase : public ControlBase |