summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* spice: if zoom-level is changed, resize guest, even in fullscreenMarc-André Lureau2013-07-302-0/+17
|
* spice: factor out spice resize code from gtk signal handlerMarc-André Lureau2013-07-301-4/+14
| | | | | This will allow that part of the code to be called with a different resize-guest setting.
* Hide extra monitors that don't fit in auto-confMarc-André Lureau2013-07-301-1/+4
| | | | | | | | | | Virt-viewer sometimes opens one too many windows if the guest is configured with more monitors than the client (the spice monitor configuration request and the current config aren't related, so there is some race). Instead, let's hide extra monitors that wouldn't fit in auto-conf. https://bugzilla.redhat.com/show_bug.cgi?id=985898
* Realize the display when it's added to the windowMarc-André Lureau2013-07-301-0/+1
| | | | | Make sure the widget get some dimensions, so if the display is enabled before it is actually shown, it will have non-zero size
* Initialize fullscreen_monitor to invalid valueMarc-André Lureau2013-07-301-0/+1
| | | | This makes it easier to debug when a window has no associated monitor.
* Disable auto-conf when user toggle displayMarc-André Lureau2013-07-301-0/+2
| | | | Let's get out of auto-conf mode whenever user tricks display visibility.
* Remove dead functionMarc-André Lureau2013-07-301-7/+0
|
* Unregister events and callbacks on disposeJán Tomko2013-07-291-12/+19
| | | | | | Without these libvirtd reports an error on virt-viewer shutdown: virNetSocketReadWire:1377 : End of file while reading data: Input/output error
* virt-viewer: Allow TLS-only SPICE connectionsChristophe Fergeau2013-07-111-12/+12
| | | | | | | | | | | | | | | | | | | | | When trying to connect to a VM which uses SPICE with only a tls port set: <graphics type='spice' tlsPort='-1' autoport='no' listen='0' keymap='en-us'> <listen type='address' address='0'/> </graphics> the connection will fail with "Cannot determine the graphic address for the guest spice" virt_viewer_extract_connect_info() indeed assumes that if no non-TLS port is set, then this means we are trying to connect through an already open socket, and otherwise the connection fails. The presence of a TLS port is only checked when a non-TLS port is set. This commit reworks that logic to start by extracting both the non-TLS and TLS ports (only when using SPICE for the latter), and by only trying to parse the socket to use if none of these 2 ports is set This fixes rhbz#982840
* vnc: implement release_cursor()Marc-André Lureau2013-07-081-0/+9
| | | | | Error reported in: https://bugzilla.redhat.com/show_bug.cgi?id=904094
* app: always use maybe_quit()Marc-André Lureau2013-07-083-3/+2
| | | | | | | Now that closing a window is like quiting, there is no reason to ask or skip the confirm dialog depending on how you quit (menu/toolbar/window). https://bugzilla.redhat.com/show_bug.cgi?id=905684
* usbredir: Don't depend on channel orderingHans de Goede2013-07-064-27/+63
| | | | | | | | | | | | | Before this patch-set virt-viewer was calling spice_session_has_channel_type( session, SPICE_CHANNEL_USBREDIR) from the session-initialized signal handler, So as soon as the display channel gets added to the session, the check was done. This causes the check to return FALSE for usbredir capable vms if the usbredir channel(s) get added to the session after the display channed. This patch refactors things to not depend on channel creation order. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* Use display fullscreen state instead of app stateMarc-André Lureau2013-07-051-6/+6
| | | | | | | | This is a recent regression introduced by independant fullscreen windows support, which reopened the bug "Resolution higher than native could not be set in fullscreen" https://bugzilla.redhat.com/show_bug.cgi?id=864929
* window: set display fullscreen stateMarc-André Lureau2013-07-051-2/+7
|
* display: add fullscreen propertyMarc-André Lureau2013-07-052-0/+33
| | | | | Now that fullscreen state is no longer global to application, we need to have the current state per display
* Remove debugging leftoverMarc-André Lureau2013-07-051-1/+0
|
* Use -H instead of -h for the short --hotkeysChristophe Fergeau2013-07-032-2/+2
| | | | | | -h conflicts with the short version of --help. Fixes rhbz#980846
* Fix build --without-spice-gtkMarc-André Lureau2013-06-281-29/+27
|
* Use format stringGuido Günther2013-06-261-1/+1
| | | | | | | | to fix virt-viewer.c: In function 'virt_viewer_connect': virt-viewer.c:686:13: error: format not a string literal and no format arguments [-Werror=format-security] g_warning(error->message);
* ovirt: Set host subject if neededChristophe Fergeau2013-06-111-0/+4
| | | | | | | | | | For some VMs, setting host subject on SpiceSession is needed to be able to connect to it using SPICE/SSL. Until recently, this was not exposed in oVirt REST API/libgovirt. Since oVirt 3.2/libgovirt 0.1.0, the host subject is available, this patch makes use of it. This should fix connection to oVirt VMs that were migrated to a different host than the one they were started on.
* Support Spice controller "auto-display-res" flagMarc-André Lureau2013-05-271-4/+3
| | | | | | | | The controller "auto-display-res" flag should be use to reconfigure guest to match client configuration. This is what the --fullscreen=auto-conf option is already made for. https://bugzilla.redhat.com/show_bug.cgi?id=967154
* Use a more descriptive FileDescriptionMarc-André Lureau2013-05-231-2/+2
| | | | | | This field is used to invite the user to close running instances, when updating the installation with an MSI. "A remote desktop client" isn't specific enough, use a VirtViewer specific description.
* app: move display on client monitors with --full-screenMarc-André Lureau2013-05-221-7/+3
| | | | | | | | | | | There used to be a check to fullscreen the only visible display on current monitor, by checking the number of visible monitors. Now that fullscreen is independant for each display, and goes on current monitor, it's useless. However, this code path is still used for the app --full-screen, at startup time. And it is still nicer to open the display on respective client monitors, rather than all on current monitor.
* Fix trivial criticalMarc-André Lureau2013-05-211-5/+7
| | | | | | GLib-CRITICAL **: g_strv_length: assertion `str_array != NULL' Committed without review under trivial rule.
* Show connect dialog again if connection from dialog failedMarc-André Lureau2013-05-174-19/+39
| | | | https://bugzilla.redhat.com/show_bug.cgi?id=864026
* spice-session: use a more robust signal connectMarc-André Lureau2013-05-171-4/+4
| | | | | | The Spice session may outlive the virt-viewer session, due to it's async nature. Use the more robust virt_viewer_signal_connect_object() to fix delayed potential crashes.
* Move connect dialog to remote-viewer.cMarc-André Lureau2013-05-173-97/+120
|
* Silence unused arguments warningsMarc-André Lureau2013-05-161-3/+3
| | | | | | | | | | In file included from virt-viewer-session-spice.c:41: gbinding.c: In function 'on_source_notify': gbinding.c:381: warning: unused parameter 'gobject' gbinding.c: In function 'on_target_notify': gbinding.c:422: warning: unused parameter 'gobject' gbinding.c: In function 'g_binding_init': gbinding.c:709: warning: unused parameter 'binding'
* Rename variable, fix gcc warningMarc-André Lureau2013-05-162-8/+8
| | | | virt-viewer-main.c:61: warning: declaration of 'basename' shadows a global declaration
* Remove the "container" logic used by legacy browser pluginMarc-André Lureau2013-05-165-67/+7
|
* window: wait until mapped before fullscreenMarc-André Lureau2013-05-161-27/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | On RHEL6, when starting virt-viewer --full-screen, metacity will remaximize & force-fullscreen when leaving fullscreen, which prevents user from accessing window titlebar, and end up with an incorrect fullscreen state. Thanks Owen Taylor for help debugging this: <owen> elmarco: So the interesting thing here is that the "legacy" isn't triggered off a configure request to a particular size, mutter seems to constrain the window back to fullscreen size on its own when it sees a change to WM_NORMAL_HINTS <owen> commit 4943d79d6844af3f7fc0a15ceadb69d95c4c5c61 <owen> Author: Peter Bloomfield <PeterBloomfield@BellSouth.net> <owen> Date: Wed Jan 20 10:59:07 2010 -0500 <owen> prevent window self-maximisation <owen> Is not in rhel6 metacity <owen> So probably that's the main difference <owen> can you just make your program not fullscreen initially but wait until it's mapped? (gets map-event on the toplevel) <elmarco> owen that seems to work <owen> I don't have a better solution to offer - sorry for the ugliness (code and initial mapping appearance) https://bugzilla.redhat.com/show_bug.cgi?id=876445
* Only fullscreen the new windowMarc-André Lureau2013-05-161-14/+26
| | | | | The current code will forcefully reset fullscreen all windows when a new window is created
* window: leave fullscreen on current windowMarc-André Lureau2013-05-141-1/+6
| | | | | | Since fdaa9b0ca, virt-viewer allows to fullscreen a single window. It feels more symetric to leave a single window from fullscreen as well, unless the application was started in fullscreen.
* window: fix send key menu popup positionMarc-André Lureau2013-05-141-3/+4
| | | | | | | | | Fix send key menu popup position. The current code wasn't correctly translating the menu coordinates based on the toplevel windows position, it was always using origin 0. https://bugzilla.redhat.com/show_bug.cgi?id=913601
* Add -- to seperate program arguments to server in man / --helpMarc-André Lureau2013-05-132-2/+2
| | | | | | | | Since some of the arguments are expecting following value, make it more explicit in the man and --help that -- can seperate options from server name or location. https://bugzilla.redhat.com/show_bug.cgi?id=843103
* Allow to fullscreen and position display independentlyMarc-André Lureau2013-05-131-1/+4
| | | | | | | | | | Currently, going from window to fullscreen mode changes all display to fullscreen and realize automatic positionning on corresponding client monitor. However, it allows for much more flexibility to allow entering fullscreen on the current monitor each windows seperately. This way the user can decide on arbitrary monitor arrangement. https://bugzilla.redhat.com/show_bug.cgi?id=558241
* spice: make sure display ready hint is sync after creationMarc-André Lureau2013-05-131-7/+7
| | | | | The ready state can be set during construction time and not notified immediately.
* misc: fix typoMarc-André Lureau2013-05-131-1/+1
|
* Do not restrict disabling display to != 0Marc-André Lureau2013-05-131-5/+1
| | | | | | | | | | | | | | | | Virt-viewer hides the display window 0, but doesn't disable the display. This is inconsistent with other displays, and prevent the guest OS from reconfiguring the main display. (for monitor 0 to be really disabled in multi-monitor guest, the agent need to support sparse monitor config. If not, the first display windows will be reopened to match the new un-sparse configuration) Note also the current Linux vdagent crashes when disabling 1st monitor, to be solved seperately. Related bug: https://bugzilla.redhat.com/show_bug.cgi?id=958550
* remote-viewer: set auto-conf before fullscreenMarc-André Lureau2013-05-031-4/+2
| | | | | | | | | | | | If a monitor is already in fullscreen, setting auto-conf to true will not move it until it is re-fullscreen This was unnoticed, because usually, the first client window is opened on the first monitor. Also we may argue than relying on g_object_set() property order is lame and fragile, we better split it in two seperate calls as this might break upstream. https://bugzilla.redhat.com/show_bug.cgi?id=872288
* Add missing include of config.hDaniel P. Berrange2013-05-011-0/+2
|
* Remove tab from source fileDaniel P. Berrange2013-05-011-1/+1
|
* file: add delete-this-file optionMarc-André Lureau2013-04-302-0/+34
| | | | | | | In case the virt-viewer setting file is meant to temporary, you may use the delete-this-file=1 option to ask the client to remove it, once it has been read. This is useful for example in ovirt context, where connection settings file are generated and can't be reused.
* Exit virt-viewer when trying to close any windowChristophe Fergeau2013-04-253-43/+49
| | | | | | | | Currently, in multi-screen scenarios, when closing one remote-viewer window, the corresponding screen gets disabled in the guest OS. This can be confusing as this behaves very differently from File/Quit. This commit will exit the whole application when the user tries to close one of virt-viewer window.
* gtk-3: Rework window size handlingHans de Goede2013-04-232-16/+59
| | | | | | | | | | | | | | | | With gtk-2 we have a special hack, where at first we make the virt-viewer-display request its actual size, and then once the window is mapped, we request a size of 50x50 to allow the user to resize the window to something smaller. With gtk-3 >= 3.8.1 this is broken, and the window gets resized to a smaller size as soon as we change the size request to 50x50. gtk-3 has a much better way of dealing with this in the form of widgets being able to specify both a minimal and a natural size. This patch changes virt-viewer to use this with gtk-3, instead of the gtk-2 hack. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* ovBox: Make get_preferred_width/height differentiate between min and naturalHans de Goede2013-04-231-16/+45
| | | | | | | | gtk-3's widget size negotiation code differentiates between the minimum size and the natural size of a widget, fix ovBox to pass this along from its underlying widget to its parent. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* virt-viewer-window: cleanup zoom handlingHans de Goede2013-04-231-30/+18
| | | | | | | | We've 3 similar zoom function zoom in / out / reset. in / out do not schedule a window resize when there is no display, where as reset does, which is not consistent. Also there is some duplicate code between them. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* virt-viewer-display: Use virt_viewer_display_queue_resize where possibleHans de Goede2013-04-231-2/+2
| | | | Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* spice: forward secure-channelsMarc-André Lureau2013-04-154-0/+35
| | | | This needs spice-gtk >= 0.19.7 and will warn with lower version
* Remove redundant check, g_strdup(NULL) is allowedChristophe Fergeau2013-04-131-1/+1
| | | | This also makes the code consistent with its surroundings.