blob: c403ce640541682b63dca661ef0f6c00ed9517a3 [file] [log] [blame]
Adam Lesinski282e1812014-01-23 18:17:42 -08001/*
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;
Adam Lesinski282e1812014-01-23 18:17:42 -080026import android.os.Bundle;
27import android.os.IBinder;
28import android.os.IRemoteCallback;
29import android.os.RemoteException;
30import android.util.DisplayMetrics;
Adam Lesinski282e1812014-01-23 18:17:42 -080031
Svetoslavdd137a82014-04-10 12:48:07 -070032import java.lang.Override;
Adam Lesinski282e1812014-01-23 18:17:42 -080033
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,
Craig Mautnerbb742462014-07-07 15:28:55 -070075 boolean arg5, boolean arg6, int arg7, int arg8, boolean arg9, boolean arg10)
Adam Lesinski282e1812014-01-23 18:17:42 -080076 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
Dianne Hackborneb94fa72014-06-03 17:48:12 -0700198 public IWindowSession openSession(IWindowSessionCallback argn1, IInputMethodClient arg0,
199 IInputContext arg1) throws RemoteException {
Adam Lesinski282e1812014-01-23 18:17:42 -0800200 // 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
Winson Chunga4ccb862014-08-22 15:26:27 -0700224 public void overridePendingAppTransitionAspectScaledThumb(Bitmap srcThumb, int startX,
Winson Chung2e7f3bd2014-09-05 13:17:22 +0200225 int startY, int targetWidth, int targetHeight, IRemoteCallback startedCallback,
226 boolean scaleUp) {
Winson Chunga4ccb862014-08-22 15:26:27 -0700227 // TODO Auto-generated method stub
228 }
229
230 @Override
Adam Lesinski282e1812014-01-23 18:17:42 -0800231 public void pauseKeyDispatching(IBinder arg0) throws RemoteException {
232 // TODO Auto-generated method stub
233
234 }
235
236 @Override
237 public void prepareAppTransition(int arg0, boolean arg1) throws RemoteException {
238 // TODO Auto-generated method stub
239
240 }
241
242 @Override
243 public void reenableKeyguard(IBinder arg0) throws RemoteException {
244 // TODO Auto-generated method stub
245
246 }
247
248 @Override
249 public void removeAppToken(IBinder arg0) throws RemoteException {
250 // TODO Auto-generated method stub
251
252 }
253
254 @Override
255 public void removeWindowToken(IBinder arg0) throws RemoteException {
256 // TODO Auto-generated method stub
257
258 }
259
260 @Override
261 public void resumeKeyDispatching(IBinder arg0) throws RemoteException {
262 // TODO Auto-generated method stub
263
264 }
265
266 @Override
John Reck492d1642013-10-04 09:43:13 -0700267 public Bitmap screenshotApplications(IBinder arg0, int displayId, int arg1,
268 int arg2, boolean arg3) throws RemoteException {
Adam Lesinski282e1812014-01-23 18:17:42 -0800269 // TODO Auto-generated method stub
270 return null;
271 }
272
273 @Override
274 public void setAnimationScale(int arg0, float arg1) throws RemoteException {
275 // TODO Auto-generated method stub
276
277 }
278
279 @Override
280 public void setAnimationScales(float[] arg0) throws RemoteException {
281 // TODO Auto-generated method stub
282
283 }
284
285 @Override
Dianne Hackborneb94fa72014-06-03 17:48:12 -0700286 public float getCurrentAnimatorScale() throws RemoteException {
287 return 0;
288 }
289
290 @Override
Adam Lesinski282e1812014-01-23 18:17:42 -0800291 public void setAppGroupId(IBinder arg0, int arg1) throws RemoteException {
292 // TODO Auto-generated method stub
293
294 }
295
296 @Override
297 public void setAppOrientation(IApplicationToken arg0, int arg1) throws RemoteException {
298 // TODO Auto-generated method stub
299 }
300
301 @Override
302 public void setAppStartingWindow(IBinder arg0, String arg1, int arg2, CompatibilityInfo arg3,
303 CharSequence arg4, int arg5, int arg6, int arg7, int arg8, IBinder arg9, boolean arg10)
304 throws RemoteException {
305 // TODO Auto-generated method stub
306 }
307
308 @Override
309 public void setAppVisibility(IBinder arg0, boolean arg1) throws RemoteException {
310 // TODO Auto-generated method stub
311
312 }
313
314 @Override
315 public void setAppWillBeHidden(IBinder arg0) throws RemoteException {
316 // TODO Auto-generated method stub
317 }
318
319 @Override
320 public void setEventDispatching(boolean arg0) throws RemoteException {
321 // TODO Auto-generated method stub
322 }
323
324 @Override
325 public void setFocusedApp(IBinder arg0, boolean arg1) throws RemoteException {
326 // TODO Auto-generated method stub
327 }
328
329 @Override
330 public void getInitialDisplaySize(int displayId, Point size) {
331 // TODO Auto-generated method stub
332 }
333
334 @Override
335 public void getBaseDisplaySize(int displayId, Point size) {
336 // TODO Auto-generated method stub
337 }
338
339 @Override
340 public void setForcedDisplaySize(int displayId, int arg0, int arg1) throws RemoteException {
341 // TODO Auto-generated method stub
342 }
343
344 @Override
345 public int getInitialDisplayDensity(int displayId) {
346 return -1;
347 }
348
349 @Override
350 public int getBaseDisplayDensity(int displayId) {
351 return -1;
352 }
353
354 @Override
355 public void setForcedDisplayDensity(int displayId, int density) throws RemoteException {
356 // TODO Auto-generated method stub
357 }
358
359 @Override
360 public void setInTouchMode(boolean arg0) throws RemoteException {
361 // TODO Auto-generated method stub
362 }
363
364 @Override
365 public void setNewConfiguration(Configuration arg0) throws RemoteException {
366 // TODO Auto-generated method stub
367 }
368
369 @Override
Sander Alewijnsea87863a2014-07-29 12:01:38 +0100370 public void setScreenCaptureDisabled(int userId, boolean disabled) {
Sander Alewijnsed2a1eec2014-07-09 12:57:05 +0100371 // TODO Auto-generated method stub
372 }
373
374 @Override
Adam Lesinski282e1812014-01-23 18:17:42 -0800375 public void updateRotation(boolean arg0, boolean arg1) throws RemoteException {
376 // TODO Auto-generated method stub
377 }
378
379 @Override
380 public void setStrictModeVisualIndicatorPreference(String arg0) throws RemoteException {
381 // TODO Auto-generated method stub
382 }
383
384 @Override
385 public void showStrictModeViolation(boolean arg0) throws RemoteException {
386 // TODO Auto-generated method stub
387 }
388
389 @Override
390 public void startAppFreezingScreen(IBinder arg0, int arg1) throws RemoteException {
391 // TODO Auto-generated method stub
392 }
393
394 @Override
395 public boolean startViewServer(int arg0) throws RemoteException {
396 // TODO Auto-generated method stub
397 return false;
398 }
399
400 @Override
401 public void statusBarVisibilityChanged(int arg0) throws RemoteException {
402 // TODO Auto-generated method stub
403 }
404
405 @Override
406 public void stopAppFreezingScreen(IBinder arg0, boolean arg1) throws RemoteException {
407 // TODO Auto-generated method stub
408 }
409
410 @Override
411 public boolean stopViewServer() throws RemoteException {
412 // TODO Auto-generated method stub
413 return false;
414 }
415
416 @Override
417 public void thawRotation() throws RemoteException {
418 // TODO Auto-generated method stub
419 }
420
421 @Override
422 public Configuration updateOrientationFromAppTokens(Configuration arg0, IBinder arg1)
423 throws RemoteException {
424 // TODO Auto-generated method stub
425 return null;
426 }
427
428 @Override
429 public int watchRotation(IRotationWatcher arg0) throws RemoteException {
430 // TODO Auto-generated method stub
431 return 0;
432 }
433
434 @Override
435 public void removeRotationWatcher(IRotationWatcher arg0) throws RemoteException {
436 }
437
438 @Override
Adam Lesinski282e1812014-01-23 18:17:42 -0800439 public IBinder asBinder() {
440 // TODO Auto-generated method stub
441 return null;
442 }
443
444 @Override
445 public int getPreferredOptionsPanelGravity() throws RemoteException {
446 return Gravity.CENTER_HORIZONTAL | Gravity.BOTTOM;
447 }
448
449 @Override
450 public void dismissKeyguard() {
451 }
452
453 @Override
Jorim Jaggi84a3e7a2014-08-13 17:58:58 +0200454 public void keyguardGoingAway(boolean disableWindowAnimations,
455 boolean keyguardGoingToNotificationShade) throws RemoteException {
Craig Mautner8bd94d52014-05-29 10:49:10 -0700456 }
457
458 @Override
Adam Lesinski282e1812014-01-23 18:17:42 -0800459 public void lockNow(Bundle options) {
460 // TODO Auto-generated method stub
461 }
462
463 @Override
464 public boolean isSafeModeEnabled() {
465 return false;
466 }
467
468 @Override
Adam Lesinski282e1812014-01-23 18:17:42 -0800469 public boolean isRotationFrozen() throws RemoteException {
470 // TODO Auto-generated method stub
471 return false;
472 }
Jorim Jaggicff0acb2014-03-31 16:35:15 +0200473
474 @Override
475 public void enableScreenIfNeeded() throws RemoteException {
Svetoslavdd137a82014-04-10 12:48:07 -0700476 // TODO Auto-generated method stub
477 }
478
479 @Override
Colin Crossd4d46582014-04-10 22:41:05 -0700480 public boolean clearWindowContentFrameStats(IBinder token) throws RemoteException {
Svetoslav1376d602014-03-13 11:17:26 -0700481 // TODO Auto-generated method stub
482 return false;
483 }
484
485 @Override
Colin Crossd4d46582014-04-10 22:41:05 -0700486 public WindowContentFrameStats getWindowContentFrameStats(IBinder token)
Svetoslavdd137a82014-04-10 12:48:07 -0700487 throws RemoteException {
Svetoslav1376d602014-03-13 11:17:26 -0700488 // TODO Auto-generated method stub
489 return null;
Jorim Jaggicff0acb2014-03-31 16:35:15 +0200490 }
Adam Lesinski282e1812014-01-23 18:17:42 -0800491}