• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2023 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 
16 #ifndef INPUTMETHOD_IMF_INPUT__CLIENT_INFO_H
17 #define INPUTMETHOD_IMF_INPUT__CLIENT_INFO_H
18 
19 #include "event_status_manager.h"
20 #include "i_input_client.h"
21 #include "i_input_data_channel.h"
22 #include "input_attribute.h"
23 #include "input_death_recipient.h"
24 
25 namespace OHOS {
26 namespace MiscServices {
27 struct InputClientInfo {
28     pid_t pid{ -1 };                                        // process id
29     pid_t uid{ -1 };                                        // uid
30     int32_t userID{ 0 };                                   // user id of input client
31     int32_t displayID{ 0 };                                // the display id on which the input client is showing
32     bool isShowKeyboard{ false };                          // soft keyboard status
33     bool isValid{ false };                                 // whether client is valid
34     uint32_t eventFlag{ EventStatusManager::NO_EVENT_ON }; // the flag of the all listen event
35     InputAttribute attribute;                              // the input client attribute
36     sptr<IInputClient> client;                // the remote object handler for service to callback input client
37     sptr<IInputDataChannel> channel;          // the remote object handler for ime to callback input client
38     sptr<InputDeathRecipient> deathRecipient; // death recipient of client
39 };
40 } // namespace MiscServices
41 } // namespace OHOS
42 
43 #endif //INPUTMETHOD_IMF_INPUT_CLIENT_INFO_H
44