| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |
| |
| |
| |
| | |
Bug: 5474671
Change-Id: I6359063ccf23f076fc84c80b8a2f6731a65eef18
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This change adds Java definitions for the enums of the
GL_OES_EGL_image_external OpenGL ES extension.
Bug: 3482193
Change-Id: Ib50326f8be9b9cc9021753855c3846ddcdc5eaa2
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
hopefully this will fix a crash in the emulator.
Bug: 5624674
Change-Id: I96586e29ea20efd73c4ad50870df5b7368bf3c3b
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This class provides an API for an application to know when it is time to
destroy its EGL context when memory is being trimmed. By having this in
the framework, we can still detect whether it will be useful to destroy
any EGL contexts (because we know if doing so will destroy all of them).
Change-Id: I1eac8d640052778052926b875c7928008f752182
|
| |/
|/|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- don't advertise extensions that are not supported
by any implementation
- remove EGL_ANDROID_swap_rectangle which is not
implemented by anybody and confuses people
- add some comments about mandatory extensions
Bug: 5428001
Change-Id: Id8dc48116ac1d1eb79ec9ef55d03e29d4257c1f3
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
the code that validated EGL objects dereferenced the object
to access its EGLDisplay -- needed for validation (!).
This was wrong for two reasons, first we dereferenced the object
before validating it (potentially leading to a crash), secondly
we didn't validate that the object existed in the right EGLDisplay.
We now use the EGLDisplay passed by the user API.
Change-Id: I66f9e851d4f8507892a6b1fee3065f124c4e7138
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| | |
This change adds the ANDROID suffix to the all the types and functions
defined by the EGL_ANDROID_blob_cache extension.
Change-Id: I087875b96d9a7053efb9c8d5614f9f765eed799d
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| | |
This does not happen on high end gfx devices. This happens
only if only one EGL context is initialized in the current
process.
Change-Id: Ibd1737efdf84eef8a84108b05795440d1ae9964e
|
|/
|
|
|
|
|
|
| |
This change causes any insertions into the EGL cache to trigger an
attempt to save the cache contents to disk. The save operation is
deferred to allow multiple cache insertions to be batched up.
Change-Id: I6cfec9c0dbbef94d3f8880860e2a365dccc296c7
|
|
|
|
|
|
|
| |
This change adds support for saving and loading the contents of the EGL
cache. It also adds some simple tests for the EGL cache.
Change-Id: I18e5e789e0897a0783d29d1c1e64d26de2dd44c4
|
|
|
|
|
|
|
|
| |
This change makes the makes the stub EGL_ANDROID_blob_cache callbacks
actually use a BlobCache object.
Bug: 5474671
Change-Id: I5cbaae2dea3aad2fe306c9f57029c3f215a0863a
|
|
|
|
|
|
|
| |
This change adds a stub cache implementation that gets passed to the
underlying EGL implementation at initialization time.
Change-Id: I14437c5b6f91b7a34a19bb02ad802e6e54f88d2a
|
|\
| |
| |
| |
| |
| |
| | |
ACRE, round 3" into ics-mr0
* commit '09848bc89de999416e2de82a7693b2deec6bf802':
docs: add developer guide cross references, Project ACRE, round 3
|
| |
| |
| |
| | |
Change-Id: I6125315ecdf0f78dd947c514a9944729d723e95d
|
|/
|
|
|
|
| |
Works around b/4588890
Change-Id: Ie0cf1f212686aec93cda85bf112f4b7ab4197256
|
|
|
|
| |
Change-Id: Icfc33d4f55d1e7fb49390ce0921ba37a438c9fc2
|
|
|
|
|
|
|
| |
Also fix a bug where Matrix.invertM was not returning false when the
matrix could not be inverted.
Change-Id: I68b172032093d9f257e88c802de936633bb4912c
|
|
|
|
|
|
|
| |
always use GL_RGBA, GL_UNSIGNED_BYTE for screen capture
and make sure to handle GL_BGRA_EXT used on some gpu.
Change-Id: If9c973677fec8a5c4e72be22e7ef7d4bf5f008f4
|
|
|
|
| |
Change-Id: Ib5744564a873ea2b84100174673dc4d3ae109fcf
|
|
|
|
|
| |
Change-Id: I62bf0fcb5ccdc77c042b425a42054fb3122575b6
Signed-off-by: Mathias Agopian <mathias@google.com>
|
|
|
|
|
|
| |
enable by setting debug.egl.callstack to 1
Change-Id: I7fad9ce71b4c4c5ece97d4f9d139348eab742a3c
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch modifies the library loaded in libEGL.so to
handle the case of GLES emulation as follows:
- if we detect that we run inside the emulator, check the
GPU emulation status through ro.kernel.qemu.gles, which
will be set to 1 if supported, or 0 otherwise.
When trying to run on an older version of the emulator,
the kernel parameter will not be defined at all.
- if GPU emulation is supported, use egl.cfg as usual.
It will contain a line like "0 0 emulation" that will
load libEGL_android.so appropriately.
- nothing is changed if we don't run inside the emulator.
NOTE: Ideally, we would modify libEGL_emulation.so to
redirect all calls to libEGL_android.so in this case.
However, this turns out to be extremely tedious to implement
(too many functions with different signatures).
As such, it is much simpler to make the check before
loading the library.
Change-Id: I9930bc168d9013cc8700feedc57b979384467c37
|
|
|
|
|
|
| |
we didn't set the debug tls properly
Change-Id: Iad9cc5b5d230a8eb7f680c4b70925c5e43e73051
|
|
|
|
|
|
| |
we were checking against to the wrong variable
Change-Id: Iff3f5ab2d6ba5ac0d3d8161011b38e673ee7e67b
|
|
|
|
| |
Change-Id: Ie22cabff822a8fb3186f082491234b9503b431c3
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This change moves the call to native_window_api_disconnect from
eglDestroySurface to the egl_surface_t destructor. The egl_surface_t
can outlive the external EGLSurface if eglDestroySurface is called while
the surface is made current on a thread.
Change-Id: I0df6117a5633c2a19935fe356579abdd76fc471f
|
|/
|
|
|
|
|
|
| |
Bug #5204874
Currently disabled.
Change-Id: I5e7b35dce2981b0691f107e39c6394b260466543
|
|
|
|
|
|
| |
this allows the emulator to display some graphics
Change-Id: Ib4671ad70b8df598d02307f2b9c5b843421cea25
|
|
|
|
|
|
| |
EGLConfig selection should now work on any device
Change-Id: I4d4580e891d1faf817fa853838406fb49d12e50a
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
some GLES drivers dequeue buffers before a frame is started
(which is allowed), which can cause a that frame to be rendered
into a buffer of the wrong size. Such buffer will be ignored
by the compositor. If the application draws only once after a
size change, the screen might stay in this stale state.
this can be avoided by telling the GL driver to purge all its
pending buffers, which is done by making the surface not current
and then current again.
this solution is specific to android, but acceptable because
handled solely in the framework.
Bug: 2263168
Change-Id: I3d3c9a019979a9186e329d3160fa54adac78d3f7
|
|
|
|
|
|
|
|
|
|
|
| |
the original connect/disconnect hooks are deprecated
and replace by api_connect/api_disconnect. the original
hooks are no no-ops.
api_connect/api_disconnect is now only called from the
android framework.
Bug: 5057915
Change-Id: I8ca64cd1acd6cabf915bf54689ec2e5f6dfa495a
|
|
|
|
| |
Change-Id: Icab48d71945bf94dd53f58b728a951d46380d945
|
|
|
|
|
|
|
|
| |
This change adds an enum value and a description of the expected
implementations to the EGL_ANDROID_recordable extension specification.
It also adds the new enum value to the 'eglext.h' header.
Change-Id: Ia0de2d5613708445ff83b85a7e550f9417531ee4
|
|\ |
|
| |
| |
| |
| | |
Change-Id: If913611a65e8b578021e9f9a9546f05e0ce6ef44
|
|\ \ |
|
| |/
| |
| |
| |
| |
| | |
Bug: 5010576
Change-Id: I04d722f258951a3078fe07899f5bbe8aac02a8e8
|
|\ \
| | |
| | |
| | |
| | |
| | | |
* changes:
Add the EGL_ANDROID_recordable spec.
Add the spec for EGL_ANDROID_blob_cache.
|
| | |
| | |
| | |
| | | |
Change-Id: I002177a68fafd6bb941aa64445c85fd5ff56223a
|
| |/
| |
| |
| | |
Change-Id: Ibaff52fee5c856283536ad37251cc80a9f3f938b
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This change fixes how the Android EGL layer overrides the size and
format of an ANativeWindow in eglCreateWindowSurface. The new behavior
is to leave the size untouched when overriding the format. The previous
behavior was to reset the ANativeWindow to use the default size set by
the ANativeWindow implementation.
It also adds two new 'perform' methods to the ANativeWindow interface:
set_buffers_dimensions and set_buffers_format, and redefines the
behavior of set_buffers_geometry to be the combination of these two new
methods.
Additionally, this change adds an error check for the return value of
the new native_window_set_buffers_format call, which required adding a
(stub) handler for to FramebufferNativeWindow.
Change-Id: I805c7ccd8d4730dfb132d10d8bc3fb058a0b9df1
|
|/
|
|
|
|
| |
Bug #5010760
Change-Id: If7500ef69683948e727df1406f458f18b11259d1
|
|
|
|
|
|
| |
currently it just tests EGLConfig selection
Change-Id: Id9d9971012d733147dd7dc02fa2054307960235e
|
|
|
|
| |
Change-Id: I4b4c8020c13b8d6ce0d302fe42410033bf5785a6
|