From fa4e38e94ed7ee6bfcc17902a4c9044b018491ae Mon Sep 17 00:00:00 2001 From: merkost Date: Mon, 29 May 2023 22:27:03 +1000 Subject: [PATCH] Enabled numbers row based on shouldShowKeyboardToolbar value --- .../com/simplemobiletools/keyboard/extensions/Context.kt | 6 ++++-- .../com/simplemobiletools/keyboard/helpers/Config.kt | 7 ++++++- .../keyboard/services/SimpleKeyboardIME.kt | 1 - .../com/simplemobiletools/keyboard/views/MyKeyboardView.kt | 2 ++ 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/keyboard/extensions/Context.kt b/app/src/main/kotlin/com/simplemobiletools/keyboard/extensions/Context.kt index bc1c98cc..cd8c494f 100644 --- a/app/src/main/kotlin/com/simplemobiletools/keyboard/extensions/Context.kt +++ b/app/src/main/kotlin/com/simplemobiletools/keyboard/extensions/Context.kt @@ -23,12 +23,14 @@ val Context.config: Config get() = Config.newInstance(applicationContext.safeSto val Context.safeStorageContext: Context get() = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N && isDeviceLocked) { - val deviceStorageContext = createDeviceProtectedStorageContext() - deviceStorageContext + createDeviceProtectedStorageContext() } else { this } +val Context.shouldShowKeyboardToolbar: Boolean + get() = !isDeviceLocked + val Context.isDeviceLocked: Boolean get() = (getSystemService(Context.KEYGUARD_SERVICE) as KeyguardManager).isDeviceLocked diff --git a/app/src/main/kotlin/com/simplemobiletools/keyboard/helpers/Config.kt b/app/src/main/kotlin/com/simplemobiletools/keyboard/helpers/Config.kt index 3928b0cd..42fd98f8 100644 --- a/app/src/main/kotlin/com/simplemobiletools/keyboard/helpers/Config.kt +++ b/app/src/main/kotlin/com/simplemobiletools/keyboard/helpers/Config.kt @@ -2,6 +2,7 @@ package com.simplemobiletools.keyboard.helpers import android.content.Context import com.simplemobiletools.commons.helpers.BaseConfig +import com.simplemobiletools.keyboard.extensions.isDeviceLocked import com.simplemobiletools.keyboard.extensions.safeStorageContext import java.util.* @@ -43,7 +44,11 @@ class Config(context: Context) : BaseConfig(context) { set(showClipboardContent) = prefs.edit().putBoolean(SHOW_CLIPBOARD_CONTENT, showClipboardContent).apply() var showNumbersRow: Boolean - get() = prefs.getBoolean(SHOW_NUMBERS_ROW, false) + get() = if (!context.isDeviceLocked) { + prefs.getBoolean(SHOW_NUMBERS_ROW, false) + } else { + true + } set(showNumbersRow) = prefs.edit().putBoolean(SHOW_NUMBERS_ROW, showNumbersRow).apply() private fun getDefaultLanguage(): Int { diff --git a/app/src/main/kotlin/com/simplemobiletools/keyboard/services/SimpleKeyboardIME.kt b/app/src/main/kotlin/com/simplemobiletools/keyboard/services/SimpleKeyboardIME.kt index e8482deb..0fe6f826 100644 --- a/app/src/main/kotlin/com/simplemobiletools/keyboard/services/SimpleKeyboardIME.kt +++ b/app/src/main/kotlin/com/simplemobiletools/keyboard/services/SimpleKeyboardIME.kt @@ -13,7 +13,6 @@ import android.view.inputmethod.EditorInfo.IME_FLAG_NO_ENTER_ACTION import android.view.inputmethod.EditorInfo.IME_MASK_ACTION import android.view.inputmethod.ExtractedTextRequest import com.simplemobiletools.commons.extensions.getSharedPrefs -import com.simplemobiletools.commons.extensions.isDeviceLocked import com.simplemobiletools.keyboard.R import com.simplemobiletools.keyboard.extensions.config import com.simplemobiletools.keyboard.extensions.safeStorageContext diff --git a/app/src/main/kotlin/com/simplemobiletools/keyboard/views/MyKeyboardView.kt b/app/src/main/kotlin/com/simplemobiletools/keyboard/views/MyKeyboardView.kt index 40f43fb6..db5ed467 100644 --- a/app/src/main/kotlin/com/simplemobiletools/keyboard/views/MyKeyboardView.kt +++ b/app/src/main/kotlin/com/simplemobiletools/keyboard/views/MyKeyboardView.kt @@ -428,6 +428,8 @@ class MyKeyboardView @JvmOverloads constructor(context: Context, attrs: Attribut settings_cog.applyColorFilter(mTextColor) pinned_clipboard_items.applyColorFilter(mTextColor) clipboard_clear.applyColorFilter(mTextColor) + + toolbar_holder.beInvisibleIf(!context.shouldShowKeyboardToolbar) } mClipboardManagerHolder?.apply {