forked from AuroraMiddleware/gtk
0abd5e2767
The zlib compressed xmlhttprequest thing was a nice hack, but it doesn't really work in production. Its not portable, doesn't have enought API (missing notification for closed sockets) and having to synchronize between two different connections in a reliable way is a pain. So, we're going everything over the websocket. This is a pure switch, but after this we want to modify the protocol to work better over the uncompressed utf8 transport of websockets.
69 lines
2.5 KiB
C
69 lines
2.5 KiB
C
#include <glib.h>
|
|
#include <gio/gio.h>
|
|
|
|
typedef struct BroadwayOutput BroadwayOutput;
|
|
|
|
typedef struct {
|
|
int x, y;
|
|
int width, height;
|
|
} BroadwayRect;
|
|
|
|
BroadwayOutput *broadway_output_new (GOutputStream *out,
|
|
guint32 serial);
|
|
void broadway_output_free (BroadwayOutput *output);
|
|
int broadway_output_flush (BroadwayOutput *output);
|
|
int broadway_output_has_error (BroadwayOutput *output);
|
|
guint32 broadway_output_get_next_serial (BroadwayOutput *output);
|
|
void broadway_output_new_surface (BroadwayOutput *output,
|
|
int id,
|
|
int x,
|
|
int y,
|
|
int w,
|
|
int h,
|
|
gboolean is_temp);
|
|
void broadway_output_show_surface (BroadwayOutput *output,
|
|
int id);
|
|
void broadway_output_hide_surface (BroadwayOutput *output,
|
|
int id);
|
|
void broadway_output_destroy_surface (BroadwayOutput *output,
|
|
int id);
|
|
void broadway_output_move_resize_surface (BroadwayOutput *output,
|
|
int id,
|
|
gboolean has_pos,
|
|
int x,
|
|
int y,
|
|
gboolean has_size,
|
|
int w,
|
|
int h);
|
|
void broadway_output_set_transient_for (BroadwayOutput *output,
|
|
int id,
|
|
int parent_id);
|
|
void broadway_output_put_rgb (BroadwayOutput *output,
|
|
int id,
|
|
int x,
|
|
int y,
|
|
int w,
|
|
int h,
|
|
int byte_stride,
|
|
void *data);
|
|
void broadway_output_put_rgba (BroadwayOutput *output,
|
|
int id,
|
|
int x,
|
|
int y,
|
|
int w,
|
|
int h,
|
|
int byte_stride,
|
|
void *data);
|
|
void broadway_output_surface_flush (BroadwayOutput *output,
|
|
int id);
|
|
void broadway_output_copy_rectangles (BroadwayOutput *output,
|
|
int id,
|
|
BroadwayRect *rects,
|
|
int n_rects,
|
|
int dx,
|
|
int dy);
|
|
void broadway_output_grab_pointer (BroadwayOutput *output,
|
|
int id,
|
|
gboolean owner_event);
|
|
guint32 broadway_output_ungrab_pointer (BroadwayOutput *output);
|