| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
Java7 javadoc tools seem to accept this without complaint
but not all targets use java7 yet.
Change-Id: Ib025d12550f5fd68edce5760747f9225a2be50c6
|
|
|
|
|
|
|
|
|
| |
EGLObjectHandle.<init>(int) and int EGLObjectHandle.getHandle()
have now been deprecated and replaced with variants that take
and return java longs.
bug: 13181704
Change-Id: I67bef5fbf064e85205b8a85e00f91f4ffcf60d19
|
|\
| |
| |
| |
| |
| |
| | |
eglGetDisplay(int) work for EGL_DEFAULT_DISPLAY"
* commit '7aec4109c53371e69bec111c69767810f45c301c':
AArch64: Make eglGetDisplay(int) work for EGL_DEFAULT_DISPLAY
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Note that files changed in this patch have been automatically
generated by running frameworks/native/opengl/tools/glgen/gen
script
This will allow eglGetDisplay(int) to work on both 32-bit and
64-bit systems when EGL_DEFAULT_DISPLAY is passed as a parameter.
Change-Id: Idf27d6e00d623d331bb2d4d7f85fa450e0db26c9
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
|
|\ \ |
|
| | |
| | |
| | |
| | | |
Change-Id: I5a84e8e93ac99b5ed0212b37bf66efa5e53864be
|
|\ \ \
| |/ /
|/| /
| |/
| |
| |
| | |
pointers in opengl/EGL classes"
* commit 'd8410d38cf2eb133dab29aec722dce862584d115':
Use long for pointers in opengl/EGL classes
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Note that files changed in this patch have been automatically
generated by running frameworks/native/opengl/tools/glgen/gen script
This patch updates EGL classes in frameworks/base to support
64-bit platforms. Key changes in the EGL classes include
[x] EGLObjectHandle class - EGLObjectHandle class has two public
methods (constructor and getHandle) that assume handles are
32-bit. They have not been changed. Instead, two new hidden
methods (EGLObjectHandle(long) and getNativeHandle) have been
added.
[x] EG14 class - Two public methods eglGetDisplay and
eglCreatePbufferFromClientBuffer assume that handles are 32-bit.
They have been changed to throw unsupported operation exception
on non 32-bit machines. Two new methods eglGetDisplay(long)
and eglCreatePbufferFromClientBuffer(...long buffer..) have
been added to support 64-bit handles.
Change-Id: I9e0f064e5b33700eb0baa2e1841a21f931f7a765
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
|
|/
|
|
|
|
|
|
|
| |
They were replaced with correct bindings a while back, but the
broken methods weren't hidden.
Bug 6006380
Change-Id: I3432d37a6bf411bbd2b3ea363749e32fcff28672
|
|
|
|
|
|
| |
Change-Id: I43b32f2a85c07b3f59c57e28e3d03e8d1cabcd8b
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
|
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
Correctly identify eglSwapBuffers in EGLLogWrapper, which had been
labeled as "eglInitialize".
Change-Id: I67c61e100e2f84400ceebc28712f036e5a055017
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| |
| | |
Make it faster and correcter.
Bug 9204146
Change-Id: Ieeb97b72005e831ec6b94fc24ed2c3bc03307c2a
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This has a minor API change: deprecation of the nullary constructor.
The class is entirely composed of static methods, and was written
without a constructor, but the compiler dutifully generated a
default implementation and the API tool slurped it up.
The other changes are to the documentation:
- Added warnings about the use of overlapping input and output
on certain methods.
- Fixed a few inaccuracies (e.g. transposeM() returns a transposed
matrix, not an inverted matrix).
- Tidied up the formatting.
- Generally placated the consistency hobgoblins.
Bug 8868762
Change-Id: Ie3f86b98c477d8dc82d9dcaa311959bd4d191359
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add the ES-relevant constants from the EGL_KHR_create_context
extension. These allow apps to check which EGLConfigs (if any) support
ES3 contexts. Otherwise, the app has to create a context with an
EGLConfig and then check whether it is an ES2 or ES3 context.
Also move eglSetPresentationTimeANDROID from EGL14 to EGLExt, since it's an
extension function. It's new in API 18.
Bug: 8678160
Change-Id: I3cba6e59ebb0a3a4c4012aa54a36b940c288bcec
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Several issues have been identified that will need to be
resolved carefully before we attempt to make similar changes.
1. Some applications make assumptions about the fact that all
Runnables posted with queueEvent() will be executed before
the next draw. Because the Choreographer may post messages
in the past (due at the frame time), these Runnables were
not always running at the expected time.
2. Some applications apparently hijack the GLThread and try
to run their own Looper on it. This obviously won't work
if we are already running one of our own.
We may need to add new rendering modes or target API checks
to provide an opportunity for applications to opt-in to the
changes in the future.
Bug: 8649804
Change-Id: I6289c3392a98cdbfaf28c7f4f7a8040f2138a3b4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It seems some applications rely on Looper.quit() terminating the
loop immediately without processing all messages. Rather than
risk breaking them, make the safer behavior optional.
Also take care to properly drain the message queue before quitting
so that all of the Message instances are recycled. This may
help release storage sooner in case the Looper doesn't get GC'd
promptly and its remaining queue of undelivered messages sticks
around.
Improve docs on runWithScissors.
Bug: 8596303
Change-Id: I8cbeb6f7a5f6b8e618b5109f87a03defc1486b9f
|
|
|
|
|
|
|
|
| |
also don't cache the rendermode, to mimic the older
behaviour.
Bug: 8656076
Change-Id: Id9383852bed073927db2364f7ac30a1be28b4cd8
|
|\ |
|
| |
| |
| |
| |
| | |
Bug: 8566953
Change-Id: I5273fb3bff642da5ff1eecb5899e8051402b19ca
|
|\ \
| |/ |
|
| |
| |
| |
| |
| | |
Bug: 8566953
Change-Id: Ia5a01d5e857b4fce12a451e2dcab0359758ad648
|
|/
|
|
|
|
|
|
|
|
|
|
|
| |
this could cause a dead-lock if the applicaltion's draw
implementation blocks until something happenson the main
ui thread.
note: we're still doing this synchronous draw in onWindowResize() because
that's what the previous implementation did. Technically, it has the
same problem.
Bug: 8586305
Change-Id: I782568289cc9419346aeea73775d86faa28b3058
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GLSurfaceView will now automatically use the Choreographer to
schedule render updates on VSYNC. This happens only in
RENDERMODE_CONTINUOUSLY.
GLSurfaceView was rewriten to use a Looper and a HandlerThread
instead of a custom thread.
The basic mode of operation is unchanged, however the implementation
is largely different.
Removed support for older GPUs which had a limited number of contexts.
Bug: 8485730
Change-Id: I7b270f7ad7bb1259e858429054b1c8c9cc159dc6
|
|
|
|
|
|
|
|
|
|
| |
Previously we could have returned from createSurface on the main thread
before calling eglCreateWindowSurface on the GLThread. That could lead
to a problem because the surface could be destroyed before
eglCreateWindowSurface got a chance to run.
Bug: 8328715
Change-Id: I273149f7d4b165abbe218a91ff54083f3f498cb0
|
|
|
|
|
|
|
|
|
|
| |
Un-hide two new methods in MediaCodec, one new constant, and a new
EGL extension.
Bug 7991062
Bug 8191230
Change-Id: I028669132d9ffda1e4b34a561bab3997bbd7dae5
|
|
|
|
|
|
|
|
| |
Added EGL extension to set a timestamp on a surface.
Bug 8191230
Change-Id: Ie73bd7d1217348c9c64b8c68da38d671d48355f7
|
|
|
|
|
|
|
|
|
| |
- added most missing validation checks
- glGet* validation reimplement from khronos documentation
Bug: 7402895
Change-Id: I92a805bb1aba1600d3372dc2db22eab08c975d7f
|
|
|
|
|
|
| |
those are minor cosmetic changes.
Change-Id: I84ee5383577f0ca33ed7cc32d03e53c1475f068d
|
|
|
|
|
|
| |
Add a new JDWP packet to allow control of OpenGL tracing.
Change-Id: Ic89e2f6299238a612df2f914581049f2cbba088c
|
|
|
|
| |
Change-Id: Ie00fe578136365031e4bb878a04b68dc40e24b9e
|
|
|
|
|
|
| |
This is the start of turning this into a formal public API.
Change-Id: I5786d2c320f1de41a06ed5d0f65adb68967287a0
|
|
|
|
| |
Change-Id: Ia3546fd02f9b60d4505fbc0602522b95e3e5b6be
|
|
|
|
|
|
| |
Avoid using textures for common gradients (two stops from 0.0 to 1.0)
Change-Id: Iff55d21b126c8cfc4cfb701669f2339c8f6b131a
|
|
|
|
|
|
| |
External bug report: http://code.google.com/p/android/issues/detail?id=35646
Change-Id: I845783c05da46855f0c1d824c9a367f0e4673b85
|
|\ |
|
| |
| |
| |
| | |
Change-Id: I4b7199a1eb30e0df354ae12c4819adc69db5df40
|
|/
|
|
|
|
|
|
|
| |
this adds correct versions of the broken GLES20 methods
glGetShaderSource, glGetActiveAttrib and glGetActiveUniform.
the old functions are still there and need to be @hide later.
Bug: 6006380
Change-Id: I8127a77c4b89aa8a9a54bea88774077535e2139d
|
|
|
|
| |
Change-Id: If03d23082b011aaba41594712601495dcbd70f6a
|
|
|
|
| |
Change-Id: I1c3da57101f4ea089a12f1796f25b72d6852141e
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When pausing we want to do three separate things, in order:
+ release the EGL surface
+ optionally release the EGL context
+ optionally terminate Egl
Previously we would only do these things if we had an EGL surface. But
it is possible that we don't have an EGL Surface, but still have an EGL
context. And in that situation we still want to release the EGL context.
Now we check the preconditions for the three cases separately.
Bug: 6338235
Change-Id: I804683b3d5c136cc98ea3f5051067eea18152ddf
|
|
|
|
|
|
|
| |
Otherwise the waiters might not wake up, leading to ANRs.
Bug: 6307843
Change-Id: I0646b4e8368f80dbff46342f75709992796973fd
|
|
|
|
|
|
|
|
|
|
| |
Assume a failure in eglMakeCurrent occurs because the SurfaceView
surface has been destroyed.
See b/6257956 for an example of this failure happening during rotation
stress testing.
Change-Id: I4618703b5291aba3a3f0c6bd83c3435a67b97d33
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A careful reading of the EGL spec, as well as experience with many
different EGL drivers, has shown that it is error prone to attempt to
discriminate between different error conditions.
We now treat any error besides EGL_CONTEXT_LOST as an indication that the
EGL context is in a bad state, most likely due to the window manager
having removed the underlying surface flinger surface.
In addition, we changed the way we deal with this kind of error:
Previously we would ignore the error and keep rendering. But if the
EGL context and surface has become invalid, it would be better to
stop drawing. We now stop drawing until the surface view surface is
recreated.
See b/6032663 for an example of this problem affecting the GMM app,
but note that GMM is using their own version of GLSurfaceView, so this
change won't help them directly. They'll have to make a similar change
to their version of GLSurfaceView.
Change-Id: Iffe3e1e3a3c7a91d03140fd34391eadeaecf777e
Signed-off-by: Jack Palevich <jackpal@google.com>
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Packages can be enabled/disabled per user.
This requires maintaining stopped/launched states and
enabled / disabled components and packages per user.
Refactored pm.Settings and PackageSettingsBase to keep
track of states per user.
Migrated the stopped-packages.xml to users/<u>/package-restrictions.xml
Changed intent resolution to handle individual user restrictions.
Bunch of IPackageManager calls now have a userId argument.
Make AppWidgetService handle removals of packages.
Added some tests for pm.Settings and PackageManager.
Change-Id: Ia83b529e1df88dbcb3bd55ebfc952a6e9b20e861
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This change allows Adreno GPUs to have multiple EGL contexts. We had
to limit this in earlier versions of Android due to limitations in
the Adreno GPU driver (only 8 EGL contexts allowed system wide.)
That brand of GPU has improved its EGL drivers to support multiple
EGL contexts in more recent versions of their drivers used on more
recent versions of Android.
Bug: 6142005
Change-Id: Id3030466be9a3d9fbe728f1785378c1f05da98fe
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Certain EGL device drivers are generating this error, so we need to
survive it. (It's not clear from the EGL spec whether this is a
legitimate error code, but since it's being generated we need to
handle it.)
Remove logging of expected errors from elSwapBuffers. We expect these
errors to happen, and are handeling them by ignoring them.
No need to clutter the logs.
Bug: 6083241
Change-Id: If17dcfbb68d3009b92cf95a448728ccb47023b51
|