You've already forked android_translation_layer
mirror of
https://gitlab.com/android_translation_layer/android_translation_layer.git
synced 2025-10-27 11:48:10 -07:00
112 lines
3.9 KiB
Java
112 lines
3.9 KiB
Java
/*
|
|
* Copyright (C) 2008 The Android Open Source Project
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
package android.content.pm;
|
|
|
|
/**
|
|
* Information you can retrieve about hardware configuration preferences
|
|
* declared by an application. This corresponds to information collected from the
|
|
* AndroidManifest.xml's <uses-configuration> and <uses-feature> tags.
|
|
*/
|
|
public class ConfigurationInfo {
|
|
/**
|
|
* The kind of touch screen attached to the device.
|
|
* One of: {@link android.content.res.Configuration#TOUCHSCREEN_NOTOUCH},
|
|
* {@link android.content.res.Configuration#TOUCHSCREEN_STYLUS},
|
|
* {@link android.content.res.Configuration#TOUCHSCREEN_FINGER}.
|
|
*/
|
|
public int reqTouchScreen;
|
|
|
|
/**
|
|
* Application's input method preference.
|
|
* One of: {@link android.content.res.Configuration#KEYBOARD_UNDEFINED},
|
|
* {@link android.content.res.Configuration#KEYBOARD_NOKEYS},
|
|
* {@link android.content.res.Configuration#KEYBOARD_QWERTY},
|
|
* {@link android.content.res.Configuration#KEYBOARD_12KEY}
|
|
*/
|
|
public int reqKeyboardType;
|
|
|
|
/**
|
|
* A flag indicating whether any keyboard is available.
|
|
* one of: {@link android.content.res.Configuration#NAVIGATION_UNDEFINED},
|
|
* {@link android.content.res.Configuration#NAVIGATION_DPAD},
|
|
* {@link android.content.res.Configuration#NAVIGATION_TRACKBALL},
|
|
* {@link android.content.res.Configuration#NAVIGATION_WHEEL}
|
|
*/
|
|
public int reqNavigation;
|
|
|
|
/**
|
|
* Value for {@link #reqInputFeatures}: if set, indicates that the application
|
|
* requires a hard keyboard
|
|
*/
|
|
public static final int INPUT_FEATURE_HARD_KEYBOARD = 0x00000001;
|
|
|
|
/**
|
|
* Value for {@link #reqInputFeatures}: if set, indicates that the application
|
|
* requires a five way navigation device
|
|
*/
|
|
public static final int INPUT_FEATURE_FIVE_WAY_NAV = 0x00000002;
|
|
|
|
/**
|
|
* Flags associated with the input features. Any combination of
|
|
* {@link #INPUT_FEATURE_HARD_KEYBOARD},
|
|
* {@link #INPUT_FEATURE_FIVE_WAY_NAV}
|
|
*/
|
|
public int reqInputFeatures = 0;
|
|
|
|
/**
|
|
* Default value for {@link #reqGlEsVersion};
|
|
*/
|
|
public static final int GL_ES_VERSION_UNDEFINED = 0;
|
|
/**
|
|
* The GLES version used by an application. The upper order 16 bits represent the
|
|
* major version and the lower order 16 bits the minor version.
|
|
*/
|
|
public int reqGlEsVersion;
|
|
|
|
public ConfigurationInfo() {
|
|
reqGlEsVersion = 0x00030000;
|
|
}
|
|
|
|
public ConfigurationInfo(ConfigurationInfo orig) {
|
|
reqTouchScreen = orig.reqTouchScreen;
|
|
reqKeyboardType = orig.reqKeyboardType;
|
|
reqNavigation = orig.reqNavigation;
|
|
reqInputFeatures = orig.reqInputFeatures;
|
|
reqGlEsVersion = orig.reqGlEsVersion;
|
|
}
|
|
|
|
public String toString() {
|
|
return "ConfigurationInfo{" + Integer.toHexString(System.identityHashCode(this)) + " touchscreen = " + reqTouchScreen + " inputMethod = " + reqKeyboardType + " navigation = " + reqNavigation + " reqInputFeatures = " + reqInputFeatures + " reqGlEsVersion = " + reqGlEsVersion + "}";
|
|
}
|
|
|
|
public int describeContents() {
|
|
return 0;
|
|
}
|
|
|
|
/**
|
|
* This method extracts the major and minor version of reqGLEsVersion attribute
|
|
* and returns it as a string. Say reqGlEsVersion value of 0x00010002 is returned
|
|
* as 1.2
|
|
* @return String representation of the reqGlEsVersion attribute
|
|
*/
|
|
public String getGlEsVersion() {
|
|
int major = ((reqGlEsVersion & 0xffff0000) >> 16);
|
|
int minor = reqGlEsVersion & 0x0000ffff;
|
|
return String.valueOf(major) + "." + String.valueOf(minor);
|
|
}
|
|
}
|