diff --git a/app/src/main/java/com/termux/app/ExtraKeysView.java b/app/src/main/java/com/termux/app/ExtraKeysView.java index a67573b6d9..d0d6f91da4 100644 --- a/app/src/main/java/com/termux/app/ExtraKeysView.java +++ b/app/src/main/java/com/termux/app/ExtraKeysView.java @@ -2,6 +2,7 @@ import android.content.Context; import android.os.Build; +import android.provider.Settings; import android.util.AttributeSet; import java.util.concurrent.Executors; @@ -350,7 +351,15 @@ void reload(String[][] buttons, CharDisplayMap charDisplayMap) { final Button finalButton = button; button.setOnClickListener(v -> { - finalButton.performHapticFeedback(HapticFeedbackConstants.KEYBOARD_TAP); + if (Settings.System.getInt(getContext().getContentResolver(), + Settings.System.HAPTIC_FEEDBACK_ENABLED, 0) != 0) { + + // Depending on DnD settings, value can be >1 but 0 means "disabled". + if (Settings.Global.getInt(getContext().getContentResolver(), "zen_mode", 0) < 1) { + finalButton.performHapticFeedback(HapticFeedbackConstants.KEYBOARD_TAP); + } + } + View root = getRootView(); if(Arrays.asList("CTRL", "ALT", "FN").contains(buttonText)) { ToggleButton self = (ToggleButton) finalButton;