- 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 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
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
For usage tracking purposes, seeing a setting value of 1 is always
considered trackable.
However, only consider a setting value of 0 as trackable if we've
observed a change (from 1). Avoids tracking a db update from null
to 0 (via settings cmd or a restore).
Bug: 18062541
Change-Id: Ic8413b1770040f9ef28041bbadb4e5fb62d1c014