aboutsummaryrefslogtreecommitdiffstats
path: root/WindowManager
diff options
context:
space:
mode:
authorBocklage, Jens <Jens_Bocklage@mentor.com>2016-10-26 15:53:34 +0200
committerBocklage, Jens <Jens_Bocklage@mentor.com>2016-10-26 15:53:34 +0200
commitd19555c038f6f1f89f08f12c88908d84b32b1bbf (patch)
tree548d19680235aa91bc7a4948d78553e8f4a5c27b /WindowManager
parent4e34fd88f65f8c1cd094ed24bd62d2c7f5418080 (diff)
Implement toggle full screen mechanism.
Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
Diffstat (limited to 'WindowManager')
-rw-r--r--WindowManager/src/windowmanager.cpp25
-rw-r--r--WindowManager/src/windowmanager.hpp6
2 files changed, 28 insertions, 3 deletions
diff --git a/WindowManager/src/windowmanager.cpp b/WindowManager/src/windowmanager.cpp
index dea17a1..ce59fa0 100644
--- a/WindowManager/src/windowmanager.cpp
+++ b/WindowManager/src/windowmanager.cpp
@@ -29,6 +29,8 @@ WindowManager::WindowManager(QObject *parent) :
QObject(parent),
m_layouts(),
m_layoutNames(),
+ m_layoutFullScreen(),
+ m_layoutFullScreenAssociated(),
m_currentLayout(-1),
m_homeScreenPid(-1),
#ifdef __arm__
@@ -369,18 +371,31 @@ void WindowManager::surfaceCallbackFunction_static(t_ilm_surface surface,
}
#endif
-int WindowManager::addLayout(int layoutId, const QString &layoutName, const QList<SimpleRect> &surfaceAreas)
+int WindowManager::addLayout(int layoutId, const QString &layoutName, bool isFullScreen, int associatedFullScreenLayout, const QList<SimpleRect> &surfaceAreas)
{
qDebug("-=[addLayout]=-");
m_layouts.insert(layoutId, surfaceAreas);
m_layoutNames.insert(layoutId, layoutName);
- qDebug("addLayout %d %s, size %d", layoutId, layoutName.toStdString().c_str(), surfaceAreas.size());
+ m_layoutFullScreen.insert(layoutId, isFullScreen);
+ m_layoutFullScreenAssociated.insert(layoutId, associatedFullScreenLayout);
+ qDebug("addLayout %d %s %s, %d, size %d",
+ layoutId,
+ layoutName.toStdString().c_str(),
+ isFullScreen ? "true" : "false",
+ associatedFullScreenLayout,
+ surfaceAreas.size());
dumpScene();
return true;
}
+int WindowManager::getAssociatedFullScreenLayout(int layoutId)
+{
+ qDebug("-=[getAssociatedFullScreenLayout]=-");
+ return m_layoutFullScreenAssociated.find(layoutId).value();
+}
+
QList<int> WindowManager::getAvailableLayouts(int numberOfAppSurfaces)
{
qDebug("-=[getAvailableLayouts]=-");
@@ -431,6 +446,12 @@ QString WindowManager::getLayoutName(int layoutId)
return m_layoutNames.find(layoutId).value();
}
+bool WindowManager::isLayoutFullScreen(int layoutId)
+{
+ qDebug("-=[isLayoutFullScreen]=-");
+ return m_layoutFullScreen.find(layoutId).value();
+}
+
void WindowManager::setLayoutById(int layoutId)
{
qDebug("-=[setLayoutById]=-");
diff --git a/WindowManager/src/windowmanager.hpp b/WindowManager/src/windowmanager.hpp
index 2a76a32..ef19f4e 100644
--- a/WindowManager/src/windowmanager.hpp
+++ b/WindowManager/src/windowmanager.hpp
@@ -49,6 +49,8 @@ private:
WindowmanagerAdaptor *mp_windowManagerAdaptor;
QMap<int, QList<SimpleRect> > m_layouts;
QMap<int, QString> m_layoutNames;
+ QMap<int, bool> m_layoutFullScreen;
+ QMap<int, int> m_layoutFullScreenAssociated;
int m_currentLayout;
void dumpScene();
int m_homeScreenPid;
@@ -95,11 +97,13 @@ public slots:
// from windowmanager_adapter.h
public Q_SLOTS: // METHODS
- int addLayout(int layoutId, const QString &layoutName, const QList<SimpleRect> &surfaceAreas);
+ int addLayout(int layoutId, const QString &layoutName, bool isFullScreen, int associatedFullScreenLayout, const QList<SimpleRect> &surfaceAreas);
+ int getAssociatedFullScreenLayout(int layoutId);
QList<int> getAvailableLayouts(int numberOfAppSurfaces);
QList<SimplePoint> getAvailableSurfaces();
int getLayout();
QString getLayoutName(int layoutId);
+ bool isLayoutFullScreen(int layoutId);
void setLayoutById(int layoutId);
void setLayoutByName(const QString &layoutName);
void setPidToLayoutArea(int pid, int layoutAreaId);