evolution r37065 - in branches/gnome-2-24/calendar: . gui



Author: mcrha
Date: Tue Jan 13 11:55:20 2009
New Revision: 37065
URL: http://svn.gnome.org/viewvc/evolution?rev=37065&view=rev

Log:
2009-01-13  Milan Crha  <mcrha redhat com>

	** Fix for bug #567045

	* gui/e-meeting-time-sel.c: (e_meeting_time_selector_construct),
	(e_meeting_time_selector_on_canvas_scroll_event): Escalate scroll
	event's to a scrolled window, to let mouse wheel work over data too.



Modified:
   branches/gnome-2-24/calendar/ChangeLog
   branches/gnome-2-24/calendar/gui/e-meeting-time-sel.c

Modified: branches/gnome-2-24/calendar/gui/e-meeting-time-sel.c
==============================================================================
--- branches/gnome-2-24/calendar/gui/e-meeting-time-sel.c	(original)
+++ branches/gnome-2-24/calendar/gui/e-meeting-time-sel.c	Tue Jan 13 11:55:20 2009
@@ -186,6 +186,7 @@
 static void e_meeting_time_selector_update_end_date_edit (EMeetingTimeSelector *mts);
 static void e_meeting_time_selector_ensure_meeting_time_shown (EMeetingTimeSelector *mts);
 static void e_meeting_time_selector_update_dates_shown (EMeetingTimeSelector *mts);
+static gboolean e_meeting_time_selector_on_canvas_scroll_event (GtkWidget *widget, GdkEventScroll *event, EMeetingTimeSelector *mts);
 
 static void row_inserted_cb (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data);
 static void row_changed_cb (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer data);
@@ -359,6 +360,8 @@
 			  G_CALLBACK (e_meeting_time_selector_on_canvas_realized), mts);
 	g_signal_connect (mts->display_main, "size_allocate",
 			  G_CALLBACK (e_meeting_time_selector_on_canvas_size_allocate), mts);
+	g_signal_connect (mts->display_main, "scroll-event",
+			  G_CALLBACK (e_meeting_time_selector_on_canvas_scroll_event), mts);
 
 	gtk_scrolled_window_set_vadjustment (GTK_SCROLLED_WINDOW (sw), GTK_LAYOUT (mts->display_main)->vadjustment);
 
@@ -2308,6 +2311,17 @@
 	e_meeting_time_selector_ensure_meeting_time_shown (mts);
 }
 
+static gboolean
+e_meeting_time_selector_on_canvas_scroll_event (GtkWidget *widget, GdkEventScroll *event, EMeetingTimeSelector *mts)
+{
+	gboolean return_val = FALSE;
+
+	/* escalate to the list view's parent, which is a scrolled window */
+	g_signal_emit_by_name (gtk_widget_get_parent (GTK_WIDGET (mts->list_view)), "scroll-event", event, &return_val);
+
+	return return_val;
+}
+
 /* This updates the canvas scroll regions according to the number of attendees.
    If the total height needed is less than the height of the canvas, we must
    use the height of the canvas, or it causes problems. */



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