Hello community,

here is the log from the commit of package marco for openSUSE:Factory checked 
in at 2015-10-28 17:30:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/marco (Old)
 and      /work/SRC/openSUSE:Factory/.marco.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "marco"

Changes:
--------
--- /work/SRC/openSUSE:Factory/marco/marco.changes      2015-08-23 
17:44:21.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.marco.new/marco.changes 2015-10-28 
17:30:58.000000000 +0100
@@ -1,0 +2,7 @@
+Tue Oct 27 11:21:31 UTC 2015 - [email protected]
+
+- Update to 1.10.3:
+  * Fix crash with minimise animation.
+  * Fix crash with window moving in some distributions.
+
+-------------------------------------------------------------------

Old:
----
  marco-1.10.2.tar.xz

New:
----
  marco-1.10.3.tar.xz

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

Other differences:
------------------
++++++ marco.spec ++++++
--- /var/tmp/diff_new_pack.hj8HGx/_old  2015-10-28 17:30:59.000000000 +0100
+++ /var/tmp/diff_new_pack.hj8HGx/_new  2015-10-28 17:30:59.000000000 +0100
@@ -19,7 +19,7 @@
 %define lname   libmarco-private0
 %define _version 1.10
 Name:           marco
-Version:        1.10.2
+Version:        1.10.3
 Release:        0
 Summary:        MATE window manager
 License:        GPL-2.0+

++++++ marco-1.10.2.tar.xz -> marco-1.10.3.tar.xz ++++++
++++ 4398 lines of diff (skipped)
++++    retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/marco-1.10.2/NEWS new/marco-1.10.3/NEWS
--- old/marco-1.10.2/NEWS       2015-08-20 18:49:22.000000000 +0200
+++ new/marco-1.10.3/NEWS       2015-10-26 15:28:27.000000000 +0100
@@ -1,3 +1,6 @@
+1.10.3
+    * bugfix: fix crash with minimize animation
+    * bugfix: fix crash wit moving a window in some distros
 1.10.2
     * Remove outdated assertion.
     * Make minimize item insensitive when window should not be minimized.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/marco-1.10.2/compile new/marco-1.10.3/compile
--- old/marco-1.10.2/compile    2015-08-20 18:58:17.000000000 +0200
+++ new/marco-1.10.3/compile    2015-10-26 15:28:58.000000000 +0100
@@ -3,7 +3,7 @@
 
 scriptversion=2012-10-14.11; # UTC
 
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
 # Written by Tom Tromey <[email protected]>.
 #
 # This program is free software; you can redistribute it and/or modify
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/marco-1.10.2/configure.ac new/marco-1.10.3/configure.ac
--- old/marco-1.10.2/configure.ac       2015-08-20 18:46:05.000000000 +0200
+++ new/marco-1.10.3/configure.ac       2015-10-26 15:28:28.000000000 +0100
@@ -2,7 +2,7 @@
 
 m4_define([marco_major_version], [1])
 m4_define([marco_minor_version], [10])
-m4_define([marco_micro_version], [2])
+m4_define([marco_micro_version], [3])
 
 m4_define([marco_version],
           [marco_major_version.marco_minor_version.marco_micro_version])
@@ -122,7 +122,7 @@
        CANBERRA_GTK=libcanberra-gtk
        ;;
   3.0) GTK_API_VERSION=3.0
-       GTK_MIN_VERSION=2.90.0
+       GTK_MIN_VERSION=3.0.0
        CANBERRA_GTK=libcanberra-gtk3
        MATE_DESKTOP_VERSION=1.9.3
        ;;
@@ -184,10 +184,7 @@
 
 AM_GLIB_GNU_GETTEXT
 
-## here we get the flags we'll actually use
-# GOptionEntry requires         glib-2.6.0
 PKG_CHECK_MODULES(ALL, glib-2.0 >= 2.32.0)
-# gtk_window_set_icon_name requires gtk2+-2.60
 PKG_CHECK_MODULES(MARCO_MESSAGE, gtk+-$GTK_API_VERSION >= $GTK_MIN_VERSION)
 PKG_CHECK_MODULES(MARCO_WINDOW_DEMO, gtk+-$GTK_API_VERSION >= $GTK_MIN_VERSION)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/marco-1.10.2/m4/intltool.m4 new/marco-1.10.3/m4/intltool.m4
--- old/marco-1.10.2/m4/intltool.m4     2015-08-20 18:57:59.000000000 +0200
+++ new/marco-1.10.3/m4/intltool.m4     2015-10-26 15:28:44.000000000 +0100
@@ -155,6 +155,31 @@
 # Substitute ALL_LINGUAS so we can use it in po/Makefile
 AC_SUBST(ALL_LINGUAS)
 
+# Set DATADIRNAME correctly if it is not set yet
+# (copied from glib-gettext.m4)
+if test -z "$DATADIRNAME"; then
+  AC_LINK_IFELSE(
+    [AC_LANG_PROGRAM([[]],
+                     [[extern int _nl_msg_cat_cntr;
+                       return _nl_msg_cat_cntr]])],
+    [DATADIRNAME=share],
+    [case $host in
+    *-*-solaris*)
+    dnl On Solaris, if bind_textdomain_codeset is in libc,
+    dnl GNU format message catalog is always supported,
+    dnl since both are added to the libc all together.
+    dnl Hence, we'd like to go with DATADIRNAME=share
+    dnl in this case.
+    AC_CHECK_FUNC(bind_textdomain_codeset,
+      [DATADIRNAME=share], [DATADIRNAME=lib])
+    ;;
+    *)
+    [DATADIRNAME=lib]
+    ;;
+    esac])
+fi
+AC_SUBST(DATADIRNAME)
+
 IT_PO_SUBDIR([po])
 
 ])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/marco-1.10.2/m4/libtool.m4 new/marco-1.10.3/m4/libtool.m4
--- old/marco-1.10.2/m4/libtool.m4      2015-08-20 18:58:08.000000000 +0200
+++ new/marco-1.10.3/m4/libtool.m4      2015-10-26 15:28:50.000000000 +0100
@@ -1324,19 +1324,12 @@
            LD="${LD-ld} -m elf_i386_fbsd"
            ;;
          x86_64-*linux*)
-           case `/usr/bin/file conftest.o` in
-             *x86-64*)
-               LD="${LD-ld} -m elf32_x86_64"
-               ;;
-             *)
-               LD="${LD-ld} -m elf_i386"
-               ;;
-           esac
+           LD="${LD-ld} -m elf_i386"
            ;;
-         powerpc64le-*)
+         powerpc64le-*linux*)
            LD="${LD-ld} -m elf32lppclinux"
            ;;
-         powerpc64-*)
+         powerpc64-*linux*)
            LD="${LD-ld} -m elf32ppclinux"
            ;;
          s390x-*linux*)
@@ -1355,10 +1348,10 @@
          x86_64-*linux*)
            LD="${LD-ld} -m elf_x86_64"
            ;;
-         powerpcle-*)
+         powerpcle-*linux*)
            LD="${LD-ld} -m elf64lppc"
            ;;
-         powerpc-*)
+         powerpc-*linux*)
            LD="${LD-ld} -m elf64ppc"
            ;;
          s390*-*linux*|s390*-*tpf*)
@@ -1701,8 +1694,7 @@
     ;;
   *)
     lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
-    if test -n "$lt_cv_sys_max_cmd_len" && \
-       test undefined != "$lt_cv_sys_max_cmd_len"; then
+    if test -n "$lt_cv_sys_max_cmd_len"; then
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
     else
@@ -2526,6 +2518,17 @@
   esac
   ;;
 
+gnu*)
+  version_type=linux # correct to gnu/linux during the next big refactor
+  need_lib_prefix=no
+  need_version=no
+  library_names_spec='${libname}${release}${shared_ext}$versuffix 
${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
+  soname_spec='${libname}${release}${shared_ext}$major'
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=no
+  hardcode_into_libs=yes
+  ;;
+
 haiku*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
@@ -2642,7 +2645,7 @@
   ;;
 
 # This must be glibc/ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
+linux* | k*bsd*-gnu | kopensolaris*-gnu)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
@@ -2672,10 +2675,14 @@
   # before this can be enabled.
   hardcode_into_libs=yes
 
+  # Add ABI-specific directories to the system library path.
+  sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
+
   # Append ld.so.conf contents to the search path
   if test -f /etc/ld.so.conf; then
     lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 
2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < 
/etc/ld.so.conf | $SED -e 's/#.*//;/^[  ]*hwcap[        ]/d;s/[:,      ]/ 
/g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
-    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
+    sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
+
   fi
 
   # We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -2687,18 +2694,6 @@
   dynamic_linker='GNU/Linux ld.so'
   ;;
 
-netbsdelf*-gnu)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix 
${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-  hardcode_into_libs=yes
-  dynamic_linker='NetBSD ld.elf_so'
-  ;;
-
 netbsd*)
   version_type=sunos
   need_lib_prefix=no
@@ -3258,6 +3253,10 @@
   fi
   ;;
 
+gnu*)
+  lt_cv_deplibs_check_method=pass_all
+  ;;
+
 haiku*)
   lt_cv_deplibs_check_method=pass_all
   ;;
@@ -3296,11 +3295,11 @@
   ;;
 
 # This must be glibc/ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
+linux* | k*bsd*-gnu | kopensolaris*-gnu)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
-netbsd* | netbsdelf*-gnu)
+netbsd*)
   if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
     lt_cv_deplibs_check_method='match_pattern 
/lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
   else
@@ -4048,7 +4047,7 @@
            ;;
        esac
        ;;
-      linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
+      linux* | k*bsd*-gnu | kopensolaris*-gnu)
        case $cc_basename in
          KCC*)
            # KAI C++ Compiler
@@ -4112,7 +4111,7 @@
            ;;
        esac
        ;;
-      netbsd* | netbsdelf*-gnu)
+      netbsd*)
        ;;
       *qnx* | *nto*)
         # QNX uses GNU C++, but need to define -shared option too, otherwise
@@ -4347,7 +4346,7 @@
       _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
       ;;
 
-    linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
+    linux* | k*bsd*-gnu | kopensolaris*-gnu)
       case $cc_basename in
       # old Intel for x86_64 which still supported -KPIC.
       ecc*)
@@ -4589,9 +4588,6 @@
       ;;
     esac
     ;;
-  linux* | k*bsd*-gnu | gnu*)
-    _LT_TAGVAR(link_all_deplibs, $1)=no
-    ;;
   *)
     _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | 
$global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
     ;;
@@ -4654,9 +4650,6 @@
   openbsd*)
     with_gnu_ld=no
     ;;
-  linux* | k*bsd*-gnu | gnu*)
-    _LT_TAGVAR(link_all_deplibs, $1)=no
-    ;;
   esac
 
   _LT_TAGVAR(ld_shlibs, $1)=yes
@@ -4878,7 +4871,7 @@
       fi
       ;;
 
-    netbsd* | netbsdelf*-gnu)
+    netbsd*)
       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
        _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs 
$linker_flags -o $lib'
        wlarc=
@@ -5055,7 +5048,6 @@
        if test "$aix_use_runtimelinking" = yes; then
          shared_flag="$shared_flag "'${wl}-G'
        fi
-       _LT_TAGVAR(link_all_deplibs, $1)=no
       else
        # not using gcc
        if test "$host_cpu" = ia64; then
@@ -5360,7 +5352,7 @@
       _LT_TAGVAR(link_all_deplibs, $1)=yes
       ;;
 
-    netbsd* | netbsdelf*-gnu)
+    netbsd*)
       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
        _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs 
$linker_flags'  # a.out
       else
@@ -6240,6 +6232,9 @@
         _LT_TAGVAR(ld_shlibs, $1)=yes
         ;;
 
+      gnu*)
+        ;;
+
       haiku*)
         _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs 
$compiler_flags ${wl}-soname $wl$soname -o $lib'
         _LT_TAGVAR(link_all_deplibs, $1)=yes
@@ -6401,7 +6396,7 @@
         _LT_TAGVAR(inherit_rpath, $1)=yes
         ;;
 
-      linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
+      linux* | k*bsd*-gnu | kopensolaris*-gnu)
         case $cc_basename in
           KCC*)
            # Kuck and Associates, Inc. (KAI) C++ Compiler
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/marco-1.10.2/missing new/marco-1.10.3/missing
--- old/marco-1.10.2/missing    2015-08-20 18:58:17.000000000 +0200
+++ new/marco-1.10.3/missing    2015-10-26 15:28:58.000000000 +0100
@@ -3,7 +3,7 @@
 
 scriptversion=2013-10-28.13; # UTC
 
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 # Originally written by Fran,cois Pinard <[email protected]>, 1996.
 
 # This program is free software; you can redistribute it and/or modify
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/marco-1.10.2/po/Makefile.in.in new/marco-1.10.3/po/Makefile.in.in
--- old/marco-1.10.2/po/Makefile.in.in  2015-08-20 18:57:59.000000000 +0200
+++ new/marco-1.10.3/po/Makefile.in.in  2015-10-26 15:28:44.000000000 +0100
@@ -33,7 +33,8 @@
 datadir = @datadir@
 datarootdir = @datarootdir@
 libdir = @libdir@
-localedir = @localedir@
+DATADIRNAME = @DATADIRNAME@
+itlocaledir = $(prefix)/$(DATADIRNAME)/locale
 subdir = po
 install_sh = @install_sh@
 # Automake >= 1.8 provides @mkdir_p@.
@@ -79,7 +80,7 @@
 
 .po.pox:
        $(MAKE) $(GETTEXT_PACKAGE).pot
-       $(MSGMERGE) $* $(GETTEXT_PACKAGE).pot -o $*.pox
+       $(MSGMERGE) $< $(GETTEXT_PACKAGE).pot -o $*.pox
 
 .po.mo:
        $(INTLTOOL_V_MSGFMT)$(MSGFMT) -o $@ $<
@@ -107,7 +108,7 @@
 install-data-yes: all
        linguas="$(USE_LINGUAS)"; \
        for lang in $$linguas; do \
-         dir=$(DESTDIR)$(localedir)/$$lang/LC_MESSAGES; \
+         dir=$(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES; \
          $(mkdir_p) $$dir; \
          if test -r $$lang.gmo; then \
            $(INSTALL_DATA) $$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \
@@ -141,8 +142,8 @@
 uninstall:
        linguas="$(USE_LINGUAS)"; \
        for lang in $$linguas; do \
-         rm -f 
$(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo; \
-         rm -f 
$(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo.m; \
+         rm -f 
$(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo; \
+         rm -f 
$(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo.m; \
        done
 
 check: all $(GETTEXT_PACKAGE).pot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/marco-1.10.2/src/core/constraints.c new/marco-1.10.3/src/core/constraints.c
--- old/marco-1.10.2/src/core/constraints.c     2015-08-20 18:45:21.000000000 
+0200
+++ new/marco-1.10.3/src/core/constraints.c     2015-10-26 15:28:28.000000000 
+0100
@@ -194,9 +194,11 @@
                                           ConstraintInfo *info);
 static void update_onscreen_requirements (MetaWindow     *window,
                                           ConstraintInfo *info);
-static void extend_by_frame              (MetaRectangle           *rect,
+static void extend_by_frame              (MetaWindow              *window,
+                                          MetaRectangle           *rect,
                                           const MetaFrameGeometry *fgeom);
-static void unextend_by_frame            (MetaRectangle           *rect,
+static void unextend_by_frame            (MetaWindow              *window,
+                                          MetaRectangle           *rect,
                                           const MetaFrameGeometry *fgeom);
 static inline void get_size_limits       (const MetaWindow        *window,
                                           const MetaFrameGeometry *fgeom,
@@ -627,7 +629,7 @@
   /* The require onscreen/on-single-xinerama and titlebar_visible
    * stuff is relative to the outer window, not the inner
    */
-  extend_by_frame (&info->current, info->fgeom);
+  extend_by_frame (window, &info->current, info->fgeom);
 
   /* Update whether we want future constraint runs to require the
    * window to be on fully onscreen.
@@ -676,27 +678,49 @@
     }
 
   /* Don't forget to restore the position of the window */
-  unextend_by_frame (&info->current, info->fgeom);
+  unextend_by_frame (window, &info->current, info->fgeom);
 }
 
 static void
-extend_by_frame (MetaRectangle           *rect,
+extend_by_frame (MetaWindow             *window,
+                 MetaRectangle          *rect,
                  const MetaFrameGeometry *fgeom)
 {
-  rect->x -= fgeom->left_width;
-  rect->y -= fgeom->top_height;
-  rect->width  += fgeom->left_width + fgeom->right_width;
-  rect->height += fgeom->top_height + fgeom->bottom_height;
+  if (window->frame)
+    {
+      rect->x -= fgeom->left_width;
+      rect->y -= fgeom->top_height;
+      rect->width  += fgeom->left_width + fgeom->right_width;
+      rect->height += fgeom->top_height + fgeom->bottom_height;
+    }
+  else
+    {
+      rect->x += window->custom_frame_extents.left;
+      rect->y += window->custom_frame_extents.top;
+      rect->width -= window->custom_frame_extents.left + 
window->custom_frame_extents.right;
+      rect->height -= window->custom_frame_extents.top + 
window->custom_frame_extents.bottom;
+    }
 }
 
 static void
-unextend_by_frame (MetaRectangle           *rect,
+unextend_by_frame (MetaWindow             *window,
+                   MetaRectangle          *rect,
                    const MetaFrameGeometry *fgeom)
 {
-  rect->x += fgeom->left_width;
-  rect->y += fgeom->top_height;
-  rect->width  -= fgeom->left_width + fgeom->right_width;
-  rect->height -= fgeom->top_height + fgeom->bottom_height;
+  if (window->frame)
+    {
+      rect->x += fgeom->left_width;
+      rect->y += fgeom->top_height;
+      rect->width  -= fgeom->left_width + fgeom->right_width;
+      rect->height -= fgeom->top_height + fgeom->bottom_height;
+    }
+  else
+    {
+      rect->x -= window->custom_frame_extents.left;
+      rect->y -= window->custom_frame_extents.top;
+      rect->width += window->custom_frame_extents.left + 
window->custom_frame_extents.right;
+      rect->height += window->custom_frame_extents.top + 
window->custom_frame_extents.bottom;
+    }
 }
 
 static inline void
@@ -716,13 +740,41 @@
 
   if (include_frame)
     {
-      int fw = fgeom->left_width + fgeom->right_width;
-      int fh = fgeom->top_height + fgeom->bottom_height;
+      int fw;
+      int fh;
 
-      min_size->width  += fw;
-      min_size->height += fh;
-      max_size->width  += fw;
-      max_size->height += fh;
+      if (window->frame)
+        {
+          fw = fgeom->left_width + fgeom->right_width;
+          fh = fgeom->top_height + fgeom->bottom_height;
+
+          min_size->width += fw;
+          min_size->height += fh;
+
+          /* Do check to avoid overflow (e.g. max_size->width & 
max_size->height
+           * may be set to G_MAXINT by meta_set_normal_hints()).
+           */
+          if (max_size->width < (G_MAXINT - fw))
+            max_size->width += fw;
+          else
+            max_size->width = G_MAXINT;
+
+          if (max_size->height < (G_MAXINT - fh))
+            max_size->height += fh;
+          else
+            max_size->height = G_MAXINT;
+        }
+      else
+        {
+          fw = window->custom_frame_extents.left + 
window->custom_frame_extents.right;
+          fh = window->custom_frame_extents.top + 
window->custom_frame_extents.bottom;
+
+          min_size->width -= fw;
+          min_size->height -= fh;
+
+          max_size->width -= fw;
+          max_size->height -= fh;
+        }
     }
 }
 
@@ -770,14 +822,14 @@
       active_workspace_struts = window->screen->active_workspace->all_struts;
 
       target_size = info->current;
-      extend_by_frame (&target_size, info->fgeom);
+      extend_by_frame (window, &target_size, info->fgeom);
       meta_rectangle_expand_to_avoiding_struts (&target_size,
                                                 &info->entire_xinerama,
                                                 direction,
                                                 active_workspace_struts);
    }
   /* Now make target_size = maximized size of client window */
-  unextend_by_frame (&target_size, info->fgeom);
+  unextend_by_frame (window, &target_size, info->fgeom);
 
   /* Check min size constraints; max size constraints are ignored for maximized
    * windows, as per bug 327543.
@@ -836,7 +888,7 @@
    * use an external function for the actual calculation
    */
   meta_window_get_current_tile_area (window, &target_size);
-  unextend_by_frame (&target_size, info->fgeom);
+  unextend_by_frame (window, &target_size, info->fgeom);
 
   /* Check min size constraints; max size constraints are ignored as for
    * maximized windows.
@@ -1183,7 +1235,7 @@
   /* Determine whether constraint applies; exit if it doesn't */
   how_far_it_can_be_smushed = info->current;
   get_size_limits (window, info->fgeom, TRUE, &min_size, &max_size);
-  extend_by_frame (&info->current, info->fgeom);
+  extend_by_frame (window, &info->current, info->fgeom);
 
   if (info->action_type != ACTION_MOVE)
     {
@@ -1203,7 +1255,7 @@
                                         &info->current);
   if (exit_early || constraint_satisfied || check_only)
     {
-      unextend_by_frame (&info->current, info->fgeom);
+      unextend_by_frame (window, &info->current, info->fgeom);
       return constraint_satisfied;
     }
 
@@ -1227,7 +1279,7 @@
                                       info->fixed_directions,
                                       &info->current);
 
-  unextend_by_frame (&info->current, info->fgeom);
+  unextend_by_frame (window, &info->current, info->fgeom);
   return TRUE;
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/marco-1.10.2/src/core/effects.c new/marco-1.10.3/src/core/effects.c
--- old/marco-1.10.2/src/core/effects.c 2015-08-20 18:45:21.000000000 +0200
+++ new/marco-1.10.3/src/core/effects.c 2015-10-26 15:28:27.000000000 +0100
@@ -316,23 +316,6 @@
 }
 #endif
 
-/**
- * A hack to force the X server to synchronize with the
- * graphics hardware.
- */
-static void
-graphics_sync (BoxAnimationContext *context)
-{
-  XImage *image;
-
-  image = XGetImage (context->screen->display->xdisplay,
-                     context->screen->xroot,
-                     0, 0, 1, 1,
-                     AllPlanes, ZPixmap);
-
-  XDestroyImage (image);
-}
-
 static gboolean
 effects_draw_box_animation_timeout (BoxAnimationContext *context)
 {
@@ -383,8 +366,6 @@
                  context->gc);
 #endif /* !HAVE_SHAPE */
 
-      graphics_sync (context);
-
       context->finished(context->finished_data);
 
       g_free (context);
@@ -425,7 +406,7 @@
 #endif /* !HAVE_SHAPE */
 
   /* kick changes onto the server */
-  graphics_sync (context);
+  XFlush (context->screen->display->xdisplay);
 
   return TRUE;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/marco-1.10.2/src/core/window.c new/marco-1.10.3/src/core/window.c
--- old/marco-1.10.2/src/core/window.c  2015-08-20 18:47:12.000000000 +0200
+++ new/marco-1.10.3/src/core/window.c  2015-10-26 15:28:28.000000000 +0100
@@ -437,6 +437,12 @@
   /* initialize the remaining size_hints as if size_hints.flags were zero */
   meta_set_normal_hints (window, NULL);
 
+  window->has_custom_frame_extents = FALSE;
+  window->custom_frame_extents.left = 0;
+  window->custom_frame_extents.right = 0;
+  window->custom_frame_extents.top = 0;
+  window->custom_frame_extents.bottom = 0;
+
   /* And this is our unmaximized size */
   window->saved_rect = window->rect;
   window->user_rect = window->rect;
@@ -471,6 +477,7 @@
   window->tile_mode = META_TILE_NONE;
   window->tile_monitor_number = -1;
   window->shaded = FALSE;
+  window->fullscreen = FALSE;
   window->initially_iconic = FALSE;
   window->minimized = FALSE;
   window->was_minimized = FALSE;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/marco-1.10.2/src/org.mate.marco.gschema.xml 
new/marco-1.10.3/src/org.mate.marco.gschema.xml
--- old/marco-1.10.2/src/org.mate.marco.gschema.xml     2015-08-20 
18:45:21.000000000 +0200
+++ new/marco-1.10.3/src/org.mate.marco.gschema.xml     2015-10-26 
15:28:28.000000000 +0100
@@ -164,7 +164,7 @@
     <key name="center-new-windows" type="b">
       <default>true</default>
       <summary>Determine if new windows are created on the center of the 
screen</summary>
-      <description>By default, marco open new windows on the top left of the 
screen. If this option is enabled, new windows are open on the center of the 
screen, instead.</description>
+      <description>If set to true, new windows are open on the center of the 
screen, else they are open on the top left of the screen.</description>
     </key>
     <key name="side-by-side-tiling" type="b">
       <default>true</default>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/marco-1.10.2/src/ui/frames.c new/marco-1.10.3/src/ui/frames.c
--- old/marco-1.10.2/src/ui/frames.c    2015-08-20 18:45:21.000000000 +0200
+++ new/marco-1.10.3/src/ui/frames.c    2015-10-26 15:28:28.000000000 +0100
@@ -2324,7 +2324,7 @@
                  META_CORE_GET_FRAME_Y, &frame_area.y,
                  META_CORE_GET_FRAME_WIDTH, &frame_area.width,
                  META_CORE_GET_FRAME_HEIGHT, &frame_area.height,
-                 META_CORE_GET_SCREEN_WIDTH, &screen_area.height,
+                 META_CORE_GET_SCREEN_WIDTH, &screen_area.width,
                  META_CORE_GET_SCREEN_HEIGHT, &screen_area.height,
                  META_CORE_GET_END);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/marco-1.10.2/src/ui/theme.c new/marco-1.10.3/src/ui/theme.c
--- old/marco-1.10.2/src/ui/theme.c     2015-08-20 18:46:05.000000000 +0200
+++ new/marco-1.10.3/src/ui/theme.c     2015-10-26 15:28:28.000000000 +0100
@@ -6283,7 +6283,9 @@
 {
   PangoFontDescription *font_desc;
 
+#if !GTK_CHECK_VERSION (3, 0, 0)
   g_return_val_if_fail (gtk_widget_get_realized (widget), NULL);
+#endif
 
 #if GTK_CHECK_VERSION (3, 0, 0)
   GtkStyleContext *style = gtk_widget_get_style_context (widget);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/marco-1.10.2/src/ui/tile-preview.c new/marco-1.10.3/src/ui/tile-preview.c
--- old/marco-1.10.2/src/ui/tile-preview.c      2015-08-20 18:45:21.000000000 
+0200
+++ new/marco-1.10.3/src/ui/tile-preview.c      2015-10-26 15:28:28.000000000 
+0100
@@ -73,13 +73,9 @@
 
   if (preview->has_alpha)
     {
-#if GTK_CHECK_VERSION (3, 0, 0)
-      GdkRGBA preview_color = *preview->preview_color;
-#endif
-
       /* Fill the preview area with a transparent color */
 #if GTK_CHECK_VERSION (3, 0, 0)
-      gdk_cairo_set_source_rgba (cr, &preview_color);
+      gdk_cairo_set_source_rgba (cr, preview->preview_color);
 #else
       cairo_set_source_rgba (cr,
                              (double)preview->preview_color->red   / 0xFFFF,
@@ -93,7 +89,7 @@
 
       /* Use the opaque color for the border */
 #if GTK_CHECK_VERSION (3, 0, 0)
-      gdk_cairo_set_source_rgba (cr, &preview_color);
+      gdk_cairo_set_source_rgba (cr, preview->preview_color);
 #else
       gdk_cairo_set_source_color (cr, preview->preview_color);
 #endif
@@ -121,6 +117,13 @@
                    0.5, 0.5,
                    preview->tile_rect.width - 1,
                    preview->tile_rect.height - 1);
+
+#if GTK_CHECK_VERSION (3, 0, 0)
+  if (preview->has_alpha) {
+    cairo_fill_preserve (cr);
+    cairo_set_source_rgba (cr, preview->preview_color->red, 
preview->preview_color->green, preview->preview_color->blue, 1.0);
+  }
+#endif
   cairo_stroke (cr);
 
 #if !GTK_CHECK_VERSION (3, 0, 0)


Reply via email to