From 56d9003017a94e7619f98e76b04929115514d08c Mon Sep 17 00:00:00 2001 From: Moonchild Date: Tue, 11 Jan 2022 15:34:17 +0000 Subject: Issue #953 - Neuter the user-facing controls for e10s This should prevent people using a massive footgun that would blow off their entire legs. Requires appropriate FE changes. --- gfx/config/gfxVars.h | 1 - gfx/layers/ipc/CompositorBridgeParent.cpp | 10 -------- gfx/thebes/gfxPlatform.cpp | 41 ++++++------------------------- 3 files changed, 7 insertions(+), 45 deletions(-) (limited to 'gfx') diff --git a/gfx/config/gfxVars.h b/gfx/config/gfxVars.h index fd4864dd56..6ac8c21326 100644 --- a/gfx/config/gfxVars.h +++ b/gfx/config/gfxVars.h @@ -22,7 +22,6 @@ class gfxVarReceiver; // Generator for graphics vars. #define GFX_VARS_LIST(_) \ /* C++ Name, Data Type, Default Value */ \ - _(BrowserTabsRemoteAutostart, bool, false) \ _(ContentBackend, BackendType, BackendType::NONE) \ _(TileSize, IntSize, IntSize(-1, -1)) \ _(UseXRender, bool, false) \ diff --git a/gfx/layers/ipc/CompositorBridgeParent.cpp b/gfx/layers/ipc/CompositorBridgeParent.cpp index e650b2dcf1..d08176b6a5 100644 --- a/gfx/layers/ipc/CompositorBridgeParent.cpp +++ b/gfx/layers/ipc/CompositorBridgeParent.cpp @@ -1183,16 +1183,6 @@ CompositorBridgeParent::CompositeToTarget(DrawTarget* aTarget, const gfx::IntRec &hasRemoteContent, &updatePluginsFlag); -#if defined(XP_WIN) || defined(MOZ_WIDGET_GTK) - // We do not support plugins in local content. When switching tabs - // to local pages, hide every plugin associated with the window. - if (!hasRemoteContent && gfxVars::BrowserTabsRemoteAutostart() && - mCachedPluginData.Length()) { - Unused << SendHideAllPlugins(GetWidget()->GetWidgetKey()); - mCachedPluginData.Clear(); - } -#endif - if (aTarget) { mLayerManager->BeginTransactionWithDrawTarget(aTarget, *aRect); } else { diff --git a/gfx/thebes/gfxPlatform.cpp b/gfx/thebes/gfxPlatform.cpp index 28282a90d2..21e15bf06f 100644 --- a/gfx/thebes/gfxPlatform.cpp +++ b/gfx/thebes/gfxPlatform.cpp @@ -519,12 +519,7 @@ static uint32_t GetSkiaGlyphCacheSize() // Chromium uses 20mb and skia default uses 2mb. // We don't need to change the font cache count since we usually // cache thrash due to asian character sets in talos. - // Only increase memory on the content proces uint32_t cacheSize = 10 * 1024 * 1024; - if (mozilla::BrowserTabsRemoteAutostart()) { - return XRE_IsContentProcess() ? cacheSize : kDefaultGlyphCacheSize; - } - return cacheSize; } #endif @@ -2023,7 +2018,6 @@ gfxPlatform::InitAcceleration() gfxPrefs::GetSingleton(); if (XRE_IsParentProcess()) { - gfxVars::SetBrowserTabsRemoteAutostart(BrowserTabsRemoteAutostart()); gfxVars::SetOffscreenFormat(GetOffscreenFormat()); gfxVars::SetRequiresAcceleratedGLContextForCompositorOGL( RequiresAcceleratedGLContextForCompositorOGL()); @@ -2075,30 +2069,11 @@ gfxPlatform::InitGPUProcessPrefs() gpuProc.UserForceEnable("User force-enabled via pref"); } - // We require E10S - otherwise, there is very little benefit to the GPU - // process, since the UI process must still use acceleration for - // performance. - if (!BrowserTabsRemoteAutostart()) { - gpuProc.ForceDisable( - FeatureStatus::Unavailable, - "Multi-process mode is not enabled", - NS_LITERAL_CSTRING("FEATURE_FAILURE_NO_E10S")); - return; - } - if (InSafeMode()) { - gpuProc.ForceDisable( - FeatureStatus::Blocked, - "Safe-mode is enabled", - NS_LITERAL_CSTRING("FEATURE_FAILURE_SAFE_MODE")); - return; - } - if (gfxPrefs::LayerScopeEnabled()) { - gpuProc.ForceDisable( - FeatureStatus::Blocked, - "LayerScope does not work in the GPU process", - NS_LITERAL_CSTRING("FEATURE_FAILURE_LAYERSCOPE")); - return; - } + gpuProc.ForceDisable( + FeatureStatus::Unavailable, + "GPU processes are not supported", + NS_LITERAL_CSTRING("FEATURE_FAILURE_NO_E10S")); + return; } void @@ -2203,9 +2178,7 @@ gfxPlatform::UsesOffMainThreadCompositing() if (firstTime) { MOZ_ASSERT(sLayersAccelerationPrefsInitialized); - result = - gfxVars::BrowserTabsRemoteAutostart() || - !gfxPrefs::LayersOffMainThreadCompositionForceDisabled(); + result = !gfxPrefs::LayersOffMainThreadCompositionForceDisabled(); #if defined(MOZ_WIDGET_GTK) // Linux users who chose OpenGL are being grandfathered in to OMTC result |= gfxPrefs::LayersAccelerationForceEnabledDoNotUseDirectly(); @@ -2302,7 +2275,7 @@ gfxPlatform::AsyncPanZoomEnabled() #if !defined(MOZ_WIDGET_UIKIT) // For XUL applications (everything but Firefox on Android) we only want // to use APZ when E10S is enabled or when the user explicitly enable it. - if (BrowserTabsRemoteAutostart() || gfxPrefs::APZDesktopEnabled()) { + if (gfxPrefs::APZDesktopEnabled()) { return gfxPrefs::AsyncPanZoomEnabledDoNotUseDirectly(); } else { return false; -- cgit v1.2.3