remove NET_WM_STATE_ABOVE support. not useful in this context.
This commit is contained in:
8
action.c
8
action.c
@@ -112,11 +112,3 @@ void action_fullscreen(void *data, int num, client *cli)
|
|||||||
client_update_border(cli);
|
client_update_border(cli);
|
||||||
client_raise_family(cli);
|
client_raise_family(cli);
|
||||||
}
|
}
|
||||||
|
|
||||||
void action_above(void *data, int num, client *cli)
|
|
||||||
{
|
|
||||||
if (!cli) return;
|
|
||||||
client_toggle_state(cli, atoms[_NET_WM_STATE_ABOVE]);
|
|
||||||
client_update_border(cli);
|
|
||||||
client_raise_family(cli);
|
|
||||||
}
|
|
||||||
|
|||||||
1
atom.c
1
atom.c
@@ -49,7 +49,6 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|||||||
X(_NET_WM_WINDOW_TYPE_DIALOG),\
|
X(_NET_WM_WINDOW_TYPE_DIALOG),\
|
||||||
X(_NET_WM_STATE),\
|
X(_NET_WM_STATE),\
|
||||||
X(_NET_WM_STATE_FULLSCREEN),\
|
X(_NET_WM_STATE_FULLSCREEN),\
|
||||||
X(_NET_WM_STATE_ABOVE),\
|
|
||||||
X(_NET_WM_STATE_DEMANDS_ATTENTION),\
|
X(_NET_WM_STATE_DEMANDS_ATTENTION),\
|
||||||
X(WM_NAME),\
|
X(WM_NAME),\
|
||||||
X(WM_DELETE_WINDOW),\
|
X(WM_DELETE_WINDOW),\
|
||||||
|
|||||||
8
client.c
8
client.c
@@ -46,7 +46,6 @@ int client_toggle_state(client *c, Atom state)
|
|||||||
}
|
}
|
||||||
SETPROP_ATOM(c->window, atoms[_NET_WM_STATE], c->states, j);
|
SETPROP_ATOM(c->window, atoms[_NET_WM_STATE], c->states, j);
|
||||||
if (state == atoms[_NET_WM_STATE_FULLSCREEN]) c->full = rc;
|
if (state == atoms[_NET_WM_STATE_FULLSCREEN]) c->full = rc;
|
||||||
if (state == atoms[_NET_WM_STATE_ABOVE]) c->above = rc;
|
|
||||||
if (state == atoms[_NET_WM_STATE_DEMANDS_ATTENTION]) c->urgent = rc;
|
if (state == atoms[_NET_WM_STATE_DEMANDS_ATTENTION]) c->urgent = rc;
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
@@ -95,7 +94,6 @@ client* window_build_client(Window win)
|
|||||||
memset(c->states, 0, sizeof(Atom) * ATOMLIST);
|
memset(c->states, 0, sizeof(Atom) * ATOMLIST);
|
||||||
c->urgent = client_has_state(c, atoms[_NET_WM_STATE_DEMANDS_ATTENTION]);
|
c->urgent = client_has_state(c, atoms[_NET_WM_STATE_DEMANDS_ATTENTION]);
|
||||||
c->full = client_has_state(c, atoms[_NET_WM_STATE_FULLSCREEN]);
|
c->full = client_has_state(c, atoms[_NET_WM_STATE_FULLSCREEN]);
|
||||||
c->above = client_has_state(c, atoms[_NET_WM_STATE_ABOVE]);
|
|
||||||
|
|
||||||
if ((hints = XGetWMHints(display, c->window)))
|
if ((hints = XGetWMHints(display, c->window)))
|
||||||
{
|
{
|
||||||
@@ -126,7 +124,7 @@ void client_free(client *c)
|
|||||||
void client_update_border(client *c)
|
void client_update_border(client *c)
|
||||||
{
|
{
|
||||||
XColor color; Colormap map = DefaultColormap(display, DefaultScreen(display));
|
XColor color; Colormap map = DefaultColormap(display, DefaultScreen(display));
|
||||||
char *colorname = c->window == current ? BORDER_FOCUS: (c->urgent ? BORDER_URGENT: (c->above ? BORDER_ABOVE: BORDER_BLUR));
|
char *colorname = c->window == current ? BORDER_FOCUS: (c->urgent ? BORDER_URGENT: BORDER_BLUR);
|
||||||
XSetWindowBorder(display, c->window, XAllocNamedColor(display, map, colorname, &color, &color) ? color.pixel: None);
|
XSetWindowBorder(display, c->window, XAllocNamedColor(display, map, colorname, &color, &color) ? color.pixel: None);
|
||||||
XSetWindowBorderWidth(display, c->window, c->full ? 0: BORDER);
|
XSetWindowBorderWidth(display, c->window, c->full ? 0: BORDER);
|
||||||
}
|
}
|
||||||
@@ -240,10 +238,6 @@ void client_raise_family(client *c)
|
|||||||
for_windows(i, o) if (o->type == atoms[_NET_WM_WINDOW_TYPE_DOCK])
|
for_windows(i, o) if (o->type == atoms[_NET_WM_WINDOW_TYPE_DOCK])
|
||||||
client_stack_family(o, &raise);
|
client_stack_family(o, &raise);
|
||||||
|
|
||||||
// above only counts for fullscreen windows
|
|
||||||
if (c->full) for_windows(i, o) if (o->above)
|
|
||||||
client_stack_family(o, &raise);
|
|
||||||
|
|
||||||
while (c->transient && (o = window_build_client(c->transient)))
|
while (c->transient && (o = window_build_client(c->transient)))
|
||||||
c = family.clients[family.depth++] = o;
|
c = family.clients[family.depth++] = o;
|
||||||
|
|
||||||
|
|||||||
7
config.h
7
config.h
@@ -4,7 +4,6 @@
|
|||||||
#define BORDER_BLUR "Dark Gray"
|
#define BORDER_BLUR "Dark Gray"
|
||||||
#define BORDER_FOCUS "Royal Blue"
|
#define BORDER_FOCUS "Royal Blue"
|
||||||
#define BORDER_URGENT "Red"
|
#define BORDER_URGENT "Red"
|
||||||
#define BORDER_ABOVE "Dark Green"
|
|
||||||
#define GAP 2
|
#define GAP 2
|
||||||
|
|
||||||
// Title bar xft font
|
// Title bar xft font
|
||||||
@@ -77,9 +76,6 @@
|
|||||||
// action_move_monitor
|
// action_move_monitor
|
||||||
// action_focus_monitor
|
// action_focus_monitor
|
||||||
// action_fullscreen
|
// action_fullscreen
|
||||||
// action_above
|
|
||||||
// action_snapshot
|
|
||||||
// action_rollback
|
|
||||||
|
|
||||||
// If you use "AnyModifier" place those keys at the end of the array.
|
// If you use "AnyModifier" place those keys at the end of the array.
|
||||||
binding keys[] = {
|
binding keys[] = {
|
||||||
@@ -119,9 +115,6 @@ binding keys[] = {
|
|||||||
// Toggle current window full screen.
|
// Toggle current window full screen.
|
||||||
{ .mod = Mod4Mask, .key = XK_f, .act = action_fullscreen },
|
{ .mod = Mod4Mask, .key = XK_f, .act = action_fullscreen },
|
||||||
|
|
||||||
// Toggle current window above.
|
|
||||||
{ .mod = Mod4Mask, .key = XK_a, .act = action_above },
|
|
||||||
|
|
||||||
// Switch focus between monitors.
|
// Switch focus between monitors.
|
||||||
{ .mod = Mod4Mask, .key = XK_Next, .act = action_focus_monitor, .num = +1 },
|
{ .mod = Mod4Mask, .key = XK_Next, .act = action_focus_monitor, .num = +1 },
|
||||||
{ .mod = Mod4Mask, .key = XK_Prior, .act = action_focus_monitor, .num = -1 },
|
{ .mod = Mod4Mask, .key = XK_Prior, .act = action_focus_monitor, .num = -1 },
|
||||||
|
|||||||
17
xoat.1
17
xoat.1
@@ -72,11 +72,6 @@ While in fullscreen mode, an window is considered to be in tile 1.
|
|||||||
.RS
|
.RS
|
||||||
.RE
|
.RE
|
||||||
.TP
|
.TP
|
||||||
.B Mod4-a
|
|
||||||
Toggle state above (only placed above fullscreen windows).
|
|
||||||
.RS
|
|
||||||
.RE
|
|
||||||
.TP
|
|
||||||
.B Mod4-Next (Page Down)
|
.B Mod4-Next (Page Down)
|
||||||
Focus next monitor.
|
Focus next monitor.
|
||||||
.RS
|
.RS
|
||||||
@@ -106,18 +101,6 @@ Launch dmenu_run
|
|||||||
Launch urxvt
|
Launch urxvt
|
||||||
.RS
|
.RS
|
||||||
.RE
|
.RE
|
||||||
.TP
|
|
||||||
.B Mod4-s
|
|
||||||
Snapshot current window positions and stacking order.
|
|
||||||
.RS
|
|
||||||
.RE
|
|
||||||
.TP
|
|
||||||
.B Mod4-r
|
|
||||||
Rollback to snapshot.
|
|
||||||
Windows closed since the snapshot will not be reopened.
|
|
||||||
Newer windows not in the snapshot will be lowered.
|
|
||||||
.RS
|
|
||||||
.RE
|
|
||||||
.SH OPTIONS
|
.SH OPTIONS
|
||||||
.PP
|
.PP
|
||||||
All configuration is done via config.h.
|
All configuration is done via config.h.
|
||||||
|
|||||||
2
xoat.c
2
xoat.c
@@ -77,7 +77,7 @@ typedef struct {
|
|||||||
XWindowAttributes attr;
|
XWindowAttributes attr;
|
||||||
Window transient, leader;
|
Window transient, leader;
|
||||||
Atom type, states[ATOMLIST+1];
|
Atom type, states[ATOMLIST+1];
|
||||||
short monitor, visible, manage, input, urgent, full, above, ours;
|
short monitor, visible, manage, input, urgent, full, ours;
|
||||||
unsigned long spot;
|
unsigned long spot;
|
||||||
char *class;
|
char *class;
|
||||||
} client;
|
} client;
|
||||||
|
|||||||
9
xoat.md
9
xoat.md
@@ -53,9 +53,6 @@ Mod4-Escape
|
|||||||
Mod4-f
|
Mod4-f
|
||||||
: Toggle state fullscreen. While in fullscreen mode, an window is considered to be in tile 1.
|
: Toggle state fullscreen. While in fullscreen mode, an window is considered to be in tile 1.
|
||||||
|
|
||||||
Mod4-a
|
|
||||||
: Toggle state above (only placed above fullscreen windows).
|
|
||||||
|
|
||||||
Mod4-Next (Page Down)
|
Mod4-Next (Page Down)
|
||||||
: Focus next monitor.
|
: Focus next monitor.
|
||||||
|
|
||||||
@@ -74,12 +71,6 @@ Shift-Mod4-x
|
|||||||
F1
|
F1
|
||||||
: Launch urxvt
|
: Launch urxvt
|
||||||
|
|
||||||
Mod4-s
|
|
||||||
: Snapshot current window positions and stacking order.
|
|
||||||
|
|
||||||
Mod4-r
|
|
||||||
: Rollback to snapshot. Windows closed since the snapshot will not be reopened. Newer windows not in the snapshot will be lowered.
|
|
||||||
|
|
||||||
# OPTIONS
|
# OPTIONS
|
||||||
|
|
||||||
All configuration is done via config.h.
|
All configuration is done via config.h.
|
||||||
|
|||||||
Reference in New Issue
Block a user