Skip to content

Commit f566a1a

Browse files
nopdanWhiredPlanck
authored andcommitted
fix: crash on getLabel
1 parent 1a9d5ca commit f566a1a

File tree

3 files changed

+17
-38
lines changed

3 files changed

+17
-38
lines changed

app/src/main/java/com/osfans/trime/ime/keyboard/Event.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,8 +69,9 @@ class Event(keyboard: Keyboard?, var s: String) {
6969
get() {
7070
val state = states?.get(if (getOption(toggle)) 1 else 0)
7171
if (state != null) return state
72+
if (mKeyboard == null) return adjustCase(field)
7273

73-
if (mKeyboard!!.isOnlyShiftOn) {
74+
if (mKeyboard.isOnlyShiftOn) {
7475
if (code >= KeyEvent.KEYCODE_0 && code <= KeyEvent.KEYCODE_9 && !defaultInstance().keyboard.hookShiftNum) {
7576
return adjustCase(
7677
shiftLabel,

app/src/main/java/com/osfans/trime/ime/keyboard/Keyboard.kt

Lines changed: 5 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -58,11 +58,11 @@ class Keyboard() {
5858
// private boolean mShifted;
5959

6060
/** 鍵盤的Shift鍵 */
61-
private var mShiftKey: Key? = null
62-
private var mCtrlKey: Key? = null
63-
private var mAltKey: Key? = null
64-
private var mMetaKey: Key? = null
65-
private var mSymKey: Key? = null
61+
var mShiftKey: Key? = null
62+
var mCtrlKey: Key? = null
63+
var mAltKey: Key? = null
64+
var mMetaKey: Key? = null
65+
var mSymKey: Key? = null
6666

6767
/**
6868
* Total height of the keyboard, including the padding and keys
@@ -438,26 +438,6 @@ class Keyboard() {
438438
}
439439
}
440440

441-
fun getmShiftKey(): Key? {
442-
return mShiftKey
443-
}
444-
445-
fun getmAltKey(): Key? {
446-
return mAltKey
447-
}
448-
449-
fun getmMetaKey(): Key? {
450-
return mMetaKey
451-
}
452-
453-
fun getmSymKey(): Key? {
454-
return mSymKey
455-
}
456-
457-
fun getmCtrlKey(): Key? {
458-
return mCtrlKey
459-
}
460-
461441
fun setModiferKey(
462442
c: Int,
463443
key: Key?,
@@ -614,7 +594,6 @@ class Keyboard() {
614594
// if (mFunctionKey != null) mFunctionKey.setOn(on);
615595
// return setModifier(KeyEvent.META_FUNCTION_ON, on || keyDown);
616596
// }
617-
enum class Mask
618597

619598
private val MASK_META_WITHOUT_SHIFT = KeyEvent.META_CTRL_ON or KeyEvent.META_ALT_ON or KeyEvent.META_SYM_ON or KeyEvent.META_META_ON
620599
private val MASK_META_WITHOUT_CTRL = KeyEvent.META_SHIFT_ON or KeyEvent.META_ALT_ON or KeyEvent.META_SYM_ON or KeyEvent.META_META_ON

app/src/main/java/com/osfans/trime/ime/keyboard/KeyboardView.kt

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -712,23 +712,22 @@ class KeyboardView(context: Context?, attrs: AttributeSet?) : View(context, attr
712712
} else {
713713
false
714714
}
715+
716+
/**
717+
* 返回鍵盤是否爲大寫狀態
718+
*/
715719
val isCapsOn: Boolean
716-
/**
717-
* 返回鍵盤是否爲大寫狀態
718-
*
719-
* @return true 如果大寫
720-
*/
721-
get() = if (mKeyboard != null && mKeyboard!!.getmShiftKey() != null) mKeyboard!!.getmShiftKey()!!.isOn else false
720+
get() = if (mKeyboard != null && mKeyboard!!.mShiftKey != null) mKeyboard!!.mShiftKey!!.isOn else false
722721
val isShiftOn: Boolean
723-
get() = if (mKeyboard != null && mKeyboard!!.getmShiftKey() != null) mKeyboard!!.getmShiftKey()!!.isOn else false
722+
get() = if (mKeyboard != null && mKeyboard!!.mShiftKey != null) mKeyboard!!.mShiftKey!!.isOn else false
724723
val isAltOn: Boolean
725-
get() = if (mKeyboard != null && mKeyboard!!.getmAltKey() != null) mKeyboard!!.getmAltKey()!!.isOn else false
724+
get() = if (mKeyboard != null && mKeyboard!!.mAltKey != null) mKeyboard!!.mAltKey!!.isOn else false
726725
val isSysOn: Boolean
727-
get() = if (mKeyboard != null && mKeyboard!!.getmSymKey() != null) mKeyboard!!.getmSymKey()!!.isOn else false
726+
get() = if (mKeyboard != null && mKeyboard!!.mSymKey != null) mKeyboard!!.mSymKey!!.isOn else false
728727
val isCtrlOn: Boolean
729-
get() = if (mKeyboard != null && mKeyboard!!.getmCtrlKey() != null) mKeyboard!!.getmCtrlKey()!!.isOn else false
728+
get() = if (mKeyboard != null && mKeyboard!!.mCtrlKey != null) mKeyboard!!.mCtrlKey!!.isOn else false
730729
val isMetaOn: Boolean
731-
get() = if (mKeyboard != null && mKeyboard!!.getmMetaKey() != null) mKeyboard!!.getmMetaKey()!!.isOn else false
730+
get() = if (mKeyboard != null && mKeyboard!!.mMetaKey != null) mKeyboard!!.mMetaKey!!.isOn else false
732731

733732
// public void setVerticalCorrection(int verticalOffset) {}
734733

0 commit comments

Comments
 (0)