GNOME Bugzilla – Bug 581067
Make the current-workspace indicator in the overlay cooler-looking (eg, a halo/inverted-shadow effect using clutter-cairo)
Last modified: 2010-12-15 12:57:00 UTC
Make the current-workspace indicator in the overlay cooler-looking (eg, a halo/inverted-shadow effect using clutter-cairo) This was requested on http://live.gnome.org/GnomeShell/Todo as job 1. I'm submitting the bug into the system.
Created attachment 133773 [details] [review] Replaces the existing indicator with a Big.Box, partially transparent, with rounded corners I don't know anything about ClutterCairoTexture so I wasn't willing to try anything like an inverted halo / glow effect. This is a slightly different effect, I think it looks marginally nicer. Obviously ClutterCairo fanciness is going to be the way to go, and if anyone cares to mentor me briefly on it I'll gladly put the time in to get the patch a little prettier.
I can barely see it at all, it needs to be fairly obvious what workspace is active. (Also, the padding/spacing you set on the Box aren't useful in this context, since you are just using it to draw a rectangle.)
Created attachment 147601 [details] [review] [Overview] change current workspace indicator to match AppSwitcher Jon mentioned somewhere that we should use the same rounded rectangle here as we do in the app switcher. (I can't find the bug where he said this now though.) Of course, to me it looks darker here than it does in the app switcher, but that's because of the translucency, and if you had a mostly-black workspace, the app switcher highlight would look the same as this one.
Created attachment 147606 [details] Screenshot of how it looks with patch applied At least on my screen, I'd say it just doesn't work - the current workspace doesn't pop out out enough to let me know what workspace is current without having to think and look (I probably cropped the screenshot a bit too much - may be easier to just try the patch out)
Review of attachment 147601 [details] [review]: Hm, ideally St.Widget background would be clipped by border-radius, but it's not at the moment =/ Otherwise one comment. ::: js/ui/workspaces.js @@ +638,3 @@ + this._frame.set_position(this._desktop.actor.x - padding, + this._frame.corner_radius = padding; + let padding = FRAME_SIZE / this.actor.scale_x; We used to divide by scale_y for the second argument but we're now dividing by scale_x; are we sure they're always the same?
(In reply to comment #4) > At least on my screen, I'd say it just doesn't work - the current workspace > doesn't pop out out enough to let me know what workspace is current without > having to think and look Solid white is a little too bold though. We could use some in-between value. (In reply to comment #5) > Hm, ideally St.Widget background would be clipped by border-radius, but it's > not at the moment =/ Otherwise one comment. yeah, at some point we need to move Big.Rectangle's code into St somewhere. > We used to divide by scale_y for the second argument but we're now dividing by > scale_x; are we sure they're always the same? yes
(In reply to comment #6) > > yeah, at some point we need to move Big.Rectangle's code into St somewhere. Actually, St.Widget uses Big.Rectangle right now (it's kind of a hack...really we need to extract the corner-rendering bits). From a quick glance at the code it might even handle the corner_radius + background_color case right now actually.
(In reply to comment #7) > (In reply to comment #6) > > > > yeah, at some point we need to move Big.Rectangle's code into St somewhere. > > Actually, St.Widget uses Big.Rectangle right now (it's kind of a hack...really > we need to extract the corner-rendering bits). From a quick glance at the code > it might even handle the corner_radius + background_color case right now > actually. It does