Gmail's chat contact list layer is not opaque when scrolling on OS X

RESOLVED FIXED in mozilla2.0

Status

()

Core
Layout
RESOLVED FIXED
8 years ago
8 years ago

People

(Reporter: jrmuizel, Assigned: Ehsan)

Tracking

unspecified
mozilla2.0
x86
Mac OS X
Points:
---

Firefox Tracking Flags

(blocking2.0 final+)

Details

(Whiteboard: [softblocker])

Attachments

(1 attachment)

(Reporter)

Description

8 years ago
This shows up as bad looking text. The problem also shows up in list boxes.
Specifically, Jeff's claim is that since this is on a solid background, we should never have to have a transparent layer.
The chat box is not opaque, it has rounded corners doesn't it?

But all the text should be over opaque stuff so the layer should be RGBA with subpixel AA specifically enabled. Ah, I bet ThebesLayerOGL needs something like SetAntialiasingFlags from BasicLayers.cpp.
blocking2.0: --- → ?
(Reporter)

Comment 3

8 years ago
(In reply to comment #2)
> The chat box is not opaque, it has rounded corners doesn't it?

I meant the contact list, but it's true the chat box suffers from a similar problem.
I'm not sure why the contact list would even have its own layer. It's just part of the page. Isn't it?
By "the contact list" do you mean the things you get when you click on "Contacts"?
If you open up the chat box on the left hand side where it has your name and then a textbox with "Search, add, or invite" there is a list of contacts, if you have enough it is scrollable.
Ah. That box probably is transparent, but we should probably be able to make it opaque by pulling up the solid background color from underneath. I'd have to do some debugging I don't have time to do right now to figure out why that isn't happening.

In any case, the text would be fixed either by what I said in comment #2 (which definitely needs to be done anyway), or by component alpha for GL.
(Reporter)

Comment 8

8 years ago
I also see this problem in the awesomebar dropdown. It would be nice if we didn't just paper over all of these cases taking the perf hit of doing component alpha.
(Reporter)

Comment 9

8 years ago
It's also visible in text areas that scroll like on the following page:

data:text/html,<textarea cols=13 rows=10></textarea>
There is bug 606075 also, which was reported on mac. Is this problem mac specific? (I mean without component alpha.) Maybe the mac theme code is messing with the analysis?
(In reply to comment #9)
> It's also visible in text areas that scroll like on the following page:
> 
> data:text/html,<textarea cols=13 rows=10></textarea>

In general that has to be component alpha since we don't know what the platform theme will draw for the background of the <textarea>. If it draws some theme stuff under the text, then we can't fill the text layer with a uniform opaque background.

We could potentially code in some assumptions about the theme backgrounds for textareas (i.e. that they're transparent or a known solid color inside the border), and then hoist that solid color up into the background of the text layer.

I'm not sure what's up with the awesomebar dropdown. That is probably a different issue.
Someone with a Mac that supports GL-layers should address comment #2, then we'll have a clearer idea of what else should be done.
I guess I might be able to do it on my Linux box at home too.
(Reporter)

Comment 14

8 years ago
(In reply to comment #11)
> In general that has to be component alpha since we don't know what the platform
> theme will draw for the background of the <textarea>. If it draws some theme
> stuff under the text, then we can't fill the text layer with a uniform opaque
> background.
> 
> We could potentially code in some assumptions about the theme backgrounds for
> textareas (i.e. that they're transparent or a known solid color inside the
> border), and then hoist that solid color up into the background of the text
> layer.

I think that's the correct thing to do on OS X.
Maybe a better option is to simply make the scrollable layer for textareas non-active so we repaint it all the time. Repainting textareas should hardly ever be expensive.
(Assignee)

Comment 16

8 years ago
Created attachment 514987 [details] [diff] [review]
Patch (v1)

I couldn't reproduce the original problem, but this is what comment 2 was about, I think.  roc: is this any good?
Assignee: nobody → ehsan
Status: NEW → ASSIGNED
Attachment #514987 - Flags: review?(roc)
Comment on attachment 514987 [details] [diff] [review]
Patch (v1)

Yes!
Attachment #514987 - Flags: review?(roc)
Attachment #514987 - Flags: review+
Attachment #514987 - Flags: approval2.0+
(Assignee)

Comment 18

8 years ago
So is this the only thing that I need to land as part of this bug?
(Assignee)

Updated

8 years ago
Keywords: checkin-needed
This needed an unbitrot, please check everything is fine.
http://hg.mozilla.org/mozilla-central/rev/0ac8887f208a
Status: ASSIGNED → RESOLVED
Last Resolved: 8 years ago
Keywords: checkin-needed
Resolution: --- → FIXED
Target Milestone: --- → mozilla2.0b12

Updated

8 years ago
Target Milestone: mozilla2.0b12 → mozilla2.0
This appears to have causes permaorange test failures:

s: talos-r3-fed-047
TEST-UNEXPECTED-FAIL | /home/cltbld/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/extensions/test/xpcshell/test_bug619730.js | test failed (with xpcshell return code: 0), see following log:
TEST-UNEXPECTED-FAIL | /home/cltbld/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/extensions/test/xpcshell/test_bug619730.js | null == GFX - See following stack:
TEST-UNEXPECTED-FAIL | /home/cltbld/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/extensions/test/xpcshell-unpack/test_bug619730.js | test failed (with xpcshell return code: 0), see following log:
TEST-UNEXPECTED-FAIL | /home/cltbld/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/extensions/test/xpcshell-unpack/test_bug619730.js | null == GFX - See following stack:
Unless the blacklist update somehow caused the orange.
Yep, the blacklist update caused those oranges (bug 637008).
(Assignee)

Comment 23

8 years ago
(In reply to comment #19)
> This needed an unbitrot, please check everything is fine.
> http://hg.mozilla.org/mozilla-central/rev/0ac8887f208a

Yes, everything is fine.  Thanks a lot for landing this!
You need to log in before you can comment on or make changes to this bug.