IWindowManagerImpl.java revision a4ccb86ddc8f9f486aee25fb836f4aff97bf7679
1/*
2 * Copyright (C) 2011 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 *      http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17package android.view;
18
19import android.graphics.Point;
20import com.android.internal.view.IInputContext;
21import com.android.internal.view.IInputMethodClient;
22
23import android.content.res.CompatibilityInfo;
24import android.content.res.Configuration;
25import android.graphics.Bitmap;
26import android.os.Bundle;
27import android.os.IBinder;
28import android.os.IRemoteCallback;
29import android.os.RemoteException;
30import android.util.DisplayMetrics;
31
32import java.lang.Override;
33
34/**
35 * Basic implementation of {@link IWindowManager} so that {@link Display} (and
36 * {@link Display_Delegate}) can return a valid instance.
37 */
38public class IWindowManagerImpl implements IWindowManager {
39
40    private final Configuration mConfig;
41    private final DisplayMetrics mMetrics;
42    private final int mRotation;
43    private final boolean mHasNavigationBar;
44
45    public IWindowManagerImpl(Configuration config, DisplayMetrics metrics, int rotation,
46            boolean hasNavigationBar) {
47        mConfig = config;
48        mMetrics = metrics;
49        mRotation = rotation;
50        mHasNavigationBar = hasNavigationBar;
51    }
52
53    // custom API.
54
55    public DisplayMetrics getMetrics() {
56        return mMetrics;
57    }
58
59    // ---- implementation of IWindowManager that we care about ----
60
61    @Override
62    public int getRotation() throws RemoteException {
63        return mRotation;
64    }
65
66    @Override
67    public boolean hasNavigationBar() {
68        return mHasNavigationBar;
69    }
70
71    // ---- unused implementation of IWindowManager ----
72
73    @Override
74    public void addAppToken(int arg0, IApplicationToken arg1, int arg2, int arg3, int arg4,
75            boolean arg5, boolean arg6, int arg7, int arg8, boolean arg9, boolean arg10)
76            throws RemoteException {
77        // TODO Auto-generated method stub
78
79    }
80
81    @Override
82    public void addWindowToken(IBinder arg0, int arg1) throws RemoteException {
83        // TODO Auto-generated method stub
84
85    }
86
87    @Override
88    public void clearForcedDisplaySize(int displayId) throws RemoteException {
89        // TODO Auto-generated method stub
90    }
91
92    @Override
93    public void clearForcedDisplayDensity(int displayId) throws RemoteException {
94        // TODO Auto-generated method stub
95    }
96
97    @Override
98    public void setOverscan(int displayId, int left, int top, int right, int bottom)
99            throws RemoteException {
100        // TODO Auto-generated method stub
101    }
102
103    @Override
104    public void closeSystemDialogs(String arg0) throws RemoteException {
105        // TODO Auto-generated method stub
106
107    }
108
109    @Override
110    public void startFreezingScreen(int exitAnim, int enterAnim) {
111        // TODO Auto-generated method stub
112    }
113
114    @Override
115    public void stopFreezingScreen() {
116        // TODO Auto-generated method stub
117    }
118
119    @Override
120    public void disableKeyguard(IBinder arg0, String arg1) throws RemoteException {
121        // TODO Auto-generated method stub
122
123    }
124
125    @Override
126    public void executeAppTransition() throws RemoteException {
127        // TODO Auto-generated method stub
128
129    }
130
131    @Override
132    public void exitKeyguardSecurely(IOnKeyguardExitResult arg0) throws RemoteException {
133        // TODO Auto-generated method stub
134
135    }
136
137    @Override
138    public void freezeRotation(int arg0) throws RemoteException {
139        // TODO Auto-generated method stub
140
141    }
142
143    @Override
144    public float getAnimationScale(int arg0) throws RemoteException {
145        // TODO Auto-generated method stub
146        return 0;
147    }
148
149    @Override
150    public float[] getAnimationScales() throws RemoteException {
151        // TODO Auto-generated method stub
152        return null;
153    }
154
155    @Override
156    public int getAppOrientation(IApplicationToken arg0) throws RemoteException {
157        // TODO Auto-generated method stub
158        return 0;
159    }
160
161    @Override
162    public int getPendingAppTransition() throws RemoteException {
163        // TODO Auto-generated method stub
164        return 0;
165    }
166
167    @Override
168    public boolean inKeyguardRestrictedInputMode() throws RemoteException {
169        // TODO Auto-generated method stub
170        return false;
171    }
172
173    @Override
174    public boolean inputMethodClientHasFocus(IInputMethodClient arg0) throws RemoteException {
175        // TODO Auto-generated method stub
176        return false;
177    }
178
179    @Override
180    public boolean isKeyguardLocked() throws RemoteException {
181        // TODO Auto-generated method stub
182        return false;
183    }
184
185    @Override
186    public boolean isKeyguardSecure() throws RemoteException {
187        // TODO Auto-generated method stub
188        return false;
189    }
190
191    @Override
192    public boolean isViewServerRunning() throws RemoteException {
193        // TODO Auto-generated method stub
194        return false;
195    }
196
197    @Override
198    public IWindowSession openSession(IWindowSessionCallback argn1, IInputMethodClient arg0,
199            IInputContext arg1) throws RemoteException {
200        // TODO Auto-generated method stub
201        return null;
202    }
203
204    @Override
205    public void overridePendingAppTransition(String arg0, int arg1, int arg2,
206            IRemoteCallback startedCallback) throws RemoteException {
207        // TODO Auto-generated method stub
208
209    }
210
211    @Override
212    public void overridePendingAppTransitionScaleUp(int startX, int startY, int startWidth,
213            int startHeight) throws RemoteException {
214        // TODO Auto-generated method stub
215    }
216
217    @Override
218    public void overridePendingAppTransitionThumb(Bitmap srcThumb, int startX, int startY,
219            IRemoteCallback startedCallback, boolean scaleUp) throws RemoteException {
220        // TODO Auto-generated method stub
221    }
222
223    @Override
224    public void overridePendingAppTransitionAspectScaledThumb(Bitmap srcThumb, int startX,
225            int startY, IRemoteCallback startedCallback, boolean scaleUp) {
226        // TODO Auto-generated method stub
227    }
228
229    @Override
230    public void pauseKeyDispatching(IBinder arg0) throws RemoteException {
231        // TODO Auto-generated method stub
232
233    }
234
235    @Override
236    public void prepareAppTransition(int arg0, boolean arg1) throws RemoteException {
237        // TODO Auto-generated method stub
238
239    }
240
241    @Override
242    public void reenableKeyguard(IBinder arg0) throws RemoteException {
243        // TODO Auto-generated method stub
244
245    }
246
247    @Override
248    public void removeAppToken(IBinder arg0) throws RemoteException {
249        // TODO Auto-generated method stub
250
251    }
252
253    @Override
254    public void removeWindowToken(IBinder arg0) throws RemoteException {
255        // TODO Auto-generated method stub
256
257    }
258
259    @Override
260    public void resumeKeyDispatching(IBinder arg0) throws RemoteException {
261        // TODO Auto-generated method stub
262
263    }
264
265    @Override
266    public Bitmap screenshotApplications(IBinder arg0, int displayId, int arg1,
267            int arg2, boolean arg3) throws RemoteException {
268        // TODO Auto-generated method stub
269        return null;
270    }
271
272    @Override
273    public void setAnimationScale(int arg0, float arg1) throws RemoteException {
274        // TODO Auto-generated method stub
275
276    }
277
278    @Override
279    public void setAnimationScales(float[] arg0) throws RemoteException {
280        // TODO Auto-generated method stub
281
282    }
283
284    @Override
285    public float getCurrentAnimatorScale() throws RemoteException {
286        return 0;
287    }
288
289    @Override
290    public void setAppGroupId(IBinder arg0, int arg1) throws RemoteException {
291        // TODO Auto-generated method stub
292
293    }
294
295    @Override
296    public void setAppOrientation(IApplicationToken arg0, int arg1) throws RemoteException {
297        // TODO Auto-generated method stub
298    }
299
300    @Override
301    public void setAppStartingWindow(IBinder arg0, String arg1, int arg2, CompatibilityInfo arg3,
302            CharSequence arg4, int arg5, int arg6, int arg7, int arg8, IBinder arg9, boolean arg10)
303            throws RemoteException {
304        // TODO Auto-generated method stub
305    }
306
307    @Override
308    public void setAppVisibility(IBinder arg0, boolean arg1) throws RemoteException {
309        // TODO Auto-generated method stub
310
311    }
312
313    @Override
314    public void setAppWillBeHidden(IBinder arg0) throws RemoteException {
315        // TODO Auto-generated method stub
316    }
317
318    @Override
319    public void setEventDispatching(boolean arg0) throws RemoteException {
320        // TODO Auto-generated method stub
321    }
322
323    @Override
324    public void setFocusedApp(IBinder arg0, boolean arg1) throws RemoteException {
325        // TODO Auto-generated method stub
326    }
327
328    @Override
329    public void getInitialDisplaySize(int displayId, Point size) {
330        // TODO Auto-generated method stub
331    }
332
333    @Override
334    public void getBaseDisplaySize(int displayId, Point size) {
335        // TODO Auto-generated method stub
336    }
337
338    @Override
339    public void setForcedDisplaySize(int displayId, int arg0, int arg1) throws RemoteException {
340        // TODO Auto-generated method stub
341    }
342
343    @Override
344    public int getInitialDisplayDensity(int displayId) {
345        return -1;
346    }
347
348    @Override
349    public int getBaseDisplayDensity(int displayId) {
350        return -1;
351    }
352
353    @Override
354    public void setForcedDisplayDensity(int displayId, int density) throws RemoteException {
355        // TODO Auto-generated method stub
356    }
357
358    @Override
359    public void setInTouchMode(boolean arg0) throws RemoteException {
360        // TODO Auto-generated method stub
361    }
362
363    @Override
364    public void setNewConfiguration(Configuration arg0) throws RemoteException {
365        // TODO Auto-generated method stub
366    }
367
368    @Override
369    public void setScreenCaptureDisabled(int userId, boolean disabled) {
370        // TODO Auto-generated method stub
371    }
372
373    @Override
374    public void updateRotation(boolean arg0, boolean arg1) throws RemoteException {
375        // TODO Auto-generated method stub
376    }
377
378    @Override
379    public void setStrictModeVisualIndicatorPreference(String arg0) throws RemoteException {
380        // TODO Auto-generated method stub
381    }
382
383    @Override
384    public void showStrictModeViolation(boolean arg0) throws RemoteException {
385        // TODO Auto-generated method stub
386    }
387
388    @Override
389    public void startAppFreezingScreen(IBinder arg0, int arg1) throws RemoteException {
390        // TODO Auto-generated method stub
391    }
392
393    @Override
394    public boolean startViewServer(int arg0) throws RemoteException {
395        // TODO Auto-generated method stub
396        return false;
397    }
398
399    @Override
400    public void statusBarVisibilityChanged(int arg0) throws RemoteException {
401        // TODO Auto-generated method stub
402    }
403
404    @Override
405    public void stopAppFreezingScreen(IBinder arg0, boolean arg1) throws RemoteException {
406        // TODO Auto-generated method stub
407    }
408
409    @Override
410    public boolean stopViewServer() throws RemoteException {
411        // TODO Auto-generated method stub
412        return false;
413    }
414
415    @Override
416    public void thawRotation() throws RemoteException {
417        // TODO Auto-generated method stub
418    }
419
420    @Override
421    public Configuration updateOrientationFromAppTokens(Configuration arg0, IBinder arg1)
422            throws RemoteException {
423        // TODO Auto-generated method stub
424        return null;
425    }
426
427    @Override
428    public int watchRotation(IRotationWatcher arg0) throws RemoteException {
429        // TODO Auto-generated method stub
430        return 0;
431    }
432
433    @Override
434    public void removeRotationWatcher(IRotationWatcher arg0) throws RemoteException {
435    }
436
437    @Override
438    public IBinder asBinder() {
439        // TODO Auto-generated method stub
440        return null;
441    }
442
443    @Override
444    public int getPreferredOptionsPanelGravity() throws RemoteException {
445        return Gravity.CENTER_HORIZONTAL | Gravity.BOTTOM;
446    }
447
448    @Override
449    public void dismissKeyguard() {
450    }
451
452    @Override
453    public void keyguardGoingAway(boolean disableWindowAnimations,
454            boolean keyguardGoingToNotificationShade) throws RemoteException {
455    }
456
457    @Override
458    public void lockNow(Bundle options) {
459        // TODO Auto-generated method stub
460    }
461
462    @Override
463    public boolean isSafeModeEnabled() {
464        return false;
465    }
466
467    @Override
468    public boolean isRotationFrozen() throws RemoteException {
469        // TODO Auto-generated method stub
470        return false;
471    }
472
473    @Override
474    public void enableScreenIfNeeded() throws RemoteException {
475        // TODO Auto-generated method stub
476    }
477
478    @Override
479    public boolean clearWindowContentFrameStats(IBinder token) throws RemoteException {
480        // TODO Auto-generated method stub
481        return false;
482    }
483
484    @Override
485    public WindowContentFrameStats getWindowContentFrameStats(IBinder token)
486            throws RemoteException {
487        // TODO Auto-generated method stub
488        return null;
489    }
490}
491