mirror of
https://github.com/swaywm/sway.git
synced 2025-11-04 13:29:52 -05:00
Implement floating
This commit is contained in:
parent
1132efe42e
commit
1f2e399ade
21 changed files with 572 additions and 169 deletions
|
|
@ -75,8 +75,13 @@ struct sway_container {
|
|||
enum sway_container_layout layout;
|
||||
enum sway_container_layout prev_layout;
|
||||
|
||||
// Allow the container to be automatically removed if it's empty. True by
|
||||
// default, false for the magic floating container that each workspace has.
|
||||
bool reapable;
|
||||
|
||||
// Saves us from searching the list of children/floating in the parent
|
||||
bool is_floating;
|
||||
bool is_sticky;
|
||||
|
||||
// For C_ROOT, this has no meaning
|
||||
// For C_OUTPUT, this is the output position in layout coordinates
|
||||
|
|
@ -173,6 +178,13 @@ struct sway_container *container_at(struct sway_container *container,
|
|||
double ox, double oy, struct wlr_surface **surface,
|
||||
double *sx, double *sy);
|
||||
|
||||
/**
|
||||
* Same as container_at, but only checks floating views and expects coordinates
|
||||
* to be layout coordinates, as that's what floating views use.
|
||||
*/
|
||||
struct sway_container *floating_container_at(double lx, double ly,
|
||||
struct wlr_surface **surface, double *sx, double *sy);
|
||||
|
||||
/**
|
||||
* Apply the function for each descendant of the container breadth first.
|
||||
*/
|
||||
|
|
@ -229,4 +241,14 @@ void container_notify_subtree_changed(struct sway_container *container);
|
|||
*/
|
||||
size_t container_titlebar_height(void);
|
||||
|
||||
void container_set_floating(struct sway_container *container, bool enable);
|
||||
|
||||
void container_set_geometry_from_view(struct sway_container *container);
|
||||
|
||||
/**
|
||||
* Determine if the given container is itself floating or has a floating
|
||||
* ancestor.
|
||||
*/
|
||||
bool container_self_or_parent_floating(struct sway_container *container);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue