summaryrefslogtreecommitdiffstats
path: root/kxkb/layoutmap.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'kxkb/layoutmap.cpp')
-rw-r--r--kxkb/layoutmap.cpp17
1 files changed, 13 insertions, 4 deletions
diff --git a/kxkb/layoutmap.cpp b/kxkb/layoutmap.cpp
index 106f70950..62b44da10 100644
--- a/kxkb/layoutmap.cpp
+++ b/kxkb/layoutmap.cpp
@@ -88,19 +88,28 @@ LayoutState& LayoutMap::getNextLayout() {
layoutQueue.enqueue(layoutState);
kdDebug() << "map: Next layout: " << layoutQueue.head()->layoutUnit.toPair()
- << " group: " << layoutQueue.head()->layoutUnit.defaultGroup << " for " << m_currentWinId << endl;
+ << " for " << m_currentWinId << endl;
return *layoutQueue.head();
}
-void LayoutMap::setCurrentGroup(int group) {
- getCurrentLayout().group = group;
+LayoutState& LayoutMap::getPrevLayout() {
+ LayoutQueue& layoutQueue = getCurrentLayoutQueue(m_currentWinId);
+ for (int i = 1; i < layoutQueue.count(); ++i) {
+ LayoutState* layoutState = layoutQueue.dequeue();
+ layoutQueue.enqueue(layoutState);
+ }
+
+ kdDebug() << "map: Next layout: " << layoutQueue.head()->layoutUnit.toPair()
+ << " for " << m_currentWinId << endl;
+
+ return *layoutQueue.head();
}
void LayoutMap::setCurrentLayout(const LayoutUnit& layoutUnit) {
LayoutQueue& layoutQueue = getCurrentLayoutQueue(m_currentWinId);
kdDebug() << "map: Storing layout: " << layoutUnit.toPair()
- << " group: " << layoutUnit.defaultGroup << " for " << m_currentWinId << endl;
+ << " for " << m_currentWinId << endl;
int queueSize = (int)layoutQueue.count();
for(int ii=0; ii<queueSize; ii++) {