summaryrefslogtreecommitdiff
path: root/opengl
AgeCommit message (Collapse)Author
2016-01-08Implement surfaceRedrawNeeded for GLSurfaceViewRobert Carr
GLSurfaceView was not supporting the surfaceRedrawNeeded protocol which leads to issues with report draw. Thus far this has mostly been fine as the main surface will not render a transparent hole until the SurfaceView has finished drawing. However in the case of SurfaceView replacement the hole in the parent surface will be preexisting and we must be able to tell that our new SurfaceView has actually drawn before removing the replacee. This is part of a series of fixes to 26070641. Bug: 26070641 Change-Id: Iecc16647f9979aa057449e8bafa540885881ed64
2015-12-18Add GLES32 class and JNIPablo Ceballos
Change-Id: I05ff0c14a35f51c2015edbd762dc9e6fe43347b9
2015-10-27Merge "Add missing OpenGLES 3.1 bitfield constants."Pablo Ceballos
2015-10-06Remove GLTrace supportPablo Ceballos
GLTrace is defunct, it does not support newer GL features, breaks security requirements, and has no supported tooling now that Eclipse is at end of life. Bug 22329852 Change-Id: I64c58464f8c2c7ae6125f5d5c7884e3fd34d68ea
2015-09-29Add missing OpenGLES 3.1 bitfield constants.Pablo Ceballos
Bug 23892570 Change-Id: I92c7bb9bafb84259bdc42927193e989a6a95d4df
2015-06-08Add tracing to GLSurfaceViewChris Craik
bug:21195272 Change-Id: I96bce6d6021fc720c73993202ba90997b0fc0e09
2015-03-05Cleanup Bitmap JNI attempt #2John Reck
Original version missed a spot This reverts commit c02977e3bbfaaedcb1b1d67e1692becc7dddd59b. Change-Id: I56244ce10d709fcdef42a001fe4c6ba7b6bbb04d
2015-03-05Revert "Cleanup Bitmap JNI"Chad Jones
This reverts commit b2915245b74b3b5541b123e38403f8e26426b4b7. Change-Id: Idd7d7f33eec4ea5024c83de6b10d3d1a6ab2b17a
2015-03-05Cleanup Bitmap JNIJohn Reck
Fix a bunch of places where mNativeBitmap was being poked at directly, switch them either to the NDK API or to GraphicsJNI where it made sense Change-Id: I6b3df3712d6497cba828c2d3012e725cb4ebb64d
2014-10-01Re-allow suppressing onDetachedFromWindowJohn Reck
Bug: 17578553 Games seem to be doing this to prevent destruction of their GL contexts, and they assume it works even if it doesn't. However, GLSurfaceView is clunky here, so while the app is doing something questionable we don't really offer a better way. For now revert back to kitkat behavior. Change-Id: Icfa9e496279b9cfa47f9bc7f6848d9313caed0d5
2014-06-30Fix onTrimMemory for HardwareRendererJohn Reck
Also fixes detachFunctor possibly drawing after return Bug: 15189843 Bug: 15990672 Change-Id: I64c48cb674c461a8eeaba407b697e09f72c98ce3
2014-05-21opengl: Un-hide GLES31 and GLES31Ext classesJesse Hall
Bug: 15028495 Change-Id: Icda236ee12a06ef2eb9902253d272dee2b61f6ef
2014-05-21opengl: Add GLES31 and GLES31Ext classesJesse Hall
Bug: 15028495 Change-Id: Ie967c1938060edb42864dd48efa668ae7bf5cd76
2014-04-21am 43cea7ea: am 650a8860: am fc3c6a0e: Merge "EGL_OPENGL_ES3_BIT_KHR is set ↵Jesse Hall
as ES 3 context is requested." * commit '43cea7eadbcb3930887eadfa3f278e1a666449d0': EGL_OPENGL_ES3_BIT_KHR is set as ES 3 context is requested.
2014-04-15EGL_OPENGL_ES3_BIT_KHR is set as ES 3 context is requested.Jin Zhebin
OpenGL ES have 3 configuration: 1(EGL10.EGL_RENDERABLE_TYPE), 2(EGL_OPENGL_ES2_BIT), 3(EGL_OPENGL_ES3_BIT_KHR). The driver should be get the according configuration parameter. Now 1 is set to driver when Configuration 3 is set from user. Specification EGL_OPENGL_ES3_BIT_KHR is set to driver when a OpenGL ES 3 context is requested in setEGLContextClientVersion(). Change-Id: I980d9d8dbe5754295f8329fcf9378962d669fa89 Signed-off-by: Jin Zhebin <zhebinx.jin@intel.com> Signed-off-by: bdeng3X <bingx.deng@intel.com>
2014-03-06Revert "Revert "Workaround apps not calling super.onDetachedFromWindow()""John Reck
This reverts commit bac16fae7e6fceb1e516252ede673844b772e7c3. Change-Id: I61e997b23fac1aa984129fdc0328426ff8891bdd
2014-03-06Revert "Workaround apps not calling super.onDetachedFromWindow()"Bart Sears
Requested by jreck to fix the build. This reverts commit 198d20842a537f3df3584ea084e74220e172b086. Change-Id: I733065cc124b59bf914034f5bac5e2e951a5b604
2014-03-06Workaround apps not calling super.onDetachedFromWindow()John Reck
Bug: 13338698 Move the releasing of hardware resources to a new @hide onDetachedFromWindowInternal Change-Id: I52b4e6ba4d5b3ce20b89cabffa248d1d780e3e81
2014-02-28Fix bad link tag in javadoc.Narayan Kamath
Java7 javadoc tools seem to accept this without complaint but not all targets use java7 yet. Change-Id: Ib025d12550f5fd68edce5760747f9225a2be50c6
2014-02-27API changes for 64 bit platforms.Narayan Kamath
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
2014-02-27am 7aec4109: am 7aeb4307: am 2525acf5: am e4dae5f2: Merge "AArch64: Make ↵Narayan Kamath
eglGetDisplay(int) work for EGL_DEFAULT_DISPLAY" * commit '7aec4109c53371e69bec111c69767810f45c301c': AArch64: Make eglGetDisplay(int) work for EGL_DEFAULT_DISPLAY
2014-02-26AArch64: Make eglGetDisplay(int) work for EGL_DEFAULT_DISPLAYAshok Bhat
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>
2014-02-25Merge "Tabs -> spaces in frameworks/base."John Spurlock
2014-02-25Tabs -> spaces in frameworks/base.John Spurlock
Change-Id: I5a84e8e93ac99b5ed0212b37bf66efa5e53864be
2014-02-25am d8410d38: am 614b00de: am a88abfb3: am 6ab07fac: Merge "Use long for ↵Narayan Kamath
pointers in opengl/EGL classes" * commit 'd8410d38cf2eb133dab29aec722dce862584d115': Use long for pointers in opengl/EGL classes
2014-02-24Use long for pointers in opengl/EGL classesAshok Bhat
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>
2014-02-19Hide three malformed GL bindingsAndy McFadden
They were replaced with correct bindings a while back, but the broken methods weren't hidden. Bug 6006380 Change-Id: I3432d37a6bf411bbd2b3ea363749e32fcff28672
2014-01-31Use long to store pointers in GLES_JNI/EGL classesAshok Bhat
Change-Id: I43b32f2a85c07b3f59c57e28e3d03e8d1cabcd8b Signed-off-by: Marcus Oakland <marcus.oakland@arm.com> Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
2013-12-15Merge "Fix incorrect name in eglSwapBuffers log wrapper"Jesse Hall
2013-12-10Fix incorrect name in eglSwapBuffers log wrapperBrian Harris
Correctly identify eglSwapBuffers in EGLLogWrapper, which had been labeled as "eglInitialize". Change-Id: I67c61e100e2f84400ceebc28712f036e5a055017
2013-06-24Merge "Fix wrapper equals()"Andy McFadden
2013-06-21Fix wrapper equals()Andy McFadden
Make it faster and correcter. Bug 9204146 Change-Id: Ieeb97b72005e831ec6b94fc24ed2c3bc03307c2a
2013-06-21Minor fixes to android.opengl.MatrixAndy McFadden
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
2013-05-01Add android.opengl.EGLExt class for EGL extensionsJesse Hall
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
2013-04-19Revert all recent GLSurfaceView changes.Jeff Brown
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
2013-04-18Fix change of behavior in Looper.quit().Jeff Brown
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
2013-04-18don't trigger a render when setting the rendermodeMathias Agopian
also don't cache the rendermode, to mimic the older behaviour. Bug: 8656076 Change-Id: Id9383852bed073927db2364f7ac30a1be28b4cd8
2013-04-16Merge "Unhide android.opengl.GLES30 class and contents" into jb-mr2-devJesse Hall
2013-04-16Merge "Add android.opengl.GLES30, hidden for now" into jb-mr2-devJesse Hall
2013-04-15Unhide android.opengl.GLES30 class and contentsJesse Hall
Bug: 8566953 Change-Id: I5273fb3bff642da5ff1eecb5899e8051402b19ca
2013-04-15Add android.opengl.GLES30, hidden for nowJesse Hall
Bug: 8566953 Change-Id: Ia5a01d5e857b4fce12a451e2dcab0359758ad648
2013-04-10Don't draw synchronously in onResume()Mathias Agopian
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
2013-04-09rework GLSurfaceView so it can use the choreographerMathias Agopian
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
2013-03-18Fix createSurface / eglCreateWindowSurface race.Jack Palevich
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
2013-03-07Publish new MediaCodec APIAndy McFadden
Un-hide two new methods in MediaCodec, one new constant, and a new EGL extension. Bug 7991062 Bug 8191230 Change-Id: I028669132d9ffda1e4b34a561bab3997bbd7dae5
2013-03-05Add eglPresentationTimeANDROIDAndy McFadden
Added EGL extension to set a timestamp on a surface. Bug 8191230 Change-Id: Ie73bd7d1217348c9c64b8c68da38d671d48355f7
2013-02-25regenerate GLES java bindingsMathias Agopian
- added most missing validation checks - glGet* validation reimplement from khronos documentation Bug: 7402895 Change-Id: I92a805bb1aba1600d3372dc2db22eab08c975d7f
2013-02-22regenerate egl/gles stubs from glgenMathias Agopian
those are minor cosmetic changes. Change-Id: I84ee5383577f0ca33ed7cc32d03e53c1475f068d
2012-12-19DdmServer: add controls for OpenGL tracingSiva Velusamy
Add a new JDWP packet to allow control of OpenGL tracing. Change-Id: Ic89e2f6299238a612df2f914581049f2cbba088c
2012-09-18GLSurfaceView defaults to 888 instead of 565Mathias Agopian
Change-Id: Ie00fe578136365031e4bb878a04b68dc40e24b9e