Implement disabling the internal workspace bar
This commit is contained in:
parent
2df374ca4c
commit
2df1fb8ac8
@ -3,7 +3,7 @@
|
|||||||
*
|
*
|
||||||
* i3 - an improved dynamic tiling window manager
|
* i3 - an improved dynamic tiling window manager
|
||||||
*
|
*
|
||||||
* © 2009 Michael Stapelberg and contributors
|
* © 2009-2010 Michael Stapelberg and contributors
|
||||||
*
|
*
|
||||||
* See file LICENSE for license information.
|
* See file LICENSE for license information.
|
||||||
*
|
*
|
||||||
@ -682,7 +682,8 @@ void render_workspace(xcb_connection_t *conn, Output *output, Workspace *r_ws) {
|
|||||||
height -= client->desired_height;
|
height -= client->desired_height;
|
||||||
|
|
||||||
/* Space for the internal bar */
|
/* Space for the internal bar */
|
||||||
height -= (font->height + 6);
|
if (!config.disable_workspace_bar)
|
||||||
|
height -= (font->height + 6);
|
||||||
|
|
||||||
int xoffset[r_ws->rows];
|
int xoffset[r_ws->rows];
|
||||||
int yoffset[r_ws->cols];
|
int yoffset[r_ws->cols];
|
||||||
@ -739,7 +740,8 @@ void render_workspace(xcb_connection_t *conn, Output *output, Workspace *r_ws) {
|
|||||||
ignore_enter_notify_forall(conn, r_ws, false);
|
ignore_enter_notify_forall(conn, r_ws, false);
|
||||||
|
|
||||||
render_bars(conn, r_ws, width, &height);
|
render_bars(conn, r_ws, width, &height);
|
||||||
render_internal_bar(conn, r_ws, width, font->height + 6);
|
if (!config.disable_workspace_bar)
|
||||||
|
render_internal_bar(conn, r_ws, width, font->height + 6);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
22
src/randr.c
22
src/randr.c
@ -173,16 +173,18 @@ void initialize_output(xcb_connection_t *conn, Output *output, Workspace *worksp
|
|||||||
/* Map clients on the workspace, if any */
|
/* Map clients on the workspace, if any */
|
||||||
workspace_map_clients(conn, workspace);
|
workspace_map_clients(conn, workspace);
|
||||||
|
|
||||||
/* Create a xoutput for each output */
|
/* Create a bar window on each output */
|
||||||
Rect bar_rect = {output->rect.x,
|
if (!config.disable_workspace_bar) {
|
||||||
output->rect.y + output->rect.height - (font->height + 6),
|
Rect bar_rect = {output->rect.x,
|
||||||
output->rect.x + output->rect.width,
|
output->rect.y + output->rect.height - (font->height + 6),
|
||||||
font->height + 6};
|
output->rect.x + output->rect.width,
|
||||||
uint32_t mask = XCB_CW_OVERRIDE_REDIRECT | XCB_CW_EVENT_MASK;
|
font->height + 6};
|
||||||
uint32_t values[] = {1, XCB_EVENT_MASK_EXPOSURE | XCB_EVENT_MASK_BUTTON_PRESS};
|
uint32_t mask = XCB_CW_OVERRIDE_REDIRECT | XCB_CW_EVENT_MASK;
|
||||||
output->bar = create_window(conn, bar_rect, XCB_WINDOW_CLASS_INPUT_OUTPUT, XCB_CURSOR_LEFT_PTR, true, mask, values);
|
uint32_t values[] = {1, XCB_EVENT_MASK_EXPOSURE | XCB_EVENT_MASK_BUTTON_PRESS};
|
||||||
output->bargc = xcb_generate_id(conn);
|
output->bar = create_window(conn, bar_rect, XCB_WINDOW_CLASS_INPUT_OUTPUT, XCB_CURSOR_LEFT_PTR, true, mask, values);
|
||||||
xcb_create_gc(conn, output->bargc, output->bar, 0, 0);
|
output->bargc = xcb_generate_id(conn);
|
||||||
|
xcb_create_gc(conn, output->bargc, output->bar, 0, 0);
|
||||||
|
}
|
||||||
|
|
||||||
SLIST_INIT(&(output->dock_clients));
|
SLIST_INIT(&(output->dock_clients));
|
||||||
|
|
||||||
|
@ -460,7 +460,8 @@ int workspace_height(Workspace *ws) {
|
|||||||
height -= client->desired_height;
|
height -= client->desired_height;
|
||||||
|
|
||||||
/* Space for the internal bar */
|
/* Space for the internal bar */
|
||||||
height -= (font->height + 6);
|
if (!config.disable_workspace_bar)
|
||||||
|
height -= (font->height + 6);
|
||||||
|
|
||||||
return height;
|
return height;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user