NPAPI plugins are no longer supported. MozPaintWait and MozPaintWaitFinished events are no longer sent -- they came exclusively from nsPluginInstanceOwner, which was removed in bug 1682030.
Differential Revision: https://phabricator.services.mozilla.com/D114021
Removes NPAPI plugin features from tests outside of dom/plugins. Some tests are updated to avoid NPAPI behavior and others are deleted if they no longer offer anthing useful.
Differential Revision: https://phabricator.services.mozilla.com/D107134
Removes NPAPI plugin features from tests outside of dom/plugins. Some tests are updated to avoid NPAPI behavior and others are deleted if they no longer offer anthing useful.
Differential Revision: https://phabricator.services.mozilla.com/D107134
This change adds a new mochitest-only helper called `AppTestDelegate`. This
helper will provide primitives that are not normally available at the toolkit
level.
Each app can implement the `AppUiTestDelegate` API to provide the primitives.
This is done so that we can ensure compatibility of the Extension API across
implementations.
The initial set of APIs is as follows:
```
class TestDelegate {
clickPageAction(window, extensionId);
closePageAction(window, extensionId);
clickBrowserAction(window, extensionId);
closeBrowserAction(window, extensionId);
awaitExtensionPanel(window, extensionId);
// Returns a unique identifier for the tab
openNewForegroundTab(window, url, waitForLoad);
// tabId must be the identifier from openNewForegroundTab
removeTab(tabId);
}
```
Differential Revision: https://phabricator.services.mozilla.com/D99170
We keep mMedium in nsPresContext rather than just looking it up in the
browsing context because that's used quite more frequently.
Differential Revision: https://phabricator.services.mozilla.com/D103782
This change adds a new mochitest-only helper called `AppTestDelegate`. This
helper will provide primitives that are not normally available at the toolkit
level.
Each app can implement the `AppUiTestDelegate` API to provide the primitives.
This is done so that we can ensure compatibility of the Extension API across
implementations.
The initial set of APIs is as follows:
```
class TestDelegate {
clickPageAction(window, extensionId);
closePageAction(window, extensionId);
clickBrowserAction(window, extensionId);
closeBrowserAction(window, extensionId);
awaitExtensionPanel(window, extensionId);
// Returns a unique identifier for the tab
openNewForegroundTab(window, url, waitForLoad);
// tabId must be the identifier from openNewForegroundTab
removeTab(tabId);
}
```
Differential Revision: https://phabricator.services.mozilla.com/D99170
This also fixes an issue where MockFilePicker wouldn't set the mode correctly,
which caused it to always use "modeOpen". For this test we need to pass
"modeGetFolder" in order for the prompt to show.
Differential Revision: https://phabricator.services.mozilla.com/D96526
This also fixes an issue where MockFilePicker wouldn't set the mode correctly,
which caused it to always use "modeOpen". For this test we need to pass
"modeGetFolder" in order for the prompt to show.
Differential Revision: https://phabricator.services.mozilla.com/D96526
Allow-list all Python code in tree for use with the black linter, and re-format all code in-tree accordingly.
To produce this patch I did all of the following:
1. Make changes to tools/lint/black.yml to remove include: stanza and update list of source extensions.
2. Run ./mach lint --linter black --fix
3. Make some ad-hoc manual updates to python/mozbuild/mozbuild/test/configure/test_configure.py -- it has some hard-coded line numbers that the reformat breaks.
4. Make some ad-hoc manual updates to `testing/marionette/client/setup.py`, `testing/marionette/harness/setup.py`, and `testing/firefox-ui/harness/setup.py`, which have hard-coded regexes that break after the reformat.
5. Add a set of exclusions to black.yml. These will be deleted in a follow-up bug (1672023).
# ignore-this-changeset
Differential Revision: https://phabricator.services.mozilla.com/D94045
Allow-list all Python code in tree for use with the black linter, and re-format all code in-tree accordingly.
To produce this patch I did all of the following:
1. Make changes to tools/lint/black.yml to remove include: stanza and update list of source extensions.
2. Run ./mach lint --linter black --fix
3. Make some ad-hoc manual updates to python/mozbuild/mozbuild/test/configure/test_configure.py -- it has some hard-coded line numbers that the reformat breaks.
4. Make some ad-hoc manual updates to `testing/marionette/client/setup.py`, `testing/marionette/harness/setup.py`, and `testing/firefox-ui/harness/setup.py`, which have hard-coded regexes that break after the reformat.
5. Add a set of exclusions to black.yml. These will be deleted in a follow-up bug (1672023).
# ignore-this-changeset
Differential Revision: https://phabricator.services.mozilla.com/D94045
Allow-list all Python code in tree for use with the black linter, and re-format all code in-tree accordingly.
To produce this patch I did all of the following:
1. Make changes to tools/lint/black.yml to remove include: stanza and update list of source extensions.
2. Run ./mach lint --linter black --fix
3. Make some ad-hoc manual updates to python/mozbuild/mozbuild/test/configure/test_configure.py -- it has some hard-coded line numbers that the reformat breaks.
4. Add a set of exclusions to black.yml. These will be deleted in a follow-up bug (1672023).
# ignore-this-changeset
Differential Revision: https://phabricator.services.mozilla.com/D94045
Some tests rely on SpecialPowers.pushPermissions/popPermissions/flushPermissions
operating on the same permissions stack no matter the SpecialPowers instance
they're called on. This works when all of those SpeicalPowers instances are in
the same process, but with out-of-process Fision frames, that isn't always the
case.
This patch updates the permission stack code to operate the same way as the
preference stack code, which was already updated to deal with this issue.
Differential Revision: https://phabricator.services.mozilla.com/D90320
It has some properties which make it footgunny, especially in the face of
Fission. Callers should use WindowGlobalChild.innerWindowId instead.
Differential Revision: https://phabricator.services.mozilla.com/D82801
It has some properties which make it footgunny, especially in the face of
Fission. Callers should use WindowGlobalChild.innerWindowId instead.
Differential Revision: https://phabricator.services.mozilla.com/D82801
It has some properties which make it footgunny, especially in the face of
Fission. Callers should use WindowGlobalChild.innerWindowId instead.
Differential Revision: https://phabricator.services.mozilla.com/D82801
When a privileged exception object is thrown by a function exported via
`exportFunction`, it is reported to the console, and a generic unprivileged
exception is re-thrown in its place. This is a problem for test harness code
which tests for getters throwing exceptions by catching them and then setting
a flag. The re-thrown exception is hidden, but the original is still reported,
and becomes a red herring for people debugging tests.
This patch catches exceptions thrown by getters (and setters, and other proxy
hooks previously overlooked), checks if they're readable by the global the
privileged object is wrapped for, wraps them if they are not, and then
re-throws them.
Differential Revision: https://phabricator.services.mozilla.com/D82782
When a privileged exception object is thrown by a function exported via
`exportFunction`, it is reported to the console, and a generic unprivileged
exception is re-thrown in its place. This is a problem for test harness code
which tests for getters throwing exceptions by catching them and then setting
a flag. The re-thrown exception is hidden, but the original is still reported,
and becomes a red herring for people debugging tests.
This patch catches exceptions thrown by getters (and setters, and other proxy
hooks previously overlooked), checks if they're readable by the global the
privileged object is wrapped for, wraps them if they are not, and then
re-throws them.
Differential Revision: https://phabricator.services.mozilla.com/D82782
This patch will
- remove `MediaControlKeysEvent` and use `MediaControlKey` to replace it
- rename names for all `MediaControlKey` related methods, functions, classes and descriptions
The advantage of doing so are
- remove the duplicated type so that we only need to maintain `MediaControlKey`
Differential Revision: https://phabricator.services.mozilla.com/D78140
This is mostly changes to handle retrieving the security state asynchronously via the parent process, needing lots of async/await additions.
It also removes the docshell mixed content flag checks (which don't seem to be used in code, only tests), which are mostly still covered by checks of the security UI.
Differential Revision: https://phabricator.services.mozilla.com/D75448
This is mostly changes to handle retrieving the security state asynchronously via the parent process, needing lots of async/await additions.
It also removes the docshell mixed content flag checks (which don't seem to be used in code, only tests), which are mostly still covered by checks of the security UI.
Differential Revision: https://phabricator.services.mozilla.com/D75448