My favorites | Sign in
Logo
             
New issue | Search
for
| Advanced search | Search tips
Issue 24495: Status bubble needs delays and fades
1 person starred this issue and may be notified of changes. Back to list
Status:  Verified
Owner:  mark@chromium.org
Closed:  Oct 12
Cc:  avi@chromium.org
Type-Bug
Pri-2
OS-Mac
Area-BrowserUI


Sign in to add a comment
 
Reported by mark@chromium.org, Oct 09, 2009
The Mac status bubble shows up instantaneously on mouseover, and 
disappears instantaneously on mouseout.  This is wrong.

Steps to reproduce: mouse over anything.
Expect: delays and fades.
Observe: the status bubble shows up and disappears immediately, without 
delay or fade.

http://sites.google.com/a/chromium.org/dev/user-experience/status-
bubble

The status bubble should fade in and fade out.  There should also be a 
delay before fading a bubble in and before fading a bubble out.  This is 
supposed to reduce flicker.  It's also probably supposed to reduce jank, but 
I don't really know what jank means.

See  bug 17491  for GTK (fades).

The timings used on Windows 
(chrome/browser/views/status_bubble_views.cc) are:

kShowDelay = 80 (ms to wait before showing a bubble when hidden)
kHideDelay = 250 (ms to wait before hiding a bubble when shown)
kShowFadeDurationMS = 120 (ms to play the fade-in transition)
kHideFadeDurationMS = 200 (ms to play the fade-out transition)

In chrome/browser/cocoa/status_bubble_mac.mm, I see 
kShowFadeDuration (0.12) and kHideFadeDuration (0.2) and both seem to 
be used, so I'm not sure what's missing here, but I'm certainly not seeing 
any fading.

In that file, I also see:

// TODO(avi):
// - do display delay

so Avi gets a Cc here.
Comment 1 by mark@chromium.org, Oct 09, 2009
Fade: http://codereview.chromium.org/269045
Comment 2 by mark@chromium.org, Oct 11, 2009
I have a fix for the delay stuff too.
Status: Started
Owner: m...@chromium.org
Cc: -m...@chromium.org
Comment 3 by mark@chromium.org, Oct 12, 2009
r28749
Status: Fixed
Comment 4 by bugdroid1@chromium.org, Oct 14, 2009
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=28749 

------------------------------------------------------------------------
r28749 | mark@chromium.org | 2009-10-12 15:27:56 -0700 (Mon, 12 Oct 2009) | 19 lines
Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/cocoa/status_bubble_mac.h?r1=28749&r2=28748
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/cocoa/status_bubble_mac.mm?r1=28749&r2=28748
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/cocoa/status_bubble_mac_unittest.mm?r1=28749&r2=28748

Status bubbles should wait before showing and hiding, and should fade in and
out on the Mac.

This fixes the fades, which were actually written but unfortunately not
working due to a silly bug.  It also adds the delays, cleaning up a TODO.
It fixes some questionable logic ("hide by calling Hide() and then FadeIn()").
Finally, it allows better reuse of the status bubble NSWindow, and fixes a bug
that prevented the status bubble window from properly attaching to its parent
window if the parent was offscreen at attachment time.  Unit tests for the new
behavior are included, and as a bonus, I've added better testing for some
existing behavior.

See http://dev.chromium.org/user-experience/status-bubble for the design of
the status bubble.  Also, consult chrome/browser/views/status_bubble_views.cc
for the implementation used on Windows.

BUG=24495
TEST=Mouse over some links
Review URL: http://codereview.chromium.org/269045
------------------------------------------------------------------------

Comment 5 by srikan...@chromium.org, Oct 19, 2009
4.0.223.4
Status: Verified
Sign in to add a comment

Powered by Google Project Hosting