From bb4e3a2916ce751ed97bdf2fea1a3ec54a9c1337 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Sun, 2 Nov 2014 08:53:29 -0500 Subject: add Gtkmm2ext::event_inside_widget_window() --- libs/gtkmm2ext/utils.cc | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'libs/gtkmm2ext/utils.cc') diff --git a/libs/gtkmm2ext/utils.cc b/libs/gtkmm2ext/utils.cc index f3c5b6795f..b4926ac43b 100644 --- a/libs/gtkmm2ext/utils.cc +++ b/libs/gtkmm2ext/utils.cc @@ -754,6 +754,33 @@ Gtkmm2ext::disable_tooltips () gtk_rc_parse_string ("gtk-enable-tooltips = 0"); } +bool +Gtkmm2ext::event_inside_widget_window (Gtk::Widget& widget, GdkEvent* ev) +{ + gdouble evx, evy; + + if (!gdk_event_get_root_coords (ev, &evx, &evy)) { + return false; + } + + gint wx; + gint wy; + gint width, height, depth; + gint x, y; + + Glib::RefPtr widget_window = widget.get_window(); + + widget_window->get_geometry (x, y, width, height, depth); + widget_window->get_root_origin (wx, wy); + + if ((evx >= wx && evx < wx + width) && + (evy >= wy && evy < wy + height)) { + return true; + } + + return false; +} + const char* Gtkmm2ext::event_type_string (int event_type) { -- cgit v1.2.3