summaryrefslogtreecommitdiffstats
path: root/doc/reference
Commit message (Collapse)AuthorAgeFilesLines
* Adjust to GLib 2.36Pavel Grunt2016-03-181-1/+0
| | | | | | | | Dependency since 8693e7d3f7de1ff102082212fa6e35fb1a252ef7 Remove glib-compat files and most of GLIB_CHECK_VERSION guards Acked-by: Victor Toso <victortoso@redhat.com>
* Drop GTK+ 2.0Marc-André Lureau2016-03-141-1/+1
| | | | | | | | | | Not so many systems require gtk+ 2.0 these days, let's move on. This drops the old python bindings (non-gir based), and the unsteady/experimental gtk2-only XShm support. Signed-off-by: Marc-André Lureau <marcandre.lureau@gmail.com> Acked-by: Fabiano Fidêncio <fidencio@redhat.com>
* glib: add local GL scanout supportMarc-André Lureau2016-02-131-0/+1
| | | | | | | | | | | | | | Add spice-glib support for gl scanout messages. A note about SpiceGlScanout: it is struct with scanout details, registered as a boxed type, with associated gl-scanout property. That way, it doesn't need a seperate signal for change notification and the current scanout can be retrieve with gobject getter. Since boxed property are always duplicated by g_object_get(), an additional spice_display_get_gl_scanout() method returns the current scanout without duplication (that's what spice-gtk display widget will use). Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
* channel-display: Add spice_display_change_preferred_compressionPavel Grunt2015-11-181-0/+1
|
* New file transfer APIJonathon Jongsma2015-10-093-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There were several shortcomings to the existing file transfer API, particularly in terms of monitoring ongoing file transfers. The major issue is that spice_main_file_copy_async() allows you to pass an array of files, but the progress callback does not provide a way to identify which file the callback is associated with. This makes it nearly impossible for an application to monitor file transfers. In addition, the SpiceDisplay widget automatically handles drag-and-drop actions on the widget, and initiates file transfers without allowing the application to specify a progress callback. So there's no way for an app to monitor file transfers that are initiated via drag and drop. http://lists.freedesktop.org/archives/spice-devel/2015-September/021931.html has a more detailed explanation of the issues. This change doesn't break the existing API, but adds some new API that will allow an application to monitor file transfer progress, even for transfers that are initiated within spice-gtk itself. - A new public SpiceFileTransferTask object is added. - The SpiceMainChannel object gains a "new-file-transfer" signal that is emitted whenever a new file transfer is initiated. The SpiceFileTransferTask object is passed to the signal handler. - The application can retain this object and monitor its 'progress' property to be notified when the progress of the file transfer changes. The SpiceFileTransferTask::finished signal indicates when the given file transfer has completed. The application can also cancel the file transfer by calling the _cancel() method. The 'spicy' test application has been updated to use this new API and display a simple dialog showing the progress of individual files.
* Glib applications should only include spice-client.hJonathon Jongsma2015-10-091-1/+1
| | | | | Generate a compiler warning if an application attempts to include a different header.
* docs: Move SPICE_TYPE_USB_DEVICE to standard subsectionPavel Grunt2015-09-251-1/+1
|
* docs: Add Version Information sectionPavel Grunt2015-09-252-4/+9
|
* docs: Update for missing symbolsPavel Grunt2015-09-251-0/+10
|
* Add spice_main_update_display_enabled()Jonathon Jongsma2015-09-101-0/+1
| | | | | | | | | | | | | | | | This is a new function that allows the caller to decide whether to send the new status down to the server or not (analogous to the difference between spice_main_set_display() vs spice_man_update_display()). This new function is needed to reduce unnecessary MonitorsConfig messages from being sent to the server. Because spice-gtk does not maintain any display state internally, it depends on the application to maintain that state. Some state changes come from the server itself (e.g. the guest has changed resolution due to some activity within the guest), and some come from the application (e.g. the user has resized the window of the client). Changes that come from server updates do not need to be sent back down to the server, whereas those that originate from the application *do* need to be sent to the server.
* Add the gtk libraries to the gtk-scandoc link line.Jeremy White2015-07-281-1/+1
| | | | | | | | | | | This prevents a compile error on Debian Jessie, when building from git. This is fairly subtle, and Debian specific. It only happens when you use autoreconf to generate a new libtool script. Debian patches that script to require an explicit setting to link with all dependent libraries. It should be harmless on other distros, and it does save us Debian guys some hassle.
* Move gtk/ -> src/Marc-André Lureau2015-06-081-5/+5
| | | | | For historical reasons, the code was placed under gtk/ subdirectory. If it was always bugging you, bug no more!
* docs: improvements for 0.27 releaseMarc-André Lureau2014-12-111-0/+1
|
* Add spice_session_is_for_migration()Marc-André Lureau2014-12-011-0/+1
|
* Remove blank lines at end of filesChristophe Fergeau2014-10-301-1/+1
|
* Add webdav channelMarc-André Lureau2014-03-193-1/+21
| | | | | | | | | | | | | | | | | | | See spice-common for protocol details. phodav, a webdav server library, is imported thanks to a submodule, until this project has a stable API and releases. The webdav channel is reponsible for handling port events and multiplexing the request streams. Extra care has been made to avoid blocking and to enable some fairness between concurrent streams, however this has been particularly tricky and is likely to have some issues left. The webdav server is run in a seperate thread, using libsoup. The client communication is done via a local tcp socket, but protected to only accept local connection and with a pretty strong password. The home directory is exported for the remote to browse, which seems to be a sensible default atm.
* Add a SPICE_GTK_CHECK_VERSION macroMarc-André Lureau2014-02-241-0/+4
|
* session: add spice_session_get_proxy_uri()Marc-André Lureau2014-02-211-0/+1
| | | | | Learn to return the currently configured proxy, to allow client to tweak parameters, such as username and password.
* channel: add spice_channel_get_error()Marc-André Lureau2014-02-211-0/+1
| | | | | Add a function to retrieve the last GError from a channel, this may be useful to provide additional error details to the client.
* Make SpiceURI a public APIMarc-André Lureau2014-02-213-0/+28
| | | | | Generalize a little bit SpiceProxy to allow easy URI manipulation by clients.
* Revert "Add ability to get SpiceDisplay resolution"Jonathon Jongsma2013-11-071-2/+0
| | | | | | | | | | This reverts commit a285e0187d15ad650f6524f3811072fa55b20617. This API was not actually needed for what I intended to use it for. So revert for now. We can always add it back if necessary in the future. Conflicts: gtk/spice-widget.c
* Add ability to get SpiceDisplay resolutionJonathon Jongsma2013-11-041-0/+2
| | | | | Add spice_display_get_monitor_config() to get the current configuration of the display.
* Add spice_channel_string_to_type to map filesHans de Goede2013-06-271-0/+1
| | | | | | | And document both spice_channel_string_to_type and spice_channel_type_to_string. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* doc: add missing symbols and versionsMarc-André Lureau2013-06-261-0/+3
|
* usb-device-manager: Add spice_usb_device_manager_get_devices_with_filter ↵Hans de Goede2013-04-241-0/+1
| | | | | | (fdo#63807) Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* Add a port channelMarc-André Lureau2012-12-053-0/+23
| | | | | | | | | | | | A Spice port channel carry arbitrary data between the Spice client and the Spice server. It may be used to provide additional services on top of a Spice connection. For example, a channel can be associated with the qemu monitor for the client to interact with it, just like any qemu chardev. Or it may be used with various protocols, such as the Spice Controller. A port kind is identified simply by a fqdn, such as org.qemu.monitor, org.spice.spicy.test or org.ovirt.controller...
* channel: add flush_async()Marc-André Lureau2012-12-051-0/+2
| | | | | Add spice_channel_flush_async() that asynchronously will write all the pending channel data.
* inputs: add spice_inputs_key_press_and_release()Marc-André Lureau2012-08-281-0/+1
| | | | | | | | | If the server is capable of SPICE_INPUTS_CAP_SCANCODE, then we send can send a single message with key press and release, to avoid unwanted guest side key repeatition due to network jitter. If the server is not capable, spice-gtk will use some compatibility mode and send the existing DOWN and UP key events seperately.
* Release v0.13v0.13Marc-André Lureau2012-08-281-0/+0
|
* widget: add monitor property with ctorMarc-André Lureau2012-07-161-0/+1
|
* build-sys: move codegen & proto to spice-commonMarc-André Lureau2012-03-251-1/+1
| | | | | | | | | | With this iteration, all the spice_codegen.py/proto/marshaller generation has been moved to spice-common. The spice-common directory will ship spice-protocol, since it's needed there too to build libspice-common. Again, make distcheck passes. Build with mingw & fedora linux.
* doc: gtk-doc cleanupMarc-André Lureau2012-03-202-87/+66
| | | | Fix all the unused symbols and a few warnings (a lot left)
* Add SPICE_DISABLE_DEPRECATED guardMarc-André Lureau2012-03-201-3/+3
|
* Do not grab/release the clipboard on guest without clipboard supportMarc-André Lureau2012-01-311-0/+1
| | | | | Add an agent capability check before calling those functions from gtk-session. Avoid extra warnings.
* Add a USB device selection widgetHans de Goede2012-01-313-0/+21
| | | | | | | | | This patch adds a SpiceUsbDeviceWidget which apps can use to easily add an UI to select USB devices to redirect (or unredirect). See spicy for an example usage. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* Remove auto-generated .gitignore files from gitHans de Goede2011-10-101-45/+0
| | | | | | | Auto-generated files do not belong in git. Having these in git causes changes to them accidentally ending up in other commits. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* usb-device-manager: One instance per session instead of a singletonHans de Goede2011-10-071-2/+0
| | | | | | | | | | | | Since usb device manager keeps track of which usb channels there are and if they have usb devices attached there should be one usb-device-manager instance per session, rather then one global singleton. Tying the usb-device-manager to the session also allows us to get rid of spice_usb_device_manager_[un]register_channel and the need for SpiceDisplay to call these. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* Move clipboard handling to SpiceGtkSessionHans de Goede2011-10-061-0/+2
| | | | | | | | | | | | | | | | This fixes copy and paste with multi-monitor guests. There still is one small issue left with this patch, changing the setting for auto-clipboard in one spicy window, does not get reflected in the Options menu of the other spicy windows. This can be fixed by listening to the notify signal, this also requires SpiceDisplay to listen to property changes on its SpiceGtkSession and then do a g_object_set on itself to update its own property (and also emit its own notify signal. I'll write a separate patch for this. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* Add a SpiceGtkSession ClassHans de Goede2011-10-063-0/+21
| | | | | | | | | | | | This initial commit of the SpiceGtkSession Class only adds the empty class and the 1:1 linkage to SpiceSession through 2 new private methods added to SpiceSession: spice_session_{get|set}_gtk_session. The following commits will move things which are currently per SpiceDisplay, but which really should be global, such as the clipboard, over to SpiceGtkSession. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* usb-device-manager: Add a spice_usb_device_get_description() methodHans de Goede2011-09-011-0/+1
| | | | | | | | This is just a place holder for now. A better implementation requires gusb changes, and I hope there will be an official gusb release by the time I get around to fixing this up. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* doc: various improvementsMarc-André Lureau2011-08-311-8/+14
|
* doc: update to include USB redirectionMarc-André Lureau2011-08-313-0/+52
|
* gtk: add spice_get_option_group()Marc-André Lureau2011-07-173-2/+5
|
* gtk/doc: improve the generated gtk-doc a bitMarc-André Lureau2011-07-133-6/+20
|
* smartcard: add smartcard API docChristophe Fergeau2011-07-132-0/+41
|
* gtk: move channel verification parameter to sessionMarc-André Lureau2011-01-252-6/+6
|
* gtk: rename s/spice-channel-enums/spice-glib-enumsMarc-André Lureau2011-01-251-1/+1
|
* gtk: add channel certificate 'verify' propertyMarc-André Lureau2011-01-242-0/+4
|
* Adapt build system to allow building with GTK3Daniel P. Berrange2011-01-141-1/+1
| | | | | | | | | | | | | | | | | The new configure flag '--with-gtk' can be used to choose which GTK version to build against, defaulting to GTK2. To enable GTK3 use ./configure --with-gtk=3.0 The libspice-client-glib-2.0.la library is unchanged, building against glib-2.0 at all times. The GTK3 build will produce a libspice-client-gtk-3.0.la The include files will also live in $prefix/spice-client-gtk-3.0 and the pkgconfig is called spice-client-gtk-3.0 too. This allows for full parallel install of GTK2 and GTK3 builds
* gtk: continue API documentationMarc-André Lureau2010-12-092-9/+239
|