diff --git a/Android/app/src/main/java/org/deadc0de/apple2ix/Apple2Activity.java b/Android/app/src/main/java/org/deadc0de/apple2ix/Apple2Activity.java
index 967ae6a5..16b825af 100644
--- a/Android/app/src/main/java/org/deadc0de/apple2ix/Apple2Activity.java
+++ b/Android/app/src/main/java/org/deadc0de/apple2ix/Apple2Activity.java
@@ -350,9 +350,11 @@ public class Apple2Activity extends Activity {
}
if ((nativeFlags & NATIVE_TOUCH_KEY_TAP) != 0) {
- AudioManager am = (AudioManager) getSystemService(AUDIO_SERVICE);
- if (am != null) {
- am.playSoundEffect(AudioManager.FX_KEY_CLICK);
+ if (Apple2Preferences.KEYBOARD_CLICK_ENABLED.booleanValue(this)) {
+ AudioManager am = (AudioManager) getSystemService(AUDIO_SERVICE);
+ if (am != null) {
+ am.playSoundEffect(AudioManager.FX_KEY_CLICK);
+ }
}
if ((apple2MenuView != null) && apple2MenuView.isCalibrating()) {
diff --git a/Android/app/src/main/java/org/deadc0de/apple2ix/Apple2KeyboardSettingsMenu.java b/Android/app/src/main/java/org/deadc0de/apple2ix/Apple2KeyboardSettingsMenu.java
index e32d43ab..ed8ae12d 100644
--- a/Android/app/src/main/java/org/deadc0de/apple2ix/Apple2KeyboardSettingsMenu.java
+++ b/Android/app/src/main/java/org/deadc0de/apple2ix/Apple2KeyboardSettingsMenu.java
@@ -154,6 +154,30 @@ public class Apple2KeyboardSettingsMenu extends Apple2AbstractMenu {
});
}
},
+ KEYBOARD_ENABLE_CLICK {
+ @Override
+ public final String getTitle(Apple2Activity activity) {
+ return activity.getResources().getString(R.string.keyboard_click_enabled);
+ }
+
+ @Override
+ public final String getSummary(Apple2Activity activity) {
+ return activity.getResources().getString(R.string.keyboard_click_enabled_summary);
+ }
+
+ @Override
+ public View getView(final Apple2Activity activity, View convertView) {
+ convertView = _basicView(activity, this, convertView);
+ CheckBox cb = _addCheckbox(activity, this, convertView, Apple2Preferences.KEYBOARD_CLICK_ENABLED.booleanValue(activity));
+ cb.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
+ @Override
+ public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
+ Apple2Preferences.KEYBOARD_CLICK_ENABLED.saveBoolean(activity, isChecked);
+ }
+ });
+ return convertView;
+ }
+ },
KEYBOARD_ENABLE_LOWERCASE {
@Override
public final String getTitle(Apple2Activity activity) {
diff --git a/Android/app/src/main/java/org/deadc0de/apple2ix/Apple2Preferences.java b/Android/app/src/main/java/org/deadc0de/apple2ix/Apple2Preferences.java
index 3aca55f4..0d39de95 100644
--- a/Android/app/src/main/java/org/deadc0de/apple2ix/Apple2Preferences.java
+++ b/Android/app/src/main/java/org/deadc0de/apple2ix/Apple2Preferences.java
@@ -571,6 +571,17 @@ public enum Apple2Preferences {
public boolean booleanValue(Apple2Activity activity) {
return activity.getPreferences(Context.MODE_PRIVATE).getBoolean(toString(), false);
}
+ },
+ KEYBOARD_CLICK_ENABLED {
+ @Override
+ public void load(Apple2Activity activity) {
+ boolean enabled = booleanValue(activity);
+ }
+
+ @Override
+ public boolean booleanValue(Apple2Activity activity) {
+ return activity.getPreferences(Context.MODE_PRIVATE).getBoolean(toString(), true);
+ }
};
public enum HiresColor {
diff --git a/Android/app/src/main/res/values/strings.xml b/Android/app/src/main/res/values/strings.xml
index 6596f1f2..84c682ce 100644
--- a/Android/app/src/main/res/values/strings.xml
+++ b/Android/app/src/main/res/values/strings.xml
@@ -74,6 +74,8 @@
Keyboard
Choose alt keyboard…
Choose alternative customized layout
+ Enable key click
+ Enables key click sound if available
Configure keyboard…
Transparency, lowercase, custom keys
Enable lowercase