diff options
author | taiyu <taiyu.len@gmail.com> | 2015-08-22 18:01:38 -0700 |
---|---|---|
committer | taiyu <taiyu.len@gmail.com> | 2015-08-22 18:01:38 -0700 |
commit | e139de0857a1ba015fa324dcc662a39eca88761b (patch) | |
tree | 1b3406300ed364e2d0449c2e08ab4c39a654ac6c /sway/resize.c | |
parent | Whoops (diff) | |
download | sway-e139de0857a1ba015fa324dcc662a39eca88761b.tar.gz sway-e139de0857a1ba015fa324dcc662a39eca88761b.tar.zst sway-e139de0857a1ba015fa324dcc662a39eca88761b.zip |
floating/tiling move + floating resize cleaned and fixed
Diffstat (limited to 'sway/resize.c')
-rw-r--r-- | sway/resize.c | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/sway/resize.c b/sway/resize.c index a08ef4a1..31cd66e8 100644 --- a/sway/resize.c +++ b/sway/resize.c | |||
@@ -10,8 +10,8 @@ bool mouse_resize_tiled(struct wlc_origin prev_pos) { | |||
10 | swayc_t *view = container_under_pointer(); | 10 | swayc_t *view = container_under_pointer(); |
11 | bool valid = true; | 11 | bool valid = true; |
12 | bool changed_tiling = false; | 12 | bool changed_tiling = false; |
13 | double dx = mouse_origin.x - prev_pos.x; | 13 | double dx = pointer_state.origin.x - prev_pos.x; |
14 | double dy = mouse_origin.y - prev_pos.y; | 14 | double dy = pointer_state.origin.y - prev_pos.y; |
15 | if (view != pointer_state.tiling.init_view) { | 15 | if (view != pointer_state.tiling.init_view) { |
16 | changed_tiling = true; | 16 | changed_tiling = true; |
17 | valid = false; | 17 | valid = false; |
@@ -32,7 +32,7 @@ bool mouse_resize_tiled(struct wlc_origin prev_pos) { | |||
32 | } | 32 | } |
33 | } | 33 | } |
34 | 34 | ||
35 | if ((dx < 0 || mouse_origin.x < pointer_state.tiling.lock_pos.x) && pointer_state.lock.temp_left) { | 35 | if ((dx < 0 || pointer_state.origin.x < pointer_state.tiling.lock_pos.x) && pointer_state.lock.temp_left) { |
36 | changed_tiling = true; | 36 | changed_tiling = true; |
37 | valid = false; | 37 | valid = false; |
38 | } else if (dx > 0 && pointer_state.lock.temp_left) { | 38 | } else if (dx > 0 && pointer_state.lock.temp_left) { |
@@ -40,7 +40,7 @@ bool mouse_resize_tiled(struct wlc_origin prev_pos) { | |||
40 | pointer_state.tiling.lock_pos.x = 0; | 40 | pointer_state.tiling.lock_pos.x = 0; |
41 | } | 41 | } |
42 | 42 | ||
43 | if ((dx > 0 || mouse_origin.x > pointer_state.tiling.lock_pos.x) && pointer_state.lock.temp_right) { | 43 | if ((dx > 0 || pointer_state.origin.x > pointer_state.tiling.lock_pos.x) && pointer_state.lock.temp_right) { |
44 | changed_tiling = true; | 44 | changed_tiling = true; |
45 | valid = false; | 45 | valid = false; |
46 | } else if (dx < 0 && pointer_state.lock.temp_right) { | 46 | } else if (dx < 0 && pointer_state.lock.temp_right) { |
@@ -48,7 +48,7 @@ bool mouse_resize_tiled(struct wlc_origin prev_pos) { | |||
48 | pointer_state.tiling.lock_pos.x = 0; | 48 | pointer_state.tiling.lock_pos.x = 0; |
49 | } | 49 | } |
50 | 50 | ||
51 | if ((dy < 0 || mouse_origin.y < pointer_state.tiling.lock_pos.y) && pointer_state.lock.temp_up) { | 51 | if ((dy < 0 || pointer_state.origin.y < pointer_state.tiling.lock_pos.y) && pointer_state.lock.temp_up) { |
52 | changed_tiling = true; | 52 | changed_tiling = true; |
53 | valid = false; | 53 | valid = false; |
54 | } else if (dy > 0 && pointer_state.lock.temp_up) { | 54 | } else if (dy > 0 && pointer_state.lock.temp_up) { |
@@ -56,7 +56,7 @@ bool mouse_resize_tiled(struct wlc_origin prev_pos) { | |||
56 | pointer_state.tiling.lock_pos.y = 0; | 56 | pointer_state.tiling.lock_pos.y = 0; |
57 | } | 57 | } |
58 | 58 | ||
59 | if ((dy > 0 || mouse_origin.y > pointer_state.tiling.lock_pos.y) && pointer_state.lock.temp_down) { | 59 | if ((dy > 0 || pointer_state.origin.y > pointer_state.tiling.lock_pos.y) && pointer_state.lock.temp_down) { |
60 | changed_tiling = true; | 60 | changed_tiling = true; |
61 | valid = false; | 61 | valid = false; |
62 | } else if (dy < 0 && pointer_state.lock.temp_down) { | 62 | } else if (dy < 0 && pointer_state.lock.temp_down) { |
@@ -190,8 +190,8 @@ bool resize_floating(struct wlc_origin prev_pos) { | |||
190 | bool changed = false; | 190 | bool changed = false; |
191 | swayc_t *view = container_under_pointer(); | 191 | swayc_t *view = container_under_pointer(); |
192 | uint32_t edge = 0; | 192 | uint32_t edge = 0; |
193 | int dx = mouse_origin.x - prev_pos.x; | 193 | int dx = pointer_state.origin.x - prev_pos.x; |
194 | int dy = mouse_origin.y - prev_pos.y; | 194 | int dy = pointer_state.origin.y - prev_pos.y; |
195 | 195 | ||
196 | // Move and resize the view based on the dx/dy and mouse position | 196 | // Move and resize the view based on the dx/dy and mouse position |
197 | int midway_x = view->x + view->width/2; | 197 | int midway_x = view->x + view->width/2; |
@@ -203,14 +203,14 @@ bool resize_floating(struct wlc_origin prev_pos) { | |||
203 | view->width += dx; | 203 | view->width += dx; |
204 | edge += WLC_RESIZE_EDGE_RIGHT; | 204 | edge += WLC_RESIZE_EDGE_RIGHT; |
205 | } | 205 | } |
206 | } else if (mouse_origin.x < midway_x && !pointer_state.lock.left) { | 206 | } else if (pointer_state.origin.x < midway_x && !pointer_state.lock.left) { |
207 | changed = true; | 207 | changed = true; |
208 | view->x += dx; | 208 | view->x += dx; |
209 | view->width -= dx; | 209 | view->width -= dx; |
210 | edge += WLC_RESIZE_EDGE_LEFT; | 210 | edge += WLC_RESIZE_EDGE_LEFT; |
211 | } | 211 | } |
212 | } else if (dx > 0) { | 212 | } else if (dx > 0) { |
213 | if (mouse_origin.x > midway_x && !pointer_state.lock.right) { | 213 | if (pointer_state.origin.x > midway_x && !pointer_state.lock.right) { |
214 | changed = true; | 214 | changed = true; |
215 | view->width += dx; | 215 | view->width += dx; |
216 | edge += WLC_RESIZE_EDGE_RIGHT; | 216 | edge += WLC_RESIZE_EDGE_RIGHT; |
@@ -231,14 +231,14 @@ bool resize_floating(struct wlc_origin prev_pos) { | |||
231 | view->height += dy; | 231 | view->height += dy; |
232 | edge += WLC_RESIZE_EDGE_BOTTOM; | 232 | edge += WLC_RESIZE_EDGE_BOTTOM; |
233 | } | 233 | } |
234 | } else if (mouse_origin.y < midway_y && !pointer_state.lock.top) { | 234 | } else if (pointer_state.origin.y < midway_y && !pointer_state.lock.top) { |
235 | changed = true; | 235 | changed = true; |
236 | view->y += dy; | 236 | view->y += dy; |
237 | view->height -= dy; | 237 | view->height -= dy; |
238 | edge += WLC_RESIZE_EDGE_TOP; | 238 | edge += WLC_RESIZE_EDGE_TOP; |
239 | } | 239 | } |
240 | } else if (dy > 0) { | 240 | } else if (dy > 0) { |
241 | if (mouse_origin.y > midway_y && !pointer_state.lock.bottom) { | 241 | if (pointer_state.origin.y > midway_y && !pointer_state.lock.bottom) { |
242 | changed = true; | 242 | changed = true; |
243 | view->height += dy; | 243 | view->height += dy; |
244 | edge += WLC_RESIZE_EDGE_BOTTOM; | 244 | edge += WLC_RESIZE_EDGE_BOTTOM; |