First integration of new HMI design
[staging/HomeScreen.git] / HomeScreen / src / layouthandler.h
index c9ca1bf..9ca0a9f 100644 (file)
@@ -12,23 +12,39 @@ public:
     explicit LayoutHandler(QObject *parent = 0);
     ~LayoutHandler();
 
-    void setUpLayouts();
-
 signals:
 
 public slots:
+    void showAppLayer();
+    void hideAppLayer();
     void makeMeVisible(int pid);
-    void toggleFullscreen();
+private:
+    void checkToDoQueue();
+public slots:
+    QList<int> requestGetAllSurfacesOfProcess(int pid);
+    int requestGetSurfaceStatus(int surfaceId);
+    void requestRenderSurfaceToArea(int surfaceId, int layoutArea);
+    bool requestRenderSurfaceToAreaAllowed(int surfaceId, int layoutArea);
+    void requestSurfaceIdToFullScreen(int surfaceId);
     void setLayoutByName(QString layoutName);
 
+    // this will receive the surfaceVisibilityChanged signal of the windowmanager
+    void requestSurfaceVisibilityChanged(int surfaceId, bool visible);
+
+Q_SIGNALS: // SIGNALS
+    void surfaceVisibilityChanged(int surfaceId, bool visible);
+
+protected:
+    void timerEvent(QTimerEvent *e);
 private:
+    int m_secondsTimerId;
     org::agl::windowmanager *mp_dBusWindowManagerProxy;
     org::agl::popup *mp_dBusPopupProxy;
 
-    QList<int> m_visibleApps;
-    QList<int> m_invisibleApps;
-    QList<int> m_requestsToBeVisibleApps;
-
+    QList<int> m_requestsToBeVisiblePids;
+    QList<int> m_visibleSurfaces;
+    QList<int> m_invisibleSurfaces;
+    QList<int> m_requestsToBeVisibleSurfaces;
 };
 
 #endif // LAYOUTHANDLER_H