118b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu/* 218b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu * Copyright (C) 2013 The Android Open Source Project 318b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu * 418b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu * Licensed under the Apache License, Version 2.0 (the "License"); 518b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu * you may not use this file except in compliance with the License. 618b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu * You may obtain a copy of the License at 718b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu * 818b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu * http://www.apache.org/licenses/LICENSE-2.0 918b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu * 1018b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu * Unless required by applicable law or agreed to in writing, software 1118b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu * distributed under the License is distributed on an "AS IS" BASIS, 1218b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1318b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu * See the License for the specific language governing permissions and 1418b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu * limitations under the License. 1518b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu */ 1618b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu 1718b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhupackage com.android.uiautomator.core; 1818b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu 1918b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhuimport android.app.Service; 2018b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhuimport android.app.UiAutomation; 2118b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhuimport android.content.Context; 2218b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhuimport android.os.PowerManager; 2318b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhuimport android.view.Display; 2418b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhuimport android.view.ViewConfiguration; 2518b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhuimport android.view.WindowManager; 2618b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu 2718b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu/** 2818b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu * @hide 2918b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu */ 3018b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhupublic class InstrumentationUiAutomatorBridge extends UiAutomatorBridge { 3118b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu 3218b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu private final Context mContext; 3318b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu 3418b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu public InstrumentationUiAutomatorBridge(Context context, UiAutomation uiAutomation) { 3518b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu super(uiAutomation); 3618b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu mContext = context; 3718b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu } 3818b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu 3918b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu public Display getDefaultDisplay() { 4018b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu WindowManager windowManager = (WindowManager) 4118b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu mContext.getSystemService(Service.WINDOW_SERVICE); 4218b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu return windowManager.getDefaultDisplay(); 4318b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu } 4418b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu 4518b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu @Override 4618b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu public int getRotation() { 4718b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu return getDefaultDisplay().getRotation(); 4818b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu } 4918b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu 5018b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu @Override 5118b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu public boolean isScreenOn() { 5218b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu PowerManager pm = (PowerManager) 5318b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu mContext.getSystemService(Service.POWER_SERVICE); 5418b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu return pm.isScreenOn(); 5518b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu } 5618b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu 5718b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu public long getSystemLongPressTime() { 5818b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu return ViewConfiguration.getLongPressTimeout(); 5918b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu } 6018b892c723e812a7e111f102d2b0c0782b116bb6Guang Zhu} 61