16010 Commits

Author SHA1 Message Date
Dave Platt
8e5df442cd Merge "NsdService does not clean up after exiting clients" 2014-04-08 17:35:57 -07:00
Craig Mautner
8f2adcb10e am 228cefa8: am 3fb2b713: Merge "[ActivityManager] Reduce report ANR on wrong activity."
* commit '228cefa83dd7b95e5581f619bb597808af726f80':
  [ActivityManager] Reduce report ANR on wrong activity.
2014-04-07 22:21:33 +00:00
Craig Mautner
228cefa83d am 3fb2b713: Merge "[ActivityManager] Reduce report ANR on wrong activity."
* commit '3fb2b7132b64c65163e7c6cd948e45f703e93687':
  [ActivityManager] Reduce report ANR on wrong activity.
2014-04-07 22:14:56 +00:00
riddle_hsu
309ca5d947 [ActivityManager] Reduce report ANR on wrong activity.
Symptom: ANR report on wrong activity.

Root Cause:
  KK changed resume behavior that will not update focus when only resume,
if the activity blocked, it may report ANR on previous focus.
  By original concept, it will try to correct the ANR target,
but the stack of waiting(waitingVisible=true) activity may
different with current top stack.
  If it gets key dispatch timeout, mResumedActivity and mPausingActivity
of its stack will be null becuase it is not top stack.
Then it is unable to change ANR target to the real no response activity.

Solution:
 Use focused stack to get the real culprit.

Reproduce steps:
1.Launch an Activity X from launcher, press home key.
2.Launch X from launcher again, X blocks(sleeps 15sec) in onResume, press back key in the beginning of blocking duration.
3.ANR dialog shows launcher is no response.

Change-Id: I99416ad91e349096f995990f2240a97616fbaf28
2014-04-08 02:44:03 +08:00
John Spurlock
642421aa7f am 5c31e487: Merge "Introduce new UI_MODE_TYPE_WATCH and qualifier." into klp-modular-dev
* commit '5c31e487c4577e1c47ee7c949325d6a13f0d462e':
  Introduce new UI_MODE_TYPE_WATCH and qualifier.
2014-04-04 19:28:09 +00:00
John Spurlock
6c191299a7 Introduce new UI_MODE_TYPE_WATCH and qualifier.
Default ui mode to watch if we have FEATURE_WATCH.

Bug:13395758
Change-Id: Ie5ff95de60e69e91ad3612c7d2f1fca7f49061bd
2014-04-04 15:21:53 -04:00
Jinsuk Kim
f2fe3505da am 31518f74: Merge "Use build property for CEC device OSD name" into klp-modular-dev
* commit '31518f745ffa5e832274c332ac957a065948fdaf':
  Use build property for CEC device OSD name
2014-04-03 00:39:23 +00:00
Jinsuk Kim
60b17cc094 Use build property for CEC device OSD name
Previously OSD name was based on device type. This CL makes it
independent of device type. CEC spec says "A device that implements
more than one type of CEC functionality should respond with the same
OSD name for each logical address. It is recommended that the name
refers to the complete physical product rather than the individual
CEC functionality".

Now the default name comes from system build property. I removed
setOsdName() from aidl for now since it won't be in use.

Change-Id: I3c9fb877fad4bc5efef56268d155a3f37a865fc2
2014-04-03 07:59:27 +09:00
Jinsuk Kim
4c963841db am b1dca162: Merge "Maintain display power status for playback device" into klp-modular-dev
* commit 'b1dca1624dc8d853a52d1918c7672173e9b79836':
  Maintain display power status for playback device
2014-04-02 22:43:52 +00:00
Jinsuk Kim
b1dca1624d Merge "Maintain display power status for playback device" into klp-modular-dev 2014-04-02 22:39:41 +00:00
Narayan Kamath
71ab4f4f48 am ea9e5eca: am 17b1b8fe: Merge "Move zygote startup logic to the frameworks."
* commit 'ea9e5ecac1e5240370f0e3f998b9c8b159ee9320':
  Move zygote startup logic to the frameworks.
2014-04-02 10:41:24 +00:00
Narayan Kamath
ea9e5ecac1 am 17b1b8fe: Merge "Move zygote startup logic to the frameworks."
* commit '17b1b8fe8c0c8f05f2077acc82428881bf591a78':
  Move zygote startup logic to the frameworks.
2014-04-02 10:35:38 +00:00
Narayan Kamath
973b4663b0 Move zygote startup logic to the frameworks.
The Zygote class is now in com.android.internal.os. It is
responsible for the vast majority of work before and after
the call to fork(). It calls back into the Runtime via
the new dalvik.system.ZygoteHooks class to allow the Runtime
to perform pre fork cleanup and post fork initialization.

The native code in Zygote.cpp is a direct and straightforward
port of the existing code in art. Most differences are
superficial, for example :
- We use C style logging (ALOGE) instead of stream based
  logging.
- We call env->FatalError() instead of using LOG(FATAL)

Change-Id: Ia101fb2af12d23894fe57e4134d2bc6d142e5059
2014-04-02 10:18:43 +01:00
Jinsuk Kim
4e90fcd190 Maintain display power status for playback device
With this CL, the power status of TV/display is keep tracked of
by hdmi cec server part, specfically HdmiCecDevicePlayback.
Turned the HdmiCecDevice to abstract class from which classes of
concrete device type(HdmiCecDevicePlayback, HdmiCecDeviceTV) are
inherited. The display power status code is put in HdmiCecDevicePlayback
only. HdmiCecDeviceTv will have its own logic that manages power status of
devices connected to it. For now it only has a bare minimum code.
Will be worked on in follow up CLs.

Other changes:

    - Replaced sendGiveDevicePowerStatus() with isTvOn() so that the status
      can be queried by clients.

    - Defensively check the availability of HdmiCecService so that
      HdmiCecManager.getClient() returns null in case the service couldn't
      be initialized. This ensures clients of the service gets the nulled-out
      HdmiCecClient when called in the state/configuration where the service
      is not available, thus proceed accordingly.

Change-Id: Idaf69e73cfbd639c0b40b1bd4b6146f011246180
2014-04-02 14:46:14 +09:00
Michael Kolb
4a8121478e am 875eff83: Merge "Add circular anti-aliasing mask to circular display" into klp-modular-dev
* commit '875eff832f9f496740ceba2f12de6f5423225274':
  Add circular anti-aliasing mask to circular display
2014-04-01 22:54:30 +00:00
Michael Kolb
39a6db7cd5 Add circular anti-aliasing mask to circular display
Bug: 13635645

  Add a 2 px wide anti-aliased circle as a Layer to WindowManagerService

Change-Id: Ic8d319ca43c222f5b2e69af896749b8f2018ce3e
2014-04-01 15:28:01 -07:00
Nick Kralevich
ce30fca85d am e531e2ec: am 3b2a9d22: Merge "Change when the SELinux relabel of /data/data occurs."
* commit 'e531e2ec6b311c35b077cc228e832b3f1530dffa':
  Change when the SELinux relabel of /data/data occurs.
2014-03-31 20:20:41 +00:00
Nick Kralevich
e531e2ec6b am 3b2a9d22: Merge "Change when the SELinux relabel of /data/data occurs."
* commit '3b2a9d22794cb9f1c2a28884b5c3ba92ecc6ff96':
  Change when the SELinux relabel of /data/data occurs.
2014-03-31 20:14:37 +00:00
Nick Kralevich
3b2a9d2279 Merge "Change when the SELinux relabel of /data/data occurs." 2014-03-31 20:09:31 +00:00
Narayan Kamath
56a8f8b48f resolved conflicts for merge of 439145f0 to klp-modular-dev-plus-aosp
This isn't a straightforward conflict resolution. This code
has changed significantly. mSafeMode is now a flag on the activity
manager service, and is set when SystemServer calls enterSafeMode.

Change-Id: I1e8ff524566c5e44bb6bf3b138cdebb70004aca3
2014-03-31 14:10:53 +01:00
Narayan Kamath
439145f0e7 am ab561f5b: Merge "Don\'t make isSafeMode a field on the Zygote class."
* commit 'ab561f5b4073055c414866ff3dbe8372263474a7':
  Don't make isSafeMode a field on the Zygote class.
2014-03-31 12:42:14 +00:00
Narayan Kamath
d1a8d9f452 Don't make isSafeMode a field on the Zygote class.
This field is written and read exclusively by the system server,
and should therefore belong to the SystemServer class.

Change-Id: I2708a9a45c0c9cd1a6f563e8cc5844bd8c424bf7
2014-03-31 13:16:45 +01:00
Jinsuk Kim
2e59bd7885 am 41eaa32c: Merge "Replace individual methods with a consolidated CEC nativeSendmessage" into klp-modular-dev
* commit '41eaa32c100d8a903daa7b7d09d34887a3e45ffd':
  Replace individual methods with a consolidated CEC nativeSendmessage
2014-03-31 01:44:51 +00:00
Jinsuk Kim
41eaa32c10 Merge "Replace individual methods with a consolidated CEC nativeSendmessage" into klp-modular-dev 2014-03-31 01:40:30 +00:00
Craig Mautner
1872ce3e7a am 155e3133: am d511bc17: Merge "[ActivityManager] Fix a bug: unable to start activity after starting activities during screen off."
* commit '155e3133407e590f18e7e16eddc6fc743f35b0fd':
  [ActivityManager] Fix a bug: unable to start activity after starting activities during screen off.
2014-03-28 23:05:42 +00:00
Adam Hampson
e8609de4fb am 594c73fc: Merge "hdmi: cec: add permission name to dump permission denial message" into klp-modular-dev
* commit '594c73fc57c99a0bceaa84ccd7524e5038a17ad8':
  hdmi: cec: add permission name to dump permission denial message
2014-03-28 23:04:01 +00:00
Aaron Whyte
23fd13de62 am f10d0399: Made secure-adb\'s new-public-key activity configurable. Some devices do not have lockscreens themselves, so the plan is to have them do RPCs to companion devices that can have lockscreens, for allowing or rejecting unwhitelisted adb public keys.
* commit 'f10d0399bf5f519dff414a9d195a0eaacb37f9b7':
  Made secure-adb's new-public-key activity configurable. Some devices do not have lockscreens themselves, so the plan is to have them do RPCs to companion devices that can have lockscreens, for allowing or rejecting unwhitelisted adb public keys.
2014-03-28 23:03:56 +00:00
Adam Hampson
594c73fc57 Merge "hdmi: cec: add permission name to dump permission denial message" into klp-modular-dev 2014-03-28 22:22:52 +00:00
Aaron Whyte
f10d0399bf Made secure-adb's new-public-key activity configurable.
Some devices do not have lockscreens themselves, so the plan is to have them
do RPCs to companion devices that can have lockscreens, for allowing or
rejecting unwhitelisted adb public keys.

Change-Id: I6f7504313074e6748c0bd467a29ac3a311036f4d
2014-03-28 22:21:55 +00:00
Craig Mautner
155e313340 am d511bc17: Merge "[ActivityManager] Fix a bug: unable to start activity after starting activities during screen off."
* commit 'd511bc17d614b1291f1b85f84180c1db157d2790':
  [ActivityManager] Fix a bug: unable to start activity after starting activities during screen off.
2014-03-28 22:16:38 +00:00
Craig Mautner
d511bc17d6 Merge "[ActivityManager] Fix a bug: unable to start activity after starting activities during screen off." 2014-03-28 20:27:33 +00:00
Craig Mautner
ff3362f0d8 Merge "DO NOT MERGE - [ActivityManager] Ensure consistency behavior when a background activity brings another existed activity to front." 2014-03-28 20:23:34 +00:00
John Spurlock
ec27a7caf3 am 5579ec33: DO NOT MERGE Enhance the NotificationListenerService api.
* commit '5579ec33eb317a19ad80929169b2b329b147d98b':
  DO NOT MERGE Enhance the NotificationListenerService api.
2014-03-28 19:01:10 +00:00
Robert Craig
172d38bcda Change when the SELinux relabel of /data/data occurs.
Perform the relabel of the /data/data/<pkg> directories
when the app is being scanned by the PMS. The impetus
for this change was that the data directories of forward
locked apps were receiving the wrong label during an
OTA. Because the PMS doesn't actually scan forward locked
apps til later in the boot process, the prior restorecon
call was actually applying the default label of
system_data_file for all such apps. By performing a
restorecon on each individual app as they are entered into
the PMS we can handle them correctly. This mechanism also
allows us to pass down the seinfo tag as part of the
restorecon call which drops our need to rely on the contents
of packages.list.

Change-Id: Ie440cba2c96f0907458086348197e1506d31c1b6
Signed-off-by: rpcraig <rpcraig@tycho.ncsc.mil>
2014-03-28 12:24:29 -04:00
John Spurlock
5579ec33eb DO NOT MERGE Enhance the NotificationListenerService api.
Add to NotificationListenerService:
 - getActiveNotificationKeys() : String[]
 - getActiveNotifications(String[] keys) : StatusBarNotification[]
 - cancelNotifications(String[] keys) : void
 - onListenerConnected(String[] keys) : void

Add to StatusBarNotification:
 - getKey() : String

Bug:13562828
Change-Id: I9da222cb4af22864bc0ecdecc3f121bced0723d6
2014-03-28 10:19:00 -04:00
Adam Hampson
25b32c65e7 hdmi: cec: add permission name to dump permission denial message
The android.security.cts.ServicePermissionsTest--testDumpProtected test was
failing on this service because it is looking for the permission name in the
denial message.

Change-Id: I4b4d38cd27b782470d1f21e36104164d2c8962a3
Signed-off-by: Adam Hampson <ahampson@google.com>
2014-03-27 14:20:23 -07:00
Craig Mautner
af89d7e21f am bffd4d43: Merge "Check return values for null." into klp-modular-dev
* commit 'bffd4d437d133164877c6a194d6a533299072fae':
  Check return values for null.
2014-03-27 20:25:45 +00:00
Craig Mautner
bffd4d437d Merge "Check return values for null." into klp-modular-dev 2014-03-27 20:22:20 +00:00
Craig Mautner
d3849f5415 Check return values for null.
When a Display has been removed there is a delay until all of its
windows have been removed. Therefore there is a possibility that
WindowState.getDisplayContent() returns null. Guard against that
possibility.

Fixes bug 13616765.

Change-Id: Ia2074d293b0e1bd4ca2cd14aeb4a2cc09ed9f41e
2014-03-27 13:19:29 -07:00
Craig Mautner
723f7bbcf3 am 7f7ce0f7: am a2824410: Merge "Do not show Home behind full screen activity"
* commit '7f7ce0f71b5f1b5274b0cda190401823508cda1f':
  Do not show Home behind full screen activity
2014-03-27 20:14:13 +00:00
Craig Mautner
a282441038 Merge "Do not show Home behind full screen activity" 2014-03-27 20:01:11 +00:00
Adam Lesinski
6984e4f9bb am fc680b89: Merge "Fix a race in NotificationManager with Listeners" into klp-modular-dev
* commit 'fc680b89184fb60cf9a58e81d7f890002310702d':
  Fix a race in NotificationManager with Listeners
2014-03-27 17:18:03 +00:00
Narayan Kamath
22d074643e resolved conflicts for merge of eaab4df0 to klp-modular-dev-plus-aosp
Change-Id: I871431e5a3ce45a33563ced845e044d37471689b
2014-03-27 12:50:58 +00:00
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