[go: nahoru, domu]

History log of /frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
399d21e37c83fc543668880ff28e929d47c7629d 18-May-2016 Winson <winsonc@google.com> Tweaking layout to make two-task stacks to closer match design.

- In the small-stack cases, set the initial state to top-align the
back-most task. In addition to offsetting the position, ensure that
the dim for the back-most task is offset by this new position.
- Fixing issue with wrong return value when update insets.
- Fixing issue where tasks disappear after rotating while scrolling the
stack, due to the scrollering setting the stack scroll to an invalid
scroll position in the new layout in the new orientation.

Bug: 27859654
Change-Id: Ia4aaa3fe445032493c94a8dee7f6fea33bee36ec
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
61560f065a334343d9c552796e1c702f4dfb664b 03-May-2016 Winson <winsonc@google.com> Fixes several animation issues related to a dismissing task.

- Previously we did not properly cancel the animations when the user
interacted with the stack while a task was being dismissed. Now, on
touch down, we only cancel the non-dismissing tasks, and in doing so,
set their task override if there is a dismissing task (so that the
stack can scroll correctly), and update the surrounding task views
if the dismiss update comes from the currently dismissing task.
(or in other words, the surrounding task animations will only be a
function of the current task being dismissed)

Bug: 28448670
Change-Id: If7b8ed3f1fe342114ae0f6dd9dbff0d48204f31e
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
60df24648e7ce6293124256ea565615f88df3c38 24-Apr-2016 Winson <winsonc@google.com> Fixing animation regression due to ag/957220.

- Ensure we clear deferred relayouts after finishing all animations in
case they trigger a deferred layout in the animation-end callback.

Bug: 28287904
Change-Id: I6d71328fb3dc4595ea67ee18cfa57d85d741e6c6
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
eca47ef813c49c8d8cee2cdc93c296bbc59ed73b 22-Apr-2016 Winson <winsonc@google.com> Fixing issue with swipe-dismiss animation clobbering home animation.

- Finish all dismiss animations when a dismiss-to-home animation is
started, and prevent lingering deferred layout animation requests
from running as they will be overwritten anyways.

Bug: 28287904
Change-Id: Ie40c66c0f25705b56f6808607d2b7b8ae4e5a112
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
fc48b072e8caa62849ee305f89f38d248d4a1ded 21-Apr-2016 Winson <winsonc@google.com> Caching the display rect to reduce binder calls.

- Only update the display rect and orientation on configuration change.

Bug: 28122871
Change-Id: I2e87e7643902d5f45ac4a311109f5e1870f48d3b
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
db21bbd2caf05322864f09ec45a0c572cf071123 19-Apr-2016 Jorim Jaggi <jjaggi@google.com> Fix wrong transition when recents is growing when entering

Bug: 27855229
Change-Id: I050305d16df6fe53abf5e74e1f9ee6c882dd7ead
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
25160db73f37619a26a3d87a06625925d881b0fd 19-Apr-2016 Jorim Jaggi <jjaggi@google.com> Optimize some binder calls when recents configuration changes

Bug: 28122871
Change-Id: I54249428792c3ad4b3b6d3dcc0f405675b3b23b4
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
3664426dcf3a603a52d630a74f3caef9da682457 18-Apr-2016 Winson <winsonc@google.com> Fixing animation spec animation problem.

- We were always using the stack layout to get the task transforms, but
when we are animating to a given task position (ie. hitting recents
while the home->recents transition is happening), we would start the
animation with the final task rect, instead of the current task rect.
Instead, use the current transform of the task view, and transform
that to screen coordinates and use it.

Bug: 27154882
Change-Id: I25af8fad97ee78669c952dd81708e6cee5dfab05
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
19ecc8ce2d8ca5d27e8098521c9668b7882d271c 16-Apr-2016 Winson <winsonc@google.com> Fixing issue with gap between task views.

- Now that we changed the way the landscape tasks clipped, we no longer
have to worry about the aspect ratio scaled height.

Bug: 27921659
Change-Id: I86b10805e92decb9995caa3790649f9f7d211784
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
d2a030613154e2007d9816e090c39e9726e7adba 15-Apr-2016 Winson <winsonc@google.com> Adding desired undocking animation.

- Separating task binding from task data updating
- Removing unused parameters

Bug: 27154882
Change-Id: Ia970597d57857a74b5d008e91a93703d8fb70c1e
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
67c79578f94646bade5d336af0d4491179c1b37d 13-Apr-2016 Winson <winsonc@google.com> Fixing various layout issues when docking

- Fixing regression where we were scrolling to front immediately on
dragging-to-dock a task, we should only scroll to the front on
configuration change.
- Accounting for the inset when calculating the final stack bounds
(similar to b/27921362)
- Fixing issue with task views being clipped as user drags a view due
to the bounds of the view changing. We manually now set the frame on
the view to the current stack task bounds.
- Simplifying calls to animate the task view bounds
- Removing old instance state code

Change-Id: I17d3e33e159ff250c11a504ef87558051926a974
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
da8d2285e59fc57361308a3c59b32b9dd7d406aa 12-Apr-2016 Winson <winsonc@google.com> Fixing issue with scrolling tasks upwards

- When scrolling the stack away from the task overrides, we should
actually lock the stack scroll and instead apply the changes in scroll
to the override tasks.

Bug: 27376567
Change-Id: Idd1874ab0f6f5eb273bf6e9623b84277961f4291
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
d72c315d5eed3a684eee303364b97129cb821689 06-Apr-2016 Winson <winsonc@google.com> Adding more logging of the state to the bug report.

Bug: 28009206
Change-Id: I0efc513bb6fc5ea4c9724b0a411ca5d60a71f27e
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
aeb298c4db913b376fb6053ec30c132a93e04635 05-Apr-2016 Winson <winsonc@google.com> Fixing bad regression in alt-tab layout.

- Removing the notion of drawing the task header thumbnail on preload.
This would not work because we could not know the stack state until
showRecents() is actually called. Instead, we keep a cached thumbnail
bitmap that we draw into when we start the activity, which is only
updated when the layout changes.
- Ensuring that with the smaller task views in the focused layout
overlap and do not show a gap between them (this was introduced when
the task views were made smaller to show more of the task behind it)
- Ensure that both alt-tab and paging both default to focused state
- Always reset the stack layout to clear the task overrides so that
we don’t inadvertently get overrides when alt-tabbing

Bug: 28014191
Change-Id: Ibc93597e9c027ce5abd65a8b77c0628864814c9b
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
500ba75c9a53786ce3f60a9cd985b6cc29eb665d 30-Mar-2016 Winson <winsonc@google.com> Disabling the nav bar scrim when Recents is docked.

Bug: 27869246

Change-Id: I554b299c7e577f40811fc02d6ff4a46313ff1622
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
dec4430d52f038148f53a9df9958e3553c8a5216 01-Apr-2016 Winson <winsonc@google.com> Always force update the transform when calling from RecentsImpl.

- Workaround for crash in RecentsImpl where we could be retrieving the
transform for a task that is not at the front of the stack (can happen
if time changes, etc.) However, since we only use the size for the
transition, we can always force-update the transform.

Bug: 27849282
Change-Id: I86eee4c158748e4f13a2daeac5cf040c0874f967
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
3b6ba1ab144c53752841869627a1b9f6d357c404 22-Mar-2016 Winson <winsonc@google.com> Adding clear-all button.

Change-Id: Ife637438b191c4a5004f3c6551bc75691e8e426b
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
c69249fd6f30398780342baed8752ef0eeff7d22 28-Mar-2016 Winson <winsonc@google.com> Fixing regression in recents entrance animation when docking app

- Merged the two identical launch state flags
- Only relaying out task views if the bounds have changed
- Always setting the task transform instead of the view properties
directly

Bug: 27859626
Change-Id: I2571c1660820e21fde87ef82808098809b4d3c24
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
619e40cd56266a362ab7da80cb9e4eba6c33b204 26-Mar-2016 Winson <winsonc@google.com> Fix config change layout. (Part 2)

- Fixing issue where the initial state was not correct after rotating
the screen. We needed to update the layout, but that could only be
done after the task stack view is laid out. Now we set a flag to
update the initial state of the layout on configuration change, and
only scrolling to the front when it makes sense.

Change-Id: I2586b90d1e869708b97bcd1a4446f4d87fa521cc
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
a1ededd056d51532ab18354f17f8065ec1134535 25-Mar-2016 Winson <winsonc@google.com> Launch state/config change audit. (Part 1)

- Fixing issue with onResume logic being run even when the window focus
is changing. This only needs to be run when we are launching into
Recents again.
- Removed a bunch of launch state flags that are no longer necessary
because of changes to configuration handling. This reduces the work
that we have to do on resize, etc.
- Decoupled the resume with the stack-update, which fixes a couple
issues where we were updating the layout unexpectedly.
- Fixed an issue where we were not updating the nav bar scrims on
configuration change
- Fixing margin start/end regression in header bar
- Fixing small issue with paddings being scaled beyond their base size
- Fixing issue where the clip state was not properly getting reset
causing lots of overdraw.

Change-Id: I9aeb191a99ff23807b3f5d905f6480b10157a060
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
217009356efa2b854ab3981dff8d315a0d679c73 25-Mar-2016 Winson <winsonc@google.com> Don’t scale task thumbnails.

- Changing task view thumbnail layout. In portrait, scale the thumbnail
to width for portrait screenshots, and apply the same scale to
landscape screenshots. In landscape, scale screenshots up to 1:1, and
tweak the app transition to clip the sides instead of scaling.
In both orientations, fill with the background color in the remaining
space.
- Moving some resources related to the title bar to be calculated
programmatically so that we can have different header bar sizes which
completely overlap the action bar in the screenshot in each
orientation.
- Constraining the task stack width in landscape to portrait

Bug: 27504677
Change-Id: Ic9b6fdde6dd728d9f2d20a8b89c05b3a350edfbf
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
f8597b2aef7c52f8bbf3715f42b33f70cee0b81e 24-Mar-2016 Winson <winsonc@google.com> Tweaking scroll-to-launch task animation.

- Always scroll so that the launch task is focused

Change-Id: I84516d0799ad0b308cfa458f4ce79c82acc48f51
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
8f6ee48225ad1cdf966c8f406c85113b13833c7b 19-Mar-2016 Winson <winsonc@google.com> Completely removing dead code related to history view.

- This CL repurposes the history button above the stack to a more
generic “stack action” button in preparation for a future change.

Bug: 27742174
Change-Id: I1da274bf88c77bdc09d91072683b2ea7ca022432
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
008ee15fe82c8216e8e4f67e3032de468cc6c92a 19-Mar-2016 Winson <winsonc@google.com> Completely removing dead code related to search widget.

Bug: 27742174
Change-Id: Ie478c562f6152338417aca5262b7f33ee4ca7ed5
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
59924fe0d9136cf349759bea1e06b661603f95fe 17-Mar-2016 Winson <winsonc@google.com> Iterating on stack layout

- Tweaking initial layout to show more of the next task
- Bounding the width of the stack to the smallest display edge length
- Fixing issue where the screen pinning button was not shown when
entering recents from home, and the task view clip state was not
restored correctly for tasks in front of the launch task.
- Fixing issue where there was no alpha during the transition to/from
home
- Refactoring and removing unused dimens, and moved remaining layout
calculation logic out of RecentsConfiguration.
- Fixing small regression in finding task anchor scroll points. This
caused tasks to be animated strangely when swiping to dismiss and
the task had an override task progress.
- Fixing several regressions in drag and drop due to override progresses

Change-Id: I1eac1dcea19e502bc7fe6362011b38977e3f3d6d
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
809a5b128d20368ca24b974521ba88e7bd0eba99 10-Mar-2016 Winson <winsonc@google.com> Fix regression when setting initial offset when docked.

Change-Id: Ide8e9eb2d97b5540186736fc73b093e4385613bd
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
73492c5d7a5fdc19cfda750e4476d3188aca414e 10-Mar-2016 Winson <winsonc@google.com> Fixing issue with animations not being cancelled.

Bug: 27533931
Change-Id: I724643ec8a2c6cdaa3cade72ae40abcf9d28bae5
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
12cb920ebacaba0b70535b1a0a98c4c18ad04a94 05-Mar-2016 Winson <winsonc@google.com> Preventing users from over scrolling too far.

- Also tweaking the second part of the unfocused curve to make it more
linear to touch.

Bug: 27478701
Bug: 27376567

Change-Id: If187ea333579221ef24986d8d37d0606e50ab7bc
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
8873754f66527d2cc9feab295dd4eef23298212a 17-Feb-2016 Winson <winsonc@google.com> Refactoring to update stack in onResume.

This CL fixes a long-standing issue in which Recents is not updated
correctly if it is not completely hidden and shown. In particular, it
would cause animation issues when launching into a non-fullscreen
activity or if the user quickly toggles between recent tasks. It
contains several fixes:

- The visual state in Recents is no longer reset until the activity is
fully hidden (onStop() is called), and the task stack state is saved
allowing us to return to the same initial state. When restarting the
activity, we propagate whether the activity was hidden down the view
hierarchy, so that each task can decide whether to reset itself.
- When the recents activity is started, we now merge the new stack with
the current stack instead of replacing it completely. This unifies
the logic when dismissing multi-window while Recents is open, and this
CL fixes an issue with the merging where onStackTaskAdded() was called
before the stack was updated with the new task. As a result of this
change, we can just rebind the task views without having to return and
pick them up from the view pool.
- This CL also fixes an issue with flashing when the screen turns off.
The activity onStop() can be called before the activity is fully
hidden, which would trigger a reset(), which would return all views to
the pool.

Bug: 23815609
Bug: 25411120
Bug: 27186407
Change-Id: I83d74c947f9b47766d6778b7f5c421bb6df833e9
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
8f97c83b2eec19965782edcaa9fedad43db2d06f 04-Mar-2016 Winson <winsonc@google.com> Use the non-override task progress for calculating the z.

- This guarantees that they won’t collide, where as the override task
progresses will as tasks animate while dragging to dismiss.

Change-Id: I25eded22c13b38428d849062c6d95893f3fff5c5
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
e693aafe0511c2a7ffc571b22abeefba44046225 01-Mar-2016 Winson <winsonc@google.com> Disabling timer

- Disabling the timer by default
- Adding flag to enable/disable paging (disabled by default). When
disabled, the second tap will just launch the next task.
- Updating the initial state to put tasks at specific points on the
curve. This allows us to allocate specific space for the front most
tasks, as well as the tasks behind it.
- Removing hardware layer config (no devices targeting N depend on it)
- Fixing issue with the header not having the final dim applied when
transitioning into recents.
- Fixing issue where the stack range would not be reloaded after docking
or undocking a task.

Bug: 27409035

Change-Id: I13a03fba2b1a770f15d0033d43ef4c28415041c9
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
12858a6eaea8ae85e7244bd904e1e31291ceea3c 24-Feb-2016 Winson <winsonc@google.com> Minor tweaks to layout and visuals.

- Constructing max dim paths to be dependent on focused range
- Reducing highlight on tasks
- Making header/icons smaller

Change-Id: Ia7cf8b996428012e9619a640e178b4b42e094d68
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
66474134a7dfaf2e63946e2d021dc162365f3a90 24-Feb-2016 Winson <winsonc@google.com> Improving transition from paging to stack.

- When we start scrolling, project the tasks onto the unfocused curve,
then reduce the offsets from the projected task indices back to the
normal indices as you scroll. This doesn’t give you a perfect result,
especially when scrolling in the same direction as the tasks are
offset, but is better than what we have now.

Change-Id: I055b08257fe1427e00e26ffa02f261cf51a8a2e0
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
be8f35747c11e2be642c65b4d387458c373702c4 16-Feb-2016 Winson <winsonc@google.com> Fixing issue with front task dimming when scrolled back.

Change-Id: I30d88796e7af13734c9a33def05b62bed4fb2e96
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
1499150478b2836a7d2549129ccaed005b24bc06 16-Feb-2016 Winson <winsonc@google.com> Tweaking stack shadows and layout.

- Properly setting view outline alpha
- Ensuring that dismissing while in focused state will return to
non-focused state
- Fixing mis-calculation with bottom stack area

Change-Id: I281b7707421ffde4225180c63c7d40bf325f7f72
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
680888123db816ad0c5f082d1e9b3f9b756bc7b6 13-Feb-2016 Winson <winsonc@google.com> Minor tweaks

- Initializing to focused state when going into Recents
- Dimming the front-most tasks to highlight the focused task
- Fixing wrong call to resize in the LruCache

Change-Id: I41833a9dc59a9bdf4a94b698e4800c1019bceb01
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
14e15b2ca1f1d1c97f4ee50331c8dedb88315c47 12-Feb-2016 Winson <winsonc@google.com> Adjusting the tuner flags to allow disabling fast toggle.

Change-Id: I0da29479c075a41ddb49e9852eb912604efa9aa8
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
1bcf3c4742da5a1d9c04c73efac5c2418142c262 10-Feb-2016 Winson <winsonc@google.com> Moving dim calculation into the stack layout.

- This simplifies code and also prepares the code for dimming certain
tasks when focused.
- Ensuring that cancelling transitions will completely remove all
listeners in a given animation.

Change-Id: I77050d94097f9af404250c287522d83c146cfb25
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
231bc9c54a48921f9c6a1ae187969c9bfe9d121f 09-Feb-2016 Winson <winsonc@google.com> Adding view debug annotations to simplifying debugging state.

Change-Id: If90955f44be55ff09208998214bc1bb47f93a872
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
05e46ca8f3d24cf333e745c8cebb420b2996e9ea 06-Feb-2016 Winson <winsonc@google.com> Updating paging animation to spec.

- To handle the specific animation spec, we just animate the views
manually instead of animating the stack scroll (like how we do when
swiping to dismiss)
- Fixing a regression in settings the initial focused index when
alt-tabbing
- Minor tweak to make the front most task smaller when in the initial
non-paging mode

Change-Id: Ic5fd54500fd8ce8284c7aaeddb102b2291bcecac

Signed-off-by: Winson <winsonc@google.com>
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
b61e654b9a46e79827355104760a3ac5228380bc 04-Feb-2016 Winson <winsonc@google.com> Fallback 1 for Recents timeout behaviour

- Removing initial timeout
- Adding double tap to switch tasks

Change-Id: Ice6a508b842377809bf0dcea0997522164d0ccdf
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
9bbd2861ad0c44ff95463090b303f131b118a2bd 03-Feb-2016 Winson <winsonc@google.com> Fixing issue with task animating from 0,0.

- When we get all the initial task transforms when swiping to dismiss,
the tasks that are not visible at the original scroll position but are
in the final position are not initialized correctly. Instead when
getting the current transforms for all tasks, always calculate their
transforms regardless of whether they are currently visible or not.
- This revealed another issue where on snap-back, a task that was
visible at the new scroll and not at the old scroll was not getting
removed until the next update (which would cause a task view to linger
if you press home for example).

Bug: 26964326
Change-Id: I4db9cd1b072d3841351c2e84b219ca224a3045f9
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
c6c89a82144f59475242c75d67529fed943ae30b 29-Jan-2016 Jorim Jaggi <jjaggi@google.com> Fix transition to recents in docked mode

Transition for non-compatible apps will be handled in a separate CL.

Change-Id: I9c474f7aa394e4f3eacd1845c78bee5874bd8a59
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
c0d7058b14c24cd07912f5629c26b39b7b4673d5 29-Jan-2016 Winson <winsonc@google.com> Referencing static interpolators.

Change-Id: I5d2292016e869ed533f5873e373a1eccce651fc5
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
49df4209cf8a3ee6cf8e09edc14675028a4b1862 26-Jan-2016 Winson <winsonc@google.com> Part 1: Tweaking history transition to match design.

- Adding background scrim that can be controlled across transitions
within recents. As a result, we can remove the status bar scrim.
- Moving the history view into the RecentsView now that it animates in
parallel with the task stack
- Transition home from history no longer goes back to stack view first
- Removing some extra allocations when going into history and loading
tasks

Change-Id: I665baefcdd619de5e9366923eaaf4c558261141a
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
1c8461402bd25912b61c166552cd60be4b7089d9 22-Jan-2016 Winson <winsonc@google.com> Fix issue with stack not invalidating when only focus state changes.

- Adding callback to invalidate when focus state changes.
- Fixing issue where we were posting the invalidate, causing everything
to lag by 1 frame
- Fixing issue where we weren’t passing the cancel-enter animation flag
down when setting focused tasks

Change-Id: I218ec78dc0e4e22e59ffcef03a1bc91d08b7c18b
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
65c851e6e9e08656744b6f66d3da188e3283b17d 20-Jan-2016 Winson <winsonc@google.com> Fixing several regressions with affiliated tasks.

- Now that we are sorting tasks for freeform and history, ensure that
the affiliated tasks have a useful active time (based on the task
they are affiliated with) for sorting
- Fix issue with the initial stack and focus state not taking the
launch task into account due to the launchTask flag not being set
until the activity was started (now set in RecentsTaskLoadPlan)
- Fixing issue with affiliated tasks not being launched from the stack
due to the animation trigger not firing when the action button is
already hidden/visible
- Fixing issue with title text being occasionally hidden (something we
only need for freeform tasks)
- Tweaking the launch/enter animations for tasks occluded affiliated
tasks

Bug: 26685208

Change-Id: I0f6e9dbf8deec2e4fc15364e686367cc0f57b41f
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
8aa9959413a06c3d2ff75e0c7be9e3cb7ac7cd2e 20-Jan-2016 Winson <winsonc@google.com> Starting the dismiss animation in parallel with the gesture.

- Introduces notion of ignored tasks for the purposes of layout in
TaskStackView. This can be used during drag and drop, and while
dismissing to calculate the state of the stack without the task that
the user is currently interacting with.
- Fixing minor layout issue when the front/back task transforms are
improperly calculated when there is a single task
- Fixing minor issue when the anchor task is calculated incorrectly when
dismissing task views

Change-Id: I1eb0864a52e53562e4d573a6ed4f8a5a1615aff9
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
c5fd350522d9269e6239af818f7261a6ead51570 19-Jan-2016 Winson <winsonc@google.com> Removing extraneous calls.

- Removing calls to ensureCapacity, which was causing reallocations when
using a temporary set with multiple uses.
- Fixing issue with update callback not being called when immediately
updating a TaskView’s transform
- Adding utility methods in preparation for refactoring code


Change-Id: If62c3751ed6af15092a34435df08bb4d627536ea
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
4b057c6787624b75613769a857ccdf51114bb7f2 13-Jan-2016 Winson <winsonc@google.com> Fixing crash when dismissing last stack task.

- The crash was due to us trying to get an anchor task when there were
no more tasks in the stack. The original call to check the stack
task count was poorly named so updating the name of that call as well.

Bug: 26500050

Change-Id: I9652e90a6a2e19008c5c84ce877afca576b3175f
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
5500390a006f2bbea565068234774a36cea076c0 12-Jan-2016 Winson <winsonc@google.com> Reducing numerous extraneous allocations.

Change-Id: Icca49f12a9e0be08eb6d4dbbbf2fd5994a3a25a5
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
407d8d08f0c6f20b28c554b5daaad752f564f4f3 09-Jan-2016 Winson <winsonc@google.com> Ensure that the front-most task never dims when scrolling the stack.

Change-Id: I370311b78203c079c4bbfa67753da13f91a15cbc
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
3e8747414520ee348cf4b9c4a6afd9ff80b5a8f8 07-Jan-2016 Winson <winsonc@google.com> Improving drag and drop animations.

- Expanding drop targets to indicate the size of the to-be docked window
- Fixing animation when dropping task
- Fixing drag view z order
- Fixes issue where the dock divider position in WM is not exact
- Requiring user to move the slop distance before accepting drops

Change-Id: I2f6eab504db7126c19e0c680629e89a39e7512e3
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
778f495f0431be15c4c4f4305960465afe0e6d3a 08-Jan-2016 Winson <winsonc@google.com> Removing code to animate thumbnail scale now that we animate bounds.

- This CL reverts the code to the previous state where we can just
calculate the thumbnail scale from the view bounds.

Change-Id: I156ae915af76055b5177a6bdf0f929bdf6acea01
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
9317f8698417a45a9ad32fabcbc5b50b250d31d3 08-Jan-2016 Winson <winsonc@google.com> Fix crash when trying to use uninitialized layout.

Bug: 26453007
Change-Id: I006cf2f622b267163230eae4a07ef676c805f5c3
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
f24f21695f5609d06402cf61e3500d408b99bdcb 05-Jan-2016 Winson <winsonc@google.com> Refactoring and unifying TaskView animations.

- Adding notion of a TaskViewAnimation to animate a TaskView to a
specific TaskViewTransform
- Refactoring task view enter/exit/launch/delete animations into
a separate class so that we can improve them easier
- Removing individual TaskView view property animations in favor
of using the existing TaskStackView stack animation. This ensures that
we don't have to add separate logic when animating TaskViews. It is
all handled by the TaskStackView now.
- Breaking down the TaskStackView synchronize method into binding
TaskViews and updating them to transforms. This allows us to
synchronously update in many cases and is cleaner than the many
request* calls.

Change-Id: Ib26793568a14e837e6782358155f21158a133992
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
ef06413afce31800dc8dfee65e5f89bb610f192a 05-Jan-2016 Winson <winsonc@google.com> Moving more callbacks to animated events.

- In preparation for the animation refactoring, this CL just moves the
enter/exit callbacks that route though RecentsView into events that
the task stack can handle directly.

Change-Id: I90f602c5486e1781129225a73dbf97af29477479
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
d8b1d63f96580fe961e1751e7b4f56c90c1e0a76 05-Jan-2016 Winson <winsonc@google.com> Fixing issue with exit animation due to incorrect visibility state.

- This CL ensures that only Recents updates the SysUI visibility state
for itself, ensuring that the visibility state reflects the state in
Recents, and allows us to skip unnecessary work to close system
dialogs when it is not required.

Bug: 26390248
Change-Id: Ib6301a8300cc3da6da75fcbbceceb0e1da3beab4
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
aa4f800891e801e78cc4a0a9839fc59938cabdd3 17-Dec-2015 Winson Chung <winsonc@google.com> Fixing minor issue with freeform workspace not showing.

- Also slightly tweaking drop target sizes to be a bit smaller

Change-Id: I0e877e64acba5dd165c0d7a2cffb24dea88d673f
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
509d0d0c9e2ee165d04e898fea59f8941ac7138d 16-Dec-2015 Winson Chung <winsonc@google.com> Minor fixes to freeform workspace

- Fixing regression where we were clobbering the freeform stack order
- Ensure there is padding between tasks
- Fix the header bar animation

Change-Id: I69ced3e3cb2f0c761ddf0c3bd00b17c847d74c0b
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
ead5c0fc20e5c60a68cd017af0b8eacaf1167a1c 14-Dec-2015 Winson Chung <winsonc@google.com> Enabling history and paging by default

- Removing associated tuner flags

Change-Id: Ia69bf273489b0079c389e7feb1428071569092d5
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
bb410951b9ae373999c058fa141b3522ba169960 04-Dec-2015 Winson <winsonc@google.com> Updating layouts to use frame vs translation and clipping.

- This greatly simplifies the freeform layout as well, since we don’t
need to scale and clip the views to match the freeform task bounds.
- Also fixing the animation from the back of the stack

Change-Id: Iba998a788dbdc48d031da8a8c908ea1a9f8f795f
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
116b2c2c5430122ad7dfa14470bc640bf3c1c59f 04-Dec-2015 Winson <winsonc@google.com> Minor tweak to initial paging state.

- Making the scroll and focus animations identical so that it doesn't
cause a weird flicker.

Change-Id: If1e3d23cd5ef45e429341c6bf7ac62b3a17eb662
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
e759cd58bda6652e5413e7ca2a39b77bb776a610 04-Dec-2015 Winson <winsonc@google.com> Add tuner params to change the initial stack state and navbar gesture.

Change-Id: I114b8342f5293589eb96a1fd3a14da1757e75a95
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
a78a8f31d2e7f00cccfbe326f03bcc3d3cb1de77 03-Dec-2015 Winson <winsonc@google.com> Freeform workspace fixes

- Fixing issue with the wrong task view index being calculated for
freeform workspace tasks causing them to be invisible when dragged
to the stack
- Reducing unnecessary detach/reattach calls for freeform tasks
- Adding freeform workspace background to match exit to home animation

Change-Id: I8c00aba377601da92195ef301ba5da1ffb0045c5
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
0e0d85c23c4174a66a04336d5294cfd9231c819a 03-Dec-2015 Winson <winsonc@google.com> Fixing regression when animating in new views after dismissing task.

- In the old stack, the range of stack task progress was 0..1, but now
it needs to be offset by the stack range.

Change-Id: I21cb5c7c8c3cc3648867626a516de9ab01e704c8
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
a0731a1a2611d5a89c5960fe39a7ff09cc8fd5ea 03-Dec-2015 Winson <winsonc@google.com> Fixing crash when trying to reset focused task after removing task.

- Moving the focused state back into the stack, since the task view
is transient and can be rebound. Also ensuring that we update the
task view focus state as we return and pick up views from the view
pool
- Fixing issue where going back from recents would not go back home
- Properly calculating the task visibility (regression)

Bug: 25975225

Change-Id: Ica861f0d8996e4e254e875199a2d704a65bf8e58
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
5b7dd536aa6cb8ce323b47cee109f879feb0d33a 02-Dec-2015 Winson <winsonc@google.com> Updating the freeform workspace layout

- Updating layout for freeform workspaces
- Consolidates the clipping and bitmap scale with the transform to make
the transitions more unified
- Updating clipping as we synchronize scroll instead of afterwards

Change-Id: I33de4e2646c75f0bc0eb75bd6909fe94557196b5
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
f0d1c44a59a10707baa0cca8dd377302260710c1 01-Dec-2015 Winson <winsonc@google.com> Adding notion of stack state to the layout.

- This allows us to choose which layout to show, either freeform, stack,
or a combination of the two
- Fixing crash with null bitmap

Change-Id: I659e66d89f7205ccb0c2ba22c57aee95c8d4b3ab
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
387aac6ad7bde21f2c2510cb8a2f3af3959721e0 25-Nov-2015 Winson <winsonc@google.com> Fixing task view heights in paging tasks

- Now, all task views will be bounded by the stack rect, and the
thumbnail bitmaps will be scaled accordingly to fit either by width
(when stacked) or to the view rect (when freeform)
- Fixing issue where the history button was not offset in freeform
- Tweaking thumbnail sizes of fullscreen screenshots
- Still requires changes to fix clipping to the correct aspect ratio in
freeform.

Change-Id: I678b87c2f06947d32f3bb7c60a35f28eb36b5a68
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
250608a5cd08862f4752a924d51710805850db8a 25-Nov-2015 Winson <winsonc@google.com> Separating the stack vs the historical tasks.

- Adding a notion of session to the stack. If the history is enabled,
the stack will now be constrained to show either tasks that were last
active in a window of time, or a minimum number of tasks.
- Giving the history button the full space above the stack so that it
looks more balanced.

Change-Id: If7b647349e8bb164ae86fd6dba3f7e974257eb5b
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
c29ff0025bf0b1f43b34fe3e2dd6f043b61421ef 21-Nov-2015 Winson <winsonc@google.com> Adding history view.

- Initial changes to show a history view within Overview (behind tuner
flag)
- Restoring the task view dim in the stack

Change-Id: I0503d11768736c86f3145942404391dfacd0ddd6
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
7afe8c900244e37e70863f56a86bb27ead45f9a1 25-Nov-2015 Winson <winsonc@google.com> Fixing two small regressions in stack layout.

- Fixed issue with max scroll position being placed beyond the max
scroll if the task height is larger than the stack height.
- Fixed issue with single task offsets being calculated incorrectly

Change-Id: I3cb1ecf2c13de7196bd68cd4f9d9f4f4736ed3ce
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
8b1871d74137d7e36ba0fed5608772f51f62015b 20-Nov-2015 Winson <winsonc@google.com> Adding tuner params for paging and full screen thumbnails.

- Adding “focused” stack state to support paging
- Changing the paging to match UX spec (only auto-page after the first
tap)
- Removing old header focus animation

Change-Id: Id72825b8a1b1c0a2238ee184a6695b13c1d8cb1c
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
4993c2f17ec16ed16d3659f0fe7903d2f37e5295 19-Nov-2015 Winson <winsonc@google.com> Initial changes to stack layout to support paging and nonsquare thumbs.

- Moving to a couple piecewise curves to define the various overview
layout states. Added a new state for focus (to be used in follow up
CL) to control paging of overview from the nav bar button. This
allows us to control the visible range of items on the curve, and
to better fit other UI controls around the stack.
- Removed the scaling of the tasks in the stack
- Also refactoring parametric curve to just use the system Path

Change-Id: I4108da77986d86896576e36fa8f31189d6fcb6f3
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
a2236f11c650519f20509f62f48fbb371653bc65 14-Nov-2015 Winson <winsonc@google.com> Fixing some Recents landscape issues.

- Tasks were drawing under the navigation in landscape since we did
not account for the nav bar space
- Fixing issue with tiny tasks in landscape
- Fixing issue where pooled views were not being measured or laid out
after resizing.
- Fixing issue where the stack scroll would have out of bounds when
tasks were resized (we animate them into bounds)

Change-Id: Id301dc6891e7ff2692cb040a7df1a5a854ac84a3
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
1b58561f66a9453754b1b419296899fdc08b4c93 06-Nov-2015 Winson <winsonc@google.com> Fixing up some more focus edge cases.

- Disallow touch while alt-tabbing
- Allow keyboard to focus tab while scrolling
- Cleaning up some old classes that aren’t really being used

Change-Id: Ibabea093afb711b07f398677d25735421b7c7e53
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
eca4ab6e99bcb2a7b31b8b4b1c3b5474297b6b25 04-Nov-2015 Winson <winsonc@google.com> Adding dnd to/from freeform workspaces.

Change-Id: I5b75fe5a942e9a2e344e62229e860b5108f9872e
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
a5e6b36034fa66549dd71601a86397381c6bf02b 03-Nov-2015 Winson <winsonc@google.com> Updating freeform layout to be static at the top of recents.

Change-Id: I5118d03c115080e05447d325097419b9a1c6f8b4
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
0711be5cefb798eebd1e9b1622f7ab6ec292c36b 31-Oct-2015 Winson <winsonc@google.com> Ensuring that tasks in the back are always visible.

Change-Id: Ic64a1eac4b312c1efdb8c3ab005903a53b4a61d2
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java
36a5a2c7003ef8157f276b411c3fda47ad2f75e3 30-Oct-2015 Winson <winsonc@google.com> Initial layout/behaviour for freeform workspace.

Change-Id: Idc878862747d0d726cbf10be9893c48736673d0e
/frameworks/base/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackLayoutAlgorithm.java