- 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
A recent change modified the way we destroy the remote renderer from
asynchronous to synchronous. This caused problems since it was possible
that the remote rendering service is unbound while we are reading the
contents of a rendered page. As a result the reader was blocking on I/O
and the print spooler was getting into a locked state that required a
restart of its process. Now the remote renderer is destroyed
asynchronously.
bug:18498626
Change-Id: I1312bf808f30430728b4038dd4be43c55d2be825
At some point Activity started restoring the Toolbar/ActionBar title
during onPostCreate(), which would clobber some of the setup we just
finished doing. To fix, move our update to be even later in the
restore lifecycle.
Also fix grid item widths for small screen devices.
Bug: 17428127
Change-Id: I258121b6a6eec5924f92b02290a67d3ae7dd9cf6
Apps delivered as multiple split APKs must have identical package
names, version code, and signatures. However, developers may want
to iterate quickly on a subset of splits without having to increment
the version code, which would require delivery of the entire app.
This change introduces "revision codes" which can vary between
split APKs belonging to the same app. An install is valid as long
as the normal version code is identical across all splits. Splits
can be added/removed to an app over time, but if a split is present
across an upgrade the revision code must not decrease.
Since system apps could have been updated with splits, only revert
to the built-in APKs if the version code is strictly greater than the
data version. Also fix bug to enable inheriting from system apps
when adding splits.
Bug: 18481866
Change-Id: I34d8e14c141a8eb95c33ffe24b4e52d6af5c8260
- Fix that quick settings couldn't be scrolled nor closed on Keyguard
if scrolling was needed.
- Fix jumping in unlock motion when closing both panel and QS
- Fix invalid panel height when closing both QS and panel
Bug: 18481668
Change-Id: Ifd12e29bbc64f72f0dc13b43e36b1a57df7524fa
GCM can call reportInetCondition() at any time which can cause
the NetworkMonitor to transition states to reevaluate at any time.
Previously we were only listening for users clicking the sign-in
notificaiton or completing sign-in when in the appropriate state.
With this change NetworkMonitor's state does not stop us from
listening for the user's actions.
bug:17917929
Change-Id: Ic1da31d90f7090e5fc111874cb7c37d505aaf590
Such networks do not have a WifiConfiguration and need to be matched
by SSID.
Note a subtle difference with platform settings: in platform settings,
selecting an ephemeral network saves it for future use. That feels out
of place here, where normally clicking on the connected network does
nothing.
Bug: 18489098
Change-Id: I6aebd14054af47f078ffd8d754668817dff90436
1. Available printers are provided by a loader driven by the activity
lifecycle. After a rotation of an app that does not handle rotation
the print activity is destroyed in a delayed fashion. When another
print task is started the loader of the destroed activity gets two
cancellations, one when the activity is stopped and one when it is
destroyed but when the second cancellation happens the loader has a
bad state that it is loading while it is not and a NPE occurs.
2. If a rotation happens early before the print activity is fully initialized
(there are asyncrconous operations that take place) we get a NPE as
the print preview controller is not created yet.
3. A lockup of the print preview process occurs if the print print
activity is destroyed after we initiated binding to the rendering
service but before we receive the remote interface. In this case no
remote service is received as exepcted since we already unbound from
it resulting in a missed signal.
bug:18238590
Change-Id: I81817d81702f649ded97dfbab7d7bba28f22fa91
This will remove the need for having all the null checks in TaskStackView.
We also remove the check when launching tasks (the fail case is worse
when the activity fails to load). And the CL also fix the header focus
animation, and an issue with tasks not getting laid out when the stack is
set again.
Change-Id: I9b4cd50d76f72ba3d16dd1b8e2d9bbf9f1f24d2b
There are 3 types of users
1. Primary - device will be wiped
2. Managed profile - profile will be removed
3. Secondary user - user will be removed
Show different messages for almost wipe and wipe in each
of these 3 cases.
Bug: 16843155
Change-Id: Icecfe520622773da9e45465bf2217e8ed38b266e
The 24 hour setting was not respected correctly. Also
fixed a bug where the next alarm would not display itself
in the QS panel.
Bug: 16239208
Change-Id: I89734f783912dead5831db49db53fba04dbf54ee
This reverts commit cba0faadbe1c8cf7c6b264b761d747f7381a2f93
with change id I416beb82156787e61ee1f59b6726fd702f135f68.
It keeps the fix preventing us from reclipping already loaded
bitmaps.
Bug: 18350670
Change-Id: I0562d38d2a6eb0b715adcd4ca77512f2cbedd320
Use new telephony APIs.
Clean up SIM state machine code.
Use cached copy of SubscriptionInfo.
Make SIM PIN and SIM PUK work.
Tested on single and multi-SIM devices.
Fixes bug 18147652
Change-Id: Ic69a4d2898999a5438e6a70b5851705bc05443f1