|
4e6f6545
|
2020-04-16T16:31:24
|
|
GLX: Support X11 pixmaps
Add support for creating EGL pixmaps from X11 pixmaps using GLX.
Pixmaps are needed for various external APIs such as VAAPI.
Add support for EGL_NOK_texture_from_pixmap to allow binding
pixmaps to textures.
BUG=angleproject:4560
Change-Id: I4a6d3ad7e87151ff5317bbdaaf093ac1b46daf5f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2153805
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
1a1a1427
|
2020-01-23T13:57:21
|
|
Expose eglGetMscRateCHROMIUM from EGL_CHROMIUM_sync_control
When ANGLE is using the GL backend on GLX, we can expose
eglGetMscRateCHROMIUM via glXGetMscRateOML. Otherwise, this function
should return false.
Bug: chromium:1042393
Change-Id: Id9b308c2217e07ee9860e2869be0e23b7a0c7411
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2017048
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
a829c0b9
|
2019-11-14T16:49:02
|
|
Expose EGL_CHROMIUM_sync_control via GLX_OML_sync_control
On GLX, we can expose the EGL_CHROMIUM_sync_control extension by
forwarding to GLX_OML_sync_control when it's available. This will help
with accurate vsync times for Chrome
Bug: 1020252
Change-Id: I9b1e8cf0f8b1a548cc7cc7202fac2d0cdb01d74d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1918104
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
9d737966
|
2019-08-14T12:25:12
|
|
Standardize copyright notices to project style
For all "ANGLE Project" copyrights, standardize to the format specified
by the style guide. Changes:
- "Copyright (c)" and "Copyright(c)" changed to just "Copyright".
- Removed the second half of date ranges ("Y1Y1-Y2Y2"->"Y1Y1").
- Fixed a small number of files that had no copyright date using the
initial commit year from the version control history.
- Fixed one instance of copyright being "The ANGLE Project" rather than
"The ANGLE Project Authors"
These changes are applied both to the copyright of source file, and
where applicable to copyright statements that are generated by
templates.
BUG=angleproject:3811
Change-Id: I973dd65e4ef9deeba232d5be74c768256a0eb2e5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1754397
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
b980c563
|
2018-11-27T11:34:27
|
|
Reformat all cpp and h files.
This applies git cl format --full to all ANGLE sources.
Bug: angleproject:2986
Change-Id: Ib504e618c1589332a37e97696cdc3515d739308f
Reviewed-on: https://chromium-review.googlesource.com/c/1351367
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
fd08a959
|
2016-05-24T15:19:33
|
|
DisplayGLX: make the Mesa context creation workaround Mesa specific.
BUG=598902
Change-Id: Ib2ca69fb3573dbd0df3dafb4caec0500c7a8aa3b
Reviewed-on: https://chromium-review.googlesource.com/347071
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
50ff85e5
|
2015-11-11T14:22:21
|
|
DisplayGLX: add support for complete lack of extensions
We thought we could rely on GLX_create_context_attrib being present but
this is not the case with VM drivers. Instead we fallback to creating
contexts with glXCreateContext that doesn't offer control on which
version and profile the context will have.
Likewise we may not always be able to use the multisample but we can
safely assume that the number of samples and sample buffers are zero in
this case.
BUG=angleproject:1206
Change-Id: I888c69e609764994baf86386c9683b3edeb320f7
Reviewed-on: https://chromium-review.googlesource.com/312230
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
67bc1021
|
2015-11-06T14:30:15
|
|
GLX backend: fallback to lesser swap_control extensions
Re-reland with a warning fix.
We would like to use the EXT_swap_control extension to specify the swap
interval of each drawable independently. However open source drivers do
not expose this extension and instead expose the MESA and SGI versions
that have a global swap interval.
This commit changes the code to use the best swap_control extension it
can, potentially changing the swap interval on each swap buffers on
lesser extensions.
BUG=angleproject:1206
Change-Id: I7ecf1eed6808672f277d0242d65f90d7851d2a32
Reviewed-on: https://chromium-review.googlesource.com/312322
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
2075102d
|
2015-11-13T15:21:30
|
|
Revert "GLX backend: fallback to lesser swap_control extensions"
This reverts commit a1393c59e9466dfe3a3ccaf710c272aa26045b85.
Change-Id: I5da0f740a7073f14ad1ee7e2876a9cc71a706e7f
Reviewed-on: https://chromium-review.googlesource.com/312231
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
a1393c59
|
2015-11-06T14:30:15
|
|
GLX backend: fallback to lesser swap_control extensions
Reland with a compilation fix.
We would like to use the EXT_swap_control extension to specify the swap
interval of each drawable independently. However open source drivers do
not expose this extension and instead expose the MESA and SGI versions
that have a global swap interval.
This commit changes the code to use the best swap_control extension it
can, potentially changing the swap interval on each swap buffers on
lesser extensions.
BUG=angleproject:1206
Change-Id: I6c24217c7cfd5e09f60469cc7d6336cd68bc5c32
Reviewed-on: https://chromium-review.googlesource.com/312270
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tryjob-Request: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
0ed0d8ac
|
2015-11-11T21:24:31
|
|
Revert "GLX backend: fallback to lesser swap_control extensions"
Compile error, whoops
This reverts commit 10ad877c41c05aa0764748844244ead6ebca6c1c.
Change-Id: Ic8c8b7945c7f702b91fc34ab6862e1aadb3e82e7
Reviewed-on: https://chromium-review.googlesource.com/312260
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
10ad877c
|
2015-11-06T14:30:15
|
|
GLX backend: fallback to lesser swap_control extensions
We would like to use the EXT_swap_control extension to specify the swap
interval of each drawable independently. However open source drivers do
not expose this extension and instead expose the MESA and SGI versions
that have a global swap interval.
This commit changes the code to use the best swap_control extension it
can, potentially changing the swap interval on each swap buffers on
lesser extensions.
BUG=angleproject:1206
Change-Id: I48e40e443ff9a258fc33b38efb0acf6b1f3db103
Reviewed-on: https://chromium-review.googlesource.com/311244
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
84f505db
|
2015-11-09T13:16:45
|
|
Revert "GLX backend: fallback to lesser swap_control extensions"
This reverts commit 26e3736fe30b9f67ee4b488d8a9d31ded1b679d3.
|
|
26e3736f
|
2015-11-06T14:30:15
|
|
GLX backend: fallback to lesser swap_control extensions
Ideally we want to use EXT_swap_control as the code currently does as
it allows us to specify the swap interval of each drawable
independently. However open source drivers do not expose this extension
and instead expose the MESA and SGI versions that have a global swap
interval.
This commit changes the code to use the best swap_control extension it
can, potentially changing the swap interval on each swap buffers on
lesser extensions.
BUG=angleproject:1206
Change-Id: I251c6edf400aeeae5359a4370020e74b8e6cae51
|
|
c8947ea2
|
2015-10-27T10:16:39
|
|
FunctionsGLX: add glXGetCurrent(Drawable|Context) support
BUG=angleproject:1188
Change-Id: Ibf0fb4be3ec08cc43b2d9aba03a3d0fc12adce9d
Reviewed-on: https://chromium-review.googlesource.com/309140
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
0eb0a816
|
2015-06-19T20:18:16
|
|
Fix seg fault in IsPlatformAvailable.
Some GLX implementations can't handle having libGL.so.1 dlclose'd out
from under them while there's any X window still open against which a
GLXWindow was ever created. Load the library once per process rather
than once per FunctionsGLX instance.
This showed up as a crash in X11Window::destroy, during XCloseDisplay.
BUG=angleproject:892
Change-Id: I0da2674786a952865e5bea2513259c0a32d4453c
Reviewed-on: https://chromium-review.googlesource.com/280902
Tested-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@google.com>
|
|
f4863b70
|
2015-05-21T16:29:36
|
|
Implement swapInterval for EGL on GLX
BUG=angleproject:892
Change-Id: I80d8d67270662c7f2be893f4a8318fbc0926f1fc
Reviewed-on: https://chromium-review.googlesource.com/272677
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
f68fd9c4
|
2015-05-19T16:41:44
|
|
Revert "Revert "Call XSync in the GLX EGL impl if we have a new X server connection""
This reverts commit 9c0a421858162673f4232d37bf8c5e2459ec28ea.
Change-Id: Ia543daebc240b81950e21930895a7e24ed9f7a1b
Reviewed-on: https://chromium-review.googlesource.com/272225
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
4f691690
|
2015-05-19T13:40:28
|
|
FunctionsGLX: Remove all but one of the ANGLE dependencies
A follow-up CL will make it so the dependencies on
TokenizeExtensionString doesn't pull the GL headers, this will then
allow use to remove the hack for the inclusion of glx.h
BUG=angleproject:892
Change-Id: I51c5466617057e2c580bd5e8056307515bcecc4b
Reviewed-on: https://chromium-review.googlesource.com/272206
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
3cd0ca3c
|
2015-05-15T15:05:18
|
|
Completely isolate GLX in FunctionsGLX
This makes it so it is the only file including glx.h.
BUG=angleproject:892
Change-Id: I5c45b659ec102b7a2c92e010a6843fa21b7c664b
Reviewed-on: https://chromium-review.googlesource.com/271418
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
9c0a4218
|
2015-05-15T17:24:47
|
|
Revert "Call XSync in the GLX EGL impl if we have a new X server connection"
broke linux builders
This reverts commit cedb8ca27f97d3101a22f586671a4668bf09bbec.
Change-Id: I57143ec207b454bce7498a4d33f6d54464b55ab8
Reviewed-on: https://chromium-review.googlesource.com/271424
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Zhenyao Mo <zmo@chromium.org>
|
|
cedb8ca2
|
2015-05-14T13:28:42
|
|
Call XSync in the GLX EGL impl if we have a new X server connection
This prevents races between the application's connection and ANGLE's one
that could lead to X errors crashing the program.
BUG=angleproject:892
Change-Id: Ic09462e76724d1a32c35b32708de97258d99241c
Reviewed-on: https://chromium-review.googlesource.com/271178
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
d64a38b3
|
2015-05-14T13:03:31
|
|
FunctionsGLX: add support for glXWaitX/GL
The functions are not used in the code but are useful during development
to try to see where race condition with the X server are.
BUG=angleproject:892
Change-Id: Ie1267e46ac251bd9ac62e2a146db68ad84644fb8
Reviewed-on: https://chromium-review.googlesource.com/271177
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
582173d9
|
2015-05-13T15:51:28
|
|
FunctionsGLX: make most functions take the display implicitly
In later CLs FunctionsGLX will need to store the X display so we take
advantage of it to reduce the verbosity of the other GLX files slightly.
BUG=angleproject:892
Change-Id: I42ea00d0a37055e5e0752a860978b8ef5afb7a0b
Reviewed-on: https://chromium-review.googlesource.com/271163
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
0d3afab8
|
2015-05-11T14:53:13
|
|
Implement Pbuffers for the GLX EGL implementation
BUG=angleproject:892
Change-Id: I32b9bbb35d99621f16a055fb544ec0691dfcd5a0
Reviewed-on: https://chromium-review.googlesource.com/270261
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
f229cb9b
|
2015-05-08T15:53:39
|
|
Add a FunctionsGLX class to dynamically load the GLX entry points
BUG=angleproject:892
Change-Id: I516b7d859100cb065871de8e328585a9ca817499
Reviewed-on: https://chromium-review.googlesource.com/270123
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|