After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 686745 - screenShield: Tweak curtain animation timings
screenShield: Tweak curtain animation timings
Status: RESOLVED FIXED
Product: gnome-shell
Classification: Core
Component: general
unspecified
Other All
: Normal normal
: ---
Assigned To: gnome-shell-maint
gnome-shell-maint
Depends on:
Blocks:
 
 
Reported: 2012-10-24 00:36 UTC by Rui Matos
Modified: 2012-10-26 11:03 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
screenShield: Tweak curtain animation timings (2.83 KB, patch)
2012-10-24 00:36 UTC, Rui Matos
reviewed Details | Review
screenShield: Tweak curtain animation timings (3.18 KB, patch)
2012-10-25 09:44 UTC, Rui Matos
committed Details | Review

Description Rui Matos 2012-10-24 00:36:18 UTC
The curtain animation didn't feel "right" to me.

Please test and comment. Feedback greatly appreciated.
Comment 1 Rui Matos 2012-10-24 00:36:20 UTC
Created attachment 227110 [details] [review]
screenShield: Tweak curtain animation timings

Rationale:
 - Getting something out of the way should be quick;

 - Very few things in the real world move linearly so linear
   animations, especially for something as big and visible as this,
   felt too artificial;

 - Moving the curtain out should start slowly to make it feel heavy
   (it fill the whole screen after all) but quickly accelerate towards
   the end to make it feel snappy too;

 - Moving the curtain in can be slower and have a more nuanced
   animation to make it feel more like a real object.
Comment 2 Allan Day 2012-10-24 08:22:02 UTC
Completely agree with this bug - nice work Rui. Bug 682537 is related.
Comment 3 Florian Müllner 2012-10-24 15:17:37 UTC
Review of attachment 227110 [details] [review]:

Definitively an improvement.

::: js/ui/screenShield.js
@@ +685,3 @@
                              { y: 0,
                                time: SHORT_FADE_TIME,
+                               transition: 'easeInOutQuad',

Is this InOut on purpose?
Comment 4 Rui Matos 2012-10-24 15:33:22 UTC
(In reply to comment #3)
> Review of attachment 227110 [details] [review]:
> Is this InOut on purpose?

Yes, I played with the various functions and this seemed the best to me. It starts slowly so that it's not too abrupt on the user, then accelerates in the middle to avoid being boring, and again slows down to land gracefully :-)
Comment 5 Jakub Steiner 2012-10-24 15:47:39 UTC
I very much agree on linear being wrong and too long.

I think the curtain fall is still wrong. It should not gradually accelerate at the beginning (so I'm guessing easeOutQuad) and it should happen even faster than the lift. .1? .2?
Comment 6 Allan Day 2012-10-25 09:08:33 UTC
Just tested this; it is much, much better. It seems to affect both raising and lowing the shield.
Comment 7 Rui Matos 2012-10-25 09:44:38 UTC
Created attachment 227239 [details] [review]
screenShield: Tweak curtain animation timings

--
(In reply to comment #5)
> I think the curtain fall is still wrong. It should not gradually accelerate at
> the beginning (so I'm guessing easeOutQuad) and it should happen even faster
> than the lift. .1? .2?

Ok, I reduced it to be the same as raising which is .3. At this speed,
the InOutQuad doesn't look so good any longer so I also changed it to
OutQuad now.

I don't think we want to go lower than .3 and still do the full
translation animation though. It's too jarring IMO to see something
this big (especially on a big external screen) moving so fast and the
animation doesn't look smooth because there's only a dozen frames or
so (at 60 fps). At that point I think we should either not animate at
all or at most do a cross fade. Anyway, .3 seems good to me, opinions?
Comment 8 Florian Müllner 2012-10-25 15:42:47 UTC
Review of attachment 227239 [details] [review]:

Just some random thoughts, feel free to ignore both of them - also, this looks like a nice improvement for the gnome-3-6 branch (technically this is a UI freeze break, but given that it has zero impact on screenshots and documentation, I'd say just push it)

::: js/ui/screenShield.js
@@ +527,3 @@
                              { y: 0,
                                time: time,
+                               transition: 'easeInQuad',

It's slightly odd to use different transitions for dropping down the shield, but OK with me if done on purpose (and the two cases differ significantly regarding the drop height)

@@ +685,3 @@
                              { y: 0,
                                time: SHORT_FADE_TIME,
+                               transition: 'easeOutQuad',

Maybe change this to CURTAIN_SLIDE_TIME now? Technically it shouldn't matter if the shield and the dialog animate at different speeds, in practice CURTAIN_SLIDE_TIME and SHORT_FADE_TIME are the same now, and this never was a fade animation ...
Comment 9 Rui Matos 2012-10-26 11:03:12 UTC
Thanks, will also push to gnome-3-6.

Attachment 227239 [details] pushed as b936e60 - screenShield: Tweak curtain
animation timings