Commit d5d349f0 authored by enne's avatar enne Committed by Commit bot

Revert of mac: ensure ui::Compositor exists for visible RWHVs (patchset #12...

Revert of mac: ensure ui::Compositor exists for visible RWHVs (patchset #12 id:220001 of https://codereview.chromium.org/2005013002/ )

Reason for revert:
Causes blank tabs, tab switching perf tests

BUG=617497,617427

Original issue's description:
> mac: ensure ui::Compositor exists for visible RWHVs
>
> RenderWidgetHostViewMac is careful about creating ui::Compositor and so
> currently only does this in Show and SwapCompositorFrame.  However, if
> it the RenderWidgetHostView is created while the RenderWidgetHost is
> visible, then Show will early out and never create a ui::Compositor.
>
> This causes problems with begin frame scheduling, which wants to have
> the Display (which is created as part of creating the ui::Compositor's
> output surface currently) own the real begin frame source that drives
> everything.  In that world, if no ui::Compositor exists, no frames ever
> are sent or swapped.  So, the ui::Compositor needs to be created first.
>
> Also, if the ui::Compositor is correctly created during Show (or the
> constructor), then there's no need to ensure that it exists during
> swap compositor frame, and so that can be safely removed.
>
> R=asvitkine@chromium.org,ccameron@chromium.org
>
> Committed: https://crrev.com/9af6c23da7070f9423d5cf25856ed27f7d5d8e5e
> Cr-Commit-Position: refs/heads/master@{#397755}

TBR=phajdan.jr@chromium.org,asvitkine@chromium.org,ccameron@chromium.org,danakj@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.

Review-Url: https://codereview.chromium.org/2040013002
Cr-Commit-Position: refs/heads/master@{#398144}
parent 3885ecfd
...@@ -600,9 +600,6 @@ RenderWidgetHostViewMac::RenderWidgetHostViewMac(RenderWidgetHost* widget, ...@@ -600,9 +600,6 @@ RenderWidgetHostViewMac::RenderWidgetHostViewMac(RenderWidgetHost* widget,
->GetInputEventRouter() ->GetInputEventRouter()
->AddSurfaceIdNamespaceOwner(GetSurfaceIdNamespace(), this); ->AddSurfaceIdNamespaceOwner(GetSurfaceIdNamespace(), this);
} }
if (!render_widget_host_->is_hidden())
EnsureBrowserCompositorView();
} }
RenderWidgetHostViewMac::~RenderWidgetHostViewMac() { RenderWidgetHostViewMac::~RenderWidgetHostViewMac() {
...@@ -1500,7 +1497,8 @@ void RenderWidgetHostViewMac::OnSwapCompositorFrame( ...@@ -1500,7 +1497,8 @@ void RenderWidgetHostViewMac::OnSwapCompositorFrame(
gfx::Size dip_size = gfx::ConvertSizeToDIP(scale_factor, pixel_size); gfx::Size dip_size = gfx::ConvertSizeToDIP(scale_factor, pixel_size);
root_layer_->SetBounds(gfx::Rect(dip_size)); root_layer_->SetBounds(gfx::Rect(dip_size));
if (browser_compositor_ && browser_compositor_->compositor()) { if (!render_widget_host_->is_hidden()) {
EnsureBrowserCompositorView();
browser_compositor_->compositor()->SetScaleAndSize( browser_compositor_->compositor()->SetScaleAndSize(
scale_factor, pixel_size); scale_factor, pixel_size);
} }
......
...@@ -20,7 +20,6 @@ ...@@ -20,7 +20,6 @@
#include "testing/gmock/include/gmock/gmock.h" #include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h" #include "testing/gtest/include/gtest/gtest.h"
#include "testing/platform_test.h" #include "testing/platform_test.h"
#include "ui/accelerated_widget_mac/window_resize_helper_mac.h"
#include "ui/base/layout.h" #include "ui/base/layout.h"
using content::RenderWidgetHostViewMac; using content::RenderWidgetHostViewMac;
...@@ -134,10 +133,6 @@ TEST_F(RenderWidgetHostViewMacEditCommandHelperTest, ...@@ -134,10 +133,6 @@ TEST_F(RenderWidgetHostViewMacEditCommandHelperTest,
base::mac::ScopedNSAutoreleasePool pool; base::mac::ScopedNSAutoreleasePool pool;
base::MessageLoop message_loop;
ui::WindowResizeHelperMac::Get()->Init(
base::MessageLoop::current()->task_runner());
// Owned by its |cocoa_view()|, i.e. |rwhv_cocoa|. // Owned by its |cocoa_view()|, i.e. |rwhv_cocoa|.
RenderWidgetHostViewMac* rwhv_mac = new RenderWidgetHostViewMac( RenderWidgetHostViewMac* rwhv_mac = new RenderWidgetHostViewMac(
render_widget, false); render_widget, false);
...@@ -162,10 +157,11 @@ TEST_F(RenderWidgetHostViewMacEditCommandHelperTest, ...@@ -162,10 +157,11 @@ TEST_F(RenderWidgetHostViewMacEditCommandHelperTest,
rwhv_cocoa.reset(); rwhv_cocoa.reset();
pool.Recycle(); pool.Recycle();
{
// The |render_widget|'s process needs to be deleted within |message_loop|. // The |render_widget|'s process needs to be deleted within |message_loop|.
base::MessageLoop message_loop;
delete render_widget; delete render_widget;
}
ui::WindowResizeHelperMac::Get()->ShutdownForTests();
} }
// Test RenderWidgetHostViewMacEditCommandHelper::AddEditingSelectorsToClass // Test RenderWidgetHostViewMacEditCommandHelper::AddEditingSelectorsToClass
......
...@@ -983,11 +983,6 @@ ...@@ -983,11 +983,6 @@
'../third_party/libvpx/libvpx.gyp:libvpx', '../third_party/libvpx/libvpx.gyp:libvpx',
], ],
}], }],
['OS=="mac"', {
'dependencies': [
'../ui/accelerated_widget_mac/accelerated_widget_mac.gyp:accelerated_widget_mac',
],
}],
['OS=="android"', { ['OS=="android"', {
'dependencies': [ 'dependencies': [
'../ui/android/ui_android.gyp:ui_android', '../ui/android/ui_android.gyp:ui_android',
......
...@@ -37,10 +37,6 @@ ...@@ -37,10 +37,6 @@
#include "ui/wm/core/default_activation_client.h" #include "ui/wm/core/default_activation_client.h"
#endif #endif
#if defined(OS_MACOSX)
#include "ui/accelerated_widget_mac/window_resize_helper_mac.h"
#endif
namespace content { namespace content {
// RenderFrameHostTester ------------------------------------------------------ // RenderFrameHostTester ------------------------------------------------------
...@@ -215,11 +211,6 @@ void RenderViewHostTestHarness::SetUp() { ...@@ -215,11 +211,6 @@ void RenderViewHostTestHarness::SetUp() {
if (IsBrowserSideNavigationEnabled()) if (IsBrowserSideNavigationEnabled())
BrowserSideNavigationSetUp(); BrowserSideNavigationSetUp();
#if defined(OS_MACOSX)
ui::WindowResizeHelperMac::Get()->Init(
base::MessageLoop::current()->task_runner());
#endif // OS_MACOSX
} }
void RenderViewHostTestHarness::TearDown() { void RenderViewHostTestHarness::TearDown() {
...@@ -235,10 +226,6 @@ void RenderViewHostTestHarness::TearDown() { ...@@ -235,10 +226,6 @@ void RenderViewHostTestHarness::TearDown() {
// before we destroy the browser context. // before we destroy the browser context.
base::RunLoop().RunUntilIdle(); base::RunLoop().RunUntilIdle();
#if defined(OS_MACOSX)
ui::WindowResizeHelperMac::Get()->ShutdownForTests();
#endif // OS_MACOSX
#if defined(OS_WIN) #if defined(OS_WIN)
ole_initializer_.reset(); ole_initializer_.reset();
#endif #endif
......
...@@ -192,10 +192,6 @@ source_set("test_support") { ...@@ -192,10 +192,6 @@ source_set("test_support") {
if (v8_use_external_startup_data) { if (v8_use_external_startup_data) {
deps += [ "//gin:gin" ] deps += [ "//gin:gin" ]
} }
if (is_mac) {
deps += [ "//ui/accelerated_widget_mac" ]
}
} }
# browsertest_support can be used by targets that run content_shell based # browsertest_support can be used by targets that run content_shell based
...@@ -793,7 +789,6 @@ test("content_unittests") { ...@@ -793,7 +789,6 @@ test("content_unittests") {
deps += [ deps += [
"//third_party/mozilla", "//third_party/mozilla",
"//third_party/ocmock", "//third_party/ocmock",
"//ui/accelerated_widget_mac",
] ]
} }
if (is_chromeos) { if (is_chromeos) {
......
...@@ -300,10 +300,6 @@ void WindowResizeHelperMac::Init( ...@@ -300,10 +300,6 @@ void WindowResizeHelperMac::Init(
base::Bind(&WindowResizeHelperMac::EventTimedWait), target_task_runner); base::Bind(&WindowResizeHelperMac::EventTimedWait), target_task_runner);
} }
void WindowResizeHelperMac::ShutdownForTests() {
task_runner_ = nullptr;
}
bool WindowResizeHelperMac::WaitForSingleTaskToRun( bool WindowResizeHelperMac::WaitForSingleTaskToRun(
const base::TimeDelta& max_delay) { const base::TimeDelta& max_delay) {
PumpableTaskRunner* pumpable_task_runner = PumpableTaskRunner* pumpable_task_runner =
......
...@@ -53,10 +53,6 @@ class ACCELERATED_WIDGET_MAC_EXPORT WindowResizeHelperMac { ...@@ -53,10 +53,6 @@ class ACCELERATED_WIDGET_MAC_EXPORT WindowResizeHelperMac {
void Init( void Init(
const scoped_refptr<base::SingleThreadTaskRunner>& target_task_runner); const scoped_refptr<base::SingleThreadTaskRunner>& target_task_runner);
// Because this class is global, many tests may want to do this setup
// repeatedly, so need some way to uninitialize as well.
void ShutdownForTests();
scoped_refptr<base::SingleThreadTaskRunner> task_runner() const; scoped_refptr<base::SingleThreadTaskRunner> task_runner() const;
// UI THREAD ONLY ----------------------------------------------------------- // UI THREAD ONLY -----------------------------------------------------------
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment