aboutsummaryrefslogtreecommitdiff
path: root/include/sway/input
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2018-09-11 19:19:17 -0400
committerGitHub <noreply@github.com>2018-09-11 19:19:17 -0400
commit4fbec701fcf1505d1c13d7f5d8b55264b8f07e4e (patch)
tree82daa71d644f15c2e1e58ca9bdb2d4e1a75d3be9 /include/sway/input
parent822b45f4836c9a22af5a283e2aea6e4ecd514c22 (diff)
parent679c7eb08c16daea8e3e1cff7bcf179e116d0e8e (diff)
Merge pull request #2618 from RyanDwyer/tiling-drag
Implement tiling drag
Diffstat (limited to 'include/sway/input')
-rw-r--r--include/sway/input/seat.h13
1 files changed, 10 insertions, 3 deletions
diff --git a/include/sway/input/seat.h b/include/sway/input/seat.h
index b07d200d..e006faba 100644
--- a/include/sway/input/seat.h
+++ b/include/sway/input/seat.h
@@ -38,7 +38,8 @@ struct sway_drag_icon {
enum sway_seat_operation {
OP_NONE,
OP_DOWN,
- OP_MOVE,
+ OP_MOVE_FLOATING,
+ OP_MOVE_TILING,
OP_RESIZE_FLOATING,
OP_RESIZE_TILING,
};
@@ -64,6 +65,9 @@ struct sway_seat {
// Operations (drag and resize)
enum sway_seat_operation operation;
struct sway_container *op_container;
+ struct sway_node *op_target_node; // target for tiling move
+ enum wlr_edges op_target_edge;
+ struct wlr_box op_drop_box;
enum wlr_edges op_resize_edge;
uint32_t op_button;
bool op_resize_preserve_ratio;
@@ -172,8 +176,11 @@ void drag_icon_update_position(struct sway_drag_icon *icon);
void seat_begin_down(struct sway_seat *seat, struct sway_container *con,
uint32_t button, double sx, double sy);
-void seat_begin_move(struct sway_seat *seat, struct sway_container *con,
- uint32_t button);
+void seat_begin_move_floating(struct sway_seat *seat,
+ struct sway_container *con, uint32_t button);
+
+void seat_begin_move_tiling(struct sway_seat *seat,
+ struct sway_container *con, uint32_t button);
void seat_begin_resize_floating(struct sway_seat *seat,
struct sway_container *con, uint32_t button, enum wlr_edges edge);