Create ChromeBrowsingContext and move parent process specific parts
from BrowsingContext there. After that make sure that all
BrowsingContexts created in the parent process is actually
ChromeBrowsingContexts and all BrowsingContexts in the child processes
are BrowsingContexts.
Differential Revision: https://phabricator.services.mozilla.com/D5419
--HG--
extra : moz-landing-system : lando
nsISHEntry's attributes and methods are thoroughly mixed. This patch separates
them, making it easier to understand.
--HG--
extra : rebase_source : 8a7822b5289fbb67e74dfa3cb42aa31206ee0e16
Both nsISHEntry.URI and nsISHEntry isSubFrame are readonly, but also have a
setter. This is silly, so this patch removes the setter and makes them
modifiable.
The patch also renames nsISHEntry.setAsHistoryLoad() as setLoadTypeAsHistory(),
which makes it clearer that it modifies the loadType attribute.
--HG--
extra : rebase_source : 7772e2c1d90d4fd9f462f20c777d6eacc65801c5
By marking some C++-only nsISHistory methods as [noscript] or [noscript,
notxpcom].
--HG--
extra : rebase_source : 1216e755a227fd13f01057afd71ea082a2a79ad7
The patch also removes some NS_ENSURE_ARG_POINTER checks from these attributes'
getters. Most of these getters already lack such checks, and as long as the
infallible getters are used a non-null pointer is guaranteed. In the worst case
we'll safely null-crash anyway.
--HG--
extra : rebase_source : 87d4f7fccfa7ffb605c514cf8c2abd270a13b24a
- Move VIEWER_WINDOW from nsISHistory to nsSHistory.
- Mark some C++-only nsISHistory methods as [noscript, notxpcom].
- Add gotoIndex() to nsISHistory so that LegacySHistoryImpl() can be removed.
--HG--
extra : rebase_source : c33081d527af6f9697fad095d24824fc4d451f4d
nsISHistoryListener can cancel several operations, but the functionality is
only ever used for OnHistoryReload(). So this patch removes it for the other
operations.
--HG--
extra : rebase_source : 433422e9160f7d645570baaaff4779c4bcc3ec04
Add a new interface nsIOSPermissionRequest for querying the
staus of access permissions for audio/video media capture and
requesting access to audio/video capture devices. Provides an
implementation for macOS 10.14 and a default implementation
(nsOSPermissionRequestBase) for earlier macOS versions and other
platforms. The default implementation always returns status
indicating access is allowed.
Differential Revision: https://phabricator.services.mozilla.com/D4601
--HG--
extra : moz-landing-system : lando
This patch:
- removes GetTransactionAtIndex(), because getTransactionAtIndex() can be used
instead;
- renames a lot of things;
- updates some comments.
--HG--
extra : rebase_source : 845a1c1d5fe7f84eaa03db39a344d98fd5784afd
nsISHEntry.index is readonly, but if you pass `true` as getEntryAtIndex()'s
second argument, nsISHEntry.index will be modified. This is pretty gross.
This patch changes `index` so it's not readonly (because it's not!) and removes
getEntryAtIndex()'s second argument.
--HG--
extra : rebase_source : c519d77fcc1c3bda2f260b5888ce9cd0f6cfdab5
Because it's a wafer-thin wrapper around nsISHEntry that just complicates
things.
This patch leaves behind a combination of "entry" and "transaction"
terminology. I'll fix that in a subsequent patch.
--HG--
extra : rebase_source : ca15187447bf3d93c65ed3980ead5bca958471be
Specifically:
- Check the nsresult consistently, but don't check (unnecessarily) for null on
success.
- In AddEntry(), move GetTransactionAtIndex() before all state-changing
operations, so we don't end up with partial state updates upon failure.
- Use early returns to reduce indenting.
--HG--
extra : rebase_source : 17815f6813f024fae1cf4ec3cf1b7985ab7a2ff2
In practice it's always non-null, and only half the places that deal with it
have null handling code. So this simplifies things.
--HG--
extra : rebase_source : 250b286b6b2c10aeb0c4486ebe13b1e071bf6c8a
It was used to protect against changes in mIndex by history listeners, but the
new code structure doesn't need it, because we want to use mIndex afterwards.
--HG--
extra : rebase_source : 74f0cc7f696b101b8e9d699790f2f2c141c5f51b
nsSHistory currently implements nsIWebNavigation, but only three of the methods
are actually used, and the rest call MOZ_CRASH. This patch removes the
inheritance and changes the implementations of those three methods (Reload(),
GetCurrentURI(), and GotoIndex()) to pure C++.
There is one test, bug662200_window.xul, that calls Reload() from JS, which is
no longer possible. Fortunately, nsSHistory::ReloadCurrentEntry() -- which *is*
available from JS -- is similar enough to Reload(0) that it can be used
instead.
(The only difference between Reload(0) and ReloadCurrentEntry() is that the
former triggers the `OnHistoryReload` notification and the latter triggers
`OnHistoryGotoIndex`, which doesn't matter for this test.)
--HG--
extra : rebase_source : 69dba04f14b1438f50f597f3d16b77225795f8a7
The only ones that are reachable are GotoIndex(), GetCurrentURI(), and
Reload(). This patch makes all the others crash.
Note that the reason that Go{Back,Forward}() are unreachable is because of this
behaviour in ChildHistory::Go():
// XXX(nika): Should we turn Go(-1) and Go(1) to call GoForward and GoBack?
// They technically fire different change events but I couldn't find anyone
// who cares, so I'm inclined not to.
I.e. those functions are now subsumed by GotoIndex().
As for CanGo{Back,Forward}(), a try push plus code inspection confirm that they
are unused.
--HG--
extra : rebase_source : 6509e635478f257be1271b51d352e0a9d81899ec
AccessibleCaretEventHub is an nsISelectionListener of Selection whose type is
"normal". This is added only when nsFrameSelection::Init() is called and
accessible caret is enabled. Additionally, nsFrameSelection::Init() is
always called immediately after creating nsFrameSelection.
Therefore, when AccessibleCaretEventHub is installed to Selection, this is
always second selection listener and won't be installed multiple times. So,
Selection can store pointer of AccessibleCaretEventHub directly only when
it's enabled and the Selection needs to notify it of selection change.
This patch makes Selection stores AccessibleCaretEventHub with RefPtr, then,
makes Selection::NotifySelectionListeners() call its OnSelectionChange()
immediately after AutoCopyListener.
Unfortunately, this patch includes making of MOZ_CAN_RUN_SCRIPT_BOUNDARY and
MOZ_CAN_RUN_SCRIPT a lot since some methods of AccessibleCaretEventHub are
marked as MOZ_CAN_RUN_SCRIPT and including AccessibleCaretEventHub.h into
Selection.h causes compile the compile errors.
Differential Revision: https://phabricator.services.mozilla.com/D4733
--HG--
extra : moz-landing-system : lando
It's unused.
The patch also renames nsIExternalSharingAppService.idl as
nsISharingHandlerApp.idl, because the only thing left in the file is the
declaration of nsISharingHandlerApp.
--HG--
rename : uriloader/exthandler/nsIExternalSharingAppService.idl => uriloader/exthandler/nsISharingHandlerApp.idl
extra : rebase_source : c1375d75f3c824c9fadd4164201a7e78c7227020