GNOME Bugzilla – Bug 788039
theming: same setting for text-shadow and icon-shadow result in different opacity rendering
Last modified: 2017-09-22 15:11:52 UTC
I noticed teh shadows on the top bar render differently for icons and text, despite using the same CSS. Most visible on the hover states: /* .panel-button */ &:hover { text-shadow: 0px 1px 6px rgba(0, 0, 0, 1); .system-status-icon, .app-menu-icon > StIcon, .popup-menu-arrow { icon-shadow: 0px 1px 6px rgba(0, 0, 0, 1); } } I am guessing this has to do with the alpha channel mask computation, because I noticed it goes bonkers on some icons, like the firefox nightly (screenshot attached).
Created attachment 360246 [details] icon-shadow going bonkers
Created attachment 360262 [details] [review] shadow: Only use correctly sized textures for shortcut When creating a shadow for a ClutterTexture, we currently use the underlying CoglTexture directly instead of rendering the actor to an offscreen buffer. This assumes that the CoglTexture is directly suitable as shadow source, which isn't necessarily the case - it may have a very different size than what is shown and scaled up or down by the hardware. In that case we end up with a scaled shadow texture as well, which messes up the desired blur effect - the result will be too light when scaling up, or too sharp when scaling down. To fix this, only take the shortcut when a ClutterTexture's underlying texture has the correct size and fall back to offscreen rendering otherwise.
Review of attachment 360262 [details] [review]: good catch, looks good
Attachment 360262 [details] pushed as 7015bb2 - shadow: Only use correctly sized textures for shortcut