Changeset View
Changeset View
Standalone View
Standalone View
layers.cpp
Show First 20 Lines • Show All 145 Lines • ▼ Show 20 Line(s) | |||||
146 | * Some fullscreen effects have to raise the screenedge on top of an input window, thus all windows | 146 | * Some fullscreen effects have to raise the screenedge on top of an input window, thus all windows | ||
147 | * this function puts them back where they belong for regular use and is some cheap variant of | 147 | * this function puts them back where they belong for regular use and is some cheap variant of | ||
148 | * the regular propagateClients function in that it completely ignores managed clients and everything | 148 | * the regular propagateClients function in that it completely ignores managed clients and everything | ||
149 | * else and also does not update the NETWM property. | 149 | * else and also does not update the NETWM property. | ||
150 | * Called from Effects::destroyInputWindow so far. | 150 | * Called from Effects::destroyInputWindow so far. | ||
151 | */ | 151 | */ | ||
152 | void Workspace::stackScreenEdgesUnderOverrideRedirect() | 152 | void Workspace::stackScreenEdgesUnderOverrideRedirect() | ||
153 | { | 153 | { | ||
154 | if (!rootInfo()) { | ||||
155 | return; | ||||
156 | } | ||||
154 | Xcb::restackWindows(QVector<xcb_window_t>() << rootInfo()->supportWindow() << ScreenEdges::self()->windows()); | 157 | Xcb::restackWindows(QVector<xcb_window_t>() << rootInfo()->supportWindow() << ScreenEdges::self()->windows()); | ||
155 | } | 158 | } | ||
156 | 159 | | |||
157 | /*! | 160 | /*! | ||
158 | Propagates the managed clients to the world. | 161 | Propagates the managed clients to the world. | ||
159 | Called ONLY from updateStackingOrder(). | 162 | Called ONLY from updateStackingOrder(). | ||
160 | */ | 163 | */ | ||
161 | void Workspace::propagateClients(bool propagate_new_clients) | 164 | void Workspace::propagateClients(bool propagate_new_clients) | ||
162 | { | 165 | { | ||
166 | if (!rootInfo()) { | ||||
167 | return; | ||||
168 | } | ||||
163 | // restack the windows according to the stacking order | 169 | // restack the windows according to the stacking order | ||
164 | // supportWindow > electric borders > clients > hidden clients | 170 | // supportWindow > electric borders > clients > hidden clients | ||
165 | QVector<xcb_window_t> newWindowStack; | 171 | QVector<xcb_window_t> newWindowStack; | ||
166 | 172 | | |||
167 | // Stack all windows under the support window. The support window is | 173 | // Stack all windows under the support window. The support window is | ||
168 | // not used for anything (besides the NETWM property), and it's not shown, | 174 | // not used for anything (besides the NETWM property), and it's not shown, | ||
169 | // but it was lowered after kwin startup. Stacking all clients below | 175 | // but it was lowered after kwin startup. Stacking all clients below | ||
170 | // it ensures that no client will be ever shown above override-redirect | 176 | // it ensures that no client will be ever shown above override-redirect | ||
▲ Show 20 Lines • Show All 691 Lines • Show Last 20 Lines |