[gtk+/gdk-backend] Don't access GdkDragContext fields directly
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/gdk-backend] Don't access GdkDragContext fields directly
- Date: Fri, 10 Dec 2010 06:31:09 +0000 (UTC)
commit c84ec8d166fb4c6bbcbe35f4b55e5a0663ff1e0b
Author: Matthias Clasen <mclasen redhat com>
Date: Fri Dec 10 00:59:07 2010 -0500
Don't access GdkDragContext fields directly
Instead use the accessors.
gtk/gtkcalendar.c | 10 +++---
gtk/gtkdnd.c | 74 +++++++++++++++++++-----------------------
gtk/gtkentry.c | 6 ++--
gtk/gtkfilechooserdefault.c | 8 ++--
gtk/gtkiconview.c | 6 ++--
gtk/gtktextview.c | 8 ++--
gtk/gtktreeview.c | 6 ++--
7 files changed, 56 insertions(+), 62 deletions(-)
---
diff --git a/gtk/gtkcalendar.c b/gtk/gtkcalendar.c
index 57a26d6..1836ef8 100644
--- a/gtk/gtkcalendar.c
+++ b/gtk/gtkcalendar.c
@@ -3379,19 +3379,19 @@ gtk_calendar_drag_motion (GtkWidget *widget,
{
GtkCalendarPrivate *priv = GTK_CALENDAR_GET_PRIVATE (widget);
GdkAtom target;
-
- if (!priv->drag_highlight)
+
+ if (!priv->drag_highlight)
{
priv->drag_highlight = 1;
gtk_drag_highlight (widget);
}
-
+
target = gtk_drag_dest_find_target (widget, context, NULL);
- if (target == GDK_NONE || context->suggested_action == 0)
+ if (target == GDK_NONE || gdk_drag_context_get_suggested_action (context) == 0)
gdk_drag_status (context, 0, time);
else
{
- set_status_pending (context, context->suggested_action);
+ set_status_pending (context, gdk_drag_context_get_suggested_action (context));
gtk_drag_get_data (widget, context, target, time);
}
diff --git a/gtk/gtkdnd.c b/gtk/gtkdnd.c
index 91e05a9..7f21dad 100644
--- a/gtk/gtkdnd.c
+++ b/gtk/gtkdnd.c
@@ -979,7 +979,6 @@ gtk_drag_get_data (GtkWidget *widget,
g_return_if_fail (GTK_IS_WIDGET (widget));
g_return_if_fail (GDK_IS_DRAG_CONTEXT (context));
- g_return_if_fail (!context->is_source);
selection_widget = gtk_drag_get_ipc_widget (widget);
@@ -1014,14 +1013,13 @@ gtk_drag_get_source_widget (GdkDragContext *context)
GSList *tmp_list;
g_return_val_if_fail (GDK_IS_DRAG_CONTEXT (context), NULL);
- g_return_val_if_fail (!context->is_source, NULL);
tmp_list = source_widgets;
while (tmp_list)
{
GtkWidget *ipc_widget = tmp_list->data;
- if (gtk_widget_get_window (ipc_widget) == context->source_window)
+ if (gtk_widget_get_window (ipc_widget) == gdk_drag_context_get_source_window (context))
{
GtkDragSourceInfo *info;
info = g_object_get_data (G_OBJECT (ipc_widget), "gtk-info");
@@ -1055,13 +1053,12 @@ gtk_drag_finish (GdkDragContext *context,
GdkAtom target = GDK_NONE;
g_return_if_fail (GDK_IS_DRAG_CONTEXT (context));
- g_return_if_fail (!context->is_source);
if (success && del)
{
target = gdk_atom_intern_static_string ("DELETE");
}
- else if (context->protocol == GDK_DRAG_PROTO_MOTIF)
+ else if (gdk_drag_context_get_protocol (context) == GDK_DRAG_PROTO_MOTIF)
{
target = gdk_atom_intern_static_string (success ?
"XmTRANSFER_SUCCESS" :
@@ -1070,7 +1067,7 @@ gtk_drag_finish (GdkDragContext *context,
if (target != GDK_NONE)
{
- GtkWidget *selection_widget = gtk_drag_get_ipc_widget_for_screen (gdk_window_get_screen (context->source_window));
+ GtkWidget *selection_widget = gtk_drag_get_ipc_widget_for_screen (gdk_window_get_screen (gdk_drag_context_get_source_window (context)));
g_object_ref (context);
@@ -1637,7 +1634,7 @@ _gtk_drag_dest_handle_event (GtkWidget *toplevel,
else if (event->type == GDK_DROP_START && !info->proxy_source)
{
gdk_drop_reply (context, found, event->dnd.time);
- if ((context->protocol == GDK_DRAG_PROTO_MOTIF) && !found)
+ if ((gdk_drag_context_get_protocol (context) == GDK_DRAG_PROTO_MOTIF) && !found)
gtk_drag_finish (context, FALSE, FALSE, event->dnd.time);
}
}
@@ -1655,7 +1652,7 @@ _gtk_drag_dest_handle_event (GtkWidget *toplevel,
* @target_list: (allow-none): list of droppable targets, or %NULL to use
* gtk_drag_dest_get_target_list (@widget).
*
- * Looks for a match between @context->targets and the
+ * Looks for a match between the supported targets of @context and the
* @dest_target_list, returning the first matching target, otherwise
* returning %GDK_NONE. @dest_target_list should usually be the return
* value from gtk_drag_dest_get_target_list(), but some widgets may
@@ -1663,7 +1660,8 @@ _gtk_drag_dest_handle_event (GtkWidget *toplevel,
* that case, they will have to implement a drag_motion handler that
* passes the correct target list to this function.
*
- * Return value: first target that the source offers and the dest can accept, or %GDK_NONE
+ * Return value: first target that the source offers and the dest can
+ * accept, or %GDK_NONE
**/
GdkAtom
gtk_drag_dest_find_target (GtkWidget *widget,
@@ -1676,7 +1674,6 @@ gtk_drag_dest_find_target (GtkWidget *widget,
g_return_val_if_fail (GTK_IS_WIDGET (widget), GDK_NONE);
g_return_val_if_fail (GDK_IS_DRAG_CONTEXT (context), GDK_NONE);
- g_return_val_if_fail (!context->is_source, GDK_NONE);
source_widget = gtk_drag_get_source_widget (context);
@@ -1691,7 +1688,7 @@ gtk_drag_dest_find_target (GtkWidget *widget,
while (tmp_target)
{
GtkTargetPair *pair = tmp_target->data;
- tmp_source = context->targets;
+ tmp_source = gdk_drag_context_list_targets (context);
while (tmp_source)
{
if (tmp_source->data == GUINT_TO_POINTER (pair->target))
@@ -1785,7 +1782,7 @@ gtk_drag_selection_received (GtkWidget *widget,
gtk_drag_finish (context,
(selection_data->length >= 0),
- (context->action == GDK_ACTION_MOVE),
+ (gdk_drag_context_get_selected_action (context) == GDK_ACTION_MOVE),
time);
}
@@ -1904,7 +1901,7 @@ gtk_drag_find_widget (GtkWidget *widget,
}
static void
-gtk_drag_proxy_begin (GtkWidget *widget,
+gtk_drag_proxy_begin (GtkWidget *widget,
GtkDragDestInfo *dest_info,
guint32 time)
{
@@ -1922,7 +1919,7 @@ gtk_drag_proxy_begin (GtkWidget *widget,
ipc_widget = gtk_drag_get_ipc_widget (widget);
context = gdk_drag_begin (gtk_widget_get_window (ipc_widget),
- dest_info->context->targets);
+ gdk_drag_context_list_targets (dest_info->context));
source_info = gtk_drag_get_source_info (context, TRUE);
@@ -1930,10 +1927,10 @@ gtk_drag_proxy_begin (GtkWidget *widget,
source_info->widget = g_object_ref (widget);
source_info->target_list = gtk_target_list_new (NULL, 0);
- tmp_list = dest_info->context->targets;
+ tmp_list = gdk_drag_context_list_targets (dest_info->context);
while (tmp_list)
{
- gtk_target_list_add (source_info->target_list,
+ gtk_target_list_add (source_info->target_list,
GDK_POINTER_TO_ATOM (tmp_list->data), 0, 0);
tmp_list = tmp_list->next;
}
@@ -2121,8 +2118,9 @@ gtk_drag_dest_motion (GtkWidget *widget,
dest_window, proto,
current_event->dnd.x_root,
current_event->dnd.y_root,
- context->suggested_action,
- context->actions, time);
+ gdk_drag_context_get_suggested_action (context),
+ gdk_drag_context_get_actions (context),
+ time);
if (!site->proxy_window && dest_window)
g_object_unref (dest_window);
@@ -2139,8 +2137,8 @@ gtk_drag_dest_motion (GtkWidget *widget,
if (site->track_motion || site->flags & GTK_DEST_DEFAULT_MOTION)
{
- if (context->suggested_action & site->actions)
- action = context->suggested_action;
+ if (gdk_drag_context_get_suggested_action (context) & site->actions)
+ action = gdk_drag_context_get_suggested_action (context);
else
{
gint i;
@@ -2148,7 +2146,7 @@ gtk_drag_dest_motion (GtkWidget *widget,
for (i = 0; i < 8; i++)
{
if ((site->actions & (1 << i)) &&
- (context->actions & (1 << i)))
+ (gdk_drag_context_get_actions (context) & (1 << i)))
{
action = (1 << i);
break;
@@ -2203,7 +2201,7 @@ gtk_drag_dest_drop (GtkWidget *widget,
if (site->do_proxy)
{
if (info->proxy_source ||
- (info->context->protocol == GDK_DRAG_PROTO_ROOTWIN))
+ (gdk_drag_context_get_protocol (info->context) == GDK_DRAG_PROTO_ROOTWIN))
{
gtk_drag_drop (info->proxy_source, time);
}
@@ -2243,8 +2241,9 @@ gtk_drag_dest_drop (GtkWidget *widget,
dest_window, proto,
current_event->dnd.x_root,
current_event->dnd.y_root,
- context->suggested_action,
- context->actions, time);
+ gdk_drag_context_get_suggested_action (context),
+ gdk_drag_context_get_actions (context),
+ time);
if (!site->proxy_window && dest_window)
g_object_unref (dest_window);
@@ -3022,7 +3021,6 @@ gtk_drag_set_icon_widget (GdkDragContext *context,
gint hot_y)
{
g_return_if_fail (GDK_IS_DRAG_CONTEXT (context));
- g_return_if_fail (context->is_source);
g_return_if_fail (GTK_IS_WIDGET (widget));
gtk_drag_set_icon_window (context, widget, hot_x, hot_y, FALSE);
@@ -3095,7 +3093,7 @@ set_icon_stock_pixbuf (GdkDragContext *context,
g_return_if_fail (pixbuf != NULL || stock_id != NULL);
g_return_if_fail (pixbuf == NULL || stock_id == NULL);
- screen = gdk_window_get_screen (context->source_window);
+ screen = gdk_window_get_screen (gdk_drag_context_get_source_window (context));
window = gtk_window_new (GTK_WINDOW_POPUP);
gtk_window_set_type_hint (GTK_WINDOW (window), GDK_WINDOW_TYPE_HINT_DND);
@@ -3121,7 +3119,7 @@ set_icon_stock_pixbuf (GdkDragContext *context,
else
g_object_ref (pixbuf);
- display = gdk_window_get_display (context->source_window);
+ display = gdk_window_get_display (gdk_drag_context_get_source_window (context));
width = gdk_pixbuf_get_width (pixbuf);
height = gdk_pixbuf_get_height (pixbuf);
@@ -3171,7 +3169,6 @@ gtk_drag_set_icon_pixbuf (GdkDragContext *context,
gint hot_y)
{
g_return_if_fail (GDK_IS_DRAG_CONTEXT (context));
- g_return_if_fail (context->is_source);
g_return_if_fail (GDK_IS_PIXBUF (pixbuf));
set_icon_stock_pixbuf (context, NULL, pixbuf, hot_x, hot_y, FALSE);
@@ -3194,7 +3191,6 @@ gtk_drag_set_icon_stock (GdkDragContext *context,
gint hot_y)
{
g_return_if_fail (GDK_IS_DRAG_CONTEXT (context));
- g_return_if_fail (context->is_source);
g_return_if_fail (stock_id != NULL);
set_icon_stock_pixbuf (context, stock_id, NULL, hot_x, hot_y, FALSE);
@@ -3262,13 +3258,12 @@ gtk_drag_set_icon_surface (GdkDragContext *context,
cairo_pattern_t *pattern;
g_return_if_fail (GDK_IS_DRAG_CONTEXT (context));
- g_return_if_fail (context->is_source);
g_return_if_fail (surface != NULL);
_gtk_cairo_surface_extents (surface, &extents);
- screen = gdk_window_get_screen (context->source_window);
+ screen = gdk_window_get_screen (gdk_drag_context_get_source_window (context));
window = gtk_window_new (GTK_WINDOW_POPUP);
gtk_window_set_type_hint (GTK_WINDOW (window), GDK_WINDOW_TYPE_HINT_DND);
@@ -3357,10 +3352,9 @@ gtk_drag_set_icon_name (GdkDragContext *context,
gint width, height, icon_size;
g_return_if_fail (GDK_IS_DRAG_CONTEXT (context));
- g_return_if_fail (context->is_source);
g_return_if_fail (icon_name != NULL);
- screen = gdk_window_get_screen (context->source_window);
+ screen = gdk_window_get_screen (gdk_drag_context_get_source_window (context));
g_return_if_fail (screen != NULL);
settings = gtk_settings_get_for_screen (screen);
@@ -3393,7 +3387,6 @@ void
gtk_drag_set_icon_default (GdkDragContext *context)
{
g_return_if_fail (GDK_IS_DRAG_CONTEXT (context));
- g_return_if_fail (context->is_source);
gtk_drag_set_icon_stock (context, GTK_STOCK_DND, -2, -2);
}
@@ -3436,7 +3429,7 @@ _gtk_drag_source_handle_event (GtkWidget *widget,
{
if (info->proxy_dest->proxy_drop_wait)
{
- gboolean result = context->action != 0;
+ gboolean result = gdk_drag_context_get_selected_action (context) != 0;
/* Aha - we can finally pass the MOTIF DROP on... */
gdk_drop_reply (info->proxy_dest->context, result, info->proxy_dest->proxy_drop_time);
@@ -3448,7 +3441,7 @@ _gtk_drag_source_handle_event (GtkWidget *widget,
else
{
gdk_drag_status (info->proxy_dest->context,
- event->dnd.context->action,
+ gdk_drag_context_get_selected_action (event->dnd.context),
event->dnd.time);
}
}
@@ -3456,7 +3449,7 @@ _gtk_drag_source_handle_event (GtkWidget *widget,
else if (info->have_grab)
{
cursor = gtk_drag_get_cursor (gtk_widget_get_display (widget),
- event->dnd.context->action,
+ gdk_drag_context_get_selected_action (event->dnd.context),
info);
if (info->cursor != cursor)
{
@@ -3526,7 +3519,7 @@ gtk_drag_source_check_selection (GtkDragSourceInfo *info,
tmp_list = tmp_list->next;
}
- if (info->context->protocol == GDK_DRAG_PROTO_MOTIF)
+ if (gdk_drag_context_get_protocol (info->context) == GDK_DRAG_PROTO_MOTIF)
{
gtk_selection_add_target (info->ipc_widget,
selection,
@@ -3640,7 +3633,7 @@ static void
gtk_drag_drop (GtkDragSourceInfo *info,
guint32 time)
{
- if (info->context->protocol == GDK_DRAG_PROTO_ROOTWIN)
+ if (gdk_drag_context_get_protocol (info->context) == GDK_DRAG_PROTO_ROOTWIN)
{
GtkSelectionData selection_data;
GList *tmp_list;
@@ -4328,7 +4321,8 @@ gtk_drag_button_release_cb (GtkWidget *widget,
if (event->button != info->button)
return FALSE;
- if ((info->context->action != 0) && (info->context->dest_window != NULL))
+ if ((gdk_drag_context_get_selected_action (info->context) != 0) &&
+ (gdk_drag_context_get_dest_window (info->context) != NULL))
{
gtk_drag_end (info, event->time);
gtk_drag_drop (info, event->time);
diff --git a/gtk/gtkentry.c b/gtk/gtkentry.c
index 4eb96a3..06b4123 100644
--- a/gtk/gtkentry.c
+++ b/gtk/gtkentry.c
@@ -8992,7 +8992,7 @@ gtk_entry_drag_motion (GtkWidget *widget,
gtk_drag_dest_find_target (widget, context, NULL) != GDK_NONE)
{
source_widget = gtk_drag_get_source_widget (context);
- suggested_action = context->suggested_action;
+ suggested_action = gdk_drag_context_get_suggested_action (context);
if (!gtk_editable_get_selection_bounds (GTK_EDITABLE (entry), &sel1, &sel2) ||
new_position < sel1 || new_position > sel2)
@@ -9002,7 +9002,7 @@ gtk_entry_drag_motion (GtkWidget *widget,
/* Default to MOVE, unless the user has
* pressed ctrl or alt to affect available actions
*/
- if ((context->actions & GDK_ACTION_MOVE) != 0)
+ if ((gdk_drag_context_get_actions (context) & GDK_ACTION_MOVE) != 0)
suggested_action = GDK_ACTION_MOVE;
}
@@ -9079,7 +9079,7 @@ gtk_entry_drag_data_received (GtkWidget *widget,
end_change (entry);
}
- gtk_drag_finish (context, TRUE, context->action == GDK_ACTION_MOVE, time);
+ gtk_drag_finish (context, TRUE, gdk_drag_context_get_selected_action (context) == GDK_ACTION_MOVE, time);
}
else
{
diff --git a/gtk/gtkfilechooserdefault.c b/gtk/gtkfilechooserdefault.c
index 1ae5758..8ef3673 100644
--- a/gtk/gtkfilechooserdefault.c
+++ b/gtk/gtkfilechooserdefault.c
@@ -3071,11 +3071,11 @@ shortcuts_drag_motion_cb (GtkWidget *widget,
}
#endif
- if (context->suggested_action == GDK_ACTION_COPY ||
- (context->actions & GDK_ACTION_COPY) != 0)
+ if (gdk_drag_context_get_suggested_action (context) == GDK_ACTION_COPY ||
+ (gdk_drag_context_get_actions (context) & GDK_ACTION_COPY) != 0)
action = GDK_ACTION_COPY;
- else if (context->suggested_action == GDK_ACTION_MOVE ||
- (context->actions & GDK_ACTION_MOVE) != 0)
+ else if (gdk_drag_context_get_suggested_action (context) == GDK_ACTION_MOVE ||
+ (gdk_drag_context_get_actions (context) & GDK_ACTION_MOVE) != 0)
action = GDK_ACTION_MOVE;
else
{
diff --git a/gtk/gtkiconview.c b/gtk/gtkiconview.c
index 17ce6af..f8afca1 100644
--- a/gtk/gtkiconview.c
+++ b/gtk/gtkiconview.c
@@ -6825,7 +6825,7 @@ out:
{
GtkWidget *source_widget;
- *suggested_action = context->suggested_action;
+ *suggested_action = gdk_drag_context_get_suggested_action (context);
source_widget = gtk_drag_get_source_widget (context);
if (source_widget == widget)
@@ -6833,7 +6833,7 @@ out:
/* Default to MOVE, unless the user has
* pressed ctrl or shift to affect available actions
*/
- if ((context->actions & GDK_ACTION_MOVE) != 0)
+ if ((gdk_drag_context_get_actions (context) & GDK_ACTION_MOVE) != 0)
*suggested_action = GDK_ACTION_MOVE;
}
@@ -7284,7 +7284,7 @@ gtk_icon_view_drag_data_received (GtkWidget *widget,
gtk_drag_finish (context,
accepted,
- (context->action == GDK_ACTION_MOVE),
+ (gdk_drag_context_get_selected_action (context) == GDK_ACTION_MOVE),
time);
gtk_tree_path_free (dest_row);
diff --git a/gtk/gtktextview.c b/gtk/gtktextview.c
index de6619d..0a49786 100644
--- a/gtk/gtktextview.c
+++ b/gtk/gtktextview.c
@@ -7028,7 +7028,7 @@ gtk_text_view_drag_motion (GtkWidget *widget,
{
GtkWidget *source_widget;
- suggested_action = context->suggested_action;
+ suggested_action = gdk_drag_context_get_suggested_action (context);
source_widget = gtk_drag_get_source_widget (context);
@@ -7037,7 +7037,7 @@ gtk_text_view_drag_motion (GtkWidget *widget,
/* Default to MOVE, unless the user has
* pressed ctrl or alt to affect available actions
*/
- if ((context->actions & GDK_ACTION_MOVE) != 0)
+ if ((gdk_drag_context_get_actions (context) & GDK_ACTION_MOVE) != 0)
suggested_action = GDK_ACTION_MOVE;
}
}
@@ -7194,7 +7194,7 @@ gtk_text_view_drag_data_received (GtkWidget *widget,
atoms = gtk_text_buffer_get_deserialize_formats (buffer, &n_atoms);
- for (list = context->targets; list; list = g_list_next (list))
+ for (list = gdk_drag_context_list_targets (context); list; list = g_list_next (list))
{
gint i;
@@ -7262,7 +7262,7 @@ gtk_text_view_drag_data_received (GtkWidget *widget,
done:
gtk_drag_finish (context, success,
- success && context->action == GDK_ACTION_MOVE,
+ success && gdk_drag_context_get_selected_action (context) == GDK_ACTION_MOVE,
time);
if (success)
diff --git a/gtk/gtktreeview.c b/gtk/gtktreeview.c
index 8528003..408394f 100644
--- a/gtk/gtktreeview.c
+++ b/gtk/gtktreeview.c
@@ -7188,7 +7188,7 @@ out:
{
GtkWidget *source_widget;
- *suggested_action = context->suggested_action;
+ *suggested_action = gdk_drag_context_get_suggested_action (context);
source_widget = gtk_drag_get_source_widget (context);
if (source_widget == widget)
@@ -7196,7 +7196,7 @@ out:
/* Default to MOVE, unless the user has
* pressed ctrl or shift to affect available actions
*/
- if ((context->actions & GDK_ACTION_MOVE) != 0)
+ if ((gdk_drag_context_get_actions (context) & GDK_ACTION_MOVE) != 0)
*suggested_action = GDK_ACTION_MOVE;
}
@@ -7729,7 +7729,7 @@ gtk_tree_view_drag_data_received (GtkWidget *widget,
gtk_drag_finish (context,
accepted,
- (context->action == GDK_ACTION_MOVE),
+ (gdk_drag_context_get_selected_action (context) == GDK_ACTION_MOVE),
time);
if (gtk_tree_path_get_depth (dest_row) == 1
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]