Bug 1648157 - Move DisplayMode to BrowsingContext. r=emilio

Differential Revision: https://phabricator.services.mozilla.com/D92484
This commit is contained in:
Agi Sferro
2020-10-09 17:31:59 +00:00
parent 46bc82a0ef
commit f3ed600503
11 changed files with 180 additions and 65 deletions

View File

@@ -375,7 +375,6 @@ nsDocShell::nsDocShell(BrowsingContext* aBrowsingContext,
mAppType(nsIDocShell::APP_TYPE_UNKNOWN),
mLoadType(0),
mFailedLoadType(0),
mDisplayMode(nsIDocShell::DISPLAY_MODE_BROWSER),
mJSRunToCompletionDepth(0),
mTouchEventsOverride(nsIDocShell::TOUCHEVENTS_OVERRIDE_NONE),
mMetaViewportOverride(nsIDocShell::META_VIEWPORT_OVERRIDE_NONE),
@@ -13125,34 +13124,6 @@ nsresult nsIDocShell::SetHTMLEditor(HTMLEditor* aHTMLEditor) {
return docShell->SetHTMLEditorInternal(aHTMLEditor);
}
NS_IMETHODIMP
nsDocShell::GetDisplayMode(DisplayMode* aDisplayMode) {
*aDisplayMode = mDisplayMode;
return NS_OK;
}
NS_IMETHODIMP
nsDocShell::SetDisplayMode(DisplayMode aDisplayMode) {
// We don't have a way to verify this coming from Javascript, so this check
// is still needed.
if (!(aDisplayMode == nsIDocShell::DISPLAY_MODE_BROWSER ||
aDisplayMode == nsIDocShell::DISPLAY_MODE_STANDALONE ||
aDisplayMode == nsIDocShell::DISPLAY_MODE_FULLSCREEN ||
aDisplayMode == nsIDocShell::DISPLAY_MODE_MINIMAL_UI)) {
return NS_ERROR_INVALID_ARG;
}
if (aDisplayMode != mDisplayMode) {
mDisplayMode = aDisplayMode;
RefPtr<nsPresContext> presContext = GetPresContext();
presContext->MediaFeatureValuesChangedAllDocuments(
{MediaFeatureChangeReason::DisplayModeChange});
}
return NS_OK;
}
#define MATRIX_LENGTH 20
NS_IMETHODIMP