2023-02-05 19:29:24 +00:00
|
|
|
/* SPDX-License-Identifier: GPL-2.0-only */
|
2023-05-13 16:10:33 +03:00
|
|
|
#ifndef LABWC_VIEW_IMPL_COMMON_H
|
|
|
|
|
#define LABWC_VIEW_IMPL_COMMON_H
|
2023-02-05 19:29:24 +00:00
|
|
|
/*
|
|
|
|
|
* Common code for view->impl functions
|
|
|
|
|
*
|
|
|
|
|
* Please note: only xdg-shell-toplevel-view and xwayland-view view_impl
|
|
|
|
|
* functions should call these functions.
|
|
|
|
|
*/
|
2023-08-05 19:02:05 +01:00
|
|
|
|
|
|
|
|
enum z_direction {
|
|
|
|
|
LAB_TO_FRONT,
|
|
|
|
|
LAB_TO_BACK,
|
|
|
|
|
};
|
|
|
|
|
|
2023-02-25 12:05:22 -05:00
|
|
|
struct view;
|
2023-02-05 19:29:24 +00:00
|
|
|
|
|
|
|
|
void view_impl_move_to_front(struct view *view);
|
2023-03-25 16:38:43 +00:00
|
|
|
void view_impl_move_to_back(struct view *view);
|
2023-08-05 19:02:05 +01:00
|
|
|
void view_impl_move_sub_views(struct view *parent, enum z_direction z_direction);
|
2023-02-05 19:29:24 +00:00
|
|
|
void view_impl_map(struct view *view);
|
|
|
|
|
|
2023-02-25 12:05:22 -05:00
|
|
|
/*
|
|
|
|
|
* Updates view geometry at commit based on current position/size,
|
|
|
|
|
* pending move/resize, and committed surface size. The computed
|
|
|
|
|
* position may not match pending.x/y exactly in some cases.
|
|
|
|
|
*/
|
|
|
|
|
void view_impl_apply_geometry(struct view *view, int w, int h);
|
|
|
|
|
|
2023-05-13 16:10:33 +03:00
|
|
|
#endif /* LABWC_VIEW_IMPL_COMMON_H */
|