aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/e-day-view.c
diff options
context:
space:
mode:
Diffstat (limited to 'calendar/gui/e-day-view.c')
-rw-r--r--calendar/gui/e-day-view.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/calendar/gui/e-day-view.c b/calendar/gui/e-day-view.c
index 5315dfcb1b..d8e9736449 100644
--- a/calendar/gui/e-day-view.c
+++ b/calendar/gui/e-day-view.c
@@ -1376,6 +1376,11 @@ e_day_view_focus_in (GtkWidget *widget, GdkEventFocus *event)
gtk_widget_queue_draw (day_view->top_canvas);
gtk_widget_queue_draw (day_view->main_canvas);
+ g_assert (GTK_WIDGET_REALIZED (day_view->main_canvas));
+ if (E_CANVAS (day_view->main_canvas)->ic)
+ gdk_im_begin (E_CANVAS (day_view->main_canvas)->ic,
+ GTK_LAYOUT (day_view->main_canvas)->bin_window);
+
return FALSE;
}
@@ -1396,6 +1401,10 @@ e_day_view_focus_out (GtkWidget *widget, GdkEventFocus *event)
gtk_widget_queue_draw (day_view->top_canvas);
gtk_widget_queue_draw (day_view->main_canvas);
+ g_assert (GTK_WIDGET_REALIZED (day_view->main_canvas));
+ if (E_CANVAS (day_view->main_canvas)->ic)
+ gdk_im_end ();
+
return FALSE;
}