[Spice-devel] [spice-gtk 1/2] Add SpiceSession::disable-ctrlaltdel
Alon Levy
alevy at redhat.com
Thu Jul 19 02:36:44 PDT 2012
On Thu, Jul 19, 2012 at 09:40:50AM +0200, Christophe Fergeau wrote:
ACK both with changing nested if to a conjunction (I mistakenly said or,
meant and, in the reply to patch 2 I just sent).
> ---
> gtk/spice-session-priv.h | 5 +++++
> gtk/spice-session.c | 30 ++++++++++++++++++++++++++++++
> 2 files changed, 35 insertions(+)
>
> diff --git a/gtk/spice-session-priv.h b/gtk/spice-session-priv.h
> index c24ef8e..c904066 100644
> --- a/gtk/spice-session-priv.h
> +++ b/gtk/spice-session-priv.h
> @@ -72,6 +72,10 @@ struct _SpiceSessionPrivate {
> GStrv disable_effects;
> gint color_depth;
>
> + /* Whether to block ctrl-alt-del or to pass it from the client to the
> + * guest OS */
> + gboolean disable_ctrlaltdel;
> +
> int connection_id;
> int protocol;
> SpiceChannel *cmain; /* weak reference */
> @@ -131,6 +135,7 @@ const gchar* spice_session_get_host(SpiceSession *session);
> const gchar* spice_session_get_cert_subject(SpiceSession *session);
> const gchar* spice_session_get_ciphers(SpiceSession *session);
> const gchar* spice_session_get_ca_file(SpiceSession *session);
> +gboolean spice_session_is_ctrlaltdel_disabled(SpiceSession *session);
>
> void spice_session_set_caches_hints(SpiceSession *session,
> uint32_t pci_ram_size,
> diff --git a/gtk/spice-session.c b/gtk/spice-session.c
> index 995b2ed..6fffaf4 100644
> --- a/gtk/spice-session.c
> +++ b/gtk/spice-session.c
> @@ -103,6 +103,7 @@ enum {
> PROP_GLZ_WINDOW_SIZE,
> PROP_UUID,
> PROP_NAME,
> + PROP_DISABLE_CTRLALTDEL,
> };
>
> /* signals */
> @@ -464,6 +465,9 @@ static void spice_session_get_property(GObject *gobject,
> case PROP_UUID:
> g_value_set_pointer(value, s->uuid);
> break;
> + case PROP_DISABLE_CTRLALTDEL:
> + g_value_set_boolean(value, s->disable_ctrlaltdel);
> + break;
> default:
> G_OBJECT_WARN_INVALID_PROPERTY_ID(gobject, prop_id, pspec);
> break;
> @@ -575,6 +579,9 @@ static void spice_session_set_property(GObject *gobject,
> case PROP_GLZ_WINDOW_SIZE:
> s->glz_window_size = g_value_get_int(value);
> break;
> + case PROP_DISABLE_CTRLALTDEL:
> + s->disable_ctrlaltdel = g_value_get_boolean(value);
> + break;
> default:
> G_OBJECT_WARN_INVALID_PROPERTY_ID(gobject, prop_id, pspec);
> break;
> @@ -1043,6 +1050,20 @@ static void spice_session_class_init(SpiceSessionClass *klass)
> G_PARAM_READABLE |
> G_PARAM_STATIC_STRINGS));
>
> + /**
> + * SpiceSession:disable-ctrlaltdel:
> + *
> + * Disable transmission of Ctrl+Alt+Del to guest OS
> + * Since: 0.13
> + **/
> + g_object_class_install_property
> + (gobject_class, PROP_DISABLE_CTRLALTDEL,
> + g_param_spec_boolean("disable-ctrlaltdel", "Disable Ctrl+Alt+Del",
> + "Whether Ctrl+Alt+Del combo should be disabled",
> + FALSE,
> + G_PARAM_READWRITE |
> + G_PARAM_STATIC_STRINGS));
> +
> g_type_class_add_private(klass, sizeof(SpiceSessionPrivate));
> }
>
> @@ -1803,6 +1824,15 @@ const gchar* spice_session_get_ca_file(SpiceSession *session)
> }
>
> G_GNUC_INTERNAL
> +gboolean spice_session_is_ctrlaltdel_disabled(SpiceSession *session)
> +{
> + SpiceSessionPrivate *s = SPICE_SESSION_GET_PRIVATE(session);
> +
> + g_return_val_if_fail(s != NULL, FALSE);
> + return s->disable_ctrlaltdel;
> +}
> +
> +G_GNUC_INTERNAL
> void spice_session_get_caches(SpiceSession *session,
> display_cache **images,
> display_cache **palettes,
> --
> 1.7.10.4
>
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel
More information about the Spice-devel
mailing list