From 4255dc2ce8052a7579dafb7ec79d309323536399 Mon Sep 17 00:00:00 2001 From: Helium314 Date: Mon, 24 Jun 2024 19:44:46 +0200 Subject: [PATCH] remove fillGapsWithSpacers was only necessary for old AOSP keyboard parser --- .../keyboard/internal/KeyboardBuilder.kt | 33 ------------------- 1 file changed, 33 deletions(-) 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 399b4963b..da14f00bb 100644 --- a/app/src/main/java/helium314/keyboard/keyboard/internal/KeyboardBuilder.kt +++ b/app/src/main/java/helium314/keyboard/keyboard/internal/KeyboardBuilder.kt @@ -117,7 +117,6 @@ open class KeyboardBuilder(protected val mContext: Context, var currentY = mParams.mTopPadding.toFloat() for (row in keysInRows) { if (row.isEmpty()) continue - fillGapsWithSpacers(row) var currentX = mParams.mLeftPadding.toFloat() row.forEach { it.setAbsoluteDimensions(currentX, currentY) @@ -129,37 +128,6 @@ open class KeyboardBuilder(protected val mContext: Context, } } - // necessary for adjusting widths and positions properly - // without adding spacers whose width can then be adjusted, we would have to deal with keyXPos, - // which is more complicated than expected - // todo: remove? maybe was only necessary with old parser - private fun fillGapsWithSpacers(row: MutableList) { - if (mParams.mId.mElementId !in KeyboardId.ELEMENT_ALPHABET..KeyboardId.ELEMENT_SYMBOLS_SHIFTED) return - if (row.isEmpty()) return - if (row.all { it.xPos == 0f }) return // need existing xPos to determine gaps - var currentX = 0f + mParams.mLeftPadding - var i = 0 - while (i < row.size) { - val currentKeyXPos = row[i].xPos - if (currentKeyXPos > currentX) { - // insert spacer - val spacer = KeyParams.newSpacer(mParams, (currentKeyXPos - currentX) / mParams.mBaseWidth) - spacer.yPos = row[i].yPos - row.add(i, spacer) - i++ - currentX += currentKeyXPos - currentX - } - currentX += row[i].mAbsoluteWidth - i++ - } - if (currentX < mParams.mOccupiedWidth) { - // insert spacer - val spacer = KeyParams.newSpacer(mParams, (mParams.mOccupiedWidth - currentX) / mParams.mBaseWidth) - spacer.yPos = row.last().yPos - row.add(spacer) - } - } - private fun addSplit() { val spacerRelativeWidth = Settings.getInstance().current.mSplitKeyboardSpacerRelativeWidth // adjust gaps for the whole keyboard, so it's the same for all rows @@ -168,7 +136,6 @@ open class KeyboardBuilder(protected val mContext: Context, var maxWidthBeforeSpacer = 0f var maxWidthAfterSpacer = 0f for (row in keysInRows) { - fillGapsWithSpacers(row) val y = row.first().yPos // all have the same y, so this is fine val relativeWidthSum = row.sumOf { it.mWidth } // sum up relative widths val spacer = KeyParams.newSpacer(mParams, spacerRelativeWidth)