The previous patch in this series creates a new directory service entry
specifically for obtaining the content process temp directory.
This patch converts everything else to reference that entry. It also sets
appropriate environment variables in the content processes so that system
APIs automatically pick up the directory. This is necessary for the crash
reporter to be able to call those APIs in exception handling contexts.
MozReview-Commit-ID: DF6aNKrWnWp
--HG--
extra : rebase_source : 3cc914f5d369dbc70f03fa4cb68a7eab0cc1be59
mContentParent is really just to be used while handling a synchronous
ContentParent::RecvLoadPlugin call when async plugin init turned on.
In any other context, using it will be unsafe.
This patch adds comments and assertions to ensure that this value isn't set
otherwise, and converts the one use of mContentParent outside of async plugin
init to use an alternative mechanism for identifying the content process.
MozReview-Commit-ID: Esgt1kj0MCt
--HG--
extra : rebase_source : 166b913b401582c6948e4b61efc102dc1b9c8d2f
Several code paths try to ask the principal if it's in a browser element, but
the principal now only knows about *isolated* browser elements. All such code
paths are currently unused on desktop. The frame loader now asserts that
isolation remains enabled for cases where apps are used.
MozReview-Commit-ID: 775DZecc35t
This change renames TabContext::IsBrowserElement to IsIsolatedMozBrowserElement.
Other methods that pass these values around also have name changes.
Adds TabContext::IsMozBrowserElement which is set by the frame loader for all
browser frames. This is in contrast to its previous implementation, which has
since been renamed IsIsolatedMozBrowserElement, since it checks isolated state
in OriginAttributes.
TabContext methods related to browser elements (and their callers) are updated
to use IsIsolatedMozBrowserElement when check isolation / origins and
IsMozBrowserElement when checking frame types.
MozReview-Commit-ID: DDMZTkSn5yd
Renames nsDocShell isBrowser* attributes to add a "Moz" prefix for clarity.
Adds nsDocShell::GetIsIsolatedMozBrowserElement, which parallels
GetIsInIsolatedMozBrowserElement, but only checks the immediate docshell.
Adds nsDocShell::SetIsInIsolatedMozBrowserElement for the frame loader and tab
child to set the isolation state.
nsDocShell methods related to mozbrowser elements (and their callers) are
updated to use GetIs(In)?IsolatedMozBrowserElement when checking isolation /
origins and GetIsMozBrowserElement when checking frame types.
MozReview-Commit-ID: 6pGD5fF47ZN
Renames existing nsFrameLoader::OwnerIsBrowser* methods to add "Moz" prefix for
clarity.
Adds nsFrameLoader::OwnerIsIsolatedMozBrowserFrame which checks the noisolation
attribute of mozbrowser frames, if present.
This is used to set isolation in nsFrameLoader::GetNewTabContext only when true.
MozReview-Commit-ID: Dz02xBoKh1P
This change renames nsILoadContext::GetIsInBrowserElement to
GetIsInIsolatedMozBrowserElement. Other methods that pass these values around
also have name changes.
Tokens such as "isInBrowserElement" have previously been serialized into cache
keys, used as DB column names, stored in app registries, etc. No changes are
made to any serialization formats. Only runtime method and variable names are
updated.
No behavior changes are made in this patch, so some renamed methods may have
nonsensical implementations. These are corrected in subsequent patches
focused on behavior.
MozReview-Commit-ID: CUttXANQjSv
This change renames OriginAttributes.mInBrowser to mInIsolatedMozBrowser and
nsIPrincipal::GetIsInBrowserElement to GetIsInIsolatedMozBrowserElement. Other
methods that pass these values around also have name changes.
Tokens such as "inBrowser" have previously been serialized into cache keys, used
as DB column names, stored in app registries, etc. No changes are made to any
serialization formats. Only runtime method and variable names are updated.
No behavior changes are made in this patch, so some renamed methods may have
nonsensical implementations. These are corrected in subsequent patches
focused on behavior.
MozReview-Commit-ID: 66HfMlsXFLs
Modify the Mac sandbox to allow temporary files to be created in a
parent-specified subdirectory of NS_OS_TEMP_DIR. This is similar to the
Windows approach. The parent provides a UUID in a preference which is
used by the content process to form the subdirectory name.
MozReview-Commit-ID: 6BONpfZz8ZI
--HG--
extra : rebase_source : ad18e091918356a1a40c13f1453972b4512ad476
This patch convers the APZ:TransformEnd notification from a MessageManager message
to an observer notification so that it is more general and works on other platforms.
MozReview-Commit-ID: 8SSir828Ch7
This patch convers the APZ:TransformEnd notification from a MessageManager message
to an observer notification so that it is more general and works on other platforms.
MozReview-Commit-ID: 8SSir828Ch7