preview_enabled settings

This commit is contained in:
jaguillo 2015-10-28 22:54:38 +01:00
parent da72455d35
commit ffba149934
3 changed files with 28 additions and 12 deletions

View File

@ -23,7 +23,7 @@
<string name="pref_category_vibrate">Vibration</string> <string name="pref_category_vibrate">Vibration</string>
<string name="pref_vibrate_title">Vibration</string> <string name="pref_vibrate_title">Vibration</string>
<string name="pref_vibrate_summary">Enable/Disable vibrations</string> <string name="pref_vibrate_summary">Enable/Disable vibrations on key down</string>
<string name="pref_vibrate_duration_title">Duration</string> <string name="pref_vibrate_duration_title">Duration</string>
<string name="pref_vibrate_duration_summary">%sms</string> <string name="pref_vibrate_duration_summary">%sms</string>
@ -35,4 +35,7 @@
<string name="pref_horizontal_margin_title">Horizontal margin</string> <string name="pref_horizontal_margin_title">Horizontal margin</string>
<string name="pref_horizontal_margin_summary">%sdp</string> <string name="pref_horizontal_margin_summary">%sdp</string>
<string name="pref_category_preview">Preview</string>
<string name="pref_preview_title">Preview</string>
<string name="pref_preview_summary">Enable/Disable preview on key down</string>
</resources> </resources>

View File

@ -7,7 +7,8 @@
android:summary="@string/pref_layout_summary" android:summary="@string/pref_layout_summary"
android:defaultValue="azerty" android:defaultValue="azerty"
android:entries="@array/pref_layout_entries" android:entries="@array/pref_layout_entries"
android:entryValues="@array/pref_layout_values" /> android:entryValues="@array/pref_layout_values"
/>
</PreferenceCategory> </PreferenceCategory>
<PreferenceCategory android:title="@string/pref_category_typing"> <PreferenceCategory android:title="@string/pref_category_typing">
<juloo.common.SlideBarPreference <juloo.common.SlideBarPreference
@ -40,7 +41,8 @@
android:key="vibrate_enabled" android:key="vibrate_enabled"
android:title="@string/pref_vibrate_title" android:title="@string/pref_vibrate_title"
android:summary="@string/pref_vibrate_summary" android:summary="@string/pref_vibrate_summary"
android:defaultValue="true" /> android:defaultValue="true"
/>
<juloo.common.IntSlideBarPreference <juloo.common.IntSlideBarPreference
android:key="vibrate_duration" android:key="vibrate_duration"
android:title="@string/pref_vibrate_duration_title" android:title="@string/pref_vibrate_duration_title"
@ -50,6 +52,14 @@
max="50" max="50"
/> />
</PreferenceCategory> </PreferenceCategory>
<PreferenceCategory android:title="@string/pref_category_preview">
<CheckBoxPreference
android:key="preview_enabled"
android:title="@string/pref_preview_title"
android:summary="@string/pref_preview_summary"
android:defaultValue="false"
/>
</PreferenceCategory>
<PreferenceCategory android:title="@string/pref_category_style"> <PreferenceCategory android:title="@string/pref_category_style">
<juloo.common.IntSlideBarPreference <juloo.common.IntSlideBarPreference
android:key="margin_bottom" android:key="margin_bottom"

View File

@ -41,12 +41,12 @@ public class Keyboard2View extends View
/* /*
** TODO: move config values in a Config object ** TODO: move config values in a Config object
** TODO: settings: preview_enabled
** TODO: settings: preview_text_size ** TODO: settings: preview_text_size
** TODO: settings: preview_timeout ** TODO: settings: preview_timeout
** TODO: disable preview in password fields ** TODO: disable preview in password fields
*/ */
private long _previewDismissTimeout = 150; // especialy this one private long _previewDismissTimeout = 150; // especialy this one
private boolean _previewEnabled = false;
private float _marginTop; private float _marginTop;
private float _keyWidth; private float _keyWidth;
@ -121,6 +121,7 @@ public class Keyboard2View extends View
{ {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext());
_previewEnabled = prefs.getBoolean("preview_enabled", _previewEnabled);
_subValueDist = prefs.getFloat("sub_value_dist", _subValueDist); _subValueDist = prefs.getFloat("sub_value_dist", _subValueDist);
_vibrateEnabled = prefs.getBoolean("vibrate_enabled", _vibrateEnabled); _vibrateEnabled = prefs.getBoolean("vibrate_enabled", _vibrateEnabled);
_vibrateDuration = prefs.getInt("vibrate_duration", (int)_vibrateDuration); _vibrateDuration = prefs.getInt("vibrate_duration", (int)_vibrateDuration);
@ -316,6 +317,8 @@ public class Keyboard2View extends View
if (key.value != null && (key.flags & (KeyValue.FLAG_LOCKED | KeyValue.FLAG_NOCHAR)) == 0) if (key.value != null && (key.flags & (KeyValue.FLAG_LOCKED | KeyValue.FLAG_NOCHAR)) == 0)
((Keyboard2)getContext()).handleKeyUp(key.value, _flags); ((Keyboard2)getContext()).handleKeyUp(key.value, _flags);
// previewNextKeyDown // previewNextKeyDown
if (!_previewEnabled)
return ;
for (KeyDown k : _downKeys) for (KeyDown k : _downKeys)
if ((k.value.getFlags() & (KeyValue.FLAG_KEY_FONT | KeyValue.FLAG_NOREPEAT | KeyValue.FLAG_NOCHAR)) == 0) if ((k.value.getFlags() & (KeyValue.FLAG_KEY_FONT | KeyValue.FLAG_NOREPEAT | KeyValue.FLAG_NOCHAR)) == 0)
{ {
@ -329,7 +332,7 @@ public class Keyboard2View extends View
{ {
if (key == null) if (key == null)
return ; return ;
if ((key.getFlags() & (KeyValue.FLAG_KEY_FONT | KeyValue.FLAG_NOREPEAT | KeyValue.FLAG_NOCHAR)) == 0) if (_previewEnabled && (key.getFlags() & (KeyValue.FLAG_KEY_FONT | KeyValue.FLAG_NOREPEAT | KeyValue.FLAG_NOCHAR)) == 0)
_previewPopup.setPreview(key, _flags); _previewPopup.setPreview(key, _flags);
vibrate(); vibrate();
} }