IWindowManager.aidl revision 7916ac65dc492e4e1431879875c77d7121fbf82e
17da6ac33a9de82be52e22846d5f22d502452854cDianne Hackborn/*
29066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** Copyright 2006, The Android Open Source Project
39066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project**
49066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** Licensed under the Apache License, Version 2.0 (the "License");
59066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** you may not use this file except in compliance with the License.
69066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** You may obtain a copy of the License at
79066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project**
89066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project**     http://www.apache.org/licenses/LICENSE-2.0
99066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project**
109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** Unless required by applicable law or agreed to in writing, software
119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** distributed under the License is distributed on an "AS IS" BASIS,
129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** See the License for the specific language governing permissions and
149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** limitations under the License.
159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project*/
169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpackage android.view;
189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport com.android.internal.view.IInputContext;
209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport com.android.internal.view.IInputMethodClient;
219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.content.res.Configuration;
230aae2d4e0075fd699cf40b26dca0eb2c3b3e37d2Dianne Hackbornimport android.graphics.Bitmap;
24ac8dea12c17aa047e03a358110aeb60401d36aa2Dianne Hackbornimport android.graphics.Point;
259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.view.IApplicationToken;
269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.view.IOnKeyguardExitResult;
279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.view.IRotationWatcher;
289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.view.IWindowSession;
299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.view.KeyEvent;
306ec402b5ae33c8927694d8522b4cc6a5c8ba974eJeff Brownimport android.view.InputEvent;
319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.view.MotionEvent;
32a41ca77fabe1c7ad12ebb9b69b9e786c07d49fa0Jeff Brownimport android.view.InputChannel;
338d60866e2100db70ecf0502c14768a384514d7e9Jeff Brownimport android.view.InputDevice;
349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/**
369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * System private interface to the window manager.
379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * {@hide}
399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */
409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectinterface IWindowManager
419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{
429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    /**
439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * ===== NOTICE =====
449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * The first three methods must remain the first three methods. Scripts
459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * and tools rely on their transaction number to work properly.
469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     */
479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    // This is used for debugging
489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    boolean startViewServer(int port);   // Transaction #1
499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    boolean stopViewServer();            // Transaction #2
509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    boolean isViewServerRunning();       // Transaction #3
519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    IWindowSession openSession(in IInputMethodClient client,
539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            in IInputContext inputContext);
549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    boolean inputMethodClientHasFocus(IInputMethodClient client);
559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
56ac8dea12c17aa047e03a358110aeb60401d36aa2Dianne Hackborn    void getDisplaySize(out Point size);
57ac8dea12c17aa047e03a358110aeb60401d36aa2Dianne Hackborn    int getMaximumSizeDimension();
58ac8dea12c17aa047e03a358110aeb60401d36aa2Dianne Hackborn
597916ac65dc492e4e1431879875c77d7121fbf82eDianne Hackborn    void setForcedDisplaySize(int longDimen, int shortDimen);
607916ac65dc492e4e1431879875c77d7121fbf82eDianne Hackborn    void clearForcedDisplaySize();
617916ac65dc492e4e1431879875c77d7121fbf82eDianne Hackborn
629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    // These can only be called when injecting events to your own window,
636ec402b5ae33c8927694d8522b4cc6a5c8ba974eJeff Brown    // or by holding the INJECT_EVENTS permission.  These methods may block
646ec402b5ae33c8927694d8522b4cc6a5c8ba974eJeff Brown    // until pending input events are finished being dispatched even when 'sync' is false.
656ec402b5ae33c8927694d8522b4cc6a5c8ba974eJeff Brown    // Avoid calling these methods on your UI thread or use the 'NoWait' version instead.
669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    boolean injectKeyEvent(in KeyEvent ev, boolean sync);
679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    boolean injectPointerEvent(in MotionEvent ev, boolean sync);
689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    boolean injectTrackballEvent(in MotionEvent ev, boolean sync);
696ec402b5ae33c8927694d8522b4cc6a5c8ba974eJeff Brown    boolean injectInputEventNoWait(in InputEvent ev);
709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    // These can only be called when holding the MANAGE_APP_TOKENS permission.
729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void pauseKeyDispatching(IBinder token);
739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void resumeKeyDispatching(IBinder token);
749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void setEventDispatching(boolean enabled);
75e4fbd6235c8d1c5b0ed4883ec275dd3fc9c919fbDianne Hackborn    void addWindowToken(IBinder token, int type);
76e4fbd6235c8d1c5b0ed4883ec275dd3fc9c919fbDianne Hackborn    void removeWindowToken(IBinder token);
779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void addAppToken(int addPos, IApplicationToken token,
789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            int groupId, int requestedOrientation, boolean fullscreen);
799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void setAppGroupId(IBinder token, int groupId);
809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void setAppOrientation(IApplicationToken token, int requestedOrientation);
819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    int getAppOrientation(IApplicationToken token);
829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void setFocusedApp(IBinder token, boolean moveFocusNow);
837da6ac33a9de82be52e22846d5f22d502452854cDianne Hackborn    void prepareAppTransition(int transit, boolean alwaysKeepCurrent);
849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    int getPendingAppTransition();
853b3e145d3c41fd68974e08f799b1fd1f8f060cf0Dianne Hackborn    void overridePendingAppTransition(String packageName, int enterAnim, int exitAnim);
869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void executeAppTransition();
879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void setAppStartingWindow(IBinder token, String pkg, int theme,
889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project            CharSequence nonLocalizedLabel, int labelRes,
897eec10e6c99c30d5ee061fec08ac89ad4254ac32Dianne Hackborn            int icon, int windowFlags, IBinder transferFrom, boolean createIfNeeded);
909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void setAppWillBeHidden(IBinder token);
919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void setAppVisibility(IBinder token, boolean visible);
929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void startAppFreezingScreen(IBinder token, int configChanges);
939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void stopAppFreezingScreen(IBinder token, boolean force);
949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void removeAppToken(IBinder token);
959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void moveAppToken(int index, IBinder token);
969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void moveAppTokensToTop(in List<IBinder> tokens);
979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void moveAppTokensToBottom(in List<IBinder> tokens);
989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
99e36d6e277e49475076b7872d36ea6a5c5b996e9dDianne Hackborn    // Re-evaluate the current orientation from the caller's state.
100e36d6e277e49475076b7872d36ea6a5c5b996e9dDianne Hackborn    // If there is a change, the new Configuration is returned and the
101e36d6e277e49475076b7872d36ea6a5c5b996e9dDianne Hackborn    // caller must call setNewConfiguration() sometime later.
102e36d6e277e49475076b7872d36ea6a5c5b996e9dDianne Hackborn    Configuration updateOrientationFromAppTokens(in Configuration currentConfig,
103e36d6e277e49475076b7872d36ea6a5c5b996e9dDianne Hackborn            IBinder freezeThisOneIfNeeded);
104e36d6e277e49475076b7872d36ea6a5c5b996e9dDianne Hackborn    void setNewConfiguration(in Configuration config);
105e36d6e277e49475076b7872d36ea6a5c5b996e9dDianne Hackborn
1069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    // these require DISABLE_KEYGUARD permission
1079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void disableKeyguard(IBinder token, String tag);
1089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void reenableKeyguard(IBinder token);
1099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void exitKeyguardSecurely(IOnKeyguardExitResult callback);
110520d8bc1d840966b5519195aaa514597a662c053Mike Lockwood    boolean isKeyguardLocked();
111520d8bc1d840966b5519195aaa514597a662c053Mike Lockwood    boolean isKeyguardSecure();
1129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    boolean inKeyguardRestrictedInputMode();
1139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
114ffa424800d0338b8b894aef2ea1e3e3344cbda7aDianne Hackborn    void closeSystemDialogs(String reason);
115ffa424800d0338b8b894aef2ea1e3e3344cbda7aDianne Hackborn
1169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    // These can only be called with the SET_ANIMATON_SCALE permission.
1179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    float getAnimationScale(int which);
1189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    float[] getAnimationScales();
1199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void setAnimationScale(int which, float scale);
1209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void setAnimationScales(in float[] scales);
1219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    // These require the READ_INPUT_STATE permission.
1239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    int getSwitchState(int sw);
1249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    int getSwitchStateForDevice(int devid, int sw);
1259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    int getScancodeState(int sw);
1269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    int getScancodeStateForDevice(int devid, int sw);
1271d62ea9d8c2646d198b6967e2c6ae3dad5c18f9eDianne Hackborn    int getTrackballScancodeState(int sw);
1281d62ea9d8c2646d198b6967e2c6ae3dad5c18f9eDianne Hackborn    int getDPadScancodeState(int sw);
1299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    int getKeycodeState(int sw);
1309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    int getKeycodeStateForDevice(int devid, int sw);
1311d62ea9d8c2646d198b6967e2c6ae3dad5c18f9eDianne Hackborn    int getTrackballKeycodeState(int sw);
1321d62ea9d8c2646d198b6967e2c6ae3dad5c18f9eDianne Hackborn    int getDPadKeycodeState(int sw);
133a41ca77fabe1c7ad12ebb9b69b9e786c07d49fa0Jeff Brown    InputChannel monitorInput(String inputChannelName);
1346804433b0af50f33a338307ae8ddb50bc49e886bBrad Fitzpatrick
1359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    // Report whether the hardware supports the given keys; returns true if successful
1369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    boolean hasKeys(in int[] keycodes, inout boolean[] keyExists);
1379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1388d60866e2100db70ecf0502c14768a384514d7e9Jeff Brown    // Get input device information.
1398d60866e2100db70ecf0502c14768a384514d7e9Jeff Brown    InputDevice getInputDevice(int deviceId);
1408d60866e2100db70ecf0502c14768a384514d7e9Jeff Brown    int[] getInputDeviceIds();
1418d60866e2100db70ecf0502c14768a384514d7e9Jeff Brown
1429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    // For testing
1439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void setInTouchMode(boolean showFocus);
1446804433b0af50f33a338307ae8ddb50bc49e886bBrad Fitzpatrick
1456804433b0af50f33a338307ae8ddb50bc49e886bBrad Fitzpatrick    // For StrictMode flashing a red border on violations from the UI
1466804433b0af50f33a338307ae8ddb50bc49e886bBrad Fitzpatrick    // thread.  The uid/pid is implicit from the Binder call, and the Window
1476804433b0af50f33a338307ae8ddb50bc49e886bBrad Fitzpatrick    // Manager uses that to determine whether or not the red border should
1486804433b0af50f33a338307ae8ddb50bc49e886bBrad Fitzpatrick    // actually be shown.  (it will be ignored that pid doesn't have windows
1496804433b0af50f33a338307ae8ddb50bc49e886bBrad Fitzpatrick    // on screen)
1506804433b0af50f33a338307ae8ddb50bc49e886bBrad Fitzpatrick    void showStrictModeViolation(boolean on);
1516804433b0af50f33a338307ae8ddb50bc49e886bBrad Fitzpatrick
152c1a968a8ed45181312f7d4bcdbba0cc8ddc201baBrad Fitzpatrick    // Proxy to set the system property for whether the flashing
153c1a968a8ed45181312f7d4bcdbba0cc8ddc201baBrad Fitzpatrick    // should be enabled.  The 'enabled' value is null or blank for
154c1a968a8ed45181312f7d4bcdbba0cc8ddc201baBrad Fitzpatrick    // the system default (differs per build variant) or any valid
155c1a968a8ed45181312f7d4bcdbba0cc8ddc201baBrad Fitzpatrick    // boolean string as parsed by SystemProperties.getBoolean().
156c1a968a8ed45181312f7d4bcdbba0cc8ddc201baBrad Fitzpatrick    void setStrictModeVisualIndicatorPreference(String enabled);
157c1a968a8ed45181312f7d4bcdbba0cc8ddc201baBrad Fitzpatrick
1589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    // These can only be called with the SET_ORIENTATION permission.
1599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    /**
1609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * Change the current screen rotation, constants as per
1619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * {@link android.view.Surface}.
1629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * @param rotation the intended rotation.
1639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * @param alwaysSendConfiguration Flag to force a new configuration to
1649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * be evaluated.  This can be used when there are other parameters in
1659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * configuration that are changing.
166e4fbd6235c8d1c5b0ed4883ec275dd3fc9c919fbDianne Hackborn     * @param animFlags Animation flags as per {@link android.view.Surface}.
1679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     */
168e4fbd6235c8d1c5b0ed4883ec275dd3fc9c919fbDianne Hackborn    void setRotation(int rotation, boolean alwaysSendConfiguration, int animFlags);
1699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    /**
1719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * Retrieve the current screen orientation, constants as per
1729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * {@link android.view.Surface}.
1739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     */
1749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    int getRotation();
1759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
1769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    /**
1779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * Watch the rotation of the screen.  Returns the current rotation,
1789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     * calls back when it changes.
1799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project     */
1809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    int watchRotation(IRotationWatcher watcher);
181b73617de462579f7c12c25a4c2747c576f00f6a2Daniel Sandler
182b73617de462579f7c12c25a4c2747c576f00f6a2Daniel Sandler	/**
183b73617de462579f7c12c25a4c2747c576f00f6a2Daniel Sandler	 * Lock the device orientation to the current rotation. Sensor input will
184b73617de462579f7c12c25a4c2747c576f00f6a2Daniel Sandler	 * be ignored until thawRotation() is called.
185b73617de462579f7c12c25a4c2747c576f00f6a2Daniel Sandler	 * @hide
186b73617de462579f7c12c25a4c2747c576f00f6a2Daniel Sandler	 */
187b73617de462579f7c12c25a4c2747c576f00f6a2Daniel Sandler	void freezeRotation();
188b73617de462579f7c12c25a4c2747c576f00f6a2Daniel Sandler
189b73617de462579f7c12c25a4c2747c576f00f6a2Daniel Sandler	/**
190b73617de462579f7c12c25a4c2747c576f00f6a2Daniel Sandler	 * Release the orientation lock imposed by freezeRotation().
191b73617de462579f7c12c25a4c2747c576f00f6a2Daniel Sandler	 * @hide
192b73617de462579f7c12c25a4c2747c576f00f6a2Daniel Sandler	 */
193b73617de462579f7c12c25a4c2747c576f00f6a2Daniel Sandler	void thawRotation();
1940aae2d4e0075fd699cf40b26dca0eb2c3b3e37d2Dianne Hackborn
1950aae2d4e0075fd699cf40b26dca0eb2c3b3e37d2Dianne Hackborn	/**
1960aae2d4e0075fd699cf40b26dca0eb2c3b3e37d2Dianne Hackborn	 * Create a screenshot of the applications currently displayed.
1970aae2d4e0075fd699cf40b26dca0eb2c3b3e37d2Dianne Hackborn	 */
198d2835935d2df8be70d1b37d3ef3b2fe0155b3422Dianne Hackborn	Bitmap screenshotApplications(IBinder appToken, int maxWidth, int maxHeight);
199664644d9e012aa2a28ac96f305b1ce6499ec8806Joe Onorato
200664644d9e012aa2a28ac96f305b1ce6499ec8806Joe Onorato    /**
201664644d9e012aa2a28ac96f305b1ce6499ec8806Joe Onorato     * Called by the status bar to notify Views of changes to System UI visiblity.
202664644d9e012aa2a28ac96f305b1ce6499ec8806Joe Onorato     */
203664644d9e012aa2a28ac96f305b1ce6499ec8806Joe Onorato    void statusBarVisibilityChanged(int visibility);
2049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project}
205