From d03787e981f8479c86d311000182071f2ad10078 Mon Sep 17 00:00:00 2001 From: Alicia Bendz Date: Tue, 15 Oct 2024 11:16:06 -0400 Subject: [PATCH] fix: Fix complex condition detekt errors --- .../main/java/be/scri/views/MyKeyboardView.kt | 27 +++++++++---------- detekt.yml | 2 +- 2 files changed, 14 insertions(+), 15 deletions(-) diff --git a/app/src/main/java/be/scri/views/MyKeyboardView.kt b/app/src/main/java/be/scri/views/MyKeyboardView.kt index 61afe1be..b6024ebc 100644 --- a/app/src/main/java/be/scri/views/MyKeyboardView.kt +++ b/app/src/main/java/be/scri/views/MyKeyboardView.kt @@ -466,13 +466,14 @@ class MyKeyboardView } } - private fun adjustCase(label: CharSequence): CharSequence? { - var newLabel: CharSequence? = label - if (newLabel != null && newLabel.isNotEmpty() && mKeyboard!!.mShiftState > SHIFT_OFF && newLabel.length < 3 && Character.isLowerCase(newLabel[0])) { - newLabel = newLabel.toString().toUpperCase() - } - return newLabel - } + private fun adjustCase(label: CharSequence?): CharSequence? = + label?.takeIf { it.length in 1..2 }?.let { + if (mKeyboard?.mShiftState?.let { state -> state > SHIFT_OFF } == true) { + label.toString().uppercase() + } else { + label + } + } ?: label public override fun onMeasure( widthMeasureSpec: Int, @@ -528,10 +529,10 @@ class MyKeyboardView val keyMargin = 8 val shadowOffset = 3 if (mBuffer == null || mKeyboardChanged) { - if (mBuffer == null || mKeyboardChanged && (mBuffer!!.width != width || mBuffer!!.height != height)) { + if (mBuffer?.let { buffer -> buffer.width != width || buffer.height != height } != false) { // Make sure our bitmap is at least 1x1 - val width = Math.max(1, width) - val height = Math.max(1, height) + val width = 1.coerceAtLeast(width) + val height = 1.coerceAtLeast(height) mBuffer = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888) mCanvas = Canvas(mBuffer!!) } @@ -752,11 +753,9 @@ class MyKeyboardView if (mCurrentKeyIndex != NOT_A_KEY && keys.size > mCurrentKeyIndex) { val newKey = keys[mCurrentKeyIndex] - val code = newKey.code - if (code == KEYCODE_SHIFT || code == KEYCODE_MODE_CHANGE || code == KEYCODE_DELETE || code == KEYCODE_ENTER || code == KEYCODE_SPACE) { - newKey.pressed = true - } + + newKey.pressed = code in listOf(KEYCODE_SHIFT, KEYCODE_MODE_CHANGE, KEYCODE_DELETE, KEYCODE_ENTER, KEYCODE_SPACE) invalidateKey(mCurrentKeyIndex) sendAccessibilityEventForUnicodeCharacter(AccessibilityEvent.TYPE_VIEW_ACCESSIBILITY_FOCUSED, code) diff --git a/detekt.yml b/detekt.yml index 9d007776..ad00e427 100644 --- a/detekt.yml +++ b/detekt.yml @@ -22,7 +22,7 @@ complexity: NestedBlockDepth: active: false ComplexCondition: - active: false + active: true LongParameterList: active: false LongMethod: