From 7eed90cac71e068d160a068376616d5c1839f57d Mon Sep 17 00:00:00 2001 From: Wolfgang Ulbrich Date: Dec 02 2015 16:14:26 +0000 Subject: update to 1.12.1 release --- diff --git a/.gitignore b/.gitignore index 11e7eff..27f03a2 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,4 @@ /marco-1.11.0.tar.xz /marco-1.11.1.tar.xz /marco-1.12.0.tar.xz +/marco-1.12.1.tar.xz diff --git a/marco.spec b/marco.spec index d3724f1..f9dd91a 100644 --- a/marco.spec +++ b/marco.spec @@ -13,9 +13,9 @@ %{!?rel_build:%global git_tar %{name}-%{version}-%{git_ver}.tar.xz} Name: marco -Version: %{branch}.0 +Version: %{branch}.1 %if 0%{?rel_build} -Release: 2%{?dist} +Release: 1%{?dist} %else Release: 0.2%{?git_rel}%{?dist} %endif @@ -39,9 +39,6 @@ Source5: window.png # needed for fixing initial-setup issue, rhbz (#962009) Patch0: marco_add-pixbuf-inline-icons_1.9.x.patch -# http://git.mate-desktop.org/marco/commit/?id=3ed3bab -Patch1: marco_revert-animation-changes.patch - Requires: mate-desktop-libs BuildRequires: desktop-file-utils @@ -91,7 +88,6 @@ Development files for marco #cp %{SOURCE5} src/window.png #%patch0 -p1 -b .inline-icons -%patch1 -p1 -b .revert-animation-changes # needed for the patch and for git snapshot builds #autoreconf -if @@ -171,6 +167,10 @@ fi %changelog +* Wed Dec 02 2015 Wolfgang Ulbrich - 1.12.1-1 +- update to 1.12.1 release +- removed upstreamed patch + * Sun Nov 22 2015 Wolfgang Ulbrich - 1.12.0-2 - disable anmations on un-minimze diff --git a/marco_revert-animation-changes.patch b/marco_revert-animation-changes.patch deleted file mode 100644 index b686ea8..0000000 --- a/marco_revert-animation-changes.patch +++ /dev/null @@ -1,412 +0,0 @@ -diff --git a/src/core/effects.c b/src/core/effects.c -index 163ec05..2866246 100644 ---- a/src/core/effects.c -+++ b/src/core/effects.c -@@ -67,7 +67,6 @@ - #endif - - #define META_MINIMIZE_ANIMATION_LENGTH 0.25 --#define META_UNMINIMIZE_ANIMATION_LENGTH 0.25 - #define META_SHADE_ANIMATION_LENGTH 0.2 - - #include -@@ -99,9 +98,6 @@ typedef struct - MetaRectangle start_rect; - MetaRectangle end_rect; - -- MetaEffectFinished finished; -- gpointer finished_data; -- - } BoxAnimationContext; - - /** -@@ -153,9 +149,7 @@ static void - draw_box_animation (MetaScreen *screen, - MetaRectangle *initial_rect, - MetaRectangle *destination_rect, -- double seconds_duration, -- MetaEffectFinished finished, -- gpointer finished_data); -+ double seconds_duration); - - /** - * Creates an effect. -@@ -179,13 +173,17 @@ create_effect (MetaEffectType type, - } - - /** -- * Destroys an effect. -+ * Destroys an effect. If the effect has a "finished" hook, it will be -+ * called before cleanup. - * - * \param effect The effect. - */ - static void - effect_free (MetaEffect *effect) - { -+ if (effect->priv->finished) -+ effect->priv->finished (effect->priv->finished_data); -+ - g_free (effect->priv); - g_free (effect); - } -@@ -366,8 +364,6 @@ effects_draw_box_animation_timeout (BoxAnimationContext *context) - context->gc); - #endif /* !HAVE_SHAPE */ - -- context->finished(context->finished_data); -- - g_free (context); - return FALSE; - } -@@ -415,9 +411,7 @@ void - draw_box_animation (MetaScreen *screen, - MetaRectangle *initial_rect, - MetaRectangle *destination_rect, -- double seconds_duration, -- MetaEffectFinished finished, -- gpointer finished_data) -+ double seconds_duration) - { - BoxAnimationContext *context; - -@@ -442,9 +436,6 @@ draw_box_animation (MetaScreen *screen, - context->start_rect = *initial_rect; - context->end_rect = *destination_rect; - -- context->finished = finished; -- context->finished_data = finished_data; -- - #ifdef HAVE_SHAPE - - attrs.override_redirect = True; -@@ -707,17 +698,7 @@ run_default_effect_handler (MetaEffect *effect) - draw_box_animation (effect->window->screen, - &(effect->u.minimize.window_rect), - &(effect->u.minimize.icon_rect), -- META_MINIMIZE_ANIMATION_LENGTH, -- effect->priv->finished, -- effect->priv->finished_data); -- break; -- case META_EFFECT_UNMINIMIZE: -- draw_box_animation (effect->window->screen, -- &(effect->u.minimize.icon_rect), -- &(effect->u.minimize.window_rect), -- META_UNMINIMIZE_ANIMATION_LENGTH, -- effect->priv->finished, -- effect->priv->finished_data); -+ META_MINIMIZE_ANIMATION_LENGTH); - break; - - default: -@@ -728,16 +709,8 @@ run_default_effect_handler (MetaEffect *effect) - static void - run_handler (MetaEffect *effect) - { -- /* If effects are disabled just run the finished function */ - if (meta_prefs_get_mate_animations ()) -- { - run_default_effect_handler (effect); -- } -- else -- { -- if (effect->priv->finished) -- effect->priv->finished(effect->priv->finished_data); -- } - - effect_free (effect); - } -diff --git a/src/core/effects.h b/src/core/effects.h -index e0025ff..ca25aa8 100644 ---- a/src/core/effects.h -+++ b/src/core/effects.h -@@ -50,7 +50,6 @@ - - typedef enum - { -- META_EFFECT_NONE = 0, - META_EFFECT_MINIMIZE, - META_EFFECT_UNMINIMIZE, - META_EFFECT_FOCUS, -diff --git a/src/core/window-private.h b/src/core/window-private.h -index 0b3cf59..8871310 100644 ---- a/src/core/window-private.h -+++ b/src/core/window-private.h -@@ -36,7 +36,6 @@ - - #include - #include "window.h" --#include "effects.h" - #include "screen-private.h" - #include "util.h" - #include "stack.h" -@@ -187,9 +186,6 @@ struct _MetaWindow - guint was_minimized : 1; - guint tab_unminimized : 1; - -- /* Whether there is a pending effect */ -- MetaEffectType effect_pending; -- - /* Whether the window is mapped; actual server-side state - * see also unmaps_pending - */ -diff --git a/src/core/window.c b/src/core/window.c -index 08bf58a..461d38f 100644 ---- a/src/core/window.c -+++ b/src/core/window.c -@@ -483,7 +483,6 @@ meta_window_new_with_attrs (MetaDisplay *display, - window->minimized = FALSE; - window->was_minimized = FALSE; - window->tab_unminimized = FALSE; -- window->effect_pending = META_EFFECT_NONE; - window->iconic = FALSE; - window->mapped = attrs->map_state != IsUnmapped; - /* if already mapped, no need to worry about focus-on-first-time-showing */ -@@ -1460,119 +1459,80 @@ static void - finish_minimize (gpointer data) - { - MetaWindow *window = data; -+ /* FIXME: It really sucks to put timestamp pinging here; it'd -+ * probably make more sense in implement_showing() so that it's at -+ * least not duplicated in meta_window_show; but since -+ * finish_minimize is a callback making things just slightly icky, I -+ * haven't done that yet. -+ */ -+ guint32 timestamp = meta_display_get_current_time_roundtrip (window->display); - -- window->effect_pending = META_EFFECT_NONE; --} -- --static void --finish_unminimize (gpointer data) --{ -- MetaWindow *window = data; -- -- meta_window_show (window); -- window->was_minimized = FALSE; -- window->effect_pending = META_EFFECT_NONE; --} -- --static void --meta_window_animate_minimize (MetaWindow *window) --{ -- MetaRectangle icon_rect, window_rect; -- gboolean result; -- -- /* Check if the window has an icon geometry */ -- result = meta_window_get_icon_geometry (window, &icon_rect); -- -- if (!result) -+ meta_window_hide (window); -+ if (window->has_focus) - { -- /* just animate into the corner somehow - maybe -- * not a good idea... -- */ -- icon_rect.x = window->screen->rect.width; -- icon_rect.y = window->screen->rect.height; -- icon_rect.width = 1; -- icon_rect.height = 1; -+ meta_workspace_focus_default_window (window->screen->active_workspace, -+ window, -+ timestamp); - } -- -- meta_window_get_outer_rect (window, &window_rect); -- -- meta_effect_run_minimize (window, -- &window_rect, -- &icon_rect, -- finish_minimize, -- window); - } - - static void --meta_window_animate_unminimize (MetaWindow *window) -+implement_showing (MetaWindow *window, -+ gboolean showing) - { -- MetaRectangle icon_rect, window_rect; -- gboolean result; -- -- /* Check if the window has an icon geometry */ -- result = meta_window_get_icon_geometry (window, &icon_rect); -+ /* Actually show/hide the window */ -+ meta_verbose ("Implement showing = %d for window %s\n", -+ showing, window->desc); - -- if (!result) -+ if (!showing) - { -- /* just animate into the corner somehow - maybe -- * not a good idea... -+ gboolean on_workspace; -+ -+ on_workspace = meta_window_located_on_workspace (window, -+ window->screen->active_workspace); -+ -+ /* Really this effects code should probably -+ * be in meta_window_hide so the window->mapped -+ * test isn't duplicated here. Anyhow, we animate -+ * if we are mapped now, we are supposed to -+ * be minimized, and we are on the current workspace. - */ -- icon_rect.x = window->screen->rect.width; -- icon_rect.y = window->screen->rect.height; -- icon_rect.width = 1; -- icon_rect.height = 1; -- } -+ if (on_workspace && window->minimized && window->mapped && -+ !meta_prefs_get_reduced_resources ()) -+ { -+ MetaRectangle icon_rect, window_rect; -+ gboolean result; - -- meta_window_get_outer_rect (window, &window_rect); -+ /* Check if the window has an icon geometry */ -+ result = meta_window_get_icon_geometry (window, &icon_rect); - -- meta_effect_run_unminimize (window, -- &window_rect, -- &icon_rect, -- finish_unminimize, -- window); --} -+ if (!result) -+ { -+ /* just animate into the corner somehow - maybe -+ * not a good idea... -+ */ -+ icon_rect.x = window->screen->rect.width; -+ icon_rect.y = window->screen->rect.height; -+ icon_rect.width = 1; -+ icon_rect.height = 1; -+ } - --static void --implement_showing (MetaWindow *window, -- gboolean showing) --{ -- /* Actually show/hide the window */ -- meta_verbose ("Implement showing = %d for window %s with effect pending %i\n", -- showing, window->desc, window->effect_pending); -+ meta_window_get_outer_rect (window, &window_rect); - -- if (!showing) -- { -- /* Handle pending effects */ -- switch(window->effect_pending) -- { -- case META_EFFECT_MINIMIZE: -- /* First hide the window and then animate */ -- meta_window_hide(window); -- meta_window_animate_minimize (window); -- break; -- case META_EFFECT_UNMINIMIZE: -- case META_EFFECT_NONE: -- default: -- meta_window_hide(window); -- break; -- } -+ meta_effect_run_minimize (window, -+ &window_rect, -+ &icon_rect, -+ finish_minimize, -+ window); -+ } -+ else -+ { -+ finish_minimize (window); -+ } - } - else - { -- /* Handle pending effects */ -- switch(window->effect_pending) -- { -- case META_EFFECT_MINIMIZE: -- break; -- case META_EFFECT_UNMINIMIZE: -- /* First animate then show the window */ -- meta_window_animate_unminimize (window); -- break; -- case META_EFFECT_NONE: -- default: -- meta_window_show (window); -- break; -- } -+ meta_window_show (window); - } - } - -@@ -2335,6 +2295,24 @@ meta_window_show (MetaWindow *window) - XMapWindow (window->display->xdisplay, window->xwindow); - meta_error_trap_pop (window->display, FALSE); - did_show = TRUE; -+ -+ if (window->was_minimized) -+ { -+ MetaRectangle window_rect; -+ MetaRectangle icon_rect; -+ -+ window->was_minimized = FALSE; -+ -+ if (meta_window_get_icon_geometry (window, &icon_rect)) -+ { -+ meta_window_get_outer_rect (window, &window_rect); -+ -+ meta_effect_run_unminimize (window, -+ &window_rect, -+ &icon_rect, -+ NULL, NULL); -+ } -+ } - } - - if (window->iconic) -@@ -2373,10 +2351,6 @@ meta_window_show (MetaWindow *window) - meta_display_increment_focus_sentinel (window->display); - } - } -- else if (window->was_minimized) -- { -- meta_window_focus(window, timestamp); -- } - - set_net_wm_state (window); - -@@ -2463,8 +2437,6 @@ meta_window_minimize (MetaWindow *window) - if (!window->minimized) - { - window->minimized = TRUE; -- /* Flag minimize effect pending */ -- window->effect_pending = META_EFFECT_MINIMIZE; - meta_window_queue(window, META_QUEUE_CALC_SHOWING); - - meta_window_foreach_transient (window, -@@ -2484,8 +2456,6 @@ meta_window_minimize (MetaWindow *window) - window->desc); - } - } -- -- /* Should insert minimize effect here? */ - } - - void -@@ -2495,15 +2465,12 @@ meta_window_unminimize (MetaWindow *window) - { - window->minimized = FALSE; - window->was_minimized = TRUE; -- window->effect_pending = META_EFFECT_UNMINIMIZE; - meta_window_queue(window, META_QUEUE_CALC_SHOWING); - - meta_window_foreach_transient (window, - queue_calc_showing_func, - NULL); - } -- -- /* Should insert unminimize effect here? */ - } - - static void - diff --git a/sources b/sources index c6522a4..839b69b 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -da8360bbc27ae45014fec900b48d2984 marco-1.12.0.tar.xz +e483b4e1c4c0a486f064147fff335d54 marco-1.12.1.tar.xz