make gdm greeter work again

This commit is contained in:
Matthias Clasen 2009-01-25 03:42:17 +00:00
parent 072fd2cf19
commit 0bb7d5dd21
2 changed files with 77 additions and 1 deletions

View File

@ -16,7 +16,7 @@
Summary: The GIMP ToolKit (GTK+), a library for creating GUIs for X Summary: The GIMP ToolKit (GTK+), a library for creating GUIs for X
Name: gtk2 Name: gtk2
Version: %{base_version} Version: %{base_version}
Release: 2%{?dist} Release: 3%{?dist}
License: LGPLv2+ License: LGPLv2+
Group: System Environment/Libraries Group: System Environment/Libraries
Source: http://download.gnome.org/sources/gtk+/2.15/gtk+-%{version}.tar.bz2 Source: http://download.gnome.org/sources/gtk+/2.15/gtk+-%{version}.tar.bz2
@ -32,6 +32,8 @@ Patch2: workaround.patch
Patch3: default_printer.patch Patch3: default_printer.patch
# fixed upstream # fixed upstream
Patch4: activatable-toolitem.patch Patch4: activatable-toolitem.patch
# fixed upstream
Patch5: imcontext-reset.patch
BuildRequires: atk-devel >= %{atk_version} BuildRequires: atk-devel >= %{atk_version}
BuildRequires: pango-devel >= %{pango_version} BuildRequires: pango-devel >= %{pango_version}
@ -120,6 +122,7 @@ GTK+ widget toolkit.
%patch2 -p1 -b .workaround %patch2 -p1 -b .workaround
%patch3 -p0 -b .default-printer %patch3 -p0 -b .default-printer
%patch4 -p0 -b .activatable-toolitem %patch4 -p0 -b .activatable-toolitem
%patch5 -p0 -b .imcontext-reset
%build %build
libtoolize --force --copy libtoolize --force --copy
@ -297,6 +300,9 @@ rm -rf $RPM_BUILD_ROOT
%{_datadir}/gtk-2.0 %{_datadir}/gtk-2.0
%changelog %changelog
* Sat Jan 24 2009 Matthias Clasen <mclasen@redhat.com> - 2.15.1-3
- Avoid triggering an assertion that makes the gdm greeter nonfunctional
* Sat Jan 24 2009 Matthias Clasen <mclasen@redhat.com> - 2.15.1-2 * Sat Jan 24 2009 Matthias Clasen <mclasen@redhat.com> - 2.15.1-2
- Fix blank toolbuttons in the evolution composer - Fix blank toolbuttons in the evolution composer

70
imcontext-reset.patch Normal file
View File

@ -0,0 +1,70 @@
Index: gtk/gtktextview.c
===================================================================
--- gtk/gtktextview.c (revision 22213)
+++ gtk/gtktextview.c (working copy)
@@ -2076,8 +2076,7 @@
*/
area.width = 0;
- if (GTK_WIDGET_REALIZED (text_view))
- gtk_im_context_set_cursor_location (text_view->im_context, &area);
+ gtk_im_context_set_cursor_location (text_view->im_context, &area);
}
static gboolean
@@ -3840,7 +3839,7 @@
}
/* Ensure updating the spot location. */
- gtk_text_view_update_im_spot_location(text_view);
+ gtk_text_view_update_im_spot_location (text_view);
}
static void
Index: gtk/gtkimmulticontext.c
===================================================================
--- gtk/gtkimmulticontext.c (revision 22213)
+++ gtk/gtkimmulticontext.c (working copy)
@@ -226,7 +226,7 @@
if (!multicontext->slave)
{
GtkIMContext *slave;
-
+
g_free (multicontext->context_id);
if (multicontext->priv->context_id)
@@ -258,18 +258,14 @@
GdkWindow *window)
{
GtkIMMulticontext *multicontext = GTK_IM_MULTICONTEXT (context);
- GtkIMContext *slave;
GdkScreen *screen;
GtkSettings *settings;
gboolean connected;
multicontext->priv->client_window = window;
- slave = gtk_im_multicontext_get_slave (multicontext);
+ gtk_im_multicontext_set_slave (multicontext, NULL, FALSE);
- if (slave)
- gtk_im_context_set_client_window (slave, window);
-
if (window == NULL)
return;
Index: gtk/gtkimmodule.c
===================================================================
--- gtk/gtkimmodule.c (revision 22213)
+++ gtk/gtkimmodule.c (working copy)
@@ -671,9 +671,6 @@
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 ();