X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali%2Finternal%2Faccessibility%2Fbridge%2Fbridge-impl.cpp;h=0ee2aaa8942ea5a0577050b905d3ecd18ec2899b;hb=ddd6daf5d30b5b8efb8523fd510f8d4e6fbdd3db;hp=de479b117935b378a296e39b6f75a2a20f8fadc4;hpb=6aac67a40cd087cacb13b7df4ddb712d3e3287ef;p=platform%2Fcore%2Fuifw%2Fdali-adaptor.git diff --git a/dali/internal/accessibility/bridge/bridge-impl.cpp b/dali/internal/accessibility/bridge/bridge-impl.cpp index de479b1..0ee2aaa 100644 --- a/dali/internal/accessibility/bridge/bridge-impl.cpp +++ b/dali/internal/accessibility/bridge/bridge-impl.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022 Samsung Electronics Co., Ltd. + * Copyright (c) 2024 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,8 +39,8 @@ #include #include #include -#include #include +#include #include #include #include @@ -361,6 +361,21 @@ public: } /** + * @brief Sends a signal to dbus that the window is created. + * + * @param[in] window The window to be created + * @see BridgeObject::Emit() + */ + void EmitCreated(Dali::Window window) + { + auto windowAccessible = mApplication.GetWindowAccessible(window); + if(windowAccessible) + { + windowAccessible->Emit(WindowEvent::CREATE, 0); + } + } + + /** * @brief Sends a signal to dbus that the window is shown. * * @param[in] window The window to be shown @@ -467,6 +482,17 @@ public: } /** + * @copydoc Dali::Accessibility::Bridge::WindowCreated() + */ + void WindowCreated(Dali::Window window) override + { + if(IsUp()) + { + EmitCreated(window); + } + } + + /** * @copydoc Dali::Accessibility::Bridge::WindowShown() */ void WindowShown(Dali::Window window) override @@ -743,7 +769,11 @@ public: if(NULL == mIdleCallback) { mIdleCallback = MakeCallback(this, &BridgeImpl::OnIdleSignal); - adaptor.AddIdle(mIdleCallback, true); + if(DALI_UNLIKELY(!adaptor.AddIdle(mIdleCallback, true))) + { + DALI_LOG_ERROR("Fail to add idle callback for bridge initialize. Call it synchronously.\n"); + OnIdleSignal(); + } } } }