diff options
author | Robert Ancell <robert.ancell@canonical.com> | 2012-01-11 16:57:15 +0100 |
---|---|---|
committer | Robert Ancell <robert.ancell@canonical.com> | 2012-01-11 16:57:15 +0100 |
commit | 3573349932fc2df7378281969b3170dd258613d2 (patch) | |
tree | 24541f8f0001bf13b02539e639510ce03e9aeafa | |
parent | 33225c3a2da80d7f3a315996fbf8cbd78cfde279 (diff) | |
download | lightdm-3573349932fc2df7378281969b3170dd258613d2.tar.gz |
Remove test X server messages not used, this is now in Xig
-rw-r--r-- | tests/src/x-server.c | 1275 |
1 files changed, 1 insertions, 1274 deletions
diff --git a/tests/src/x-server.c b/tests/src/x-server.c index 712f5a17..a8c5aee0 100644 --- a/tests/src/x-server.c +++ b/tests/src/x-server.c @@ -107,35 +107,7 @@ struct XVisualPrivate enum { X_CLIENT_CONNECT, - X_CLIENT_CREATE_WINDOW, - X_CLIENT_CHANGE_WINDOW_ATTRIBUTES, - X_CLIENT_GET_WINDOW_ATTRIBUTES, - X_CLIENT_DESTROY_WINDOW, - X_CLIENT_DESTROY_SUBWINDOWS, - X_CLIENT_CHANGE_SET_SAVE, - X_CLIENT_REPARENT_WINDOW, - X_CLIENT_MAP_WINDOW, - X_CLIENT_MAP_SUBWINDOWS, - X_CLIENT_UNMAP_WINDOW, - X_CLIENT_UNMAP_SUBWINDOWS, - X_CLIENT_CONFIGURE_WINDOW, - X_CLIENT_CIRCULATE_WINDOW, - X_CLIENT_GET_GEOMETRY, - X_CLIENT_QUERY_TREE, X_CLIENT_INTERN_ATOM, - X_CLIENT_GET_ATOM_NAME, - X_CLIENT_CHANGE_PROPERTY, - X_CLIENT_DELETE_PROPERTY, - X_CLIENT_GET_PROPERTY, - X_CLIENT_LIST_PROPERTIES, - X_CLIENT_CREATE_PIXMAP, - X_CLIENT_FREE_PIXMAP, - X_CLIENT_CREATE_GC, - X_CLIENT_CHANGE_GC, - X_CLIENT_COPY_GC, - X_CLIENT_FREE_GC, - X_CLIENT_QUERY_EXTENSION, - X_CLIENT_BELL, X_CLIENT_DISCONNECTED, X_CLIENT_LAST_SIGNAL }; @@ -301,132 +273,6 @@ x_client_send_success (XClient *client) } void -x_client_send_get_window_attributes_response (XClient *client, guint16 sequence_number, guint8 backing_store, guint32 visual, guint16 class, guint8 bit_gravity, guint8 win_gravity, guint32 backing_planes, guint32 backing_pixel, gboolean save_under, gboolean map_is_installed, guint8 map_state, gboolean override_redirect, guint32 colormap, guint32 all_event_mask, guint32 your_event_mask, guint16 do_not_propogate_mask) -{ - guint8 buffer[MAXIMUM_REQUEST_LENGTH]; - gsize n_written = 0; - - write_card8 (buffer, MAXIMUM_REQUEST_LENGTH, Reply, &n_written); - write_card8 (buffer, MAXIMUM_REQUEST_LENGTH, backing_store, &n_written); - write_card16 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, sequence_number, &n_written); - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, 3, &n_written); - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, visual, &n_written); - write_card16 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, class, &n_written); - write_card8 (buffer, MAXIMUM_REQUEST_LENGTH, bit_gravity, &n_written); - write_card8 (buffer, MAXIMUM_REQUEST_LENGTH, win_gravity, &n_written); - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, backing_planes, &n_written); - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, backing_pixel, &n_written); - write_card8 (buffer, MAXIMUM_REQUEST_LENGTH, save_under ? 1 : 0, &n_written); - write_card8 (buffer, MAXIMUM_REQUEST_LENGTH, map_is_installed ? 1 : 0, &n_written); - write_card8 (buffer, MAXIMUM_REQUEST_LENGTH, map_state, &n_written); - write_card8 (buffer, MAXIMUM_REQUEST_LENGTH, override_redirect ? 1 : 0, &n_written); - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, colormap, &n_written); - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, all_event_mask, &n_written); - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, your_event_mask, &n_written); - write_card16 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, do_not_propogate_mask, &n_written); - write_padding (buffer, MAXIMUM_REQUEST_LENGTH, 2, &n_written); - - send (g_io_channel_unix_get_fd (client->priv->channel), buffer, n_written, 0); -} - -void -x_client_send_get_geometry_response (XClient *client, guint16 sequence_number, guint8 depth, guint32 root, gint16 x, gint16 y, guint16 width, guint16 height, guint16 border_width) -{ - guint8 buffer[MAXIMUM_REQUEST_LENGTH]; - gsize n_written = 0; - - write_card8 (buffer, MAXIMUM_REQUEST_LENGTH, Reply, &n_written); - write_padding (buffer, MAXIMUM_REQUEST_LENGTH, depth, &n_written); - write_card16 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, sequence_number, &n_written); - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, 0, &n_written); - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, root, &n_written); - write_card16 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, x, &n_written); - write_card16 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, y, &n_written); - write_card16 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, width, &n_written); - write_card16 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, height, &n_written); - write_card16 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, border_width, &n_written); - write_padding (buffer, MAXIMUM_REQUEST_LENGTH, 10, &n_written); - - send (g_io_channel_unix_get_fd (client->priv->channel), buffer, n_written, 0); -} - -void -x_client_send_query_tree_response (XClient *client, guint16 sequence_number, guint32 root, guint32 parent, guint32* children, guint16 children_length) -{ - guint8 buffer[MAXIMUM_REQUEST_LENGTH]; - gsize n_written = 0, i; - - write_card8 (buffer, MAXIMUM_REQUEST_LENGTH, Reply, &n_written); - write_padding (buffer, MAXIMUM_REQUEST_LENGTH, 1, &n_written); - write_card16 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, sequence_number, &n_written); - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, children_length, &n_written); - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, root, &n_written); - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, parent, &n_written); - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, children_length, &n_written); - write_padding (buffer, MAXIMUM_REQUEST_LENGTH, 14, &n_written); - for (i = 0; i < children_length; i++) - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, children[i], &n_written); - - send (g_io_channel_unix_get_fd (client->priv->channel), buffer, n_written, 0); -} - -void -x_client_send_intern_atom_response (XClient *client, guint16 sequence_number, guint32 atom) -{ - guint8 buffer[MAXIMUM_REQUEST_LENGTH]; - gsize n_written = 0; - - write_card8 (buffer, MAXIMUM_REQUEST_LENGTH, Reply, &n_written); - write_padding (buffer, MAXIMUM_REQUEST_LENGTH, 1, &n_written); - write_card16 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, sequence_number, &n_written); - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, 0, &n_written); - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, atom, &n_written); - write_padding (buffer, MAXIMUM_REQUEST_LENGTH, 20, &n_written); - - send (g_io_channel_unix_get_fd (client->priv->channel), buffer, n_written, 0); -} - -void -x_client_send_get_property_response (XClient *client, guint16 sequence_number, guint8 format, guint32 type, guint32 bytes_after, const guint8 *data, guint32 length) -{ - guint8 buffer[MAXIMUM_REQUEST_LENGTH]; - gsize n_written = 0; - - write_card8 (buffer, MAXIMUM_REQUEST_LENGTH, Reply, &n_written); - write_card8 (buffer, MAXIMUM_REQUEST_LENGTH, format, &n_written); - write_card16 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, sequence_number, &n_written); - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, 0, &n_written); - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, type, &n_written); - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, bytes_after, &n_written); - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, length, &n_written); - write_padding (buffer, MAXIMUM_REQUEST_LENGTH, 12, &n_written); - write_string8 (buffer, MAXIMUM_REQUEST_LENGTH, data, length, &n_written); - write_padding (buffer, MAXIMUM_REQUEST_LENGTH, pad (n_written), &n_written); - // FIXME: Update length field - - send (g_io_channel_unix_get_fd (client->priv->channel), buffer, n_written, 0); -} - -void -x_client_send_query_extension_response (XClient *client, guint16 sequence_number, gboolean present, guint8 major_opcode, guint8 first_event, guint8 first_error) -{ - guint8 buffer[MAXIMUM_REQUEST_LENGTH]; - gsize n_written = 0; - - write_card8 (buffer, MAXIMUM_REQUEST_LENGTH, Reply, &n_written); - write_padding (buffer, MAXIMUM_REQUEST_LENGTH, 1, &n_written); - write_card16 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, sequence_number, &n_written); - write_card32 (buffer, MAXIMUM_REQUEST_LENGTH, client->priv->byte_order, 0, &n_written); - write_card8 (buffer, MAXIMUM_REQUEST_LENGTH, present ? 1 : 0, &n_written); - write_card8 (buffer, MAXIMUM_REQUEST_LENGTH, major_opcode, &n_written); - write_card8 (buffer, MAXIMUM_REQUEST_LENGTH, first_event, &n_written); - write_card8 (buffer, MAXIMUM_REQUEST_LENGTH, first_error, &n_written); - write_padding (buffer, MAXIMUM_REQUEST_LENGTH, 20, &n_written); - - send (g_io_channel_unix_get_fd (client->priv->channel), buffer, n_written, 0); -} - -void x_client_disconnect (XClient *client) { g_io_channel_shutdown (client->priv->channel, TRUE, NULL); @@ -459,126 +305,6 @@ x_client_class_init (XClientClass *klass) NULL, NULL, g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_CHANGE_WINDOW_ATTRIBUTES] = - g_signal_new ("change-window-attributes", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, change_window_attributes), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_GET_WINDOW_ATTRIBUTES] = - g_signal_new ("get-window-attributes", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, get_window_attributes), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_CREATE_WINDOW] = - g_signal_new ("create-window", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, create_window), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_DESTROY_WINDOW] = - g_signal_new ("destroy-window", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, destroy_window), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_DESTROY_SUBWINDOWS] = - g_signal_new ("destroy-subwindows", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, destroy_subwindows), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_CHANGE_SET_SAVE] = - g_signal_new ("change-set-save", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, change_set_save), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_REPARENT_WINDOW] = - g_signal_new ("reparent-window", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, reparent_window), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_MAP_WINDOW] = - g_signal_new ("map-window", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, map_window), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_MAP_SUBWINDOWS] = - g_signal_new ("map-subwindows", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, map_subwindows), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_UNMAP_WINDOW] = - g_signal_new ("unmap-window", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, unmap_window), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_UNMAP_SUBWINDOWS] = - g_signal_new ("unmap-subwindows", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, unmap_subwindows), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_CONFIGURE_WINDOW] = - g_signal_new ("configure-window", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, configure_window), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_CIRCULATE_WINDOW] = - g_signal_new ("circulate-window", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, circulate_window), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_GET_GEOMETRY] = - g_signal_new ("get-geometry", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, get_geometry), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_QUERY_TREE] = - g_signal_new ("query-tree", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, query_tree), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); x_client_signals[X_CLIENT_INTERN_ATOM] = g_signal_new ("intern-atom", G_TYPE_FROM_CLASS (klass), @@ -587,110 +313,6 @@ x_client_class_init (XClientClass *klass) NULL, NULL, g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_GET_ATOM_NAME] = - g_signal_new ("get-atom-name", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, get_atom_name), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_CHANGE_PROPERTY] = - g_signal_new ("change-property", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, change_property), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_DELETE_PROPERTY] = - g_signal_new ("delete-property", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, delete_property), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_GET_PROPERTY] = - g_signal_new ("get_property", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, get_property), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_LIST_PROPERTIES] = - g_signal_new ("list-properties", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, list_properties), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_CREATE_PIXMAP] = - g_signal_new ("create_pixmap", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, create_pixmap), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_FREE_PIXMAP] = - g_signal_new ("free_pixmap", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, free_pixmap), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_CREATE_GC] = - g_signal_new ("create-gc", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, create_gc), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_CHANGE_GC] = - g_signal_new ("change-gc", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, change_gc), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_COPY_GC] = - g_signal_new ("copy-gc", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, copy_gc), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_FREE_GC] = - g_signal_new ("free-gc", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, free_gc), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_QUERY_EXTENSION] = - g_signal_new ("query-extension", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, query_extension), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); - x_client_signals[X_CLIENT_BELL] = - g_signal_new ("bell", - G_TYPE_FROM_CLASS (klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (XClientClass, bell), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); x_client_signals[X_CLIENT_DISCONNECTED] = g_signal_new ("disconnected", G_TYPE_FROM_CLASS (klass), @@ -812,312 +434,11 @@ decode_connection_request (XClient *client, const guint8 *buffer, gssize buffer_ } static void -decode_create_window (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XCreateWindow *message; - - message = g_malloc0 (sizeof (XCreateWindow)); - message->sequence_number = sequence_number; - message->depth = data; - message->wid = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->parent = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->x = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - message->y = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - message->width = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - message->height = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - message->border_width = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - message->class = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - message->visual = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->value_mask = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_background_pixmap) != 0) - message->background_pixmap = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_background_pixel) != 0) - message->background_pixel = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_border_pixmap) != 0) - message->border_pixmap = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_border_pixel) != 0) - message->border_pixel = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_bit_gravity) != 0) - message->bit_gravity = read_card8 (buffer, buffer_length, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_win_gravity) != 0) - message->win_gravity = read_card8 (buffer, buffer_length, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_backing_store) != 0) - message->backing_store = read_card8 (buffer, buffer_length, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_backing_planes) != 0) - message->backing_planes = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_backing_pixel) != 0) - message->backing_pixel = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_override_redirect) != 0) - message->override_redirect = read_card8 (buffer, buffer_length, offset) != 0; - if ((message->value_mask & X_WINDOW_VALUE_MASK_save_under) != 0) - message->save_under = read_card8 (buffer, buffer_length, offset) != 0; - if ((message->value_mask & X_WINDOW_VALUE_MASK_event_mask) != 0) - message->event_mask = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_do_not_propagate_mask) != 0) - message->do_not_propogate_mask = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_colormap) != 0) - message->colormap = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_cursor) != 0) - message->cursor = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals [X_CLIENT_CREATE_WINDOW], 0, message); - - g_free (message); -} - -static void -decode_change_window_attributes (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XChangeWindowAttributes *message; - - message = g_malloc0 (sizeof (XChangeWindowAttributes)); - message->sequence_number = sequence_number; - message->window = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->value_mask = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_background_pixmap) != 0) - message->background_pixmap = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_background_pixel) != 0) - message->background_pixel = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_border_pixmap) != 0) - message->border_pixmap = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_border_pixel) != 0) - message->border_pixel = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_bit_gravity) != 0) - message->bit_gravity = read_card8 (buffer, buffer_length, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_win_gravity) != 0) - message->win_gravity = read_card8 (buffer, buffer_length, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_backing_store) != 0) - message->backing_store = read_card8 (buffer, buffer_length, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_backing_planes) != 0) - message->backing_planes = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_backing_pixel) != 0) - message->backing_pixel = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_override_redirect) != 0) - message->override_redirect = read_card8 (buffer, buffer_length, offset) != 0; - if ((message->value_mask & X_WINDOW_VALUE_MASK_save_under) != 0) - message->save_under = read_card8 (buffer, buffer_length, offset) != 0; - if ((message->value_mask & X_WINDOW_VALUE_MASK_event_mask) != 0) - message->event_mask = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_do_not_propagate_mask) != 0) - message->do_not_propogate_mask = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_colormap) != 0) - message->colormap = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_WINDOW_VALUE_MASK_cursor) != 0) - message->cursor = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals [X_CLIENT_CHANGE_WINDOW_ATTRIBUTES], 0, message); - - g_free (message); -} - -static void -decode_get_window_attributes (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XGetWindowAttributes *message; - - message = g_malloc0 (sizeof (XGetWindowAttributes)); - message->sequence_number = sequence_number; - message->window = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals [X_CLIENT_GET_WINDOW_ATTRIBUTES], 0, message); - - g_free (message); -} - -static void -decode_destroy_window (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XDestroyWindow *message; - - message = g_malloc0 (sizeof (XDestroyWindow)); - message->sequence_number = sequence_number; - message->window = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals [X_CLIENT_DESTROY_WINDOW], 0, message); - - g_free (message); -} - -static void -decode_destroy_subwindows (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XDestroySubwindows *message; - - message = g_malloc0 (sizeof (XDestroySubwindows)); - message->sequence_number = sequence_number; - message->window = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals [X_CLIENT_DESTROY_SUBWINDOWS], 0, message); - - g_free (message); -} - -static void -decode_change_set_save (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XChangeSetSave *message; - - message = g_malloc (sizeof (XChangeSetSave)); - message->sequence_number = sequence_number; - message->mode = data; - message->window = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals [X_CLIENT_CHANGE_SET_SAVE], 0, message); - - g_free (message); -} - -static void -decode_reparent_window (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XReparentWindow *message; - - message = g_malloc (sizeof (XReparentWindow)); - message->sequence_number = sequence_number; - message->window = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->parent = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->x = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - message->y = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals [X_CLIENT_REPARENT_WINDOW], 0, message); - - g_free (message); -} - -static void -decode_map_window (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XMapWindow *message; - - message = g_malloc0 (sizeof (XMapWindow)); - message->sequence_number = sequence_number; - message->window = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals [X_CLIENT_MAP_WINDOW], 0, message); - - g_free (message); -} - -static void -decode_map_subwindows (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XMapSubwindows *message; - - message = g_malloc0 (sizeof (XMapSubwindows)); - message->sequence_number = sequence_number; - message->window = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals [X_CLIENT_MAP_SUBWINDOWS], 0, message); - - g_free (message); -} - -static void -decode_unmap_window (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XUnmapWindow *message; - - message = g_malloc0 (sizeof (XUnmapWindow)); - message->sequence_number = sequence_number; - message->window = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals [X_CLIENT_UNMAP_WINDOW], 0, message); - - g_free (message); -} - -static void -decode_unmap_subwindows (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XUnmapSubwindows *message; - - message = g_malloc0 (sizeof (XUnmapSubwindows)); - message->sequence_number = sequence_number; - message->window = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals [X_CLIENT_UNMAP_SUBWINDOWS], 0, message); - - g_free (message); -} - -static void -decode_configure_window (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XConfigureWindow *message; - - message = g_malloc0 (sizeof (XConfigureWindow)); - message->sequence_number = sequence_number; - message->window = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->value_mask = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_CONFIGURE_WINDOW_VALUE_MASK_x) != 0) - message->x = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_CONFIGURE_WINDOW_VALUE_MASK_y) != 0) - message->y = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_CONFIGURE_WINDOW_VALUE_MASK_width) != 0) - message->width = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_CONFIGURE_WINDOW_VALUE_MASK_height) != 0) - message->height = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_CONFIGURE_WINDOW_VALUE_MASK_border_width) != 0) - message->border_width = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_CONFIGURE_WINDOW_VALUE_MASK_sibling) != 0) - message->sibling = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_CONFIGURE_WINDOW_VALUE_MASK_stack_mode) != 0) - message->stack_mode = read_card8 (buffer, buffer_length, offset); - - g_signal_emit (client, x_client_signals [X_CLIENT_CONFIGURE_WINDOW], 0, message); - - g_free (message); -} - -static void -decode_circulate_window (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XCirculateWindow *message; - - message = g_malloc0 (sizeof (XCirculateWindow)); - message->sequence_number = sequence_number; - message->direction = data; - message->window = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals[X_CLIENT_CIRCULATE_WINDOW], 0, message); - - g_free (message); -} - -static void -decode_get_geometry (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XGetGeometry *message; - - message = g_malloc0 (sizeof (XGetGeometry)); - message->sequence_number = sequence_number; - message->drawable = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals[X_CLIENT_GET_GEOMETRY], 0, message); - - g_free (message); -} - -static void -decode_query_tree (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XQueryTree *message; - - message = g_malloc0 (sizeof (XQueryTree)); - message->sequence_number = sequence_number; - message->window = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals[X_CLIENT_QUERY_TREE], 0, message); - - g_free (message); -} - -static void decode_intern_atom (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) { XInternAtom *message; guint16 name_length; - + message = g_malloc0 (sizeof (XInternAtom)); message->sequence_number = sequence_number; @@ -1133,510 +454,6 @@ decode_intern_atom (XClient *client, guint16 sequence_number, guint8 data, const } static void -decode_get_atom_name (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XGetAtomName *message; - - message = g_malloc0 (sizeof (XGetAtomName)); - message->sequence_number = sequence_number; - message->atom = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals[X_CLIENT_GET_ATOM_NAME], 0, message); - - g_free (message); -} - -static void -decode_change_property (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XChangeProperty *message; - - message = g_malloc0 (sizeof (XChangeProperty)); - message->sequence_number = sequence_number; - message->mode = data; - message->window = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->property = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->type = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->format = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - message->length = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->data = read_string8 (buffer, buffer_length, message->length * message->format / 8, offset); - read_padding (pad (message->length * message->format / 8), offset); - - g_signal_emit (client, x_client_signals[X_CLIENT_CHANGE_PROPERTY], 0, message); - - g_free (message); -} - -static void -decode_delete_property (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XDeleteProperty *message; - - message = g_malloc0 (sizeof (XDeleteProperty)); - message->sequence_number = sequence_number; - message->window = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->property = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals[X_CLIENT_DELETE_PROPERTY], 0, message); - - g_free (message); -} - -static void -decode_get_property (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XGetProperty *message; - - message = g_malloc0 (sizeof (XGetProperty)); - message->sequence_number = sequence_number; - - message->delete = data != 0; - message->window = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->property = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->type = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->long_offset = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->long_length = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals[X_CLIENT_GET_PROPERTY], 0, message); - - g_free (message); -} - -static void -decode_list_properties (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XListProperties *message; - - message = g_malloc0 (sizeof (XListProperties)); - message->sequence_number = sequence_number; - message->window = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals[X_CLIENT_LIST_PROPERTIES], 0, message); - - g_free (message); -} - -static void -decode_create_pixmap (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XCreatePixmap *message; - - message = g_malloc0 (sizeof (XCreatePixmap)); - message->sequence_number = sequence_number; - message->depth = data; - message->pid = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->drawable = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->width = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - message->height = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals[X_CLIENT_CREATE_PIXMAP], 0, message); - - g_free (message); -} - -static void -decode_free_pixmap (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XFreePixmap *message; - - message = g_malloc0 (sizeof (XFreePixmap)); - message->sequence_number = sequence_number; - message->pixmap = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals[X_CLIENT_FREE_PIXMAP], 0, message); - - g_free (message); -} - -static void -decode_create_gc (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XCreateGC *message; - - message = g_malloc0 (sizeof (XCreateGC)); - message->sequence_number = sequence_number; - - message->cid = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->drawable = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->value_mask = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_function) != 0) - { - message->function = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_plane_mask) != 0) - message->plane_mask = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_foreground) != 0) - message->foreground = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_background) != 0) - message->background = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_line_width) != 0) - { - message->line_width = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - read_padding (2, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_line_style) != 0) - { - message->line_style = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_cap_style) != 0) - { - message->cap_style = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_join_style) != 0) - { - message->join_style = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_fill_style) != 0) - { - message->fill_style = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_fill_rule) != 0) - { - message->fill_rule = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_tile) != 0) - message->tile = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_stipple) != 0) - message->stipple = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_tile_stipple_x_origin) != 0) - { - message->tile_stipple_x_origin = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - read_padding (2, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_tile_stipple_y_origin) != 0) - { - message->tile_stipple_y_origin = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - read_padding (2, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_font) != 0) - message->font = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_subwindow_mode) != 0) - { - message->subwindow_mode = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_graphics_exposures) != 0) - { - message->graphics_exposures = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_clip_x_origin) != 0) - { - message->clip_x_origin = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - read_padding (2, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_clip_y_origin) != 0) - { - message->clip_y_origin = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - read_padding (2, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_clip_mask) != 0) - message->clip_mask = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_dash_offset) != 0) - { - message->dash_offset = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - read_padding (2, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_dashes) != 0) - { - message->dashes = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_arc_mode) != 0) - { - message->arc_mode = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - - g_signal_emit (client, x_client_signals[X_CLIENT_CREATE_GC], 0, message); - - g_free (message); -} - -static void -decode_change_gc (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XChangeGC *message; - - message = g_malloc0 (sizeof (XChangeGC)); - message->sequence_number = sequence_number; - message->gc = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->value_mask = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_function) != 0) - { - message->function = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_plane_mask) != 0) - message->plane_mask = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_foreground) != 0) - message->foreground = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_background) != 0) - message->background = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_line_width) != 0) - { - message->line_width = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - read_padding (2, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_line_style) != 0) - { - message->line_style = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_cap_style) != 0) - { - message->cap_style = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_join_style) != 0) - { - message->join_style = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_fill_style) != 0) - { - message->fill_style = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_fill_rule) != 0) - { - message->fill_rule = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_tile) != 0) - message->tile = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_stipple) != 0) - message->stipple = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_tile_stipple_x_origin) != 0) - { - message->tile_stipple_x_origin = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - read_padding (2, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_tile_stipple_y_origin) != 0) - { - message->tile_stipple_y_origin = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - read_padding (2, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_font) != 0) - message->font = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_subwindow_mode) != 0) - { - message->subwindow_mode = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_graphics_exposures) != 0) - { - message->graphics_exposures = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_clip_x_origin) != 0) - { - message->clip_x_origin = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - read_padding (2, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_clip_y_origin) != 0) - { - message->clip_y_origin = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - read_padding (2, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_clip_mask) != 0) - message->clip_mask = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_dash_offset) != 0) - { - message->dash_offset = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - read_padding (2, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_dashes) != 0) - { - message->dashes = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_arc_mode) != 0) - { - message->arc_mode = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - - g_signal_emit (client, x_client_signals[X_CLIENT_CHANGE_GC], 0, message); - - g_free (message); -} - -static void -decode_copy_gc (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XCopyGC *message; - - message = g_malloc0 (sizeof (XCopyGC)); - message->sequence_number = sequence_number; - message->src_gc = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->dst_gc = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - message->value_mask = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_function) != 0) - { - message->function = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_plane_mask) != 0) - message->plane_mask = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_foreground) != 0) - message->foreground = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_background) != 0) - message->background = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_line_width) != 0) - { - message->line_width = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - read_padding (2, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_line_style) != 0) - { - message->line_style = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_cap_style) != 0) - { - message->cap_style = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_join_style) != 0) - { - message->join_style = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_fill_style) != 0) - { - message->fill_style = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_fill_rule) != 0) - { - message->fill_rule = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_tile) != 0) - message->tile = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_stipple) != 0) - message->stipple = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_tile_stipple_x_origin) != 0) - { - message->tile_stipple_x_origin = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - read_padding (2, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_tile_stipple_y_origin) != 0) - { - message->tile_stipple_y_origin = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - read_padding (2, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_font) != 0) - message->font = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_subwindow_mode) != 0) - { - message->subwindow_mode = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_graphics_exposures) != 0) - { - message->graphics_exposures = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_clip_x_origin) != 0) - { - message->clip_x_origin = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - read_padding (2, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_clip_y_origin) != 0) - { - message->clip_y_origin = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - read_padding (2, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_clip_mask) != 0) - message->clip_mask = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - if ((message->value_mask & X_GC_VALUE_MASK_dash_offset) != 0) - { - message->dash_offset = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - read_padding (2, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_dashes) != 0) - { - message->dashes = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - if ((message->value_mask & X_GC_VALUE_MASK_arc_mode) != 0) - { - message->arc_mode = read_card8 (buffer, buffer_length, offset); - read_padding (3, offset); - } - - g_signal_emit (client, x_client_signals[X_CLIENT_COPY_GC], 0, message); - - g_free (message); -} - -static void -decode_free_gc (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XFreeGC *message; - - message = g_malloc0 (sizeof (XFreeGC)); - message->sequence_number = sequence_number; - message->gc = read_card32 (buffer, buffer_length, client->priv->byte_order, offset); - - g_signal_emit (client, x_client_signals[X_CLIENT_FREE_GC], 0, message); - - g_free (message); -} - -static void -decode_query_extension (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XQueryExtension *message; - guint16 name_length; - - message = g_malloc0 (sizeof (XQueryExtension)); - message->sequence_number = sequence_number; - - name_length = read_card16 (buffer, buffer_length, client->priv->byte_order, offset); - read_padding (2, offset); - message->name = read_padded_string (buffer, buffer_length, name_length, offset); - - g_signal_emit (client, x_client_signals[X_CLIENT_QUERY_EXTENSION], 0, message); - - g_free (message->name); - g_free (message); -} - -static void -decode_bell (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ - XBell *message; - - message = g_malloc0 (sizeof (XBell)); - message->sequence_number = sequence_number; - message->percent = data; - - g_signal_emit (client, x_client_signals[X_CLIENT_BELL], 0, message); - - g_free (message); -} - -static void -decode_no_operation (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ -} - -static void -decode_big_req_enable (XClient *client, guint16 sequence_number, guint8 data, const guint8 *buffer, gssize buffer_length, gsize *offset) -{ -} - -static void decode_request (XClient *client, const guint8 *buffer, gssize buffer_length) { int opcode; @@ -1660,99 +477,9 @@ decode_request (XClient *client, const guint8 *buffer, gssize buffer_length) switch (opcode) { - case 1: - decode_create_window (client, sequence_number, data, buffer, remaining, &offset); - break; - case 2: - decode_change_window_attributes (client, sequence_number, data, buffer, remaining, &offset); - break; - case 3: - decode_get_window_attributes (client, sequence_number, data, buffer, remaining, &offset); - break; - case 4: - decode_destroy_window (client, sequence_number, data, buffer, remaining, &offset); - break; - case 5: - decode_destroy_subwindows (client, sequence_number, data, buffer, remaining, &offset); - break; - case 6: - decode_change_set_save (client, sequence_number, data, buffer, remaining, &offset); - break; - case 7: - decode_reparent_window (client, sequence_number, data, buffer, remaining, &offset); - break; - case 8: - decode_map_window (client, sequence_number, data, buffer, remaining, &offset); - break; - case 9: - decode_map_subwindows (client, sequence_number, data, buffer, remaining, &offset); - break; - case 10: - decode_unmap_window (client, sequence_number, data, buffer, remaining, &offset); - break; - case 11: - decode_unmap_subwindows (client, sequence_number, data, buffer, remaining, &offset); - break; - case 12: - decode_configure_window (client, sequence_number, data, buffer, remaining, &offset); - break; - case 13: - decode_circulate_window (client, sequence_number, data, buffer, remaining, &offset); - break; - case 14: - decode_get_geometry (client, sequence_number, data, buffer, remaining, &offset); - break; - case 15: - decode_query_tree (client, sequence_number, data, buffer, remaining, &offset); - break; case 16: decode_intern_atom (client, sequence_number, data, buffer, remaining, &offset); break; - case 17: - decode_get_atom_name (client, sequence_number, data, buffer, remaining, &offset); - break; - case 18: - decode_change_property (client, sequence_number, data, buffer, remaining, &offset); - break; - case 19: - decode_delete_property (client, sequence_number, data, buffer, remaining, &offset); - break; - case 20: - decode_get_property (client, sequence_number, data, buffer, remaining, &offset); - break; - case 21: - decode_list_properties (client, sequence_number, data, buffer, remaining, &offset); - break; - case 53: - decode_create_pixmap (client, sequence_number, data, buffer, remaining, &offset); - break; - case 54: - decode_free_pixmap (client, sequence_number, data, buffer, remaining, &offset); - break; - case 55: - decode_create_gc (client, sequence_number, data, buffer, remaining, &offset); - break; - case 56: - decode_change_gc (client, sequence_number, data, buffer, remaining, &offset); - break; - case 57: - decode_copy_gc (client, sequence_number, data, buffer, remaining, &offset); - break; - case 60: - decode_free_gc (client, sequence_number, data, buffer, remaining, &offset); - break; - case 98: - decode_query_extension (client, sequence_number, data, buffer, remaining, &offset); - break; - case 104: - decode_bell (client, sequence_number, data, buffer, remaining, &offset); - break; - case 127: - decode_no_operation (client, sequence_number, data, buffer, remaining, &offset); - break; - case 135: - decode_big_req_enable (client, sequence_number, data, buffer, remaining, &offset); - break; default: g_debug ("Ignoring unknown opcode %d", opcode); break; |