From: Artur Świgoń Date: Fri, 12 Jul 2024 10:19:44 +0000 (+0200) Subject: [Tizen][AT-SPI] Unify widget bus names X-Git-Tag: accepted/tizen/8.0/unified/20240802.160920^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fheads%2Ftizen_8.0;p=platform%2Fcore%2Fuifw%2Fwidget-viewer-dali.git [Tizen][AT-SPI] Unify widget bus names This enables cross-toolkit embedding (e.g. an EFL widget inside NUI app). Change-Id: I2cd8c95e51992fdeabebcdd58831571f13ec44a7 --- diff --git a/widget_viewer_dali/internal/widget_view/widget_view_impl.cpp b/widget_viewer_dali/internal/widget_view/widget_view_impl.cpp index 3a499db..fb0a253 100644 --- a/widget_viewer_dali/internal/widget_view/widget_view_impl.cpp +++ b/widget_viewer_dali/internal/widget_view/widget_view_impl.cpp @@ -383,6 +383,11 @@ const std::string& WidgetView::GetInstanceId() const return mInstanceId; } +int WidgetView::GetPid() const +{ + return mPid; +} + const std::string& WidgetView::GetContentInfo() { widget_instance_h instance; @@ -1989,12 +1994,12 @@ void WidgetView::WidgetViewAccessible::DoGetChildren(std::vectorEmbedSocket(GetAddress(), {busName, rootPath}); + auto self = Dali::WidgetView::WidgetView::DownCast(Self()); + auto& selfImpl = Dali::WidgetView::GetImplementation(self); + const auto& instanceId = selfImpl.GetInstanceId(); + int pid = selfImpl.GetPid(); + std::string busName = Bridge::MakeBusNameForWidget(instanceId, pid); + auto address = Bridge::GetCurrentBridge()->EmbedSocket(GetAddress(), {std::move(busName), rootPath}); mRemoteChild.SetAddress(address); diff --git a/widget_viewer_dali/internal/widget_view/widget_view_impl.h b/widget_viewer_dali/internal/widget_view/widget_view_impl.h index 3369835..e4bdb62 100644 --- a/widget_viewer_dali/internal/widget_view/widget_view_impl.h +++ b/widget_viewer_dali/internal/widget_view/widget_view_impl.h @@ -168,6 +168,11 @@ public: // Internal API */ const std::string& GetInstanceId() const; + /** + * @brief Get the Process Id + */ + int GetPid() const; + /** * @brief Gets the ContentInfo */