#include <xkbcommon/xkbcommon.h>
#include "config/keybind.h"
#include "config/rcxml.h"
+#include "ssd.h"
#define XCURSOR_DEFAULT "left_ptr"
#define XCURSOR_SIZE 24
*/
struct view *desktop_surface_and_view_at(struct server *server, double lx,
double ly, struct wlr_surface **surface, double *sx, double *sy,
- int *view_area);
+ enum ssd_part_type *view_area);
struct view *desktop_view_at_cursor(struct server *server);
#ifndef __LABWC_SSD_H
#define __LABWC_SSD_H
-#include "labwc.h"
-
/*
* Sequence these according to the order they should be processed for
* press and hover events. Bear in mind that some of their respective
LAB_SSD_END_MARKER
};
+/*
+ * Defer including labwc.h because it is using enum ssd_part_type.
+ * This is an issue for headers like mousebind.h which only includes
+ * ssd.h but does not include labwc.h.
+ */
+#include "labwc.h"
+
struct ssd_part {
struct wlr_box box;
enum ssd_part_type type;
{
double sx, sy;
struct wlr_surface *surface;
- int view_area = LAB_SSD_NONE;
+ enum ssd_part_type view_area = LAB_SSD_NONE;
desktop_surface_and_view_at(seat->server, seat->cursor->x,
seat->cursor->y, &surface, &sx, &sy, &view_area);
double sx, sy;
struct wlr_seat *wlr_seat = server->seat.seat;
struct wlr_surface *surface = NULL;
- int view_area = LAB_SSD_NONE;
+ enum ssd_part_type view_area = LAB_SSD_NONE;
struct view *view = desktop_surface_and_view_at(server,
server->seat.cursor->x, server->seat.cursor->y, &surface,
&sx, &sy, &view_area);
double sx, sy;
struct wlr_surface *surface;
- int view_area = LAB_SSD_NONE;
+ enum ssd_part_type view_area = LAB_SSD_NONE;
uint32_t resize_edges;
/* bindings to the Frame context swallow mouse events if activated */
struct view *
desktop_surface_and_view_at(struct server *server, double lx, double ly,
struct wlr_surface **surface, double *sx, double *sy,
- int *view_area)
+ enum ssd_part_type *view_area)
{
struct wlr_output *wlr_output = wlr_output_layout_output_at(
server->output_layout, lx, ly);
{
double sx, sy;
struct wlr_surface *surface;
- int view_area = LAB_SSD_NONE;
+ enum ssd_part_type view_area = LAB_SSD_NONE;
return desktop_surface_and_view_at(server,
server->seat.cursor->x, server->seat.cursor->y,