When navigating to an about: page that doesn't exist (e.g.
"about:somethingthatdoesnotexist"), the docShell will call
nsSecureBrowserUIImpl::OnLocationChange with a request that is null.
Consequently, we can't use that to QueryInterface to a nsISecurityEventSink to
call OnSecurityChange. The previous implementation would use the prior
request's nsISecurityEventSink, which was a bug but luckily this produced the
correct behavior. Since the original docShell the nsSecureBrowserUIImpl was
initialized with is what needs to be notified, we can just QueryInterface that
to an nsISecurityEventSink and call OnSecurityChange directly instead.
Differential Revision: https://phabricator.services.mozilla.com/D6951
--HG--
rename : browser/base/content/test/siteIdentity/browser_tls_handshake_failure.js => browser/base/content/test/siteIdentity/browser_navigation_failures.js
extra : moz-landing-system : lando
I had to move the tooltip to appear above the help icon to make sure that it cause scrollbars to appear on the address form.
Differential Revision: https://phabricator.services.mozilla.com/D6912
--HG--
extra : moz-landing-system : lando
The new permission is added to make it easier to audit the usage of the
API. It is an optional permission, in case we ever decide to introduce
a permission warning for it.
Differential Revision: https://phabricator.services.mozilla.com/D6771
--HG--
extra : moz-landing-system : lando
This allows extensions to include tab/bookmark menu items from other
extensions. Built-in menu items from the browser are *not* added.
Depends on D6623
Differential Revision: https://phabricator.services.mozilla.com/D6624
--HG--
extra : moz-landing-system : lando
If the pref browser.fission.simulate is true, the event dispatcher in ActorManagerChild will not dispatch events to actors that aren't associated with the same window as the event's target.
In addition, when that pref is on, the actors associated with sub-frames will have their content property bound to the correct content window, that might differ from the message manager's window (which is always related to the top level).
Then, in order to write Fission-compatible code, that specific actor will need to be declared with allFrames = true, meaning that it wants to be instantiated for every frame, and not just top-level ones
Differential Revision: https://phabricator.services.mozilla.com/D6358
--HG--
extra : moz-landing-system : lando
This also removes the (afaict, unused) stub implementation from TabParent. The netwerk header
inclusions were necessary because those files included TabParent.h and through it,
nsISecureBrowserUI, but now TabParent.h no longer does that.
Differential Revision: https://phabricator.services.mozilla.com/D6829
--HG--
extra : moz-landing-system : lando
The new method allows extensions to modify menu items in their own
moz-extension:-pages, with the following features:
- All matching extension items are shown in the root menu (instead of
being moved into a submenu), above other menu items, if any.
- The icons for these menu items are customizable.
- Optionally, the default menu items (including those from other
extensions) can be hidden.
Depends on D6621
Differential Revision: https://phabricator.services.mozilla.com/D6622
--HG--
extra : moz-landing-system : lando
This refactor is mainly meant to support bug 1367160, but it also eases
the implementation of bug 1294429, bug 1325758 or bug 1370735 if we ever
decide to fix those bugs.
Previously, the menu was constructed by creating one root menu item
and moving the submenu to the root if there was only one item.
The refactored code constructs the menu items by generating a list of
(potentially more than one) top-level menu items, and moving excess menu
items to a submenu (as before). Besides the ability to support an
arbitrary number of top-level menu items, this new implementation also
makes it easier to insert menu items and optionally separators at
arbitrary locations in the menu.
The refactored code obsoletes some separate code paths for browserAction
and pageAction menus, which improves the maintainability of the code.
There are two user-visible functional changes in this commit:
- Excess action menu items (more than ACTION_MENU_TOP_LEVEL_LIMIT = 6)
are not silently discarded, but shown in a submenu. See updated test.
- menus.onShown/onHidden are now always fired when the action menu is
shown, even if the extension has not created any action menu items.
Differential Revision: https://phabricator.services.mozilla.com/D6621
--HG--
extra : moz-landing-system : lando
Changed the validation function for PageInfo to use a more general validateItemProperties.
This changes the error message being thrown. Changed the respective test cases to accomodate the change.
Differential Revision: https://phabricator.services.mozilla.com/D5831
--HG--
extra : moz-landing-system : lando
Return the document element as the activeElement when there is no body
element, the document is chrome privileged, and the document element
is a XUL element.
MozReview-Commit-ID: JFDLAqOmLTS
Differential Revision: https://phabricator.services.mozilla.com/D6448
--HG--
extra : moz-landing-system : lando
Replace mozilla.widget.use-argb-visuals pref by -moz-gtk-csd-transparent-background media query at browser.css
to draw transparent background. The media query is set by toolkit code and enabled when compatible
window manager is detected.
Differential Revision: https://phabricator.services.mozilla.com/D6658
--HG--
extra : moz-landing-system : lando
My reasoning in https://bugzilla.mozilla.org/show_bug.cgi?id=1484737#c3 was wrong. I assumed that if a result started with a search alias then it had to be a search alias result, but that's clearly not true.
This is such a pain to get right, and all the messy logic in this patch reflects that.
Differential Revision: https://phabricator.services.mozilla.com/D6528
--HG--
extra : moz-landing-system : lando
Summary:
Now that all the "remoting" of this method has been moved to TargetFactory.createTargetForTab,
we should rename this method to what it does now. It mostly call attach requests
of the target actor and its child console actor.
It also "connect" the webextension target actor, but I would like to eventually move that
outside of TabTarget.attach, like makeRemote.
Depends On D4078
Reviewers: yulia!
Tags: #secure-revision
Bug #: 1485676
Differential Revision: https://phabricator.services.mozilla.com/D6161
MozReview-Commit-ID: KmFi1LIUBga
Summary:
Now that all the "remoting" of this method has been moved to TargetFactory.createTargetForTab,
we should rename this method to what it does now. It mostly call attach requests
of the target actor and its child console actor.
It also "connect" the webextension target actor, but I would like to eventually move that
outside of TabTarget.attach, like makeRemote.
Depends On D4078
Reviewers: yulia!
Tags: #secure-revision
Bug #: 1485676
Differential Revision: https://phabricator.services.mozilla.com/D6161
MozReview-Commit-ID: KmFi1LIUBga
The selector should apply to deck elements that do have a selectedIndex
attribute but it's not 0.
Differential Revision: https://phabricator.services.mozilla.com/D6567
--HG--
extra : moz-landing-system : lando
Saving and filling the countries via Form Autofill will still be limited to certain countries
but this allows the storage to be useful for Web Payments in other countries.
Differential Revision: https://phabricator.services.mozilla.com/D5194
--HG--
extra : amend_source : c6810478b747cf51aaaafa73f83682cb23711231
This change prevents javascript:-URLs from being passed at the command
line. This restriction was already applied to every URL but the first.
Even the first URL did not result in any visible effect when Firefox is
started. Yet somehow the PGO profiler script managed to rely on it.
This commit ensures that "javascript:" URLs are not activated regardless of
position in the command line, and switches to a data:-URL for the PGO script to
achieve the (previously) desired effect of quitting the browser on startup.
Depends on D4929
Differential Revision: https://phabricator.services.mozilla.com/D5958
--HG--
extra : moz-landing-system : lando
Other (internal API) changes besides extension API changes:
- This also introduces support for opening a window with multiple tabs
in a non-default container tab.
- This also adds LOAD_FLAGS_DISALLOW_INHERIT_PRINCIPAL to the
gBrowser.loadTabs call, unless allowInheritPrincipal is set.
For backwards-compatibility, this flag defaults to true.
Depends on D4928
Differential Revision: https://phabricator.services.mozilla.com/D4929
--HG--
extra : moz-landing-system : lando
* Re-use about:preferences tab and just open sub-dialog for each test
* Add some instrumentation to provide some insight into any test timeouts.
* Re-enable for ccov
Differential Revision: https://phabricator.services.mozilla.com/D5485
--HG--
extra : moz-landing-system : lando
To use this (Windows/Linux instructions), press Ctrl+L to give focus to the location bar. Shift+Tab to move focus backwards to the tab.
Ctrl+Left/Ctrl+Right to change which tab is focused
Ctrl+Space to add/remove a tab from the multiselection
Moving a tab has been changed from Ctrl+Left/Ctrl+Right to Ctrl+Shift+Left/Ctrl+Shift+Right, respectively.
Differential Revision: https://phabricator.services.mozilla.com/D4670
--HG--
extra : moz-landing-system : lando
This is a preparation to support cookieStoreId in the windows.create.
Depends on D4920
Differential Revision: https://phabricator.services.mozilla.com/D4928
--HG--
extra : moz-landing-system : lando
The width is now defined on the entire list instead of the inner elements, similarly to other Photon panels like the main menu. This is a prerequisite for preventing layout issues while removing the "download" binding.
Differential Revision: https://phabricator.services.mozilla.com/D6284
--HG--
extra : rebase_source : 1d77af762d2ff30f534d9a82dd7f27d61cd73572
Summary:
Now that all the "remoting" of this method has been moved to TargetFactory.createTargetForTab,
we should rename this method to what it does now. It mostly call attach requests
of the target actor and its child console actor.
It also "connect" the webextension target actor, but I would like to eventually move that
outside of TabTarget.attach, like makeRemote.
Depends On D4078
Reviewers: yulia!
Tags: #secure-revision
Bug #: 1485676
Differential Revision: https://phabricator.services.mozilla.com/D6161
MozReview-Commit-ID: KmFi1LIUBga
* Blur before focus to reset timer for filtering <select>
* Wait for field to get focus before sending keys to it.
* Compare unpadded strings
Differential Revision: https://phabricator.services.mozilla.com/D6338
The site identity security indicator machinery treats connections where the TLS
handshake failed as insecure (also referred to as "unknown identity"). Before
bug 1468222, such cases were easily detectable as the SSLStatus field of the
relevant nsITransportSecurityInfo would be null. When we merged nsISSLStatus
into nsITransportSecurityInfo, we didn't take this differentiation into account.
This patch brings back the prior behavior by checking if the securityInfo's
securityState indicates that the handshake failed (i.e. it is
STATE_IS_INSECURE).
Differential Revision: https://phabricator.services.mozilla.com/D6316
--HG--
extra : moz-landing-system : lando
There are cases when we asynchronously handle tab events, and therefore try to
attach an ID to a tab after it's already been removed. In practice, this will
typically only affect tests, since it requires the tab to be removed
immediately after a related event is dispatched, but in those cases, it causes
a leak, since there's no way for the tab to be removed after the map after
that point.
We should ideally get rid of those weird async hacks, but either way, we
should ensure that we never add a tab to the map after it's already been
removed. This patch does that.
Differential Revision: https://phabricator.services.mozilla.com/D6435
--HG--
extra : rebase_source : 9b6bea993f6261596f2c6283d6569632d395d68b
Function names in gcda are just here to check that they match the ones we've in gcno: this is an extra check since it already exists a function checksum for this purpose.
So the size of gcda and the time to generate them will decrease.
Differential Revision: https://phabricator.services.mozilla.com/D6413
--HG--
extra : moz-landing-system : lando
The validity of the cc-number field is only updated to a failure state after the 'change' event in the EditCreditCard class, but there was no code within basic-card-form.js to update the Save button enabled state after the 'change' event had been handled by EditCreditCard.
Differential Revision: https://phabricator.services.mozilla.com/D6282
--HG--
extra : moz-landing-system : lando
We need this because the AsyncTabSwitcher is responsible for switching between the
remote browser tab panels asynchronously. Asynchronous mode for the tabpanels
binding delegates the responsibility of actually changing the index of the
underlying deck to someone else (AsyncTabSwitcher, in this case).
Differential Revision: https://phabricator.services.mozilla.com/D6184
--HG--
extra : moz-landing-system : lando
`urlbar.search` needs to simulate the user's typing. Fire an input event, as we do elsewhere to simulate it.
Differential Revision: https://phabricator.services.mozilla.com/D6215
--HG--
extra : moz-landing-system : lando
`webExtension` in bootstrap.js's `start` and `stop` functions is an `EmbeddedExtension`, and `startupReason` and the `reason` argument passed to `stop` is a numeric reason. `EmbeddedExtension.startup` and `shutdown` take string reasons, not numeric reasons, contrary to their jsdocs.
Also, we can use `AddonManagerPrivate` instead of hardcoding `APP_STARTUP` and `APP_SHUTDOWN`.
This patch fixes bug 1483033.
Differential Revision: https://phabricator.services.mozilla.com/D6114
--HG--
extra : moz-landing-system : lando
* We get the shared colours (including hover) and dropmarker.
* Makes it harder to regress the clickable area of the <rich-select> since the problem will be visible.
* Hides the text for the closed state of the <select> so the <rich-option> text can be presented.
Differential Revision: https://phabricator.services.mozilla.com/D6330
--HG--
extra : moz-landing-system : lando
The site identity security indicator machinery treats connections where the TLS
handshake failed as insecure (also referred to as "unknown identity"). Before
bug 1468222, such cases were easily detectable as the SSLStatus field of the
relevant nsITransportSecurityInfo would be null. When we merged nsISSLStatus
into nsITransportSecurityInfo, we didn't take this differentiation into account.
This patch brings back the prior behavior by checking if the securityInfo's
securityState indicates that the handshake failed (i.e. it is
STATE_IS_INSECURE).
Differential Revision: https://phabricator.services.mozilla.com/D6316
--HG--
extra : moz-landing-system : lando