And have it mirror in the parent process more automatically.
The docShellIsActive setter in the browser-custom-element side needs to
be there rather than in the usual DidSet() calls because the
AsyncTabSwitcher code relies on getting an exact amount of notifications
as response to that specific setter. Not pretty, but...
BrowserChild no longer sets IsActive() on the docshell itself for OOP
iframes. This fixes bug 1679521. PresShell activeness is used to
throttle rAF as well, which handles OOP iframes nicely as well.
Differential Revision: https://phabricator.services.mozilla.com/D96072
Before this change we were only waiting for the `fullscreenchange`
event in the frame that requested fullscreen. This event is fired
before the the promise returned by `requestFullscreen` is resolved.
We now wait on the returned promise to resolve in addition to the
event, which should delay when we check the logged events from
all the frames.
Differential Revision: https://phabricator.services.mozilla.com/D94017
This expands the current `requestFullscreen()` mochitest to check the
result of exiting fullscreen using the ESC key, since it follows a
separate code path from `document.exitFullscreen()`.
Depends on D90928
Differential Revision: https://phabricator.services.mozilla.com/D90940
In order to more thoroughly test fullscreen with Fission, this change
introduces a new mochitest with a more complicated tree of
cross-origin iframes. The test ensures we're firing the proper events
in the correct documents, as well as setting and unsetting
`document.fullscreenElement`.
Differential Revision: https://phabricator.services.mozilla.com/D90928
Two fixes:
* The urlbar view isn't a popup anymore, so `FullScreen` should listen for `onViewOpen` and `onViewClose` on the urlbar controller instead of popup events.
* Change the keypress listeners to keydown to listen for enter events in the urlbar and hide the toolbars.
Differential Revision: https://phabricator.services.mozilla.com/D62123
ContentTask tasks have a different lifetime than SpecialPowers tasks, with the
former being tied to the lifetime of a message manager and the latter tied to
the lifetime of a window global. That means that existing ContentTask callers
which expect to be able to register load listeners before the creation of a
window global, or which expect to persist after a page has navigated, won't
work as SpecialPowers tasks.
Since those sorts of tasks are not really resilient in the face of Fission,
they should really be written to work differently, but this patch mostly just
reverts them to using ContentTask for the time being.
Differential Revision: https://phabricator.services.mozilla.com/D53744
This is generally pretty straightforward, and rewrites nearly all calls. It
skips the ones that it can detect using frame script globals like
`sendAsyncMessage`, though.
Differential Revision: https://phabricator.services.mozilla.com/D53740
ContentTask tasks have a different lifetime than SpecialPowers tasks, with the
former being tied to the lifetime of a message manager and the latter tied to
the lifetime of a window global. That means that existing ContentTask callers
which expect to be able to register load listeners before the creation of a
window global, or which expect to persist after a page has navigated, won't
work as SpecialPowers tasks.
Since those sorts of tasks are not really resilient in the face of Fission,
they should really be written to work differently, but this patch mostly just
reverts them to using ContentTask for the time being.
Differential Revision: https://phabricator.services.mozilla.com/D53744
This is generally pretty straightforward, and rewrites nearly all calls. It
skips the ones that it can detect using frame script globals like
`sendAsyncMessage`, though.
Differential Revision: https://phabricator.services.mozilla.com/D53740
ContentTask tasks have a different lifetime than SpecialPowers tasks, with the
former being tied to the lifetime of a message manager and the latter tied to
the lifetime of a window global. That means that existing ContentTask callers
which expect to be able to register load listeners before the creation of a
window global, or which expect to persist after a page has navigated, won't
work as SpecialPowers tasks.
Since those sorts of tasks are not really resilient in the face of Fission,
they should really be written to work differently, but this patch mostly just
reverts them to using ContentTask for the time being.
Differential Revision: https://phabricator.services.mozilla.com/D53744