History log of /frameworks/base/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
94bbf483e358b40d1e2c35ca1369b9360a3892c8 13-Jun-2017 Winson Chung <winsonc@google.com> Merge "Minimal change to ensure events are propagated to the right DividerView." into oc-dev am: b1cdc17dfb
am: ebc74796e4

Change-Id: Id4818ff5e203cb2aa40079ed7af24c4b84a957ba
60fa64742776632de647e8e85373c887c6e96728 13-Jun-2017 Winson Chung <winsonc@google.com> Minimal change to ensure events are propagated to the right DividerView.

- The RecentsDrawnEvent sent when Recents is first drawn can be racey, if
it is sent before the configuration change in Divider is dispatched, then
it will be posted for the old DividerView, which prior to ag/2363241 was
still sending the correct resize calls (the animation is independent of
the view). For now, we register the event handler in Divider, and
instead proxy it to the current view when it is posted.

Bug: 62528361
Test: go/wm-smoke
Test: Play a movie in Play Movies, ensure the activity is resized

Change-Id: I665b0c6af55dea0db1916f5b041589bf72da3baf
/frameworks/base/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
d034fec9cfd7521dc0edd315e7d8aef88496f9b3 06-Jun-2017 Wale Ogunwale <ogunwale@google.com> Merge "Don't allow removed DividerView to resize stack" into oc-dev am: d7427d5d90
am: b4f383c26e

Change-Id: Ibded63bebba40bc29978dee2717dd61a36d609a9
15ba1515a8df437355e013ee9d4421e5862ced2c 06-Jun-2017 Wale Ogunwale <ogunwale@google.com> Don't allow removed DividerView to resize stack

If a divider view is removed or in the process of been removed, then it
should no longer have any influence on the size of stacks.

Fixes: 62273599
Test: go/wm-smoke
Test: enter split-screen and make sure recents is visible, lock and
unlock the device and verify things look fine.

Change-Id: I79aca82be8a7013328b78e82f508c4ed9fa48a4a
/frameworks/base/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
ca3168bd9ec99668e02087f35833a4807f439c1e 25-May-2017 Matthew Ng <ngmatthew@google.com> Unminimize to save divider position after rotation

Holds the divider ratio in the divider state to persist after
configuration change while minimized. After unminimizing past
a configuration change, the previous position will estimate to
the closest snap target.

Test: manual - minimize, rotate, unminimize
Fixes: 34395958
Change-Id: I6ceffb9f5018b8009069f0aa0085f263d8982319
/frameworks/base/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
fb692acb647b19b078a95fab8f186f1ca1469250 02-Feb-2017 Matthew Ng <ngmatthew@google.com> Longpress overview in minimized mode only for resizable launches (1/2)

Since resizable launchers in minimized mode shows more of the docked
stack than in non-resizable launchers, it will play the same
functionality as split screen where long press overview button will
exit split screen into fullscreen mode.

Test: test was written - adb shell am instrument -w -e class
com.android.androidbvt.SysUIMultiWindowTests
com.android.androidbvt/android.support.test.runner.AndroidJUnitRunner
Fixes: 34892561
Change-Id: I9f957dada1b325b36068d59fa9b2d1fa4912b804
/frameworks/base/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
e15352e516fb6ecde12866f0eb27c32470ddbded 21-Dec-2016 Matthew Ng <ngmatthew@google.com> Splitscreen for minimized state that works with resizable launchers

If a launcher is resizable, going to minimized mode (dock task and then
press home) would show a cropped height of the task at the top in a
minimized state and the fullscreen stack would show the home launcher
which takes the rest of the remaining height. If the launcher is not
resizable, it will default the original behavior.

To enable this in a launcher, add android:resizeableActivity="true" in
the AndroidManifest.xml in the <application/> tag.

Test: manual - rotating while minimized, minimizing using dragging task
or holding overview nav button, installing resizable launcher with a
non-resizable launcher
Fixes: 32504542
Change-Id: Idf4015b40f9bec81b70f146f0f2d7df8ccfb4cf0
/frameworks/base/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
8d3728806c7cdb804ba560d7178b268aefa9c12f 20-Dec-2016 Matthew Ng <ngmatthew@google.com> Cancels out long press on recents fixed from previous change

This fixes an error from change-id
Ic9c8a5096ce9f30fc1265774ebb82c1356b1221b where the docked state was
not dismissed when long pressing recents. Minimized state is also
handled by not having the second vibration.

Test: manual - tested home screen, minimized, dock and undock the tasks
into multi-window mode
Fixes: 33655754
Fixes: 29927464
Change-Id: I3adedf9d0e1dcd5fe297f7ca8b9cb8faeba8bcb1
/frameworks/base/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
a6c05d5151027f902c5c56bded008cbe15bd6301 27-May-2016 Jorim Jaggi <jjaggi@google.com> Fix weirdness when home task forces rotation

- Make sure to retain the state when divider goes through a configuration
change in order to avoid that nothing happens when entering multi-window.
Save the state in DividerState and use a handler that's independant of the
attached state.
- Don't allow home task to dictate orientation unless the docked stack is
minimized. This caused a lot of weird bugs because when docking a task,
home stack gets moved to front, and if home task is front of stack, it
temporarily might dictate the rotation but later not anymore so this
causes two rapid configuration changes which may cause a lot of weirdness.

Change-Id: I6a2308af893cd8413ee8801e5b964f6ddc0abd51
Fixes: 28943853
/frameworks/base/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
3070e77f91a3c2ccb0be4588cbcff3936829458a 18-May-2016 Jorim Jaggi <jjaggi@google.com> Fix a few issues with ime adjust/minimized dock stack

- Do not override minimized state in SysUI when IME adjust change
comes in.
- Do not animate IME adjust if we are already animating for minimized.
This lead to problems that we animated the minimized state with the IME
adjust values.
- Make sure to update state after checking whether the IME adjust is
animating. This is to fix an issue where sometimes the IME adjust
animation didn't run because the old target was wrong.

Change-Id: Ie35e2f943a4cda99ffdc6f14663d892863759e46
Fixes: 28819201
/frameworks/base/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
31f71705df97767b4b4ac7026228664995478fe0 05-May-2016 Jorim Jaggi <jjaggi@google.com> Add dump information for divider

Bug: 28575870
Bug: 28445644
Change-Id: Ib2137c49f1672ed2a9e7e31a5b68c22e0bb166b1
/frameworks/base/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
698e7634aa2ced554f564f588c2e878fb35757a3 14-Apr-2016 Jorim Jaggi <jjaggi@google.com> Disable resize when IME is adjusted

Bug: 28175599
Change-Id: I338dd230443973d912f17946ed722789b0f545a2
/frameworks/base/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
2917dc4918ab2061f6cab3d181d19ea8375df9f6 11-Apr-2016 Jorim Jaggi <jjaggi@google.com> Add shadow for minimized dock

Bug: 27972642
Change-Id: Ic4c8145f61694ff2bb0e237da1142093c6a4d965
/frameworks/base/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
11c62e17af9096f76d4532f26cacd809c3a5ef53 06-Apr-2016 Jorim Jaggi <jjaggi@google.com> Dynamic density change handling

- In PWM, make sure to read the height values after the new
configuration has been applied.
- Reset all navigation bar button icons when density changes.
- Adjust height of notification bar.
- Reload divider height values in SysUI and WM.
- Snap divider handle to a new position after loading the
new configuration, as the snap points change.

Bug: 26844819
Bug: 27450471
Bug: 27921696
Change-Id: I9e28f0c49f6367c5fcfac010e7a6e98a42e85996
/frameworks/base/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
ef92d6fd24bb5a53daedc80a1bc4c92691e06ead 26-Mar-2016 Jorim Jaggi <jjaggi@google.com> Fix minimized dock

- When SysUI crashed, make sure state is up-to-date
- When divider gets invisible, update state because animations
won't finish
- Make sure to keep mMinimizedDock up-to-date in all cases, even
if docked stack is already gone.
- If docked stack is going away, reset minimized state
- Disallow undocking when minimized.

Bug: 27588187
Bug: 27486464
Change-Id: I6ea48562fae3a8df038a690a488580d758681370
/frameworks/base/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
2adba07d75419462873dfeef40d4c983d832ed99 03-Mar-2016 Jorim Jaggi <jjaggi@google.com> Show a scrim activity if task is not resizable

Add a callback to TaskStackChangeListener which gets fired when the system
might need to inform the user that a specific app might not work in
multi-window.

Use that callback in SysUI to show a translucent activity which scrims the
activity behind to inform that it might not be resizable.

Debounce the information to once per multi-window session, to not make it
annoying.

Introduce launchTaskId to start an activity in an existing task, and protect
that with START_TASKS_FROM_RECENTS permission.

Bug: 27327287
Bug: 27431869
Change-Id: I89e8d653872ab01ba3c1e252b426e5481da0e6ca
/frameworks/base/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
42625d1bc7ef99c4d4435e8cdebfe3eee57b8d97 12-Feb-2016 Jorim Jaggi <jjaggi@google.com> New behavior for docked stack when going home

- We keep the docked stack visible when home task is visible even
though it's not resizable.
- We introduce the a new concept called "minimizing" the docked stack,
which happens when going home. In this state, the docked stack is
clipped of almost completely.
- To achieve that, we introduce TaskStackBoundsAdjustController,
which adjusts the bounds of the docked stack when minimized. Also,
migrate the IME handling to this new class.
- We also need to inform SysUI that it is now minimized so it can
remove the drag affordance on the divider, and also make it a bit
smaller.
- When we detect an app transition, we check whether the home stack
gets visible/invisible. We then start an animation which runs in
sync with the normal app transition. For that we introduce
DockedStackDividerController.animate(), which performs the animation.

Bug: 27137961
Change-Id: I8623bc73cc6872bf28c5b1b8d5795974576811b2
/frameworks/base/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
a6c934e2a3e6ddec6549cea55b7bece02348c6f8 21-Dec-2015 Jorim Jaggi <jjaggi@google.com> Use different asset when docked stack exists

- Add the ability to add a listener when the existence of the
docked stack changes.
- Register SystemUI as such a listener and switch the recents
button asset when docked stack exists.

Change-Id: I05350878c5adc7ad9f0399f0c42d8d1615d44d02
/frameworks/base/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
64cdc1458bcf0d09781463a6e421b9b870b09687 30-Nov-2015 Filip Gruszczynski <gruszczy@google.com> Remove dock divider surface when it's not visible.

We achieve the removal by notifying System UI about the visibility of
the dock divider. This way System UI can change visibility of the root
view, which in turn will cause the WMS to destroy or create the surface
as necessary.

Bug: 25844096
Bug: 25683717

Change-Id: Idbc33368db697a059af49106dfadb80c3d7d06c1
/frameworks/base/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
dd98d41e3a65b3bcb37007ea5b29371cf013f563 19-Nov-2015 Jorim Jaggi <jjaggi@google.com> Add gesture to drag in recents from navigation bar

Change-Id: I672ed08f1019835891411b87e2d0de0290defff7
/frameworks/base/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java
1fcbab6ae5c99acab70eacc015d194e2c6ddd4e2 04-Nov-2015 Jorim Jaggi <jjaggi@google.com> Implement divider UX interactions

- Update visuals to spec
- Divider lifts when touching
- Implement basic version of snap points and animations
- Implement touch conflict behavior: If touched around 48x48dp
area around the handle, the divider handles all these touches.
If touched outside of the black background divider, touch goes
directly to underlying window. If touch on the black background
divider, touch is considered slippery and thus the window in
which the touch trace moves gets the touches.

Change-Id: I0307c191ae032672c4b73d439c23cf9833d3fce6
/frameworks/base/packages/SystemUI/src/com/android/systemui/stackdivider/Divider.java