Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
If the user doesn't provide URI, let's show a simple dialog to enter it.
Also save & list recently used URLs in that dialog.
|
|
Although the doc says it is only deprecated since >2.32, it's actually
>2.31 according to glib git log.
|
|
Lower warning message to debug level. There are various racy ways it
ends up calling show_display although the display is not yet
ready. This is not such a big problem, although it would be nice to
handle this case better
|
|
The current code only inform of focus state when the listener is ready.
spice-gtk controller code lacks signal when a client connects, but a
client will set the title when connected and send a notify signal.
Use this event to notify of application focus state.
|
|
|
|
The RemoveViewer object will have its own ref.
|
|
Do not disconnect session when switching host (non-seamless migration
method).
Also, handle a bit better main channel events and do not disconnect on
unknown events, however raise unhandled event message to warning
level.
|
|
|
|
If the accels are enabled (with Spice controller custom bindings),
show the configured keybinding in the title bar.
|
|
- auto-conf is an optionnal argument to --fullscreen:
it will set the guest display configuration to match the client
display configuration, by sending the client monitors size and
position to capable guests.
|
|
|
|
'remote-viewer foobar' shouldn't crash
|
|
|
|
GThread is needed by spice-gtk
|
|
The current code notifies the controller when the remote-viewer
application starts, but not when the client is connected. We should do
the later instead
|
|
|
|
|
|
We require libvirt >= 0.9.7 to get virDomainOpenGraphics
We require spice-gtk >= 0.11 to get the fix for dealing with
authentication over an SSH tunnel
We requires spice-protocol >= 0.10.1 to get a constant
required by USB redirection
|
|
|
|
When running ./autogen.sh on a pristine git checkout, I got:
libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac and
libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree.
You should add the contents of '/usr/share/aclocal/intltool.m4' to 'aclocal.m4'.
|
|
Trying to resize not visible windows leads to the following being printed
to the console:
Gdk-CRITICAL **: IA__gdk_window_get_origin: assertion `GDK_IS_WINDOW (window)'
This gets triggered by the gdk_screen_get_monitor_geometry() call in
virt_viewer_window_resize()
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
|
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
|
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
|
priv->window gets set on init and never unset, so there is no need to check
for it.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
|
|
|
|
|
Note this button only gets shown on USB redir capable virtual machines.
Changes in v2:
-Use gtk_widget_set_visible for simpler code
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
|
When quiting from the fullscreen menu call virt_viewer_app_quit instead of
gtk_main_quit so that the session gets properly disconnected before quiting.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
|
Even though the previous patches in this series ensure that the session
gets properly finalized, we still need to wait for the disconnect signal,
as spice-glib uses co-routines which need some time to cleanly close the
connection / session.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
|
Before this patch session-spice would emit the disconnected signal as soon
as the main channel is closed, but other channels may still be open at
that time and raising the disconnected signal usally leads to the app class
calling gtk_main_quit, at which point the other channels never get properly
finalized (as there co-routines still hold a reference to them).
This is esp. bad for usbredir channels as these re-attach the kernel driver
for redirected devices when finalized. So exiting without properly finalizing
them leads to the formerly redirected devices not being usuable until the
driver is manually reloaded or the device is unplugged and re-plugged
(the kernel does not automatically re-bind kernel drivers when userspace
closes a usbfs node).
This patch fixes this by delaying the emitting of the disconnect signal
until the last channel has been destroyed.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
|
With this patch combined with the previous patches in this series, the
VirtViewerSession (finally) gets properly finalized on exit.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
|
Before this patch there was a cyclic reference between VirtViewerSesion and
VirtViewerDisplay, since all VirtViewerDisplays are created / destroyed by
VirtViewerSession it is safe to assume that lifetime of VirtViewerSession >=
VirtViewerDisplay, so VirtViewerDisplay can take a borrowed reference
breaking the circle, and allowing proper cleanup on exit.
Note that there is no g_object_unref removed from virt-viewer-display, this
because there is no finalize / dispose and before this patch
VirtViewerDisplay never unref-ed the reference it hold to the session.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
|
Before this patch there was a cyclic reference between VirtViewerApp and
VirtViewerWindow, since all VirtViewerWindows are created / destroyed by
VirtViewerApp it is safe to assume that lifetime of VirtViewerApp >=
VirtViewerWindow, so VirtViewerWindow can take a borrowed reference
breaking the circle, and allowing proper cleanup on exit.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
|
This means that:
1) There is no need to explictly set its title separately
2) It is unref-ed when we do g_hash_table_unref(priv->windows), so it
should not be unref-ed separately otherwise it is unref-ed twice!
Notice that 2 was never a problem because of circular references
between VirtViewerApp and VirtViewerWindow, but once the follow
up patch to this one breaks the circle 2 becomes an issue.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
|
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
|
These changes match the changes already made to the spice-gtk
usb device selection widget to match the spacing advised by the Gnome HIG.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
|
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
|
The empty string has a magic meaning for gettext, it's used to
store a translation header with all kind of information about the
po file. This is not something we want to use as a window title, so
change to _("") to "" when we want an empty string.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
spice_session_connect() will attempt to connect directly to the
server, we need to continue calling spice_session_open_fd() for ssh
tunnel to work.
|
|
When doing unref() on a channel, channel-destroy signal may be emitted
during object dispose time, and it will attempt to unref() the channel
again likely leading to a crash.
It may be that spice-gtk should have a different/simpler object
life-cycle model, but it's also a good assumption to not take strong
references on the channels, but just keep a weak reference as the
session is really the channel life-cycle manager.
https://bugzilla.redhat.com/show_bug.cgi?id=797082
|
|
|