2023-08-05 23:53:01 +02:00
|
|
|
/* SPDX-License-Identifier: GPL-2.0-only */
|
|
|
|
|
#ifndef LABWC_SNAP_H
|
|
|
|
|
#define LABWC_SNAP_H
|
|
|
|
|
|
2025-09-02 23:02:27 -04:00
|
|
|
#include "common/edge.h"
|
2023-08-05 23:53:01 +02:00
|
|
|
|
2025-09-02 23:02:27 -04:00
|
|
|
struct view;
|
2023-08-05 23:53:01 +02:00
|
|
|
struct wlr_box;
|
|
|
|
|
|
2024-01-23 13:44:40 -05:00
|
|
|
void snap_move_to_edge(struct view *view,
|
2025-08-17 16:01:50 -04:00
|
|
|
enum lab_edge direction, bool snap_to_windows, int *dx, int *dy);
|
2023-08-05 23:53:01 +02:00
|
|
|
|
2024-01-23 13:44:40 -05:00
|
|
|
void snap_grow_to_next_edge(struct view *view,
|
2025-08-17 16:01:50 -04:00
|
|
|
enum lab_edge direction, struct wlr_box *geo);
|
2024-01-23 13:44:40 -05:00
|
|
|
|
|
|
|
|
void snap_shrink_to_next_edge(struct view *view,
|
2025-08-17 16:01:50 -04:00
|
|
|
enum lab_edge direction, struct wlr_box *geo);
|
2023-08-05 23:53:01 +02:00
|
|
|
|
2024-04-02 15:58:50 -04:00
|
|
|
void snap_invalidate_edge_cache(struct view *view);
|
|
|
|
|
void snap_update_cache_geometry(struct view *view);
|
|
|
|
|
|
2023-08-05 23:53:01 +02:00
|
|
|
#endif /* LABWC_SNAP_H */
|