#include <dali/devel-api/common/stage.h>
#include <cstdlib>
-#include <automated-tests/src/dali-toolkit-internal/dali-toolkit-test-utils/dbus-wrapper.h>
-
using namespace Dali::Toolkit;
void utc_dali_accessibility_controls_bridge_up_startup(void)
DALI_TEST_CHECK(children.empty());
+ // Enables accessibility
Dali::Accessibility::TestEnableSC(true);
+ // Assuming the webengine lazy sets accessibility address on LoadUrl
children = webViewAccessible->GetChildren();
+ DALI_TEST_CHECK(children.empty());
+ // our test webengine sets accessibility address here
+ webView.LoadUrl("http://www.somewhere.valid1.com");
+
+ children = webViewAccessible->GetChildren();
DALI_TEST_EQUALS(children.size(), 1u, TEST_LOCATION);
auto* child = children[0];
void LoadUrl(const std::string& url)
{
mUrl = url;
+ SetAccessibilityAddress();
ConnectToGlobalSignal(&OnLoadUrl);
}
Dali::Accessibility::Address GetAccessibilityAddress()
{
- return {":9.99", "root"};
+ return mAccessibilityAddress;
+ }
+
+ void SetAccessibilityAddress()
+ {
+ mAccessibilityAddress = {":9.99", "root"};
}
Dali::PixelData GetScreenshot(Dali::Rect<int32_t> viewArea, float scaleFactor)
Dali::Vector2 mContentSize;
WebEngineBackForwardList* mockWebEngineBackForwardList;
WebEngineSettings* mockWebEngineSettings;
+ Dali::Accessibility::Address mAccessibilityAddress{};
std::vector<Dali::WebEnginePlugin::JavaScriptMessageHandlerCallback> mResultCallbacks;
#include <dali/devel-api/common/stage.h>
#include <dali/devel-api/scripting/enum-helper.h>
#include <dali/devel-api/scripting/scripting.h>
+#include <dali/integration-api/debug.h>
#include <dali/public-api/adaptor-framework/native-image-source.h>
#include <dali/public-api/object/type-registry-helper.h>
#include <dali/public-api/object/type-registry.h>
void WebView::WebViewAccessible::DoGetChildren(std::vector<Dali::Accessibility::Accessible*>& children)
{
+ if(Dali::Accessibility::IsUp() && !mRemoteChild.GetAddress())
+ {
+ DALI_LOG_DEBUG_INFO("Try setting address as it has not not been set on initialize.\n");
+ SetRemoteChildAddress(mWebEngine.GetAccessibilityAddress());
+ }
+
if(mRemoteChild.GetAddress())
{
// DoGetChildren is called at most once per every OnChildrenChanged.