forked from AuroraMiddleware/gtk
gtkfilechooserwidget: show drop hints on gtkplacessidebar
Now with the API addition on gtkplacessidebar, we can show some hints for the drop targets. https://bugzilla.gnome.org/show_bug.cgi?id=747793
This commit is contained in:
parent
4499174e32
commit
43a4843b9c
@ -1645,6 +1645,16 @@ file_list_drag_drop_cb (GtkWidget *widget,
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static void
|
||||
file_list_drag_begin_cb (GtkWidget *widget,
|
||||
GdkDragContext *context,
|
||||
GtkFileChooserWidget *impl)
|
||||
{
|
||||
gtk_places_sidebar_set_drop_targets_visible (GTK_PLACES_SIDEBAR (impl->priv->places_sidebar),
|
||||
TRUE,
|
||||
context);
|
||||
}
|
||||
|
||||
/* Disable the normal tree drag motion handler, it makes it look like you're
|
||||
dropping the dragged item onto a tree item */
|
||||
static gboolean
|
||||
@ -1659,6 +1669,19 @@ file_list_drag_motion_cb (GtkWidget *widget,
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static void
|
||||
file_list_drag_end_cb (GtkWidget *widget,
|
||||
GdkDragContext *context,
|
||||
gpointer user_data)
|
||||
{
|
||||
GtkFileChooserWidget *impl;
|
||||
|
||||
impl = GTK_FILE_CHOOSER_WIDGET (user_data);
|
||||
gtk_places_sidebar_set_drop_targets_visible (GTK_PLACES_SIDEBAR (impl->priv->places_sidebar),
|
||||
FALSE,
|
||||
context);
|
||||
}
|
||||
|
||||
/* Sensitizes the "Copy file’s location" and other context menu items if there is actually
|
||||
* a selection active.
|
||||
*/
|
||||
@ -7518,7 +7541,9 @@ gtk_file_chooser_widget_class_init (GtkFileChooserWidgetClass *class)
|
||||
gtk_widget_class_bind_template_callback (widget_class, file_list_query_tooltip_cb);
|
||||
gtk_widget_class_bind_template_callback (widget_class, list_button_press_event_cb);
|
||||
gtk_widget_class_bind_template_callback (widget_class, list_row_activated);
|
||||
gtk_widget_class_bind_template_callback (widget_class, file_list_drag_begin_cb);
|
||||
gtk_widget_class_bind_template_callback (widget_class, file_list_drag_motion_cb);
|
||||
gtk_widget_class_bind_template_callback (widget_class, file_list_drag_end_cb);
|
||||
gtk_widget_class_bind_template_callback (widget_class, list_selection_changed);
|
||||
gtk_widget_class_bind_template_callback (widget_class, list_cursor_changed);
|
||||
gtk_widget_class_bind_template_callback (widget_class, filter_combo_changed);
|
||||
|
@ -175,7 +175,9 @@
|
||||
<signal name="button-press-event" handler="list_button_press_event_cb" swapped="no"/>
|
||||
<signal name="drag-data-received" handler="file_list_drag_data_received_cb" swapped="no"/>
|
||||
<signal name="drag-drop" handler="file_list_drag_drop_cb" swapped="no"/>
|
||||
<signal name="drag-begin" handler="file_list_drag_begin_cb" swapped="no"/>
|
||||
<signal name="drag-motion" handler="file_list_drag_motion_cb" swapped="no"/>
|
||||
<signal name="drag-end" handler="file_list_drag_end_cb" swapped="no"/>
|
||||
<signal name="key-press-event" handler="browse_files_key_press_event_cb" swapped="no"/>
|
||||
<signal name="popup-menu" handler="list_popup_menu_cb" swapped="no"/>
|
||||
<signal name="query-tooltip" handler="file_list_query_tooltip_cb" swapped="no"/>
|
||||
|
Loading…
Reference in New Issue
Block a user