• Peng Huang's avatar
    Support EGL_ANGLE_external_context_and_surface in //ui/gl · 88dbf36b
    Peng Huang authored
    This CL adds support for EGL_ANGLE_external_context_and_surface.
    With this extension, it wraps a native EGL context to an ANGLE EGL
    context, so we can use ANGLE on a native EGL context. And call ANGLE
    eglMakeCurrent() with this ANGLE context, will not change the native
    EGL current context.
    And if this external ANGLE context is created with
    EGL_EXTERNAL_CONTEXT_SAVE_STATE_ANGLE. ANGLE will save GL state of
    the native GL when this ANGLE context is made current. And ANGLE will
    restore the saved GL state of the native context, when this ANGLE
    context is released with eglMakeCurrent(EGL_NO_SURFACE, EGL_NO_CONTEXT).
    
    Bug: 1157501
    Change-Id: If7bb23dda18f09866fe33d185ef0f21a78a6ba1c
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2638194
    Commit-Queue: Peng Huang <penghuang@chromium.org>
    Reviewed-by: default avatarJonathan Backer <backer@chromium.org>
    Auto-Submit: Peng Huang <penghuang@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#846194}
    88dbf36b
gl_surface_egl.cc 78.6 KB