mirror of https://github.com/GNOME/gimp.git
Remove more gdk_pointer_grab() where they are not strictly needed
and replace them by gtk_grab_add()/remove().
This commit is contained in:
parent
022af2610e
commit
180cb656ae
|
@ -351,9 +351,8 @@ gimp_dash_editor_button_press (GtkWidget *widget,
|
||||||
|
|
||||||
if (bevent->button == 1 && bevent->type == GDK_BUTTON_PRESS)
|
if (bevent->button == 1 && bevent->type == GDK_BUTTON_PRESS)
|
||||||
{
|
{
|
||||||
gdk_pointer_grab (gtk_widget_get_window (widget), FALSE,
|
gtk_grab_add (widget);
|
||||||
GDK_BUTTON_RELEASE_MASK | GDK_BUTTON1_MOTION_MASK,
|
|
||||||
NULL, NULL, bevent->time);
|
|
||||||
index = dash_x_to_index (editor, bevent->x);
|
index = dash_x_to_index (editor, bevent->x);
|
||||||
|
|
||||||
editor->edit_mode = ! editor->segments [index];
|
editor->edit_mode = ! editor->segments [index];
|
||||||
|
@ -375,8 +374,7 @@ gimp_dash_editor_button_release (GtkWidget *widget,
|
||||||
|
|
||||||
if (bevent->button == 1)
|
if (bevent->button == 1)
|
||||||
{
|
{
|
||||||
gdk_display_pointer_ungrab (gtk_widget_get_display (GTK_WIDGET (editor)),
|
gtk_grab_remove (widget);
|
||||||
bevent->time);
|
|
||||||
|
|
||||||
update_options_from_segments (editor);
|
update_options_from_segments (editor);
|
||||||
}
|
}
|
||||||
|
|
|
@ -528,9 +528,7 @@ gimp_histogram_view_button_press (GtkWidget *widget,
|
||||||
GtkAllocation allocation;
|
GtkAllocation allocation;
|
||||||
gint width;
|
gint width;
|
||||||
|
|
||||||
gdk_pointer_grab (gtk_widget_get_window (widget), FALSE,
|
gtk_grab_add (widget);
|
||||||
GDK_BUTTON_RELEASE_MASK | GDK_BUTTON1_MOTION_MASK,
|
|
||||||
NULL, NULL, bevent->time);
|
|
||||||
|
|
||||||
gtk_widget_get_allocation (widget, &allocation);
|
gtk_widget_get_allocation (widget, &allocation);
|
||||||
|
|
||||||
|
@ -556,8 +554,7 @@ gimp_histogram_view_button_release (GtkWidget *widget,
|
||||||
{
|
{
|
||||||
gint start, end;
|
gint start, end;
|
||||||
|
|
||||||
gdk_display_pointer_ungrab (gtk_widget_get_display (GTK_WIDGET (view)),
|
gtk_grab_remove (widget);
|
||||||
bevent->time);
|
|
||||||
|
|
||||||
start = view->start;
|
start = view->start;
|
||||||
end = view->end;
|
end = view->end;
|
||||||
|
|
|
@ -671,11 +671,7 @@ gimp_color_select_xy_events (GtkWidget *widget,
|
||||||
x = bevent->x;
|
x = bevent->x;
|
||||||
y = bevent->y;
|
y = bevent->y;
|
||||||
|
|
||||||
gdk_pointer_grab (gtk_widget_get_window (select->xy_color), FALSE,
|
gtk_grab_add (widget);
|
||||||
GDK_POINTER_MOTION_HINT_MASK |
|
|
||||||
GDK_BUTTON_MOTION_MASK |
|
|
||||||
GDK_BUTTON_RELEASE_MASK,
|
|
||||||
NULL, NULL, bevent->time);
|
|
||||||
select->drag_mode = DRAG_XY;
|
select->drag_mode = DRAG_XY;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -690,8 +686,7 @@ gimp_color_select_xy_events (GtkWidget *widget,
|
||||||
x = bevent->x;
|
x = bevent->x;
|
||||||
y = bevent->y;
|
y = bevent->y;
|
||||||
|
|
||||||
gdk_display_pointer_ungrab (gtk_widget_get_display (widget),
|
gtk_grab_remove (widget);
|
||||||
bevent->time);
|
|
||||||
select->drag_mode = DRAG_NONE;
|
select->drag_mode = DRAG_NONE;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -793,11 +788,7 @@ gimp_color_select_z_events (GtkWidget *widget,
|
||||||
|
|
||||||
z = bevent->y;
|
z = bevent->y;
|
||||||
|
|
||||||
gdk_pointer_grab (gtk_widget_get_window (select->z_color), FALSE,
|
gtk_grab_add (widget);
|
||||||
GDK_POINTER_MOTION_HINT_MASK |
|
|
||||||
GDK_BUTTON_MOTION_MASK |
|
|
||||||
GDK_BUTTON_RELEASE_MASK,
|
|
||||||
NULL, NULL, bevent->time);
|
|
||||||
select->drag_mode = DRAG_Z;
|
select->drag_mode = DRAG_Z;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -811,8 +802,7 @@ gimp_color_select_z_events (GtkWidget *widget,
|
||||||
|
|
||||||
z = bevent->y;
|
z = bevent->y;
|
||||||
|
|
||||||
gdk_display_pointer_ungrab (gtk_widget_get_display (widget),
|
gtk_grab_remove (widget);
|
||||||
bevent->time);
|
|
||||||
select->drag_mode = DRAG_NONE;
|
select->drag_mode = DRAG_NONE;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -100,7 +100,10 @@ gimp_offset_area_init (GimpOffsetArea *area)
|
||||||
area->display_ratio_x = 1.0;
|
area->display_ratio_x = 1.0;
|
||||||
area->display_ratio_y = 1.0;
|
area->display_ratio_y = 1.0;
|
||||||
|
|
||||||
gtk_widget_add_events (GTK_WIDGET (area), GDK_BUTTON_PRESS_MASK);
|
gtk_widget_add_events (GTK_WIDGET (area),
|
||||||
|
GDK_BUTTON_PRESS_MASK |
|
||||||
|
GDK_BUTTON_RELEASE_MASK |
|
||||||
|
GDK_BUTTON1_MOTION_MASK);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -353,15 +356,15 @@ gimp_offset_area_event (GtkWidget *widget,
|
||||||
switch (event->type)
|
switch (event->type)
|
||||||
{
|
{
|
||||||
case GDK_BUTTON_PRESS:
|
case GDK_BUTTON_PRESS:
|
||||||
gdk_pointer_grab (gtk_widget_get_window (widget), FALSE,
|
if (event->button.button == 1)
|
||||||
(GDK_BUTTON1_MOTION_MASK |
|
{
|
||||||
GDK_BUTTON_RELEASE_MASK),
|
gtk_grab_add (widget);
|
||||||
NULL, NULL, event->button.time);
|
|
||||||
|
|
||||||
orig_offset_x = area->offset_x;
|
orig_offset_x = area->offset_x;
|
||||||
orig_offset_y = area->offset_y;
|
orig_offset_y = area->offset_y;
|
||||||
start_x = event->button.x;
|
start_x = event->button.x;
|
||||||
start_y = event->button.y;
|
start_y = event->button.y;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case GDK_MOTION_NOTIFY:
|
case GDK_MOTION_NOTIFY:
|
||||||
|
@ -381,16 +384,19 @@ gimp_offset_area_event (GtkWidget *widget,
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case GDK_BUTTON_RELEASE:
|
case GDK_BUTTON_RELEASE:
|
||||||
gdk_display_pointer_ungrab (gtk_widget_get_display (widget),
|
if (event->button.button == 1)
|
||||||
event->button.time);
|
{
|
||||||
|
gtk_grab_remove (widget);
|
||||||
|
|
||||||
start_x = start_y = 0;
|
start_x = start_y = 0;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
break;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
return FALSE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
|
|
Loading…
Reference in New Issue