[gtk+] range: simplify code



commit 2d2a81682debb5d17888314a087a0fc49734d283
Author: Cosimo Cecchi <cosimoc gnome org>
Date:   Wed Feb 24 13:53:13 2016 -0800

    range: simplify code
    
    Instead of directly accessing the widget allocation, we can use the
    gadget API to test whether the coordinates are in the main gadget.

 gtk/gtkrange.c |   11 +----------
 1 files changed, 1 insertions(+), 10 deletions(-)
---
diff --git a/gtk/gtkrange.c b/gtk/gtkrange.c
index 7e02fdd..2b482c4 100644
--- a/gtk/gtkrange.c
+++ b/gtk/gtkrange.c
@@ -3390,18 +3390,11 @@ gtk_range_move_slider (GtkRange     *range,
     gtk_widget_error_bell (GTK_WIDGET (range));
 }
 
-#define POINT_IN_RECT(xcoord, ycoord, rect) \
- ((xcoord) >= (rect).x &&                   \
-  (xcoord) <  ((rect).x + (rect).width) &&  \
-  (ycoord) >= (rect).y &&                   \
-  (ycoord) <  ((rect).y + (rect).height))
-
 /* Update mouse location, return TRUE if it changes */
 static void
 gtk_range_update_mouse_location (GtkRange *range)
 {
   GtkRangePrivate *priv = range->priv;
-  GtkAllocation allocation;
   gint x, y;
   MouseLocation old;
   GtkWidget *widget = GTK_WIDGET (range);
@@ -3411,8 +3404,6 @@ gtk_range_update_mouse_location (GtkRange *range)
   x = priv->mouse_x;
   y = priv->mouse_y;
 
-  gtk_widget_get_allocation (widget, &allocation);
-
   if (priv->grab_location != MOUSE_OUTSIDE)
     priv->mouse_location = priv->grab_location;
   else if (priv->stepper_a_gadget &&
@@ -3431,7 +3422,7 @@ gtk_range_update_mouse_location (GtkRange *range)
     priv->mouse_location = MOUSE_SLIDER;
   else if (gtk_css_gadget_content_box_contains_point (priv->trough_gadget, x, y))
     priv->mouse_location = MOUSE_TROUGH;
-  else if (POINT_IN_RECT (x, y, allocation))
+  else if (gtk_css_gadget_margin_box_contains_point (priv->gadget, x, y))
     priv->mouse_location = MOUSE_WIDGET;
   else
     priv->mouse_location = MOUSE_OUTSIDE;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]