From ef03dfed5c802a855c4655204eee39a8769cfed7 Mon Sep 17 00:00:00 2001 From: Jules Aguillon Date: Mon, 6 Jun 2022 17:00:58 +0200 Subject: Remove the vibration settings Instead of using the vibrator directly, use performHapticFeedback, which will integrate better with the system settings. --- srcs/juloo.keyboard2/Config.java | 6 ------ srcs/juloo.keyboard2/Keyboard2View.java | 15 ++++----------- 2 files changed, 4 insertions(+), 17 deletions(-) (limited to 'srcs/juloo.keyboard2') diff --git a/srcs/juloo.keyboard2/Config.java b/srcs/juloo.keyboard2/Config.java index 39d1c25..2c68c92 100644 --- a/srcs/juloo.keyboard2/Config.java +++ b/srcs/juloo.keyboard2/Config.java @@ -26,8 +26,6 @@ final class Config public int layout; // Or '-1' for the system defaults public int programming_layout; // Or '-1' for none public float swipe_dist_px; - public boolean vibrateEnabled; - public long vibrateDuration; public long longPressTimeout; public long longPressInterval; public float marginBottom; @@ -62,8 +60,6 @@ final class Config // default values layout = -1; programming_layout = -1; - vibrateEnabled = true; - vibrateDuration = 20; longPressTimeout = 600; longPressInterval = 65; marginBottom = res.getDimension(R.dimen.margin_bottom); @@ -119,8 +115,6 @@ final class Config // Take the mean of both dimensions as an approximation of the diagonal. float physical_scaling = (dm.widthPixels + dm.heightPixels) / (dm.xdpi + dm.ydpi); swipe_dist_px = Float.valueOf(prefs.getString("swipe_dist", "15")) * physical_scaling;; - vibrateEnabled = prefs.getBoolean("vibrate_enabled", vibrateEnabled); - vibrateDuration = prefs.getInt("vibrate_duration", (int)vibrateDuration); longPressTimeout = prefs.getInt("longpress_timeout", (int)longPressTimeout); longPressInterval = prefs.getInt("longpress_interval", (int)longPressInterval); marginBottom = getDipPref(dm, prefs, "margin_bottom", marginBottom); diff --git a/srcs/juloo.keyboard2/Keyboard2View.java b/srcs/juloo.keyboard2/Keyboard2View.java index 0aa911b..7938f18 100644 --- a/srcs/juloo.keyboard2/Keyboard2View.java +++ b/srcs/juloo.keyboard2/Keyboard2View.java @@ -7,9 +7,9 @@ import android.graphics.Paint; import android.graphics.RectF; import android.inputmethodservice.InputMethodService; import android.os.Build.VERSION; -import android.os.Vibrator; import android.util.AttributeSet; import android.util.DisplayMetrics; +import android.view.HapticFeedbackConstants; import android.view.KeyEvent; import android.view.MotionEvent; import android.view.View; @@ -26,7 +26,6 @@ public class Keyboard2View extends View private Pointers.Modifiers _mods; - private Vibrator _vibratorService; private long _lastVibration = 0; private static int _currentWhat = 0; @@ -49,7 +48,6 @@ public class Keyboard2View extends View public Keyboard2View(Context context, AttributeSet attrs) { super(context, attrs); - _vibratorService = (Vibrator)context.getSystemService(Context.VIBRATOR_SERVICE); _theme = new Theme(getContext(), attrs); _config = Config.globalConfig(); _pointers = new Pointers(this, _config); @@ -191,19 +189,14 @@ public class Keyboard2View extends View private void vibrate() { - if (!_config.vibrateEnabled) - return ; long now = System.currentTimeMillis(); if ((now - _lastVibration) > VIBRATE_MIN_INTERVAL) { _lastVibration = now; - try + if (VERSION.SDK_INT >= 5) { - _vibratorService.vibrate(_config.vibrateDuration); - } - catch (Exception e) - { - e.printStackTrace(); + performHapticFeedback(HapticFeedbackConstants.VIRTUAL_KEY, + HapticFeedbackConstants.FLAG_IGNORE_VIEW_SETTING); } } } -- cgit v1.2.3