|
|
Make 2D canvas smarter about chosing whether or not to use GPU acceleration
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
NOTRY=true
Committed: https://crrev.com/9ac9c385c8f55f826c42e1f3a56cf66600b9e934
Cr-Commit-Position: refs/heads/master@{#350655}
|
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
|
1
|
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
|
1
|
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
|
1
|
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: 18 (5 generated)
|