diff options
author | markt <markt> | 2007-06-08 19:29:53 (GMT) |
---|---|---|
committer | markt <markt> | 2007-06-08 19:29:53 (GMT) |
commit | 74fab5c8c5b326332da446135220fbd02c6a6938 (patch) | |
tree | 15a6ba65661ba3104b62df7452f442bbda763682 /src/WinClient.cc | |
parent | 3c361634dc22358b3e67bd796e3995ee63553628 (diff) | |
download | fluxbox-74fab5c8c5b326332da446135220fbd02c6a6938.zip fluxbox-74fab5c8c5b326332da446135220fbd02c6a6938.tar.bz2 |
don't tab transient windows from apps file, and change their layers along with main window
Diffstat (limited to 'src/WinClient.cc')
-rw-r--r-- | src/WinClient.cc | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/src/WinClient.cc b/src/WinClient.cc index da4810d..ab9d967 100644 --- a/src/WinClient.cc +++ b/src/WinClient.cc | |||
@@ -104,6 +104,11 @@ WinClient::WinClient(Window win, BScreen &screen, FluxboxWindow *fbwin): | |||
104 | // clear transient waiting list for this window | 104 | // clear transient waiting list for this window |
105 | s_transient_wait.erase(win); | 105 | s_transient_wait.erase(win); |
106 | } | 106 | } |
107 | |||
108 | // also check if this window is a transient | ||
109 | // this needs to be done before creating an fbwindow, so this doesn't get | ||
110 | // tabbed using the apps file | ||
111 | updateTransientInfo(); | ||
107 | } | 112 | } |
108 | 113 | ||
109 | WinClient::~WinClient() { | 114 | WinClient::~WinClient() { |
@@ -263,13 +268,6 @@ void WinClient::updateWMClassHint() { | |||
263 | } | 268 | } |
264 | 269 | ||
265 | void WinClient::updateTransientInfo() { | 270 | void WinClient::updateTransientInfo() { |
266 | #ifdef DEBUG | ||
267 | cerr<<__FUNCTION__<<": fbwindow() = "<<fbwindow()<<endl; | ||
268 | #endif // DEBUG | ||
269 | if (fbwindow() == 0) | ||
270 | return; | ||
271 | |||
272 | |||
273 | // remove this from parent | 271 | // remove this from parent |
274 | if (transientFor() != 0) { | 272 | if (transientFor() != 0) { |
275 | transientFor()->transientList().remove(this); | 273 | transientFor()->transientList().remove(this); |
@@ -293,7 +291,7 @@ void WinClient::updateTransientInfo() { | |||
293 | return; | 291 | return; |
294 | } | 292 | } |
295 | 293 | ||
296 | if (win != None && fbwindow()->screen().rootWindow() == win) { | 294 | if (win != None && screen().rootWindow() == win) { |
297 | // transient for root window... = transient for group | 295 | // transient for root window... = transient for group |
298 | // I don't think we are group-aware yet | 296 | // I don't think we are group-aware yet |
299 | return; | 297 | return; |
@@ -334,9 +332,6 @@ void WinClient::updateTransientInfo() { | |||
334 | // we need to add ourself to the right client in | 332 | // we need to add ourself to the right client in |
335 | // the transientFor() window so we search client | 333 | // the transientFor() window so we search client |
336 | transient_for->transientList().push_back(this); | 334 | transient_for->transientList().push_back(this); |
337 | |||
338 | if (transientFor()->fbwindow() && transientFor()->fbwindow()->isStuck()) | ||
339 | fbwindow()->stick(); | ||
340 | } | 335 | } |
341 | 336 | ||
342 | } | 337 | } |