From: Hosang Kim Date: Thu, 10 Apr 2025 06:10:12 +0000 (+0900) Subject: libaurum: Add clearCallback method to AccessibleWatcher interface X-Git-Tag: accepted/tizen/unified/20250509.120514~5 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=722f0f6e278015a28082fb0df6895aa3893f96b0;p=platform%2Fcore%2Fuifw%2Faurum.git libaurum: Add clearCallback method to AccessibleWatcher interface Change-Id: I969cfb8eb93bc368a165219a8b83f677dbce5ae8 --- diff --git a/libaurum/inc/Accessibility/AccessibleWatcher.h b/libaurum/inc/Accessibility/AccessibleWatcher.h index 9b8caf8..e8f4014 100644 --- a/libaurum/inc/Accessibility/AccessibleWatcher.h +++ b/libaurum/inc/Accessibility/AccessibleWatcher.h @@ -113,6 +113,14 @@ public: */ virtual bool registerCallback(const A11yEvent type, EventHandler cb, void *data) = 0; + /** + * @brief Clear atspi event callbacks. + * + * @return true if callback is unregistered, else false + * @since_tizen 10.0 + */ + virtual bool clearCallback() = 0; + /** * @brief Set AurumXML synchronization. * diff --git a/libaurum/inc/Impl/Accessibility/AtspiAccessibleWatcher.h b/libaurum/inc/Impl/Accessibility/AtspiAccessibleWatcher.h index 32f26c4..3e536e2 100644 --- a/libaurum/inc/Impl/Accessibility/AtspiAccessibleWatcher.h +++ b/libaurum/inc/Impl/Accessibility/AtspiAccessibleWatcher.h @@ -122,6 +122,11 @@ public: */ virtual bool registerCallback(const A11yEvent type, EventHandler cb, void *data) override; + /** + * @copydoc @AccessibleWatcher::clearCallback() + */ + virtual bool clearCallback() override; + /** * @copydoc @AccessibleWatcher::setXMLsync() */ diff --git a/libaurum/inc/Impl/Accessibility/MockAccessibleWatcher.h b/libaurum/inc/Impl/Accessibility/MockAccessibleWatcher.h index a80c348..83ff89a 100644 --- a/libaurum/inc/Impl/Accessibility/MockAccessibleWatcher.h +++ b/libaurum/inc/Impl/Accessibility/MockAccessibleWatcher.h @@ -57,6 +57,8 @@ public: virtual bool registerCallback(const A11yEvent type, EventHandler cb, void *data) override; + virtual bool clearCallback() override; + std::map, std::shared_ptr> getXMLDocMap(void); std::shared_ptr getXMLDoc(std::pair process); diff --git a/libaurum/inc/UiDevice.h b/libaurum/inc/UiDevice.h index 8610372..34555f2 100644 --- a/libaurum/inc/UiDevice.h +++ b/libaurum/inc/UiDevice.h @@ -354,7 +354,7 @@ public: bool executeAndWaitForEvents( const Runnable *cmd, const A11yEvent type, const int timeout, const std::string packageName, const int count) const; -/** + /** * @brief Register atspi event callback. * * @param[in] type @A11yEvent @@ -366,6 +366,14 @@ public: */ bool registerCallback(const A11yEvent type, EventHandler cb, void *data) const; + /** + * @brief Clear atspi event callbacks. + * + * @return true + * @return false + */ + bool clearCallback() const; + public: /** * @brief Gets UiDevice instance. diff --git a/libaurum/src/Impl/Accessibility/AtspiAccessibleWatcher.cc b/libaurum/src/Impl/Accessibility/AtspiAccessibleWatcher.cc index 72b5499..e800e60 100644 --- a/libaurum/src/Impl/Accessibility/AtspiAccessibleWatcher.cc +++ b/libaurum/src/Impl/Accessibility/AtspiAccessibleWatcher.cc @@ -615,6 +615,12 @@ bool AtspiAccessibleWatcher::registerCallback(const A11yEvent type, EventHandler return true; } +bool AtspiAccessibleWatcher::clearCallback() +{ + mHandlers.clear(); + return true; +} + void AtspiAccessibleWatcher::setXMLsync(bool sync) { LOGI("setXMLSync: %s", (sync ? "TRUE" : "FALSE")); diff --git a/libaurum/src/Impl/Accessibility/MockAccessibleWatcher.cc b/libaurum/src/Impl/Accessibility/MockAccessibleWatcher.cc index 57e9491..217791d 100644 --- a/libaurum/src/Impl/Accessibility/MockAccessibleWatcher.cc +++ b/libaurum/src/Impl/Accessibility/MockAccessibleWatcher.cc @@ -48,6 +48,11 @@ bool MockAccessibleWatcher::registerCallback(const A11yEvent type, EventHandler return true; } +bool MockAccessibleWatcher::clearCallback() +{ + return true; +} + void MockAccessibleWatcher::setXMLsync(bool sync) { } diff --git a/libaurum/src/UiDevice.cc b/libaurum/src/UiDevice.cc index c55aa37..0873948 100644 --- a/libaurum/src/UiDevice.cc +++ b/libaurum/src/UiDevice.cc @@ -440,6 +440,11 @@ bool UiDevice::registerCallback(const A11yEvent type, EventHandler cb, void *dat return AccessibleWatcher::getInstance()->registerCallback(type, cb, data); } +bool UiDevice::clearCallback() const +{ + return AccessibleWatcher::getInstance()->clearCallback(); +} + int UiDevice::getWindowAngle() { auto wins = getWindowRoot();