void (*set_fullscreen)(struct view *view, bool fullscreen);
void (*unmap)(struct view *view);
void (*maximize)(struct view *view, bool maximize);
+ void (*minimize)(struct view *view, bool minimize);
void (*move_to_front)(struct view *view);
void (*move_to_back)(struct view *view);
};
wlr_foreign_toplevel_handle_v1_set_minimized(
view->toplevel.handle, minimized);
}
+ if (view->impl->minimize) {
+ view->impl->minimize(view, minimized);
+ }
view->minimized = minimized;
if (minimized) {
view->impl->unmap(view);
wlr_xdg_toplevel_set_maximized(xdg_toplevel_from_view(view), maximized);
}
+static void
+xdg_toplevel_view_minimize(struct view *view, bool minimized)
+{
+ /* noop */
+}
+
static void
xdg_toplevel_view_set_activated(struct view *view, bool activated)
{
.set_fullscreen = xdg_toplevel_view_set_fullscreen,
.unmap = xdg_toplevel_view_unmap,
.maximize = xdg_toplevel_view_maximize,
+ .minimize = xdg_toplevel_view_minimize,
.move_to_front = view_impl_move_to_front,
.move_to_back = view_impl_move_to_back,
};
maximized);
}
+static void
+xwayland_view_minimize(struct view *view, bool minimized)
+{
+ wlr_xwayland_surface_set_minimized(xwayland_surface_from_view(view),
+ minimized);
+}
+
enum z_direction {
LAB_TO_FRONT,
LAB_TO_BACK,
.set_fullscreen = xwayland_view_set_fullscreen,
.unmap = xwayland_view_unmap,
.maximize = xwayland_view_maximize,
+ .minimize = xwayland_view_minimize,
.move_to_front = xwayland_view_move_to_front,
.move_to_back = xwayland_view_move_to_back,
};