diff --git a/app/src/main/java/helium314/keyboard/keyboard/internal/KeyboardBuilder.kt b/app/src/main/java/helium314/keyboard/keyboard/internal/KeyboardBuilder.kt index f29e6ba79..b3fd54887 100644 --- a/app/src/main/java/helium314/keyboard/keyboard/internal/KeyboardBuilder.kt +++ b/app/src/main/java/helium314/keyboard/keyboard/internal/KeyboardBuilder.kt @@ -43,19 +43,18 @@ open class KeyboardBuilder(protected val mContext: Context, mParams.GRID_HEIGHT = res.getInteger(R.integer.config_keyboard_grid_height) } - fun setAllowRedundantPopupKeys(enabled: Boolean) { - mParams.mAllowRedundantPopupKeys = enabled - } - fun load(id: KeyboardId): KeyboardBuilder { mParams.mId = id if (id.isEmojiKeyboard) { - setAllowRedundantPopupKeys(true) + mParams.mAllowRedundantPopupKeys = true readAttributes(R.xml.kbd_emoji) keysInRows = EmojiParser(mParams, mContext).parse() } else { try { val sv = Settings.getInstance().current + // previously was false for nordic and serbian_qwertz, true for all others + // todo: add setting? maybe users want it in a custom layout + mParams.mAllowRedundantPopupKeys = mParams.mId.mElementId != KeyboardId.ELEMENT_SYMBOLS addLocaleKeyTextsToParams(mContext, mParams, sv.mShowMorePopupKeys) mParams.mPopupKeyTypes.addAll(sv.mPopupKeyTypes) // add label source only if popup key type enabled diff --git a/app/src/main/java/helium314/keyboard/keyboard/internal/keyboard_parser/KeyboardParser.kt b/app/src/main/java/helium314/keyboard/keyboard/internal/keyboard_parser/KeyboardParser.kt index dca131e79..51062d742 100644 --- a/app/src/main/java/helium314/keyboard/keyboard/internal/keyboard_parser/KeyboardParser.kt +++ b/app/src/main/java/helium314/keyboard/keyboard/internal/keyboard_parser/KeyboardParser.kt @@ -63,7 +63,6 @@ abstract class KeyboardParser(private val params: KeyboardParams, private val co fun parseLayoutString(layoutContent: String): ArrayList> { params.readAttributes(context, null) params.mProximityCharsCorrectionEnabled = infos.enableProximityCharsCorrection - params.mAllowRedundantPopupKeys = infos.allowRedundantPopupKeys if (infos.touchPositionCorrectionData == null) // need to set correctly, as it's not properly done in readAttributes with attr = null params.mTouchPositionCorrection.load(emptyArray()) else @@ -551,7 +550,6 @@ abstract class KeyboardParser(private val params: KeyboardParams, private val co params.mId.mElementId == KeyboardId.ELEMENT_ALPHABET else -> true } - val allowRedundantPopupKeys = params.mId.mElementId != KeyboardId.ELEMENT_SYMBOLS // todo: always set to false? // essentially this is default for 4 row and non-alphabet layouts, maybe this could be determined automatically instead of using a list // todo: check the difference between default (i.e. none) and holo (test behavior on keyboard) val touchPositionCorrectionData = if (params.mId.isAlphabetKeyboard && layout in listOf("armenian_phonetic", "khmer", "lao", "malayalam", "pcqwerty", "thai")) @@ -561,7 +559,7 @@ abstract class KeyboardParser(private val params: KeyboardParams, private val co val hasShiftKey = !params.mId.isAlphabetKeyboard || layout !in listOf("hindi_compact", "bengali", "arabic", "arabic_pc", "hebrew", "kannada", "kannada_extended","malayalam", "marathi", "farsi", "tamil", "telugu") val numbersOnTopRow = layout !in listOf("pcqwerty", "lao", "thai", "korean_sebeolsik_390", "korean_sebeolsik_final") - return LayoutInfos(enableProximityCharsCorrection, allowRedundantPopupKeys, touchPositionCorrectionData, hasShiftKey, numbersOnTopRow) + return LayoutInfos(enableProximityCharsCorrection, touchPositionCorrectionData, hasShiftKey, numbersOnTopRow) } } @@ -572,8 +570,6 @@ data class LayoutInfos( // disabled by default, but enabled for all alphabet layouts // currently set in keyboardLayoutSet val enableProximityCharsCorrection: Boolean = false, - // previously was false for nordic and serbian_qwertz, true for all others - val allowRedundantPopupKeys: Boolean = true, // there is holo, default and null // null only for popupKeys keyboard val touchPositionCorrectionData: Int? = null,