diff options
author | Caolán McNamara <caolanm@redhat.com> | 2019-10-27 16:17:59 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2019-10-29 14:14:04 +0100 |
commit | 07bde58988705ca45a619eb7a4e670a5d951abf6 (patch) | |
tree | b3e76af23a024d7549d31b5df0642a79b769028d /vcl | |
parent | 09e3d45cdc5c739e5246388a83ccfc6d76bf66e9 (diff) |
use activate-link instead of clicked
so we can return true to consume the event and not continue to the
default url dispatch handler
Change-Id: I66400363a57d528a25d68a7f9314a8bc7d95876e
Reviewed-on: https://gerrit.libreoffice.org/81555
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'vcl')
-rw-r--r-- | vcl/source/app/salvtables.cxx | 5 | ||||
-rw-r--r-- | vcl/unx/gtk3/gtk3gtkinst.cxx | 6 |
2 files changed, 6 insertions, 5 deletions
diff --git a/vcl/source/app/salvtables.cxx b/vcl/source/app/salvtables.cxx index 6b4dcd0a4032..83def998e546 100644 --- a/vcl/source/app/salvtables.cxx +++ b/vcl/source/app/salvtables.cxx @@ -2691,8 +2691,9 @@ public: IMPL_LINK(SalInstanceLinkButton, ClickHdl, FixedHyperlink&, rButton, void) { - m_aOrigClickHdl.Call(rButton); - signal_clicked(); + bool bConsumed = signal_activate_link(); + if (!bConsumed) + m_aOrigClickHdl.Call(rButton); } class SalInstanceRadioButton : public SalInstanceButton, public virtual weld::RadioButton diff --git a/vcl/unx/gtk3/gtk3gtkinst.cxx b/vcl/unx/gtk3/gtk3gtkinst.cxx index b72495c13dc4..58d6f86a0f83 100644 --- a/vcl/unx/gtk3/gtk3gtkinst.cxx +++ b/vcl/unx/gtk3/gtk3gtkinst.cxx @@ -6953,18 +6953,18 @@ private: GtkLinkButton* m_pButton; gulong m_nSignalId; - static void signalClicked(GtkButton*, gpointer widget) + static bool signalActivateLink(GtkButton*, gpointer widget) { GtkInstanceLinkButton* pThis = static_cast<GtkInstanceLinkButton*>(widget); SolarMutexGuard aGuard; - pThis->signal_clicked(); + return pThis->signal_activate_link(); } public: GtkInstanceLinkButton(GtkLinkButton* pButton, GtkInstanceBuilder* pBuilder, bool bTakeOwnership) : GtkInstanceContainer(GTK_CONTAINER(pButton), pBuilder, bTakeOwnership) , m_pButton(pButton) - , m_nSignalId(g_signal_connect(pButton, "clicked", G_CALLBACK(signalClicked), this)) + , m_nSignalId(g_signal_connect(pButton, "activate-link", G_CALLBACK(signalActivateLink), this)) { } |