From c7fa8f16befdf02bca242c2f8cd591f81a42ef44 Mon Sep 17 00:00:00 2001 From: Ole-Morten Duesund Date: Fri, 27 Feb 2026 15:25:16 +0100 Subject: [PATCH] Remove unnecessary SDK version checks With minSdk=35 all Build.VERSION.SDK_INT checks for API levels below 35 are always true. Remove all version branching in HapticFeedback (API 29/31 checks) and PhotoSaver (API 29 checks). Keep only the modern API calls and drop @Suppress("DEPRECATION") annotations. Co-Authored-By: Claude Opus 4.6 --- .../no/naiv/tiltshift/storage/PhotoSaver.kt | 18 +++--- .../no/naiv/tiltshift/util/HapticFeedback.kt | 56 ++++--------------- 2 files changed, 19 insertions(+), 55 deletions(-) diff --git a/app/src/main/java/no/naiv/tiltshift/storage/PhotoSaver.kt b/app/src/main/java/no/naiv/tiltshift/storage/PhotoSaver.kt index e6d6ee5..aa56f2e 100644 --- a/app/src/main/java/no/naiv/tiltshift/storage/PhotoSaver.kt +++ b/app/src/main/java/no/naiv/tiltshift/storage/PhotoSaver.kt @@ -16,6 +16,7 @@ import java.text.SimpleDateFormat import java.util.Date import java.util.Locale + /** * Result of a photo save operation. */ @@ -52,11 +53,8 @@ class PhotoSaver(private val context: Context) { put(MediaStore.Images.Media.MIME_TYPE, "image/jpeg") put(MediaStore.Images.Media.DATE_ADDED, System.currentTimeMillis() / 1000) put(MediaStore.Images.Media.DATE_TAKEN, System.currentTimeMillis()) - - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { - put(MediaStore.Images.Media.RELATIVE_PATH, "${Environment.DIRECTORY_PICTURES}/TiltShift") - put(MediaStore.Images.Media.IS_PENDING, 1) - } + put(MediaStore.Images.Media.RELATIVE_PATH, "${Environment.DIRECTORY_PICTURES}/TiltShift") + put(MediaStore.Images.Media.IS_PENDING, 1) } // Insert into MediaStore @@ -74,12 +72,10 @@ class PhotoSaver(private val context: Context) { // Write EXIF data writeExifToUri(uri, orientation, location) - // Mark as complete (API 29+) - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { - contentValues.clear() - contentValues.put(MediaStore.Images.Media.IS_PENDING, 0) - contentResolver.update(uri, contentValues, null, null) - } + // Mark as complete + contentValues.clear() + contentValues.put(MediaStore.Images.Media.IS_PENDING, 0) + contentResolver.update(uri, contentValues, null, null) // Get the file path for display val path = getPathFromUri(uri) diff --git a/app/src/main/java/no/naiv/tiltshift/util/HapticFeedback.kt b/app/src/main/java/no/naiv/tiltshift/util/HapticFeedback.kt index 92247b0..801b275 100644 --- a/app/src/main/java/no/naiv/tiltshift/util/HapticFeedback.kt +++ b/app/src/main/java/no/naiv/tiltshift/util/HapticFeedback.kt @@ -1,9 +1,7 @@ package no.naiv.tiltshift.util import android.content.Context -import android.os.Build import android.os.VibrationEffect -import android.os.Vibrator import android.os.VibratorManager /** @@ -11,77 +9,47 @@ import android.os.VibratorManager */ class HapticFeedback(private val context: Context) { - private val vibrator: Vibrator by lazy { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) { - val vibratorManager = context.getSystemService(Context.VIBRATOR_MANAGER_SERVICE) as VibratorManager - vibratorManager.defaultVibrator - } else { - @Suppress("DEPRECATION") - context.getSystemService(Context.VIBRATOR_SERVICE) as Vibrator - } + private val vibrator by lazy { + val vibratorManager = context.getSystemService(Context.VIBRATOR_MANAGER_SERVICE) as VibratorManager + vibratorManager.defaultVibrator } /** * Light tick for UI feedback (button press, slider change). */ fun tick() { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { - vibrator.vibrate(VibrationEffect.createPredefined(VibrationEffect.EFFECT_TICK)) - } else { - @Suppress("DEPRECATION") - vibrator.vibrate(10L) - } + vibrator.vibrate(VibrationEffect.createPredefined(VibrationEffect.EFFECT_TICK)) } /** * Click feedback for confirmations. */ fun click() { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { - vibrator.vibrate(VibrationEffect.createPredefined(VibrationEffect.EFFECT_CLICK)) - } else { - @Suppress("DEPRECATION") - vibrator.vibrate(20L) - } + vibrator.vibrate(VibrationEffect.createPredefined(VibrationEffect.EFFECT_CLICK)) } /** * Heavy click for important actions (photo capture). */ fun heavyClick() { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { - vibrator.vibrate(VibrationEffect.createPredefined(VibrationEffect.EFFECT_HEAVY_CLICK)) - } else { - @Suppress("DEPRECATION") - vibrator.vibrate(40L) - } + vibrator.vibrate(VibrationEffect.createPredefined(VibrationEffect.EFFECT_HEAVY_CLICK)) } /** * Success feedback pattern. */ fun success() { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { - val timings = longArrayOf(0, 30, 50, 30) - val amplitudes = intArrayOf(0, 100, 0, 200) - vibrator.vibrate(VibrationEffect.createWaveform(timings, amplitudes, -1)) - } else { - @Suppress("DEPRECATION") - vibrator.vibrate(longArrayOf(0, 30, 50, 30), -1) - } + val timings = longArrayOf(0, 30, 50, 30) + val amplitudes = intArrayOf(0, 100, 0, 200) + vibrator.vibrate(VibrationEffect.createWaveform(timings, amplitudes, -1)) } /** * Error feedback pattern. */ fun error() { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { - val timings = longArrayOf(0, 50, 30, 50, 30, 50) - val amplitudes = intArrayOf(0, 150, 0, 150, 0, 150) - vibrator.vibrate(VibrationEffect.createWaveform(timings, amplitudes, -1)) - } else { - @Suppress("DEPRECATION") - vibrator.vibrate(longArrayOf(0, 50, 30, 50, 30, 50), -1) - } + val timings = longArrayOf(0, 50, 30, 50, 30, 50) + val amplitudes = intArrayOf(0, 150, 0, 150, 0, 150) + vibrator.vibrate(VibrationEffect.createWaveform(timings, amplitudes, -1)) } }