blob: 4cf7cf3ef1f0363b33bdde2b8492eb28c5ab4efd [file] [log] [blame]
Filip Gruszczynski64cdc142015-11-29 21:10:07 -08001/**
2 * Copyright (c) 2015, The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17package android.view;
18
19/**
20 * Listener for showing/hiding of the dock divider. Will fire when an app is shown in side by side
21 * mode and a divider should be shown.
22 *
23 * @hide
24 */
Jorim Jaggia6c934e2015-12-21 13:22:31 +010025oneway interface IDockedStackListener {
26
27 /**
28 * Will fire when an app is shown in side by side mode and a divider should be shown.
29 */
30 void onDividerVisibilityChanged(boolean visible);
31
32 /**
33 * Called when the docked stack gets created or removed.
34 */
35 void onDockedStackExistsChanged(boolean exists);
Jorim Jaggi42625d1b2016-02-11 20:11:07 -080036
37 /**
38 * Called when window manager decides to minimize the docked stack. The divider should make
39 * itself not interactable and shrink a bit in this state.
40 *
41 * @param minimized Whether the docked stack is currently minimized.
42 * @param animDuration The duration of the animation for changing the minimized state.
Matthew Nge15352e2016-12-20 15:36:29 -080043 * @param isHomeStackResizable If the home stack is resizable, a portion of the docked stack
44 * will be shown with the divider
Jorim Jaggi42625d1b2016-02-11 20:11:07 -080045 */
Matthew Nge15352e2016-12-20 15:36:29 -080046 void onDockedStackMinimizedChanged(boolean minimized, long animDuration,
47 boolean isHomeStackResizable);
Jorim Jaggi2917dc42016-04-11 11:39:13 -070048
49 /**
Jorim Jaggi698e7632016-04-13 21:02:22 -070050 * Called when window manager decides to adjust the divider for IME. Like the minimized state,
51 * the divider should make itself not interactable and shrink a bit, but in a different way.s
52 *
53 * @param minimized Whether the stacks are currently adjusted for the IME
54 * @param animDuration The duration of the animation for changing the adjusted state.
55 */
56 void onAdjustedForImeChanged(boolean adjustedForIme, long animDuration);
57
58 /**
Jorim Jaggi2917dc42016-04-11 11:39:13 -070059 * Called when window manager repositioned the docked stack after a screen rotation change.
60 */
61 void onDockSideChanged(int newDockSide);
Filip Gruszczynski64cdc142015-11-29 21:10:07 -080062}