]> Pileus Git - ~andy/gtk/blobdiff - gdk/broadway/broadway.h
GdkBroadwayDisplay: initialize GError before using it
[~andy/gtk] / gdk / broadway / broadway.h
index 0f7a7eb9c9755f89113151cc6af7c7b107fb64ee..e44f332acc6e8b46791a9acc639ce5fb7b8534ee 100644 (file)
@@ -1,3 +1,6 @@
+#include <glib.h>
+#include <gio/gio.h>
+
 typedef struct BroadwayOutput BroadwayOutput;
 
 typedef struct  {
@@ -5,30 +8,47 @@ typedef struct  {
     int width, height;
 } BroadwayRect;
 
-BroadwayOutput *broadway_output_new             (int             fd);
+typedef enum {
+  BROADWAY_WS_CONTINUATION = 0,
+  BROADWAY_WS_TEXT = 1,
+  BROADWAY_WS_BINARY = 2,
+  BROADWAY_WS_CNX_CLOSE = 8,
+  BROADWAY_WS_CNX_PING = 9,
+  BROADWAY_WS_CNX_PONG = 0xa
+} BroadwayWSOpCode;
+
+BroadwayOutput *broadway_output_new             (GOutputStream  *out,
+                                                guint32         serial,
+                                                gboolean        proto_v7_plus,
+                                                gboolean        binary);
 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);
+                                                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_surface    (BroadwayOutput *output,
-                                                int             id,
-                                                int             x,
-                                                int             y);
-void            broadway_output_resize_surface  (BroadwayOutput *output,
-                                                int             id,
-                                                int             w,
-                                                int             h);
+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,
@@ -45,9 +65,16 @@ void            broadway_output_put_rgba        (BroadwayOutput *output,
                                                 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);
+void            broadway_output_pong            (BroadwayOutput *output);