Skip to content

Commit 603f703

Browse files
authored
Merge pull request #192 from Merkost/direct_boot_aware
Direct boot aware fixes
2 parents ab40bb2 + af0f05c commit 603f703

File tree

4 files changed

+14
-11
lines changed

4 files changed

+14
-11
lines changed

app/src/main/kotlin/com/simplemobiletools/keyboard/App.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,12 @@ import android.app.Application
44
import androidx.emoji2.bundled.BundledEmojiCompatConfig
55
import androidx.emoji2.text.EmojiCompat
66
import com.simplemobiletools.commons.extensions.checkUseEnglish
7-
import com.simplemobiletools.keyboard.extensions.isDeviceLocked
7+
import com.simplemobiletools.keyboard.extensions.isDeviceInDirectBootMode
88

99
class App : Application() {
1010
override fun onCreate() {
1111
super.onCreate()
12-
if (!isDeviceLocked) {
12+
if (!isDeviceInDirectBootMode) {
1313
checkUseEnglish()
1414
}
1515
setupEmojiCompat()

app/src/main/kotlin/com/simplemobiletools/keyboard/extensions/Context.kt

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
package com.simplemobiletools.keyboard.extensions
22

3-
import android.app.KeyguardManager
43
import android.content.ClipboardManager
54
import android.content.Context
65
import android.graphics.Color
76
import android.os.IBinder
7+
import android.os.UserManager
88
import android.view.*
99
import android.widget.TextView
1010
import androidx.appcompat.app.AlertDialog
@@ -22,14 +22,17 @@ import com.simplemobiletools.keyboard.interfaces.ClipsDao
2222
val Context.config: Config get() = Config.newInstance(applicationContext.safeStorageContext)
2323

2424
val Context.safeStorageContext: Context
25-
get() = if (isNougatPlus() && isDeviceLocked) {
25+
get() = if (isNougatPlus() && isDeviceInDirectBootMode) {
2626
createDeviceProtectedStorageContext()
2727
} else {
2828
this
2929
}
3030

31-
val Context.isDeviceLocked: Boolean
32-
get() = (getSystemService(Context.KEYGUARD_SERVICE) as KeyguardManager).isDeviceLocked
31+
val Context.isDeviceInDirectBootMode: Boolean
32+
get() {
33+
val userManager = getSystemService(Context.USER_SERVICE) as UserManager
34+
return isNougatPlus() && !userManager.isUserUnlocked
35+
}
3336

3437
val Context.clipsDB: ClipsDao
3538
get() = ClipsDatabase.getInstance(applicationContext.safeStorageContext).ClipsDao()

app/src/main/kotlin/com/simplemobiletools/keyboard/helpers/Config.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ package com.simplemobiletools.keyboard.helpers
22

33
import android.content.Context
44
import com.simplemobiletools.commons.helpers.BaseConfig
5-
import com.simplemobiletools.keyboard.extensions.isDeviceLocked
5+
import com.simplemobiletools.keyboard.extensions.isDeviceInDirectBootMode
66
import com.simplemobiletools.keyboard.extensions.safeStorageContext
7-
import java.util.*
7+
import java.util.Locale
88

99
class Config(context: Context) : BaseConfig(context) {
1010
companion object {
@@ -44,7 +44,7 @@ class Config(context: Context) : BaseConfig(context) {
4444
set(showClipboardContent) = prefs.edit().putBoolean(SHOW_CLIPBOARD_CONTENT, showClipboardContent).apply()
4545

4646
var showNumbersRow: Boolean
47-
get() = if (!context.isDeviceLocked) {
47+
get() = if (!context.isDeviceInDirectBootMode) {
4848
prefs.getBoolean(SHOW_NUMBERS_ROW, false)
4949
} else {
5050
true

app/src/main/kotlin/com/simplemobiletools/keyboard/views/MyKeyboardView.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ class MyKeyboardView @JvmOverloads constructor(context: Context, attrs: Attribut
192192
mPreviewHeight = resources.getDimension(R.dimen.key_height).toInt()
193193
mSpaceMoveThreshold = resources.getDimension(R.dimen.medium_margin).toInt()
194194

195-
with (context.safeStorageContext) {
195+
with(context.safeStorageContext) {
196196
mTextColor = getProperTextColor()
197197
mBackgroundColor = getProperBackgroundColor()
198198
mPrimaryColor = getProperPrimaryColor()
@@ -400,7 +400,7 @@ class MyKeyboardView @JvmOverloads constructor(context: Context, attrs: Attribut
400400
pinned_clipboard_items.applyColorFilter(mTextColor)
401401
clipboard_clear.applyColorFilter(mTextColor)
402402

403-
toolbar_holder.beInvisibleIf(context.isDeviceLocked)
403+
toolbar_holder.beInvisibleIf(context.isDeviceInDirectBootMode)
404404
}
405405

406406
mClipboardManagerHolder?.apply {

0 commit comments

Comments
 (0)