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

Side by Side Diff: ui/gl/gl_surface_egl.cc

Issue 954513002: Roll ANGLE 6df9b3..7825f6 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 10 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
« no previous file with comments | « DEPS ('k') | ui/gl/gl_surface_win.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "ui/gl/gl_surface_egl.h" 5 #include "ui/gl/gl_surface_egl.h"
6 6
7 #if defined(OS_ANDROID) 7 #if defined(OS_ANDROID)
8 #include <android/native_window_jni.h> 8 #include <android/native_window_jni.h>
9 #endif 9 #endif
10 10
(...skipping 21 matching lines...) Expand all
32 #if defined (USE_OZONE) 32 #if defined (USE_OZONE)
33 #include "ui/ozone/public/surface_factory_ozone.h" 33 #include "ui/ozone/public/surface_factory_ozone.h"
34 #endif 34 #endif
35 35
36 #if !defined(EGL_FIXED_SIZE_ANGLE) 36 #if !defined(EGL_FIXED_SIZE_ANGLE)
37 #define EGL_FIXED_SIZE_ANGLE 0x3201 37 #define EGL_FIXED_SIZE_ANGLE 0x3201
38 #endif 38 #endif
39 39
40 #if defined(OS_WIN) 40 #if defined(OS_WIN)
41 // From ANGLE's egl/eglext.h. 41 // From ANGLE's egl/eglext.h.
42 #if !defined(EGL_PLATFORM_ANGLE_ANGLE) 42
43 #define EGL_PLATFORM_ANGLE_ANGLE 0x3201 43 #ifndef EGL_ANGLE_platform_angle
44 #endif 44 #define EGL_ANGLE_platform_angle 1
45 #if !defined(EGL_PLATFORM_ANGLE_TYPE_ANGLE) 45 #define EGL_PLATFORM_ANGLE_ANGLE 0x3202
46 #define EGL_PLATFORM_ANGLE_TYPE_ANGLE 0x3202 46 #define EGL_PLATFORM_ANGLE_TYPE_ANGLE 0x3203
47 #endif 47 #define EGL_PLATFORM_ANGLE_MAX_VERSION_MAJOR_ANGLE 0x3204
48 #if !defined(EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE) 48 #define EGL_PLATFORM_ANGLE_MAX_VERSION_MINOR_ANGLE 0x3205
49 #define EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE 0x3207 49 #define EGL_PLATFORM_ANGLE_TYPE_DEFAULT_ANGLE 0x3206
50 #endif 50 #endif /* EGL_ANGLE_platform_angle */
51 #if !defined(EGL_PLATFORM_ANGLE_USE_WARP_ANGLE) 51
52 #define EGL_PLATFORM_ANGLE_USE_WARP_ANGLE 0x3208 52 #ifndef EGL_ANGLE_platform_angle_d3d
53 #endif 53 #define EGL_ANGLE_platform_angle_d3d 1
54 #define EGL_PLATFORM_ANGLE_TYPE_D3D9_ANGLE 0x3207
55 #define EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE 0x3208
56 #define EGL_PLATFORM_ANGLE_DEVICE_TYPE_ANGLE 0x3209
57 #define EGL_PLATFORM_ANGLE_DEVICE_TYPE_HARDWARE_ANGLE 0x320A
58 #define EGL_PLATFORM_ANGLE_DEVICE_TYPE_WARP_ANGLE 0x320B
59 #define EGL_PLATFORM_ANGLE_DEVICE_TYPE_REFERENCE_ANGLE 0x320C
60 #endif /* EGL_ANGLE_platform_angle_d3d */
61
54 #endif // defined(OS_WIN) 62 #endif // defined(OS_WIN)
55 63
56 using ui::GetLastEGLErrorString; 64 using ui::GetLastEGLErrorString;
57 65
58 namespace gfx { 66 namespace gfx {
59 67
60 #if defined(OS_WIN) 68 #if defined(OS_WIN)
61 unsigned int NativeViewGLSurfaceEGL::current_swap_generation_ = 0; 69 unsigned int NativeViewGLSurfaceEGL::current_swap_generation_ = 0;
62 unsigned int NativeViewGLSurfaceEGL::swaps_this_generation_ = 0; 70 unsigned int NativeViewGLSurfaceEGL::swaps_this_generation_ = 0;
63 unsigned int NativeViewGLSurfaceEGL::last_multiswap_generation_ = 0; 71 unsigned int NativeViewGLSurfaceEGL::last_multiswap_generation_ = 0;
(...skipping 242 matching lines...) Expand 10 before | Expand all | Expand 10 after
306 GLSurfaceEGL::~GLSurfaceEGL() { 314 GLSurfaceEGL::~GLSurfaceEGL() {
307 DCHECK_GT(g_num_surfaces, 0) << "Bad surface count"; 315 DCHECK_GT(g_num_surfaces, 0) << "Bad surface count";
308 if (--g_num_surfaces == 0 && g_terminate_pending) { 316 if (--g_num_surfaces == 0 && g_terminate_pending) {
309 DeinitializeEgl(); 317 DeinitializeEgl();
310 g_terminate_pending = false; 318 g_terminate_pending = false;
311 } 319 }
312 } 320 }
313 321
314 #if defined(OS_WIN) 322 #if defined(OS_WIN)
315 static const EGLint kDisplayAttribsWarp[] { 323 static const EGLint kDisplayAttribsWarp[] {
316 EGL_PLATFORM_ANGLE_TYPE_ANGLE, EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE, 324 EGL_PLATFORM_ANGLE_TYPE_ANGLE,
317 EGL_PLATFORM_ANGLE_USE_WARP_ANGLE, EGL_TRUE, 325 EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE,
326
327 EGL_PLATFORM_ANGLE_DEVICE_TYPE_ANGLE,
328 EGL_PLATFORM_ANGLE_DEVICE_TYPE_WARP_ANGLE,
329
318 EGL_NONE 330 EGL_NONE
319 }; 331 };
320 332
321 // static 333 // static
322 EGLDisplay GLSurfaceEGL::GetPlatformDisplay( 334 EGLDisplay GLSurfaceEGL::GetPlatformDisplay(
323 EGLNativeDisplayType native_display) { 335 EGLNativeDisplayType native_display) {
324 if (base::CommandLine::ForCurrentProcess()->HasSwitch(switches::kUseWarp)) { 336 if (base::CommandLine::ForCurrentProcess()->HasSwitch(switches::kUseWarp)) {
325 // Check for availability of WARP via ANGLE extension. 337 // Check for availability of WARP via ANGLE extension.
326 bool supports_warp = false; 338 bool supports_warp = false;
327 const char* no_display_extensions = eglQueryString(EGL_NO_DISPLAY, 339 const char* no_display_extensions = eglQueryString(EGL_NO_DISPLAY,
(...skipping 482 matching lines...) Expand 10 before | Expand all | Expand 10 after
810 } 822 }
811 823
812 void* SurfacelessEGL::GetShareHandle() { 824 void* SurfacelessEGL::GetShareHandle() {
813 return NULL; 825 return NULL;
814 } 826 }
815 827
816 SurfacelessEGL::~SurfacelessEGL() { 828 SurfacelessEGL::~SurfacelessEGL() {
817 } 829 }
818 830
819 } // namespace gfx 831 } // namespace gfx
OLDNEW
« no previous file with comments | « DEPS ('k') | ui/gl/gl_surface_win.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698