forked from extern/Unexpected-Keyboard
332413ed3c
Android 3.0 (API level 11) was released in Feb 2011. These versions were already unsupported due to unavoidable calls to: - MotionEvent.getActionMasked() (API 8) And avoidable calls to: - SharedPreferences.Editor.putStringSet() (API 11)
47 lines
1.0 KiB
Java
47 lines
1.0 KiB
Java
package juloo.keyboard2;
|
|
|
|
import android.content.Context;
|
|
import android.os.Vibrator;
|
|
import android.view.HapticFeedbackConstants;
|
|
import android.view.View;
|
|
|
|
public final class VibratorCompat
|
|
{
|
|
public static void vibrate(View v, Config config)
|
|
{
|
|
if (config.vibrate_custom)
|
|
{
|
|
if (config.vibrate_duration > 0)
|
|
vibrator_vibrate(v, config.vibrate_duration);
|
|
}
|
|
else
|
|
{
|
|
v.performHapticFeedback(HapticFeedbackConstants.KEYBOARD_TAP,
|
|
HapticFeedbackConstants.FLAG_IGNORE_VIEW_SETTING);
|
|
}
|
|
}
|
|
|
|
/** Use the older [Vibrator] when the newer API is not available or the user
|
|
wants more control. */
|
|
static void vibrator_vibrate(View v, long duration)
|
|
{
|
|
try
|
|
{
|
|
get_vibrator(v).vibrate(duration);
|
|
}
|
|
catch (Exception e) {}
|
|
}
|
|
|
|
static Vibrator vibrator_service = null;
|
|
|
|
static Vibrator get_vibrator(View v)
|
|
{
|
|
if (vibrator_service == null)
|
|
{
|
|
vibrator_service =
|
|
(Vibrator)v.getContext().getSystemService(Context.VIBRATOR_SERVICE);
|
|
}
|
|
return vibrator_service;
|
|
}
|
|
}
|