2711 Commits

Author SHA1 Message Date
Romain Guy
c88e357d1e Fix regression with hardware layers.
The renderer was checking whether the layer's region is a rect to
draw it with a simple quad. This test was done against the layer's
region structure, which was cleared after generating the mesh.
Unfortunately Region::isRect() returns true when the region is
empty, which was causing the renderer to always use a quad to
draw a mesh on screen.

Change-Id: If4b874579ee0cedcb67367c9efa5c0c98ca55231
2011-01-22 00:35:23 -08:00
Romain Guy
acf36126e4 Merge "Log only 1 line per process when using OpenGLRenderer." into honeycomb 2011-01-21 21:15:40 -08:00
Romain Guy
c9855a53ed Log only 1 line per process when using OpenGLRenderer.
Change-Id: Idbdd6b84f31301e58ed53e0d50fd61fece192dfa
2011-01-21 21:14:15 -08:00
Shih-wei Liao
f1f710538e Merge "Handle fatal errors from calling bccRegisterSymbolCallback (if any)." into honeycomb 2011-01-20 23:10:39 -08:00
Romain Guy
99d49118b8 Merge "Add support for drawBitmapMesh()." into honeycomb 2011-01-20 19:07:28 -08:00
Romain Guy
5a7b466a2b Add support for drawBitmapMesh().
Change-Id: Ic77f9c534bb90dc7b9458299544bd50b8b6ae6a5
2011-01-20 19:09:30 -08:00
Shih-wei Liao
040d7d8ce7 Handle fatal errors from calling bccRegisterSymbolCallback (if any).
Change-Id: I53f35b6efd26abc1e8559f6f1e37abb55a1df7db
2011-01-20 12:35:44 -08:00
Mathias Agopian
a423d86800 Merge "clean-up unneeded code" into honeycomb 2011-01-20 12:25:26 -08:00
Stephen Hines
2e0f0bb3fe Merge "Remove unnecessary library functions." into honeycomb 2011-01-20 12:23:32 -08:00
Mathias Agopian
1d4549ab03 clean-up unneeded code
now that we removed the notion of a "inUse" buffer in surfaceflinger
a lot of code can be simplified / removed.

noteworthy, the whole concept of "unlockClient" wrt. "compositionComplete"
is also gone.

Change-Id: I210413d4c8c0998dae05c8620ebfc895d3e6233d
2011-01-20 12:10:11 -08:00
Stephen Hines
a16a981453 Remove unnecessary library functions.
Change-Id: I47fadb2b9e8b9e9ef5f139470366ce43c75fadbb
2011-01-20 11:59:07 -08:00
Romain Guy
ff26a0c1c9 Remove unnecessary code.
Change-Id: I83eba3406c26a4028af08b4d4c95ecd02803e75a
2011-01-20 11:39:09 -08:00
Romain Guy
ed8f8dd8cf Merge "Add rounded rects and circles support to OpenGLRenderer." into honeycomb 2011-01-19 21:52:49 -08:00
Romain Guy
01d58e43ed Add rounded rects and circles support to OpenGLRenderer.
Change-Id: I6cedf2b495d58de7c0437096809fa9e4518a1b8c
2011-01-19 21:55:10 -08:00
Mathias Agopian
baf9af94a6 Merge "Use EGL_NATIVE_VISUAL_ID to select EGLConfig" into honeycomb 2011-01-19 18:22:45 -08:00
Mathias Agopian
81ae965133 Use EGL_NATIVE_VISUAL_ID to select EGLConfig
EGLUtils::selectConfigForPixelFormat() now uses EGL_NATIVE_VISUAL_ID
to select a config with the proper format. this is more robust and
future proof.

Change-Id: I7245d904adab1e339f062b9b498ddd9324cfe7a4
2011-01-19 18:21:15 -08:00
Jason Sams
a82bcf6a55 Merge "Remove some old logging code." into honeycomb 2011-01-19 17:50:15 -08:00
Jason Sams
89f8b1e093 Remove some old logging code.
Change-Id: Ide5d91aadbc9f5b475da38762bc350ac237347d1
2011-01-19 17:49:24 -08:00
Stephen Hines
eb60932a19 Merge "Clean up RS math fp library functions." into honeycomb 2011-01-19 17:24:53 -08:00
Mathias Agopian
8bb9131c66 Merge "fix [3367893] Rotating device on YouTube's home screen several times kills system_server" into honeycomb 2011-01-19 17:01:22 -08:00
Mathias Agopian
578b7a2265 fix [3367893] Rotating device on YouTube's home screen several times kills system_server
A typo in RS tear down cause caused eglMakeCurrent to fail. Additionnaly,
EGLSurfaces where not destroyed explicitely.
Everything worked properly when only one RS context was used, as
eglTerminate() would clean-up everything.

however in the present case, there seem to be more than one RS context
and eglTerminate() is not called.

Change-Id: I37a10945b9c0a85c4f7abad1c4f4c24bc0daa0a5
2011-01-19 16:58:10 -08:00
Jason Sams
1368436e42 Merge "Check and propogate errors from llvm." into honeycomb 2011-01-19 16:49:17 -08:00
Stephen Hines
833166d274 Clean up RS math fp library functions.
Change-Id: Ibe87b06a7f40a3889d63310641359d98bdff066c
2011-01-19 16:34:10 -08:00
Mathias Agopian
0fb9c5dcc7 Merge "improve SurfaceFlinger 'dumpsys' log" into honeycomb 2011-01-19 16:31:32 -08:00
Mathias Agopian
06a61e2fa8 improve SurfaceFlinger 'dumpsys' log
list the purgatory, which shows windows that have been closed,
but for which the client still has references.

Change-Id: I5168bb88cb328d5d77d71d0871deb9190f493126
2011-01-19 16:15:53 -08:00
Jason Sams
fdc54a97ee Check and propogate errors from llvm.
Change-Id: Id99a724f746d1f64eabcdf67c12646cc32ff8f9d
2011-01-19 16:14:21 -08:00
Romain Guy
514fb18827 Don't attempt to create empty layers.
Bug #3369888

Change-Id: Ic17bbd1c04bbf760cb17d0eb9e6767fd6479948c
2011-01-19 14:38:29 -08:00
Romain Guy
9335f5b2fd Merge "Make embedded hardware layers work. Bug #3369474" into honeycomb 2011-01-19 13:40:43 -08:00
Romain Guy
42f3a4b7c3 Make embedded hardware layers work.
Bug #3369474

Change-Id: Ib6d7fb44eedda9dc2933b5e1b176f307968af91d
2011-01-19 13:42:26 -08:00
Shih-wei Liao
9f7e83b406 Merge "c99 bool support" into honeycomb 2011-01-19 12:21:55 -08:00
Shih-wei Liao
cbcced2d15 c99 bool support
Change-Id: I0990425a9362d3ef6ea0b40bf6f00fcc10eed426
2011-01-19 12:17:54 -08:00
Romain Guy
a3311ed7a9 Fix the fix for 9patches.
Change-Id: I66dca835d9d0e9766d887746c3265e4b13ae688b
2011-01-19 12:00:08 -08:00
Romain Guy
34829553a8 Merge "Fix the fix for 9patches." into honeycomb 2011-01-19 11:58:21 -08:00
Romain Guy
fdbec3e482 Fix 9patches in Launcher
Change-Id: Ieedf36ccaab253909b44ed8c222d523867f095be
2011-01-19 10:37:35 -08:00
Romain Guy
49903d265b Merge "Fix 9patches in Launcher" into honeycomb 2011-01-19 10:35:46 -08:00
Shih-wei Liao
1ad9612e99 1. fp_mad.rs: Pass C99 check.
2. Include C99 header (Will be fixed later at build.git.)

Change-Id: I2864e081b2635dfc4fc0c85f746f6d0ce0b01af5
2011-01-19 02:18:45 -08:00
Shih-wei Liao
cbb7279e7b Fix the build.
Change-Id: I23c4146cb19540351c33b5823df25d6e2b204402
2011-01-18 22:50:18 -08:00
Stephen Hines
688de88b65 Fix bug in modf library function (plus typos).
Change-Id: I643c905e2e3e2dcf7a61f1d027b749d9a0d6e542
2011-01-18 21:04:59 -08:00
Jason Sams
e70b445d2f Merge "Correctly log debugging info as debug." into honeycomb 2011-01-18 18:22:56 -08:00
Jason Sams
bf2afed1f2 Correctly log debugging info as debug.
Change-Id: I1169e015288d7d91b7ecbdd991e815152740e68d
2011-01-18 18:22:19 -08:00
Jason Sams
e6a97e27bc Merge "Fix race condition between GC thread and the teardown of RS. The RS context was going away while the objects were being deleted within the finializer." into honeycomb 2011-01-18 18:18:06 -08:00
Jason Sams
d1ac981497 Fix race condition between GC thread and
the teardown of RS.  The RS context was going away while
the objects were being deleted within the finializer.

Add more debugging for playCoreCommands.

Change-Id: I391f0b4db948f43f54017b47b062ab47d6a1ef64
2011-01-18 18:12:26 -08:00
Stephen Hines
66934423c8 Merge "Provide mechanism to switch between extern/static." into honeycomb 2011-01-18 17:50:19 -08:00
Stephen Hines
793786c258 Provide mechanism to switch between extern/static.
Change-Id: I59b1b45cc335278f92b68581594ca68115b9a590
2011-01-18 16:53:19 -08:00
Mathias Agopian
fc14d42b75 Merge "fix [3361121] hang in glClear() - device unresponsive, OTA fails" into honeycomb 2011-01-18 16:52:33 -08:00
Mathias Agopian
2e102a05ca fix [3361121] hang in glClear() - device unresponsive, OTA fails
Generally we never want to lock a buffer for write access if it is at
the "head" on the surfaceflinger side. The only exception (1) is when
the buffer is not currently in use AND there is at least one queued
buffer -- in which case, SurfaceFlinger will never use said buffer
anymore, because on the next composition around, it will be able to
retire the first queued buffer.

The logic above relies on SurfaceFlinger always retiring
and locking a buffer before composition -- unfortunately this
didn't happen during a screenshot.

This could leave us in a situation where a buffer is locked by the
application for write, and used by SurfaceFlinger for texturing,
causing a hang.

Here, we fix this issue by never assuming the exception (1), it was
intended as an optimization allowing ANativeWindow::lockBuffer() to
return sooner and was justified when most of SF composition was
done in software. The actual buffer locking is now ensured by
gralloc. We could have handled screenshots in a similar way to
a regular composition, but it could have caused glitches on screen,
essentially, taking a screenshot could cause to skip a frame.

Change-Id: I1f226b1ebdf6918439b687c2723955d55b842c55
2011-01-18 15:51:30 -08:00
Stephen Hines
0e5f4e549b Merge "Validate that version pragma is correct." into honeycomb 2011-01-18 14:26:24 -08:00
Stephen Hines
5dd60be169 Validate that version pragma is correct.
Change-Id: I42dced79b0df52c101525799081bc8a5426c11e4
2011-01-18 14:10:44 -08:00
Romain Guy
553889a678 Merge "Fix 9patches, again... Bug #3365243" into honeycomb 2011-01-18 14:00:28 -08:00
Romain Guy
eb6a4a17a0 Fix 9patches, again...
Bug #3365243

Change-Id: Id45a1f1fd5e099b1d691e6064401d3de1b0c5c20
2011-01-18 14:02:16 -08:00