1 /*
2 * Copyright (C) 2022 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_config.h"
17 #include "accessibility_config_impl.h"
18 #include "hilog_wrapper.h"
19
20 namespace OHOS {
21 namespace AccessibilityConfig {
22 #define CHECK_IMPL_PTR(ret_expr) \
23 if (!pImpl_) { \
24 HILOG_ERROR("pImpl_ is nullptr"); \
25 return ret_expr; \
26 }
27
ACCESSIBILITY_DEFINE_SINGLETON(AccessibilityConfig)28 ACCESSIBILITY_DEFINE_SINGLETON(AccessibilityConfig)
29
30 AccessibilityConfig::AccessibilityConfig() : pImpl_(std::make_unique<Impl>())
31 {
32 if (!pImpl_) {
33 HILOG_ERROR("Create AccessibilityConfigImpl Failed");
34 }
35 }
36
~AccessibilityConfig()37 AccessibilityConfig::~AccessibilityConfig()
38 {
39 }
40
InitializeContext()41 bool AccessibilityConfig::InitializeContext()
42 {
43 CHECK_IMPL_PTR(false)
44 return pImpl_->InitializeContext();
45 }
46
SubscribeConfigObserver(const CONFIG_ID id,const std::shared_ptr<AccessibilityConfigObserver> & observer,const bool retFlag)47 Accessibility::RetError AccessibilityConfig::SubscribeConfigObserver(const CONFIG_ID id,
48 const std::shared_ptr<AccessibilityConfigObserver> &observer, const bool retFlag)
49 {
50 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
51 return pImpl_->SubscribeConfigObserver(id, observer, retFlag);
52 }
53
UnsubscribeConfigObserver(const CONFIG_ID id,const std::shared_ptr<AccessibilityConfigObserver> & observer)54 Accessibility::RetError AccessibilityConfig::UnsubscribeConfigObserver(const CONFIG_ID id,
55 const std::shared_ptr<AccessibilityConfigObserver> &observer)
56 {
57 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
58 return pImpl_->UnsubscribeConfigObserver(id, observer);
59 }
60
SubscribeEnableAbilityListsObserver(const std::shared_ptr<AccessibilityEnableAbilityListsObserver> & observer)61 Accessibility::RetError AccessibilityConfig::SubscribeEnableAbilityListsObserver(
62 const std::shared_ptr<AccessibilityEnableAbilityListsObserver> &observer)
63 {
64 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
65 return pImpl_->SubscribeEnableAbilityListsObserver(observer);
66 }
67
UnsubscribeEnableAbilityListsObserver(const std::shared_ptr<AccessibilityEnableAbilityListsObserver> & observer)68 Accessibility::RetError AccessibilityConfig::UnsubscribeEnableAbilityListsObserver(
69 const std::shared_ptr<AccessibilityEnableAbilityListsObserver> &observer)
70 {
71 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
72 return pImpl_->UnsubscribeEnableAbilityListsObserver(observer);
73 }
74
EnableAbility(const std::string & name,const uint32_t capabilities)75 Accessibility::RetError AccessibilityConfig::EnableAbility(const std::string &name, const uint32_t capabilities)
76 {
77 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
78 return pImpl_->EnableAbility(name, capabilities);
79 }
80
DisableAbility(const std::string & name)81 Accessibility::RetError AccessibilityConfig::DisableAbility(const std::string &name)
82 {
83 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
84 return pImpl_->DisableAbility(name);
85 }
86
SetScreenMagnificationState(const bool state)87 Accessibility::RetError AccessibilityConfig::SetScreenMagnificationState(const bool state)
88 {
89 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
90 return pImpl_->SetScreenMagnificationState(state);
91 }
92
SetShortKeyState(const bool state)93 Accessibility::RetError AccessibilityConfig::SetShortKeyState(const bool state)
94 {
95 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
96 return pImpl_->SetShortKeyState(state);
97 }
98
SetMouseKeyState(const bool state)99 Accessibility::RetError AccessibilityConfig::SetMouseKeyState(const bool state)
100 {
101 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
102 return pImpl_->SetMouseKeyState(state);
103 }
104
SetCaptionsState(const bool state)105 Accessibility::RetError AccessibilityConfig::SetCaptionsState(const bool state)
106 {
107 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
108 return pImpl_->SetCaptionsState(state);
109 }
110
SetCaptionsProperty(const CaptionProperty & caption)111 Accessibility::RetError AccessibilityConfig::SetCaptionsProperty(const CaptionProperty &caption)
112 {
113 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
114 return pImpl_->SetCaptionsProperty(caption);
115 }
116
SetMouseAutoClick(const int32_t time)117 Accessibility::RetError AccessibilityConfig::SetMouseAutoClick(const int32_t time)
118 {
119 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
120 return pImpl_->SetMouseAutoClick(time);
121 }
122
SetShortkeyTarget(const std::string & name)123 Accessibility::RetError AccessibilityConfig::SetShortkeyTarget(const std::string &name)
124 {
125 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
126 return pImpl_->SetShortkeyTarget(name);
127 }
128
SetHighContrastTextState(bool state)129 Accessibility::RetError AccessibilityConfig::SetHighContrastTextState(bool state)
130 {
131 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
132 return pImpl_->SetHighContrastTextState(state);
133 }
134
SetInvertColorState(const bool state)135 Accessibility::RetError AccessibilityConfig::SetInvertColorState(const bool state)
136 {
137 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
138 return pImpl_->SetInvertColorState(state);
139 }
140
SetDaltonizationColorFilter(const DALTONIZATION_TYPE type)141 Accessibility::RetError AccessibilityConfig::SetDaltonizationColorFilter(const DALTONIZATION_TYPE type)
142 {
143 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
144 return pImpl_->SetDaltonizationColorFilter(type);
145 }
146
SetContentTimeout(const uint32_t timer)147 Accessibility::RetError AccessibilityConfig::SetContentTimeout(const uint32_t timer)
148 {
149 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
150 return pImpl_->SetContentTimeout(timer);
151 }
152
SetAnimationOffState(const bool state)153 Accessibility::RetError AccessibilityConfig::SetAnimationOffState(const bool state)
154 {
155 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
156 return pImpl_->SetAnimationOffState(state);
157 }
158
SetBrightnessDiscount(const float brightness)159 Accessibility::RetError AccessibilityConfig::SetBrightnessDiscount(const float brightness)
160 {
161 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
162 return pImpl_->SetBrightnessDiscount(brightness);
163 }
164
SetAudioMonoState(const bool state)165 Accessibility::RetError AccessibilityConfig::SetAudioMonoState(const bool state)
166 {
167 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
168 return pImpl_->SetAudioMonoState(state);
169 }
170
SetAudioBalance(const float balance)171 Accessibility::RetError AccessibilityConfig::SetAudioBalance(const float balance)
172 {
173 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
174 return pImpl_->SetAudioBalance(balance);
175 }
176
GetScreenMagnificationState(bool & state) const177 Accessibility::RetError AccessibilityConfig::GetScreenMagnificationState(bool &state) const
178 {
179 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
180 return pImpl_->GetScreenMagnificationState(state);
181 }
182
GetShortKeyState(bool & state) const183 Accessibility::RetError AccessibilityConfig::GetShortKeyState(bool &state) const
184 {
185 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
186 return pImpl_->GetShortKeyState(state);
187 }
188
GetMouseKeyState(bool & state) const189 Accessibility::RetError AccessibilityConfig::GetMouseKeyState(bool &state) const
190 {
191 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
192 return pImpl_->GetMouseKeyState(state);
193 }
194
GetCaptionsState(bool & state) const195 Accessibility::RetError AccessibilityConfig::GetCaptionsState(bool &state) const
196 {
197 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
198 return pImpl_->GetCaptionsState(state);
199 }
200
GetCaptionsProperty(CaptionProperty & caption) const201 Accessibility::RetError AccessibilityConfig::GetCaptionsProperty(CaptionProperty &caption) const
202 {
203 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
204 return pImpl_->GetCaptionsProperty(caption);
205 }
206
GetMouseAutoClick(int32_t & time) const207 Accessibility::RetError AccessibilityConfig::GetMouseAutoClick(int32_t &time) const
208 {
209 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
210 return pImpl_->GetMouseAutoClick(time);
211 }
212
GetShortkeyTarget(std::string & name) const213 Accessibility::RetError AccessibilityConfig::GetShortkeyTarget(std::string &name) const
214 {
215 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
216 return pImpl_->GetShortkeyTarget(name);
217 }
218
GetInvertColorState(bool & state) const219 Accessibility::RetError AccessibilityConfig::GetInvertColorState(bool &state) const
220 {
221 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
222 return pImpl_->GetInvertColorState(state);
223 }
224
GetHighContrastTextState(bool & state) const225 Accessibility::RetError AccessibilityConfig::GetHighContrastTextState(bool &state) const
226 {
227 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
228 return pImpl_->GetHighContrastTextState(state);
229 }
230
GetDaltonizationColorFilter(DALTONIZATION_TYPE & type) const231 Accessibility::RetError AccessibilityConfig::GetDaltonizationColorFilter(DALTONIZATION_TYPE &type) const
232 {
233 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
234 return pImpl_->GetDaltonizationColorFilter(type);
235 }
236
GetContentTimeout(uint32_t & timer) const237 Accessibility::RetError AccessibilityConfig::GetContentTimeout(uint32_t &timer) const
238 {
239 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
240 return pImpl_->GetContentTimeout(timer);
241 }
242
GetAnimationOffState(bool & state) const243 Accessibility::RetError AccessibilityConfig::GetAnimationOffState(bool &state) const
244 {
245 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
246 return pImpl_->GetAnimationOffState(state);
247 }
248
GetBrightnessDiscount(float & brightness) const249 Accessibility::RetError AccessibilityConfig::GetBrightnessDiscount(float &brightness) const
250 {
251 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
252 return pImpl_->GetBrightnessDiscount(brightness);
253 }
254
GetAudioMonoState(bool & state) const255 Accessibility::RetError AccessibilityConfig::GetAudioMonoState(bool &state) const
256 {
257 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
258 return pImpl_->GetAudioMonoState(state);
259 }
260
GetAudioBalance(float & balance) const261 Accessibility::RetError AccessibilityConfig::GetAudioBalance(float &balance) const
262 {
263 CHECK_IMPL_PTR(Accessibility::RET_ERR_NULLPTR)
264 return pImpl_->GetAudioBalance(balance);
265 }
266 } // Accessibility
267 } // OHOS