Forked. Fix for menu popup bugs.
This commit is contained in:
3
.gitignore
vendored
Normal file
3
.gitignore
vendored
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
.env
|
||||||
|
xoat
|
||||||
|
xoat-debug
|
||||||
@@ -1,6 +1,8 @@
|
|||||||
xoat
|
xoat
|
||||||
====
|
====
|
||||||
|
|
||||||
|
Fork of [seanpringle](https://github.com/seanpringle)/[xoat](https://github.com/seanpringle/xoat)
|
||||||
|
|
||||||
*X Obstinate Asymmetric Tiler*
|
*X Obstinate Asymmetric Tiler*
|
||||||
|
|
||||||
* Designed for wide screens, including multi-head support.
|
* Designed for wide screens, including multi-head support.
|
||||||
|
|||||||
7
event.c
7
event.c
@@ -102,6 +102,7 @@ void map_notify(XEvent *e)
|
|||||||
{
|
{
|
||||||
client_raise_family(c);
|
client_raise_family(c);
|
||||||
client_update_border(c);
|
client_update_border(c);
|
||||||
|
if (!c->menu) // Only set focus if it's not a menu/popup
|
||||||
client_set_focus(c);
|
client_set_focus(c);
|
||||||
client_free(a);
|
client_free(a);
|
||||||
ewmh_client_list();
|
ewmh_client_list();
|
||||||
@@ -113,12 +114,14 @@ void map_notify(XEvent *e)
|
|||||||
|
|
||||||
void unmap_notify(XEvent *e)
|
void unmap_notify(XEvent *e)
|
||||||
{
|
{
|
||||||
// if this window was focused, find something else
|
Client *c = window_build_client(e->xunmap.window);
|
||||||
if (e->xunmap.window == current && !spot_focus_top_window(current_spot, current_mon, current))
|
// if this window was focused, and it's not a menu/popup, find something else
|
||||||
|
if (c && !c->menu && e->xunmap.window == current && !spot_focus_top_window(current_spot, current_mon, current))
|
||||||
{
|
{
|
||||||
int i; for_spots(i)
|
int i; for_spots(i)
|
||||||
if (spot_focus_top_window(i, current_mon, current)) break;
|
if (spot_focus_top_window(i, current_mon, current)) break;
|
||||||
}
|
}
|
||||||
|
client_free(c);
|
||||||
ewmh_client_list();
|
ewmh_client_list();
|
||||||
update_bars();
|
update_bars();
|
||||||
menu_update();
|
menu_update();
|
||||||
|
|||||||
Reference in New Issue
Block a user