15767 Commits

Author SHA1 Message Date
Ashok Bhat
f5df700e6c AArch64: Make frameworks/base code more portable
Changes in this patch include

[x] Use %zu for size_t, %zd for ssize_t

[x] Some minor changes have been done to conform with
    standard JNI practice (e.g. use of jint instead of int
    in JNI function prototypes)

Change-Id: Id1aaa7894a7d0b85ac7ecd7b2bfd8cc40374261f
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Craig Barber <craig.barber@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
2014-03-27 12:30:42 +00:00
Yevgen Pronenko
0fd4c656d0 Do not show Home behind full screen activity
When ensureActivitiesVisibleLocked goes through foreground activity
stack and reaches non-fullscreen activity, it sets showHomeBehindStack
variable to true.

If there is a fullscreen activity behind, showHomeBehindStack remains
unchanged, which causes Home application to be displayed anyway.
In this case user will see a fullscreen activity and Home activity
simultaneously.

To fix the issue we set showHomeBehindStack to false when we reach
fullscreen activity in the activity stack.

This was made visible by the following commit:
446ef1de8d373c1b017df8d19ebf9a47811fb402

Change-Id: I535c1283a4e26f5cf606375b837d4b7195324af0
2014-03-27 07:54:37 +01:00
Adam Lesinski
e824026554 Fix a race in NotificationManager with Listeners
After being bound to, a NotificationListenerService could
make a call into NotificationManagerService before having been
added to the list of active services.

Bug: 13644375
Change-Id: I4ed920d165f46d009f91e28ca13c3926563cd110
2014-03-26 17:52:54 -07:00
Jinsuk Kim
40a00a341b Replace individual methods with a consolidated CEC nativeSendmessage
It saves us from having to add numerous native methods to HdmiCecService.
A new native method that reports physical address was added in consequence
to be able to build the message in Java side.

Other changes:
 - Substituted more concrete type (cec_device_type_t) to int.
 - Fixed the issue about byte endianness in handling physical
   address/vendor id. The bytes of variable mPhysicalAddress in native
   service were being reversed previously but still worked because they
   were reversed again when copied out to outgoing messages. Vendor id
   had a bug of bytes being reversed. In order to fix the issue, the way
   they are copied to byte array was changed so that it becomes
   independent to byte endianness.
 - CL's for header/HAL implementation changes are:
   https://googleplex-android-review.git.corp.google.com/#/c/437667
   https://googleplex-android-review.git.corp.google.com/#/c/437668

Change-Id: Id1ac683fe54597a2c707f30492c7f86e5392504d
2014-03-27 07:59:31 +09:00
Nick Kralevich
32cc40a9b5 am fdd63510: am 491eaf22: Merge "Note libselinux dependency on packages.list format changes."
* commit 'fdd6351067740f80148ff03c43d2ebc91f1d9656':
  Note libselinux dependency on packages.list format changes.
2014-03-26 15:55:41 +00:00
Stephen Smalley
e6e25554d3 Note libselinux dependency on packages.list format changes.
Change-Id: I3c34a86f5706c4fca826a8634936131e4e4fc297
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
2014-03-26 09:19:12 -04:00
riddle_hsu
739e194121 DO NOT MERGE - [ActivityManager] Ensure consistency behavior when a background activity brings another existed activity to front.
Symptom: ANR occurs on previous activity.
Root Cause:
In KK, when a background activity starts another existed background activity (bring to front),
if current focused stack is not the same as the stack of target starting activity,
it will still resume the top of target stack, even the top activity on the target stack may not the same as target activity.
And it will result incorrect focus, press back key will send to previous stack's top then popup ANR on previous activity:
"Reason: Waiting because no window has focus but there is a focused application".

By original code comment, it looks 'bring to front' should not happen in this issue case.
// If the target task is not in the front, then we need
// to bring it to the front...  except...  well, with
// SINGLE_TASK_LAUNCH it's not entirely clear.  We'd like
// to have the same behavior as if a new instance was
// being started, which means not bringing it to the front
// if the caller is not itself in the front.

If the caller and target are in the same stask, it will just deliver new intent without changing task order (the same behavior as JellyBean).
So the patch concept is just to avoid to use target stack to resume top when caller and target are in different stack.

Solution: Do not allow to resume another stack top if non-top activity try to bring existed activity to front.
It may not be a good solution, just a reminder for the issue case.

Reproduce steps:
Assume A, B, C are different app tasks.
When the application stack is like:
  Top C
      B
      A

 #Case 1: Home is foreground
  A starts B with NEW_TASK, C will resume, focus still stays at Home, and window order does not update.
  Then press back key or volumn key will result ANR on Home.

 #Case 2: App is foreground (Resumed activity is C)
  A starts Home, Home will resume, focus still stays at C, and window order does did not update.
  Then press back key or volumn key will result ANR on C.

Change-Id: If05070123b248e2335791e43a4d4ddee6db11d84
2014-03-26 20:43:17 +08:00
Craig Mautner
16744ac3f7 am d1e32cd3: Merge "Defer removal of activity until animation complete." into klp-modular-dev
* commit 'd1e32cd3207215e8bb63f18c6a5a4880b5344ef8':
  Defer removal of activity until animation complete.
2014-03-26 00:26:03 +00:00
Craig Mautner
79e6578b6c Defer removal of activity until animation complete.
Do not remove an AppWindowToken or its Task if it is running an
animation. Doing so leaves windows orphaned and bad things happen
when the system tries to retrieve the task assoicated with the
windows during layout.

Fixes the ugly output associated with bug 13440426.

Change-Id: I9d5fc50a7cb6189160d51cee3c82f7813baee715
2014-03-25 16:48:47 -07:00
Craig Mautner
d7bf82d6a4 am f32b22e9: resolved conflicts for merge of ca903d38 to klp-modular-dev
* commit 'f32b22e9c78cbc0109adbad67e9ff3d7045bd954':
  Move task to top in window manager.
2014-03-25 18:14:15 +00:00
Craig Mautner
f32b22e9c7 resolved conflicts for merge of ca903d38 to klp-modular-dev
Change-Id: I44b8cbeb9ae9f6e5c8b2fe1363127d6eccfdf041
2014-03-25 11:05:08 -07:00
Adam Lesinski
99d607844d am 415e6f8e: Merge "Fix issue with early service start" into klp-modular-dev
* commit '415e6f8ed46a70e6ae50e05cda56356dae31718c':
  Fix issue with early service start
2014-03-25 17:26:05 +00:00
Adam Lesinski
415e6f8ed4 Merge "Fix issue with early service start" into klp-modular-dev 2014-03-25 17:22:11 +00:00
Craig Mautner
81e094d76b Merge "Move task to top in window manager." into klp-dev 2014-03-25 16:48:38 +00:00
Matthew Williams
4bcf922a55 am c798e4f5: am 4701b51a: am bb87ac7f: DO NOT MERGE: Downgrade expedited to normal on reschedule.
* commit 'c798e4f5497c39a3c6c14b120cffdee1122a9212':
  DO NOT MERGE: Downgrade expedited to normal on reschedule.
2014-03-25 10:04:56 +00:00
Matthew Williams
c798e4f549 am 4701b51a: am bb87ac7f: DO NOT MERGE: Downgrade expedited to normal on reschedule.
* commit '4701b51af216ce2b6fa9fa508ebba47bf13063c7':
  DO NOT MERGE: Downgrade expedited to normal on reschedule.
2014-03-25 09:57:36 +00:00
Koji Fukui
39f7068ed9 Don't wait for finishing animation when second display is disconnected
Basically WindowManagerService wait for finishing animation when
a window is removed. But when second display is disconnected, windows
on second display can't be shown even if animation is waited for.
On the contrary, it keeps on waiting for finishing the animation
in special case.

With this fix windows are immediately removed without waiting for
animation when second display is disconnected.

Change-Id: I1354c193c04db394a21a11c174e10c8e7da17a0e
2014-03-25 11:25:32 +09:00
Matthew Williams
bb87ac7f97 DO NOT MERGE: Downgrade expedited to normal on reschedule.
bug: 12033540
Expedited was previously tracked by a redundant internal variable, ostensibly
as an optimisation. This variable could differ from the value in the bundle
depending on how the operation is initialised, which led to confusion. Now an
expedited sync will only be treated as such on its first execution.

Change-Id: Ibfc4e9e49b86c82f2364a6ef55f887705a053eb6
2014-03-24 14:42:06 -07:00
Adam Lesinski
a6db4ab619 Fix issue with early service start
NotificationListener services would start too early
and crash due to system_server not being ready.

Bug: 13439345
Change-Id: I86ee93b50d016bfa0119e21a8cde8635212b16a4
2014-03-24 12:39:47 -07:00
John Spurlock
e2cae0a657 am 2b45d84e: Merge "Unhide Notification kind, rename to category." into klp-modular-dev
* commit '2b45d84e24946d0cbbcc577ca3e195c0db687c9a':
  Unhide Notification kind, rename to category.
2014-03-24 17:44:53 +00:00
John Spurlock
cf44a124ab Unhide Notification kind, rename to category.
Change-Id: I8e6d5a30dff519d7ed4f38e018646dd2bc55db33
2014-03-24 11:02:36 -04:00
Craig Mautner
b98ee1eb50 am 103ed355: am 557a93e1: Merge "Set ScreenshotSurface secure if any secure content is shown."
* commit '103ed3558764f1fd41c9a5399e2030baa4110bfb':
  Set ScreenshotSurface secure if any secure content is shown.
2014-03-24 14:38:33 +00:00
Jinsuk Kim
3c34e5dbbb am c01e1aeb: Merge "Add HdmiCecManager" into klp-modular-dev
* commit 'c01e1aeb0d86bd626684c97d709d4a8e995fddfb':
  Add HdmiCecManager
2014-03-24 12:26:51 +00:00
Jinsuk Kim
c01e1aeb0d Merge "Add HdmiCecManager" into klp-modular-dev 2014-03-23 23:24:44 +00:00
Jinsuk Kim
fbcd503645 Add HdmiCecManager
Introduces HdmiCecManager/HdmiCecClient to provide apps/system components
with the way to access HdmiCecService via Context.getSystemService(HDMI_CEC_SERVICE).

Change-Id: I39da071a328074a4b7b049947943688bd7779c26
2014-03-24 08:19:39 +09:00
Chad Brubaker
05e4dc96fb am 850eb678: am eb3c0d9a: am 1aad3ad4: Merge "Fix support for simultaneous VPN tuns" into klp-dev
* commit '850eb678d7356ea60925dc6fa450e213d5cea2d5':
  Fix support for simultaneous VPN tuns
2014-03-21 21:09:44 +00:00
Chad Brubaker
9506e84b6f am c7726147: am 1fce89d9: am de4e7b49: Merge "Include the interface for clearDnsInterfaceForUidRange" into klp-dev
* commit 'c77261471432e1577586395dd0a6a481ef7431b5':
  Include the interface for clearDnsInterfaceForUidRange
2014-03-21 21:09:41 +00:00
Chad Brubaker
850eb678d7 am eb3c0d9a: am 1aad3ad4: Merge "Fix support for simultaneous VPN tuns" into klp-dev
* commit 'eb3c0d9ac387bb0aea5b4956daac1403253bc76d':
  Fix support for simultaneous VPN tuns
2014-03-21 21:02:47 +00:00
Chad Brubaker
c772614714 am 1fce89d9: am de4e7b49: Merge "Include the interface for clearDnsInterfaceForUidRange" into klp-dev
* commit '1fce89d946760a1bcf3a733f55494f963eab00c2':
  Include the interface for clearDnsInterfaceForUidRange
2014-03-21 21:02:43 +00:00
Chad Brubaker
1aad3ad4ec Merge "Fix support for simultaneous VPN tuns" into klp-dev 2014-03-21 20:52:14 +00:00
Chad Brubaker
de4e7b4947 Merge "Include the interface for clearDnsInterfaceForUidRange" into klp-dev 2014-03-21 20:52:05 +00:00
leo_hsu
82a91631d5 [ActivityManager] Fix a bug: unable to start activity after starting activities during screen off.
Symptom: Unable to start any activity.
Root Cause: ActivityStack.mPausingActivity() points to a destroyed activity of a died process, so that ActivityStackSupervisor.allPausedActivitiesComplete() always returns false.
Solution: Set mPausingActivity to null in ActivityStack.cleanUpActivityLocked().
Reproduce steps:
    a. Turn screen off.
    b. A background service starts an activity X (in process X).
    c. A background service starts a no-history activity Y (in process Y), but the main thread of Y was blocked.
    d. A background service starts Y 3~4 times --> this causes am_failed_to_pause on X.
    e. Main thread of Y is freed finally --> this causes Y crash for android.view.WindowManager$BadTokenException.
    f. Turn screen on, X is shown on screen, but neither back key nor home key can work because mPausingActivity is Y.

Change-Id: I320b3db407e2d4cc745c8ca22a6e548742234242
2014-03-21 12:27:16 +08:00
Jinsuk Kim
cfba284ad7 am d73e66cc: Fix broken build
* commit 'd73e66cce12f13faec44b12d9e6f33c2f28a2d5a':
  Fix broken build
2014-03-21 03:40:08 +00:00
Jinsuk Kim
d73e66cce1 Fix broken build
Change-Id: Ia7d207f7937e29cf48dce30d8c5a91f50c9e7d4c
2014-03-21 12:30:59 +09:00
Jinsuk Kim
f2fecf48f7 am c61f4dd7: Merge "Add HDMI-CEC service" into klp-modular-dev
* commit 'c61f4dd744b1b0396703aa58eb22fc31d2b7050e':
  Add HDMI-CEC service
2014-03-21 02:37:00 +00:00
Jinsuk Kim
c61f4dd744 Merge "Add HDMI-CEC service" into klp-modular-dev 2014-03-21 02:32:38 +00:00
Mike Lockwood
a5853b177c am 1fe28b20: am 71060db6: am dffdf107: Merge "UsbDeviceManager: A better fix for race condition when starting USB accessory mode" into klp-dev
* commit '1fe28b20f1cfc6d2542f8b0bfe48355f3a58067b':
  UsbDeviceManager: A better fix for race condition when starting USB accessory mode
2014-03-21 01:20:43 +00:00
Mike Lockwood
8611960301 am aa7e396f: am 935d417b: am afc3a5d3: Merge "Revert "UsbDeviceManager: Fix race condition between accessory start and USB configured uevents"" into klp-dev
* commit 'aa7e396f44f9b3b12a6abc9d8d62cf3a6f17527b':
  Revert "UsbDeviceManager: Fix race condition between accessory start and USB configured uevents"
2014-03-21 01:20:40 +00:00
Mike Lockwood
1fe28b20f1 am 71060db6: am dffdf107: Merge "UsbDeviceManager: A better fix for race condition when starting USB accessory mode" into klp-dev
* commit '71060db65e0e1c903b429c932cd6e27beec10a3e':
  UsbDeviceManager: A better fix for race condition when starting USB accessory mode
2014-03-21 01:14:15 +00:00
Mike Lockwood
aa7e396f44 am 935d417b: am afc3a5d3: Merge "Revert "UsbDeviceManager: Fix race condition between accessory start and USB configured uevents"" into klp-dev
* commit '935d417b5615a62bc521a8eb58c35de1b4fdf841':
  Revert "UsbDeviceManager: Fix race condition between accessory start and USB configured uevents"
2014-03-21 01:14:12 +00:00
Mike Lockwood
d8be49089f UsbDeviceManager: A better fix for race condition when starting USB accessory mode
On some devices, the USB "set configuration" command is propogated to the framework
after the "start accessory" event is received.  However, on other devices like
the 2011 ADK board, no "set configuration" command is sent at all until we have
reenumerated in acccessory mode.  To fix the original problem without breaking other
devices, we can simply remove assumptions about if or when "set configuration"
will be received.  Now we simply remain switch USB configuration to accessory mode
when we receive the "start accessory" command, and remain there until the existing
10 second timeout expires.

Bug: 13393825

Change-Id: I4c9e3423185bd7252a907e4568d9e3ff06044b7d
2014-03-20 12:36:51 -07:00
Mike Lockwood
205a3ea0e2 Revert "UsbDeviceManager: Fix race condition between accessory start and USB configured uevents"
This reverts commit fbd5521fb5e94fad066e21b9f91f4782afe71660.

This change broke support for the 2011 ADK board, which never sends a "set configuration"
command before "accessory start".  So we revert this change and will replace it with a better fix.

Bug: 13535051
Bug: 13393825

Change-Id: Icd870d7ff6daff1567e04d93907f70f5d7e37884
2014-03-20 12:36:34 -07:00
Craig Mautner
97024321fc Move task to top in window manager.
In certain situations it was possible for a task to move to the top
in activity manager but not in window manager. This resulted in
the task appearing behind the launcher icons.

Fixes bug 13410184.

Change-Id: If0582b395e126a8aff70a0e4c64b731083c6ae8a
2014-03-20 10:08:04 -07:00
Jim Miller
8c5567ee9e am bd33dc01: am 8e69abf8: am 46e63117: DO NOT MERGE - Fix memory leak caused by mismatched linkToDeath() in WindowManagerService
* commit 'bd33dc01f68ae0f4e4861568c02619e38c40af15':
  DO NOT MERGE - Fix memory leak caused by mismatched linkToDeath() in WindowManagerService
2014-03-20 16:24:03 +00:00
Jinsuk Kim
4f512fb451 Add HDMI-CEC service
This CL adds a system service handling HDMI-CEC protocol. The service
is equipped with the capability sending/receiving HDMI-CEC messages

Not all the messages are in place. Currently it has messages to support
a few features only, as follows:

- One touch play
- System information
- Routing control (partially - active source status maintenance only)
- Device OSD transfer
- Power status

It will be extended to cover the wider usages in the follow up CLs.

The CEC standard version referenced in the implementation is 1.3a.

Change-Id: Ifed0b02f52ebf098eddb3bd0987efbf353b7e8fe
2014-03-20 16:40:22 +09:00
Jim Miller
bd33dc01f6 am 8e69abf8: am 46e63117: DO NOT MERGE - Fix memory leak caused by mismatched linkToDeath() in WindowManagerService
* commit '8e69abf8c62452e6e9bcd254a55a2d80c8ef5b3d':
  DO NOT MERGE - Fix memory leak caused by mismatched linkToDeath() in WindowManagerService
2014-03-20 02:47:09 +00:00
Minoru Aoi
2b74a24a52 Set ScreenshotSurface secure if any secure content is shown.
The screenrecord command can record secure content during rotation.
This is because the ScreenshotSurface surface for rotation animation
is not set secure even though its screenshot contains secure content.

Change-Id: I5a70be71ddfc26de4230e7d4fe547210c2154210
2014-03-20 11:35:33 +09:00
Jim Miller
46e631178e DO NOT MERGE - Fix memory leak caused by mismatched linkToDeath() in WindowManagerService
This fixes a bug where an allocated DeathRecipient in WindowManagerService
was holding a reference to keyguard binder interface after a call to
linkToDeath() without a matchin unlinkToDeath().

It was causing the keyguard side of the binder interface to stick around,
which in tern prevented the keyguard side from releasing its references.

The solution is to ensure matching linkToDeath()/unlinkToDeath() calls.

Fixes bug 11982048

Change-Id: I6959816b819ba953512c53675162195cbf1e0653
2014-03-20 02:22:38 +00:00
Nick Kralevich
0b4f63c319 am dd6b7495: am 83725810: Merge "Get rid of noise during boot."
* commit 'dd6b7495577eca7a00aa37bfdca3449cf1443681':
  Get rid of noise during boot.
2014-03-20 01:52:42 +00:00
Dianne Hackborn
0aa5163c13 Get rid of noise during boot.
This log is not an error, it is a warning, don't spam a stack
crawl when it happens.

Change-Id: I6038e3625cc0c16af9e54887b5e7ec451d9f864d
2014-03-19 18:34:52 -07:00