Implement some floating move commands

This implements the following for floating containers:

* move <direction> <amount>
* move [absolute] position <x> <y>
* move [absolute] position mouse
This commit is contained in:
Ryan Dwyer 2018-07-07 18:36:20 +10:00
parent 6595d07ec7
commit ab8a86369c
6 changed files with 208 additions and 17 deletions

View file

@ -1,4 +1,8 @@
#include <wlr/types/wlr_surface.h>
struct sway_container;
void desktop_damage_surface(struct wlr_surface *surface, double lx, double ly,
bool whole);
void desktop_damage_whole_container(struct sway_container *con);

View file

@ -97,4 +97,6 @@ void output_drag_icons_for_each_surface(struct wl_list *drag_icons,
struct sway_output *output, struct root_geometry *geo,
wlr_surface_iterator_func_t iterator, void *user_data);
struct sway_container *output_get_active_workspace(struct sway_output *output);
#endif

View file

@ -297,4 +297,10 @@ bool container_is_floating(struct sway_container *container);
*/
void container_get_box(struct sway_container *container, struct wlr_box *box);
/**
* Move a floating container to a new layout-local position.
*/
void container_floating_move_to(struct sway_container *con,
double lx, double ly);
#endif