Hello community,
here is the log from the commit of package compiz-plugins-main for
openSUSE:Factory checked in at 2017-05-16 14:37:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/compiz-plugins-main (Old)
and /work/SRC/openSUSE:Factory/.compiz-plugins-main.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "compiz-plugins-main"
Tue May 16 14:37:54 2017 rev:6 rq:492748 version:0.8.14
Changes:
--------
--- /work/SRC/openSUSE:Factory/compiz-plugins-main/compiz-plugins-main.changes
2016-04-12 19:37:38.000000000 +0200
+++
/work/SRC/openSUSE:Factory/.compiz-plugins-main.new/compiz-plugins-main.changes
2017-05-16 14:37:57.547794004 +0200
@@ -1,0 +2,16 @@
+Wed May 3 19:29:07 UTC 2017 - [email protected]
+
+- Add compiz-plugins-main-better-neg.patch: neg plugin improvements
+ (commits 10c31d4, 2265ce0, 5e40455).
+
+-------------------------------------------------------------------
+Tue Apr 18 11:10:04 UTC 2017 - [email protected]
+
+- Update to version 0.8.14:
+ * Improve Static Switcher.
+ * Add more colorfilters.
+ * Update Catalan translation.
+- Workaround /usr/@DATADIRNAME@/locale/ on openSUSE Leap 42.1 and
+ older.
+
+-------------------------------------------------------------------
Old:
----
compiz-plugins-main-0.8.12.2.tar.xz
New:
----
compiz-plugins-main-0.8.14.tar.xz
compiz-plugins-main-better-neg.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ compiz-plugins-main.spec ++++++
--- /var/tmp/diff_new_pack.j2PfqG/_old 2017-05-16 14:37:58.147709717 +0200
+++ /var/tmp/diff_new_pack.j2PfqG/_new 2017-05-16 14:37:58.151709155 +0200
@@ -1,7 +1,7 @@
#
# spec file for package compiz-plugins-main
#
-# 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
@@ -17,19 +17,22 @@
Name: compiz-plugins-main
-Version: 0.8.12.2
+Version: 0.8.14
Release: 0
Summary: OpenGL window and compositing manager plugins
License: GPL-2.0+
Group: System/GUI/Other
Url: https://github.com/compiz-reloaded/compiz-plugins-main
Source:
https://github.com/compiz-reloaded/%{name}/releases/download/v%{version}/%{name}-%{version}.tar.xz
+# PATCH-FIX-UPSTREAM compiz-plugins-main-better-neg.patch -- neg plugin
improvements (commits 10c31d4, 2265ce0, 5e40455).
+Patch0: compiz-plugins-main-better-neg.patch
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: gettext
BuildRequires: intltool
BuildRequires: libjpeg8-devel
BuildRequires: libtool
+BuildRequires: pkgconfig
BuildRequires: pkgconfig(bcop) >= 0.7.3
BuildRequires: pkgconfig(cairo) >= 1.0
BuildRequires: pkgconfig(cairo-xlib-xrender)
@@ -68,12 +71,17 @@
%prep
%setup -q
+%patch0 -p1
+%if 0%{?suse_version} <= 1320 && !(0%{?sle_version} > 120100 &&
0%{?is_opensuse})
+# Workaround /usr/@DATADIRNAME@/locale/.
+rm -r m4/
+%endif
%build
NOCONFIGURE=1 ./autogen.sh
%configure \
--disable-static
-make %{?_smp_mflags}
+make %{?_smp_mflags} V=1
%install
%make_install
++++++ compiz-plugins-main-0.8.12.2.tar.xz -> compiz-plugins-main-0.8.14.tar.xz
++++++
++++ 293743 lines of diff (skipped)
++++++ compiz-plugins-main-better-neg.patch ++++++
--- a/metadata/neg.xml.in
+++ b/metadata/neg.xml.in
@@ -22,15 +22,15 @@
</option>
</display>
<screen>
+ <option name="toggle_by_default" type="bool">
+ <_short>Auto-Toggle Matched Windows</_short>
+ <_long>Automatically toggle windows in the
match list by default</_long>
+ <default>false</default>
+ </option>
<option name="neg_match" type="match">
<_short>Negative Windows</_short>
- <_long>Windows to be negative by default</_long>
- <default>any</default>
- </option>
- <option name="exclude_match" type="match">
- <_short>Exclude Windows</_short>
- <_long>Windows to exclude from negating</_long>
- <default>type=Desktop</default>
+ <_long>Windows to affect when negating</_long>
+ <default>!(type=Desktop)</default>
</option>
</screen>
</plugin>
--- a/src/neg/neg.c
+++ b/src/neg/neg.c
@@ -40,7 +40,7 @@ typedef struct _NEGDisplay
} NEGDisplay;
-typedef struct _NEGSCreen
+typedef struct _NEGScreen
{
int windowPrivateIndex;
@@ -55,6 +55,7 @@ typedef struct _NEGSCreen
typedef struct _NEGWindow
{
Bool isNeg; /* negative window flag */
+ Bool matched;
} NEGWindow;
#define GET_NEG_CORE(c) \
@@ -78,16 +79,15 @@ typedef struct _NEGWindow
static void
-NEGToggle (CompWindow *w)
+NEGUpdateState (CompWindow *w)
{
NEG_WINDOW (w);
- /* toggle window negative flag */
- nw->isNeg = !nw->isNeg;
-
- /* check exclude list */
- if (matchEval (negGetExcludeMatch (w->screen), w))
- nw->isNeg = FALSE;
+ /* check include list */
+ if (matchEval (negGetNegMatch (w->screen), w))
+ nw->isNeg = !nw->isNeg;
+ else
+ nw->isNeg = FALSE;
/* cause repainting */
addWindowDamage (w);
@@ -106,7 +106,7 @@ NEGToggleScreen (CompScreen *s)
/* toggle every window */
for (w = s->windows; w; w = w->next)
if (w)
- NEGToggle (w);
+ NEGUpdateState (w);
}
static Bool
@@ -123,7 +123,7 @@ negToggle (CompDisplay *d,
w = findWindowAtDisplay (d, xid);
if (w)
- NEGToggle (w);
+ NEGUpdateState (w);
return TRUE;
}
@@ -549,10 +549,15 @@ static void
NEGWindowAdd (CompScreen *s,
CompWindow *w)
{
- /* nw->isNeg is initialized to FALSE in InitWindow, so we only
- have to toggle it to TRUE if necessary */
- if (matchEval (negGetNegMatch (s), w))
- NEGToggle (w);
+ NEG_SCREEN (s);
+ NEG_WINDOW (w);
+
+ nw->matched = matchEval (negGetNegMatch (s), w);
+
+ /* nw->isNeg is initialized to FALSE in InitWindow, so we only
+ have to toggle it to TRUE if necessary */
+ if (ns->isNeg && nw->matched)
+ NEGUpdateState (w);
}
static void
@@ -562,24 +567,48 @@ NEGScreenOptionChanged (CompScreen
{
switch (num)
{
+ case NegScreenOptionToggleByDefault:
+ {
+ CompWindow *w;
+
+ NEG_SCREEN (s);
+
+ ns->isNeg = opt[NegScreenOptionToggleByDefault].value.b;
+
+ for (w = s->windows; w; w = w->next)
+ {
+ NEG_WINDOW (w);
+ if (ns->isNeg)
+ {
+ if (!nw->isNeg)
+ NEGUpdateState (w);
+ }
+ else
+ {
+ if (nw->isNeg)
+ NEGUpdateState (w);
+ }
+ }
+ }
+ break;
case NegScreenOptionNegMatch:
- case NegScreenOptionExcludeMatch:
{
CompWindow *w;
NEG_SCREEN (s);
for (w = s->windows; w; w = w->next)
{
- Bool isNeg;
- NEG_WINDOW (w);
+ NEG_WINDOW (w);
- isNeg = matchEval (negGetNegMatch (s), w);
- isNeg = isNeg && !matchEval (negGetExcludeMatch (s), w);
+ nw->matched = matchEval (negGetNegMatch (w->screen), w);
- if (isNeg && ns->isNeg && !nw->isNeg)
- NEGToggle (w);
- else if (!isNeg && nw->isNeg)
- NEGToggle (w);
+ if (nw->matched)
+ {
+ if ((ns->isNeg || negGetToggleByDefault (s)) &&
!nw->isNeg)
+ NEGUpdateState (w);
+ }
+ else if (nw->isNeg)
+ NEGUpdateState (w);
}
}
break;
@@ -711,8 +740,8 @@ NEGInitScreen (CompPlugin *p,
ns->negFunction = 0;
ns->negAlphaFunction = 0;
+ negSetToggleByDefaultNotify (s, NEGScreenOptionChanged);
negSetNegMatchNotify (s, NEGScreenOptionChanged);
- negSetExcludeMatchNotify (s, NEGScreenOptionChanged);
/* wrap overloaded functions */
WRAP (ns, s, drawWindowTexture, NEGDrawWindowTexture);
@@ -753,6 +782,7 @@ NEGInitWindow (CompPlugin *p,
return FALSE;
nw->isNeg = FALSE;
+ nw->matched = FALSE;
w->base.privates[ns->windowPrivateIndex].ptr = nw;