year-view: don't render DnD when it leaves
This commit is contained in:
@@ -26,6 +26,7 @@
|
|||||||
<signal name="motion-notify-event" handler="navigator_motion_notify_cb" object="GcalYearView" swapped="yes"/>
|
<signal name="motion-notify-event" handler="navigator_motion_notify_cb" object="GcalYearView" swapped="yes"/>
|
||||||
<signal name="drag-motion" handler="navigator_drag_motion_cb" object="GcalYearView" swapped="yes"/>
|
<signal name="drag-motion" handler="navigator_drag_motion_cb" object="GcalYearView" swapped="yes"/>
|
||||||
<signal name="drag-drop" handler="navigator_drag_drop_cb" object="GcalYearView" swapped="yes"/>
|
<signal name="drag-drop" handler="navigator_drag_drop_cb" object="GcalYearView" swapped="yes"/>
|
||||||
|
<signal name="drag-leave" handler="navigator_drag_leave_cb" object="GcalYearView" swapped="yes"/>
|
||||||
<style>
|
<style>
|
||||||
<class name="year-navigator"/>
|
<class name="year-navigator"/>
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -1375,6 +1375,19 @@ navigator_drag_drop_cb (GcalYearView *self,
|
|||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
navigator_drag_leave_cb (GcalYearView *self,
|
||||||
|
GdkDragContext *context,
|
||||||
|
guint time,
|
||||||
|
GtkWidget *navigator)
|
||||||
|
{
|
||||||
|
/* Cancel the DnD after the event is dropped */
|
||||||
|
self->selected_data->dnd_day = -1;
|
||||||
|
self->selected_data->dnd_month = -1;
|
||||||
|
|
||||||
|
gtk_widget_queue_draw (navigator);
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gcal_year_view_finalize (GObject *object)
|
gcal_year_view_finalize (GObject *object)
|
||||||
{
|
{
|
||||||
@@ -1770,6 +1783,7 @@ gcal_year_view_class_init (GcalYearViewClass *klass)
|
|||||||
gtk_widget_class_bind_template_callback (widget_class, navigator_button_press_cb);
|
gtk_widget_class_bind_template_callback (widget_class, navigator_button_press_cb);
|
||||||
gtk_widget_class_bind_template_callback (widget_class, navigator_button_release_cb);
|
gtk_widget_class_bind_template_callback (widget_class, navigator_button_release_cb);
|
||||||
gtk_widget_class_bind_template_callback (widget_class, navigator_drag_drop_cb);
|
gtk_widget_class_bind_template_callback (widget_class, navigator_drag_drop_cb);
|
||||||
|
gtk_widget_class_bind_template_callback (widget_class, navigator_drag_leave_cb);
|
||||||
gtk_widget_class_bind_template_callback (widget_class, navigator_drag_motion_cb);
|
gtk_widget_class_bind_template_callback (widget_class, navigator_drag_motion_cb);
|
||||||
gtk_widget_class_bind_template_callback (widget_class, navigator_motion_notify_cb);
|
gtk_widget_class_bind_template_callback (widget_class, navigator_motion_notify_cb);
|
||||||
gtk_widget_class_bind_template_callback (widget_class, add_event_clicked_cb);
|
gtk_widget_class_bind_template_callback (widget_class, add_event_clicked_cb);
|
||||||
|
|||||||
Reference in New Issue
Block a user