2 * Copyright (c) 2021 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
18 #include <dali/devel-api/adaptor-framework/accessibility-impl.h>
19 #include <dali/devel-api/adaptor-framework/accessibility.h>
25 struct DummyBridge : Dali::Accessibility::Bridge
27 const std::string& GetBusName() const override
29 static const std::string name = "";
33 void AddTopLevelWindow(Accessibility::Accessible*) override
37 void RemoveTopLevelWindow(Accessibility::Accessible*) override
41 void AddPopup(Accessibility::Accessible*) override
45 void RemovePopup(Accessibility::Accessible*) override
49 void SetApplicationName(std::string) override
53 Accessibility::Accessible* GetApplication() const override
58 Accessibility::Accessible* FindByPath(const std::string& s) const override
63 void ApplicationShown() override
67 void ApplicationHidden() override
71 void Initialize() override
75 void Terminate() override
79 ForceUpResult ForceUp() override
81 return ForceUpResult::JUST_STARTED;
84 void ForceDown() override
88 void EmitCaretMoved(Accessibility::Accessible* obj, unsigned int cursorPosition) override
92 void EmitActiveDescendantChanged(Accessibility::Accessible* obj, Accessibility::Accessible* child) override
96 void EmitTextChanged(Accessibility::Accessible* obj, Accessibility::TextChangedState state, unsigned int position, unsigned int length, const std::string& content) override
100 void EmitStateChanged(Accessibility::Accessible* obj, Accessibility::State state, int val1, int val2) override
104 void Emit(Accessibility::Accessible* obj, Accessibility::WindowEvent we, unsigned int detail1) override
108 void Emit(Accessibility::Accessible* obj, Accessibility::ObjectPropertyChangeEvent event) override
112 void EmitBoundsChanged(Accessibility::Accessible* obj, Rect<> rect) override
116 Accessibility::Consumed Emit(Accessibility::KeyEventType type, unsigned int keyCode, const std::string& keyName, unsigned int timeStamp, bool isText) override
118 return Accessibility::Consumed::YES;
121 void Say(const std::string& text, bool discardable, std::function<void(std::string)> callback) override
125 void Pause() override
129 void Resume() override
133 bool GetScreenReaderEnabled() override
138 bool GetIsEnabled() override
144 DummyBridge dummyBridge;
148 Accessibility::Accessible::Accessible()
152 Accessibility::Accessible::~Accessible()
156 std::vector<Accessibility::Accessible*> Accessibility::Accessible::GetChildren()
161 Accessibility::Accessible* Accessibility::Accessible::GetDefaultLabel()
166 Accessibility::Address Accessibility::Accessible::GetAddress()
171 std::shared_ptr<Accessibility::Bridge::Data> Accessibility::Accessible::GetBridgeData()
176 bool Accessibility::Accessible::IsProxy()
181 bool Accessibility::Component::IsScrollable()
186 bool Accessibility::Component::Contains(Point p, CoordType ctype)
191 Accessibility::Accessible* Accessibility::Component::GetAccessibleAtPoint(Accessibility::Point p, Accessibility::CoordType ctype)
196 Accessibility::Bridge* Accessibility::Bridge::GetCurrentBridge()
201 void Accessibility::Accessible::EmitStateChanged(Accessibility::State state, int newValue1, int newValue2)
205 void Accessibility::Accessible::Emit(Accessibility::ObjectPropertyChangeEvent event)
209 void Accessibility::Accessible::EmitHighlighted(bool set)
213 void Accessibility::Accessible::EmitBoundsChanged(Rect<> rect)
217 void Accessibility::Accessible::EmitShowing(bool showing)
221 void Accessibility::Accessible::EmitFocused(bool set)
225 void Accessibility::Accessible::EmitVisible(bool visible)
229 void Accessibility::Accessible::EmitTextInserted(unsigned int position, unsigned int length, const std::string& content)
233 void Accessibility::Accessible::EmitTextDeleted(unsigned int position, unsigned int length, const std::string& content)
237 void Accessibility::Accessible::EmitTextCaretMoved(unsigned int cursorPosition)
241 void Accessibility::Accessible::EmitActiveDescendantChanged(Accessibility::Accessible* obj, Accessibility::Accessible* child)
245 void Accessibility::Accessible::FindWordSeparationsUtf8(const utf8_t* s, size_t length, const char* language, char* breaks)
249 void Accessibility::Accessible::FindLineSeparationsUtf8(const utf8_t* s, size_t length, const char* language, char* breaks)
253 void Accessibility::Accessible::NotifyAccessibilityStateChange(Accessibility::States states, bool doRecursive)