Loading res/values/cm_strings.xml +4 −0 Original line number Diff line number Diff line Loading @@ -466,6 +466,10 @@ <string name="high_touch_sensitivity_title">High touch sensitivity</string> <string name="high_touch_sensitivity_summary">Increase touchscreen sensitivity so it can be used while wearing gloves</string> <!-- Touchscreen hovering --> <string name="touchscreen_hovering_title">Touchscreen hovering</string> <string name="touchscreen_hovering_summary">Allows you to hover the screen like a mouse in web browsers, remote desktops, etc</string> <!-- App ops --> <string name="app_ops_summaries_coarse_location">coarse location</string> <string name="app_ops_summaries_fine_location">fine location</string> Loading res/xml/language_settings.xml +6 −0 Original line number Diff line number Diff line Loading @@ -114,6 +114,12 @@ android:summary="@string/high_touch_sensitivity_summary" android:defaultValue="false" /> <SwitchPreference android:key="touchscreen_hovering" android:title="@string/touchscreen_hovering_title" android:summary="@string/touchscreen_hovering_summary" android:defaultValue="false" /> <!-- Gesture pad settings --> <Preference android:key="gesture_pad_settings"> Loading src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java +23 −0 Original line number Diff line number Diff line Loading @@ -80,6 +80,7 @@ import java.util.Locale; import java.util.TreeSet; import org.cyanogenmod.hardware.HighTouchSensitivity; import org.cyanogenmod.hardware.TouchscreenHovering; public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment implements Preference.OnPreferenceChangeListener, InputManager.InputDeviceListener, Loading @@ -93,6 +94,7 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment private static final String KEY_POINTER_SETTINGS_CATEGORY = "pointer_settings_category"; private static final String KEY_PREVIOUSLY_ENABLED_SUBTYPES = "previously_enabled_subtypes"; private static final String KEY_HIGH_TOUCH_SENSITIVITY = "high_touch_sensitivity"; private static final String KEY_TOUCHSCREEN_HOVERING = "touchscreen_hovering"; private static final String KEY_TRACKPAD_SETTINGS = "gesture_pad_settings"; private static final String KEY_STYLUS_GESTURES = "stylus_gestures"; private static final String KEY_STYLUS_ICON_ENABLED = "stylus_icon_enabled"; Loading @@ -104,6 +106,7 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment private ListPreference mShowInputMethodSelectorPref; private SwitchPreference mStylusIconEnabled; private SwitchPreference mHighTouchSensitivity; private SwitchPreference mTouchscreenHovering; private PreferenceCategory mKeyboardSettingsCategory; private PreferenceCategory mHardKeyboardCategory; private PreferenceCategory mGameControllerCategory; Loading Loading @@ -184,6 +187,8 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment mStylusIconEnabled = (SwitchPreference) findPreference(KEY_STYLUS_ICON_ENABLED); mHighTouchSensitivity = (SwitchPreference) findPreference(KEY_HIGH_TOUCH_SENSITIVITY); mTouchscreenHovering = (SwitchPreference) findPreference(KEY_TOUCHSCREEN_HOVERING); if (pointerSettingsCategory != null) { if (!getResources().getBoolean(com.android.internal.R.bool.config_stylusGestures)) { pointerSettingsCategory.removePreference(mStylusGestures); Loading @@ -197,6 +202,13 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment mHighTouchSensitivity.setChecked(HighTouchSensitivity.isEnabled()); } if (!isTouchscreenHoveringSupported()) { pointerSettingsCategory.removePreference(mTouchscreenHovering); mTouchscreenHovering = null; } else { mTouchscreenHovering.setChecked(TouchscreenHovering.isEnabled()); } Utils.updatePreferenceToSpecificActivityFromMetaDataOrRemove(getActivity(), pointerSettingsCategory, KEY_TRACKPAD_SETTINGS); if (pointerSettingsCategory.getPreferenceCount() == 0) { Loading Loading @@ -395,6 +407,8 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment } } else if (preference == mHighTouchSensitivity) { return HighTouchSensitivity.setEnabled(mHighTouchSensitivity.isChecked()); } else if (preference == mTouchscreenHovering) { return TouchscreenHovering.setEnabled(mTouchscreenHovering.isChecked()); } return super.onPreferenceTreeClick(preferenceScreen, preference); } Loading Loading @@ -681,6 +695,15 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment } } private static boolean isTouchscreenHoveringSupported() { try { return TouchscreenHovering.isSupported(); } catch (NoClassDefFoundError e) { // Hardware abstraction framework not installed return false; } } private static boolean haveInputDeviceWithVibrator() { final int[] devices = InputDevice.getDeviceIds(); for (int i = 0; i < devices.length; i++) { Loading Loading
res/values/cm_strings.xml +4 −0 Original line number Diff line number Diff line Loading @@ -466,6 +466,10 @@ <string name="high_touch_sensitivity_title">High touch sensitivity</string> <string name="high_touch_sensitivity_summary">Increase touchscreen sensitivity so it can be used while wearing gloves</string> <!-- Touchscreen hovering --> <string name="touchscreen_hovering_title">Touchscreen hovering</string> <string name="touchscreen_hovering_summary">Allows you to hover the screen like a mouse in web browsers, remote desktops, etc</string> <!-- App ops --> <string name="app_ops_summaries_coarse_location">coarse location</string> <string name="app_ops_summaries_fine_location">fine location</string> Loading
res/xml/language_settings.xml +6 −0 Original line number Diff line number Diff line Loading @@ -114,6 +114,12 @@ android:summary="@string/high_touch_sensitivity_summary" android:defaultValue="false" /> <SwitchPreference android:key="touchscreen_hovering" android:title="@string/touchscreen_hovering_title" android:summary="@string/touchscreen_hovering_summary" android:defaultValue="false" /> <!-- Gesture pad settings --> <Preference android:key="gesture_pad_settings"> Loading
src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java +23 −0 Original line number Diff line number Diff line Loading @@ -80,6 +80,7 @@ import java.util.Locale; import java.util.TreeSet; import org.cyanogenmod.hardware.HighTouchSensitivity; import org.cyanogenmod.hardware.TouchscreenHovering; public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment implements Preference.OnPreferenceChangeListener, InputManager.InputDeviceListener, Loading @@ -93,6 +94,7 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment private static final String KEY_POINTER_SETTINGS_CATEGORY = "pointer_settings_category"; private static final String KEY_PREVIOUSLY_ENABLED_SUBTYPES = "previously_enabled_subtypes"; private static final String KEY_HIGH_TOUCH_SENSITIVITY = "high_touch_sensitivity"; private static final String KEY_TOUCHSCREEN_HOVERING = "touchscreen_hovering"; private static final String KEY_TRACKPAD_SETTINGS = "gesture_pad_settings"; private static final String KEY_STYLUS_GESTURES = "stylus_gestures"; private static final String KEY_STYLUS_ICON_ENABLED = "stylus_icon_enabled"; Loading @@ -104,6 +106,7 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment private ListPreference mShowInputMethodSelectorPref; private SwitchPreference mStylusIconEnabled; private SwitchPreference mHighTouchSensitivity; private SwitchPreference mTouchscreenHovering; private PreferenceCategory mKeyboardSettingsCategory; private PreferenceCategory mHardKeyboardCategory; private PreferenceCategory mGameControllerCategory; Loading Loading @@ -184,6 +187,8 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment mStylusIconEnabled = (SwitchPreference) findPreference(KEY_STYLUS_ICON_ENABLED); mHighTouchSensitivity = (SwitchPreference) findPreference(KEY_HIGH_TOUCH_SENSITIVITY); mTouchscreenHovering = (SwitchPreference) findPreference(KEY_TOUCHSCREEN_HOVERING); if (pointerSettingsCategory != null) { if (!getResources().getBoolean(com.android.internal.R.bool.config_stylusGestures)) { pointerSettingsCategory.removePreference(mStylusGestures); Loading @@ -197,6 +202,13 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment mHighTouchSensitivity.setChecked(HighTouchSensitivity.isEnabled()); } if (!isTouchscreenHoveringSupported()) { pointerSettingsCategory.removePreference(mTouchscreenHovering); mTouchscreenHovering = null; } else { mTouchscreenHovering.setChecked(TouchscreenHovering.isEnabled()); } Utils.updatePreferenceToSpecificActivityFromMetaDataOrRemove(getActivity(), pointerSettingsCategory, KEY_TRACKPAD_SETTINGS); if (pointerSettingsCategory.getPreferenceCount() == 0) { Loading Loading @@ -395,6 +407,8 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment } } else if (preference == mHighTouchSensitivity) { return HighTouchSensitivity.setEnabled(mHighTouchSensitivity.isChecked()); } else if (preference == mTouchscreenHovering) { return TouchscreenHovering.setEnabled(mTouchscreenHovering.isChecked()); } return super.onPreferenceTreeClick(preferenceScreen, preference); } Loading Loading @@ -681,6 +695,15 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment } } private static boolean isTouchscreenHoveringSupported() { try { return TouchscreenHovering.isSupported(); } catch (NoClassDefFoundError e) { // Hardware abstraction framework not installed return false; } } private static boolean haveInputDeviceWithVibrator() { final int[] devices = InputDevice.getDeviceIds(); for (int i = 0; i < devices.length; i++) { Loading