Working glyph rendering (except for transparent text)
[libguac-client-rdp.git] / include / client.h
index e56dbb6..246834f 100644 (file)
 
 #define RDP_DEFAULT_PORT 3389
 
-typedef struct guac_rdp_color {
-    int red;
-    int green;
-    int blue;
-} guac_rdp_color;
-
 typedef struct rdp_guac_client_data {
 
     freerdp* rdp_inst;
@@ -60,12 +54,21 @@ typedef struct rdp_guac_client_data {
 
     int mouse_button_mask;
 
-    guac_rdp_color foreground;
-    guac_rdp_color background;
+    /**
+     * Cairo surface which will receive all drawn glyphs.
+     */
+    cairo_surface_t* glyph_surface;
+
+    /**
+     * Cairo instance for drawing to glyph surface.
+     */
+    cairo_t* glyph_cairo;
 
     const guac_layer* current_surface;
 
-    const guac_rdp_keysym_scancode_map* keysym_scancodes;
+    guac_rdp_static_keymap keymap;
+
+    guac_rdp_keysym_state_map keysym_state;
 
 } rdp_guac_client_data;