[ATSPI] Add more descriptions to Bridge objects
[platform/core/uifw/dali-adaptor.git] / dali / internal / accessibility / bridge / bridge-text.cpp
index 8bcd277..1ba0073 100644 (file)
@@ -25,26 +25,32 @@ using namespace Dali::Accessibility;
 
 void BridgeText::RegisterInterfaces()
 {
+  // The second arguments below are the names (or signatures) of DBus methods.
+  // Screen Reader will call the methods with the exact names as specified in the AT-SPI Text interface:
+  // https://gitlab.gnome.org/GNOME/at-spi2-core/-/blob/master/xml/Text.xml
+
   DBus::DBusInterfaceDescription desc{AtspiDbusInterfaceText};
   AddFunctionToInterface(desc, "GetText", &BridgeText::GetText);
   AddGetPropertyToInterface(desc, "CharacterCount", &BridgeText::GetCharacterCount);
-  AddGetPropertyToInterface(desc, "CaretOffset", &BridgeText::GetCaretOffset);
-  AddFunctionToInterface(desc, "SetCaretOffset", &BridgeText::SetCaretOffset);
+  AddGetPropertyToInterface(desc, "CaretOffset", &BridgeText::GetCursorOffset);
+  AddFunctionToInterface(desc, "SetCaretOffset", &BridgeText::SetCursorOffset);
   AddFunctionToInterface(desc, "GetTextAtOffset", &BridgeText::GetTextAtOffset);
-  AddFunctionToInterface(desc, "GetSelection", &BridgeText::GetSelection);
-  AddFunctionToInterface(desc, "SetSelection", &BridgeText::SetSelection);
+  AddFunctionToInterface(desc, "GetSelection", &BridgeText::GetRangeOfSelection);
+  AddFunctionToInterface(desc, "SetSelection", &BridgeText::SetRangeOfSelection);
   AddFunctionToInterface(desc, "RemoveSelection", &BridgeText::RemoveSelection);
-  dbusServer.addInterface("/", desc, true);
+  mDbusServer.addInterface("/", desc, true);
 }
 
 Text* BridgeText::FindSelf() const
 {
-  auto s = BridgeBase::FindSelf();
-  assert(s);
-  auto s2 = dynamic_cast<Text*>(s);
-  if(!s2)
-    throw std::domain_error{"object " + s->GetAddress().ToString() + " doesn't have Text interface"};
-  return s2;
+  auto self = BridgeBase::FindSelf();
+  assert(self);
+  auto textInterface = dynamic_cast<Text*>(self);
+  if(!textInterface)
+  {
+    throw std::domain_error{"Object " + self->GetAddress().ToString() + " doesn't have Text interface"};
+  }
+  return textInterface;
 }
 
 DBus::ValueOrError<std::string> BridgeText::GetText(int startOffset, int endOffset)
@@ -57,34 +63,34 @@ DBus::ValueOrError<int32_t> BridgeText::GetCharacterCount()
   return FindSelf()->GetCharacterCount();
 }
 
-DBus::ValueOrError<int32_t> BridgeText::GetCaretOffset()
+DBus::ValueOrError<int32_t> BridgeText::GetCursorOffset()
 {
-  return FindSelf()->GetCaretOffset();
+  return FindSelf()->GetCursorOffset();
 }
 
-DBus::ValueOrError<bool> BridgeText::SetCaretOffset(int32_t offset)
+DBus::ValueOrError<bool> BridgeText::SetCursorOffset(int32_t offset)
 {
-  return FindSelf()->SetCaretOffset(offset);
+  return FindSelf()->SetCursorOffset(offset);
 }
 
 DBus::ValueOrError<std::string, int, int> BridgeText::GetTextAtOffset(int32_t offset, uint32_t boundary)
 {
-  auto r = FindSelf()->GetTextAtOffset(offset, static_cast<TextBoundary>(boundary));
-  return {r.content, static_cast<int>(r.startOffset), static_cast<int>(r.endOffset)};
+  auto range = FindSelf()->GetTextAtOffset(offset, static_cast<TextBoundary>(boundary));
+  return {range.content, static_cast<int>(range.startOffset), static_cast<int>(range.endOffset)};
 }
 
-DBus::ValueOrError<int, int> BridgeText::GetSelection(int32_t selectionNum)
+DBus::ValueOrError<int, int> BridgeText::GetRangeOfSelection(int32_t selectionIndex)
 {
-  auto r = FindSelf()->GetSelection(selectionNum);
-  return {static_cast<int>(r.startOffset), static_cast<int>(r.endOffset)};
+  auto range = FindSelf()->GetRangeOfSelection(selectionIndex);
+  return {static_cast<int>(range.startOffset), static_cast<int>(range.endOffset)};
 }
 
-DBus::ValueOrError<bool> BridgeText::RemoveSelection(int32_t selectionNum)
+DBus::ValueOrError<bool> BridgeText::RemoveSelection(int32_t selectionIndex)
 {
-  return FindSelf()->RemoveSelection(selectionNum);
+  return FindSelf()->RemoveSelection(selectionIndex);
 }
 
-DBus::ValueOrError<bool> BridgeText::SetSelection(int32_t selectionNum, int32_t startOffset, int32_t endOffset)
+DBus::ValueOrError<bool> BridgeText::SetRangeOfSelection(int32_t selectionIndex, int32_t startOffset, int32_t endOffset)
 {
-  return FindSelf()->SetSelection(selectionNum, startOffset, endOffset);
+  return FindSelf()->SetRangeOfSelection(selectionIndex, startOffset, endOffset);
 }