Commit Graph

46965 Commits

Author SHA1 Message Date
Mathias Agopian
cd60f99aba refactor compositing code to avoid multiple eglMakeCurrent() calls
when multiple displays are connected, we ended-up having to
call eglMakeCurrent() twice per display due to a limitation
in EGL. this fixes that.

Change-Id: I11e4584df50f8c24bbecee74e37b28b3ee031d2f
2012-08-16 20:58:58 -07:00
Mathias Agopian
5f20e2d446 reimplement wifi display hack with new external display SF framework
fix a few bugs with external displays

- HWComposer doesn't really handle multiple displays yet
  so there is a lot of ugliness there

- We also need to make sure that external displays are not
  blanked by default

- due to some EGL limitations surfaces being swapped need
  to be current

Change-Id: I82bff05b43bcebd8da863c7c76b4edbc3bc223a9
2012-08-16 20:58:58 -07:00
Mathias Agopian
818b46058a display states can't share the dirty flags
Change-Id: Ifade9f2f1a0df9a36aede77a6cf5eee4be534f98
2012-08-16 20:58:57 -07:00
Mathias Agopian
111b2d8922 binder interfaces can't be compared directly
we always need to compare their binder

Change-Id: I70d554ebc5009fe81e87923235f91451f32e1a30
2012-08-16 20:55:28 -07:00
The Android Open Source Project
69543c7ce5 Reconcile with jb-mr1-release - do not merge
Change-Id: I2f5150a2972fd8cc92ed4c38c975a8ac73283879
2012-08-16 19:10:39 -07:00
Jamie Gennis
ed059a8d75 SurfaceTexture: inherit from ConsumerBase
This change makes SurfaceTexture inherit from ConsumerBase.  It removes all of
the functionality from SurfaceTexture that is now provided by the base class.

Change-Id: I4a881df42810a14ee32d4ef7c8772a8f2510f4c7
2012-08-16 18:11:02 -07:00
Siva Velusamy
0bbd95b9be am c21fc05a: Merge "gltrace: flush trace buffer on createContext & makeCurrent" into jb-mr1-dev
* commit 'c21fc05af75ee746e29f48b6d231127ee000f7ed':
  gltrace: flush trace buffer on createContext & makeCurrent
2012-08-16 16:29:05 -07:00
Siva Velusamy
c21fc05af7 Merge "gltrace: flush trace buffer on createContext & makeCurrent" into jb-mr1-dev 2012-08-16 16:26:59 -07:00
Siva Velusamy
ad9693f4f0 gltrace: flush trace buffer on createContext & makeCurrent
Certain apps (e.g. chrome) seem to create contexts which are unused
for long periods of time. If tracing is stopped before those contexts
are used, then the debugger never gets to know that these contexts
were created. Flushing the trace after these calls ensures that
the debugger knows about all created/used contexts.

Change-Id: I01baa11aa56ac89eddce3c2851e4bf01076984d1
2012-08-16 14:41:20 -07:00
The Android Automerger
ec7ba01af8 merge in jb-mr1-release history after reset to jb-mr1-dev 2012-08-16 06:33:59 -07:00
Mathias Agopian
e5769db877 we were mistakenly optimizing out SF's main transactions in some cases
due to a typo, SF's main transaction was conditional to having a
display transaction.

more correct fix for 6970310

Bug: 6970310
Change-Id: Iafd8c4e02afa5db829cc1c65950cfcc74754c6af
2012-08-15 17:44:23 -07:00
Mathias Agopian
64af43a229 am 13233e06: oopsie, missed a spot when fixing b/6970310
* commit '13233e067b8f71adc3a0ade5f442265e1f27084b':
  oopsie, missed a spot when fixing b/6970310
2012-08-15 16:16:44 -07:00
Mathias Agopian
13233e067b oopsie, missed a spot when fixing b/6970310
Change-Id: Ia320fddc7cc4b0666a4fee678af710ecf5f83ff5
2012-08-15 16:14:33 -07:00
Mathias Agopian
c94805ba33 am 3559b07a: we were mistakenly optimizing out SF\'s main transactions in some cases
* commit '3559b07a885bcdff51a6dffb8e3a5ac5adf3a220':
  we were mistakenly optimizing out SF's main transactions in some cases
2012-08-15 13:50:23 -07:00
Mathias Agopian
3559b07a88 we were mistakenly optimizing out SF's main transactions in some cases
due to a typo, SF's main transaction was conditional to having a
display transaction.

more correct fix for 6970310

Bug: 6970310
Change-Id: Iafd8c4e02afa5db829cc1c65950cfcc74754c6af
2012-08-15 13:46:03 -07:00
Jeff Brown
8b580f54ed am ac1f70bb: Use new PowerManager API.
* commit 'ac1f70bb7135cd5fe73d6fbf121a62c779679c5a':
  Use new PowerManager API.
2012-08-15 10:28:08 -07:00
Jeff Brown
65b2493675 am 01eb9792: Fix layer removal transaction.
* commit '01eb979243a57bd33f8389aeeade8024dd0258c0':
  Fix layer removal transaction.
2012-08-15 10:00:59 -07:00
The Android Open Source Project
1b488abc8e Reconcile with jb-mr1-release - do not merge
Change-Id: I444e336418583d709973a26579a4f1027ca4abfa
2012-08-15 08:27:33 -07:00
The Android Automerger
741fac3fee merge in jb-mr1-release history after reset to jb-mr1-dev 2012-08-15 06:34:21 -07:00
Jeff Brown
ac1f70bb71 Use new PowerManager API.
Change-Id: I66165d9954e2d1da9204216382a05a873f1393f4
2012-08-15 01:16:39 -07:00
Jeff Brown
01eb979243 Fix layer removal transaction.
Layers were not properly being removed because we were
setting the wrong transaction type flag at the time of
removal.

When layers are removed, we must use eDisplayTransactionNeeded,
not eTransactionNeeded, to ensure that the mLayersRemoved
flag is checked and the appropriate cleanup occurs.

Bug: 6970310
Change-Id: Id4b2897a34d4ac00aa0f92349c0ec6db95c1aaf7
2012-08-15 01:16:16 -07:00
Jesse Hall
d007dc12c6 am ea599dff: Don\'t crash when recovering from WM death
* commit 'ea599dfff03b45903dae3288274c31cb24fd483f':
  Don't crash when recovering from WM death
2012-08-14 15:49:29 -07:00
Jesse Hall
ea599dfff0 Don't crash when recovering from WM death
Bug: 6956162
Change-Id: I27244b960c77187b4c4cd7297989c4c872e94a3a
2012-08-14 15:33:04 -07:00
The Android Automerger
92f49e7877 merge in jb-mr1-release history after reset to jb-mr1-dev 2012-08-14 07:07:23 -07:00
Jeff Brown
1375ed00c1 am f0083bf5: Merge "Add a very simple helper function to log slow functions." into jb-mr1-dev
* commit 'f0083bf5288e0d430b0dc5cbc4b4852bce2ff1af':
  Add a very simple helper function to log slow functions.
2012-08-13 23:36:43 -07:00
Jeff Brown
f0083bf528 Merge "Add a very simple helper function to log slow functions." into jb-mr1-dev 2012-08-13 23:35:08 -07:00
Mathias Agopian
4078cad3f3 am 20128300: make sure to repaint the screen when unblank()ing
* commit '20128300e0cb7f459a60cfbcddb48190ce6545ed':
  make sure to repaint the screen when unblank()ing
2012-08-13 18:34:27 -07:00
Mathias Agopian
20128300e0 make sure to repaint the screen when unblank()ing
Change-Id: I38e3a8e6bb31ef3d2f1fcaec7490cb92a4427db2
2012-08-13 18:32:13 -07:00
Mathias Agopian
65c9612c4f am 8b736f13: xdpi / ydpi were reported as 0
* commit '8b736f138cfd9b239a2c7073347a13c489534ae1':
  xdpi / ydpi were reported as 0
2012-08-13 17:58:12 -07:00
Mathias Agopian
8b736f138c xdpi / ydpi were reported as 0
Bug: 6975723
Change-Id: Ia7fa37ec11e2308804f5034959a37e508d292d31
2012-08-13 17:54:26 -07:00
Mathias Agopian
57160091f2 am 670d24a8: Merge "improve [un]marshalling of non-binder objects" into jb-mr1-dev
* commit '670d24a8aeffee2788680be665bd74e0275cc2cf':
  improve [un]marshalling of non-binder objects
2012-08-13 14:29:38 -07:00
Mathias Agopian
670d24a8ae Merge "improve [un]marshalling of non-binder objects" into jb-mr1-dev 2012-08-13 14:28:25 -07:00
Jesse Hall
b58c6d5ef1 am 7e5099a9: Add compile-time option to systrace GL-ES calls
* commit '7e5099a9ece6a3ed7edb1b5bf60a43422428326c':
  Add compile-time option to systrace GL-ES calls
2012-08-13 12:14:29 -07:00
Jesse Hall
7e5099a9ec Add compile-time option to systrace GL-ES calls
Change-Id: Ibec103bbf159626ad9745d0e071192ad424bc0e9
2012-08-13 12:13:05 -07:00
The Android Automerger
4350904287 merge in jb-mr1-release history after reset to jb-mr1-dev 2012-08-13 08:09:24 -07:00
Mathias Agopian
8683fca395 improve [un]marshalling of non-binder objects
this change introduces a new class LightFlattenable<> which is
a protocol to flatten simple objects that don't require
binders or file descriptors; the benefit of this protocol is that
it doesn't require the objects to have a virtual table and give us
a consitant way of doing this.

we also introduce an implementation of this protocol for
POD structures, LightFlattenablePod<>.

Parcel has been update to handle this protocol automatically.

Sensor, Rect, Point and Region now use this new protocol.

Change-Id: Icb3ce7fa1d785249eb666f39c2129f2fc143ea4a
2012-08-13 02:46:05 -07:00
Jeff Brown
6f12d57325 Add a very simple helper function to log slow functions.
Change-Id: I2e2e072206d02b572a330dd25857c161b5b563bf
2012-08-10 22:03:55 -07:00
Mathias Agopian
26b7d98b65 am e57f2925: make multi-display more real
* commit 'e57f292595bec48f65c8088b00ff6beea01217e9':
  make multi-display more real
2012-08-10 18:53:14 -07:00
Mathias Agopian
e57f292595 make multi-display more real
- displays are represented by a binder on the client side
- c++ clients can now create and modify displays

Change-Id: I203ea5b4beae0819d742ec5171c27568f4e8354b
2012-08-10 17:32:33 -07:00
Mathias Agopian
f8aa5d8b92 am ef7b9c7e: screenshots could stop working after camera was used
* commit 'ef7b9c7eac036cc1230c64821039d18f8cbd2c1c':
  screenshots could stop working after camera was used
2012-08-10 15:27:01 -07:00
Mathias Agopian
ef7b9c7eac screenshots could stop working after camera was used
once a secure window is put on screen the display
would retain its "secure" flag forever, preventing
screenshots from being taken.

Bug: 6933967
Change-Id: I5be8355145ca7d580d84552311642f8fa912fe6a
2012-08-10 15:23:41 -07:00
Mathias Agopian
75479ad98f am 748f3df6: avoid crashing when we don\'t have an h/w composer
* commit '748f3df66f6695681cde44461e2548e6e1dbc1bb':
  avoid crashing when we don't have an h/w composer
2012-08-10 14:40:37 -07:00
Mathias Agopian
748f3df66f avoid crashing when we don't have an h/w composer
should fix the emulator

Bug: 6956162
Change-Id: I38247b59d276b8db078c4dc2caba7d3fb545912c
2012-08-10 14:36:40 -07:00
Mathias Agopian
213da6a4a8 am 3165cc21: libgui includes refactoring
* commit '3165cc21cfea781988407b19bd83292b19f05f55':
  libgui includes refactoring
2012-08-10 13:45:15 -07:00
Mathias Agopian
8db7c47703 am 1e260874: Add a display parameter to HWComposer where needed
* commit '1e26087493ac0e7d7dc6dea8ad85cfef08b3271f':
  Add a display parameter to HWComposer where needed
2012-08-10 13:43:42 -07:00
Mathias Agopian
b4a278daa6 am 28947d7f: now able to set the layer stack on a DisplayDevice
* commit '28947d7fbf9f486539322e8e12dd057568e180c2':
  now able to set the layer stack on a DisplayDevice
2012-08-10 13:40:13 -07:00
Mathias Agopian
2461168726 am 69973992: improve Vector<> safety checks
* commit '69973992d531ae7df20916c6fb3034b08a6d53c4':
  improve Vector<> safety checks
2012-08-10 13:40:12 -07:00
Mathias Agopian
3165cc21cf libgui includes refactoring
Change-Id: I1d24ec17f5003ec2abab5f7472daaff4cc4cc2d3
2012-08-10 13:18:24 -07:00
Mathias Agopian
1e26087493 Add a display parameter to HWComposer where needed
- also replace C casts with C++ casts
- only the interface is changed, HWComposer still doesn't
  fully handle multiple displays

Change-Id: I48eb89bff2edb76bf1d4d41f46802b9b2a7166a8
2012-08-10 13:18:24 -07:00
Mathias Agopian
28947d7fbf now able to set the layer stack on a DisplayDevice
Change-Id: Ia9691cf221b9444c243eb468d9e276a30e600b6b
2012-08-10 13:18:23 -07:00