Should only be shown in the docking intent chooser, but if
you use AnyCut to link to the Somnambulator you'll see it
there as well.
Bug: 7267723
Change-Id: I4be7572e4785f35b4ac1ad91d03a617d5d2fe3c1
Comes up the first time you touch the status bar; explains
where quick settings is, and even allows you to swipe down
to try it (instead of touching "OK").
Bug: 7209412
Change-Id: I72b1a91902e64b4623e0fcaf1555dc703870b59f
We now listen for brightness changes and update the icon appropriately.
Note there are still only two icon states in QS (auto-on and auto-off).
We also listen for user switches, since the brightness setting is per-user.
The manual brightness level is now kept in sync with level set in Settings.
This change is tightly scoped to brightness only. Any other
QS bugs should be triaged separately.
Bug:7283805
Change-Id: Ibaf8fe94e98f65cc02efe7fcddf4f38370fdb09f
Load user information for the current user and display in quick
settings tile. Name is pulled from the contacts DB from the "Me"
profile, which will override the raw name on the system user if
needed.
Open the user switcher on the lock screen if this tile is clicked and
there is more than one user registered on the system. If there is only
one user, show the "Me" quick contact card.
Darken the background protection behind the user's name on the QS tile
layout so that it's readable against very light profile pic
backgrounds.
Bug 7175023
Bug 7257997
Change-Id: Ia1e7dd7af72dbd49113a827f9228e0a32e20a0dc
Created a new flag that indicates that a window should be shown
to all users. For the flag to be valid the owner of the window
must have system permissions.
Also separated system window types into those that show to all
users (e.g. StatusBar, Keyguard, ....) and those that appear only
to the owning users (e.g. Drag, ANR, TOAST, ...). Those that appear
only to their owner can override their default behavior using
the new flag (e.g. LowBattery).
Fixes bug 7211965.
Change-Id: I1fdca25d57b7b523f0c7f8bceb819af656c388d4
The last bit of undoing the earlier tangle around query results having
observers under the calling user's identity. We do *not* want to drop
calling identity in the call() processing; we want the table-based
permission checks at the point of the underlying db operations to be
performed against that identity.
Bug 7265610
Change-Id: Ie0c9331ebd0918262a0a32b5b03b876fc2a92ca3
If the panel was left open when the screen was turned off,
in some cases it might get stuck in an "open" state (the
panel's expanded height would be nonzero) although the
status bar window is in fact fully collapsed (due to
makeExpandedInvisible). The next time the user would go to
open the panel, things would be in an inconsistent state and
the panel wouldn't come down (on phones, the settings panel
would be attempted, but still nothing would happen).
This was easiest to reproduce on the keyguard (turn on
screen, pull down panel, turn off screen).
Bug: 7260868
Change-Id: Iec0000ba020e5a519eb5b4d42ac273b6689a18bd
Existing primary users were never being marked as complete,
causing things that relied on this (e.g. showing the quick settings panel)
to break.
Bug:7282088
Change-Id: I9c8622f3cd0fb99a44477946d3db22fa2cbbc6fc
Reduce reliance on Service interface overrides, instead
steering clients to the DreamService-specific lifecycle
hooks:
onAttachedToWindow .. onDreamingStarted ..
onDreamingStopped .. onDetachedFromWindow
The old Dream.java is finally gone now too.
Bug: 7281802
Change-Id: Ib7802c3397fde60ad1132fa49831da182eef4d7a
Pro tem, we ignore wifi configuration data when restoring system settings.
This is not ideal, but it *does* mean we do not bounce wifi off and on
again during the extended restore process, which in turn means we don't
interfere with things like the Play Store's download of applications.
We do continue to back up wifi configuration, and will start using that
data again when the new implementation that restores AP configurations
without having to bounce wifi comes to pass.
Also, this CL fixes a longstanding bug in BackupDataInput.skipEntityData()
that was being reproduced reliably once settings restore was skipping
the wifi-related entities in the restore stream.
Bug 7249405
Change-Id: I61520a9a116b66ebdf95734d09d9afd46406df01
The write-permission check must occur after any destination-table
rewriting, otherwise any application would be able to write to
any global setting, by supplying a fraudulent "system" namespace
in the uri, but with a key name that will be redirected to global.
Bug 7289965
Change-Id: I122098a64e40d14e00d3cb6608c50aeb74faf7ce
If you need its functionality for testing:
$ adb shell am start -n com.android.systemui/.Somnambulator
Bug: 7267723
Change-Id: I9e0dd9d020e251d1ced4377329436ea46c3a8af5
There is now only a single config value pointing
at a list of packages to get certs from. The old
system was a bit confusing.
The fused location provider also now builds
against SDK 17, and the meta data service version
tag was renamed from the overly generic "version"
to "serviceVersion".
Bug: 7242814
Change-Id: I00d27c9cbd5cc31a37bb4a98160435d15a72e19e
The Settings put*() APIs fix up references via the old namespaces,
but the raw insert() interface didn't. Now it does. Also, when
possible we fix up direct query() operations on the old namespace
to point to the correct one. At present that is only done for
query() operations with Uris of the form
content://secure/adb_enabled
There is no rewriting done on queries of the form
content://secure WHERE name='adb_enabled'
since the app-supplied WHERE clause can be arbitrarily complex.
Bug 7267568
Change-Id: I5c8cecbea7f5b1da6247a53b1428d3effb0bbca5
The reason for this is a bit subtle: we want to guarantee that
when a content observer is registered using the public API, it
is *always* bound to the host user's view of the data behind the
observed Uri, never the calling user's. Now, the reason it was
the calling user in the first place is that the Settings provider
(and potentially any singleton provider) needs the observers
underlying Cursors returned from query() to be tied to the caller's
user, not the provider's host user.
In order to accomplish that now that the public-facing behavior is
always tied to the host user, the concrete class that implements
the Cursor type handled by the Settings provider has been extended
with a new hidden API for setting a notification observer tied to
an arbitrary user; and then the provider explicitly downcasts the
query result's Cursor to that class in order to register the
notification observer. We can do this safely because this is platform
code; if we change the way that these underlying cursors are constructed,
we can just fix this point of call to follow along. If they get out
of sync in the future, the Settings provider will scream bloody
murder in the log and throw a crashing exception.
Bug 7231549
Change-Id: I0aaceebb8b4108c56f8b9964ca7f9e698ddd91c8
Ringer mode setting was moved from System to Global group
but a db upgrade cleanup step was missing.
Bug 7128886.
Change-Id: Id20994fe74575afa2b68154a620aa3c8807e8304
Bug 7150006
Single finger notification expansion.
If you liked these changes...
Change Ie4e79aa5
Change I8a6f8606
Change I824937e9
Change I957b6d50
You'll love this one!
Conflicts:
packages/SystemUI/res/values/config.xml
packages/SystemUI/res/values/dimens.xml
Fix notification gestures.
Broken by recent changes to ScaleGestureDetector, which we
were using incorrectly.
Conflicts:
packages/SystemUI/res/values/config.xml
packages/SystemUI/res/values/dimens.xml
Change-Id: Ie534c5b2d320296531a36a9b1c22f9dd6901e0b8