1 /*
2 * Copyright (C) 2022-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 #include "accessibility_ability_ut_helper.h"
17 #include "accessible_ability_client_impl.h"
18 #include "hilog_wrapper.h"
19
20 namespace OHOS {
21 namespace Accessibility {
22 namespace {
23 ffrt::mutex g_Mutex;
24 sptr<AccessibleAbilityClientImpl> g_Instance = nullptr;
25 } // namespace
26
GetInstance()27 sptr<AccessibleAbilityClient> AccessibleAbilityClient::GetInstance()
28 {
29 HILOG_DEBUG();
30 std::lock_guard<ffrt::mutex> lock(g_Mutex);
31 bool isNull = AccessibilityAbilityUtHelper::GetInstance().GetAbilityClientNullFlag();
32 if (isNull) {
33 return nullptr;
34 }
35
36 if (g_Instance == nullptr) {
37 g_Instance = new(std::nothrow) AccessibleAbilityClientImpl();
38 }
39 return g_Instance;
40 }
41
GetAbilityClientImplement()42 sptr<AccessibleAbilityClientImpl> AccessibleAbilityClientImpl::GetAbilityClientImplement()
43 {
44 HILOG_DEBUG();
45 std::lock_guard<ffrt::mutex> lock(g_Mutex);
46 bool isNull = AccessibilityAbilityUtHelper::GetInstance().GetAbilityClientNullFlag();
47 if (isNull) {
48 return nullptr;
49 }
50
51 if (g_Instance == nullptr) {
52 g_Instance = new(std::nothrow) AccessibleAbilityClientImpl();
53 }
54 return g_Instance;
55 }
56
AccessibleAbilityClientImpl()57 AccessibleAbilityClientImpl::AccessibleAbilityClientImpl()
58 {
59 }
60
~AccessibleAbilityClientImpl()61 AccessibleAbilityClientImpl::~AccessibleAbilityClientImpl()
62 {
63 }
64
GetRemoteObject()65 sptr<IRemoteObject> AccessibleAbilityClientImpl::GetRemoteObject()
66 {
67 HILOG_DEBUG();
68 return nullptr;
69 }
70
RegisterAbilityListener(const std::shared_ptr<AccessibleAbilityListener> & listener)71 RetError AccessibleAbilityClientImpl::RegisterAbilityListener(
72 const std::shared_ptr<AccessibleAbilityListener> &listener)
73 {
74 HILOG_DEBUG();
75 (void)listener;
76 return RET_OK;
77 }
78
Init(const sptr<IAccessibleAbilityChannel> & channel,const int32_t channelId)79 void AccessibleAbilityClientImpl::Init(const sptr<IAccessibleAbilityChannel> &channel, const int32_t channelId)
80 {
81 }
82
Disconnect(const int32_t channelId)83 void AccessibleAbilityClientImpl::Disconnect(const int32_t channelId)
84 {
85 }
86
OnAccessibilityEvent(const AccessibilityEventInfo & eventInfo)87 void AccessibleAbilityClientImpl::OnAccessibilityEvent(const AccessibilityEventInfo &eventInfo)
88 {
89 }
90
OnKeyPressEvent(const MMI::KeyEvent & keyEvent,const int32_t sequence)91 void AccessibleAbilityClientImpl::OnKeyPressEvent(const MMI::KeyEvent &keyEvent, const int32_t sequence)
92 {
93 }
94
GetFocus(const int32_t focusType,AccessibilityElementInfo & elementInfo)95 RetError AccessibleAbilityClientImpl::GetFocus(const int32_t focusType, AccessibilityElementInfo &elementInfo)
96 {
97 HILOG_DEBUG();
98 (void)focusType;
99 (void)elementInfo;
100 return RET_OK;
101 }
102
GetFocusByElementInfo(const AccessibilityElementInfo & sourceInfo,const int32_t focusType,AccessibilityElementInfo & elementInfo)103 RetError AccessibleAbilityClientImpl::GetFocusByElementInfo(const AccessibilityElementInfo &sourceInfo,
104 const int32_t focusType, AccessibilityElementInfo &elementInfo)
105 {
106 HILOG_DEBUG();
107 (void)sourceInfo;
108 (void)focusType;
109 (void)elementInfo;
110 return RET_OK;
111 }
112
InjectGesture(const std::shared_ptr<AccessibilityGestureInjectPath> & gesturePath)113 RetError AccessibleAbilityClientImpl::InjectGesture(const std::shared_ptr<AccessibilityGestureInjectPath> &gesturePath)
114 {
115 HILOG_DEBUG();
116 (void)gesturePath;
117 return RET_OK;
118 }
119
GetRoot(AccessibilityElementInfo & elementInfo)120 RetError AccessibleAbilityClientImpl::GetRoot(AccessibilityElementInfo &elementInfo)
121 {
122 HILOG_DEBUG();
123 (void)elementInfo;
124 return RET_OK;
125 }
126
GetRootByWindow(const AccessibilityWindowInfo & windowInfo,AccessibilityElementInfo & elementInfo)127 RetError AccessibleAbilityClientImpl::GetRootByWindow(const AccessibilityWindowInfo &windowInfo,
128 AccessibilityElementInfo &elementInfo)
129 {
130 HILOG_DEBUG();
131 (void)windowInfo;
132 (void)elementInfo;
133 return RET_OK;
134 }
135
GetWindow(const int32_t windowId,AccessibilityWindowInfo & windowInfo)136 RetError AccessibleAbilityClientImpl::GetWindow(const int32_t windowId, AccessibilityWindowInfo &windowInfo)
137 {
138 HILOG_DEBUG();
139 (void)windowId;
140 (void)windowInfo;
141 return RET_OK;
142 }
143
GetWindows(std::vector<AccessibilityWindowInfo> & windows)144 RetError AccessibleAbilityClientImpl::GetWindows(std::vector<AccessibilityWindowInfo> &windows)
145 {
146 HILOG_DEBUG();
147 (void)windows;
148 return RET_OK;
149 }
150
GetWindows(const uint64_t displayId,std::vector<AccessibilityWindowInfo> & windows)151 RetError AccessibleAbilityClientImpl::GetWindows(const uint64_t displayId,
152 std::vector<AccessibilityWindowInfo> &windows)
153 {
154 HILOG_DEBUG();
155 (void)displayId;
156 (void)windows;
157 return RET_OK;
158 }
159
GetNext(const AccessibilityElementInfo & elementInfo,const FocusMoveDirection direction,AccessibilityElementInfo & nextElementInfo)160 RetError AccessibleAbilityClientImpl::GetNext(const AccessibilityElementInfo &elementInfo,
161 const FocusMoveDirection direction, AccessibilityElementInfo &nextElementInfo)
162 {
163 HILOG_DEBUG();
164 (void)elementInfo;
165 (void)direction;
166 (void)nextElementInfo;
167 return RET_OK;
168 }
169
GetChildElementInfo(const int32_t index,const AccessibilityElementInfo & parent,AccessibilityElementInfo & child)170 RetError AccessibleAbilityClientImpl::GetChildElementInfo(const int32_t index, const AccessibilityElementInfo &parent,
171 AccessibilityElementInfo &child)
172 {
173 HILOG_DEBUG();
174 (void)index;
175 (void)parent;
176 (void)child;
177 return RET_OK;
178 }
179
GetChildren(const AccessibilityElementInfo & parent,std::vector<AccessibilityElementInfo> & children)180 RetError AccessibleAbilityClientImpl::GetChildren(const AccessibilityElementInfo &parent,
181 std::vector<AccessibilityElementInfo> &children)
182 {
183 HILOG_DEBUG();
184 (void)parent;
185 (void)children;
186 return RET_OK;
187 }
188
GetByContent(const AccessibilityElementInfo & elementInfo,const std::string & text,std::vector<AccessibilityElementInfo> & elementInfos)189 RetError AccessibleAbilityClientImpl::GetByContent(const AccessibilityElementInfo &elementInfo,
190 const std::string &text, std::vector<AccessibilityElementInfo> &elementInfos)
191 {
192 HILOG_DEBUG();
193 (void)elementInfo;
194 (void)text;
195 (void)elementInfos;
196 return RET_OK;
197 }
198
GetSource(const AccessibilityEventInfo & eventInfo,AccessibilityElementInfo & elementInfo)199 RetError AccessibleAbilityClientImpl::GetSource(const AccessibilityEventInfo &eventInfo,
200 AccessibilityElementInfo &elementInfo)
201 {
202 HILOG_DEBUG();
203 (void)eventInfo;
204 (void)elementInfo;
205 return RET_OK;
206 }
207
GetParentElementInfo(const AccessibilityElementInfo & child,AccessibilityElementInfo & parent)208 RetError AccessibleAbilityClientImpl::GetParentElementInfo(const AccessibilityElementInfo &child,
209 AccessibilityElementInfo &parent)
210 {
211 HILOG_DEBUG();
212 (void)child;
213 (void)parent;
214 return RET_OK;
215 }
216
GetByElementId(const int64_t elementId,const int32_t windowId,AccessibilityElementInfo & targetElementInfo)217 RetError AccessibleAbilityClientImpl::GetByElementId(const int64_t elementId, const int32_t windowId,
218 AccessibilityElementInfo &targetElementInfo)
219 {
220 HILOG_DEBUG();
221 (void)elementId;
222 (void)windowId;
223 (void)targetElementInfo;
224 return RET_OK;
225 }
226
SearchElementInfoByInspectorKey(const std::string & inspectorKey,AccessibilityElementInfo & elementInfo)227 RetError AccessibleAbilityClientImpl::SearchElementInfoByInspectorKey(const std::string &inspectorKey,
228 AccessibilityElementInfo &elementInfo)
229 {
230 HILOG_DEBUG();
231 (void)inspectorKey;
232 (void)elementInfo;
233 return RET_OK;
234 }
235
ExecuteAction(const AccessibilityElementInfo & elementInfo,const ActionType action,const std::map<std::string,std::string> & actionArguments)236 RetError AccessibleAbilityClientImpl::ExecuteAction(const AccessibilityElementInfo &elementInfo,
237 const ActionType action, const std::map<std::string, std::string> &actionArguments)
238 {
239 HILOG_DEBUG();
240 (void)elementInfo;
241 (void)action;
242 (void)actionArguments;
243 return RET_OK;
244 }
245
EnableScreenCurtain(bool isEnable)246 RetError AccessibleAbilityClientImpl::EnableScreenCurtain(bool isEnable)
247 {
248 HILOG_DEBUG();
249 (void)isEnable;
250 return RET_OK;
251 }
252
GetCursorPosition(const AccessibilityElementInfo & elementInfo,int32_t & cursorPosition)253 RetError AccessibleAbilityClientImpl::GetCursorPosition(const AccessibilityElementInfo &elementInfo,
254 int32_t &cursorPosition)
255 {
256 HILOG_DEBUG();
257 (void)elementInfo;
258 (void)cursorPosition;
259 return RET_OK;
260 }
261
SetTargetBundleName(const std::vector<std::string> & targetBundleNames)262 RetError AccessibleAbilityClientImpl::SetTargetBundleName(const std::vector<std::string> &targetBundleNames)
263 {
264 HILOG_DEBUG();
265 (void)targetBundleNames;
266 return RET_OK;
267 }
268
SetCacheMode(const int32_t cacheMode)269 RetError AccessibleAbilityClientImpl::SetCacheMode(const int32_t cacheMode)
270 {
271 HILOG_DEBUG();
272 AccessibilityAbilityUtHelper::GetInstance().SetCacheMode(cacheMode);
273 return RET_OK;
274 }
275
Connect()276 RetError AccessibleAbilityClientImpl::Connect()
277 {
278 HILOG_DEBUG();
279 return RET_OK;
280 }
281
Disconnect()282 RetError AccessibleAbilityClientImpl::Disconnect()
283 {
284 HILOG_DEBUG();
285 return RET_OK;
286 }
287
SetConnectionState(bool state)288 void AccessibleAbilityClientImpl::SetConnectionState(bool state)
289 {
290 HILOG_DEBUG();
291 }
292
GetRootBatch(std::vector<AccessibilityElementInfo> & elementInfos)293 RetError AccessibleAbilityClientImpl::GetRootBatch(std::vector<AccessibilityElementInfo>& elementInfos)
294 {
295 HILOG_DEBUG();
296 return RET_OK;
297 }
298
GetRootByWindowBatch(const AccessibilityWindowInfo & windowInfo,std::vector<AccessibilityElementInfo> & elementInfos,bool isFilter)299 RetError AccessibleAbilityClientImpl::GetRootByWindowBatch(const AccessibilityWindowInfo &windowInfo,
300 std::vector<AccessibilityElementInfo>& elementInfos, bool isFilter)
301 {
302 HILOG_DEBUG();
303 return RET_OK;
304 }
305
SearchElementInfoByAccessibilityId(const int32_t windowId,const int64_t elementId,const uint32_t mode,AccessibilityElementInfo & info,bool isFilter)306 RetError AccessibleAbilityClientImpl::SearchElementInfoByAccessibilityId(const int32_t windowId,
307 const int64_t elementId, const uint32_t mode, AccessibilityElementInfo &info, bool isFilter)
308 {
309 HILOG_DEBUG();
310 return RET_OK;
311 }
312 } // namespace Accessibility
313 } // namespace OHOS