summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* spice: always send auto-conf on agent connectionMarc-André Lureau2013-03-231-15/+13
| | | | | | | | Restore the auto-conf client monitor configuration whenever the agent is started. This ensures the guest has the expected number of monitors enabled when rebooting in fullscreen. https://bugzilla.redhat.com/show_bug.cgi?id=918997
* virt-viewer-display-spice: Skip monitor info in fullscreen-auto-conf modeHans de Goede2013-03-231-2/+9
| | | | | | | | | When we are in fullscreen-auto-conf virt-viewer-session-spice sends a monitor-info message to the agent with the exact client monitor info, and virt-viewer-display-spice should not override that. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Marc-André Lureau <marcandre.lureau@redhat.com>
* Forward directly key events to displayMarc-André Lureau2013-03-231-0/+12
| | | | | | | | | | | Even if the display is disabled, we should keep sending key events to guest. It can wake up from sleep for instance. There is a single widget per window, so we can directly send key events there. If the menu is active, it has the grab, so the window doesn't receive those key events. https://bugzilla.redhat.com/show_bug.cgi?id=870710
* virt-viewer-app: Call virt_viewer_app_update_menu_displays on show_hint changeHans de Goede2013-03-211-0/+1
| | | | | | | | | | | | | | | Since the sensitivity of the display menu-check-items depends on show_hint, we need to call virt_viewer_app_update_menu_displays on show_hint change. This fixes the following scenario: 1) Linux guest with upto 4 displays on a single qxl dev 2) Configure it for 2 displays 3) Switch to a text-console in the guest (ie send ctrl+alt+F3) 4) All displays except for disp 1 are now not sensitve in the menu 5) Switch back to X 6) The second display in the view->displays menu is still not sensitive Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* virt-viewer-display: Document difference between nth display and monitorHans de Goede2013-03-211-2/+2
| | | | Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* virt-viewer-window: Don't use priv->display when it is NULLHans de Goede2013-03-211-1/+5
| | | | | | | | Add some missing checks for not having a display. Note that where functions should not be called (ie menu items should be disabled) I've used g_return_if_fail. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* virt-viewer-window: Store the monitor locallyHans de Goede2013-03-211-4/+9
| | | | | | | | | | | | | | | | | | | | With commit 81ed9d13 "virt_viewer_window_enter_fullscreen: Pass in monitor for fullscreen window" we need a monitor number to determine where to move the window when going fullscreen. Since the VirtViewerDisplay needs to know the fullscreen monitor number too, to determine the fullscreen size it was being stored there. But we don't always have a display, leading to errors like: (remote-viewer:7996): remote-viewer-CRITICAL **: virt_viewer_display_get_monitor: assertion `VIRT_VIEWER_IS_DISPLAY(self)' failed And to the monitor number not always being stored. This patchset fixes this by storing the monitor number inside VirtViewerWindow, and passing it to VirtViewerDisplay only when we've a display. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* Fix compilation with older glib versionsChristophe Fergeau2013-03-203-0/+53
| | | | | | Recent commits introduced use of g_clear_object and g_byte_array_new_take which are only present respectively in glib 2.28 and 2.32
* Fix compilation with older gtk+Christophe Fergeau2013-03-202-0/+6
| | | | | gtk_widget_get_mapped is only available in gtk+ 2.20, so we need a compat definition for older releases.
* virt-viewer-display-spice: Use display monitor property for fullscreen sizeHans de Goede2013-03-201-1/+3
| | | | | | | | | | | | | | | | When a display is pinned to a certain monitor for fullscreen, it will be moved there when going fullscreen. Currently we use gdk_screen_get_monitor_at_window to determine which monitor we are on and get the size from that monitor. But this is racy, sometimes the size_allocate function runs before the move has finished and we get the size from the wrong monitor: https://bugzilla.redhat.com/show_bug.cgi?id=918570 Since if the display is pinned to a certain monitor, the display will always end up on that monitor we can avoid the race by simply using that monitors size. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* virt_viewer_window_enter_fullscreen: Pass in monitor for fullscreen windowHans de Goede2013-03-203-20/+22
| | | | | | | | | | Rather then passing in a move boolean + coordinates to move the window to for fullscreen mode, simply pass in the monitor, so that the underlying objects can also use the monitors size to determine the display size. Note: pass in -1 to use the monitor the window is currently on. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* virt-viewer-display: Add monitor propertyHans de Goede2013-03-202-0/+36
| | | | Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* spice: update fullscreen state on display creationMarc-André Lureau2013-03-131-0/+1
| | | | | | | This ensure self->priv->auto_resize has correct value. And allow changing guest resolution when started in fullscreen. https://bugzilla.redhat.com/show_bug.cgi?id=873298
* Don't override G_LOG_DOMAIN=allMarc-André Lureau2013-03-131-1/+2
| | | | | If the string is different, the GLib log handler will not log all messages.
* file: add version field, raise an error if incompatibilyMarc-André Lureau2013-03-084-7/+58
| | | | | | The virt-viewer connection file can now have a version=0.5 field. If the virt-viewer version opening the connection doesn't provide at least that version, an error is raised with the version required.
* Allow app_initial_connect() to raise an errorMarc-André Lureau2013-03-088-64/+81
|
* Add virt_viewer_compare_version()Marc-André Lureau2013-03-082-0/+50
|
* Add VIRT_VIEWER_ERROR GErrorMarc-André Lureau2013-03-082-0/+13
|
* Fix send-key menu not showing in fullscreen with gtk3 (rhbz#913601)Hans de Goede2013-02-211-0/+2
| | | | | | | This should also fix the send-key menu showing in the wrong position with a gtk2 build, when the tooltray icon is clicked on the 2nd or higher monitor. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* build-sys: add --with-buildid to details build versionMarc-André Lureau2013-02-123-3/+3
| | | | | | Add a configure argument to append build version details, similar to what Daniel Berrange proposed in the "use finer package version in mingw-virt-viewer" thread on the ML.
* Register remote-viewer mime handlingMarc-André Lureau2013-02-112-11/+0
| | | | | | Unfortunately, I don't see yet how we could avoid the browser dialog asking which application to open. On Firefox, each user has a mimeTypes.rdf, but we can't really modify it..
* win32: process message queue in debug-helperMarc-André Lureau2013-02-111-2/+14
| | | | | | | | | Process messages while waiting for pi.hProcess. Avoid the spice-x from hanging in WaitForInputIdle(), although the client itself might not be ready, not even started... https://bugzilla.redhat.com/show_bug.cgi?id=903190
* virtviewer-window: Make sure fullscreen window stays on the same monitorHans de Goede2013-02-111-1/+14
| | | | | | | | | | | | | Sometimes the guest may shortly disable and then re-enable a monitor while in fullscreen mode, this happens for example when changing display resolution through gnome-display-properties inside the guest. This causes the client window-manager to remap the window, and this can cause it to end up on a different monitor. This patch fixes this by remembering the position the window is places at when going fullcreen and moving it there again when its gets (re-)shown. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* Fix "Do not ask me again" checkbox settings savingMarc-André Lureau2013-02-071-17/+22
| | | | | | | | | | | | | | | | | Based on bug report by Hans: The code block for saving was below this check: if (priv->session) { virt_viewer_session_close(VIRT_VIEWER_SESSION(priv->session)); if (priv->connected) { priv->quiting = TRUE; return; } } Which means it never executes when quiting virt-viewer while conneced, causing the "Do not ask me again" checkbox settings to not be saved.
* usbredir: Fix usbredir menu always being grayed out on monitor 2+Hans de Goede2013-02-061-0/+4
| | | | Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* virt-viewer-display-spice: Pass proper x and y coordinates in windowed modeHans de Goede2013-02-061-0/+7
| | | | | | | | | | | This stops monitor order from the guest from being re-arranged in multi- monitor setups when switching between fullscreen and windowed mode. Note this relies on spice-gtk's auto monitor alignment code, which currently does not properly handle setups where there is more then 1 row of monitors, ie 2x1 - 5x1 will work fine, but 2x2 will not. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* virt-viewer-display-spice: Use real monitor coordinates in fullscreenHans de Goede2013-02-061-1/+8
| | | | | | | | | Now that we pass the real monitor coordinates, tell spice-gtk to use them, rather then to use the passed coordinates as input for its automatic monitor alignment. This fixes ie monitors in a 2x2 grid, showing up as a 4x1 configuration in the guest. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* virt-viewer-display-spice: Pass real monitor coordinates in fullscreenHans de Goede2013-02-061-1/+4
| | | | | | Rather then always passing +0+0 Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* g_{message,warning}: Use printf styleMichal Privoznik2013-02-042-2/+2
| | | | | | The g_message() and g_warning functions expect printf style of arguments. That is, whenever we want to print a string, it has to be preceded with "%s" format.
* remote-viewer: controller sets spice session proxyMarc-André Lureau2013-01-311-1/+2
| | | | | Trivial change since spice-gtk now has proxy session property and controller message, just forward it.
* Add a "Do not ask me again" checkbox when closing appMarc-André Lureau2013-01-311-2/+62
|
* Always ask user about closing sessionMarc-André Lureau2013-01-311-11/+2
| | | | | | | | Currently, virt-viewer doesn't ask for user confirmation when closing a single monitor session. Always ask before closing, as requested by user. https://bugzilla.redhat.com/show_bug.cgi?id=803912
* spice: add proxy configuration to connection fileMarc-André Lureau2013-01-293-1/+33
|
* Remove unused labelChristophe Fergeau2013-01-241-1/+0
| | | | It's no longer used after aecd80ec7
* Remove unused variableChristophe Fergeau2013-01-241-1/+0
| | | | 'window' is no longer used after 412bcf6f.
* Fix warning when compiling without spice-gtk supportChristophe Fergeau2013-01-241-0/+1
| | | | | | | | | | | When remote-viewer is compiled without spice-gtk support, spice-session.h will not get included in remote-viewer.c, causing these warnings: remote-viewer.c: In function 'remote_viewer_start': remote-viewer.c:693:9: warning: implicit declaration of function 'virt_viewer_session_set_file' [-Wimplicit-function-declaration] remote-viewer.c:693:9: warning: nested extern declaration of 'virt_viewer_session_set_file' [-Wnested-externs]
* virt-viewer-display-spice: Get monitor under our windowHans de Goede2013-01-221-1/+2
| | | | | | | | | | | When getting monitor info for going fullscreen, Get the monitor under *our* window rather then under the root-window. Noticed this not working properly when testing the monitor coordinates stuff, but this should also help people seeing problems when using non equally sized monitors. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* vnc: add connection by fileMarc-André Lureau2013-01-185-22/+52
| | | | | | | | | | | | | | | Learn to connect to a VNC server with the connection details file, ex: [virt-viewer] type=vnc host=localhost port=2356 password=foobar v2: - add username/password support https://bugzilla.redhat.com/show_bug.cgi?id=843410
* file: add username supportMarc-André Lureau2013-01-182-0/+27
|
* Make hotkey configuration functionality available from the cmdline (v2)Hans de Goede2012-12-212-0/+8
| | | | | | | Changes in v2: -Add --hotkeys documentation to the man-pages Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* Add a virt_viewer_app_set_hotkeys() helper functionHans de Goede2012-12-213-40/+55
| | | | Signed-off-by: Hans de Goede <hdegoede@redhat.com>
* Improve check for overridden grab key combinationChristophe Fergeau2012-12-202-4/+5
| | | | | | | | | remote-viewer can either use the default grab/ungrab handled by spice-gtk, or override it and use the standard gtk+ accelerator mechanism. However, the code currently assumes that if any accelerator is set in remote-viewer, then the grab key has been overridden. This commit makes sure the grab key is actually overridden before assuming so.
* Don't leak SpiceGrabSequence in enable_accel_changedChristophe Fergeau2012-12-201-2/+3
|
* Improve hotkeys controller behaviourChristophe Fergeau2012-12-201-0/+5
| | | | | | | Disable default accelerators when setting bindings from the controller in case the controller does not override them all. This ensures we don't inherit from the bindings set in VirtViewerApp::constructor if the controller doesn't set any bindings for a given action.
* Use monitor geometry, not screen sizeMarc-André Lureau2012-12-071-2/+6
| | | | | | | | | | | | | In a recent commit, 3bb6f5ec805ecfe78eba6d4d98e3ffcab195273a, I introduced a regression: going fullscreen would no longer match client and guest resolution correctly. A GdkScreen is not necessarily the physical screen monitor size. Lookup the physical monitor size using gdk_screen_get_monitor_geometry(). Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=881020
* session-spice: Cast CA string to gunit8 pointerMichal Privoznik2012-12-051-1/+1
| | | | | | | SpiceSession has 'ca' property which is type of GByteArray*. However, when we read the property from file, we read it as string. For conversion g_byte_array_new_take() is used which takes given pointer as guint8* so we need to do the cast.
* Sanitize syntax-checkMichal Privoznik2012-12-051-0/+1
| | | | | | | | make syntax-check is producing some errors about empty line at EOF and missing #include <config.h> in src/virt-viewer-file.c * src/virt-viewer-file.c: add #include <config.h> * data/virt-viewer-debug.nsis.in: remove empty line at EOF
* Make .desktop file comply with specDoug Goldstein2012-12-051-2/+2
| | | | | | | The .desktop file did not comply with the Desktop Entry spec as checked with desktop-file-validate. Boolean keys are defined as taking only 'true' or 'false', the entry Terminal had False. MimeType is a string list and therefore must be terminated with a ;
* remote-viewer: learn to connect from fileMarc-André Lureau2012-11-271-2/+22
| | | | | v2: - move some variables to inner-block as requested by reviewer
* spice: learn to connect from fileMarc-André Lureau2012-11-271-1/+90
|