GameMode: remove hwkeys toggle on non-hwkeys devices
Change-Id: I730ccd05c4fd2e00966201ba3ab0dfb07ede1a1b Signed-off-by: DennySPB <dennyspb@gmail.com> Signed-off-by: DennySPb <dennyspb@gmail.com> Signed-off-by: Hưng Phan <phandinhhungvp2001@gmail.com>
This commit is contained in:
@@ -75,6 +75,11 @@ public class GamingMode extends SettingsPreferenceFragment
|
|||||||
private Map<String, Package> mGamingPackages;
|
private Map<String, Package> mGamingPackages;
|
||||||
private Context mContext;
|
private Context mContext;
|
||||||
|
|
||||||
|
private static final int KEY_MASK_HOME = 0x01;
|
||||||
|
private static final int KEY_MASK_BACK = 0x02;
|
||||||
|
private static final int KEY_MASK_MENU = 0x04;
|
||||||
|
private static final int KEY_MASK_APP_SWITCH = 0x10;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onCreate(Bundle savedInstanceState) {
|
public void onCreate(Bundle savedInstanceState) {
|
||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
@@ -87,6 +92,10 @@ public class GamingMode extends SettingsPreferenceFragment
|
|||||||
|
|
||||||
mHardwareKeysDisable = (SwitchPreference) findPreference(GAMING_MODE_HW_KEYS);
|
mHardwareKeysDisable = (SwitchPreference) findPreference(GAMING_MODE_HW_KEYS);
|
||||||
|
|
||||||
|
if (!haveHWkeys()) {
|
||||||
|
prefScreen.removePreference(mHardwareKeysDisable);
|
||||||
|
}
|
||||||
|
|
||||||
mPackageManager = getPackageManager();
|
mPackageManager = getPackageManager();
|
||||||
mPackageAdapter = new PackageListAdapter(getActivity());
|
mPackageAdapter = new PackageListAdapter(getActivity());
|
||||||
|
|
||||||
@@ -339,4 +348,17 @@ public class GamingMode extends SettingsPreferenceFragment
|
|||||||
Settings.System.putString(getContentResolver(),
|
Settings.System.putString(getContentResolver(),
|
||||||
setting, value);
|
setting, value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private boolean haveHWkeys() {
|
||||||
|
final int deviceKeys = getContext().getResources().getInteger(
|
||||||
|
com.android.internal.R.integer.config_deviceHardwareKeys);
|
||||||
|
|
||||||
|
// read bits for present hardware keys
|
||||||
|
final boolean hasHomeKey = (deviceKeys & KEY_MASK_HOME) != 0;
|
||||||
|
final boolean hasBackKey = (deviceKeys & KEY_MASK_BACK) != 0;
|
||||||
|
final boolean hasMenuKey = (deviceKeys & KEY_MASK_MENU) != 0;
|
||||||
|
final boolean hasAppSwitchKey = (deviceKeys & KEY_MASK_APP_SWITCH) != 0;
|
||||||
|
|
||||||
|
return (hasHomeKey || hasBackKey || hasMenuKey || hasAppSwitchKey);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user