3609 Commits

Author SHA1 Message Date
Doug Zongker
5bcb55186e fix argument parser for global settings URLs
Make content://settings/global/setting_name URLs work like system and
secure URLs.

Bug: 7212535
Change-Id: I33e388a0cc80309453714eab726ce45b3f8fef73
2012-09-24 12:24:54 -07:00
Philip Milne
bc391d58c8 Merge "Revert "Fix for bug: #7173350. elapsedRealtimeNano() -> elapsedRealtimeNanos()"" into jb-mr1-dev 2012-09-24 11:41:53 -07:00
Philip Milne
53fe756772 Revert "Fix for bug: #7173350. elapsedRealtimeNano() -> elapsedRealtimeNanos()"
This reverts commit 2f6d8829524dfca3a77e9a57c3b9c3862209877d

Change-Id: Id5af767a09fc319127c4ebef837c5b7a7f75cb01
2012-09-24 11:38:29 -07:00
Philip Milne
b00df8e929 Merge "Fix for bug: #7173350. elapsedRealtimeNano() -> elapsedRealtimeNanos()" into jb-mr1-dev 2012-09-24 11:02:31 -07:00
Dianne Hackborn
cd11b223f3 Merge "Fix issue #7214090: Need to be able to post notifications to all users" into jb-mr1-dev 2012-09-24 10:58:20 -07:00
Dianne Hackborn
50cdf7c306 Fix issue #7214090: Need to be able to post notifications to all users
Also fix a bunch of system services that should be doing this.  And
while doing that, found I needed to fix PendingIntent to evaluate
USER_CURRENT at the point of sending, not creation.

Note that this may end up with us having some notification shown to
non-primary users that lead to settings UI that should only be for
the primary user (such as the vpn notification).  I'm not sure what
to do about this, maybe we need a different UI to come up there or
something, but showing the actual notification for those users at
least seems less broken than not telling them at all.

Change-Id: Iffc51e2d7c847e3d05064d292ab93937646a1ab7
2012-09-24 10:55:46 -07:00
John Spurlock
2ce1ae8e63 Merge "Migrate away from lightsOut() in BeanBagDream." into jb-mr1-dev 2012-09-24 05:52:46 -07:00
Daniel Sandler
3ffdcc70c2 Properly launch quicksettings activities.
- As current user
 - Dismissing keyguard if necessary
 - Dismissing all status bar windows and panels

Also move some QS-specific stuff out of PanelView and into
SettingsPanelView.

Bug: 7217006
Change-Id: I4d8ac84cc0f43e78f70553599c3207305c4f5c74
2012-09-24 00:43:51 -04:00
Jeff Sharkey
49397ac93c Merge "Always bind to DefaultContainerService as OWNER." into jb-mr1-dev 2012-09-23 18:25:47 -07:00
Jeff Sharkey
752cd922f7 Always bind to DefaultContainerService as OWNER.
When PackageManagerService deals with external storage, always bind
to DefaultContainerService as USER_OWNER.  This avoids binding to a
stopped user, which would fail.

Bug: 7203111
Change-Id: I8e303c7558e8b5cbe4fea0acc9a472b598df0caa
2012-09-23 16:44:34 -07:00
Victoria Lease
17e3e9e53c Merge "Do not use passive GPS data for COARSE only apps." into jb-mr1-dev 2012-09-23 15:06:59 -07:00
Jeff Sharkey
11820f7386 Merge "Allow acquiring ContentProviders across users." into jb-mr1-dev 2012-09-23 13:22:27 -07:00
Dianne Hackborn
b939e35274 Merge "Fix issue #7209355, #7214271." into jb-mr1-dev 2012-09-23 12:58:10 -07:00
Dianne Hackborn
8da429e80d Fix issue #7209355, #7214271.
Issue #7209355: Intent on the secondary user results in an intent picker
in the Primary user.
Issue #7214271: Crash in system UI

Also fix a bug where I recently broke the removeTask() operation in the
activity manager where it would remove the wrong task.

Change-Id: I448c73a0e83a78d9d8d96b4629658c169888d275
2012-09-23 12:53:34 -07:00
Winson Chung
c4b16f1acb Merge "Fixing various QuickSettings issues (Bug 7210343, Bug 7174839, Bug 7174738)" into jb-mr1-dev 2012-09-22 14:37:02 -07:00
Jeff Sharkey
6d51571835 Allow acquiring ContentProviders across users.
Otherwise services like SystemUI will always open content://-style
Uris as USER_OWNER.  Surfaces through createPackageContextAsUser()
which points all ContentResolver operations towards a given user.

Start using in RemoteViews, so that Notifications correctly resolve
image Uris to the sending user.  Also add user support for "content"
shell tool.

Bug: 7202982
Change-Id: I8cb7fb8a812e825bb0b5833799dba87055ff8699
2012-09-21 19:49:43 -07:00
Winson Chung
34563e2dc5 Fixing various QuickSettings issues (Bug 7210343, Bug 7174839, Bug 7174738)
- Using startActivityFromUser() for multiuser settings intents
- Show Wifi/Bluetooth Off labels when they are off
- Removing quotes from SSID name
- Only showing the IME tile under the same conditions that the notification is showing
- Making tile labels uppercase

Change-Id: Ic4a085cda600da019eab259b22c9041d1a0b5d29
2012-09-21 17:22:30 -07:00
Svetoslav Ganov
0a5c5567f2 Merge "Multi-user support for the accessibility layer." into jb-mr1-dev 2012-09-21 17:21:45 -07:00
Svetoslav Ganov
58d37b55bd Multi-user support for the accessibility layer.
1. This change converts the accessibility manager service to
   maintain a state per user. When the user changes the services
   for the user that is going away are disconnected, the local
   accessibility managers in the processes for this user are
   disabled, the state is swapped with the new user's one, and
   the new user state is refreshed.

   This change updates all calls into the system to use their
   user specific versions when applicable. For example, regisetring
   content observers, package monitors, calls into other system
   services, etc.

   There are some components that are shared across users such
   as UI created by the system process and the SystemUI package.
   Such components are managed as a global state shared across
   all users and are updated accordingly on a user switch. Since
   the SystemUI is running in a normal app process this change
   adds hidden APIs on the local window manager to allow the
   SystemUI to notify the accessibility layer that it will run
   accross users.

   Calls to AccessibiltyManager's isEnabled(), isTouchExplorationEnabled()
   and sendAccessibilityEvent return false or a are a nop for a
   background user sice he should not send accessibility events,
   and should not perform touch exploration.

   Update the internal accessibility tests due to changes in the
   AccessibilityManager.

   This change also fixes several issues that were encountered
   such as calling out the accessibility manager service with a
   lock held.

   Removed some incorrect debugging code from the TouchExplorer
   that was leading to a system crash.

bug:6967373

Change-Id: I2cf32ffdee1d827a8197ae4ce717dc0ff798b259
2012-09-21 16:48:07 -07:00
Philip Milne
2f6d882952 Fix for bug: #7173350. elapsedRealtimeNano() -> elapsedRealtimeNanos()
Change-Id: I71c24ea10093ece07a0780e97bc641ff548c1a44
2012-09-21 15:54:41 -07:00
Baligh Uddin
2be31d890a Import translations. DO NOT MERGE
Change-Id: I84b2f0c629da551293130a0a31024b4bf8172d56
Auto-generated-cl: translation import
2012-09-21 14:12:27 -07:00
Victoria Lease
09016ab4dd Do not use passive GPS data for COARSE only apps.
FusionEngine now attaches a secondary location that has never seen
GPS data to its result. LocationFudger uses the GPS-less location so
that COARSE apps never see data from the GPS provider.

When the previous location is updated, the previous GPS-less location
is carried over if the location update was GPS-only.

Additionally, apps without FINE permission are not notified when GPS
location changes, and any attempt to use GPS_PROVIDER without FINE
permission is met by a stern SecurityException.

Bug: 7153659
Change-Id: I12f26725782892038ce1133561e1908d91378a4a
2012-09-21 13:45:41 -07:00
John Spurlock
268118df8a Migrate away from lightsOut() in BeanBagDream.
Bug:7211867
Change-Id: Ic81a61e368b44fa22db4fffac912219d9f2ca951
2012-09-21 16:41:14 -04:00
Winson Chung
3ed6f9456a Showing QuickContacts card, adding brightness bar timeout and width, fixing wifi display icon visibility. (Bug 7186309, Bug 7175023)
Change-Id: Iea717e97bf90301bef68b06e1a35644e24ab029d
2012-09-21 11:59:12 -07:00
Baligh Uddin
537d47f510 Merge "Import translations. DO NOT MERGE" into jb-mr1-dev 2012-09-21 08:24:52 -07:00
Daniel Sandler
ced8d21f5a Add string for 'Ethernet'.
Bug: 6676469
Change-Id: Icbeb3e96b8580850a8392f443dc277488631bcab
2012-09-21 07:32:04 -07:00
Daniel Sandler
1227233b6f Merge "Bugreport in Quick Settings (if you turn it on)." into jb-mr1-dev 2012-09-21 05:54:24 -07:00
Daniel Sandler
a2facc33cd Merge "Fix the seesaw behavior on the status panels." into jb-mr1-dev 2012-09-21 05:53:05 -07:00
Daniel Sandler
c19d4488ea Bugreport in Quick Settings (if you turn it on).
Bug: 7190871
Change-Id: I8d10f18daed08aac1878cf6ba8937855d9494abd
2012-09-21 01:48:21 -04:00
Dianne Hackborn
d3724b951e Merge "Don't load views before onResume called." into jb-mr1-dev 2012-09-20 19:13:56 -07:00
Baligh Uddin
776dbf230f Import translations. DO NOT MERGE
Change-Id: I5e352f655b608f7db3ceb81c92170448580559f0
Auto-generated-cl: translation import
2012-09-20 16:02:22 -07:00
Craig Mautner
ca6da00f6c Don't load views before onResume called.
Views were being kicked off when RecentsTaskLoader was being started
from BaseStatusBar.toggleRecentsActivity. Then RecentTasksLoader called
RecentsPanelView.onTasksLoaded which invalidated the Adapter and loaded
the item views. All this before window manager had determined that the
Activity should be rotated and providing a new Configuration.

This fix waits for the Activity to resume before allowing the Adapter
to be invalidated.

Fixes bug 7138698.

Change-Id: I0df67ff2e07a0e0b69cc3b52e9843f90ce763704
2012-09-20 14:54:37 -07:00
Christopher Tate
b756445429 Multiuser awareness in content observer infrastructure
Content observers are registered under the calling user's identity,
not under the provider host's identity (unless the caller is using
the new permissioned entry points that allow observers to be
registered for a different user's view of the data).  The most important
implication of this is that when the settings provider is directly
queried, the Cursor returned to the app is wired for change notifications
based on that calling app's user.

Note that it is not possible to use query() / insert() to read/write
data for different users.  All such manipulations should use the
standard get* / put* methods in Settings.*.

Bug 7122169

Change-Id: If5d9ec44927e5e56e4e7635438f4ef48a5430986
2012-09-20 13:58:16 -07:00
Daniel Sandler
198a0306e5 Fix the seesaw behavior on the status panels.
The code in onMeasure that attempts to accommodate changing
child boundaries (i.e. an expanding/collapsing notification)
was locking the window size to the child measurement, even
though another window was trying to seesaw it closed. We now
only activate the rubberband behavior when the size of the
children changes, not on each onMeasure().

Lots of other small fixes to the panel expansion logic, too,
including ensuring that the expanded fraction doesn't jump
to 1.0f when the panel content hasn't been laid out yet
(causing the entire screen to become dim for a second thanks
to PhoneStatusBarView.panelExpansionChanged).

This change also restores the ability of Binder clients
(such as accessibility systems) to expand and collapse the
status bar.

Bug: 7008196
Bug: 6995518
Bug: 6628429
Change-Id: Ib0244a27aef2b4dbe19be98f7e039a9d38f1b80e
2012-09-20 16:50:52 -04:00
John Spurlock
e0de5bfff2 Merge "Fire "dreaming started" and "dreaming stopped" broadcasts." into jb-mr1-dev 2012-09-20 05:45:54 -07:00
Jeff Brown
89d5546d7f Add support for remembering Wifi display devices.
Add a setting to globally disable Wifi display.

Fixed a bug where the wifi display broadcast receiver
was running on the wrong thread.

Removed the wifi-display QuickSettings dialog, all functionality
has been moved to Settings.

Bug: 7178216
Bug: 7192799
Change-Id: I9796baac8245d664cf28fa147b9ed978d81d8ab9
2012-09-19 22:04:44 -07:00
Baligh Uddin
c8d33ad10e Import translations. DO NOT MERGE
Change-Id: If5bb36909e7536aedb40b72ba0899568dce7264c
Auto-generated-cl: translation import
2012-09-19 16:23:58 -07:00
John Spurlock
f4f6b4c8b0 Fire "dreaming started" and "dreaming stopped" broadcasts.
Dream manager now fires broadcast intents when entering + exiting
dreamland (except when testing).

Power manager can now listen for dreams ending, using polling only
as a backstop.

Also:
 - Bullet-proof dream-manager/dream against known failure modes
 - Add new read/write dream permissions
 - Refactor dream-manager to delegate work + state management into
   a new DreamController class, via a handler

Bug:6999949
Bug:7152024
Change-Id: I986bb7812209d8c95ae1d660a5eee5998a7b08b1
2012-09-19 17:36:50 -04:00
Dianne Hackborn
09ad0832e0 Merge "Switch to showing top-most thumbnail of recent apps." into jb-mr1-dev 2012-09-19 11:40:18 -07:00
Dianne Hackborn
15491c6a72 Switch to showing top-most thumbnail of recent apps.
The way it should have been, and with the new recents enter animation
the way it must be.

Added a new method to retrieve this thumbnail, since it would be less
efficient to use the existing API (which always returns the "base"
thumbnail).  Probably at some point that existing API should be tweaked
to always return the top thumbnail instead, but that is for a later time.

Also removed code that would clear the thumbnail associated with an
activity when it is resumed.  I don't think there should ever be a
reason to clear a thumbnail -- it's much better to have *something*
for the task, even if it is a little out of date.

Change-Id: I83e6ca6403eb2df5e4de3009dfe8c210e8cf8d5b
2012-09-19 11:25:40 -07:00
Baligh Uddin
7b6ec1f6fd Merge "Import translations. DO NOT MERGE" into jb-mr1-dev 2012-09-19 09:14:59 -07:00
Winson Chung
688ca4708b Merge "Fixing crash in emulator due to no BluetoothAdapter. (Bug 7188166)" into jb-mr1-dev 2012-09-18 15:34:37 -07:00
Winson Chung
84dbf462f8 Fixing crash in emulator due to no BluetoothAdapter. (Bug 7188166)
Change-Id: I63fe4b229a8a460170df153e71b7ad65655dfad1
2012-09-18 14:48:00 -07:00
Christopher Tate
6b58fde99a Merge "Settings provider needs to send notifications as itself" into jb-mr1-dev 2012-09-18 13:35:59 -07:00
Daniel Sandler
63bcc14c43 Merge "Remove settings and rotation buttons from notification panel." into jb-mr1-dev 2012-09-18 13:33:21 -07:00
Christopher Tate
c8459dc85e Settings provider needs to send notifications as itself
... and not as its ultimate caller, who may be a less-privileged
application.  Fixes bug 7188309

Change-Id: Iffd37b8da84f683bf665bf3d48c0b7fbc8dd721d
2012-09-18 13:27:36 -07:00
Baligh Uddin
76a10e86ca Import translations. DO NOT MERGE
Change-Id: I52f25aba49edd4070c02b351adefeeb764e15866
Auto-generated-cl: translation import
2012-09-18 10:15:46 -07:00
Christopher Tate
f1aa107b18 Merge "Per-user content observer APIs" into jb-mr1-dev 2012-09-17 17:34:00 -07:00
Christopher Tate
16aa973617 Per-user content observer APIs
Callers with INTERACT_ACROSS_USERS_FULL permission can now observe content
for a given user's view (and can notify content uri changes targeted to a
specific user).  An observer watching for UserHandle.USER_ALL will see all
notifications for the given uri across all users; similarly, a notifier
who specifies USER_ALL will broadcast the change to all observers across
all users.

The API handles both USER_ALL or USER_CURRENT, and explicitly forbids
any other "pseudouser" designations.

This CL also revs the Settings provider to notify with USER_ALL for
changes to global settings, and with only the affected user's handle
for all other changes.

Bug 7122169

Change-Id: I94248b11aa91d1beb0a36432e82fe5725bb1264f
2012-09-17 16:35:36 -07:00
Winson Chung
f9c6a10d3f Merge "Making QS scrollable and making numerous tweaks." into jb-mr1-dev 2012-09-17 14:59:45 -07:00