Implement resizing tiled containers via cursor

* The OP_RESIZE seat operation has been renamed to OP_RESIZE_FLOATING,
and OP_RESIZE_TILING has been introduced.
* Similar to the above, seat_begin_resize and handle_resize_motion have
been renamed and tiling variants introduced.
* resize.c's resize_tiled has to be used, so container_resize_tiled has
been introduced in resize.c to allow external code to call it.
This commit is contained in:
Ryan Dwyer 2018-08-10 14:10:09 +10:00
parent 146cc0a441
commit b4a0363d17
10 changed files with 173 additions and 34 deletions

View file

@ -57,7 +57,8 @@ struct sway_seat {
enum {
OP_NONE,
OP_MOVE,
OP_RESIZE,
OP_RESIZE_FLOATING,
OP_RESIZE_TILING,
} operation;
struct sway_container *op_container;
@ -159,8 +160,11 @@ void drag_icon_update_position(struct sway_drag_icon *icon);
void seat_begin_move(struct sway_seat *seat, struct sway_container *con,
uint32_t button);
void seat_begin_resize(struct sway_seat *seat, struct sway_container *con,
uint32_t button, enum wlr_edges edge);
void seat_begin_resize_floating(struct sway_seat *seat,
struct sway_container *con, uint32_t button, enum wlr_edges edge);
void seat_begin_resize_tiling(struct sway_seat *seat,
struct sway_container *con, uint32_t button, enum wlr_edges edge);
void seat_end_mouse_operation(struct sway_seat *seat);