switch from Char.toInt() to Char.code

removes a lot of deprecation warnings
internally kotlin still seems to use toInt() when calling code
This commit is contained in:
Helium314 2023-08-29 09:41:22 +02:00
parent b48c6b0077
commit ccece45596

View file

@ -13,30 +13,30 @@ class DeadKeyCombiner : Combiner {
private object Data { private object Data {
// This class data taken from KeyCharacterMap.java. // This class data taken from KeyCharacterMap.java.
/* Characters used to display placeholders for dead keys. */ /* Characters used to display placeholders for dead keys. */
private const val ACCENT_ACUTE = '\u00B4'.toInt() private const val ACCENT_ACUTE = '\u00B4'.code
private const val ACCENT_BREVE = '\u02D8'.toInt() private const val ACCENT_BREVE = '\u02D8'.code
private const val ACCENT_CARON = '\u02C7'.toInt() private const val ACCENT_CARON = '\u02C7'.code
private const val ACCENT_CEDILLA = '\u00B8'.toInt() private const val ACCENT_CEDILLA = '\u00B8'.code
private const val ACCENT_CIRCUMFLEX = '\u02C6'.toInt() private const val ACCENT_CIRCUMFLEX = '\u02C6'.code
private const val ACCENT_COMMA_ABOVE = '\u1FBD'.toInt() private const val ACCENT_COMMA_ABOVE = '\u1FBD'.code
private const val ACCENT_COMMA_ABOVE_RIGHT = '\u02BC'.toInt() private const val ACCENT_COMMA_ABOVE_RIGHT = '\u02BC'.code
private const val ACCENT_DOT_ABOVE = '\u02D9'.toInt() private const val ACCENT_DOT_ABOVE = '\u02D9'.code
private const val ACCENT_DOT_BELOW = Constants.CODE_PERIOD // approximate private const val ACCENT_DOT_BELOW = Constants.CODE_PERIOD // approximate
private const val ACCENT_DOUBLE_ACUTE = '\u02DD'.toInt() private const val ACCENT_DOUBLE_ACUTE = '\u02DD'.code
private const val ACCENT_GRAVE = '\u02CB'.toInt() private const val ACCENT_GRAVE = '\u02CB'.code
private const val ACCENT_HOOK_ABOVE = '\u02C0'.toInt() private const val ACCENT_HOOK_ABOVE = '\u02C0'.code
private const val ACCENT_HORN = Constants.CODE_SINGLE_QUOTE // approximate private const val ACCENT_HORN = Constants.CODE_SINGLE_QUOTE // approximate
private const val ACCENT_MACRON = '\u00AF'.toInt() private const val ACCENT_MACRON = '\u00AF'.code
private const val ACCENT_MACRON_BELOW = '\u02CD'.toInt() private const val ACCENT_MACRON_BELOW = '\u02CD'.code
private const val ACCENT_OGONEK = '\u02DB'.toInt() private const val ACCENT_OGONEK = '\u02DB'.code
private const val ACCENT_REVERSED_COMMA_ABOVE = '\u02BD'.toInt() private const val ACCENT_REVERSED_COMMA_ABOVE = '\u02BD'.code
private const val ACCENT_RING_ABOVE = '\u02DA'.toInt() private const val ACCENT_RING_ABOVE = '\u02DA'.code
private const val ACCENT_STROKE = Constants.CODE_DASH // approximate private const val ACCENT_STROKE = Constants.CODE_DASH // approximate
private const val ACCENT_TILDE = '\u02DC'.toInt() private const val ACCENT_TILDE = '\u02DC'.code
private const val ACCENT_TURNED_COMMA_ABOVE = '\u02BB'.toInt() private const val ACCENT_TURNED_COMMA_ABOVE = '\u02BB'.code
private const val ACCENT_UMLAUT = '\u00A8'.toInt() private const val ACCENT_UMLAUT = '\u00A8'.code
private const val ACCENT_VERTICAL_LINE_ABOVE = '\u02C8'.toInt() private const val ACCENT_VERTICAL_LINE_ABOVE = '\u02C8'.code
private const val ACCENT_VERTICAL_LINE_BELOW = '\u02CC'.toInt() private const val ACCENT_VERTICAL_LINE_BELOW = '\u02CC'.code
/* Legacy dead key display characters used in previous versions of the API (before L) /* Legacy dead key display characters used in previous versions of the API (before L)
* We still support these characters by mapping them to their non-legacy version. */ * We still support these characters by mapping them to their non-legacy version. */
private const val ACCENT_GRAVE_LEGACY = Constants.CODE_GRAVE_ACCENT private const val ACCENT_GRAVE_LEGACY = Constants.CODE_GRAVE_ACCENT
@ -73,31 +73,31 @@ class DeadKeyCombiner : Combiner {
} }
init { // U+0300: COMBINING GRAVE ACCENT init { // U+0300: COMBINING GRAVE ACCENT
addCombining('\u0300'.toInt(), ACCENT_GRAVE) addCombining('\u0300'.code, ACCENT_GRAVE)
// U+0301: COMBINING ACUTE ACCENT // U+0301: COMBINING ACUTE ACCENT
addCombining('\u0301'.toInt(), ACCENT_ACUTE) addCombining('\u0301'.code, ACCENT_ACUTE)
// U+0302: COMBINING CIRCUMFLEX ACCENT // U+0302: COMBINING CIRCUMFLEX ACCENT
addCombining('\u0302'.toInt(), ACCENT_CIRCUMFLEX) addCombining('\u0302'.code, ACCENT_CIRCUMFLEX)
// U+0303: COMBINING TILDE // U+0303: COMBINING TILDE
addCombining('\u0303'.toInt(), ACCENT_TILDE) addCombining('\u0303'.code, ACCENT_TILDE)
// U+0304: COMBINING MACRON // U+0304: COMBINING MACRON
addCombining('\u0304'.toInt(), ACCENT_MACRON) addCombining('\u0304'.code, ACCENT_MACRON)
// U+0306: COMBINING BREVE // U+0306: COMBINING BREVE
addCombining('\u0306'.toInt(), ACCENT_BREVE) addCombining('\u0306'.code, ACCENT_BREVE)
// U+0307: COMBINING DOT ABOVE // U+0307: COMBINING DOT ABOVE
addCombining('\u0307'.toInt(), ACCENT_DOT_ABOVE) addCombining('\u0307'.code, ACCENT_DOT_ABOVE)
// U+0308: COMBINING DIAERESIS // U+0308: COMBINING DIAERESIS
addCombining('\u0308'.toInt(), ACCENT_UMLAUT) addCombining('\u0308'.code, ACCENT_UMLAUT)
// U+0309: COMBINING HOOK ABOVE // U+0309: COMBINING HOOK ABOVE
addCombining('\u0309'.toInt(), ACCENT_HOOK_ABOVE) addCombining('\u0309'.code, ACCENT_HOOK_ABOVE)
// U+030A: COMBINING RING ABOVE // U+030A: COMBINING RING ABOVE
addCombining('\u030A'.toInt(), ACCENT_RING_ABOVE) addCombining('\u030A'.code, ACCENT_RING_ABOVE)
// U+030B: COMBINING DOUBLE ACUTE ACCENT // U+030B: COMBINING DOUBLE ACUTE ACCENT
addCombining('\u030B'.toInt(), ACCENT_DOUBLE_ACUTE) addCombining('\u030B'.code, ACCENT_DOUBLE_ACUTE)
// U+030C: COMBINING CARON // U+030C: COMBINING CARON
addCombining('\u030C'.toInt(), ACCENT_CARON) addCombining('\u030C'.code, ACCENT_CARON)
// U+030D: COMBINING VERTICAL LINE ABOVE // U+030D: COMBINING VERTICAL LINE ABOVE
addCombining('\u030D'.toInt(), ACCENT_VERTICAL_LINE_ABOVE) addCombining('\u030D'.code, ACCENT_VERTICAL_LINE_ABOVE)
// U+030E: COMBINING DOUBLE VERTICAL LINE ABOVE // U+030E: COMBINING DOUBLE VERTICAL LINE ABOVE
//addCombining('\u030E', ACCENT_DOUBLE_VERTICAL_LINE_ABOVE); //addCombining('\u030E', ACCENT_DOUBLE_VERTICAL_LINE_ABOVE);
// U+030F: COMBINING DOUBLE GRAVE ACCENT // U+030F: COMBINING DOUBLE GRAVE ACCENT
@ -107,29 +107,29 @@ class DeadKeyCombiner : Combiner {
// U+0311: COMBINING INVERTED BREVE // U+0311: COMBINING INVERTED BREVE
//addCombining('\u0311', ACCENT_INVERTED_BREVE); //addCombining('\u0311', ACCENT_INVERTED_BREVE);
// U+0312: COMBINING TURNED COMMA ABOVE // U+0312: COMBINING TURNED COMMA ABOVE
addCombining('\u0312'.toInt(), ACCENT_TURNED_COMMA_ABOVE) addCombining('\u0312'.code, ACCENT_TURNED_COMMA_ABOVE)
// U+0313: COMBINING COMMA ABOVE // U+0313: COMBINING COMMA ABOVE
addCombining('\u0313'.toInt(), ACCENT_COMMA_ABOVE) addCombining('\u0313'.code, ACCENT_COMMA_ABOVE)
// U+0314: COMBINING REVERSED COMMA ABOVE // U+0314: COMBINING REVERSED COMMA ABOVE
addCombining('\u0314'.toInt(), ACCENT_REVERSED_COMMA_ABOVE) addCombining('\u0314'.code, ACCENT_REVERSED_COMMA_ABOVE)
// U+0315: COMBINING COMMA ABOVE RIGHT // U+0315: COMBINING COMMA ABOVE RIGHT
addCombining('\u0315'.toInt(), ACCENT_COMMA_ABOVE_RIGHT) addCombining('\u0315'.code, ACCENT_COMMA_ABOVE_RIGHT)
// U+031B: COMBINING HORN // U+031B: COMBINING HORN
addCombining('\u031B'.toInt(), ACCENT_HORN) addCombining('\u031B'.code, ACCENT_HORN)
// U+0323: COMBINING DOT BELOW // U+0323: COMBINING DOT BELOW
addCombining('\u0323'.toInt(), ACCENT_DOT_BELOW) addCombining('\u0323'.code, ACCENT_DOT_BELOW)
// U+0326: COMBINING COMMA BELOW // U+0326: COMBINING COMMA BELOW
//addCombining('\u0326', ACCENT_COMMA_BELOW); //addCombining('\u0326', ACCENT_COMMA_BELOW);
// U+0327: COMBINING CEDILLA // U+0327: COMBINING CEDILLA
addCombining('\u0327'.toInt(), ACCENT_CEDILLA) addCombining('\u0327'.code, ACCENT_CEDILLA)
// U+0328: COMBINING OGONEK // U+0328: COMBINING OGONEK
addCombining('\u0328'.toInt(), ACCENT_OGONEK) addCombining('\u0328'.code, ACCENT_OGONEK)
// U+0329: COMBINING VERTICAL LINE BELOW // U+0329: COMBINING VERTICAL LINE BELOW
addCombining('\u0329'.toInt(), ACCENT_VERTICAL_LINE_BELOW) addCombining('\u0329'.code, ACCENT_VERTICAL_LINE_BELOW)
// U+0331: COMBINING MACRON BELOW // U+0331: COMBINING MACRON BELOW
addCombining('\u0331'.toInt(), ACCENT_MACRON_BELOW) addCombining('\u0331'.code, ACCENT_MACRON_BELOW)
// U+0335: COMBINING SHORT STROKE OVERLAY // U+0335: COMBINING SHORT STROKE OVERLAY
addCombining('\u0335'.toInt(), ACCENT_STROKE) addCombining('\u0335'.code, ACCENT_STROKE)
// U+0342: COMBINING GREEK PERISPOMENI // U+0342: COMBINING GREEK PERISPOMENI
//addCombining('\u0342', ACCENT_PERISPOMENI); //addCombining('\u0342', ACCENT_PERISPOMENI);
// U+0344: COMBINING GREEK DIALYTIKA TONOS // U+0344: COMBINING GREEK DIALYTIKA TONOS
@ -138,50 +138,50 @@ class DeadKeyCombiner : Combiner {
//addCombining('\u0345', ACCENT_YPOGEGRAMMENI); //addCombining('\u0345', ACCENT_YPOGEGRAMMENI);
// One-way mappings to equivalent preferred accents. // One-way mappings to equivalent preferred accents.
// U+0340: COMBINING GRAVE TONE MARK // U+0340: COMBINING GRAVE TONE MARK
sCombiningToAccent.append('\u0340'.toInt(), ACCENT_GRAVE) sCombiningToAccent.append('\u0340'.code, ACCENT_GRAVE)
// U+0341: COMBINING ACUTE TONE MARK // U+0341: COMBINING ACUTE TONE MARK
sCombiningToAccent.append('\u0341'.toInt(), ACCENT_ACUTE) sCombiningToAccent.append('\u0341'.code, ACCENT_ACUTE)
// U+0343: COMBINING GREEK KORONIS // U+0343: COMBINING GREEK KORONIS
sCombiningToAccent.append('\u0343'.toInt(), ACCENT_COMMA_ABOVE) sCombiningToAccent.append('\u0343'.code, ACCENT_COMMA_ABOVE)
// One-way legacy mappings to preserve compatibility with older applications. // One-way legacy mappings to preserve compatibility with older applications.
// U+0300: COMBINING GRAVE ACCENT // U+0300: COMBINING GRAVE ACCENT
sAccentToCombining.append(ACCENT_GRAVE_LEGACY, '\u0300'.toInt()) sAccentToCombining.append(ACCENT_GRAVE_LEGACY, '\u0300'.code)
// U+0302: COMBINING CIRCUMFLEX ACCENT // U+0302: COMBINING CIRCUMFLEX ACCENT
sAccentToCombining.append(ACCENT_CIRCUMFLEX_LEGACY, '\u0302'.toInt()) sAccentToCombining.append(ACCENT_CIRCUMFLEX_LEGACY, '\u0302'.code)
// U+0303: COMBINING TILDE // U+0303: COMBINING TILDE
sAccentToCombining.append(ACCENT_TILDE_LEGACY, '\u0303'.toInt()) sAccentToCombining.append(ACCENT_TILDE_LEGACY, '\u0303'.code)
} }
init { // Non-standard decompositions. init { // Non-standard decompositions.
// Stroke modifier for Finnish multilingual keyboard and others. // Stroke modifier for Finnish multilingual keyboard and others.
// U+0110: LATIN CAPITAL LETTER D WITH STROKE // U+0110: LATIN CAPITAL LETTER D WITH STROKE
addNonStandardDeadCombination(ACCENT_STROKE, 'D'.toInt(), '\u0110'.toInt()) addNonStandardDeadCombination(ACCENT_STROKE, 'D'.code, '\u0110'.code)
// U+01E4: LATIN CAPITAL LETTER G WITH STROKE // U+01E4: LATIN CAPITAL LETTER G WITH STROKE
addNonStandardDeadCombination(ACCENT_STROKE, 'G'.toInt(), '\u01e4'.toInt()) addNonStandardDeadCombination(ACCENT_STROKE, 'G'.code, '\u01e4'.code)
// U+0126: LATIN CAPITAL LETTER H WITH STROKE // U+0126: LATIN CAPITAL LETTER H WITH STROKE
addNonStandardDeadCombination(ACCENT_STROKE, 'H'.toInt(), '\u0126'.toInt()) addNonStandardDeadCombination(ACCENT_STROKE, 'H'.code, '\u0126'.code)
// U+0197: LATIN CAPITAL LETTER I WITH STROKE // U+0197: LATIN CAPITAL LETTER I WITH STROKE
addNonStandardDeadCombination(ACCENT_STROKE, 'I'.toInt(), '\u0197'.toInt()) addNonStandardDeadCombination(ACCENT_STROKE, 'I'.code, '\u0197'.code)
// U+0141: LATIN CAPITAL LETTER L WITH STROKE // U+0141: LATIN CAPITAL LETTER L WITH STROKE
addNonStandardDeadCombination(ACCENT_STROKE, 'L'.toInt(), '\u0141'.toInt()) addNonStandardDeadCombination(ACCENT_STROKE, 'L'.code, '\u0141'.code)
// U+00D8: LATIN CAPITAL LETTER O WITH STROKE // U+00D8: LATIN CAPITAL LETTER O WITH STROKE
addNonStandardDeadCombination(ACCENT_STROKE, 'O'.toInt(), '\u00d8'.toInt()) addNonStandardDeadCombination(ACCENT_STROKE, 'O'.code, '\u00d8'.code)
// U+0166: LATIN CAPITAL LETTER T WITH STROKE // U+0166: LATIN CAPITAL LETTER T WITH STROKE
addNonStandardDeadCombination(ACCENT_STROKE, 'T'.toInt(), '\u0166'.toInt()) addNonStandardDeadCombination(ACCENT_STROKE, 'T'.code, '\u0166'.code)
// U+0111: LATIN SMALL LETTER D WITH STROKE // U+0111: LATIN SMALL LETTER D WITH STROKE
addNonStandardDeadCombination(ACCENT_STROKE, 'd'.toInt(), '\u0111'.toInt()) addNonStandardDeadCombination(ACCENT_STROKE, 'd'.code, '\u0111'.code)
// U+01E5: LATIN SMALL LETTER G WITH STROKE // U+01E5: LATIN SMALL LETTER G WITH STROKE
addNonStandardDeadCombination(ACCENT_STROKE, 'g'.toInt(), '\u01e5'.toInt()) addNonStandardDeadCombination(ACCENT_STROKE, 'g'.code, '\u01e5'.code)
// U+0127: LATIN SMALL LETTER H WITH STROKE // U+0127: LATIN SMALL LETTER H WITH STROKE
addNonStandardDeadCombination(ACCENT_STROKE, 'h'.toInt(), '\u0127'.toInt()) addNonStandardDeadCombination(ACCENT_STROKE, 'h'.code, '\u0127'.code)
// U+0268: LATIN SMALL LETTER I WITH STROKE // U+0268: LATIN SMALL LETTER I WITH STROKE
addNonStandardDeadCombination(ACCENT_STROKE, 'i'.toInt(), '\u0268'.toInt()) addNonStandardDeadCombination(ACCENT_STROKE, 'i'.code, '\u0268'.code)
// U+0142: LATIN SMALL LETTER L WITH STROKE // U+0142: LATIN SMALL LETTER L WITH STROKE
addNonStandardDeadCombination(ACCENT_STROKE, 'l'.toInt(), '\u0142'.toInt()) addNonStandardDeadCombination(ACCENT_STROKE, 'l'.code, '\u0142'.code)
// U+00F8: LATIN SMALL LETTER O WITH STROKE // U+00F8: LATIN SMALL LETTER O WITH STROKE
addNonStandardDeadCombination(ACCENT_STROKE, 'o'.toInt(), '\u00f8'.toInt()) addNonStandardDeadCombination(ACCENT_STROKE, 'o'.code, '\u00f8'.code)
// U+0167: LATIN SMALL LETTER T WITH STROKE // U+0167: LATIN SMALL LETTER T WITH STROKE
addNonStandardDeadCombination(ACCENT_STROKE, 't'.toInt(), '\u0167'.toInt()) addNonStandardDeadCombination(ACCENT_STROKE, 't'.code, '\u0167'.code)
} }
} }
@ -226,7 +226,7 @@ class DeadKeyCombiner : Combiner {
while (codePointIndex < mDeadSequence.length) { while (codePointIndex < mDeadSequence.length) {
val deadCodePoint = mDeadSequence.codePointAt(codePointIndex) val deadCodePoint = mDeadSequence.codePointAt(codePointIndex)
val replacementSpacingChar = Data.getNonstandardCombination(deadCodePoint, event.mCodePoint) val replacementSpacingChar = Data.getNonstandardCombination(deadCodePoint, event.mCodePoint)
if (Data.NOT_A_CHAR != replacementSpacingChar.toInt()) { if (Data.NOT_A_CHAR != replacementSpacingChar.code) {
sb.setCharAt(0, replacementSpacingChar) sb.setCharAt(0, replacementSpacingChar)
} else { } else {
val combining = Data.sAccentToCombining[deadCodePoint] val combining = Data.sAccentToCombining[deadCodePoint]