spice/server
Frediano Ziglio 78f1381f14 gl: fix client mouse mode
Since 2.8, QEMU no longer creates QXL primary surfaces when using GL.
This change broke client-side mouse mode, because Spice server relies on
having a primary surface.

When GL is enabled, use GL scanout informations.
Mouse mode is always client when GL surfaces are used.

This patch and most of the message are based on a patch from
Marc-André Lureau, just moving responsibility from reds to RedQxl.

Signed-off-by: Frediano Ziglio <fziglio@redhat.com>
Reviewed-by: Jonathon Jongsma <jjongsma@redhat.com>
Acked-by: Christophe de Dinechin <dinechin@redhat.com>
2017-10-04 10:57:39 +01:00
..
tests tests: Automatically determine free port to use 2017-09-21 17:32:23 +02:00
.gitignore gitignore: Reuse top-level gitignore 2016-12-14 19:09:21 +00:00
agent-msg-filter.c Fix minor inconsistencies with declaration and definition 2017-02-16 10:28:52 +00:00
agent-msg-filter.h Unify header guards 2017-03-30 18:17:20 +01:00
cache-item.h Unify header guards 2017-03-30 18:17:20 +01:00
cache-item.tmpl.c channel-client: Remove red_channel_client_pipe_add_tail_push 2017-09-18 17:46:37 +01:00
char-device.c char-device: Allows to handle port events from any char device 2017-08-23 16:11:49 +01:00
char-device.h char-device: Allows to handle port events from any char device 2017-08-23 16:11:49 +01:00
common-graphics-channel.c Start using GLib memory allocation 2017-09-19 16:17:10 +01:00
common-graphics-channel.h common-graphics-channel: Move "qxl" property to DisplayChannel 2017-09-07 06:42:01 +01:00
cursor-channel-client.c channel: Move RedChannel::on_disconnect to RedChannelClient 2017-08-31 15:51:57 +02:00
cursor-channel-client.h channel: Move RedChannel::on_disconnect to RedChannelClient 2017-08-31 15:51:57 +02:00
cursor-channel.c channel: Call red_channel_disconnect_if_pending_send() from red_channel_wait_all_sent() 2017-09-12 18:19:33 +02:00
cursor-channel.h cursor-channel: Remove dependency from QXL 2017-09-07 06:41:49 +01:00
dcc-private.h Unify header guards 2017-03-30 18:17:20 +01:00
dcc-send.c Start using GLib memory allocation 2017-09-19 16:17:10 +01:00
dcc.c channel-client: Remove red_channel_client_pipe_add_tail_push 2017-09-18 17:46:37 +01:00
dcc.h dcc: Make dcc_stop static 2017-09-07 12:15:31 +01:00
demarshallers.h Unify header guards 2017-03-30 18:17:20 +01:00
dispatcher.c Dispatcher: remove async_done callback 2017-09-07 10:22:15 -05:00
dispatcher.h Add documentation for Dispatcher 2017-09-07 11:12:45 -05:00
display-channel-private.h common-graphics-channel: Move "qxl" property to DisplayChannel 2017-09-07 06:42:01 +01:00
display-channel.c Start using GLib memory allocation 2017-09-19 16:17:10 +01:00
display-channel.h display-channel: Make some declarations private 2017-09-02 08:27:26 +01:00
display-limits.h Unify header guards 2017-03-30 18:17:20 +01:00
event-loop.c Remove core_public and core_interface_adapter globals usage 2016-11-15 16:49:09 +00:00
glib-compat.h Unify header guards 2017-03-30 18:17:20 +01:00
glz-encode-match.tmpl.c server: rename _tmpl files 2015-11-26 13:33:36 +00:00
glz-encode.tmpl.c Fix -Werror=format with DEBUG_ENCODE 2016-07-01 14:00:37 +02:00
glz-encoder-dict.c Make various functions static 2017-04-05 12:39:20 +02:00
glz-encoder-dict.h Make various functions static 2017-04-05 12:39:20 +02:00
glz-encoder-priv.h Unify header guards 2017-03-30 18:17:20 +01:00
glz-encoder.c Use bool rather than int return values when appropriate 2017-03-09 18:39:29 +01:00
glz-encoder.h Unify header guards 2017-03-30 18:17:20 +01:00
gstreamer-encoder.c gstreamer: Check if ORC library can work 2017-08-30 15:59:46 +01:00
image-cache.c Use bool rather than int return values when appropriate 2017-03-09 18:39:29 +01:00
image-cache.h Unify header guards 2017-03-30 18:17:20 +01:00
image-encoders.c image-encoders: Use GLib memory functions 2017-09-19 16:17:10 +01:00
image-encoders.h Unify header guards 2017-03-30 18:17:20 +01:00
inputs-channel-client.c channel: Move RedChannel::on_disconnect to RedChannelClient 2017-08-31 15:51:57 +02:00
inputs-channel-client.h Unify header guards 2017-03-30 18:17:20 +01:00
inputs-channel.c Use new red_channel_pipes_add instead of red_channel_pipes_new_add 2017-09-06 11:39:03 +01:00
inputs-channel.h channel: Move RedChannel::on_disconnect to RedChannelClient 2017-08-31 15:51:57 +02:00
jpeg-encoder.c Start using GLib memory allocation 2017-09-19 16:17:10 +01:00
jpeg-encoder.h Unify header guards 2017-03-30 18:17:20 +01:00
lz4-encoder.c Start using GLib memory allocation 2017-09-19 16:17:10 +01:00
lz4-encoder.h Unify header guards 2017-03-30 18:17:20 +01:00
main-channel-client.c Start using GLib memory allocation 2017-09-19 16:17:10 +01:00
main-channel-client.h Use new red_channel_pipes_add instead of red_channel_pipes_new_add 2017-09-06 11:39:03 +01:00
main-channel.c Use GLib memory functions for RedsMigSpice::cert_subject 2017-09-19 16:17:11 +01:00
main-channel.h main-channel: Fix multimedia time argument type 2017-08-29 16:37:21 +01:00
main-dispatcher.c MainDispatcher: use correct argument type 2017-09-07 10:22:15 -05:00
main-dispatcher.h Unify header guards 2017-03-30 18:17:20 +01:00
Makefile.am gstreamer: Check if ORC library can work 2017-08-30 15:59:46 +01:00
memslot.c Start using GLib memory allocation 2017-09-19 16:17:10 +01:00
memslot.h Add a red_memslot_info_destroy function 2016-11-25 14:36:40 +00:00
migration-protocol.h Unify header guards 2017-03-30 18:17:20 +01:00
mjpeg-encoder.c mjpeg: Reuse realloc instead of implementing it manually 2017-09-11 21:05:50 +01:00
net-utils.c build-sys: Add configure check for TCP_KEEPIDLE 2017-03-31 12:22:52 +02:00
net-utils.h reds-stream: Introduce reds_stream_get_no_delay() helper 2017-03-31 12:22:52 +02:00
pixmap-cache.c Use bool rather than int return values when appropriate 2017-03-09 18:39:29 +01:00
pixmap-cache.h Unify header guards 2017-03-30 18:17:20 +01:00
red-channel-capabilities.c Start using GLib memory allocation 2017-09-19 16:17:10 +01:00
red-channel-capabilities.h Unify header guards 2017-03-30 18:17:20 +01:00
red-channel-client.c red-channel-client: Prevent too tight loop waiting for ACKs 2017-09-19 10:50:32 +01:00
red-channel-client.h channel-client: Remove red_channel_client_pipe_add_tail_push 2017-09-18 17:46:37 +01:00
red-channel.c channel: Fix leak in red_channel_remove_client 2017-09-18 16:30:39 +01:00
red-channel.h channel: Remove no longer used red_channel_apply_clients{_data,} 2017-09-12 18:19:33 +02:00
red-client.c red-client: Prevent RedChannelClient creation when the RedClient is being destroyed 2017-08-31 18:05:26 +01:00
red-client.h Make various functions static 2017-04-05 12:39:20 +02:00
red-common.h Introduce a macro to help declaring new GObject 2017-09-19 10:50:37 +01:00
red-parse-qxl.c red-parse-qxl: s/true/false 2017-05-02 11:30:47 +02:00
red-parse-qxl.h red-parse-qxl: Change int/1/0 to bool/true/false 2017-05-02 11:30:43 +02:00
red-pipe-item.c MainChannel: remove another init_send_data arg 2016-12-20 16:11:13 +00:00
red-pipe-item.h Unify header guards 2017-03-30 18:17:20 +01:00
red-qxl.c gl: fix client mouse mode 2017-10-04 10:57:39 +01:00
red-qxl.h gl: fix client mouse mode 2017-10-04 10:57:39 +01:00
red-record-qxl.c log: Do not print function name twice during logging 2017-06-18 09:53:27 +01:00
red-record-qxl.h Unify header guards 2017-03-30 18:17:20 +01:00
red-replay-qxl.c red-qxl: Move private declarations to red-worker.h 2017-09-08 16:51:25 +01:00
red-worker.c Start using GLib memory allocation 2017-09-19 16:17:10 +01:00
red-worker.h red-qxl: Remove AsyncCommand 2017-09-18 17:49:25 +01:00
reds-private.h reds: use SpiceMouseMode for RedsState::mouse_mode 2017-08-23 22:16:05 +01:00
reds-stream.c reds-stream: Allows to change core interface 2017-09-07 15:02:11 +01:00
reds-stream.h reds-stream: Remove shutdown field 2017-09-11 21:03:25 +01:00
reds.c gl: fix client mouse mode 2017-10-04 10:57:39 +01:00
reds.h Avoid using global variable for channel IDs 2017-09-02 08:20:56 +01:00
smartcard-channel-client.c Start using GLib memory allocation 2017-09-19 16:17:10 +01:00
smartcard-channel-client.h channel: Move RedChannel::on_disconnect to RedChannelClient 2017-08-31 15:51:57 +02:00
smartcard.c smartcard: Fix typo in comment 2017-09-18 10:45:28 +01:00
smartcard.h Unify header guards 2017-03-30 18:17:20 +01:00
sound.c sound: Use GLib memory functions 2017-09-19 16:17:11 +01:00
sound.h Change playback_compression to bool type 2017-04-07 15:08:43 -05:00
spice-audio.h Split spice.h 2014-11-27 14:27:18 +01:00
spice-bitmap-utils.c Attempt to create bitmap debug directory 2017-04-07 16:45:54 +01:00
spice-bitmap-utils.h Unify header guards 2017-03-30 18:17:20 +01:00
spice-bitmap-utils.tmpl.c server: rename _tmpl files 2015-11-26 13:33:36 +00:00
spice-char.h Constify spice_server_char_device_recognized_subtypes 2016-06-29 08:09:03 +01:00
spice-core.h Unify header guards 2017-03-30 18:17:20 +01:00
spice-experimental.h Unify header guards 2017-03-30 18:17:20 +01:00
spice-input.h Split spice.h 2014-11-27 14:27:18 +01:00
spice-migration.h server: Use SPICE_GNUC_DEPRECATED to avoid a dependency on glib.h 2016-08-12 09:47:40 +01:00
spice-qxl.h spice-qxl: Add version information 2017-09-07 16:13:49 +01:00
spice-replay.h Unify header guards 2017-03-30 18:17:20 +01:00
spice-server-enums.tmpl.c syntax-check: Use templates for glib-mkenums 2016-11-14 17:45:32 +00:00
spice-server-enums.tmpl.h syntax-check: Use templates for glib-mkenums 2016-11-14 17:45:32 +00:00
spice-server.h Convert RedChannelClient hierarchy to GObject 2016-10-07 14:46:37 -05:00
spice-server.syms streaming: Let the administrator pick the video encoder and codec 2016-06-14 17:04:40 +02:00
spice-version.h.in build-sys: generate spice-version.h 2014-11-27 14:27:33 +01:00
spice.h Make red-replay-qxl.h a public header 2016-11-10 06:37:15 +00:00
spicevmc.c Avoid using global variable for channel IDs 2017-09-02 08:20:56 +01:00
stat-file.c Start using GLib memory allocation 2017-09-19 16:17:10 +01:00
stat-file.h Unify header guards 2017-03-30 18:17:20 +01:00
stat.h Unify header guards 2017-03-30 18:17:20 +01:00
stream.c Start using GLib memory allocation 2017-09-19 16:17:10 +01:00
stream.h Unify header guards 2017-03-30 18:17:20 +01:00
sw-canvas.c remove sw-canvas.h 2016-05-09 12:45:37 +01:00
tree.c DisplayChannel: start documenting drawable tree 2017-03-09 12:01:35 -06:00
tree.h Unify header guards 2017-03-30 18:17:20 +01:00
utils.c worker: move dcc_add_surface_area_image 2015-11-23 13:50:44 +00:00
utils.h Unify header guards 2017-03-30 18:17:20 +01:00
video-encoder.h Unify header guards 2017-03-30 18:17:20 +01:00
zlib-encoder.c Start using GLib memory allocation 2017-09-19 16:17:10 +01:00
zlib-encoder.h Unify header guards 2017-03-30 18:17:20 +01:00