Hello community, here is the log from the commit of package gtk3 for openSUSE:Factory checked in at 2014-11-13 09:16:58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gtk3 (Old) and /work/SRC/openSUSE:Factory/.gtk3.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gtk3" Changes: -------- --- /work/SRC/openSUSE:Factory/gtk3/gtk3.changes 2014-10-29 21:09:03.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.gtk3.new/gtk3.changes 2014-11-13 09:17:16.000000000 +0100 @@ -1,0 +2,12 @@ +Sun Nov 09 04:21:00 UTC 2014 - Led <[email protected]> + +- fix bashism in post script + +------------------------------------------------------------------- +Mon Nov 3 16:50:56 UTC 2014 - [email protected] + +- Add gtk3-fix-screen-changes-csd.patch: fixes a problem with + screen changes and csd that caused some applications to launch + with ugly black borders (bgo#739812). + +------------------------------------------------------------------- @@ -5 +17,2 @@ - + Bugs fixed: bgo#730893, bgo#737986, bgo#738636, bgo#738873. + + Bugs fixed: bgo#730893, bgo#737986, bgo#738636, bgo#738873, + boo#900854. New: ---- gtk3-fix-screen-changes-csd.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gtk3.spec ++++++ --- /var/tmp/diff_new_pack.I7xfFj/_old 2014-11-13 09:17:17.000000000 +0100 +++ /var/tmp/diff_new_pack.I7xfFj/_new 2014-11-13 09:17:17.000000000 +0100 @@ -44,6 +44,8 @@ Patch3: gtk3-bnc130159-bgo319483-async-font-selection.patch # PATCH-FIX-UPSTREAM gtk3-find-wayland-includedir.patch bgo#696507 [email protected] -- Make configure find wayland include files. Patch4: gtk3-find-wayland-includedir.patch +# PATCH-FIX-UPSTREAM gtk3-fix-screen-changes-csd.patch bgo#739812 [email protected] -- Fix a problem with screen changes and csd that caused some applications to launch with ugly black borders +Patch5: gtk3-fix-screen-changes-csd.patch BuildRequires: cups-devel >= 1.2 BuildRequires: docbook-xsl-stylesheets BuildRequires: fdupes @@ -332,6 +334,7 @@ %if %{build_wayland_backend} %patch4 -p1 %endif +%patch5 -p1 %build # Needed for patch1 and patch4 @@ -436,7 +439,7 @@ # %{_libdir}/gtk-3.0/%{gtk_binary_version} already exists) which means # gtk-query-immodules-3.0 couldn't run there. %endif -if [ $1 == 1 ]; then +if [ $1 = 1 ]; then test -d %{_libdir}/gtk-3.0/%{gtk_binary_version} if test $? -eq 0; then %{_gtk_query_immodules_update_cache} ++++++ gtk3-fix-screen-changes-csd.patch ++++++ >From d7bff60140225dff76befacf6eb2136c6723b794 Mon Sep 17 00:00:00 2001 From: Matthias Clasen <[email protected]> Date: Fri, 24 Oct 2014 13:30:19 -0400 Subject: Fix a problem with screen changes and csd When a new screen is set on a window, we unrealize it, to recreate all the resources. But we don't reset the client_decorated flag, so realize() doesn't call create_decoration() - which makes sense, since the decoration already exists. But the side-effect of create_decoration() is to select the rgba visual, and visuals are per-screen. Fix this by looking for the rgba visual in set_screen(), and replacing it with the rgba visual for the new screen, if necessary. diff --git a/gtk/gtkwindow.c b/gtk/gtkwindow.c index 367d88c..e846c41 100644 --- a/gtk/gtkwindow.c +++ b/gtk/gtkwindow.c @@ -10272,6 +10272,7 @@ gtk_window_set_screen (GtkWindow *window, GtkWindowPrivate *priv; GtkWidget *widget; GdkScreen *previous_screen; + gboolean was_rgba; gboolean was_mapped; g_return_if_fail (GTK_IS_WINDOW (window)); @@ -10285,6 +10286,12 @@ gtk_window_set_screen (GtkWindow *window, widget = GTK_WIDGET (window); previous_screen = priv->screen; + + if (gdk_screen_get_rgba_visual (previous_screen) == gtk_widget_get_visual (widget)) + was_rgba = TRUE; + else + was_rgba = FALSE; + was_mapped = gtk_widget_get_mapped (widget); if (was_mapped) @@ -10318,6 +10325,15 @@ gtk_window_set_screen (GtkWindow *window, } g_object_notify (G_OBJECT (window), "screen"); + if (was_rgba) + { + GdkVisual *visual; + + visual = gdk_screen_get_rgba_visual (screen); + if (visual) + gtk_widget_set_visual (widget, visual); + } + if (was_mapped) gtk_widget_map (widget); -- cgit v0.10.1 -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
