DSWindowManager: add APIs for handling window's aux hint 17/242317/1
authorDoyoun Kang <doyoun.kang@samsung.com>
Mon, 24 Aug 2020 11:10:11 +0000 (20:10 +0900)
committerSung-Jin Park <sj76.park@samsung.com>
Tue, 25 Aug 2020 12:37:14 +0000 (21:37 +0900)
Change-Id: I0f80f64f0ce068a2a19693e3512c987bdd195858

src/DSWindowManager/DSWindowManager.cpp
src/DSWindowManager/DSWindowManager.h
src/DSWindowManager/DSWindowManagerPrivate.h

index 3fc3e44..1364b87 100644 (file)
@@ -269,6 +269,46 @@ void DSWindowManagerPrivate::setWindowPosition(DSWaylandSurface *dsSurface, int
        }
 }
 
+void DSWindowManagerPrivate::addWindowAuxHint(DSWaylandSurface *dswlSurface, int32_t id, const std::string &name, const std::string &value)
+{
+       // find dsSurface's window
+       DSZone *zone = __getZone(dswlSurface);
+       if (!zone) return;
+
+       zone->addWindowAuxHint(dswlSurface, id, name, value);
+}
+
+void DSWindowManagerPrivate::changeWindowAuxHint(DSWaylandSurface *dswlSurface, int32_t id, const std::string &value)
+{
+       // find dsSurface's window
+       DSZone *zone = __getZone(dswlSurface);
+       if (!zone) return;
+
+       zone->changeWindowAuxHint(dswlSurface, id, value);
+}
+
+void DSWindowManagerPrivate::removeWindowAuxHint(DSWaylandSurface *dswlSurface, int32_t id)
+{
+       // find dsSurface's window
+       DSZone *zone = __getZone(dswlSurface);
+       if (!zone) return;
+
+       zone->removeWindowAuxHint(dswlSurface, id);
+}
+
+std::list<std::string> DSWindowManagerPrivate::getWindowSupportedAuxHints(DSWaylandSurface *dswlSurface)
+{
+       // find dsSurface's window
+       DSZone *zone = __getZone(dswlSurface);
+       if (!zone)
+       {
+               std::list<std::string> nullList;
+               return nullList;
+       }
+
+       return zone->getWindowSupportedAuxHints(dswlSurface);
+}
+
 void DSWindowManagerPrivate::activateWindow(DSWaylandSurface *dswlSurface)
 {
        // find dswlSurface's window
@@ -462,6 +502,30 @@ void DSWindowManager::setWindowPosition(DSWaylandSurface *dsSurface, int x, int
        priv->setWindowPosition(dsSurface, x, y);
 }
 
+void DSWindowManager::addWindowAuxHint(DSWaylandSurface *dswlSurface, int32_t id, const std::string &name, const std::string &value)
+{
+       DS_GET_PRIV(DSWindowManager);
+       priv->addWindowAuxHint(dswlSurface, id, name, value);
+}
+
+void DSWindowManager::changeWindowAuxHint(DSWaylandSurface *dswlSurface, int32_t id, const std::string &value)
+{
+       DS_GET_PRIV(DSWindowManager);
+       priv->changeWindowAuxHint(dswlSurface, id, value);
+}
+
+void DSWindowManager::removeWindowAuxHint(DSWaylandSurface *dswlSurface, int32_t id)
+{
+       DS_GET_PRIV(DSWindowManager);
+       priv->removeWindowAuxHint(dswlSurface, id);
+}
+
+std::list<std::string> DSWindowManager::getWindowSupportedAuxHints(DSWaylandSurface *dswlSurface)
+{
+       DS_GET_PRIV(DSWindowManager);
+       return priv->getWindowSupportedAuxHints(dswlSurface);
+}
+
 void DSWindowManager::activateWindow(DSWaylandSurface *dswlSurface)
 {
        DS_GET_PRIV(DSWindowManager);
index c11a495..79d7893 100644 (file)
@@ -61,6 +61,11 @@ public:
        void setWindowGeometry(DSWaylandSurface *dsSurface, int x, int y, unsigned int w, unsigned h);
        void setWindowPosition(DSWaylandSurface *dsSurface, int x, int y);
 
+       void addWindowAuxHint(DSWaylandSurface *dswlSurface, int32_t id, const std::string &name, const std::string &value);
+       void changeWindowAuxHint(DSWaylandSurface *dswlSurface, int32_t id, const std::string &value);
+       void removeWindowAuxHint(DSWaylandSurface *dswlSurface, int32_t id);
+       std::list<std::string> getWindowSupportedAuxHints(DSWaylandSurface *dswlSurface);
+
        void activateWindow(DSWaylandSurface *dswlSurface);
        void raiseWindow(DSWaylandSurface *dswlSurface);
        void lowerWindow(DSWaylandSurface *dswlSurface);
index 28f6ec2..6b80037 100644 (file)
@@ -56,6 +56,11 @@ public:
        void setWindowGeometry(DSWaylandSurface *dsSurface, int x, int y, unsigned int w, unsigned h);
        void setWindowPosition(DSWaylandSurface *dsSurface, int x, int y);
 
+       void addWindowAuxHint(DSWaylandSurface *dswlSurface, int32_t id, const std::string &name, const std::string &value);
+       void changeWindowAuxHint(DSWaylandSurface *dswlSurface, int32_t id, const std::string &value);
+       void removeWindowAuxHint(DSWaylandSurface *dswlSurface, int32_t id);
+       std::list<std::string> getWindowSupportedAuxHints(DSWaylandSurface *dswlSurface);
+
        void activateWindow(DSWaylandSurface *dswlSurface);
        void raiseWindow(DSWaylandSurface *dswlSurface);
        void lowerWindow(DSWaylandSurface *dswlSurface);