OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * | 7 * |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
51 namespace gles2 { | 51 namespace gles2 { |
52 class GLES2Interface; | 52 class GLES2Interface; |
53 } | 53 } |
54 } | 54 } |
55 | 55 |
56 namespace blink { | 56 namespace blink { |
57 | 57 |
58 class Canvas2DLayerBridgeHistogramLogger; | 58 class Canvas2DLayerBridgeHistogramLogger; |
59 class Canvas2DLayerBridgeTest; | 59 class Canvas2DLayerBridgeTest; |
60 class ImageBuffer; | 60 class ImageBuffer; |
61 class WebGraphicsContext3D; | |
62 class WebGraphicsContext3DProvider; | 61 class WebGraphicsContext3DProvider; |
63 class SharedContextRateLimiter; | 62 class SharedContextRateLimiter; |
64 | 63 |
65 #if OS(MACOSX) | 64 #if OS(MACOSX) |
66 // Canvas hibernation is currently disabled on MacOS X due to a bug that causes
content loss | 65 // Canvas hibernation is currently disabled on MacOS X due to a bug that causes
content loss |
67 // TODO: Find a better fix for crbug.com/588434 | 66 // TODO: Find a better fix for crbug.com/588434 |
68 #define CANVAS2D_HIBERNATION_ENABLED 0 | 67 #define CANVAS2D_HIBERNATION_ENABLED 0 |
69 | 68 |
70 // IOSurfaces are a primitive only present on OS X. | 69 // IOSurfaces are a primitive only present on OS X. |
71 #define USE_IOSURFACE_FOR_2D_CANVAS 1 | 70 #define USE_IOSURFACE_FOR_2D_CANVAS 1 |
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
177 // If this mailbox wraps an IOSurface-backed texture, the ids of the | 176 // If this mailbox wraps an IOSurface-backed texture, the ids of the |
178 // CHROMIUM image and the texture. | 177 // CHROMIUM image and the texture. |
179 ImageInfo m_imageInfo; | 178 ImageInfo m_imageInfo; |
180 #endif // USE_IOSURFACE_FOR_2D_CANVAS | 179 #endif // USE_IOSURFACE_FOR_2D_CANVAS |
181 | 180 |
182 MailboxInfo(const MailboxInfo&); | 181 MailboxInfo(const MailboxInfo&); |
183 MailboxInfo() {} | 182 MailboxInfo() {} |
184 }; | 183 }; |
185 | 184 |
186 Canvas2DLayerBridge(PassOwnPtr<WebGraphicsContext3DProvider>, const IntSize&
, int msaaSampleCount, OpacityMode, AccelerationMode); | 185 Canvas2DLayerBridge(PassOwnPtr<WebGraphicsContext3DProvider>, const IntSize&
, int msaaSampleCount, OpacityMode, AccelerationMode); |
187 WebGraphicsContext3D* context(); | |
188 gpu::gles2::GLES2Interface* contextGL(); | 186 gpu::gles2::GLES2Interface* contextGL(); |
189 void startRecording(); | 187 void startRecording(); |
190 void skipQueuedDrawCommands(); | 188 void skipQueuedDrawCommands(); |
191 void flushRecordingOnly(); | 189 void flushRecordingOnly(); |
192 void unregisterTaskObserver(); | 190 void unregisterTaskObserver(); |
193 void reportSurfaceCreationFailure(); | 191 void reportSurfaceCreationFailure(); |
194 | 192 |
195 // WebThread::TaskOberver implementation | 193 // WebThread::TaskOberver implementation |
196 void willProcessTask() override; | 194 void willProcessTask() override; |
197 void didProcessTask() override; | 195 void didProcessTask() override; |
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
276 // Each element in this vector represents an IOSurface backed texture that | 274 // Each element in this vector represents an IOSurface backed texture that |
277 // is ready to be reused. | 275 // is ready to be reused. |
278 // Elements in this vector can safely be purged in low memory conditions. | 276 // Elements in this vector can safely be purged in low memory conditions. |
279 Vector<ImageInfo> m_imageInfoCache; | 277 Vector<ImageInfo> m_imageInfoCache; |
280 #endif // USE_IOSURFACE_FOR_2D_CANVAS | 278 #endif // USE_IOSURFACE_FOR_2D_CANVAS |
281 }; | 279 }; |
282 | 280 |
283 } // namespace blink | 281 } // namespace blink |
284 | 282 |
285 #endif | 283 #endif |
OLD | NEW |