1/* 2 * Copyright (c) 2025 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16sequenceable input_client_info..OHOS.MiscServices.InputClientInfoInner; 17sequenceable input_method_property..OHOS.MiscServices.Property; 18sequenceable input_method_property..OHOS.MiscServices.SubProperty; 19sequenceable input_window_info..OHOS.MiscServices.ImeWindowInfo; 20sequenceable input_method_utils..OHOS.MiscServices.Value; 21sequenceable panel_info..OHOS.MiscServices.PanelInfo; 22sequenceable element_name..OHOS.AppExecFwk.ElementName; 23sequenceable OHOS.IRemoteObject; 24import InputMethodClientTypes; 25interface OHOS.MiscServices.IInputClient; 26interface OHOS.MiscServices.IInputMethodCore; 27interface OHOS.MiscServices.IInputMethodSystemAbility { 28 void StartInput([in] InputClientInfoInner inputClientInfoInner, [out] IRemoteObject[] agents, [out] BindImeInfo[] imeInfos); 29 void ShowCurrentInput([in] unsigned int type); 30 void HideCurrentInput(); 31 void StopInputSession(); 32 void ShowInput([in] IInputClient client, [in] unsigned int type, [in] int requestKeyboardReason); 33 void HideInput([in] IInputClient client); 34 void ReleaseInput([in] IInputClient client, [in] unsigned int sessionId); 35 void RequestShowInput(); 36 void RequestHideInput([in] boolean isFocusTriggered); 37 void GetDefaultInputMethod([out] Property prop, [in] boolean isBrief); 38 void GetInputMethodConfig([out] ElementName inputMethodConfig); 39 void GetCurrentInputMethod([out] Property resultValue); 40 void GetCurrentInputMethodSubtype([out] SubProperty resultValue); 41 void ListInputMethod([in] unsigned int status, [out] Property[] props); 42 void DisplayOptionalInputMethod(); 43 void SetCoreAndAgent([in] IInputMethodCore core, [in] IRemoteObject agent); 44 void InitConnect(); 45 void UnRegisteredProxyIme([in] int type, [in] IInputMethodCore core); 46 void ListCurrentInputMethodSubtype([out] SubProperty[] subProps); 47 void ListInputMethodSubtype([in] String name, [out] SubProperty[] subProps); 48 void SwitchInputMethod([in] String bundleName, [in] String name, [in] unsigned int trigger); 49 [oneway] void PanelStatusChange([in] unsigned int status, [in] ImeWindowInfo info); 50 void UpdateListenEventFlag([in] InputClientInfoInner clientInfoInner, [in] unsigned int eventFlag); 51 void IsCurrentIme([out] boolean resultValue); 52 void IsInputTypeSupported([in] int type, [out] boolean resultValue); 53 void IsCurrentImeByPid([in] int pid, [out] boolean resultValue); 54 void StartInputType([in] int type); 55 [oneway] void StartInputTypeAsync([in] int type); 56 void ExitCurrentInputType(); 57 void IsPanelShown([in] PanelInfo panelInfo, [out] boolean isShown); 58 void GetSecurityMode([out] int security); 59 void IsDefaultIme(); 60 void IsDefaultImeSet([out] boolean resultValue); 61 void EnableIme([in] String bundleName, [in] String extensionName, [in] int status); 62 void ConnectSystemCmd([in] IRemoteObject channel, [out] IRemoteObject agent); 63 void GetInputMethodState([out] int state); 64 void IsSystemApp([out] boolean resultValue); 65 void HideCurrentInputDeprecated(); 66 void ShowCurrentInputDeprecated(); 67 void SetCallingWindow([in] unsigned int windowId, [in] IInputClient client); 68 void GetInputStartInfo( 69 [out] boolean isInputStart, [out] unsigned int callingWndId, [out] int requestKeyboardReason); 70 void RegisterProxyIme([in] unsigned long displayId, [in] IInputMethodCore core, [in] IRemoteObject agent); 71 void UnregisterProxyIme([in] unsigned long displayId); 72 void SendPrivateData([in] Value value); 73 void IsRestrictedDefaultImeByDisplay([in] unsigned long displayId, [out] boolean resultValue); 74 void IsCapacitySupport([in] int capacity, [out] boolean isSupport); 75 void BindImeMirror([in] IInputMethodCore core, [in] IRemoteObject agent); 76 void UnbindImeMirror(); 77} 78