Add search view extension for incognito keyboards.

This commit is contained in:
Alex Hart
2024-05-22 09:15:27 -03:00
committed by Cody Henthorne
parent 5c3ea712fe
commit 99ae7c5961
2 changed files with 16 additions and 1 deletions

View File

@@ -1,6 +1,7 @@
package org.thoughtcrime.securesms.util
import android.widget.EditText
import androidx.appcompat.widget.SearchView
/**
* Since this value is only supported on API26+ we hard-code it here
@@ -14,7 +15,19 @@ private const val INCOGNITO_KEYBOARD = 16777216
* be respected by all IMEs.
*/
fun EditText.setIncognitoKeyboardEnabled(isIncognitoKeyboardEnabled: Boolean) {
imeOptions = if (isIncognitoKeyboardEnabled) {
imeOptions = setIncognitoFlag(imeOptions, isIncognitoKeyboardEnabled)
}
/**
* Enables or disables incognito-mode for the keyboard. Note that this might not
* be respected by all IMEs.
*/
fun SearchView.setIncognitoKeyboardEnabled(isIncognitoKeyboardEnabled: Boolean) {
imeOptions = setIncognitoFlag(imeOptions, isIncognitoKeyboardEnabled)
}
private fun setIncognitoFlag(imeOptions: Int, isIncognitoKeyboardEnabled: Boolean): Int {
return if (isIncognitoKeyboardEnabled) {
imeOptions or INCOGNITO_KEYBOARD
} else {
imeOptions and INCOGNITO_KEYBOARD.inv()