* New "X" button appears in the system bar, allowing the
user to clear all notifications. Only appears when the
notifications list is showing and there are clearable
items. (Note: the textual button on phones has also been
replaced with an X.)
* Updated panel background artwork and positioning.
* Removed a bunch of old art.
Bug: 4970588
Bug: 4974043
Bug: 3509407 (regression)
Change-Id: Ibadb638cd18c4faa751cd1f311d73ceda65cb3ca
Nice to not load 4MB bitmaps in the system process.
Also, hey, with how we are now scrolling the surface instead of
the bitmap, there is no reason to keep that 4MB bitmap loaded in
to memory. So don't.
Unfortunately it looks like for some reason the VM is still
holding on to the bitmap. I'll need to figure out why. Later.
Change-Id: Ib3503756144502fc5c8d5e294248c2417c4fe8c8
Combined volume panel only in tablets. On phones show active volume.
Added dummy assets for ring+notification icon.
Deprecated the NOTIFICATION_USES_RING_VOLUME. Now they are always
tied together. Audio manager changes still required to ensure that.
Initialize all feedback sounds to true.
Change-Id: I3ad7890c9be9334eedb5f3b709a4b6995fe24638
When the "ongoing"/"latest" split is removed, this will be
replaced with something less odious.
Bug: 5090331
Change-Id: Ib804de66985ff5f5df2e1df3c85437a1e31f1c49
Specifically, we now also require the current password to confirm any
restore operation.
Bug 4901637
Change-Id: I39ecce7837f70cd05778cb7e0e6390ad8f6fe3f3
If the user has supplied a backup password in Settings, that password
is validated during the full backup process and is used as an encryption
key for encoding the backed-up data itself. This is the fundamental
mechanism whereby users can secure their data even against malicious
parties getting physical unlocked access to their device.
Technically the user-supplied password is not used as the encryption
key for the backed-up data itself. What is actually done is that a
random key is generated to use as the raw encryption key. THAT key,
in turn, is encrypted with the user-supplied password (after random
salting and key expansion with PBKDF2). The encrypted master key
and a checksum are stored in the backup header. At restore time,
the user supplies their password, which allows the system to decrypt
the master key, which in turn allows the decryption of the backup
data itself.
The checksum is part of the archive in order to permit validation
of the user-supplied password. The checksum is the result of running
the user-supplied password through PBKDF2 with a randomly selected
salt. At restore time, the proposed password is run through PBKDF2
with the salt described by the archive header. If the result does
not match the archive's stated checksum, then the user has supplied
the wrong decryption password.
Also, suppress backup consideration for a few packages whose
data is either nonexistent or inapplicable across devices or
factory reset operations.
Bug 4901637
Change-Id: Id0cc9d0fdfc046602b129f273d48e23b7a14df36
View.setSystemUiVisibility() now properly accepts a
bitfield, including:
* SYSTEM_UI_FLAG_LOW_PROFILE: "lights out mode"
(previously known, erroneously, as STATUS_BAR_HIDDEN)
* SYSTEM_UI_FLAG_HIDE_NAVIGATION: for when you need every
single pixel on a device that also has a navigation bar
These flags are painstakingly aggregated across the entire
view hierarchy and carefully delivered to the status bar
service, which in turn gently passes them along to the bar
implementation.
To really get access to the whole screen, you need to use
HIDE_NAVIGATION in conjunction with FLAG_FULLSCREEN and
FLAG_LAYOUT_IN_SCREEN. See development/samples/Overscan for
an example of how to do this.
Change-Id: I5fbfe009d9ceebbbf71db73f14a7008ea7c1d4da
1. Update the database creation/upgrade code to take care of the new setting
to enable touch exploration.
2. Made the tocuh exploration settings persistent to the cloud.
Change-Id: Ie24e9184b4a21869432d11d207cb6464fadbac3b
Teach NetworkPolicy limits to "snooze" when requested by user, and
notify with both dialog and notification. Register for network alerts
through NMS to trigger updates immediately instead of waiting for
next stats update.
Enforce that all NetworkPolicy are unique on a template basis, and
move SCREEN_ON/OFF broadcasts to background thread. Launch SystemUI
and Settings directly instead of using actions, and include full
NetworkTemplate in extras.
Tests to verify notification and snooze behavior.
Bug: 5057979, 5023579, 4723336, 5045721
Change-Id: I03724beff94a7c0547cb5220431ba8d4cd44d077
Otherwise the value would be left at zero since we are inserting
the database record before writing the file
Bug: 5064246
Change-Id: I54be6ff14a7f170994aaf586aaddb06c5b746e89
Signed-off-by: Mike Lockwood <lockwood@android.com>
The built-in ZipFile class was quite a long time to find an unpack
libraries. Move everything to using the libutils ZipFileRO class that
goes quite a bit faster. Initial measurements are 6 times faster than
the Java code.
Also, read files off the disk and compare their CRC against the APK's
CRC to see if we need to write the new file to disk. This also cuts down
the bootup time by up to a second per APK that has native files.
Change-Id: Ic464a7969a17368fb6a6b81d026888c4136c7603
That is, only play it when the device is running on battery
and the remaining charge level descends into a new
low-battery regime:
* when the device hits the first threshold, for example 15%
(the dialog is first shown at this time)
* when the device hits the second threshold, e.g. 4% (the
dialog will be redisplayed if necessary)
* when the device has been charging but AC power is removed,
returning the device to a low-battery regime (the dialog
will be redisplayed if necessary)
The sound will no longer be replayed as the battery level
descends within these regimes (say, 4% --> 3%).
Bug: 4981280
Change-Id: I049d60f39ae556241a23f8664e61be3d70d937e5
The signal strength, network type & flow indicator, and
battery have all been moved out of the policy and into the
status bar implementation itself, mirroring the change on
tablets. This means that they no longer use status bar icon
slots but instead are bespoke layouts and views.
GPS has also been removed and will return as a notification
(again, as was done in the Honeycomb tablet UI).
Bug: 4691638
Change-Id: I60df4871209b64209bfc5b3bf398651cc2e77b24
The input reader needs this information so that it knows how to
interpolate touches on an external touch screen.
Changed Display so that it asks the WindowManager what the real
display size is (as opposed to the raw display size). This means
it now takes into the forced display size set by
adb shell am display-size.
Replaced all calls to getRealWidth() / getRealHeight() /
getRealMetrics() in the WindowManager and replaced them with direct
usages of the mCurDisplayWidth / mCurDisplayHeight so that the WM
doesn't end up making a reentrant Binder call into itself.
Fixed the table status bar HeightReceiver so that it updates the
height on all configuration changes since it is possible that the
display size changed independently of an external HDMI display
being plugged / unplugged.
Improved the Display class documentation to make the distinctions
betweeen the various sizes clearer.
Change-Id: I3f75de559d3ebffed532ab46c4ae52c5e7f1da2b