Commit 280eeb02 authored by Matthias Clasen's avatar Matthias Clasen

Don't set up im stuff if the widget is not realized.

        * gtk/gtktextview.c: Don't set up im stuff if the widget
        is not realized.

        * gtk/gtkimmodule.c: Assert that we have a window.


svn path=/trunk/; revision=22193
parent a220373a
2009-01-23 Matthias Clasen <mclasen@redhat.com>
Bug 567124 – proposal to delay doing something related to
immodule until widgets realized
Delay setting up immodules until the widget is realized.
Patch by Akira Tagoh
* gtk/gtktextview.c: Don't set up im stuff if the widget
is not realized.
* gtk/gtkimmodule.c: Assert that we have a window.
2009-01-23 Matthias Clasen <mclasen@redhat.com>
Skip Desktop if it equals the home folder
......
......@@ -671,6 +671,9 @@ _gtk_im_module_get_default_context_id (GdkWindow *client_window)
GdkScreen *screen;
GtkSettings *settings;
/* assertion to make sure all of the unexpected invocation is really gone. */
g_return_val_if_fail (client_window != NULL, SIMPLE_ID);
if (!contexts_hash)
gtk_im_module_initialize ();
......@@ -682,7 +685,7 @@ _gtk_im_module_get_default_context_id (GdkWindow *client_window)
/* Check if the certain immodule is set in XSETTINGS.
*/
if (client_window != NULL && GDK_IS_DRAWABLE (client_window))
if (GDK_IS_DRAWABLE (client_window))
{
screen = gdk_drawable_get_screen (GDK_DRAWABLE (client_window));
if (screen)
......
......@@ -2076,7 +2076,8 @@ gtk_text_view_update_im_spot_location (GtkTextView *text_view)
*/
area.width = 0;
gtk_im_context_set_cursor_location (text_view->im_context, &area);
if (GTK_WIDGET_REALIZED (text_view))
gtk_im_context_set_cursor_location (text_view->im_context, &area);
}
static gboolean
......@@ -3837,6 +3838,9 @@ gtk_text_view_realize (GtkWidget *widget)
tmp_list = tmp_list->next;
}
/* Ensure updating the spot location. */
gtk_text_view_update_im_spot_location(text_view);
}
static void
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment