This patch does not make some header files stop including the inline
header because fixing them require more changes.
Note that `#include "nsComponentManagerUtils.h"` is fixing a bustage
caused by "use of undeclared identifier 'do_CreateInstance'" error.
Differential Revision: https://phabricator.services.mozilla.com/D304432
When a sandboxed iframe with "allow-top-navigation" attempts to navigate
the top-level, we must verify that the parent is permitted to do so. To
make this check reliable across processes, this patch introduces a new
flag that is propagated cross-process.
Differential Revision: https://phabricator.services.mozilla.com/D286658
When a sandboxed iframe with "allow-top-navigation" attempts to navigate
the top-level, we must verify that the parent is permitted to do so. To
make this check reliable across processes, this patch introduces a new
flag that is propagated cross-process.
Differential Revision: https://phabricator.services.mozilla.com/D286658
Previously, "dom.security.framebusting_intervention.enabled" would only have an
effect with "dom.disable_open_during_load" enabled. This change makes these two
prefs independent.
Differential Revision: https://phabricator.services.mozilla.com/D273602
While this isn't needed anymore with the current approach for bug 2008334,
it is still a good refactoring for the Document PiP code.
Differential Revision: https://phabricator.services.mozilla.com/D278261
While this isn't needed anymore with the current approach for bug 2008334,
it is still a good refactoring for the Document PiP code.
Differential Revision: https://phabricator.services.mozilla.com/D278261
While this isn't needed anymore with the current approach for bug 2008334,
it is still a good refactoring for the Document PiP code.
Differential Revision: https://phabricator.services.mozilla.com/D278261
4 years ago, we removed the need to have the separate IPDLParamTraits
type, but we never got around to fully removing it. This patch rips out
the remains of IPDLParamTraits.
Differential Revision: https://phabricator.services.mozilla.com/D266719
Just setting the loadInfo introduced in Bug 1991888 is enough.
Not setting the bit is good for performance due to sending less data
over IPC.
Differential Revision: https://phabricator.services.mozilla.com/D269730
It is replaced by a standard-conforming cast to (void) which is
understood the same by the compiler.
In some cases this could be replaced by `[[maybe_unused]]` but for
expression whose value is ignored, this requires storing to a temporary
variable first, so not going that way.
One notable change is that marking an object of type already_AddRefed as
unused used to implicitly leak memory. This is now made explicit.
Most of the heavy lifting was done through:
$ git grep -l '\<Unused\> <<' | xargs sed -i -e 's/Unused << /(void)/g'
$ git grep -l mozilla/Unused.h | xargs sed -i -e '/mozilla\/Unused.h/ d'
Differential Revision: https://phabricator.services.mozilla.com/D268706
It is replaced by a standard-conforming cast to (void) which is
understood the same by the compiler.
In some cases this could be replaced by `[[maybe_unused]]` but for
expression whose value is ignored, this requires storing to a temporary
variable first, so not going that way.
One notable change is that marking an object of type already_AddRefed as
unused used to implicitly leak memory. This is now made explicit.
Most of the heavy lifting was done through:
$ git grep -l '\<Unused\> <<' | xargs sed -i -e 's/Unused << /(void)/g'
$ git grep -l mozilla/Unused.h | xargs sed -i -e '/mozilla\/Unused.h/ d'
Differential Revision: https://phabricator.services.mozilla.com/D268706
It is replaced by a standard-conforming cast to (void) which is
understood the same by the compiler.
In some cases this could be replaced by `[[maybe_unused]]` but for
expression whose value is ignored, this requires storing to a temporary
variable first, so not going that way.
One notable change is that marking an object of type already_AddRefed as
unused used to implicitly leak memory. This is now made explicit.
Most of the heavy lifting was done through:
$ git grep -l '\<Unused\> <<' | xargs sed -i -e 's/Unused << /(void)/g'
$ git grep -l mozilla/Unused.h | xargs sed -i -e '/mozilla\/Unused.h/ d'
Differential Revision: https://phabricator.services.mozilla.com/D268706
It is replaced by a standard-conforming cast to (void) which is
understood the same by the compiler.
In some cases this could be replaced by `[[maybe_unused]]` but for
expression whose value is ignored, this requires storing to a temporary
variable first, so not going that way.
One notable change is that marking an object of type already_AddRefed as
unused used to implicitly leak memory. This is now made explicit.
Most of the heavy lifting was done through:
$ git grep -l '\<Unused\> <<' | xargs sed -i -e 's/Unused << /(void)/g'
$ git grep -l mozilla/Unused.h | xargs sed -i -e '/mozilla\/Unused.h/ d'
Differential Revision: https://phabricator.services.mozilla.com/D268706
In the same manner as with beforeunload we track when we need to fire a
traverse navigate event for the top level window context. This is
required when: any event handlers are registered on the window's
navigation object or when there are any ongoing or upcoming method
trackers associated with a window's navigation object.
Also make sure to not fire a push/replace/reload navigate event when
only a traverse navigate event should be fired.
Differential Revision: https://phabricator.services.mozilla.com/D261408
This new IPDL API allows processes to communicate to the Window that it
should process a Close Watcher close request, independent of the
browser controlled gestures such as the Esc key. This will allow the
browser UI to provide a button that can process a close request.
Differential Revision: https://phabricator.services.mozilla.com/D254530
This reverts commit 9c2f9c2c3a.
Revert "Bug 1966738 - Part 2: Expose if there is an active CloseWatcher to the UI r=reusable-components-reviewers,mstriemer"
This reverts commit dfb2271f47.
This new IPDL API allows processes to communicate to the Window that it
should process a Close Watcher close request, independent of the
browser controlled gestures such as the Esc key. This will allow the
browser UI to provide a button that can process a close request.
Differential Revision: https://phabricator.services.mozilla.com/D254530
This brings our implementation closer to the verbage in the spec, which
changed user gesture start to last activation timestamp.
This also adds comments to various parts of WindowContext which interact
with mLastActivationTimestamp nee mUserGestureStart, pointing to the
various parts of the spec which describe this functionality, making it
easier to follow (and giving us SpecMonkey references).
Differential Revision: https://phabricator.services.mozilla.com/D245758
This includes:
* #fire-a-traverse-navigate-event
* #fire-a-push/replace/reload-navigate-event
* #fire-a-download-request-navigate-event
which are all implemented in terms of #inner-navigate-event-firing-algorithm.
Actually calling any of the above is only added for History.pushState and
History.replaceState using #fire-a-push/replace/reload-navigate-event.
Differential Revision: https://phabricator.services.mozilla.com/D238786
This includes:
* #fire-a-traverse-navigate-event
* #fire-a-push/replace/reload-navigate-event
* #fire-a-download-request-navigate-event
which are all implemented in terms of #inner-navigate-event-firing-algorithm.
Actually calling any of the above is only added for History.pushState and
History.replaceState using #fire-a-push/replace/reload-navigate-event.
Differential Revision: https://phabricator.services.mozilla.com/D238786
This includes:
* #fire-a-traverse-navigate-event
* #fire-a-push/replace/reload-navigate-event
* #fire-a-download-request-navigate-event
which are all implemented in terms of #inner-navigate-event-firing-algorithm.
Actually calling any of the above is only added for History.pushState and
History.replaceState using #fire-a-push/replace/reload-navigate-event.
Differential Revision: https://phabricator.services.mozilla.com/D238786
This includes:
* #fire-a-traverse-navigate-event
* #fire-a-push/replace/reload-navigate-event
* #fire-a-download-request-navigate-event
which are all implemented in terms of #inner-navigate-event-firing-algorithm.
Actually calling any of the above is only added for History.pushState and
History.replaceState using #fire-a-push/replace/reload-navigate-event.
Differential Revision: https://phabricator.services.mozilla.com/D238786