view: add view_toggle_maximize()

This commit is contained in:
Johan Malm 2021-08-02 16:49:41 +01:00
parent d6376808b8
commit 526ab1ae75
5 changed files with 12 additions and 12 deletions

View file

@ -292,6 +292,7 @@ void view_minimize(struct view *view);
void view_unminimize(struct view *view);
void view_center(struct view *view);
void view_maximize(struct view *view, bool maximize);
void view_toggle_maximize(struct view *view);
void view_for_each_surface(struct view *view,
wlr_surface_iterator_func_t iterator, void *user_data);
void view_for_each_popup_surface(struct view *view,

View file

@ -50,13 +50,8 @@ action(struct server *server, const char *action, const char *command)
show_menu(server, command);
} else if (!strcasecmp(action, "ToggleMaximize")) {
struct view *view = topmost_mapped_view(server);
if (!view) {
return;
}
if (view->maximized) {
view_maximize(view, false);
} else {
view_maximize(view, true);
if (view) {
view_toggle_maximize(view);
}
} else {
wlr_log(WLR_ERROR, "action (%s) not supported", action);

View file

@ -322,7 +322,7 @@ cursor_button(struct wl_listener *listener, void *data)
interactive_begin(view, LAB_INPUT_STATE_MOVE, 0);
break;
case LAB_SSD_BUTTON_MAXIMIZE:
view_maximize(view, !view->maximized);
view_toggle_maximize(view);
break;
}
}

View file

@ -100,6 +100,12 @@ view_maximize(struct view *view, bool maximize)
}
}
void
view_toggle_maximize(struct view *view)
{
view_maximize(view, !view->maximized);
}
void
view_for_each_surface(struct view *view, wlr_surface_iterator_func_t iterator,
void *user_data)

View file

@ -68,10 +68,8 @@ static void handle_request_maximize(struct wl_listener *listener, void *data)
{
struct view *view = wl_container_of(listener, view, request_maximize);
if(view != NULL) {
view_maximize(view, !view->maximized);
}
assert(view);
view_toggle_maximize(view);
}
static void