diff --git a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/ServiceExtAbility/ServiceExtAbility.ets b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/ServiceExtAbility/ServiceExtAbility.ets index 70eb53ef6d888b088d5de41bdf978e89e8c625c8..37798e9e0c97d5d8cd483f969b7b1f86cf23f6cb 100644 --- a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/ServiceExtAbility/ServiceExtAbility.ets +++ b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/ServiceExtAbility/ServiceExtAbility.ets @@ -12,10 +12,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + import InputMethodExtensionAbility from '@ohos.InputMethodExtensionAbility'; -import Want from '@ohos.app.ability.Want'; +import type Want from '@ohos.app.ability.Want'; import Log from '../model/Log'; -import { KeyboardController } from '../model/KeyboardController'; +import lazy { KeyboardController } from '../model/KeyboardController'; const TAG: string = 'ServiceExtAbility->'; diff --git a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/common/StyleConfiguration.ets b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/common/StyleConfiguration.ets index de0572b0f136bbac9301ccd83e2d4877afc6ff4f..958941c1d83d2ad312d971a9a6d734ed8390ae6d 100644 --- a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/common/StyleConfiguration.ets +++ b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/common/StyleConfiguration.ets @@ -13,7 +13,7 @@ * limitations under the License. */ -import deviceInfo from '@ohos.deviceInfo'; +import { DEVICE_TYPE } from '../model/KeyboardController'; export interface KeyStyle { deviceType?: string, @@ -54,7 +54,7 @@ export class StyleConfiguration { if (isRkDevice === undefined) { isRkDevice = false; } - return StyleConfiguration.getInputStyle(isLandscape, isRkDevice, deviceInfo.deviceType) + return StyleConfiguration.getInputStyle(isLandscape, isRkDevice, DEVICE_TYPE) } static getInputStyle(islandSpace: boolean, isRkDevice: boolean, deviceType: string): KeyStyle { diff --git a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/DeleteItem.ets b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/DeleteItem.ets index 3caf4933e85c6de1b3b08735e60a2887d3220af9..787aa07eb3ac1e3288cea18c2f1b4f22e7a8f145 100644 --- a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/DeleteItem.ets +++ b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/DeleteItem.ets @@ -13,8 +13,8 @@ * limitations under the License. */ -import { InputHandler } from '../model/KeyboardController'; -import { KeyStyle, StyleConfiguration } from '../common/StyleConfiguration'; +import lazy { InputHandler } from '../model/KeyboardController'; +import lazy { KeyStyle, StyleConfiguration } from '../common/StyleConfiguration'; @Styles function pressedStyles() { .backgroundColor($r('app.color.key_item_gray_pressed')) diff --git a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/KeyItem.ets b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/KeyItem.ets index 87e397a7b6c4350be39ec9fa98d121f44bdd4600..f2f8ffa145bc2cf84488330e0fd8a50573b99647 100644 --- a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/KeyItem.ets +++ b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/KeyItem.ets @@ -13,9 +13,9 @@ * limitations under the License. */ -import { keySourceListType, } from '../model/KeyboardKeyData'; -import { KeyStyle, StyleConfiguration } from '../common/StyleConfiguration'; -import { InputHandler } from '../model/KeyboardController'; +import lazy { keySourceListType, } from '../model/KeyboardKeyData'; +import lazy { KeyStyle, StyleConfiguration } from '../common/StyleConfiguration'; +import lazy { InputHandler } from '../model/KeyboardController'; @Styles function pressedStyles() { .backgroundColor($r('app.color.key_item_normal_pressed')) diff --git a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/KeyItemGray.ets b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/KeyItemGray.ets index 5f73b4ea81a44715ed671f5ec0e8dce20ef37125..35b27c5a21dc29d29b055e54725ac20b68a70923 100644 --- a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/KeyItemGray.ets +++ b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/KeyItemGray.ets @@ -13,8 +13,8 @@ * limitations under the License. */ -import { KeyStyle, StyleConfiguration } from '../common/StyleConfiguration'; -import { MenuKey, MenuType } from '../model/KeyboardKeyData'; +import lazy { KeyStyle, StyleConfiguration } from '../common/StyleConfiguration'; +import lazy { MenuKey, MenuType } from '../model/KeyboardKeyData'; @Styles function pressedStyles() { .backgroundColor($r('app.color.key_item_gray_pressed')) diff --git a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/KeyItemNumber.ets b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/KeyItemNumber.ets index 5197f27bbd5d94041442f5834af0f6fab7ad47ae..1c498429a4362a64be16f187e53f0e1bba10e7f6 100644 --- a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/KeyItemNumber.ets +++ b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/KeyItemNumber.ets @@ -13,10 +13,9 @@ * limitations under the License. */ -import deviceInfo from '@ohos.deviceInfo'; -import { InputHandler } from '../model/KeyboardController'; -import { KeyState, keySourceListType } from '../model/KeyboardKeyData'; -import { KeyStyle, StyleConfiguration } from '../common/StyleConfiguration'; +import lazy { InputHandler } from '../model/KeyboardController'; +import lazy { KeyState, keySourceListType } from '../model/KeyboardKeyData'; +import lazy { KeyStyle, StyleConfiguration } from '../common/StyleConfiguration'; @Styles function pressedStyles() { .backgroundColor($r('app.color.key_item_normal_pressed')) @@ -35,7 +34,7 @@ export struct KeyItemNumber { build() { Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.Center }) { - if (AppStorage.get('isLandscape') && deviceInfo.deviceType === 'phone' && this.keyValue) { + if (AppStorage.get('isLandscape') && this.keyValue) { Stack({ alignContent: Alignment.TopEnd }) { Text(this.keyState === KeyState.LOWER_CASE ? this.keyValue.content : this.keyValue.upperContent) .fontSize(this.inputStyle.en_fontSize) diff --git a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/KeyMenu.ets b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/KeyMenu.ets index e0b081ace2c53fa77732afc14e825cb2a324d8c5..354761dd994c9f62f0888148ab5d21be0b592eb0 100644 --- a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/KeyMenu.ets +++ b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/KeyMenu.ets @@ -13,14 +13,14 @@ * limitations under the License. */ -import { DeleteItem } from './DeleteItem'; -import { MenuKey, KeyState, keySourceListType, keySourceListData } from '../model/KeyboardKeyData'; -import { KeyStyle, StyleConfiguration } from '../common/StyleConfiguration'; -import { KeyItem } from './KeyItem'; -import { KeyItemGray } from './KeyItemGray'; -import { KeyItemNumber } from './KeyItemNumber'; -import { SpaceItem } from './SpaceItem'; -import { ReturnItem } from './ReturnItem'; +import lazy { DeleteItem } from './DeleteItem'; +import lazy { MenuKey, KeyState, keySourceListType, keySourceListData } from '../model/KeyboardKeyData'; +import lazy { KeyStyle, StyleConfiguration } from '../common/StyleConfiguration'; +import lazy { KeyItem } from './KeyItem'; +import lazy { KeyItemGray } from './KeyItemGray'; +import lazy { KeyItemNumber } from './KeyItemNumber'; +import lazy { SpaceItem } from './SpaceItem'; +import lazy { ReturnItem } from './ReturnItem'; @Styles function pressedStyles() { .backgroundColor($r('app.color.key_item_gray_pressed')) diff --git a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/NumberMenu.ets b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/NumberMenu.ets index 68475cfbf3d53c19e0e35284d914a379246273f4..8b002c2e733eced828bbfceb8ac7add54b359760 100644 --- a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/NumberMenu.ets +++ b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/NumberMenu.ets @@ -13,13 +13,13 @@ * limitations under the License. */ -import { DeleteItem } from './DeleteItem'; -import { KeyStyle, StyleConfiguration } from '../common/StyleConfiguration'; -import { KeyItem } from './KeyItem'; -import { KeyItemGray } from './KeyItemGray'; -import { MenuKey, numberSourceListData, sourceListType } from '../model/KeyboardKeyData'; -import { SpaceItem } from './SpaceItem'; -import { ReturnItem } from './ReturnItem'; +import lazy { DeleteItem } from './DeleteItem'; +import lazy { KeyStyle, StyleConfiguration } from '../common/StyleConfiguration'; +import lazy { KeyItem } from './KeyItem'; +import lazy { KeyItemGray } from './KeyItemGray'; +import lazy { MenuKey, numberSourceListData, sourceListType } from '../model/KeyboardKeyData'; +import lazy { SpaceItem } from './SpaceItem'; +import lazy { ReturnItem } from './ReturnItem'; // 数字键盘 @Component diff --git a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/ReturnItem.ets b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/ReturnItem.ets index 9730a9afb97429eff3ad2f6f38e58b3a1f048a13..f11fe5036c0b53a8f05b777a5c65af753ca8661e 100644 --- a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/ReturnItem.ets +++ b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/ReturnItem.ets @@ -13,8 +13,8 @@ * limitations under the License. */ -import { InputHandler } from '../model/KeyboardController'; -import { KeyStyle, StyleConfiguration } from '../common/StyleConfiguration'; +import lazy { InputHandler } from '../model/KeyboardController'; +import lazy { KeyStyle, StyleConfiguration } from '../common/StyleConfiguration'; enum EntryKey { Send = 'Send', @@ -33,7 +33,7 @@ enum EntryKey { // 返回组件 @Component export struct ReturnItem { - @StorageLink('enterKeyType') enterKeyType: EnterKeyType = EnterKeyType.Done + @StorageLink('enterKeyType') enterKeyType: EnterKeyType = EnterKeyType.Done; @StorageLink('inputStyle') inputStyle: KeyStyle = StyleConfiguration.getSavedInputStyle(); private returnWidth: Resource | undefined = undefined; diff --git a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/SpaceItem.ets b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/SpaceItem.ets index dd45ff3679ca97bed30b96812977911b8cba087e..6717355167160c9e90c473d096217414c14e8017 100644 --- a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/SpaceItem.ets +++ b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/SpaceItem.ets @@ -13,8 +13,8 @@ * limitations under the License. */ -import { InputHandler } from '../model/KeyboardController'; -import { KeyStyle, StyleConfiguration } from '../common/StyleConfiguration'; +import lazy { InputHandler } from '../model/KeyboardController'; +import lazy { KeyStyle, StyleConfiguration } from '../common/StyleConfiguration'; @Styles function pressedStyles() { .backgroundColor($r('app.color.key_item_normal_pressed')) diff --git a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/SymbolMenu.ets b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/SymbolMenu.ets index b8d21bf1322e5cc67ca6df74e5f7b2848324c1d8..ce575a889fe78c44df34a4a1a8993800f86e074e 100644 --- a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/SymbolMenu.ets +++ b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/SymbolMenu.ets @@ -13,13 +13,13 @@ * limitations under the License. */ -import { DeleteItem } from './DeleteItem'; -import { KeyStyle, StyleConfiguration } from '../common/StyleConfiguration'; -import { KeyItem } from './KeyItem'; -import { KeyItemGray } from './KeyItemGray'; -import { ReturnItem } from './ReturnItem'; -import { MenuKey, symbolSourceListData, sourceListType } from '../model/KeyboardKeyData'; -import { SpaceItem } from './SpaceItem'; +import lazy { DeleteItem } from './DeleteItem'; +import lazy { KeyStyle, StyleConfiguration } from '../common/StyleConfiguration'; +import lazy { KeyItem } from './KeyItem'; +import lazy { KeyItemGray } from './KeyItemGray'; +import lazy { ReturnItem } from './ReturnItem'; +import lazy { MenuKey, symbolSourceListData, sourceListType } from '../model/KeyboardKeyData'; +import lazy { SpaceItem } from './SpaceItem'; // 符号键盘 @Component diff --git a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/TopMenu.ets b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/TopMenu.ets index f91e9cf5435ca0fc9f03a4186160c7ed2609a4ce..865e0f91b4f145e22f582c265320bfaea46fe6f5 100644 --- a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/TopMenu.ets +++ b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/components/TopMenu.ets @@ -13,8 +13,8 @@ * limitations under the License. */ -import { KeyStyle, StyleConfiguration } from '../common/StyleConfiguration'; -import { InputHandler } from '../model/KeyboardController'; +import lazy { KeyStyle, StyleConfiguration } from '../common/StyleConfiguration'; +import lazy { InputHandler } from '../model/KeyboardController'; @Preview @Component diff --git a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/model/KeyboardController.ets b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/model/KeyboardController.ets index 1c9a2d35ec50b8ae51b1e67f092ba568b0dc1eb7..fa850642b9892893d70f2fed3cc1cac8c0f05eb6 100644 --- a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/model/KeyboardController.ets +++ b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/model/KeyboardController.ets @@ -13,16 +13,16 @@ * limitations under the License. */ -import deviceInfo from '@ohos.deviceInfo'; import inputMethodEngine from '@ohos.inputMethodEngine'; -import InputMethodExtensionContext from '@ohos.InputMethodExtensionContext'; +import type InputMethodExtensionContext from '@ohos.InputMethodExtensionContext'; import display from '@ohos.display'; -import windowManager from '@ohos.window'; import Log from './Log'; -import { BusinessError } from '@ohos.base'; -import { GetHardKeyValue } from './HardKeyUtils'; +import type { BusinessError } from '@ohos.base'; +import lazy { GetHardKeyValue } from './HardKeyUtils'; import { KeyCode } from '@ohos.multimodalInput.keyCode'; -import { StyleConfiguration } from '../common/StyleConfiguration'; +import lazy { StyleConfiguration } from '../common/StyleConfiguration'; + +export const DEVICE_TYPE: string = 'phone'; interface DeviceSize { width: number; @@ -97,6 +97,12 @@ export class InputHandler { }) } + public onInputStop() { + this.mKbController = undefined; + this.mTextInputClient = undefined; + this.mEditorAttribute = undefined; + } + public hideKeyboardSelf(): void { this.addLog('hideKeyboardSelf'); if (this.mKbController !== undefined) { @@ -208,7 +214,7 @@ export class InputHandler { this.addLog('refreshInfo5'); showText += this.inputInfo; this.addLog('refreshInfo6'); - AppStorage.Set('showLog', showText); + AppStorage.set('showLog', showText); this.addLog('refreshInfo7'); this.addLog('result is = ' + showText); } @@ -254,8 +260,6 @@ export class KeyboardController { let dHeight = dis.height; let navigationbar_height = NAVIGATIONBAR_HEIGHT_DEFAULT; let keyHeightRate = KEYBOARD_HEIGHT_RATE_DEFAULT; - AppStorage.setOrCreate('windowWidth', dis.width); - AppStorage.setOrCreate('windowHeight', dis.height); let isLandscape = false; let isRkDevice = false; if (dis.width > dis.height) { @@ -284,12 +288,11 @@ export class KeyboardController { let keyHeight = dHeight * keyHeightRate; this.barPosition = dHeight - keyHeight - navigationbar_height; this.inputHandle.addLog(`initWindow-dWidth = ${dWidth};dHeight = ${dHeight};keyboard height = ${keyHeight};;navibar height = navigationbar_height`); - this.inputHandle.addLog(`initWindow-deviceType = ${deviceInfo.deviceType}`); let panelInfo: inputMethodEngine.PanelInfo = { type: inputMethodEngine.PanelType.SOFT_KEYBOARD, flag: inputMethodEngine.PanelFlag.FLG_FIXED } - let inputStyle = StyleConfiguration.getInputStyle(isLandscape, isRkDevice, deviceInfo.deviceType); + let inputStyle = StyleConfiguration.getInputStyle(isLandscape, isRkDevice, DEVICE_TYPE); AppStorage.setOrCreate('inputStyle', inputStyle); InputMethodEngine.createPanel(this.mContext, panelInfo).then((panel: inputMethodEngine.Panel) => { this.panel = panel; @@ -299,7 +302,7 @@ export class KeyboardController { this.inputHandle.addLog('loadContent finished'); }) }) - }) + }); }) } @@ -308,6 +311,7 @@ export class KeyboardController { try { if (this.panel) { InputMethodEngine.destroyPanel(this.panel); + this.panel = undefined; } } catch (error) { this.inputHandle.addLog(`Failed to find the Panel. Cause: ${JSON.stringify(error)}`); @@ -322,8 +326,6 @@ export class KeyboardController { let dHeight = dis.height; let navigationbar_height = dHeight * 0.07; // 有些产品导航栏高度为0,默认为0.07 let keyHeightRate = KEYBOARD_HEIGHT_RATE_DEFAULT; - AppStorage.setOrCreate('windowWidth', dis.width); - AppStorage.setOrCreate('windowHeight', dis.height); let isLandscape = false; let isRkDevice = false; if (dis.width > dis.height) { @@ -350,7 +352,7 @@ export class KeyboardController { keyHeightRate = KEYBOARD_HEIGHT_RATE_BIG; } let keyHeight = dHeight * keyHeightRate; - let inputStyle = StyleConfiguration.getInputStyle(isLandscape, isRkDevice, deviceInfo.deviceType); + let inputStyle = StyleConfiguration.getInputStyle(isLandscape, isRkDevice, DEVICE_TYPE); AppStorage.setOrCreate('inputStyle', inputStyle); if (this.panel) { this.panel.resize(dWidth, keyHeight).then(() => { @@ -373,11 +375,10 @@ export class KeyboardController { this.resizePanel(); }); InputMethodEngine.on('inputStart', (kbController: inputMethodEngine.KeyboardController, textInputClient: inputMethodEngine.InputClient) => { - this.inputHandle.addLog('keyboard inputStart'); this.inputHandle.onInputStart(kbController, textInputClient); }) InputMethodEngine.on('inputStop', () => { - this.inputHandle.addLog('keyboard inputStop'); + this.inputHandle.onInputStop(); this.onDestroy(); this.mContext.destroy(); }); @@ -400,11 +401,11 @@ export class KeyboardController { return result; }); - this.mKeyboardDelegate.on('cursorContextChange', (x: number, y: number, height: number) => { - let cursorInfo: CursorInfo = { x: x, y: y, height: height } - this.inputHandle.setCursorInfo(cursorInfo); - }); if (isDebug) { + this.mKeyboardDelegate.on('cursorContextChange', (x: number, y: number, height: number) => { + let cursorInfo: CursorInfo = { x: x, y: y, height: height } + this.inputHandle.setCursorInfo(cursorInfo); + }); this.mKeyboardDelegate.on('selectionChange', (oldBegin: number, oldEnd: number, newBegin: number, newEnd: number) => { this.inputHandle.setSelectInfo('selectInfo: from(' + oldBegin + ',' + oldEnd + ') to (' + newBegin + ',' + newEnd + ')'); }); @@ -544,6 +545,7 @@ export class KeyboardController { private unRegisterListener(): void { this.inputHandle.addLog('unRegisterListener'); + InputMethodEngine.off('inputStart'); InputMethodEngine.off('inputStop', () => { this.inputHandle.addLog('inputStop off'); }); diff --git a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/pages/Index.ets b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/pages/Index.ets index 8eab0e719562656d44f2beb31096860c141aeb59..4e04d2423ecac07428fcd0d016675b917030369c 100644 --- a/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/pages/Index.ets +++ b/code/Solutions/InputMethod/KikaInput/entry/src/main/ets/pages/Index.ets @@ -12,10 +12,10 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import deviceInfo from '@ohos.deviceInfo'; + import Log from '../model/Log'; -import { InputHandler } from '../model/KeyboardController'; -import { +import lazy { InputHandler, DEVICE_TYPE } from '../model/KeyboardController'; +import lazy { MenuType, keySourceListData, numberSourceListData, @@ -23,13 +23,12 @@ import { keySourceListType, sourceListType } from '../model/KeyboardKeyData'; -import { KeyMenu } from '../components/KeyMenu'; -import { NumberMenu } from '../components/NumberMenu'; -import { StyleConfiguration, KeyStyle } from '../common/StyleConfiguration'; -import { SymbolMenu } from '../components/SymbolMenu'; -import { TopMenu } from '../components/TopMenu'; +import lazy { KeyMenu } from '../components/KeyMenu'; +import lazy { NumberMenu } from '../components/NumberMenu'; +import lazy { StyleConfiguration, KeyStyle } from '../common/StyleConfiguration'; +import lazy { SymbolMenu } from '../components/SymbolMenu'; +import lazy { TopMenu } from '../components/TopMenu'; -const DEVICE_TYPE: string = deviceInfo.deviceType; const TAG: string = 'index->'; @Entry @@ -42,7 +41,7 @@ struct Index { @StorageLink('inputPattern') @Watch('inputPatternChange') inputPattern: InputType = InputType.Normal @StorageLink('isLandscape') @Watch('change') isLandscape: boolean = false; @StorageLink('isRkDevice') isRkDevice: boolean = true; - @StorageLink('inputStyle') inputStyle: KeyStyle = StyleConfiguration.getInputStyle(this.isLandscape, this.isRkDevice, DEVICE_TYPE); + @StorageLink('inputStyle') inputStyle: KeyStyle = StyleConfiguration.getSavedInputStyle(); onBackPress(): boolean { Log.showInfo(TAG, 'kikaInput onBackPress');