-
Notifications
You must be signed in to change notification settings - Fork 11
/
systray.h
37 lines (28 loc) · 880 Bytes
/
systray.h
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
29
30
31
32
33
34
35
36
37
/* See LICENSE file for copyright and license details. */
#ifndef SYSTRAY_H_
#define SYSTRAY_H_
#include <stdbool.h>
#include <xcb/xcb.h>
#include "util.h"
typedef struct {
unsigned long version;
unsigned long flags;
} xembed_info_t;
typedef struct _systray_item_t {
xcb_window_t win;
xembed_info_t info;
int x;
bool mapped;
list_head head;
} systray_item_t;
typedef struct _systray_t systray_t;
systray_t *systray_new(xcb_connection_t *, xcb_screen_t *, xcb_window_t);
int systray_handle(systray_t *, xcb_generic_event_t *);
void systray_destroy(systray_t *);
void systray_remove_item(systray_t *, xcb_window_t);
xcb_window_t systray_get_window(systray_t *);
xcb_connection_t *systray_get_connection(systray_t *);
list_head *systray_get_items(systray_t *);
int systray_icon_size(systray_t *);
void systray_set_icon_size(systray_t *, int);
#endif /* SYSTRAY_H_ */