Home | History | Annotate | Download | only in view
      1 /* //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 
     18 package android.view;
     19 
     20 import android.content.res.Configuration;
     21 import android.graphics.Rect;
     22 import android.os.Bundle;
     23 import android.os.ParcelFileDescriptor;
     24 import android.view.DragEvent;
     25 import android.view.KeyEvent;
     26 import android.view.MotionEvent;
     27 
     28 /**
     29  * API back to a client window that the Window Manager uses to inform it of
     30  * interesting things happening.
     31  *
     32  * {@hide}
     33  */
     34 oneway 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,
     49             boolean reportDraw, in Configuration newConfig);
     50     void dispatchAppVisibility(boolean visible);
     51     void dispatchGetNewSurface();
     52 
     53     /**
     54      * Tell the window that it is either gaining or losing focus.  Keep it up
     55      * to date on the current state showing navigational focus (touch mode) too.
     56      */
     57     void windowFocusChanged(boolean hasFocus, boolean inTouchMode);
     58 
     59     void closeSystemDialogs(String reason);
     60 
     61     /**
     62      * Called for wallpaper windows when their offsets change.
     63      */
     64     void dispatchWallpaperOffsets(float x, float y, float xStep, float yStep, boolean sync);
     65 
     66     void dispatchWallpaperCommand(String action, int x, int y,
     67             int z, in Bundle extras, boolean sync);
     68 
     69     /**
     70      * Drag/drop events
     71      */
     72      void dispatchDragEvent(in DragEvent event);
     73 
     74     /**
     75      * System chrome visibility changes
     76      */
     77      void dispatchSystemUiVisibilityChanged(int seq, int globalVisibility,
     78             int localValue, int localChanges);
     79 }
     80