Hello community,

here is the log from the commit of package compiz-emerald for openSUSE:Factory 
checked in at 2017-05-16 14:43:28
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/compiz-emerald (Old)
 and      /work/SRC/openSUSE:Factory/.compiz-emerald.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "compiz-emerald"

Tue May 16 14:43:28 2017 rev:6 rq:494481 version:0.8.14

Changes:
--------
--- /work/SRC/openSUSE:Factory/compiz-emerald/compiz-emerald.changes    
2016-04-07 13:32:22.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.compiz-emerald.new/compiz-emerald.changes       
2017-05-16 14:44:40.135229002 +0200
@@ -1,0 +2,18 @@
+Wed May  9 20:30:23 UTC 2017 - [email protected]
+
+- Add emerald-0.8.14-fix-app-switchers.patch: Fix issues with
+  application switchers (commit 27d4e0d).
+
+-------------------------------------------------------------------
+Tue Apr 18 11:10:04 UTC 2017 - [email protected]
+
+- Update to version 0.8.14:
+  * Fix wrong border extents.
+  * Fix oversized buttons.
+  * Fix crash when special characters are displayed in titlebar.
+  * Fix various GTK+ problems.
+  * Respect GTK+ double-click speed.
+  * Allow configurable middle-click titlebar actions.
+  * Update translations.
+
+-------------------------------------------------------------------

Old:
----
  emerald-0.8.12.4.tar.xz

New:
----
  emerald-0.8.14-fix-app-switchers.patch
  emerald-0.8.14.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ compiz-emerald.spec ++++++
--- /var/tmp/diff_new_pack.vS1fo2/_old  2017-05-16 14:44:40.851128411 +0200
+++ /var/tmp/diff_new_pack.vS1fo2/_new  2017-05-16 14:44:40.855127850 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package compiz-emerald
 #
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,13 +18,15 @@
 
 %define _name   emerald
 Name:           compiz-emerald
-Version:        0.8.12.4
+Version:        0.8.14
 Release:        0
 Summary:        Themeable window decorator for Compiz
 License:        GPL-2.0+
 Group:          System/GUI/Other
 Url:            https://github.com/compiz-reloaded/emerald
 Source:         
https://github.com/compiz-reloaded/%{_name}/releases/download/v%{version}/%{_name}-%{version}.tar.xz
+# PATCH-FIX-UPSTREAM emerald-0.8.14-fix-app-switchers.patch 
[email protected] -- Fix issues with application switchers (commit 27d4e0d).
+Patch0:         emerald-0.8.14-fix-app-switchers.patch
 BuildRequires:  autoconf
 BuildRequires:  automake
 BuildRequires:  fdupes
@@ -32,6 +34,7 @@
 BuildRequires:  hicolor-icon-theme
 BuildRequires:  intltool
 BuildRequires:  libtool
+BuildRequires:  pkgconfig
 BuildRequires:  update-desktop-files
 BuildRequires:  pkgconfig(gtk+-3.0)
 BuildRequires:  pkgconfig(libdecoration) < 0.9
@@ -77,13 +80,15 @@
 
 %prep
 %setup -q -n %{_name}-%{version}
+%patch0 -p1
 
 %build
 NOCONFIGURE=1 ./autogen.sh
 %configure \
+  --with-gtk=3.0        \
   --disable-static      \
   --disable-mime-update
-make %{?_smp_mflags}
+make %{?_smp_mflags} V=1
 
 %install
 %make_install

++++++ emerald-0.8.14-fix-app-switchers.patch ++++++
--- a/src/main.c
+++ b/src/main.c
@@ -3495,6 +3495,7 @@ static gboolean update_switcher_window(WnckWindow * win, 
Window selected)
 {
     decor_t *d = g_object_get_data(G_OBJECT(win), "decor");
     cairo_surface_t *surface = NULL, *buffer_surface = NULL;
+    cairo_surface_t *isurface = NULL, *ibuffer_surface = NULL;
     gint height, width = 0;
     WnckWindow *selected_win;
     window_settings *ws = d->fs->ws;
@@ -3579,14 +3580,44 @@ static gboolean update_switcher_window(WnckWindow * 
win, Window selected)
        return FALSE;
     }
 
-    if (IS_VALID_SURFACE(d->surface))
-       cairo_surface_destroy(d->surface);
+    isurface = create_xlib_surface(width, height);
+    if (!IS_VALID_SURFACE(isurface))
+    {
+       cairo_surface_destroy(surface);
+       cairo_surface_destroy(buffer_surface);
+       return FALSE;
+    }
 
-    if (IS_VALID_SURFACE(d->buffer_surface))
-       cairo_surface_destroy(d->buffer_surface);
+    ibuffer_surface = create_surface(width, height);
+    if (!IS_VALID_SURFACE(ibuffer_surface))
+    {
+       cairo_surface_destroy(isurface);
+       cairo_surface_destroy(surface);
+       cairo_surface_destroy(buffer_surface);
+       return FALSE;
+    }
+
+    /* wait until old surfaces are not used for sure,
+       one second should be enough */
+    if (IS_VALID_SURFACE(d->p_active_surface))
+       g_timeout_add_seconds(1, destroy_surface_idled, d->p_active_surface);
+    if (IS_VALID_SURFACE(d->p_inactive_surface))
+       g_timeout_add_seconds(1, destroy_surface_idled, d->p_inactive_surface);
+
+    if (IS_VALID_SURFACE(d->p_active_buffer_surface))
+       cairo_surface_destroy(d->p_active_buffer_surface);
+
+    if (IS_VALID_SURFACE(d->p_inactive_buffer_surface))
+       cairo_surface_destroy(d->p_inactive_buffer_surface);
+
+    d->only_change_active = FALSE;
 
-    d->surface = surface;
-    d->buffer_surface = buffer_surface;
+    d->surface = d->active ? surface : isurface;
+    d->buffer_surface = d->active ? buffer_surface : ibuffer_surface;
+    d->p_active_surface = surface;
+    d->p_active_buffer_surface = buffer_surface;
+    d->p_inactive_surface = isurface;
+    d->p_inactive_buffer_surface = ibuffer_surface;
 
     d->width = width;
     d->height = height;
++++++ emerald-0.8.12.4.tar.xz -> emerald-0.8.14.tar.xz ++++++
++++ 69591 lines of diff (skipped)


Reply via email to