(Unless the notification specifies no ringtone AND no
vibration, in which case it will remain silent.)
Change-Id: I926d0fe0165b9622cd117e6c3ef6e3637772b444
Bug: 7490028
Otherwise notifications such as the USB debugging and OTA notifications will be
dismissed when any user is stopped.
Change-Id: I0ae0c1136a999dd3aade99ca9e71c714b359eab4
Currently, installd doesn't correctly evict VFS cache entries for
FUSE emulated external storage. This means zygote processes have an
inconsistent view of the FUSE daemon when the system rapidly
recycles user IDs.
To work around this, only consider recycling a user ID after its
VFS cache entries have expired. The emulated storage FUSE daemon
currently uses a 'entry_valid' timeout of 10 seconds.
Bug: 7407902
Change-Id: Id80cbdd2215d8456467fb31e4c209ca12a505e16
Geofences are broken in multiuser, and need to be fixed before
reenabling the feature for secondary users.
Change-Id: Ief3008a294deed47760ee25efcf1cdef5371b038
Process the location of the fence as soon as it is added.
Clarified how the distance to the fence was being used.
Added more debug logs (disabled by default).
Fixed a numerical overflow in the location request if the
distance to the border of the nearest fence was greater
than about 2000Km.
Removed a useless call to request location updates passively
when the geofence manager is initialized. We have no need
of location updates unless there are active geofences.
The effect of this call was undone the next time the location
request was updated anyhow.
Changed the location request to always request a fastest update
interval of 0 which accomplishes the goal of passively
monitoring all updates. This does not increase the power
consumption because we are conservative about choosing
a minimum location update interval. We're simply stating
that the geofence manager is willing to handle a higher
report rate which is very important.
Subject location to a "freshness test" - only use relatively
recent locations for geofence testing.
Run all geofence updates on the handler and avoid making
multiple redundant calls into the location manager when
updating the provider requirements.
Ensure that we update geofences correctly even if we don't
know the initial location of the device at the time the
geofence is created.
Pin update interval value to the range [1m..2hr].
Distance to fence is now distance to fence's border, not
distance to fence's centre.
Bug: 7466334
Change-Id: I28e571ecfc508d5ceb9bb2afcabaaf05abb26369
This adds a means of determining when the device is in safe mode,
as required by keyguard to disabled some features.
Change-Id: I31d357e6738c92e1837f9e0263e5f3f4de66315a
* commit '00b5ed8fa9f2f38e15894519f3afeaae56e97e94': (21 commits)
Clearing connected message in stop fixes 7401152
bouncer: hide more text and frame less.
Recover from badly behaving 3rd party secure cameras.
Show bouncer mode for Slide mode in keyguard if widget isn't expanded
Making challenge come back if within the same gesture you return to the original page (issue 7422999)
Ensure edge swiping is enforced immediately upon showing keyguard (issue 7453156)
Fix issue 7468224, make sure to size pages if page changes
If a default keyguard layout isn't specified, fallback to the default layout
Use better signal for camera launch.
Render camera widget on a background thread.
Fully block user interactions when transitioning to camera.
Fixing up overscroll / hints on tablet
Cleaning up the overscroll effect
Updating UI to new design, widget shouldn't expand until page settles (issue 7467435)
Making screen hints just side page outlines, as per new design (issue 7467968)
Clean up separator string in keyguard view
Attempt to fix MENU key issue.
Update DevicePolicyManager documentation with new keyguard flags
Polish user selector accessibility.
Fix pages disappearing (issue 7456885)
...
The gnarly stuff where we keep track of the old input method
window as if it was still there was sitting around leaving things
in a stuck state. Now we clear this out at key points in the
window manager (freezing screen, user change), and the input
method manager service is less aggressive about asking the window
manager to do it.
Also fixed a problem that was causing flickers during some
wallpaper transitions -- when we are animating two things on
top of the wallpaper and one of them disappears, we need to
make sure the wallpaper target points to whatever the current
target should be (if any), not left pointing to the old target
that has gone away.
Change-Id: I2fb9600f569a5bd5e3528aaf24cde9340af56cb0
* commit '841ce670b29180a157a084a9c0e803b13e92020c': (26 commits)
hide the correct text, and more text, on bounce
Improve PIN key layouts.
Obscure speech for PIN password keys when no headset plugged in.
Initial changes to allow dropping on delete target to remove widget.
hide multiuser selector when IME is up.
Block swipe up gesture if challenge non-interactive.
Properly disable challenge handle.
Disable disable back if using an alternate back icon.
Disable security handle when swiping into camera widget.
Import translations. DO NOT MERGE
Fix small issue with previous CL
Widget size policy, size callbacks
Don't show security method until we actually return from the camera
Fix whitespace problem and sync with prototype.
PUK support.
Fix build.
SIM PIN support.
Use clock's widget as the default keyguard widget
Add configurable em-dash separator for all concatenated keyguard strings
Cleaning up keyguard persistence threads when the pager is detached. (Bug 7460991)
...
...lockscreen sometimes and remains black / blank
The problem was that we were using the animation-side wallpaper state
in cases where it was not updated yet.
The mWallpaperTarget variable is propagated over to the animation
side when the main window manager state updates. On the animation
side, this is used by hideWallpapersLocked() to determine if the
current wallpaper should be hidden.
The problem is that various paths to hideWallpapersLocked() can
come from the layout side of the window manager instead of the
animation side. This causes the problem here because in this case
the wallpaper state may not have yet been propagated to the
animation side, so it could incorrectly decide to hide the wallpaper
because it thinks there is not a target when in fact a target is
set in the layout side. This won't get fixed until some time way
later that the layout side decides that a new window is being shown
that may need to have the wallpaper shown.
The fix here is pretty gross, but as safe as possible -- the
hideWallpapersLocked() function now uses either the animation or
layout wallpaper state depending on where the call to it is coming
from.
Change-Id: I9250bfeae6e11c1761760bcc696fdb33fb5c8a5f
Decrement the number of updates after a location fix has been sent to a
a listener. This is necessary for respecting calls such as
requestSingleUpdate().
Bug: 7460868
Change-Id: Iea207ab494b93b936ca434d59652bb2cb6404cef
* commit '39912f7fcd5bfc4943bac1746c3ff2a9f1d93043':
Keyguard sliding challenge - fix overeager touch interception
Addressing comments in 74bdd21629681528dbe7f3ea363d99c8514e026b.
Showing message when max attempts are hit in face unlock fixes b/7306168
Keyguard tablet/portrait fix for HUGE security views
Cancel camera launch on screen off.
Fix launcher flash during secure camera transition.
Updating isShowing during onResume()
Suppressing FUL after going to backup fixes b/7449820
Addressing comments for change c4842c11932ea4f60fe7ae09b0a59660207e1587
Adding a button for expanding the clock screen challenge.
Accessibility support for the lockscreen - phone.
Stripping dead API related to keyguard widgets
FUL being unsuppressed when screen turns off fixes b/7453702
Show the keyboard less aggressively.
Also, if we have no widgets in lockscreen,
reinflate the default widget. If that fails,
inflate the built-in clock (KeyguardStatusView)
Change-Id: I2e90ab0893c993a755700e075e4a8ac5a685e0f2