[et-mgmt-tools] [PATCH 2/2] Virt-viewer browser plugin

Daniel P. Berrange berrange at redhat.com
Fri Jan 25 21:34:26 UTC 2008


On Fri, Jan 25, 2008 at 04:22:21PM +0000, Richard W.M. Jones wrote:
> This adds a virt-viewer browser plugin which works on Firefox / Mozilla 
> and probably other NPAPI-based browsers on Unix-like systems.
> 
> The plugin is placed in the plugin/ subdirectory.
> 
> Libtool is required (since the plugin is a shared library).
> 
> The plugin is disabled by default.  To enable it you have to do 
> './configure --enable-plugin'.
> 
> To use the plugin, place code such as this in a web page:
> 
>   <embed type="application/x-virt-viewer"
>     width="800"
>     height="600"
>     uri="qemu:///system"
>     name="1">
>   </embed>
> 
> The width & height are required, and should be at least as large as the 
> virtual machine's console.  (Because Gecko + Gtk plugins are really 
> buggy we are unable to place scrollbars or a menubar around the VNC widget).
> 
> 'uri' (libvirt URI) and 'name' (domain name/ID/UUID) are required.
> 
> Optionally you can also have waitvnc="1" and direct="1" which have the 
> same effect as the equivalent virt-viewer command line options.
> 
> Screenshot: http://annexia.org/tmp/Screenshot-SeaMonkey.png
> 
> Known bugs, at least 4 at the moment:
> 
> (1) There's a strange race condition where Gecko renders the plugin 
> before rendering the surrounding page.  This results in a segfault 
> because the browser sends uninitialized private data to the plugin.
> 
> (2) The plugin cannot grab the mouse, so mouse handling is erratic.

Hmm, that should be fixable - X allows grabs to be constrained to
arbitrary windows, not just top level, so the browser widget ought
to be able to grab it.

> (3) Virt-viewer menubar doesn't render correctly, so in this version it 
> is disabled.  Appears to be a general problem with Gecko + Gtk.

Could perhaps use a combo of Ctrl+Alt + Right click to display a popup
menu instead of the menu bar. Just use a plain right click of course
in case a remote server wants it.

> 
> (4) There are various rendering artifacts on framebuffer updates, but 
> they only affect movement/animation, eg. dragging windows.  When the 
> animation has finished the rendering artifacts disappear.

This one's very odd. Did the plain GTK-VNC plugin show the same thing
or is it just the virt-viewer variant ?


Despite these issues, I applied the patch - since it is disabled by default
it won't hurt to have it in the repo & saves carrying around separate
patches.

Dan
-- 
|=- Red Hat, Engineering, Emerging Technologies, Boston.  +1 978 392 2496 -=|
|=-           Perl modules: http://search.cpan.org/~danberr/              -=|
|=-               Projects: http://freshmeat.net/~danielpb/               -=|
|=-  GnuPG: 7D3B9505   F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505  -=| 




More information about the et-mgmt-tools mailing list