summaryrefslogtreecommitdiff
path: root/src/shared/include/winact.h
blob: 9486efc6c1d46bb68c88224b97d9bda5c821a113 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#ifndef SHARED_WINACT_H
#define SHARED_WINACT_H

#include <keypack.h>

struct mouse_packet {
  uint16_t y;
  uint16_t x;
  enum mouse_button {LEFT, RIGHT, MIDDLE} which;
};

struct window_action {
  enum {
    NOT_READY,
    KEY_DOWN,
    KEY_UP,
    FOCUS_ENTER,
    FOCUS_LEAVE,
    MOUSE_DOWN,
    MOUSE_UP
  } action_type;
  union {
    struct key_packet as_key;
    struct mouse_packet as_mouse;
  };
} __attribute__ ((__packed__));

#endif