115a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root/*
215a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * Copyright (C) 2009 The Android Open Source Project
315a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root *
415a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * Licensed under the Apache License, Version 2.0 (the "License");
515a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * you may not use this file except in compliance with the License.
615a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * You may obtain a copy of the License at
715a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root *
815a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root *      http://www.apache.org/licenses/LICENSE-2.0
915a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root *
1015a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * Unless required by applicable law or agreed to in writing, software
1115a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * distributed under the License is distributed on an "AS IS" BASIS,
1215a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1315a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * See the License for the specific language governing permissions and
1415a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root * limitations under the License.
1515a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root */
1615a4d2ffd04dc6c70f2cd17dae12ac6bc14c69abKenny Root
174c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackbornpackage com.android.internal.view;
184c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn
19e36d6e277e49475076b7872d36ea6a5c5b996e9dDianne Hackbornimport android.content.res.Configuration;
204c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackbornimport android.graphics.Rect;
217580493b014a2c7ea883cd291255798dc72ebbffDianne Hackbornimport android.os.Bundle;
224c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackbornimport android.os.ParcelFileDescriptor;
234c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackbornimport android.os.RemoteException;
24a53146c5569f8ff5f7eb55e9ad35d23ddacf2addChristopher Tateimport android.view.DragEvent;
254c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackbornimport android.view.IWindow;
264c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackbornimport android.view.IWindowSession;
274c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn
284c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackbornpublic class BaseIWindow extends IWindow.Stub {
294c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn    private IWindowSession mSession;
309a230e01a1237749a8a19a5de8d46531b0c8ca6aDianne Hackborn    public int mSeq;
315702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner
324c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn    public void setSession(IWindowSession session) {
334c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn        mSession = session;
344c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn    }
355702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner
365702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    @Override
37c4aad01cbbb69c916ef323693e1fd0560b0eccbaDianne Hackborn    public void resized(Rect frame, Rect overscanInsets, Rect contentInsets,
38fa10423fa00f3495e451016acba9b6848eb995c9Adrian Roos            Rect visibleInsets, Rect stableInsets, boolean reportDraw, Configuration newConfig) {
394c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn        if (reportDraw) {
404c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn            try {
414c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn                mSession.finishDrawing(this);
424c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn            } catch (RemoteException e) {
434c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn            }
444c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn        }
454c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn    }
464c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn
475702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    @Override
485702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    public void moved(int newX, int newY) {
495702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    }
505702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner
515702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    @Override
524c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn    public void dispatchAppVisibility(boolean visible) {
534c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn    }
544c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn
555702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    @Override
564c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn    public void dispatchGetNewSurface() {
574c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn    }
584c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn
595702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    @Override
604c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn    public void windowFocusChanged(boolean hasFocus, boolean touchEnabled) {
614c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn    }
624c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn
635702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    @Override
644c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn    public void executeCommand(String command, String parameters, ParcelFileDescriptor out) {
654c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn    }
665702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner
675702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    @Override
68ffa424800d0338b8b894aef2ea1e3e3344cbda7aDianne Hackborn    public void closeSystemDialogs(String reason) {
69ffa424800d0338b8b894aef2ea1e3e3344cbda7aDianne Hackborn    }
705702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner
715702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    @Override
72bf6956b1d95442e9d9c483894d578fe6b7044cbbMarco Nelissen    public void dispatchWallpaperOffsets(float x, float y, float xStep, float yStep, boolean sync) {
7319382ac1a4e4e7c23a1346d299368763f149de9cDianne Hackborn        if (sync) {
7419382ac1a4e4e7c23a1346d299368763f149de9cDianne Hackborn            try {
7519382ac1a4e4e7c23a1346d299368763f149de9cDianne Hackborn                mSession.wallpaperOffsetsComplete(asBinder());
7619382ac1a4e4e7c23a1346d299368763f149de9cDianne Hackborn            } catch (RemoteException e) {
7719382ac1a4e4e7c23a1346d299368763f149de9cDianne Hackborn            }
7819382ac1a4e4e7c23a1346d299368763f149de9cDianne Hackborn        }
7972c82ab9923025a91bbabb32e56bfea27bfd083bDianne Hackborn    }
80a53146c5569f8ff5f7eb55e9ad35d23ddacf2addChristopher Tate
815702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    @Override
82a53146c5569f8ff5f7eb55e9ad35d23ddacf2addChristopher Tate    public void dispatchDragEvent(DragEvent event) {
83a53146c5569f8ff5f7eb55e9ad35d23ddacf2addChristopher Tate    }
84a53146c5569f8ff5f7eb55e9ad35d23ddacf2addChristopher Tate
855702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    @Override
869a230e01a1237749a8a19a5de8d46531b0c8ca6aDianne Hackborn    public void dispatchSystemUiVisibilityChanged(int seq, int globalUi,
879a230e01a1237749a8a19a5de8d46531b0c8ca6aDianne Hackborn            int localValue, int localChanges) {
889a230e01a1237749a8a19a5de8d46531b0c8ca6aDianne Hackborn        mSeq = seq;
89664644d9e012aa2a28ac96f305b1ce6499ec8806Joe Onorato    }
90664644d9e012aa2a28ac96f305b1ce6499ec8806Joe Onorato
915702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    @Override
927580493b014a2c7ea883cd291255798dc72ebbffDianne Hackborn    public void dispatchWallpaperCommand(String action, int x, int y,
937580493b014a2c7ea883cd291255798dc72ebbffDianne Hackborn            int z, Bundle extras, boolean sync) {
947580493b014a2c7ea883cd291255798dc72ebbffDianne Hackborn        if (sync) {
957580493b014a2c7ea883cd291255798dc72ebbffDianne Hackborn            try {
967580493b014a2c7ea883cd291255798dc72ebbffDianne Hackborn                mSession.wallpaperCommandComplete(asBinder(), null);
977580493b014a2c7ea883cd291255798dc72ebbffDianne Hackborn            } catch (RemoteException e) {
987580493b014a2c7ea883cd291255798dc72ebbffDianne Hackborn            }
997580493b014a2c7ea883cd291255798dc72ebbffDianne Hackborn        }
1007580493b014a2c7ea883cd291255798dc72ebbffDianne Hackborn    }
10112d3a94397c33fdb773a1eaaaa13cab80bf0c571Dianne Hackborn
1025702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    @Override
10312d3a94397c33fdb773a1eaaaa13cab80bf0c571Dianne Hackborn    public void doneAnimating() {
10412d3a94397c33fdb773a1eaaaa13cab80bf0c571Dianne Hackborn    }
1059c79504225f60c72c947220b6aca928f11279e1cCraig Mautner
1069c79504225f60c72c947220b6aca928f11279e1cCraig Mautner    @Override
1079c79504225f60c72c947220b6aca928f11279e1cCraig Mautner    public void dispatchWindowShown() {
1089c79504225f60c72c947220b6aca928f11279e1cCraig Mautner    }
1094c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn}
110