]> Pileus Git - ~andy/gtk/blob - gdk/broadway/broadway.h
broadway: Remove separate browser windows hack
[~andy/gtk] / gdk / broadway / broadway.h
1 #ifndef __BROADWAY_H__
2 #define __BROADWAY_H__
3
4 #include <glib.h>
5 #include <gio/gio.h>
6
7 typedef struct BroadwayOutput BroadwayOutput;
8
9 typedef struct  {
10     int x, y;
11     int width, height;
12 } BroadwayRect;
13
14 typedef enum {
15   BROADWAY_WS_CONTINUATION = 0,
16   BROADWAY_WS_TEXT = 1,
17   BROADWAY_WS_BINARY = 2,
18   BROADWAY_WS_CNX_CLOSE = 8,
19   BROADWAY_WS_CNX_PING = 9,
20   BROADWAY_WS_CNX_PONG = 0xa
21 } BroadwayWSOpCode;
22
23 BroadwayOutput *broadway_output_new             (GOutputStream  *out,
24                                                  guint32         serial,
25                                                  gboolean        proto_v7_plus,
26                                                  gboolean        binary);
27 void            broadway_output_free            (BroadwayOutput *output);
28 int             broadway_output_flush           (BroadwayOutput *output);
29 int             broadway_output_has_error       (BroadwayOutput *output);
30 guint32         broadway_output_get_next_serial (BroadwayOutput *output);
31 void            broadway_output_new_surface     (BroadwayOutput *output,
32                                                  int             id,
33                                                  int             x,
34                                                  int             y,
35                                                  int             w,
36                                                  int             h,
37                                                  gboolean        is_temp);
38 void            broadway_output_show_surface    (BroadwayOutput *output,
39                                                  int             id);
40 void            broadway_output_hide_surface    (BroadwayOutput *output,
41                                                  int             id);
42 void            broadway_output_destroy_surface (BroadwayOutput *output,
43                                                  int             id);
44 void            broadway_output_move_resize_surface (BroadwayOutput *output,
45                                                      int             id,
46                                                      gboolean        has_pos,
47                                                      int             x,
48                                                      int             y,
49                                                      gboolean        has_size,
50                                                      int             w,
51                                                      int             h);
52 void            broadway_output_set_transient_for (BroadwayOutput *output,
53                                                    int             id,
54                                                    int             parent_id);
55 void            broadway_output_put_rgb         (BroadwayOutput *output,
56                                                  int             id,
57                                                  int             x,
58                                                  int             y,
59                                                  int             w,
60                                                  int             h,
61                                                  int             byte_stride,
62                                                  void           *data);
63 void            broadway_output_put_rgba        (BroadwayOutput *output,
64                                                  int             id,
65                                                  int             x,
66                                                  int             y,
67                                                  int             w,
68                                                  int             h,
69                                                  int             byte_stride,
70                                                  void           *data);
71 void            broadway_output_surface_flush   (BroadwayOutput *output,
72                                                  int             id);
73 void            broadway_output_copy_rectangles (BroadwayOutput *output,
74                                                  int             id,
75                                                  BroadwayRect   *rects,
76                                                  int             n_rects,
77                                                  int             dx,
78                                                  int             dy);
79 void            broadway_output_grab_pointer    (BroadwayOutput *output,
80                                                  int id,
81                                                  gboolean owner_event);
82 guint32         broadway_output_ungrab_pointer  (BroadwayOutput *output);
83 void            broadway_output_pong            (BroadwayOutput *output);
84
85 #endif /* __BROADWAY_H__ */