1d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlock/*
2d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlock * Copyright (C) 2013 The Android Open Source Project
3d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlock *
4d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlock * Licensed under the Apache License, Version 2.0 (the "License");
5d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlock * you may not use this file except in compliance with the License.
6d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlock * You may obtain a copy of the License at
7d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlock *
8d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlock *      http://www.apache.org/licenses/LICENSE-2.0
9d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlock *
10d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlock * Unless required by applicable law or agreed to in writing, software
11d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlock * distributed under the License is distributed on an "AS IS" BASIS,
12d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlock * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlock * See the License for the specific language governing permissions and
14d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlock * limitations under the License.
15d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlock */
16d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlock
17d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlockpackage com.android.systemui;
18d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlock
199ea2f7ba3155a455724f64e2d6a964ad4e99dfa5Jorim Jaggiimport android.graphics.Rect;
20d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlockimport android.view.Display;
21d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlockimport android.view.View;
22d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlock
23d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlockpublic interface RecentsComponent {
24764da991def991a3aa7f09ab715ad18062e79cd9Jason Monk    void showRecentApps(boolean triggeredFromAltTab, boolean fromHome);
25b1f749906f5c27114d02ea0c3f8ce0dcea08fd3fWinson Chung    void showNextAffiliatedTask();
26b1f749906f5c27114d02ea0c3f8ce0dcea08fd3fWinson Chung    void showPrevAffiliatedTask();
2775b2597e5826662c1740d6f3b81966a9e6a9e7b4Jorim Jaggi
2875b2597e5826662c1740d6f3b81966a9e6a9e7b4Jorim Jaggi    /**
2975b2597e5826662c1740d6f3b81966a9e6a9e7b4Jorim Jaggi     * Docks the top-most task and opens recents.
3075b2597e5826662c1740d6f3b81966a9e6a9e7b4Jorim Jaggi     */
3129379ec859bf7118dec9f3248c63ee369218ad6bJorim Jaggi    boolean dockTopTask(int dragMode, int stackCreateMode, Rect initialBounds,
3229379ec859bf7118dec9f3248c63ee369218ad6bJorim Jaggi            int metricsDockAction);
33dd98d41e3a65b3bcb37007ea5b29371cf013f563Jorim Jaggi
34dd98d41e3a65b3bcb37007ea5b29371cf013f563Jorim Jaggi    /**
35dd98d41e3a65b3bcb37007ea5b29371cf013f563Jorim Jaggi     * Called during a drag-from-navbar-in gesture.
36dd98d41e3a65b3bcb37007ea5b29371cf013f563Jorim Jaggi     *
37dd98d41e3a65b3bcb37007ea5b29371cf013f563Jorim Jaggi     * @param distanceFromTop the distance of the current drag in gesture from the top of the
38dd98d41e3a65b3bcb37007ea5b29371cf013f563Jorim Jaggi     *                        screen
39dd98d41e3a65b3bcb37007ea5b29371cf013f563Jorim Jaggi     */
40dd98d41e3a65b3bcb37007ea5b29371cf013f563Jorim Jaggi    void onDraggingInRecents(float distanceFromTop);
41dd98d41e3a65b3bcb37007ea5b29371cf013f563Jorim Jaggi
42dd98d41e3a65b3bcb37007ea5b29371cf013f563Jorim Jaggi    /**
43dd98d41e3a65b3bcb37007ea5b29371cf013f563Jorim Jaggi     * Called when the gesture to drag in recents ended.
44dd98d41e3a65b3bcb37007ea5b29371cf013f563Jorim Jaggi     *
45dd98d41e3a65b3bcb37007ea5b29371cf013f563Jorim Jaggi     * @param velocity the velocity of the finger when releasing it in pixels per second
46dd98d41e3a65b3bcb37007ea5b29371cf013f563Jorim Jaggi     */
47dd98d41e3a65b3bcb37007ea5b29371cf013f563Jorim Jaggi    void onDraggingInRecentsEnded(float velocity);
48d08de37a2223d5183620098737eb93907a4ba92cJohn Spurlock}
49