mirror of
https://gitlab.uni-freiburg.de/opensourcevdi/virt-viewer
synced 2025-12-28 15:20:49 +00:00
virt-viewer-display: Add monitor property
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
This commit is contained in:
parent
1a74444bb7
commit
62e0d000ce
@ -41,6 +41,7 @@ struct _VirtViewerDisplayPrivate
|
||||
guint zoom_level;
|
||||
gboolean zoom;
|
||||
gint nth_display;
|
||||
gint monitor;
|
||||
guint show_hint;
|
||||
VirtViewerSession *session;
|
||||
gboolean auto_resize;
|
||||
@ -81,6 +82,7 @@ enum {
|
||||
PROP_SHOW_HINT,
|
||||
PROP_SESSION,
|
||||
PROP_SELECTABLE,
|
||||
PROP_MONITOR,
|
||||
};
|
||||
|
||||
static void
|
||||
@ -176,6 +178,17 @@ virt_viewer_display_class_init(VirtViewerDisplayClass *class)
|
||||
FALSE,
|
||||
G_PARAM_READABLE));
|
||||
|
||||
g_object_class_install_property(object_class,
|
||||
PROP_MONITOR,
|
||||
g_param_spec_int("monitor",
|
||||
"Monitor",
|
||||
"Display Monitor",
|
||||
-1,
|
||||
G_MAXINT32,
|
||||
-1,
|
||||
G_PARAM_READWRITE |
|
||||
G_PARAM_CONSTRUCT));
|
||||
|
||||
g_signal_new("display-pointer-grab",
|
||||
G_OBJECT_CLASS_TYPE(object_class),
|
||||
G_SIGNAL_RUN_LAST | G_SIGNAL_NO_HOOKS,
|
||||
@ -278,6 +291,9 @@ virt_viewer_display_set_property(GObject *object,
|
||||
g_warn_if_fail(priv->session == NULL);
|
||||
priv->session = g_value_get_object(value);
|
||||
break;
|
||||
case PROP_MONITOR:
|
||||
priv->monitor = g_value_get_int(value);
|
||||
break;
|
||||
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
|
||||
@ -313,6 +329,9 @@ virt_viewer_display_get_property(GObject *object,
|
||||
case PROP_SELECTABLE:
|
||||
g_value_set_boolean(value, virt_viewer_display_get_selectable(display));
|
||||
break;
|
||||
case PROP_MONITOR:
|
||||
g_value_set_int(value, priv->monitor);
|
||||
break;
|
||||
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
|
||||
@ -601,6 +620,21 @@ gboolean virt_viewer_display_get_auto_resize(VirtViewerDisplay *self)
|
||||
return self->priv->auto_resize;
|
||||
}
|
||||
|
||||
void virt_viewer_display_set_monitor(VirtViewerDisplay *self, gint monitor)
|
||||
{
|
||||
g_return_if_fail(VIRT_VIEWER_IS_DISPLAY(self));
|
||||
|
||||
self->priv->monitor = monitor;
|
||||
g_object_notify(G_OBJECT(self), "monitor");
|
||||
}
|
||||
|
||||
gint virt_viewer_display_get_monitor(VirtViewerDisplay *self)
|
||||
{
|
||||
g_return_val_if_fail(VIRT_VIEWER_IS_DISPLAY(self), -1);
|
||||
|
||||
return self->priv->monitor;
|
||||
}
|
||||
|
||||
void virt_viewer_display_release_cursor(VirtViewerDisplay *self)
|
||||
{
|
||||
VirtViewerDisplayClass *klass;
|
||||
|
||||
@ -115,6 +115,8 @@ guint virt_viewer_display_get_show_hint(VirtViewerDisplay *display);
|
||||
VirtViewerSession* virt_viewer_display_get_session(VirtViewerDisplay *display);
|
||||
void virt_viewer_display_set_auto_resize(VirtViewerDisplay *display, gboolean auto_resize);
|
||||
gboolean virt_viewer_display_get_auto_resize(VirtViewerDisplay *display);
|
||||
void virt_viewer_display_set_monitor(VirtViewerDisplay *display, gint monitor);
|
||||
gint virt_viewer_display_get_monitor(VirtViewerDisplay *display);
|
||||
void virt_viewer_display_release_cursor(VirtViewerDisplay *display);
|
||||
|
||||
void virt_viewer_display_close(VirtViewerDisplay *display);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user