1 #ifndef __BROADWAY_H__ 2 #define __BROADWAY_H__ 3 4 #include <glib.h> 5 #include <gio/gio.h> 6 #include "broadway-protocol.h" 7 #include "broadway-server.h" 8 9 typedef struct BroadwayOutput BroadwayOutput; 10 11 typedef enum { 12 BROADWAY_WS_CONTINUATION = 0, 13 BROADWAY_WS_TEXT = 1, 14 BROADWAY_WS_BINARY = 2, 15 BROADWAY_WS_CNX_CLOSE = 8, 16 BROADWAY_WS_CNX_PING = 9, 17 BROADWAY_WS_CNX_PONG = 0xa 18 } BroadwayWSOpCode; 19 20 BroadwayOutput *broadway_output_new (GOutputStream *out, 21 guint32 serial); 22 void broadway_output_free (BroadwayOutput *output); 23 int broadway_output_flush (BroadwayOutput *output); 24 int broadway_output_has_error (BroadwayOutput *output); 25 void broadway_output_set_next_serial (BroadwayOutput *output, 26 guint32 serial); 27 guint32 broadway_output_get_next_serial (BroadwayOutput *output); 28 void broadway_output_new_surface (BroadwayOutput *output, 29 int id, 30 int x, 31 int y, 32 int w, 33 int h); 34 void broadway_output_disconnected (BroadwayOutput *output); 35 void broadway_output_show_surface (BroadwayOutput *output, 36 int id); 37 void broadway_output_hide_surface (BroadwayOutput *output, 38 int id); 39 void broadway_output_raise_surface (BroadwayOutput *output, 40 int id); 41 void broadway_output_lower_surface (BroadwayOutput *output, 42 int id); 43 void broadway_output_destroy_surface (BroadwayOutput *output, 44 int id); 45 void broadway_output_roundtrip (BroadwayOutput *output, 46 int id, 47 guint32 tag); 48 void broadway_output_move_resize_surface (BroadwayOutput *output, 49 int id, 50 gboolean has_pos, 51 int x, 52 int y, 53 gboolean has_size, 54 int w, 55 int h); 56 void broadway_output_set_transient_for (BroadwayOutput *output, 57 int id, 58 int parent_id); 59 void broadway_output_surface_set_nodes (BroadwayOutput *output, 60 int id, 61 BroadwayNode *root, 62 BroadwayNode *old_root, 63 GHashTable *old_node_lookup); 64 void broadway_output_upload_texture (BroadwayOutput *output, 65 guint32 id, 66 GBytes *texture); 67 void broadway_output_release_texture (BroadwayOutput *output, 68 guint32 id); 69 void broadway_output_grab_pointer (BroadwayOutput *output, 70 int id, 71 gboolean owner_event); 72 guint32 broadway_output_ungrab_pointer (BroadwayOutput *output); 73 void broadway_output_pong (BroadwayOutput *output); 74 void broadway_output_set_show_keyboard (BroadwayOutput *output, 75 gboolean show); 76 77 #endif /* __BROADWAY_H__ */ 78