Created attachment 8513556 [details] skeleton-0.1.xpi See attached extension. It adds two buttons that display a panel with a browser in it, one uses a type="arrow" and one doesn't. If you click the one without the type="arrow" multiple times, it works every time. If you click the one with the type="arrow", it works the first time, but on subsequent times, the content disappears. No amount of CSS will make the content stay. This only happens on Mac. On Windows, it works fine.
Also, the placement of the buttons was an artifact of how I created the testcase. It would not be that way in real life.
Component: General → Untriaged
Product: Firefox → Core
Summary: Content inside an arrow panel disappears onsubsequent display (Mac only) → <browser> inside an arrow panel disappears on subsequent display (Mac only)
This also affects web extensions, as the default_popup browser_action uses the same mechanism.
Markus, any chance you could look into what's going on here, seeing as it's OSX-specific?
Not in the near future, unfortunately. I'll put it on my personal backlog list.
If I set noautohide="true" on the panel and check with the inspector, it looks like the browser's box is 0x0 and doesn't get reflown when the panel is shown. As soon as I mess with the element's style attribute (it has overflow:hidden from the XPI, afaict, and either removing or re-adding that works) the browser shows up. I expect, therefore, that somehow (XUL) layout is not reflowing the contents of the panel correctly after the panel has finished animating. Neil, is this something you could look at? (if not, please let me know and I can try to find someone else...)
Created attachment 8662496 [details] [diff] [review] Reduced testcase So this issue here relates to text-shadow being changed on the button while its popup opens. This might give someone such as Markus a hint as to what is happening.
Moving to Core:XUL per https://bugzilla.mozilla.org/show_bug.cgi?id=1455336
Component: XP Toolkit/Widgets: XUL → XUL
You need to log in before you can comment on or make changes to this bug.