diff options
author | 2016-11-04 17:23:02 +0100 | |
---|---|---|
committer | 2016-11-04 17:23:02 +0100 | |
commit | bf0f33bec5ad705666dff6c821334524c1b81583 (patch) | |
tree | c9544663e1ca3bacbbd23113b227a77526f4b0fc /WindowManager | |
parent | ec688535558c31989e7da221b858328b2e0766c8 (diff) |
Fix for pid and surface handling.
Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
Diffstat (limited to 'WindowManager')
-rw-r--r-- | WindowManager/src/windowmanager.cpp | 18 | ||||
-rw-r--r-- | WindowManager/src/windowmanager.hpp | 1 |
2 files changed, 19 insertions, 0 deletions
diff --git a/WindowManager/src/windowmanager.cpp b/WindowManager/src/windowmanager.cpp index 765ae4f..ed38c49 100644 --- a/WindowManager/src/windowmanager.cpp +++ b/WindowManager/src/windowmanager.cpp @@ -420,6 +420,24 @@ QList<Layout> WindowManager::getAllLayouts() return m_layouts; } +QList<int> WindowManager::getAllSurfacesOfProcess(int pid) +{ + QList<int> result; +#ifdef __arm__ + struct ilmSurfaceProperties surfaceProperties; + + for (int i = 0; i < m_surfaces.size(); ++i) + { + ilm_getPropertiesOfSurface(m_surfaces.at(i), &surfaceProperties); + if (pid == surfaceProperties.creatorPid) + { + result.append(m_surfaces.at(i)); + } + } +#endif + return result; +} + QList<int> WindowManager::getAvailableLayouts(int numberOfAppSurfaces) { qDebug("-=[getAvailableLayouts]=-"); diff --git a/WindowManager/src/windowmanager.hpp b/WindowManager/src/windowmanager.hpp index fce5937..6c11760 100644 --- a/WindowManager/src/windowmanager.hpp +++ b/WindowManager/src/windowmanager.hpp @@ -93,6 +93,7 @@ public: // PROPERTIES public Q_SLOTS: // METHODS int addLayout(int layoutId, const QString &layoutName, const QList<LayoutArea> &surfaceAreas); QList<Layout> getAllLayouts(); + QList<int> getAllSurfacesOfProcess(int pid); QList<int> getAvailableLayouts(int numberOfAppSurfaces); QList<int> getAvailableSurfaces(); QString getLayoutName(int layoutId); |