projects
/
mikachu
/
openbox.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
d783705
)
fix a rare assert condition (window maps in iconic state but is not allowed to be...
author
Dana Jansens
<danakj@orodu.net>
Mon, 28 Jan 2008 01:26:29 +0000
(20:26 -0500)
committer
Dana Jansens
<danakj@orodu.net>
Mon, 28 Jan 2008 04:38:28 +0000
(23:38 -0500)
openbox/client.c
patch
|
blob
|
history
diff --git
a/openbox/client.c
b/openbox/client.c
index
e5e2556
..
ba24475
100644
(file)
--- a/
openbox/client.c
+++ b/
openbox/client.c
@@
-309,9
+309,6
@@
void client_manage(Window window)
/* the session should get the last say though */
client_restore_session_state(self);
/* the session should get the last say though */
client_restore_session_state(self);
- /* now we have all of the window's information so we can set this up */
- client_setup_decor_and_functions(self, FALSE);
-
/* tell startup notification that this app started */
launch_time = sn_app_started(self->startup_id, self->class, self->name);
/* tell startup notification that this app started */
launch_time = sn_app_started(self->startup_id, self->class, self->name);
@@
-319,12
+316,18
@@
void client_manage(Window window)
WM_STATE to apply. */
client_change_state(self);
WM_STATE to apply. */
client_change_state(self);
- /* add ourselves to the focus order */
+ /* add ourselves to the focus order. do this before
+ setup_decor_and_functions. if the window is mapping in a state that is
+ not allowed, then it will be adjusted, and that can change its position
+ in the focus order (deiconify for example) */
focus_order_add_new(self);
/* do this to add ourselves to the stacking list in a non-intrusive way */
client_calc_layer(self);
focus_order_add_new(self);
/* do this to add ourselves to the stacking list in a non-intrusive way */
client_calc_layer(self);
+ /* now we have all of the window's information so we can set this up */
+ client_setup_decor_and_functions(self, FALSE);
+
/* focus the new window? */
if (ob_state() != OB_STATE_STARTING &&
(!self->session || self->session->focused) &&
/* focus the new window? */
if (ob_state() != OB_STATE_STARTING &&
(!self->session || self->session->focused) &&