blob: d73723a049d1e6fcfa6ba1b001aa3b2d5b867abc [file] [log] [blame]
The Android Open Source Project9066cfe2009-03-03 19:31:44 -08001/* //device/java/android/android/view/IWindow.aidl
2**
3** Copyright 2007, The Android Open Source Project
4**
5** Licensed under the Apache License, Version 2.0 (the "License");
6** you may not use this file except in compliance with the License.
7** You may obtain a copy of the License at
8**
9** http://www.apache.org/licenses/LICENSE-2.0
10**
11** Unless required by applicable law or agreed to in writing, software
12** distributed under the License is distributed on an "AS IS" BASIS,
13** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14** See the License for the specific language governing permissions and
15** limitations under the License.
16*/
17
18package android.view;
19
Dianne Hackborne36d6e22010-02-17 19:46:25 -080020import android.content.res.Configuration;
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080021import android.graphics.Rect;
Dianne Hackborn75804932009-10-20 20:15:20 -070022import android.os.Bundle;
23import android.os.ParcelFileDescriptor;
Christopher Tatea53146c2010-09-07 11:57:52 -070024import android.view.DragEvent;
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080025import android.view.KeyEvent;
26import android.view.MotionEvent;
27
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080028/**
29 * API back to a client window that the Window Manager uses to inform it of
30 * interesting things happening.
31 *
32 * {@hide}
33 */
34oneway interface IWindow {
35 /**
36 * ===== NOTICE =====
37 * The first method must remain the first method. Scripts
38 * and tools rely on their transaction number to work properly.
39 */
40
41 /**
42 * Invoked by the view server to tell a window to execute the specified
43 * command. Any response from the receiver must be sent through the
44 * specified file descriptor.
45 */
46 void executeCommand(String command, String parameters, in ParcelFileDescriptor descriptor);
47
48 void resized(int w, int h, in Rect coveredInsets, in Rect visibleInsets,
Dianne Hackborne36d6e22010-02-17 19:46:25 -080049 boolean reportDraw, in Configuration newConfig);
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080050 void dispatchAppVisibility(boolean visible);
51 void dispatchGetNewSurface();
Romain Guybb9908b2012-03-08 11:14:07 -080052 void dispatchScreenState(boolean on);
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080053
54 /**
55 * Tell the window that it is either gaining or losing focus. Keep it up
56 * to date on the current state showing navigational focus (touch mode) too.
57 */
58 void windowFocusChanged(boolean hasFocus, boolean inTouchMode);
Dianne Hackborn72c82ab2009-08-11 21:13:54 -070059
Dianne Hackbornffa42482009-09-23 22:20:11 -070060 void closeSystemDialogs(String reason);
61
Dianne Hackborn72c82ab2009-08-11 21:13:54 -070062 /**
63 * Called for wallpaper windows when their offsets change.
64 */
Marco Nelissenbf6956b2009-11-09 15:21:13 -080065 void dispatchWallpaperOffsets(float x, float y, float xStep, float yStep, boolean sync);
Dianne Hackborn75804932009-10-20 20:15:20 -070066
67 void dispatchWallpaperCommand(String action, int x, int y,
68 int z, in Bundle extras, boolean sync);
Christopher Tatea53146c2010-09-07 11:57:52 -070069
70 /**
71 * Drag/drop events
72 */
Dianne Hackborn12d3a942012-04-27 14:16:30 -070073 void dispatchDragEvent(in DragEvent event);
Joe Onorato664644d2011-01-23 17:53:23 -080074
75 /**
76 * System chrome visibility changes
77 */
Dianne Hackborn12d3a942012-04-27 14:16:30 -070078 void dispatchSystemUiVisibilityChanged(int seq, int globalVisibility,
Dianne Hackborn9a230e02011-10-06 11:51:27 -070079 int localValue, int localChanges);
Dianne Hackborn12d3a942012-04-27 14:16:30 -070080
81 /**
82 * If the window manager returned RELAYOUT_RES_ANIMATING
83 * from relayout(), this method will be called when the animation
84 * is done.
85 */
86 void doneAnimating();
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080087}