Closed
Bug 1261612
Opened 9 years ago
Closed 8 years ago
White semi-transparent layer in top of iframes with remote=true
Categories
(Firefox OS Graveyard :: General, defect)
Tracking
(firefox49 fixed)
RESOLVED
FIXED
Tracking | Status | |
---|---|---|
firefox49 | --- | fixed |
People
(Reporter: apastor, Assigned: kanru)
References
Details
Attachments
(5 files, 5 obsolete files)
When oop is enabled, the homescreen is shown with a white transparent layer in top of it.
Reporter | ||
Comment 1•9 years ago
|
||
Forgot to mention that happens when we load the iframes in chrome:// urls
Comment 2•9 years ago
|
||
That explain the white I have observed when playing with keyboard.
Comment 3•9 years ago
|
||
We probably want to inspect all the iframes and elements that are there. I remember running into similar issues in the past with the callscreen and they were due to having certain pieces of the UI hidden with a mix of code and magic CSS selectors. Switching OOP on and off would give different results due to the iframes being handled differently IIRC.
Comment hidden (typo) |
Assignee | ||
Comment 6•9 years ago
|
||
https://dxr.mozilla.org/mozilla-central/rev/21bf1af375c1fa8565ae3bb2e89bd1a0809363d4/dom/ipc/TabChild.cpp#1253-1275
The background is opaque because we make a remote frame opaque if TabChild::IsRootContentDocument() and <iframe mozbrowser> is considered a root content document. We used to allow mozapp iframe inside another mozapp to be transparent but not a browser frame. Now we don't create mozapp iframe anymore maybe we should only allow <iframe mozbrowser> in chrome to have transparent background, maybe via transparent attribute.
See also bug 1175719
Assignee | ||
Comment 7•9 years ago
|
||
Attachment #8742666 -
Flags: review?(bugs)
Assignee | ||
Comment 8•9 years ago
|
||
Attachment #8742667 -
Flags: review?(bugs)
Comment 9•9 years ago
|
||
Assignee | ||
Comment 10•9 years ago
|
||
Attachment #8742669 -
Flags: review?(bfrancis)
Assignee | ||
Updated•9 years ago
|
Attachment #8742668 -
Flags: review?(bfrancis)
Assignee | ||
Updated•9 years ago
|
Attachment #8742669 -
Attachment is obsolete: true
Attachment #8742669 -
Flags: review?(bfrancis)
Comment 11•9 years ago
|
||
Kan-Ru, I see a lot of oddities after building debug mulet with your patch :)
Flags: needinfo?(kchen)
Comment 12•9 years ago
|
||
Still on debug mulet, I have a white layer for keyboard. I suspect it's because you only added the tag for the homescreen?
Comment 13•9 years ago
|
||
I can confirm we also need the transparent attribute for the window that we set as "inputmethod" :)
Attachment #8742740 -
Attachment is obsolete: true
Assignee | ||
Comment 14•9 years ago
|
||
(In reply to Alexandre LISSY :gerard-majax from comment #11)
> Created attachment 8742738 [details]
> Capture du 2016-04-19 12-45-43.png
>
> Kan-Ru, I see a lot of oddities after building debug mulet with your patch :)
Is it fixed after you apply transparent attribute to inputmethod?
Flags: needinfo?(kchen)
Comment 15•9 years ago
|
||
No, this stays as shown in attachment 8742744 [details]
Comment 16•9 years ago
|
||
It is also needed for search app otherwise we cannot see the suggestions
Reporter | ||
Comment 17•9 years ago
|
||
Can we just somehow do it for all the mozbrowser frames with chrome urls?
Comment 18•9 years ago
|
||
Hmm, I thought I commented this yesterday.
Should I be expecting new patches here, based on the issues gerard-majax is seeing?
Flags: needinfo?(kchen)
Assignee | ||
Comment 19•9 years ago
|
||
(In reply to Olli Pettay [:smaug] from comment #18)
> Hmm, I thought I commented this yesterday.
> Should I be expecting new patches here, based on the issues gerard-majax is
> seeing?
I will investigate the issue. But I'd like to know what do you think about the approach. Consider it as a feedback? instead, thanks!
Flags: needinfo?(kchen)
Assignee | ||
Comment 20•9 years ago
|
||
Updated patch fixed the devtools issue.
Attachment #8742666 -
Attachment is obsolete: true
Attachment #8742666 -
Flags: review?(bugs)
Attachment #8743737 -
Flags: review?(bugs)
Assignee | ||
Comment 21•9 years ago
|
||
Attachment #8742667 -
Attachment is obsolete: true
Attachment #8742667 -
Flags: review?(bugs)
Attachment #8743738 -
Flags: review?(bugs)
Assignee | ||
Comment 22•9 years ago
|
||
Assignee | ||
Comment 23•9 years ago
|
||
Comment 24•9 years ago
|
||
Comment on attachment 8743738 [details] [diff] [review]
Part 2. Allow <iframe mozbrowser> in chrome doc to use transparent attribute. v2
>@@ -5163,18 +5163,22 @@ static bool IsTransparentContainerElement(nsPresContext* aPresContext)
> if (!docShell) {
> return false;
> }
>
> nsCOMPtr<nsPIDOMWindowOuter> pwin = docShell->GetWindow();
> if (!pwin)
> return false;
> nsCOMPtr<Element> containerElement = pwin->GetFrameElementInternal();
>- return containerElement &&
>- containerElement->HasAttr(kNameSpaceID_None, nsGkAtoms::transparent);
>+
>+ TabChild* tab = TabChild::GetFrom(docShell);
>+
>+ return (containerElement &&
>+ containerElement->HasAttr(kNameSpaceID_None, nsGkAtoms::transparent))
>+ || (tab && tab->IsTransparent());
> }
So I'm not quite happy with this, given that TabChild::GetFrom(docShell); returns tabchild even for sub-docshells, not only the
top-level docshell inside TabChild. So the meaning of the method changes here.
Could you possibly check that if we have tabchild, tabchild->GetDocShell returns the docShell we have here?
Or check that docShell is the topmost docshell.
Attachment #8743738 -
Flags: review?(bugs) → review-
Updated•9 years ago
|
Attachment #8743737 -
Flags: review?(bugs) → review+
Comment 25•9 years ago
|
||
Comment on attachment 8742668 [details]
[gaia] kanru:1261612#transparent_homescreen > mozilla-b2g:kanikani
We probably need this flag set on more frames than this, but r+ for this one.
Attachment #8742668 -
Flags: review?(bfrancis) → review+
Assignee | ||
Comment 26•8 years ago
|
||
Checks if the presShell is top PreShell from TabChild.
Attachment #8743738 -
Attachment is obsolete: true
Attachment #8751626 -
Flags: review?(bugs)
Updated•8 years ago
|
Attachment #8751626 -
Flags: review?(bugs) → review+
Assignee | ||
Comment 27•8 years ago
|
||
Since this won't affect other products other than B2G, I'm going to land it on m-i.
Comment 28•8 years ago
|
||
Assignee | ||
Updated•8 years ago
|
Keywords: leave-open
Assignee | ||
Comment 29•8 years ago
|
||
Comment on attachment 8742668 [details]
[gaia] kanru:1261612#transparent_homescreen > mozilla-b2g:kanikani
I added search and inputmethod to also having transparent background. If you think this is OK, could you merge it?
Attachment #8742668 -
Flags: review+ → review?(bfrancis)
Comment 30•8 years ago
|
||
Kan-Ru, do you mind also pushing it to pine? Thanks!
Flags: needinfo?(kchen)
Assignee | ||
Comment 31•8 years ago
|
||
(In reply to Alexandre LISSY :gerard-majax from comment #30)
> Kan-Ru, do you mind also pushing it to pine? Thanks!
I wouldn't mind if it won't make merging m-c to pine harder.
Flags: needinfo?(kchen)
Comment 32•8 years ago
|
||
Comment on attachment 8742668 [details]
[gaia] kanru:1261612#transparent_homescreen > mozilla-b2g:kanikani
Gaia patch looks good, thanks! Hopefully there won't be any more window types we need to add this for...
Attachment #8742668 -
Flags: review?(bfrancis) → review+
Comment 33•8 years ago
|
||
Gaia patch landed on kanikani branch https://github.com/mozilla-b2g/gaia/commit/b921e903bfca4bef8262403816961ccdd15c16e7
Comment 34•8 years ago
|
||
(In reply to Kan-Ru Chen [:kanru] (UTC+8) from comment #31)
> (In reply to Alexandre LISSY :gerard-majax from comment #30)
> > Kan-Ru, do you mind also pushing it to pine? Thanks!
>
> I wouldn't mind if it won't make merging m-c to pine harder.
Why would it?
Assignee | ||
Comment 35•8 years ago
|
||
https://hg.mozilla.org/projects/pine/rev/220f62c08e95
https://hg.mozilla.org/projects/pine/rev/5ba3364dc6a8
Keywords: leave-open
Comment 36•8 years ago
|
||
bugherder |
You need to log in
before you can comment on or make changes to this bug.
Description
•