Skip to content

Commit 7854190

Browse files
committed
Revert minimum time check changes and fix leaked IntentReceiver errors.
The minimum time check is no longer needed with the latest OTA release and some users are reporting it causes missed keypresses.
1 parent fc776f8 commit 7854190

File tree

2 files changed

+8
-16
lines changed

2 files changed

+8
-16
lines changed

app/src/main/java/io/github/rickybrent/minimal_symlayer_keyboard/InputMethodService.kt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -290,6 +290,12 @@ class InputMethodService : AndroidInputMethodService() {
290290
}
291291
}
292292

293+
override fun onDestroy() {
294+
super.onDestroy()
295+
pickerManager?.hide()
296+
unregisterReceiver(unlockReceiver)
297+
}
298+
293299
override fun onCreateInputView(): View {
294300
mainInputView = layoutInflater.inflate(R.layout.input_view_container, null)
295301

@@ -994,7 +1000,6 @@ class InputMethodService : AndroidInputMethodService() {
9941000
multipress.ignoreConsonantsOnFirstLevel = preferences.getBoolean("FirstLevelOnlyVowels", false)
9951001
multipress.ligaturesEnabled = preferences.getBoolean("pref_enable_ligatures", false)
9961002
multipress.overrideAltKeys = preferences.getBoolean("override_alt_keys", true)
997-
multipress.longPressThreshold = nextThreshold
9981003

9991004
cyrillicLayerToggleEnabled = preferences.getBoolean("pref_enable_cyrillic_layer", false)
10001005

app/src/main/java/io/github/rickybrent/minimal_symlayer_keyboard/MultipressController.kt

Lines changed: 2 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -67,14 +67,6 @@ class MultipressController(val substitutions: Array<HashMap<Int, Array<Char>>>)
6767
* Whether to override the device alt map with our own on long press.
6868
*/
6969
var overrideAltKeys = true
70-
/**
71-
* Minimum number of key "repeats" required for multipress.
72-
*/
73-
var repeatRequirement = 4
74-
/**
75-
* The minimum time before it is considered a long press, in milliseconds.
76-
*/
77-
var longPressThreshold = 350
7870

7971
private var last: Int = 0
8072
private var lastTime: Long = 0
@@ -145,17 +137,12 @@ class MultipressController(val substitutions: Array<HashMap<Int, Array<Char>>>)
145137
val keyCode = e.keyCode
146138
val t = System.currentTimeMillis()
147139
if(last == keyCode && t - lastTime < multipressThreshold) {
148-
if(t - lastTime < longPressThreshold) {
149-
repeatRequirement = e.repeatCount
150-
return MPSUBST_BYPASS
151-
}
152-
val repeatCount = e.repeatCount - repeatRequirement
153140
lastTime = t
154141

155-
if(repeatCount == 1) {
142+
if(e.repeatCount == 1) {
156143
++longPressCount
157144
count = 0
158-
} else if(repeatCount > 1) {
145+
} else if(e.repeatCount > 1) {
159146
return MPSUBST_BYPASS
160147
}
161148

0 commit comments

Comments
 (0)