aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/e-meeting-time-sel.c
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@src.gnome.org>2009-01-15 11:39:43 +0800
committerMatthew Barnes <mbarnes@src.gnome.org>2009-01-15 11:39:43 +0800
commit2e3a3cf26e4d1894707703b15340529b8874466c (patch)
tree880b18c84f6568e805b161d69a80037b251c766c /calendar/gui/e-meeting-time-sel.c
parent7ed2b90bdad0637d72be1815e6634bb352d0ec08 (diff)
downloadgsoc2013-evolution-2e3a3cf26e4d1894707703b15340529b8874466c.tar.gz
gsoc2013-evolution-2e3a3cf26e4d1894707703b15340529b8874466c.tar.zst
gsoc2013-evolution-2e3a3cf26e4d1894707703b15340529b8874466c.zip
Merge revisions 37047:37074 from trunk.
svn path=/branches/kill-bonobo/; revision=37075
Diffstat (limited to 'calendar/gui/e-meeting-time-sel.c')
-rw-r--r--calendar/gui/e-meeting-time-sel.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/calendar/gui/e-meeting-time-sel.c b/calendar/gui/e-meeting-time-sel.c
index 9871e15ea9..22b310b534 100644
--- a/calendar/gui/e-meeting-time-sel.c
+++ b/calendar/gui/e-meeting-time-sel.c
@@ -185,6 +185,7 @@ static void e_meeting_time_selector_update_start_date_edit (EMeetingTimeSelector
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);
@@ -358,6 +359,8 @@ e_meeting_time_selector_construct (EMeetingTimeSelector * mts, EMeetingStore *em
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_on_canvas_size_allocate (GtkWidget *widget,
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. */