[Spice-devel] [PATCH spice-gtk 00/25] support multiple monitors on a single display

Marc-André Lureau marcandre.lureau at gmail.com
Thu Jul 12 15:28:57 PDT 2012


Hi,

This is the patch series to support multiple monitors on a single
display channel. It requires the spice-common & spice-protocol patches
that Alon submitted.

The relationship between a display channel and its widget is no longer
limited to 1-to-1 and can be 1-to-many. Each widget can show and
interact under a constrained area.

In addition to listening to display channel creation, the client will
need to handle the "SpiceDisplayChannel:monitors" property to present
the various monitors (there are virt-viewer patches ready)

Marc-André Lureau (25):
  widget: simplify redraw call
  display: learn to restrict display to an area
  Add missing agent cap description
  widget: add main channel before other channels
  Change surface_id to a guint32
  glib-compat: add g_clear_pointer
  display: add readonly monitors property
  Add spice_display_get_primary()
  Claim SPICE_DISPLAY_CAP_MONITORS_CONFIG
  widget: add monitor property with ctor
  spice_channel_connect() success if state >= CONNECTING
  widget: don't forget to disconnect all signals handlers
  Document spice_main_send_monitor_config()
  Use monitor_id to compute display_id
  Don't attempt to draw an invalid area
  Handle SPICE_MSG_DISPLAY_MONITORS_CONFIG
  Make-up a MonitorConfig if the server doesn't provide one
  spicy: learn to deal with monitors
  spicy: disable display when deleting window
  widget: use display monitors configuration
  Implement simple monitors alignment
  main: send monitor config immediately
  Handle MonitorsConfig::max_allowed
  Add SpiceDisplay:ready property
  Enable the display early when the widget is created

 gtk/channel-display-priv.h |    2 +-
 gtk/channel-display.c      |  138 ++++++++++++-
 gtk/channel-display.h      |   24 ++-
 gtk/channel-main.c         |   95 ++++++++-
 gtk/glib-compat.h          |   20 ++
 gtk/map-file               |    2 +
 gtk/spice-channel.c        |    2 +-
 gtk/spice-widget-cairo.c   |   37 ++--
 gtk/spice-widget-priv.h    |    5 +
 gtk/spice-widget-x11.c     |   22 +--
 gtk/spice-widget.c         |  460 ++++++++++++++++++++++++++++----------------
 gtk/spice-widget.h         |    4 +-
 gtk/spicy.c                |  114 +++++++++--
 spice-common               |    2 +-
 14 files changed, 705 insertions(+), 222 deletions(-)

-- 
1.7.10.4



More information about the Spice-devel mailing list