|
|
4a6991 |
From aeec46ecc9ed5acb358a31db2566dd568534de6f Mon Sep 17 00:00:00 2001
|
|
|
4a6991 |
From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@gmail.com>
|
|
|
4a6991 |
Date: Mon, 15 Jul 2013 20:50:55 +0200
|
|
|
4a6991 |
Subject: [PATCH] kiosk: teach a window to become kiosk-mode
|
|
|
4a6991 |
|
|
|
4a6991 |
Remove the toolbar, disable modifiers.
|
|
|
4a6991 |
|
|
|
4a6991 |
(cherry picked from commit b7e153950ed473251c8ec67816fd8fcd0b0cdd0d)
|
|
|
4a6991 |
https://bugzilla.redhat.com/show_bug.cgi?id=1040926
|
|
|
4a6991 |
---
|
|
|
4a6991 |
src/virt-viewer-window.c | 25 +++++++++++++++++++++++++
|
|
|
4a6991 |
1 file changed, 25 insertions(+)
|
|
|
4a6991 |
|
|
|
4a6991 |
diff --git a/src/virt-viewer-window.c b/src/virt-viewer-window.c
|
|
|
4a6991 |
index 45d1a35..9ab6cc4 100644
|
|
|
4a6991 |
--- a/src/virt-viewer-window.c
|
|
|
4a6991 |
+++ b/src/virt-viewer-window.c
|
|
|
4a6991 |
@@ -1260,6 +1260,23 @@ virt_viewer_window_set_display(VirtViewerWindow *self, VirtViewerDisplay *displa
|
|
|
4a6991 |
}
|
|
|
4a6991 |
}
|
|
|
4a6991 |
|
|
|
4a6991 |
+static void
|
|
|
4a6991 |
+virt_viewer_window_enable_kiosk(VirtViewerWindow *self)
|
|
|
4a6991 |
+{
|
|
|
4a6991 |
+ VirtViewerWindowPrivate *priv;
|
|
|
4a6991 |
+
|
|
|
4a6991 |
+ g_return_if_fail(VIRT_VIEWER_IS_WINDOW(self));
|
|
|
4a6991 |
+ priv = self->priv;
|
|
|
4a6991 |
+
|
|
|
4a6991 |
+ ViewOvBox_SetOver(VIEW_OV_BOX(priv->layout), gtk_drawing_area_new());
|
|
|
4a6991 |
+ ViewAutoDrawer_SetActive(VIEW_AUTODRAWER(priv->layout), FALSE);
|
|
|
4a6991 |
+ ViewAutoDrawer_SetOverlapPixels(VIEW_AUTODRAWER(priv->layout), 0);
|
|
|
4a6991 |
+
|
|
|
4a6991 |
+ /* You probably also want X11 Option "DontVTSwitch" "true" */
|
|
|
4a6991 |
+ /* and perhaps more distro/desktop-specific options */
|
|
|
4a6991 |
+ virt_viewer_window_disable_modifiers(self);
|
|
|
4a6991 |
+}
|
|
|
4a6991 |
+
|
|
|
4a6991 |
void
|
|
|
4a6991 |
virt_viewer_window_show(VirtViewerWindow *self)
|
|
|
4a6991 |
{
|
|
|
4a6991 |
@@ -1273,6 +1290,9 @@ virt_viewer_window_show(VirtViewerWindow *self)
|
|
|
4a6991 |
self->priv->desktop_resize_pending = FALSE;
|
|
|
4a6991 |
}
|
|
|
4a6991 |
|
|
|
4a6991 |
+ if (self->priv->kiosk)
|
|
|
4a6991 |
+ virt_viewer_window_enable_kiosk(self);
|
|
|
4a6991 |
+
|
|
|
4a6991 |
virt_viewer_window_move_to_monitor(self);
|
|
|
4a6991 |
}
|
|
|
4a6991 |
|
|
|
4a6991 |
@@ -1349,6 +1369,11 @@ virt_viewer_window_set_kiosk(VirtViewerWindow *self, gboolean enabled)
|
|
|
4a6991 |
return;
|
|
|
4a6991 |
|
|
|
4a6991 |
self->priv->kiosk = enabled;
|
|
|
4a6991 |
+
|
|
|
4a6991 |
+ if (enabled)
|
|
|
4a6991 |
+ virt_viewer_window_enable_kiosk(self);
|
|
|
4a6991 |
+ else
|
|
|
4a6991 |
+ g_debug("disabling kiosk not implemented yet");
|
|
|
4a6991 |
}
|
|
|
4a6991 |
|
|
|
4a6991 |
/*
|