summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-04-30widget: don't grab mouse when switching to server modeMarc-André Lureau1-1/+12
spice-gtk used to try taking the grab when switching to server mode, so that the current mouse interaction (for example a drag), isn't interrupted if the agent dies. However, shutting down a VM will automatically try taking the grab when there is no tablet input, and agent exits. Some users are complaining about it (especially when they don't know the ungrab combination). Instead, let's try to keep the grab only if we have currently a mouse button pressed. https://bugzilla.redhat.com/show_bug.cgi?id=873272
2013-04-26main: do not send monitor config if monitor state didn't changeMarc-André Lureau1-0/+2
Don't send monitor config after spice_main_set_display_enabled() if the monitor state didn't change. This solves monitor "flashing", reconfiguring in a loop: https://bugzilla.redhat.com/show_bug.cgi?id=952327
2013-04-24usb-redir-manager: Fix redirect_on_connect string mem leakHans de Goede1-0/+1
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2013-04-24usb-device-manager: Fix stray '\n'-s in g_warning callsHans de Goede1-2/+2
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2013-04-24usb-device-manager: Fix redirect_on_connect_rules mem-leakHans de Goede1-0/+1
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2013-04-24usb-device-manager: Add spice_usb_device_manager_get_devices_with_filter ↵Hans de Goede5-3/+48
(fdo#63807) Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2013-04-24usb-device-manager: Error check spice_usb_device_manager_device_to_libdev callsHans de Goede1-2/+11
Under Windows all calls to spice_usb_device_manager_device_to_libdev may fail, so error check them all. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2013-04-24usb-device-manager: Avoid needless re-numeration of usb devs under LinuxHans de Goede1-16/+31
libusb_get_device_list() is not exactly a cheap call (lots of sysfs and usbfs accesses), so it is worth to avoid it where possible. This patch restores the old (pre win32 support addition) of dealing with libusb-devices under Linux, it keeps the device from the first lookup in spice_usb_device_manager_add_dev cached and uses that throughout. This also means that spice_usb_device_manager_device_to_libdev can no longer fail under Linux, so no need to error check it. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2013-04-23option: Allow multiple options in --disable-effectsChristophe Fergeau1-20/+20
Commit 82c367 added checks that the value passed to --disable-effects is valid, but it does not take into account that it's perfectly valid to pass multiple values separated by commas. This commit splits the value passed to --disable-effects and checks each component separatey. Fixes rhbz#955277
2013-04-23Fix setting of SPICE_{GLIB,GTK}_REQUIRESChristophe Fergeau1-4/+4
Because of a typo (REQUIRED vs REQUIRES), these variables only contained the last require that was set rather than a concatenation of all the needed libraries.
2013-04-23Fix GNetworkAddress leak when opening spice sessionChristophe Fergeau1-2/+7
2013-04-22channel-display: trigger re-sync of audio playback latency when there are ↵Yonit Halperin2-0/+11
frequent video frame drops This was added in order to respond more quickly when the audio and video playback are not synchronized, and when the latency between the client and the server is high (i.e., when the server response to the status is delayed).
2013-04-22playback: support syncing the playback latency via sessionYonit Halperin4-0/+26
2013-04-22spice-pulse: adjust the playback latency when the min-latency property changesYonit Halperin1-9/+59
If the current latency is smaller than the new min-latency value, we cork the playback till the target latency is achieved. Note: I didn't modify the prebuf configuration and used pa_stream_prebuf, because pulse updated the prebuf only if I set both prebuf and tlength to be target_latency*2. Then, due to the tlength growth, each time the playback latency deviated from the target latency, an underflow occurred. Since the latency that is computed by the server is not exact and is based on its current evaluation of the bit-rate, which is dynamic, it is better not to change the tlength (in order to avoid unnecessary underflows).
2013-04-22channel-playback: support SPICE_MSG_PLAYBACK_LATENCYYonit Halperin2-0/+31
Add a new property for minimum playback latency. This property is updated with the value from SPICE_MSG_PLAYBACK_LATENCY. I also increased the default latency from 100ms to 200ms in order to be more robust to different bandwidth settings. The patch also updates spice-common submodule.
2013-04-22channel-display: video stream quality reportYonit Halperin3-13/+113
Handle MSG_STREAM_ACTIVIATE_REPORT and send MSGC_STREAM_REPORT periodically, or when the playback is out of sync. The patch also updates spice-common submodule.
2013-04-22channel-playback: provide access to playback properties via the sessionYonit Halperin5-0/+82
Support checking whether an audio playback is active and what its latency is.
2013-04-22spice-pulse: update the playback latency automatically when it changesYonit Halperin1-43/+26
2013-04-22channel-display: collect and print video stream statsYonit Halperin3-3/+73
also prints the number of underflows during a spice-pulse audio playback
2013-04-12Revert "build-sys: keep common submodule up to date"Christophe Fergeau2-2/+1
This reverts commit 5150285e1cba35570c29bd923df065d2c81f081e.
2013-04-11session: enforce secure channelsMarc-André Lureau3-4/+11
2013-04-11option: add --spice-secure-channelsMarc-André Lureau1-2/+45
2013-04-11Add function to return Spice channel type from stringMarc-André Lureau2-13/+28
2013-04-11Add function to return list of supported channelsMarc-André Lureau3-14/+23
2013-04-11session: add secure-channels propertyMarc-André Lureau2-1/+28
2013-04-11channel: try TLS only onceMarc-André Lureau1-1/+1
A broken server may reply to switch to TLS again and again. spice-gtk should only try once.
2013-04-11cosmetic: fix indentation and commentMarc-André Lureau2-6/+6
2013-04-10Release v0.19v0.19Marc-André Lureau1-0/+10
2013-04-10build-sys: bump spice-glib versionMarc-André Lureau1-1/+1
new symbols in spice-glib, bump before release
2013-04-10Update README/TODOMarc-André Lureau2-31/+11
2013-04-10spicy-ss: quit when channel errorMarc-André Lureau1-0/+18
2013-04-10Rename snappy to spicy-screenshotMarc-André Lureau4-12/+12
Following discussion on the ML: http://lists.freedesktop.org/archives/spice-devel/2013-April/012953.html
2013-04-10build-sys: keep common submodule up to dateMarc-André Lureau2-1/+2
This requires git 1.8.2 to work properly. With this we should no longer need to update the reference, assuming the tarball is always up to date (that doesn't change from before, you need to update the submodule)
2013-04-10gnome-rr: keep user DPIAlex Efros1-2/+53
I'm running startx -dpi 144, but after exiting from spicy's full screen mode Xorg DPI reset to 96. Attached patch fix this issue by keeping user's DPI. See also: https://bugs.gentoo.org/show_bug.cgi?id=448362 https://bugs.freedesktop.org/show_bug.cgi?id=58715
2013-04-10build: fix parallel installTiziano Müller1-0/+5
This is a workaround for broken parallel install support in automake with LTLIBRARIES, see http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328 Broken parallel install can be reproduced when building with --with-gtk=2.0 and dies with: /home/teuf/redhat/spice-gtk/gtk/.libs/libspice-client-gtk-2.0.so: file not recognized: File truncated collect2: error: ld returned 1 exit status libtool: install: error: relink `SpiceClientGtk.la' with the above command before installing it make[5]: *** [install-pyexecLTLIBRARIES] Erreur 1 m
2013-04-10Use a GHashTable for list of file transfer tasksChristophe Fergeau1-21/+13
This list is used to lookup tasks by their numerical id, so a hash table is a more appropriate data structure for this kind of uses.
2013-04-10spice-common: UpdateHans de Goede1-0/+0
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2013-04-09widget: don't send current configuration backMarc-André Lureau1-2/+2
spice-gtk keep the main channel monitor configuration in sync, but shouldn't send back to the remote if disabled, as this may results in different settings, for example if the remote has switched to 16 bits.
2013-04-09main: add spice_main_update_display()Marc-André Lureau4-6/+35
Allow to change locally display resolution without sending it to remote, this is useful to keep local information without bothering the remote.
2013-04-09channel_base: exit handle_migrate when expecting MIGRATE_DATA and receiving ↵Yonit Halperin1-2/+4
something else Previously, when an error occurred on the src server side, and we received other message than MIGRATE_DATA, this messages was forwarded to the dest server, and made it crash.
2013-04-09channel-main: Don't g_warn when not finding a file-xfer-idHans de Goede1-2/+4
Since the agent channel can have a significant latency, it is possible for a cancel send from the client to the agent and a status message from the agent to cross each other. If this happens then the file-xfer will no longer be on the list. Printing a g_warning on this (rare but triggerable) condition will only get us hard to debug bug reports, so turn it into a SPICE_DEBUG. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2013-04-09channel-main: Cancel active file-xfers on channel/agent disconnectHans de Goede1-0/+12
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2013-04-09channel-main: Check no callbacks are pending on xfer start and endHans de Goede1-0/+8
We should never have pending callbacks when we receive a file-xfer start or end (success) message from the agent. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2013-04-09channel-main: Don't call g_input_stream_close on a NULL streamHans de Goede1-0/+5
If we fail to open a file, task->file_stream will be NULL, so we should not call g_input_stream_close on it. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2013-04-09channel-main: Allow calling file_xfer_close_cb with a NULL objectHans de Goede1-7/+8
So that it can used for cleanup before we've a file_stream. Note this also gets rid of the weird double initialization of the local stream variable. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2013-04-09channel-main: Don't close the file_stream if callbacks are pendingHans de Goede1-9/+30
If file_xfer_completed gets called while callbacks are pending we should not call g_input_stream_close_async, because: 1) Doing so while another operation is pending on the file_stream will fail 2) Doing so while a non file_stream callback is pending may result in the task being freed before the callback runs, resulting in a use after free. This patch fixes this by setting a pending flag when any callbacks are scheduled, and clearing it when it runs + checking for task->error from all callbacks and if that is set call file_xfer_completed again. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2013-04-09channel-main: Use file_xfer_completed where appropriateHans de Goede1-26/+11
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2013-04-09channel-main: file_xfer_failed -> file_xfer_completedHans de Goede1-7/+8
Make file_xfer_failed usable for all file_stream closing. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2013-04-09channel-main: Make SpiceFileXferTask-s ref the channelHans de Goede1-1/+2
So that the channel sticks around while their callbacks are completing. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2013-04-09channel-main: Reset agent message receive state on agent stopHans de Goede1-5/+2
Discard any partially received messages from the agent on agent stop. Signed-off-by: Hans de Goede <hdegoede@redhat.com>