implement tizen_policy_set_transient_for 02/242102/1
authorDoyoun Kang <doyoun.kang@samsung.com>
Sat, 22 Aug 2020 08:12:09 +0000 (17:12 +0900)
committerSung-Jin Park <sj76.park@samsung.com>
Mon, 24 Aug 2020 06:33:09 +0000 (15:33 +0900)
Change-Id: I072c7aad76e60f95da68680c4ec40fd871af38d8

src/DSWaylandServer/DSWaylandTizenPolicy.cpp

index 2a28cb5..2ccef52 100644 (file)
@@ -185,7 +185,16 @@ void DSWaylandTizenPolicyPrivate::tizen_policy_set_notification_level(Resource *
 
 void DSWaylandTizenPolicyPrivate::tizen_policy_set_transient_for(Resource *resource, uint32_t child_id, uint32_t parent_id)
 {
-       DSLOG_DBG("TizenPolicyPriv", "");
+       DSLOG_DBG("TizenPolicyPriv", "Set Transient_for (parent_id:%d, child_id:%d)", parent_id, child_id);
+       DS_GET_PUB(DSWaylandTizenPolicy);
+       DSWaylandCompositor *wlComp = pub->getWlCompositor();
+       if (!wlComp) return;
+       if (!__wm) return;
+
+       DSWaylandSurface *childSurface = wlComp->getSurface(child_id);
+       DSWaylandSurface *parentSurface = wlComp->getSurface(parent_id);
+
+       __wm->setWindowParent(childSurface, parentSurface);
 }
 
 void DSWaylandTizenPolicyPrivate::tizen_policy_unset_transient_for(Resource *resource, uint32_t child_id)