|
|
exo: Recreate Surface resources on context lost.
When the GPU context is lost the GpuMemoryBuffers may remain valid, but
the textures pointed to be the cc::Surface's frame are invalid. The
Surface should create a new TransferableResource from the Buffer and
submit it in a new frame to the cc::Surface.
Also add a ui::ContextFactoryObserver so the Surface can be notified
when the SharedMainThreadContextProvider it relies on is lost. Other
users of ImageTransportFactoryObserver are converted to the new
interface.
BUG=b/29239573
Committed: https://crrev.com/45c06866093fa86f96da6e8da0dee04740b7aee1
Cr-Commit-Position: refs/heads/master@{#401684}
Total comments: 4
Total comments: 8
Total comments: 7
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+355 lines, -204 lines) |
Patch |
 |
M |
ash/sysui/stub_context_factory.h
|
View
|
1
2
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
 |
M |
components/exo/BUILD.gn
|
View
|
1
2
3
4
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
 |
M |
components/exo/buffer.h
|
View
|
1
2
3
4
5
|
3 chunks |
+12 lines, -0 lines |
0 comments
|
Download
|
 |
M |
components/exo/buffer.cc
|
View
|
1
2
3
4
5
|
3 chunks |
+19 lines, -7 lines |
0 comments
|
Download
|
 |
M |
components/exo/buffer_unittest.cc
|
View
|
1
2
3
|
4 chunks |
+12 lines, -4 lines |
0 comments
|
Download
|
 |
M |
components/exo/surface.h
|
View
|
1
2
3
4
5
|
9 chunks |
+37 lines, -5 lines |
0 comments
|
Download
|
 |
M |
components/exo/surface.cc
|
View
|
1
2
3
4
5
|
10 chunks |
+176 lines, -126 lines |
0 comments
|
Download
|
 |
M |
components/exo/surface_unittest.cc
|
View
|
1
2
3
|
3 chunks |
+22 lines, -1 line |
0 comments
|
Download
|
 |
M |
content/browser/compositor/gpu_process_transport_factory.h
|
View
|
1
2
|
2 chunks |
+3 lines, -3 lines |
0 comments
|
Download
|
 |
M |
content/browser/compositor/gpu_process_transport_factory.cc
|
View
|
1
2
|
4 chunks |
+13 lines, -14 lines |
0 comments
|
Download
|
 |
M |
content/browser/compositor/image_transport_factory.h
|
View
|
|
3 chunks |
+1 line, -17 lines |
0 comments
|
Download
|
 |
M |
content/browser/compositor/image_transport_factory_browsertest.cc
|
View
|
1
|
3 chunks |
+4 lines, -4 lines |
0 comments
|
Download
|
 |
M |
content/browser/compositor/owned_mailbox.h
|
View
|
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
 |
M |
content/browser/compositor/owned_mailbox.cc
|
View
|
|
2 chunks |
+3 lines, -2 lines |
0 comments
|
Download
|
 |
M |
content/browser/compositor/test/no_transport_image_transport_factory.h
|
View
|
|
4 chunks |
+5 lines, -5 lines |
0 comments
|
Download
|
 |
M |
content/browser/compositor/test/no_transport_image_transport_factory.cc
|
View
|
|
2 chunks |
+1 line, -12 lines |
0 comments
|
Download
|
 |
M |
content/browser/renderer_host/delegated_frame_host.h
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
content/browser/renderer_host/delegated_frame_host.cc
|
View
|
|
2 chunks |
+2 lines, -2 lines |
0 comments
|
Download
|
 |
M |
ui/compositor/compositor.h
|
View
|
1
2
|
2 chunks |
+18 lines, -0 lines |
0 comments
|
Download
|
 |
M |
ui/compositor/test/in_process_context_factory.h
|
View
|
1
2
|
3 chunks |
+7 lines, -0 lines |
0 comments
|
Download
|
 |
M |
ui/compositor/test/in_process_context_factory.cc
|
View
|
1
2
|
2 chunks |
+12 lines, -0 lines |
0 comments
|
Download
|
 |
M |
ui/views/mus/surface_context_factory.h
|
View
|
1
2
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
Total messages: 21 (7 generated)
|