diff options
author | Robin Gareus <robin@gareus.org> | 2016-04-27 01:07:53 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2016-04-27 01:07:53 +0200 |
commit | 49e5494907a8536442dbf808416096734bec453c (patch) | |
tree | a480f0f0d05ad187a7787692819ae2b866593db3 /libs | |
parent | 54e01f4e48739590e25ea8448a5a80a1b95e8cec (diff) |
also hide persistent tooltips
debatable, since most of them are not "help/tool info" but rather
"current value display".
Then again tooltip is tooltip and can be annoying or not wanted.
Diffstat (limited to 'libs')
-rw-r--r-- | libs/gtkmm2ext/gtkmm2ext/persistent_tooltip.h | 3 | ||||
-rw-r--r-- | libs/gtkmm2ext/persistent_tooltip.cc | 4 | ||||
-rw-r--r-- | libs/gtkmm2ext/utils.cc | 3 |
3 files changed, 9 insertions, 1 deletions
diff --git a/libs/gtkmm2ext/gtkmm2ext/persistent_tooltip.h b/libs/gtkmm2ext/gtkmm2ext/persistent_tooltip.h index 9883fd2020..3b0fe48184 100644 --- a/libs/gtkmm2ext/gtkmm2ext/persistent_tooltip.h +++ b/libs/gtkmm2ext/gtkmm2ext/persistent_tooltip.h @@ -40,8 +40,11 @@ class LIBGTKMM2EXT_API PersistentTooltip : public sigc::trackable void set_center_alignment (bool align_to_center); virtual bool dragging () const; + static void set_tooltips_enabled (bool en) { _tooltips_enabled = en; } + static bool tooltips_enabled () { return _tooltips_enabled; } private: + static bool _tooltips_enabled; bool timeout (); void show (); void hide (); diff --git a/libs/gtkmm2ext/persistent_tooltip.cc b/libs/gtkmm2ext/persistent_tooltip.cc index c7cb3f4df2..7ee1c3ba6f 100644 --- a/libs/gtkmm2ext/persistent_tooltip.cc +++ b/libs/gtkmm2ext/persistent_tooltip.cc @@ -29,6 +29,8 @@ using namespace std; using namespace Gtk; using namespace Gtkmm2ext; +bool PersistentTooltip::_tooltips_enabled = true; + /** @param target The widget to provide the tooltip for */ PersistentTooltip::PersistentTooltip (Gtk::Widget* target, bool draggable, int margin_y) : _target (target) @@ -115,7 +117,7 @@ PersistentTooltip::hide () void PersistentTooltip::show () { - if (_tip.empty()) { + if (_tip.empty() || !_tooltips_enabled) { return; } diff --git a/libs/gtkmm2ext/utils.cc b/libs/gtkmm2ext/utils.cc index 2b0eb86a9c..7590ed2d78 100644 --- a/libs/gtkmm2ext/utils.cc +++ b/libs/gtkmm2ext/utils.cc @@ -33,6 +33,7 @@ #include <gtkmm/tooltip.h> #include "gtkmm2ext/utils.h" +#include "gtkmm2ext/persistent_tooltip.h" #include "i18n.h" @@ -836,12 +837,14 @@ void Gtkmm2ext::enable_tooltips () { gtk_rc_parse_string ("gtk-enable-tooltips = 1"); + PersistentTooltip::set_tooltips_enabled (true); } void Gtkmm2ext::disable_tooltips () { gtk_rc_parse_string ("gtk-enable-tooltips = 0"); + PersistentTooltip::set_tooltips_enabled (false); } bool |