10686 Commits

Author SHA1 Message Date
Ben Gruver
9dbbfcda81 Merge "Pass the originating uid to the package verifier" into jb-mr1-dev 2012-09-28 10:58:19 -07:00
Svetoslav Ganov
95841ac3c2 Merge "Inconsistent events on transition from gesture detection to touch exploration." into jb-mr1-dev 2012-09-28 10:39:38 -07:00
Svetoslav Ganov
ca8688207b Merge "Accessibility services that do not accept events are mismanaged." into jb-mr1-dev 2012-09-28 10:36:53 -07:00
Robert Greenwalt
c6fa237dae Use updatable file for premium-sms filter
The data is really to big for a gservices-driven secure setting.

bug:7221402
Change-Id: Ie3d4a1a0aeb69b9ef8fad360fa7ec32e927644e8
2012-09-28 10:24:09 -07:00
Amith Yamasani
bc4ba82335 Remove user switcher from long-press power menu
Bug: 7252218

Also lock the screen before doing the user switch. This prevents the
janky behavior of showing the target user's homescreen after the switch
and then the lock screen. This is also a privacy issue.

Change-Id: I9f8db047335d06fc93505d7b5cca71e27ca3ac39
2012-09-28 10:21:32 -07:00
John Spurlock
a174a77632 Merge "Close the notification shade when starting dream." into jb-mr1-dev 2012-09-28 10:20:23 -07:00
Daniel Sandler
0dc2b81ce1 Merge "Cleanup internal status bar APIs." into jb-mr1-dev 2012-09-28 10:07:16 -07:00
Svetoslav Ganov
aed4b6f812 Inconsistent events on transition from gesture detection to touch exploration.
1. The problem is that we have a gesture detection timeout after which we transition
   to touch exploration state. This handles the case where the user is using too high
   velocity while trying to touch explore. The delayed command that transitions from
   gesture detection state to touch exploration state was not firing an event for the
   end of gesture detection and begin of touch exploration before doing its main work
   to transition to touch exploring state.

bug:7233819

Change-Id: I5c4855231aa3826dadbee324e74a3c9e52c96cd9
2012-09-28 10:06:24 -07:00
Svetoslav Ganov
1f22b6a25d Accessibility services that do not accept events are mismanaged.
1. If an accessibility service does not specify that it handles any
   event types it was never added to the list of services while
   the system is bound to it. Since the service is not in the list
   with enabled services we never unbind it, hence it consumes
   resources without doing nothing. This is also semantically
   incorrect because a sevice may not want to receive events while
   handling only gestures.

bug:5648345

Change-Id: Id478a4704cdeeb1729330f6ae4b8ff9e06320952
2012-09-28 09:45:15 -07:00
John Spurlock
591a9e8d6e Close the notification shade when starting dream.
Bug:7205491
Change-Id: I17d2b75bc502ff8fb739a6cbb4d0219681fa4e8a
2012-09-28 12:15:08 -04:00
Jeff Brown
13701b50f5 Merge "Bundle correlated switch changes atomically." into jb-mr1-dev 2012-09-28 00:35:57 -07:00
Satoshi Kataoka
3cd961292e Merge "Fix ime swtich issue" into jb-mr1-dev 2012-09-28 00:26:55 -07:00
Satoshi Kataoka
d08a9238db Fix ime swtich issue
Bug: 7250097
Change-Id: Ibe85aaf7d60e7c3a27363eece528d19a0c8ddca2
2012-09-28 16:19:59 +09:00
Hiroshi Lockheimer
448f6e1e14 Merge "temporarily disable blacklisting" into jb-mr1-dev 2012-09-27 21:58:21 -07:00
Jeff Brown
bcc046af4e Bundle correlated switch changes atomically.
This is a prerequisite for headset jack detection on Manta.

Bug: 6548391
Change-Id: I549a194344511c0cee578b00f6a9ab5fdbdfb99c
2012-09-27 21:42:57 -07:00
Svetoslav Ganov
7befb7deb2 Global gesture to toggle Accessibility system-wide.
1. This change adds a global gesture for enabling accessibility.
   To enable this gesture the user has to allow it from the
   accessibility settings or use the setup wizard to enable
   accessibility. When the global gesture is enabled the user
   can long press on power to bring the global actions dialog
   and then hold with two fingers for a few seconds to enable
   accessibility. The appropriate feedback is also provided.

2. The global gesture is writing directly into the settings for
   the current user if performed when the keyguard is not on. If
   the keygaurd is on and the current user has no accessibility
   enabled, the gesture will temporary enable accessibility
   for the current user, i.e. no settings are changed, to allow
   the blind user to log into his account. As soon as a user
   switch happens the new user settings are inherited. If no
   user change happens after temporary enabling accessibility
   the temporary changes will be undone when the keyguard goes
   away and the device will works as expected by the current user.

bug:6171929

3. The initialization code for the owner was not executed due
   to a redundant check, thus putting the accessibility layer in
   an inconsistent state which breaks pretty much everything.

bug:7240414

Change-Id: Ie7d7aba80f5867b7f88d5893b848b53fb02a7537
2012-09-27 20:33:20 -07:00
Satoshi Kataoka
e496114528 Merge "Treat additional inputmethod subtypes per user" into jb-mr1-dev 2012-09-27 20:14:05 -07:00
Craig Mautner
3dc0b80dc6 Merge "Fix layout state issues." into jb-mr1-dev 2012-09-27 19:34:28 -07:00
Victoria Lease
b319d5de19 temporarily disable blacklisting
Bug: 7248239
Change-Id: I2ef28fa0d6890a127fc424e58a148fe1fb15b683
2012-09-27 18:24:27 -07:00
Craig Mautner
812d2ca475 Fix layout state issues.
- Restore test of hidden to isGoneForLayoutLw(), without that
we return false when setAppVisibility(true) is called which leads
to early layout of windows. Particulary on return from full screen
to non-full we lay out once before recognizing that the status bar
should be back and then again once the status bar appears causing
a jump. Fixes bug 6470541.

- Add a new test for configuration size changes to gone or hidden
windows. This forces a layout call to these windows which informs
them of the new size even though they are not shown until later.
In particular this keeps windows that were in the background
during a rotation from using their old boundaries on return.
Fixes bug 6615859.

- Consolidate WindowState.mConfiguration tests into WindowState.

Change-Id: I7a82ce747a3fcf7d74104dc23f1532efe64bd767
2012-09-27 18:07:39 -07:00
Jeff Sharkey
625239a054 Migrate more Secure settings to Global.
Migrate networking, storage, battery, DropBox, and PackageManager
related Secure settings to Global table.

Bug: 7232014, 7231331, 7231198
Change-Id: I772c2a9586a2f708c9db95622477f235064b8f4d
2012-09-27 16:22:53 -07:00
Andy McFadden
1081eed9b7 Pass display arg to blank/unblank
blank() and unblank() now take a display argument.  For now,
just pass the default display in.

Bug: 7240511

Change-Id: I7747732471c9116cb6b3686bd95d5f32a63279a6
2012-09-27 16:03:01 -07:00
Christopher Tate
3f91e43eb0 Merge "Full (local) restore security changes" into jb-mr1-dev 2012-09-27 14:58:47 -07:00
Ben Gruver
37d83a3caf Pass the originating uid to the package verifier
Bug: 6923241
Change-Id: I85a3e0d53b469543cb0551d3a440d2663b5d0697
2012-09-27 13:02:06 -07:00
Christopher Tate
f6d6fa8cbc Full (local) restore security changes
(1) Prevent full restore from creating files/directories that are
    accessible by other applications

(2) Don't restore filesets from "system" packages; i.e. any that runs
    as a special uid, unless they define their own agent for handling
    the restore process.

Bug 7168284

Change-Id: Id6a0cb4c113c2e4a8c4605252cffa41bea22d8a3
2012-09-27 12:54:37 -07:00
Adam Cohen
580ee8b0c6 Merge "Fixing AppWidgetService / AppWidgetHost to work in system process" into jb-mr1-dev 2012-09-27 11:17:20 -07:00
Daniel Sandler
11cf178100 Cleanup internal status bar APIs.
IStatusBarService.collapseQuickSettings is gone;
collapseNotifications is now collapsePanels, which does what
collapse() used to do. Similarly,
IStatusBar.animateCollapseQuickSettings is now simply
IStatusBar.animateCollapse().

Bug: 7245229
Change-Id: Id157d2fdf34926d3c85ffa8b81c741a5359aede4
2012-09-27 14:03:08 -04:00
Satoshi Kataoka
5ade83ba12 Treat additional inputmethod subtypes per user
Bug: 6931482
Change-Id: I4f7c7e69a80534da3a48ac508ff7a9e7511f33ce
2012-09-27 19:00:44 +09:00
Dianne Hackborn
2480bc12a5 Merge "Fix issue #7232952: Settings crash on tapping on Downloaded apps on a secondary user" into jb-mr1-dev 2012-09-27 00:53:08 -07:00
Dianne Hackborn
c7ba771a45 Fix issue #7232952: Settings crash on tapping on Downloaded apps on a secondary user
Also tweak bind flags for new location services so they
aren't put so aggressively up in the oom adj list.

Change-Id: I9da25a3fea7681013b4d95b7db7e9a808f2d733b
2012-09-26 23:22:59 -07:00
Jeff Brown
7bb89cf163 Merge changes I2c09abaa,I9d8406e1 into jb-mr1-dev
* changes:
  Cure narcolepsy.
  Allow applications to connect to known wifi displays.
2012-09-26 20:19:09 -07:00
Jeff Sharkey
f21b94a877 Merge "Remove unused Secure settings." into jb-mr1-dev 2012-09-26 20:17:44 -07:00
Jeff Sharkey
68b7a6d14b Merge "First step towards cleaning up Global settings." into jb-mr1-dev 2012-09-26 20:15:45 -07:00
Jeff Brown
f9d40f4236 Cure narcolepsy.
Bug: 7204211
Change-Id: I2c09abaad5d321cec6f62f7ca0ce00c3b61ee211
2012-09-26 18:57:48 -07:00
Jeff Brown
bc33545746 Allow applications to connect to known wifi displays.
Bug: 7177920
Change-Id: I9d8406e1016988e2cd267dfa52d78a829f1b385e
2012-09-26 18:34:47 -07:00
Adam Cohen
3ff2d867d4 Fixing AppWidgetService / AppWidgetHost to work in system process
-> Fixes issue 7208464
-> Fixed issue with partial update as well, should address
   issue 7214731

Change-Id: Ib8d9d5bee68b4fa7d6b4fbbc2f6609c287689958
2012-09-26 18:00:12 -07:00
Jeff Sharkey
4de9936e85 Remove unused Secure settings.
Carefully leave default values intact in Watchdog for now.

Bug: 7232007, 7232230
Change-Id: Id944181109305aed41e0766fdd39625b43cb1d19
2012-09-26 17:58:19 -07:00
Philip Milne
eed8f06f7f Merge "Fix for bug: #7173350. elapsedRealtimeNano() -> elapsedRealtimeNanos()" into jb-mr1-dev 2012-09-26 17:30:20 -07:00
Jeff Sharkey
bdfce2ec05 First step towards cleaning up Global settings.
Remove all @Deprecated @hide settings, and clean up any stragglers.

Bug: 7232125
Change-Id: Ibf67093c728d4a28565129b923edb1701d3b2789
2012-09-26 17:18:49 -07:00
Jeff Brown
62c82e4d92 Make DreamManagerService more robust.
Clearly isolated the DreamManagerService and DreamController
responsibilities.  DreamManagerService contains just enough logic to
manage the global synchronous behaviors.  All of the asynchronous
behaviors are in DreamController.

Added a new PowerManager function called nap() to request the device
to start napping.  If it is a good time to nap, then the
PowerManagerService will call startDream() on the DreamManagerService
to start dreaming.

Fixed a possible multi-user issue by explicitly tracking for
which user a dream service is being started and stopping dreams
when the current user changes.  The user id is also passed to
bindService() to ensure that the dream has the right environment.

Fix interactions with docks and the UI mode manager.  It is
important that we always send the ACTION_DOCK_EVENT broadcast
to the system so that it can configure audio routing and the like.
When docked, the UI mode manager starts a dock app if there is
one, otherwise it starts a dream.

This change resolves issues with dreams started for reasons other
than a user activity timeout.

Bug: 7204211
Change-Id: I3193cc8190982c0836319176fa2e9c4dcad9c01f
2012-09-26 15:24:27 -07:00
Jeff Brown
cef440f2a2 Move DreamManagerService to its own package.
Bug: 7204211
Change-Id: Ia6cfe252647161df357a4de149a06fa1e3fd63fa
2012-09-26 15:24:27 -07:00
Dianne Hackborn
e521573097 Merge "Maybe fix issue #7211766: bindService() to User u0 While u10 is..." into jb-mr1-dev 2012-09-26 14:55:19 -07:00
Dianne Hackborn
b12e1354f2 Maybe fix issue #7211766: bindService() to User u0 While u10 is...
...Forground Sometimes Doesn't Take

The main change here is a one-liner in ActiveServices to check the
uid when deciding whether to remove an item from mPendingServices.
This could cause the problem being seen -- if the same service for
two users is starting at the same time, the second one would blow
away the pending start of the first one.  Unfortunately I have had
trouble reproducing the bug, so I don't know if this is actually
fixing it.  It's a bug, anyway.

The reason so much has changed here is because I spread around
logging and printing of the user ID associated with operations and
objects to make it easier to debug these kind of multi-user things.

Also includes some tweaks to the oom manager to allow more background
processes (I have seen many times in logs where we thrash through
processes because the LRU list is too short), plus to compensate an
additional time-based metric for when to get rid of background processes,
plus some new logic to try to help things like Chrome keep around
their service processes.

Change-Id: Icda77fb2a1dd349969e3ff2c8fff0f19b40b31d3
2012-09-26 14:50:12 -07:00
Jeff Sharkey
1951db86f5 Merge "Multi-user ringtone playback." into jb-mr1-dev 2012-09-26 13:38:22 -07:00
Philip Milne
4118012da9 Fix for bug: #7173350. elapsedRealtimeNano() -> elapsedRealtimeNanos()
Change-Id: Ie38952bbaace080e81e41e61350cda172951d548
2012-09-26 11:29:25 -07:00
Jeff Sharkey
65c4a2b26c Multi-user ringtone playback.
Change RingtonePlayer to open content:// Uris based on requesting
UserHandle.  Grant SystemUI visibility to all emulated storage so
it can play ringtones for apps without READ_EXTERNAL_STORAGE.

Resolve canonical file:// Uris before passing out of source app,
replacing any /emulated_legacy/-style paths with user-specific
variant so they can be opened by SystemUI.  Calling for RemoteViews,
Ringtones, and Notifications.

Bug: 7202982
Change-Id: Ibf0eca8df80c1486711144a7b648f464aadfe099
2012-09-26 10:49:35 -07:00
Victoria Lease
72a374705d Merge "getBestProvider() prefers GPS over NLP" into jb-mr1-dev 2012-09-26 07:59:13 -07:00
Satoshi Kataoka
4e1ab15b30 Enable multi-user function for IMF
Bug: 6931482

Change-Id: Ib23849d352db33f0747aa9d5a178f00ac726c13b
2012-09-26 19:22:04 +09:00
Matthew Xie
5e1c74dbbe Merge "Remove permission check in registerAdapter" into jb-mr1-dev 2012-09-25 21:04:15 -07:00
Matthew Xie
670ef53353 Remove permission check in registerAdapter
This matches the JB behavior of getDefaultAdapter public api
bug 6948829

Change-Id: I86135bf45fddbb2d078f855f91a34d6fcce237a2
2012-09-25 18:25:54 -07:00