aboutsummaryrefslogtreecommitdiff
path: root/src/FbTk/XLayer.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/FbTk/XLayer.cc')
-rw-r--r--src/FbTk/XLayer.cc20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/FbTk/XLayer.cc b/src/FbTk/XLayer.cc
index ae92e97..63881d3 100644
--- a/src/FbTk/XLayer.cc
+++ b/src/FbTk/XLayer.cc
@@ -131,6 +131,26 @@ void XLayer::stackBelowItem(XLayerItem *item, XLayerItem *above) {
131 131
132} 132}
133 133
134void XLayer::alignItem(XLayerItem &item) {
135 // Note: some other things effectively assume that the window list is
136 // sorted from highest to lowest
137 size_t winnum = 0,
138 num = item.numWindows();
139 Window *winlist = new Window[num];
140
141 // fill the rest of the array
142 XLayerItem::Windows::iterator it = item.getWindows().begin();
143 XLayerItem::Windows::iterator it_end = item.getWindows().end();
144 for (; it != it_end; ++it) {
145 if ((*it)->window()) {
146 winlist[winnum++] = (*it)->window();
147 }
148 }
149
150 XRestackWindows(FbTk::App::instance()->display(), winlist, winnum);
151 delete [] winlist;
152}
153
134XLayer::iterator XLayer::insert(XLayerItem &item, unsigned int pos) { 154XLayer::iterator XLayer::insert(XLayerItem &item, unsigned int pos) {
135#ifdef DEBUG 155#ifdef DEBUG
136 // at this point we don't support insertions into a layer other than at the top 156 // at this point we don't support insertions into a layer other than at the top