Skip to content

Commit

Permalink
#8 refresh window frame when border is toggled
Browse files Browse the repository at this point in the history
  • Loading branch information
koekeishiya committed May 25, 2019
1 parent ff9c98b commit b4f9d32
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 3 deletions.
2 changes: 1 addition & 1 deletion src/message.c
Original file line number Diff line number Diff line change
Expand Up @@ -1058,7 +1058,7 @@ static void handle_domain_window(FILE *rsp, struct token domain, char *message)
} else if (token_equals(value, ARGUMENT_WINDOW_TOGGLE_BORDER)) {
struct ax_window *window = window_manager_focused_window(&g_window_manager);
if (window) {
window_manager_toggle_window_border(window);
window_manager_toggle_window_border(&g_window_manager, window);
} else {
daemon_fail(rsp, "could not locate the focused window.\n");
}
Expand Down
7 changes: 6 additions & 1 deletion src/window_manager.c
Original file line number Diff line number Diff line change
Expand Up @@ -968,15 +968,20 @@ void window_manager_toggle_window_fullscreen(struct space_manager *sm, struct wi
}
}

void window_manager_toggle_window_border(struct ax_window *window)
void window_manager_toggle_window_border(struct window_manager *wm, struct ax_window *window)
{
struct view *view = window_manager_find_managed_window(wm, window);
struct window_node *node = view ? view_find_window_node(view->root, window->id) : NULL;

if (window->border.enabled) {
border_window_hide(window);
window->border.enabled = false;
} else {
window->border.enabled = true;
border_window_refresh(window);
}

if (node) window_node_flush(node);
}

void window_manager_validate_windows_on_space(struct space_manager *sm, struct window_manager *wm, uint64_t sid)
Expand Down
2 changes: 1 addition & 1 deletion src/window_manager.h
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ void window_manager_toggle_window_float(struct space_manager *sm, struct window_
void window_manager_toggle_window_sticky(struct space_manager *sm, struct window_manager *wm, struct ax_window *window);
void window_manager_toggle_window_fullscreen(struct space_manager *sm, struct window_manager *wm, struct ax_window *window);
void window_manager_toggle_window_native_fullscreen(struct space_manager *sm, struct window_manager *wm, struct ax_window *window);
void window_manager_toggle_window_border(struct ax_window *window);
void window_manager_toggle_window_border(struct window_manager *wm, struct ax_window *window);
void window_manager_validate_windows_on_space(struct space_manager *sm, struct window_manager *wm, uint64_t sid);
void window_manager_check_for_windows_on_space(struct space_manager *sm, struct window_manager *wm, uint64_t sid);
void window_manager_handle_display_add_and_remove(struct space_manager *sm, struct window_manager *wm, uint32_t display_id, uint64_t sid);
Expand Down

0 comments on commit b4f9d32

Please sign in to comment.