Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2341)

Unified Diff: third_party/WebKit/Source/modules/canvas2d/CanvasRenderingContext2DTest.cpp

Issue 2101823002: Revert of Make 2D canvas disable gpu acceleration when getImageData is called (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/modules/canvas2d/CanvasRenderingContext2DTest.cpp
diff --git a/third_party/WebKit/Source/modules/canvas2d/CanvasRenderingContext2DTest.cpp b/third_party/WebKit/Source/modules/canvas2d/CanvasRenderingContext2DTest.cpp
index 24f76f640ebde0215221ce78199773f487104ff3..a33dbafaf9f050c81c5701da5a5fabc42039a45d 100644
--- a/third_party/WebKit/Source/modules/canvas2d/CanvasRenderingContext2DTest.cpp
+++ b/third_party/WebKit/Source/modules/canvas2d/CanvasRenderingContext2DTest.cpp
@@ -16,13 +16,10 @@
#include "modules/canvas2d/CanvasGradient.h"
#include "modules/canvas2d/CanvasPattern.h"
#include "modules/webgl/WebGLRenderingContext.h"
-#include "platform/graphics/Canvas2DImageBufferSurface.h"
#include "platform/graphics/ExpensiveCanvasHeuristicParameters.h"
#include "platform/graphics/RecordingImageBufferSurface.h"
#include "platform/graphics/StaticBitmapImage.h"
#include "platform/graphics/UnacceleratedImageBufferSurface.h"
-#include "platform/graphics/test/FakeGLES2Interface.h"
-#include "platform/graphics/test/FakeWebGraphicsContext3DProvider.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "third_party/skia/include/core/SkSurface.h"
@@ -91,7 +88,6 @@
void createContext(OpacityMode);
void TearDown();
void unrefCanvas();
- PassRefPtr<Canvas2DLayerBridge> makeBridge(std::unique_ptr<FakeWebGraphicsContext3DProvider>, const IntSize&, Canvas2DLayerBridge::AccelerationMode);
private:
std::unique_ptr<DummyPageHolder> m_dummyPageHolder;
@@ -180,11 +176,6 @@
{
ThreadHeap::collectGarbage(BlinkGC::NoHeapPointersOnStack, BlinkGC::GCWithSweep, BlinkGC::ForcedGC);
replaceMemoryCacheForTesting(m_globalMemoryCache.release());
-}
-
-PassRefPtr<Canvas2DLayerBridge> CanvasRenderingContext2DTest::makeBridge(std::unique_ptr<FakeWebGraphicsContext3DProvider> provider, const IntSize& size, Canvas2DLayerBridge::AccelerationMode accelerationMode)
-{
- return adoptRef(new Canvas2DLayerBridge(std::move(provider), size, 0, NonOpaque, accelerationMode));
}
//============================================================================
@@ -760,33 +751,4 @@
// Passes by not crashing later during teardown
}
-TEST_F(CanvasRenderingContext2DTest, GetImageDataDisablesAcceleration)
-{
- bool savedFixedRenderingMode = RuntimeEnabledFeatures::canvas2dFixedRenderingModeEnabled();
- RuntimeEnabledFeatures::setCanvas2dFixedRenderingModeEnabled(false);
-
- createContext(NonOpaque);
- FakeGLES2Interface gl;
- std::unique_ptr<FakeWebGraphicsContext3DProvider> contextProvider(new FakeWebGraphicsContext3DProvider(&gl));
- IntSize size(300, 300);
- RefPtr<Canvas2DLayerBridge> bridge = makeBridge(std::move(contextProvider), size, Canvas2DLayerBridge::EnableAcceleration);
- std::unique_ptr<Canvas2DImageBufferSurface> surface(new Canvas2DImageBufferSurface(bridge, size));
- canvasElement().createImageBufferUsingSurfaceForTesting(std::move(surface));
-
- EXPECT_TRUE(bridge->isAccelerated());
- EXPECT_EQ(1u, getGlobalAcceleratedImageBufferCount());
- EXPECT_EQ(720000, getGlobalGPUMemoryUsage());
-
- TrackExceptionState exceptionState;
- context2d()->getImageData(0, 0, 1, 1, exceptionState);
-
- EXPECT_FALSE(exceptionState.hadException());
- EXPECT_FALSE(bridge->isAccelerated());
- EXPECT_EQ(0u, getGlobalAcceleratedImageBufferCount());
- EXPECT_EQ(0, getGlobalGPUMemoryUsage());
-
- // Restore global state to prevent side-effects on other tests
- RuntimeEnabledFeatures::setCanvas2dFixedRenderingModeEnabled(savedFixedRenderingMode);
-}
-
} // namespace blink

Powered by Google App Engine
This is Rietveld 408576698