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

Side by Side Diff: Source/core/platform/graphics/Extensions3D.h

Issue 16032003: Fixing Canvas2DLayerBridge to handle lost graphics contexts (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Added Layout test and necessary content_shell API to test context loss Created 7 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2011 Google Inc. All rights reserved. 2 * Copyright (C) 2011 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 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
100 100
101 // Takes full name of extension: for example, "GL_EXT_texture_format_BGRA888 8". 101 // Takes full name of extension: for example, "GL_EXT_texture_format_BGRA888 8".
102 // Checks to see whether the given extension is actually enabled (see ensure Enabled). 102 // Checks to see whether the given extension is actually enabled (see ensure Enabled).
103 // Has no other side-effects. 103 // Has no other side-effects.
104 bool isEnabled(const String&); 104 bool isEnabled(const String&);
105 105
106 enum ExtensionsEnumType { 106 enum ExtensionsEnumType {
107 // GL_EXT_texture_format_BGRA8888 enums 107 // GL_EXT_texture_format_BGRA8888 enums
108 BGRA_EXT = 0x80E1, 108 BGRA_EXT = 0x80E1,
109 109
110 // GL_ARB_robustness enums 110 // GL_ARB_robustness/GL_CHROMIUM_lose_context enums
111 GUILTY_CONTEXT_RESET_ARB = 0x8253, 111 GUILTY_CONTEXT_RESET_ARB = 0x8253,
112 INNOCENT_CONTEXT_RESET_ARB = 0x8254, 112 INNOCENT_CONTEXT_RESET_ARB = 0x8254,
113 UNKNOWN_CONTEXT_RESET_ARB = 0x8255, 113 UNKNOWN_CONTEXT_RESET_ARB = 0x8255,
114 114
115 // GL_EXT/OES_packed_depth_stencil enums 115 // GL_EXT/OES_packed_depth_stencil enums
116 DEPTH24_STENCIL8 = 0x88F0, 116 DEPTH24_STENCIL8 = 0x88F0,
117 117
118 // GL_ANGLE_framebuffer_blit names 118 // GL_ANGLE_framebuffer_blit names
119 READ_FRAMEBUFFER = 0x8CA8, 119 READ_FRAMEBUFFER = 0x8CA8,
120 DRAW_FRAMEBUFFER = 0x8CA9, 120 DRAW_FRAMEBUFFER = 0x8CA9,
(...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after
321 void deleteQueryEXT(Platform3DObject); 321 void deleteQueryEXT(Platform3DObject);
322 GC3Dboolean isQueryEXT(Platform3DObject); 322 GC3Dboolean isQueryEXT(Platform3DObject);
323 void beginQueryEXT(GC3Denum, Platform3DObject); 323 void beginQueryEXT(GC3Denum, Platform3DObject);
324 void endQueryEXT(GC3Denum); 324 void endQueryEXT(GC3Denum);
325 void getQueryivEXT(GC3Denum, GC3Denum, GC3Dint*); 325 void getQueryivEXT(GC3Denum, GC3Denum, GC3Dint*);
326 void getQueryObjectuivEXT(Platform3DObject, GC3Denum, GC3Duint*); 326 void getQueryObjectuivEXT(Platform3DObject, GC3Denum, GC3Duint*);
327 327
328 // GL_CHROMIUM_shallow_flush 328 // GL_CHROMIUM_shallow_flush
329 void shallowFlushCHROMIUM(); 329 void shallowFlushCHROMIUM();
330 330
331 // GL_CHROMIUM_lose_context
332 void loseContextCHROMIUM(GC3Denum, GC3Denum);
333
331 private: 334 private:
332 // Instances of this class are strictly owned by the GraphicsContext3D imple mentation and do not 335 // Instances of this class are strictly owned by the GraphicsContext3D imple mentation and do not
333 // need to be instantiated by any other code. 336 // need to be instantiated by any other code.
334 friend class GraphicsContext3D; 337 friend class GraphicsContext3D;
335 explicit Extensions3D(GraphicsContext3D*); 338 explicit Extensions3D(GraphicsContext3D*);
336 339
337 // Weak pointer back to GraphicsContext3D. 340 // Weak pointer back to GraphicsContext3D.
338 GraphicsContext3D* m_context; 341 GraphicsContext3D* m_context;
339 }; 342 };
340 343
341 } // namespace WebCore 344 } // namespace WebCore
342 345
343 #endif // Extensions3D_h 346 #endif // Extensions3D_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698