We are updating the printed content asynchronously. If the user cancels
printing before the first update is complete the spooler components are
in a destroyed state but we attempt to handle the completed update resulting
in a crash. Now if printing is cancelled we ignore the update result.
bug:18525491
Change-Id: I1ef47a17de19896cba2c7a1dd2bfc205065e0a5a
The basic principle is: if an app's traffic could possibly go
over a network without the app using the multinetwork APIs (hence
"by default"), then the status bar should show that network's
connectivity.
In the normal case, app traffic only goes over the system's default
network connection, so that's the only network returned.
With a VPN in force, some app traffic may go into the VPN, and thus over
whatever underlying networks the VPN specifies, while other app traffic
may go over the system default network (e.g.: a split-tunnel VPN, or an
app disallowed by the VPN), so the set of networks returned includes the
VPN's underlying networks and the system default.
Specifically:
1. Add a NETWORK_CAPABILITY_VALIDATED bit to NetworkCapabilities.
2. Add a hidden API to retrieve the NetworkCapabilities of
all default networks for a given macro-user.
3. Modify the status bar code that used getActiveNetworkInfo to
determine which network was active, and make it consider all
validated networks instead.
4. Because the set of active networks depends on which VPN app
the user is running, make the status bar re-evaluate the
networking situation when the active user changes.
Bug: 17460017
Change-Id: Ie4965f35fb5936b088e6060ee06e362c22297ab2
Don't clear notification LEDs when seeing notifications on the
lockscreen.
Also fix a bug where the LED didn't continue flashing after
the screen turned off.
For devices with doze capability, ensure that the LED continuing
to flash after screen off doesn't cause an immediate pulses, but
delay the first pulse by 10s.
Bug: 15449039
Change-Id: Id34d51a2c91ceaf069e49add1ab690bb855f9638
Expand SignalClusterView and NetworkController to handle multiple
SIMs. It does this by creating multiple MobileSignalControllers
for each of the active subscriptions on the device.
Also some minor changes for followup on the NetworkController
refactor that went in before this.
Bug: 18222975
Change-Id: Ic7a857cfc5cadb46d51bb9ded0df8187eea799f7
Call a new activity which would handle enabling of tethering on clicking
Tethering tile in Quick Settings.
Bug: 18368949
Change-Id: I4cc2ba01f6fa1ac005ba1dc27b223b5fc5359d35
When creating or renaming files on external storage, sanitize the
requested display names to be valid FAT filenames. This also fixes
a handful of directory traversal bugs.
Also relax logic around generating display names to allow any
extension which maps to the requested MIME type. Tests to verify.
Bug: 18512473, 18504132
Change-Id: I89e632019ee145f53d9d9d2050932f8939a756af
Get the connected rssi for WiFi QS panel from NetworkController to
ensure it matches the status bar/QS.
Bug: 18479823
Change-Id: I82ca0cc9169a91b4e0ae6f07008d48fdb7b820f0
Unfortunately, we don't get a signal when user restrictions such as
for adding new users change. That means the user switcher UI could get
out of sync and showed the add user option when in fact it couldn't add one.
Also cleans up an unused method.
Bug: 18292723
Change-Id: I56f6f848d967d9d1c11bd6262eacbdb11f90cfe2
- Decouple condition requests from expansion, now
pre-request when zen panel unhidden.
- Animate zen mode panel expansion.
- Improve default selection logic, ensure something
is selected as soon as we are in the expanded state.
- Tweak visual spacing.
- Map null condition to Indef properly when we start
out in zen.
- Avoid unnecessary condition teardown when the conditions
are updated but unchanged from current.
- Cap number of optional conditions to display, default=3.
Bug: 18335618
Change-Id: I007b7c3b2e75e2b42805af240684aa8581e9951a
Enumerate all possible reasons for doze pulses, and subdivide
the proxcheck stats (near/far) by reason. Include reason in
doze log when starting a pulse.
Bug: 18373928
Change-Id: I4ebc2df082f51d47e3b2f0cb3999faeb582ef8dc
Listen for ACTION_CLOSE_SYSTEM_DIALOGS for all users so that
apps running in the managed profile can close the notification
shade.
Bug: 18255982
Change-Id: I6b70eb39d182a0766eef24421fae45f033efa9e9
- Make the system internal ringer mode change signal available to
other system components via a standard intent, instead of a
volume-controller-only binder call.
- Update sysui to use new intent for icon policy.
- Add proper muting state to the volumizer, to look more like
the associated volume panel slider.
- Add basic ringer mode state tracking for the notification-ring
slider setting.
Bug: 17899613
Change-Id: Ie2df52edb070055ef59c74039162a0e785d2fdbb
When a notification was updated and we were currently in doze mode,
the views were updated but not all the color filters to make it dark
on it, so we ended up with a colored notification in doze mode.
Bug: 18537470
Change-Id: Ifde70d744a4e04e4c0d13684f3c0088f279f2d78
- Don't limit swipe out velocity
- Make sure we pick up all touch events in VelocityTracker
- When already scrolling and touching again, don't reset scroll
state, so we don't wait for the touch slop again to start
scrolling (this makes it more consistent with ScrollView).
Bug: 18536759
Change-Id: I1d43c77db78beec6d0b8c949e67141a2665de892
Remove last holo references by using the new-style cast connected
icon. There is only one icon for the remote stream, since
it is never muted by policy.
Bug: 18102850
Change-Id: Iffe3a19deca6599780ebdb26869ae46aa8623f81
Ensure we don't call audio manager with STREAM_MASTER, which is
a pseudo-stream value internal to volume panel.
Bug: 18250921
Change-Id: I4b6af9fc60d7683e9103be52cc937c33c1c15e31
- Only update layout params of status bar window when needed
- Do not update security method all the time, only when needed (only
when reset gets called)
- Check for actual used security method when updating states for
bouncer
Bug: 18505838
Change-Id: Ib3d0021c0cc364fa5598e06e0a2bae059ae79cbe
Add a state callback so lockscreen reports back whenever its state
relevant for PhoneWindowManager changed, instead of synchronously
calling into SysUI which can lead to deadlocks. Directly use
LockPatternUtils for isSecure, and optimize the number of calls to
this method to optimize layout performance.
Bug: 17677097
Change-Id: I5d491fc8884d4f84d9562626b9ea0d5eaa5166fc
When exiting doze mode during pulsing and the reason for the wakeup
is a touch event, we calculate the delay of the animations to animate
the notification from black/white to color depending on the point
where the touch happened to wake up the screen.
Bug: 18146441
Change-Id: Ica76b235d629acfc2b09b5f56027c688502f89d8
Stabilize mapping between ringer-mode=silent and zen=priority
by keeping track of two ringer modes:
- Internal ringer mode: Used for underlying stream muting
- External ringer mode: Reported to clients
The mapping between external ringer mode + zen is:
- normal = all
- vibrate = all
- silent = priority (read-write) or none (read)
Changes include:
- Remove "zen check" from audio service, back to audio
service having no knowledge of zen.
- Maintain a new external ringer mode in audio service,
this is the ringer mode reported through AudioManager
to callers, also mapped to the change intent.
- Introduce a "ringer mode delegate" to the local
audio manager interface, responsible for observing
external / internal mode changes, and making changes
if necessary.
- Internal ringer mode changes are still interesting
to the volume dialog, wire up a callback through
the existing IVolumeController interface.
- On devices without vibration, the mapping is the same
but since no ringer mode change is possible, disable
the icon toggle and remove the mute icon when volume=0.
- On devices with vibration, volume down presses should
pulse the vibrate icon (and vibrate) as a hint that this
is as low as the device can go using the keys. Since
the mechanics are similar to the existing zen=none hint,
pull into shared helper.
- Log ringer mode changes to the zen log, include calling
package information for issue diagnosis.
- Include whether vibration is supported in the audio service
dump.
- Update the status bar icon policy to use the internal ringer
mode, not the external mode (for vibrate icon).
- Update the "Muted by <x>" logic, include current suppressor
in dumpsys, ensure suppression icon is enabled & !clickable,
regardless of zen mode.
Bug: 17884168
Bug: 15471679
Bug: 16824970
Change-Id: Ia7d3bb23ce6d1e37b24fb6521d1c1ab9bb8f60c0