[Spice-devel] [RFC] Seamless mode behaviour discussion

Lukas Venhoda lvenhoda at redhat.com
Wed Aug 10 09:37:15 UTC 2016


while working on the seamless mode, couple of issue concerning it's
behaviour came up.

Firstly the simple stuff.

1. Closing last seamless window
The question is what should happen, after you close the last window
while in seamless mode.
Currently when no window are open, the desktop with taskbars is shown
(without window
decorations, so basically fullscreen with your own taskbar showing)

I propose, that closing the last window should close the client,
because that's what I always expect,
when I close th last window, and I'm always surprised that the
background shows up instead :)

Second way would be to disable seamless mode. This might seem better,
but in the end, I see it not
much better then showing the background, because it might be confusing
when you close a window, that a VM shows up instead.

2. Starting from command line
So this one is rather simple, we could have --seamless-mode option to
just open the VM directly in
seamless mode. Currently a maximized VM would show up if no windows
are open, but with the change I propose, this would be an issue. Maybe
don't enable seamless mode when no windows are open? So then this
option would run the VM normally, and seamless mode button would be
greyed out.

3. Alt tabbing inside the VM
This one is currently kinda hacked. I changed the keybind inside the
VM from alt+tab to shift+tab, but we could just bind the shift+tab
combo to send alt+tab key combo to the VM or something.
The propblem starts when the alt+tab interface shows up, because it is
only rendering over the windows themselves. Could there be
multiplatform way to show the interface? This might also be
customization dependant (different sizes, widgets, etc)

Example: http://i.imgur.com/pZlcCIV.png

3. Accessing activities, start menues etc
This one is a weird one. We could do it like other VMs with a special
button to emulate activities/start etc floating around the screen and
showing most of the VM when clicked, or something like that. I'm not
really sure how to do this one

5. Multi desktop and multi monitor
This might be currently the biggest propelm, with no real idea how to solve it.
Currently the VM is still a one big window, so showing up multiple
windows might be the way to go, but can we have multiple displays
working as a workspace? It might require like 8 display for simple
dual screen + 4 workspaces layout, not even mentioning dynamic
workspaces in gnome.

6. Launching specific applications from command line
So this might be a cool little feature. Imagine running the VM from
command line, with seamless mode on and telling it exactly what
app/script run when the client launches.
It could even work like having pecific applications in the activities
which would in turn open the client and launch the app, and close the
clitn when the app is closed.

There is a security concern about leting the user run scripts on a VM
from command line, but wer could have some kind of settings, where the
user would choose specific command like words for specific
binaries/scripts in the VM beforehand.

Example: remote-viewer --seamless-mode --start writer

Which would look if a writer command has been set upt, and if yes, run
the given application.

So that's most of the issues that really need solving, and it's better
to discuss it in the list instead of just us 3 in Brno :)

Thanks for all the responses.
Lukas Venhoda

More information about the Spice-devel mailing list