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
37758143ecfedbe08cc6c4fed0ad8ad7a854194ca4Svetoslav Ganov    public void resized(Rect frame, Rect contentInsets,
38e36d6e277e49475076b7872d36ea6a5c5b996e9dDianne Hackborn            Rect visibleInsets, 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
60bb9908b828a8cfd5965553be66faa6af89973697Romain Guy    public void dispatchScreenState(boolean on) {
617e4e561bc717a6eea4e0d06ec4173ad27420425fRomain Guy    }
627e4e561bc717a6eea4e0d06ec4173ad27420425fRomain Guy
635702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    @Override
644c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn    public void windowFocusChanged(boolean hasFocus, boolean touchEnabled) {
654c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn    }
664c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn
675702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    @Override
684c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn    public void executeCommand(String command, String parameters, ParcelFileDescriptor out) {
694c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn    }
705702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner
715702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    @Override
72ffa424800d0338b8b894aef2ea1e3e3344cbda7aDianne Hackborn    public void closeSystemDialogs(String reason) {
73ffa424800d0338b8b894aef2ea1e3e3344cbda7aDianne Hackborn    }
745702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner
755702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    @Override
76bf6956b1d95442e9d9c483894d578fe6b7044cbbMarco Nelissen    public void dispatchWallpaperOffsets(float x, float y, float xStep, float yStep, boolean sync) {
7719382ac1a4e4e7c23a1346d299368763f149de9cDianne Hackborn        if (sync) {
7819382ac1a4e4e7c23a1346d299368763f149de9cDianne Hackborn            try {
7919382ac1a4e4e7c23a1346d299368763f149de9cDianne Hackborn                mSession.wallpaperOffsetsComplete(asBinder());
8019382ac1a4e4e7c23a1346d299368763f149de9cDianne Hackborn            } catch (RemoteException e) {
8119382ac1a4e4e7c23a1346d299368763f149de9cDianne Hackborn            }
8219382ac1a4e4e7c23a1346d299368763f149de9cDianne Hackborn        }
8372c82ab9923025a91bbabb32e56bfea27bfd083bDianne Hackborn    }
84a53146c5569f8ff5f7eb55e9ad35d23ddacf2addChristopher Tate
855702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    @Override
86a53146c5569f8ff5f7eb55e9ad35d23ddacf2addChristopher Tate    public void dispatchDragEvent(DragEvent event) {
87a53146c5569f8ff5f7eb55e9ad35d23ddacf2addChristopher Tate    }
88a53146c5569f8ff5f7eb55e9ad35d23ddacf2addChristopher Tate
895702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    @Override
909a230e01a1237749a8a19a5de8d46531b0c8ca6aDianne Hackborn    public void dispatchSystemUiVisibilityChanged(int seq, int globalUi,
919a230e01a1237749a8a19a5de8d46531b0c8ca6aDianne Hackborn            int localValue, int localChanges) {
929a230e01a1237749a8a19a5de8d46531b0c8ca6aDianne Hackborn        mSeq = seq;
93664644d9e012aa2a28ac96f305b1ce6499ec8806Joe Onorato    }
94664644d9e012aa2a28ac96f305b1ce6499ec8806Joe Onorato
955702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    @Override
967580493b014a2c7ea883cd291255798dc72ebbffDianne Hackborn    public void dispatchWallpaperCommand(String action, int x, int y,
977580493b014a2c7ea883cd291255798dc72ebbffDianne Hackborn            int z, Bundle extras, boolean sync) {
987580493b014a2c7ea883cd291255798dc72ebbffDianne Hackborn        if (sync) {
997580493b014a2c7ea883cd291255798dc72ebbffDianne Hackborn            try {
1007580493b014a2c7ea883cd291255798dc72ebbffDianne Hackborn                mSession.wallpaperCommandComplete(asBinder(), null);
1017580493b014a2c7ea883cd291255798dc72ebbffDianne Hackborn            } catch (RemoteException e) {
1027580493b014a2c7ea883cd291255798dc72ebbffDianne Hackborn            }
1037580493b014a2c7ea883cd291255798dc72ebbffDianne Hackborn        }
1047580493b014a2c7ea883cd291255798dc72ebbffDianne Hackborn    }
10512d3a94397c33fdb773a1eaaaa13cab80bf0c571Dianne Hackborn
1065702d4dfb5b81491f873a3617f8d8fc8dc5279e6Craig Mautner    @Override
10712d3a94397c33fdb773a1eaaaa13cab80bf0c571Dianne Hackborn    public void doneAnimating() {
10812d3a94397c33fdb773a1eaaaa13cab80bf0c571Dianne Hackborn    }
1094c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3Dianne Hackborn}
110