From 42e2cc0976bcc12fd596adfa67da98a3573c7404 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Mon, 2 May 2016 20:24:46 +0200 Subject: [PATCH] use same tooltip timeout throughout Ardour -- part one --- libs/gtkmm2ext/gtkmm2ext/persistent_tooltip.h | 1 + libs/gtkmm2ext/persistent_tooltip.cc | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/libs/gtkmm2ext/gtkmm2ext/persistent_tooltip.h b/libs/gtkmm2ext/gtkmm2ext/persistent_tooltip.h index 3b0fe48184..9e87f89a1b 100644 --- a/libs/gtkmm2ext/gtkmm2ext/persistent_tooltip.h +++ b/libs/gtkmm2ext/gtkmm2ext/persistent_tooltip.h @@ -45,6 +45,7 @@ class LIBGTKMM2EXT_API PersistentTooltip : public sigc::trackable private: static bool _tooltips_enabled; + static unsigned int _tooltip_timeout; bool timeout (); void show (); void hide (); diff --git a/libs/gtkmm2ext/persistent_tooltip.cc b/libs/gtkmm2ext/persistent_tooltip.cc index 7ee1c3ba6f..3040b0f9ac 100644 --- a/libs/gtkmm2ext/persistent_tooltip.cc +++ b/libs/gtkmm2ext/persistent_tooltip.cc @@ -19,6 +19,7 @@ #include #include +#include #include "gtkmm2ext/persistent_tooltip.h" #include "pbd/stacktrace.h" @@ -30,6 +31,7 @@ using namespace Gtk; using namespace Gtkmm2ext; bool PersistentTooltip::_tooltips_enabled = true; +unsigned int PersistentTooltip::_tooltip_timeout = 500; /** @param target The widget to provide the tooltip for */ PersistentTooltip::PersistentTooltip (Gtk::Widget* target, bool draggable, int margin_y) @@ -45,6 +47,7 @@ PersistentTooltip::PersistentTooltip (Gtk::Widget* target, bool draggable, int target->signal_leave_notify_event().connect (sigc::mem_fun (*this, &PersistentTooltip::leave), false); target->signal_button_press_event().connect (sigc::mem_fun (*this, &PersistentTooltip::press), false); target->signal_button_release_event().connect (sigc::mem_fun (*this, &PersistentTooltip::release), false); + _tooltip_timeout = Gtk::Settings::get_default()->property_gtk_tooltip_timeout (); } PersistentTooltip::~PersistentTooltip () @@ -58,7 +61,7 @@ PersistentTooltip::enter (GdkEventCrossing *) if (_timeout.connected()) { leave(NULL); } - _timeout = Glib::signal_timeout().connect (sigc::mem_fun (*this, &PersistentTooltip::timeout), 500); + _timeout = Glib::signal_timeout().connect (sigc::mem_fun (*this, &PersistentTooltip::timeout), _tooltip_timeout); return false; }