projects
/
dana
/
openbox.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Ignore enters on windows that are raised over focused window while being mapped.
[dana/openbox.git]
/
openbox
/
client.c
diff --git
a/openbox/client.c
b/openbox/client.c
index
f3b4bda
..
8634707
100644
(file)
--- a/
openbox/client.c
+++ b/
openbox/client.c
@@
-203,6
+203,7
@@
void client_manage(Window window, ObPrompt *prompt)
Time launch_time;
guint32 user_time;
gboolean obplaced;
Time launch_time;
guint32 user_time;
gboolean obplaced;
+ gulong ignore_start;
ob_debug("Managing window: 0x%lx", window);
ob_debug("Managing window: 0x%lx", window);
@@
-468,19
+469,13
@@
void client_manage(Window window, ObPrompt *prompt)
/* grab mouse bindings before showing the window */
mouse_grab_for_client(self, TRUE);
/* grab mouse bindings before showing the window */
mouse_grab_for_client(self, TRUE);
+ if (!config_focus_under_mouse)
+ ignore_start = event_start_ignore_all_enters();
+
/* this has to happen before we try focus the window, but we want it to
happen after the client's stacking has been determined or it looks bad
*/
/* this has to happen before we try focus the window, but we want it to
happen after the client's stacking has been determined or it looks bad
*/
- {
- gulong ignore_start;
- if (!config_focus_under_mouse)
- ignore_start = event_start_ignore_all_enters();
-
- client_show(self);
-
- if (!config_focus_under_mouse)
- event_end_ignore_all_enters(ignore_start);
- }
+ client_show(self);
/* activate/hilight/raise the window */
if (try_activate) {
/* activate/hilight/raise the window */
if (try_activate) {
@@
-508,6
+503,9
@@
void client_manage(Window window, ObPrompt *prompt)
stacking_raise(CLIENT_AS_WINDOW(self));
}
stacking_raise(CLIENT_AS_WINDOW(self));
}
+ if (!config_focus_under_mouse)
+ event_end_ignore_all_enters(ignore_start);
+
/* add to client list/map */
client_list = g_list_append(client_list, self);
window_add(&self->window, CLIENT_AS_WINDOW(self));
/* add to client list/map */
client_list = g_list_append(client_list, self);
window_add(&self->window, CLIENT_AS_WINDOW(self));