GNOME Bugzilla – Bug 620782
[dash] Add a fade effect when hovering over items
Last modified: 2010-06-08 18:49:03 UTC
See patches. The second patch is a simple CSS modification based on the transitions in bug 619025 - it already comes with the McCann-Seal-of_Approval(tm), so I'd like to commit it after landing transitions. The first patch works around a problem with transitions being applied erroneously when adding/removing items to/from the well.
Created attachment 162894 [details] [review] [appWellIcon] Set correct style in constructor Currently, only the base style class is set in the constructor, the style update according to the state of the represented app is deferred until the actor is shown. As existing icons are destroyed and recreated when the number of icons changes, this behavior causes the icons of running apps to flicker if CSS transitions are used.
Created attachment 162895 [details] [review] [dash] Add a fade effect when hovering over items Use a subtle hover transition in order to avoid abrupt visual changes.
Review of attachment 162894 [details] [review]: If we have to set the state on construction and we have no idea why we are delaying the connection, then we should just eliminate delayed connection and connect to notify::state in the constructor and get rid of _onShow(). The show/hide handling is just slightly anyways - _onHideDestroy needs to set this._stateChangedId to 0.
Review of attachment 162895 [details] [review]: Seems to work, makes things look slicker. (Possibly some cleanups could be done to add a common style class for everything that has the identical hover, but this only makes the duplication just a tiny bit worse.)
Created attachment 163084 [details] [review] [appWellIcon] Set correct style in constructor Updated patch - I digged around in logs and I'm pretty sure that the _onShow/_onHide behavior is something I did in response to a comment from Colin. The basic idea is that it would be expensive to do style calculations if StWidget weren't smart enough to defer them anyway while the actor is unmapped. I doubt there is any other reason for that code, so yeah, let's just remove it ...
Review of attachment 163084 [details] [review]: Looks good
Attachment 162895 [details] pushed as 466f661 - [dash] Add a fade effect when hovering over items Attachment 163084 [details] pushed as dad80b3 - [appWellIcon] Set correct style in constructor