If a layout has already been requested when we want to show the
correct widget pane, post the event for later and immediately return.
This works because PagedView has some interesting ideas about
maintaining a consistent state. It will attempt to recalculate the
current page position during measurement, but thanks to a reliance on
this measurement to establish scrolling boundaries that scrollTo uses
for clamping plus other code that depends on the idea that it can add
a new widget pane view and immediately scroll to it, this attempt to
scroll fails if the target page was added and measurement is not yet
complete. This patch ensures we don't hit these edge cases in a few
known ways.
While this ends things in the correct state, it predictably has a few
visual artifacts. Situations where things would completely fail
before, positioning pages incorrectly or fading out wrong pages now
will briefly flash and fade the widget frames or in some cases will
visibly animate from the starting page to the correct one. We should
address these issues in a future release.
Bug 11217368
Bug 9760604
Change-Id: I989d03b5bfdd5b6403a6b67a8aae7585ca0c8ae0
This fixes an issue where keyguard isn't showing but tells
PhoneWindowManager to wait anyway. The fix is to send a null token
when keyguard isn't showing.
Fixes bug 11216030
Change-Id: I4985fe50c63819415d9d5a1de0b741c8aa6391d8
This fixes a bug where the clock would appear to move when flinging
the camera widget while warping. To accomplish this, it no longer
scrolls while warping but rather updates the warp view's translationX.
When the finger is released or a fling happens, we either smoothly
animate the view back (without scrolling) or update the scroll position
and let the scroller take over the animation.
Fixes bug 11191094
Change-Id: I33f087cf4fb2ec31db11d69d11055b513604b1d1
This fixes a problem where the warp page was remaining onscreen due to a
race between the animation completing and releasing the finger. The fix
is to track when the page is onscreen or when the warp is still animating
to ensure we hide it when we're done.
Change-Id: Ie53c65d276032da16cd42ec84b23ae812fc7e2eb
Decrease margin between elements to allow the transport controls to
fully fit within the space allotted on some devices. This prevents
unwanted resizing and shuffling when the challenge is swiped downward
to make more room for the current widget page.
Also remove some unused views from features not currently supported.
Bug 11158270
Change-Id: Id5b19a9399760e291495a16def315c7ad6437450
Maintain a stable/predictable button layout when a remote control
client shows or hides specific transport control buttons.
Bug 11195246
Change-Id: I0e745150127c5e354ed2752c379e05ea8e0bd33d
This fixes a problem where PhoneWindowManager times out waiting
for keyguard to draw when it's disabled. Instead, we pass a null
token back which allows PhoneWindowManager to continue.
Fixes bug 11190932
Change-Id: I041ea1d88dca681476d9477a3aab54559976b312
Disable the wallpaper when showing a full-screen custom keyguard
background, e.g. artwork from the RemoteController. This has two nice
effects:
* The wallpaper doesn't visibly "leak" as the keyguard is dismissed
and fades out
* We save an extra compositing/overdraw step when drawing custom
backgrounds
Bug 11172944
Change-Id: Id635dcea6b48392f841c9c549327bccff3308c0a
- better timing
- animate warp back when finger is released.
- Improve on/off screen animation for warped view
- Re-use existing constants for consistent timing.
- Hide the challenge area when the camera page is settling.
- Reduce jank when camera page starts snap transition.
- Prevent warping from going to previous page
- Smoothly blend between PagedView and Warp animations when scrolling starts.
Bug 10991981
Change-Id: I84822790a040a2ce2dcea60a9486f01df9cff105
The KGHV now plumbs insets information down into the camera
so that it can leave space for the navigation bar if the KG
window happens to extend underneath it. The camera widget
preview must therefore be rendered to fit the size of the
smaller inset content area, which means there's now a hole
at the bottom; we fill this bottom area during animation
with a fake navigation bar: a black view occupying the area
underneath the real navbar.
Bug: 11048015
Change-Id: Ia23b62e155686ad9f17a25ccc14f6c97b53dafea
The requirement that a window that is invisible will not be drawn is
incorrect. In particular the test fails before a surface has even been
added (mHasSurface == false) or shown (mPolicyVisibility == false).
This was causing the screen to turn on before Keyguard had been drawn
and exposing surfaces that would have normally remained hidden.
Also, don't pass null into KeyguardServiceDelegate.onShown() or we
will immediately turn the screen on before Keyguard is drawn.
Fixes bug 11062635.
Change-Id: I964c7ef186d0a94678020b9c27ca6b79e5433350
This disables showing the camera and search buttons in the
navbar while SIM, PUK and Account security screens are showing.
Fixes bug 10991981
Change-Id: Ic64adc079685948f8c1114dbdefa42a671948350
Plumb through the necessary API features through Drawables and
ImageView but leave it hidden for now pending future API review and
plumbing through the rest of the framework Drawable implementations.
Update SeekBar assets used for keyguard transport control.
Set selected status directly instead of finding views by id.
Bug 10531608
Bug 10784913
Change-Id: Ia38bd04ad1bc26e9e6da1dda8a374c9ba3ceccb3