Merge lp:~gala-dev/gala/no-animate-depth into lp:gala

Proposed by Tom Beckmann
Status: Rejected
Rejected by: Sergey "Shnatsel" Davidoff
Proposed branch: lp:~gala-dev/gala/no-animate-depth
Merge into: lp:gala
Diff against target: 79 lines (+23/-7)
4 files modified
data/org.pantheon.desktop.gala.gschema.xml (+5/-0)
src/Plugin.vala (+13/-6)
src/Settings.vala (+1/-0)
src/Widgets/WindowSwitcher.vala (+4/-1)
To merge this branch: bzr merge lp:~gala-dev/gala/no-animate-depth
Reviewer Review Type Date Requested Status
Danielle Foré Disapprove
Sergey "Shnatsel" Davidoff (community) Needs Fixing
Review via email: mp+147558@code.launchpad.net

Description of the change

Adds an animate-depth key defaulting to false, which toggles the depth part of menu and alt-tab animations.

To post a comment you must log in.
Revision history for this message
Sergey "Shnatsel" Davidoff (shnatsel) wrote :

This is better, but Slingshot still appears with a visual BOOM!

Also, I'm not sure why a GSettings key for this should be introduced. First, the name of the key is confusing, since it affects only some of the animations. Seconf, if these animations have superior usability, we should probably hardcode them - as per http://elementaryos.org/docs/avoid-configuration

review: Needs Fixing
Revision history for this message
Sergey "Shnatsel" Davidoff (shnatsel) wrote :

Also, this change does not affect the Slingshot closing animation.

Menu animations should probably be made faster, right now they're taking too long.

review: Needs Fixing
lp:~gala-dev/gala/no-animate-depth updated
297. By Tom Beckmann

Add menu destroy animation

Revision history for this message
Cody Garver (codygarver) wrote :

Really like this.

Revision history for this message
Cody Garver (codygarver) wrote :

On paper it sounds like a bad idea, but in execution it gives this feel of maturity to the desktop we haven't seen since gala itself was introduced. Not to mention it reduces visual glitches at Slingshot launch and most importantly it reduces visual lag when the system is under stress.

Revision history for this message
Danielle Foré (danrabbit) wrote :

Hrm. I don't really like it as much to be honest :/

Revision history for this message
Danielle Foré (danrabbit) wrote :

Tom and I talked about it and decided we were -1 to this particularly change. But we're open to discussing other ways to make the animations smoother.

review: Disapprove
Revision history for this message
Sergey "Shnatsel" Davidoff (shnatsel) wrote :

The Lord has spoken. Amen.

Unmerged revisions

297. By Tom Beckmann

Add menu destroy animation

296. By Tom Beckmann

gsettings: add animate-depth key which toggles the depth part of the menu and window switcher animations, default is false

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'data/org.pantheon.desktop.gala.gschema.xml'
2--- data/org.pantheon.desktop.gala.gschema.xml 2013-02-10 14:01:15 +0000
3+++ data/org.pantheon.desktop.gala.gschema.xml 2013-02-10 17:48:21 +0000
4@@ -128,6 +128,11 @@
5 </schema>
6
7 <schema path="/org/pantheon/desktop/gala/animations/" id="org.pantheon.desktop.gala.animations" gettext-domain="gala">
8+ <key type="b" name="animate-depth">
9+ <default>false</default>
10+ <summary>Enable depth in animations</summary>
11+ <description>If this is set to true, the alt-tab-switcher and menu animation will animate with depth</description>
12+ </key>
13 <key type="b" name="enable-animations">
14 <default>true</default>
15 <summary>Enable Animations</summary>
16
17=== modified file 'src/Plugin.vala'
18--- src/Plugin.vala 2013-02-10 13:37:14 +0000
19+++ src/Plugin.vala 2013-02-10 17:48:21 +0000
20@@ -464,8 +464,10 @@
21
22 actor.scale_gravity = Clutter.Gravity.CENTER;
23 actor.rotation_center_x = {0, 0, 10};
24- actor.scale_x = 0.9f;
25- actor.scale_y = 0.9f;
26+ if (AnimationSettings.get_default ().animate_depth) {
27+ actor.scale_x = 0.9f;
28+ actor.scale_y = 0.9f;
29+ }
30 actor.opacity = 0;
31 actor.animate (Clutter.AnimationMode.EASE_OUT_QUAD, AnimationSettings.get_default ().menu_duration,
32 scale_x:1.0f, scale_y:1.0f, opacity:255)
33@@ -558,10 +560,15 @@
34
35 destroying.add (actor);
36
37- actor.animate (Clutter.AnimationMode.EASE_OUT_QUAD, AnimationSettings.get_default ().menu_duration,
38- scale_x:0.8f, scale_y:0.8f, opacity:0)
39- .completed.connect ( () => {
40-
41+ Clutter.Animation anim;
42+ if (AnimationSettings.get_default ().animate_depth)
43+ anim = actor.animate (Clutter.AnimationMode.EASE_OUT_QUAD, AnimationSettings.get_default ().menu_duration,
44+ scale_x:0.8f, scale_y:0.8f, opacity:0);
45+ else
46+ anim = actor.animate (Clutter.AnimationMode.EASE_OUT_QUAD, AnimationSettings.get_default ().menu_duration,
47+ opacity : 0);
48+
49+ anim.completed.connect ( () => {
50 destroying.remove (actor);
51 destroy_completed (actor);
52 });
53
54=== modified file 'src/Settings.vala'
55--- src/Settings.vala 2013-02-10 14:01:15 +0000
56+++ src/Settings.vala 2013-02-10 17:48:21 +0000
57@@ -129,6 +129,7 @@
58 public class AnimationSettings : Granite.Services.Settings
59 {
60 public bool enable_animations { get; set; }
61+ public bool animate_depth { get; set; }
62 public int open_duration { get; set; }
63 public int snap_duration { get; set; }
64 public int close_duration { get; set; }
65
66=== modified file 'src/Widgets/WindowSwitcher.vala'
67--- src/Widgets/WindowSwitcher.vala 2013-02-10 14:01:15 +0000
68+++ src/Widgets/WindowSwitcher.vala 2013-02-10 17:48:21 +0000
69@@ -232,7 +232,10 @@
70
71 dock.get_child_at_index (i).animate (AnimationMode.LINEAR, 100, opacity : 255);
72 } else {
73- clone.animate (Clutter.AnimationMode.EASE_OUT_QUAD, 250, depth : -200.0f, opacity : 0);
74+ if (AnimationSettings.get_default ().animate_depth)
75+ clone.animate (Clutter.AnimationMode.EASE_OUT_QUAD, 250, depth : -200.0f, opacity : 0);
76+ else
77+ clone.animate (Clutter.AnimationMode.EASE_OUT_QUAD, 250, opacity : 0);
78 dock.get_child_at_index (i).animate (AnimationMode.LINEAR, 100, opacity : 100);
79 }
80

Subscribers

People subscribed via source and target branches