|
|
Re-land: Make 2D canvas smarter about chosing whether or not to use GPU acceleration
Original patch: https://codereview.chromium.org/1367683002/
The CL takes advantage of the fact that canvas rendering is deferred
to defer the decision of whether or not a canvas should be
GPU-accelerated. The decision is made based on the conditions
under which a canvas is flushed for the first time. For example,
if the purpose of the first flush is to perform a readback, then
GPU-acceleration will be disabled for the canvas in order to avoid
reading GPU memory into RAM, which is known to be a slow path.
BUG= 265849
TBR=senorblanco@chromium.org, kbr@chromium.org
Committed: https://crrev.com/8046330d6021c156f59a49729ed2308eda912add
Cr-Commit-Position: refs/heads/master@{#350817}
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+380 lines, -165 lines) |
Patch |
 |
M |
third_party/WebKit/Source/core/css/CSSCanvasValue.cpp
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/core/editing/Editor.cpp
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/core/frame/ImageBitmap.h
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/core/frame/ImageBitmap.cpp
|
View
|
|
2 chunks |
+2 lines, -2 lines |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/core/html/HTMLCanvasElement.h
|
View
|
|
3 chunks |
+4 lines, -2 lines |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp
|
View
|
|
8 chunks |
+14 lines, -7 lines |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/core/html/HTMLImageElement.h
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/core/html/HTMLImageElement.cpp
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/core/html/HTMLVideoElement.h
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/core/html/HTMLVideoElement.cpp
|
View
|
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/core/html/canvas/CanvasImageSource.h
|
View
|
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/modules/canvas2d/CanvasRenderingContext2D.cpp
|
View
|
|
4 chunks |
+10 lines, -5 lines |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/modules/canvas2d/CanvasRenderingContext2DTest.cpp
|
View
|
|
2 chunks |
+2 lines, -2 lines |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp
|
View
|
|
14 chunks |
+25 lines, -28 lines |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/platform/graphics/Canvas2DImageBufferSurface.h
|
View
|
|
2 chunks |
+4 lines, -3 lines |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridge.h
|
View
|
|
5 chunks |
+15 lines, -4 lines |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridge.cpp
|
View
|
1
|
21 chunks |
+128 lines, -57 lines |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridgeTest.cpp
|
View
|
|
10 chunks |
+131 lines, -24 lines |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/platform/graphics/GraphicsTypes.h
|
View
|
|
1 chunk |
+5 lines, -0 lines |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/platform/graphics/ImageBuffer.h
|
View
|
|
2 chunks |
+3 lines, -2 lines |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/platform/graphics/ImageBuffer.cpp
|
View
|
|
4 chunks |
+16 lines, -11 lines |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/platform/graphics/ImageBufferSurface.h
|
View
|
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/platform/graphics/ImageBufferSurface.cpp
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/platform/graphics/RecordingImageBufferSurface.h
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/platform/graphics/RecordingImageBufferSurface.cpp
|
View
|
|
1 chunk |
+2 lines, -2 lines |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/platform/graphics/UnacceleratedImageBufferSurface.h
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/platform/graphics/UnacceleratedImageBufferSurface.cpp
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/platform/graphics/gpu/AcceleratedImageBufferSurface.h
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
third_party/WebKit/Source/platform/graphics/gpu/AcceleratedImageBufferSurface.cpp
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
Total messages: 8 (3 generated)
|