1830 Commits

Author SHA1 Message Date
Paul Donohue
dde79e637a src: Fix hotkey GTK actions
"win.<action>" and "app.<action>" were mixed up in a few places.
Smartcard actions use "app" and other actions use "win".

Signed-off-by: Paul Donohue <git@PaulSD.com>
2021-07-30 10:03:02 +00:00
Paul Donohue
64a2ecdfe3 tests: Disable smartcard hotkey test to work around CI issue
The next commit fixes a bug which was causing
gtk_application_get_accels_for_action() in
virt_viewer_update_smartcard_accels() to incorrectly return nothing.
Now that it is correctly working,
gtk_application_get_accels_for_action() is internally trying to call
gdk_keymap_get_for_display(), which fails if there is no available X11
display.  This causes the CI pipeline to fail since the CI pipeline
doesn't have an X11 display.

To work around this, disable the smartcard hotkey test.

Signed-off-by: Paul Donohue <git@PaulSD.com>
2021-07-30 10:03:02 +00:00
Paul Donohue
4175930194 src: Release keyboard grab in addition to mouse grab when using spice
This requires spice-gtk 0.40 or later:
ea81b97f74

Signed-off-by: Paul Donohue <git@PaulSD.com>
2021-07-30 10:03:02 +00:00
Daniel P. Berrangé
ccf5c5eace ci: refresh centos-stream container
It is no longer possible to just install an extra package to run regular
centos into centos stream.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-07-27 16:50:29 +01:00
Daniel P. Berrangé
2e6adf9b85 src: avoid warnings from use of G_GNUC_FALLTHROUGH
Since glib >= 2.69 we get warnings:

../src/ovirt-foreign-menu.c: In function 'ovirt_foreign_menu_next_async_step':
../src/ovirt-foreign-menu.c:319:13: error: Not available before 2.60 [-Werror]
  319 |         G_GNUC_FALLTHROUGH;
      |             ^~~~~~~~~~~~~~~
../src/ovirt-foreign-menu.c:345:13: error: Not available before 2.60 [-Werror]
  345 |         G_GNUC_FALLTHROUGH;
      |             ^~~~~~~~~~~~~~~
../src/ovirt-foreign-menu.c:351:13: error: Not available before 2.60 [-Werror]
  351 |         G_GNUC_FALLTHROUGH;
      |             ^~~~~~~~~~~~~~~
../src/ovirt-foreign-menu.c:357:13: error: Not available before 2.60 [-Werror]
  357 |         G_GNUC_FALLTHROUGH;
      |             ^~~~~~~~~~~~~~~
cc1: all warnings being treated as errors

GLib is right to warn about this, since it does not know that we
provided our own back-compat definition of the macro. For now we have to
temporarily purge glib's macro entirely in order to get rid of the
warning that is bogus for our usage.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-07-27 16:50:04 +01:00
Daniel P. Berrangé
56339ae111 gitlab: use custom docker:dind image
The current docker:dind container has broken default seccomp filter that
results in clone3 being blocked, which in turn breaks Fedora 35 rawhide.

This custom image has a workaround that causes the seccomp filter to
return ENOSYS for clone3 instad of EPERM, thus triggering glibc to
fallback to clone correctly.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-07-27 14:55:13 +01:00
Charles Lee
3c2367bcc8 Translated using Weblate (Chinese (Simplified) (zh_CN))
Currently translated at 100.0% (178 of 178 strings)

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/zh_CN/

Signed-off-by: Charles Lee <lchopn@gmail.com>
2021-07-01 00:13:39 +02:00
Daniel P. Berrangé
70fe65f188 Fix creation of window when using single QXL card with 2 heads
With a single QXL card with > 1 head, initially only the first head
is active. As a result virt-viewer will not create the windows when
it first connects. They have to be created explicitly when user
requests to activate the window.

Fixes: https://gitlab.com/virt-viewer/virt-viewer/-/issues/46
Fixes: https://gitlab.com/virt-viewer/virt-viewer/-/issues/37
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-06-28 18:47:02 +01:00
Jan Kuparinen
7c38d07b86 Translated using Weblate (Finnish)
Currently translated at 100.0% (178 of 178 strings)

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/fi/

Signed-off-by: Jan Kuparinen <copper_fin@hotmail.com>
2021-05-27 13:33:01 +02:00
Charles Lee
84c4ae4ae3 Translated using Weblate (Chinese (Simplified) (zh_CN))
Currently translated at 91.5% (163 of 178 strings)

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/zh_CN/

Signed-off-by: Charles Lee <lchopn@gmail.com>
2021-05-27 13:33:01 +02:00
Daniel P. Berrangé
5367a7b123 src: relax minimum desktop width/height
The desktop-width / desktop-height properties are set to have a min
valid value of 320x200, and this also matches the minimum window
dimensions reported to GTK.

In practice when a guest restarts, spice can report width/height
values smaller than this

(virt-viewer:9359): GLib-GObject-WARNING **: 12:57:05.556: value "64" of type 'gint' is invalid or out of range for property 'desktop-width' of type 'gint'

(virt-viewer:9359): GLib-GObject-WARNING **: 12:57:05.556: value "64" of type 'gint' is invalid or out of range for property 'desktop-height' of type 'gint'

There is not an obvious need to enforce this minimum on the properties,
as the window dimension sizing will do the right thing regardless.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-05-26 17:32:19 +01:00
Daniel P. Berrangé
aa6b4b40b8 src: update action sensitivity when creating window
If we don't explicitly set action sensitivity after associating a
display with the window, the actions will end up with the wrong
state. This exhibits itself as send key actions being marked
disabled despite being connected,

Related: https://gitlab.com/virt-viewer/virt-viewer/-/issues/37
Closes: https://gitlab.com/virt-viewer/virt-viewer/-/issues/41
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-05-26 17:32:08 +01:00
Daniel P. Berrangé
4820d05c82 src: correctly set display state when cancelling quit request
When the last window is closed we optionally show a confirmation dialog
to check if user wants to quit. If the user cancels, we need to ensure
the display menu state gets set back to checked.

We called g_action_change_state correctly, but a later call to
g_simple_action_set_state used the "visible" variable which was not
correctly reset back to TRUE upon cancel.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-05-05 12:40:52 +00:00
Daniel P. Berrangé
73f567ea94 src: ensure auth entry fields are cleared
If authentication fails we reshow the same authentication dialog box
again. Rather than leaving the previous incorrect information in the
text entry boxes we need to clear them.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-05-05 12:00:29 +01:00
Daniel P. Berrangé
f48b17e4d0 Remove remaining traces of changelog
We intentionally stopped generating a changelog from git history in the
switch to meson, since the tiny number of people who care can just look
at the git history directly. For end users the "NEWS" file is a more
consumable record of what's changed at a high level.

The empty ChangeLog was still in git though from the autoconf days and
thus ended up in the meson generated dist. It was also still mentioned
in syntax check rules and the RPM spec.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-05-04 18:18:27 +01:00
Daniel P. Berrangé
dc378540ec rpm: set os-id when building for RHEL
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-04-26 15:01:58 +01:00
Daniel P. Berrangé
65fe7379f8 config.h: conditionally define REMOTE_VIEWER_OS_ID
It should only be set in config.h if it is not the empty string

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-04-26 15:01:50 +01:00
Daniel P. Berrangé
d07b1e5bad config.h: avoid extra hyphen in build ID value
The meson.build file already adds a hyphen.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-04-26 14:57:22 +01:00
Daniel P. Berrangé
7dc64fef6b rpm: explicitly tell meson to disable spice/ovirt
%meson will force enable all features, so simply omitting the
BuildRequires is not sufficient to disable spice/ovirt. Meson
must be explicitly told to do so.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-04-26 10:24:23 +01:00
Ján Tomko
9e36a59c80 src: initialize keymaps variable
My clang version 11.0.0 (Fedora 11.0.0-2.fc33) complains:
../src/virt-viewer-app.c:610:9: error: variable 'keymaps' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized]
    if (keymap_string) {
        ^~~~~~~~~~~~~
../src/virt-viewer-app.c:614:10: note: uninitialized use occurs here
    if (!keymaps || g_strv_length(keymaps) == 0) {
         ^~~~~~~
../src/virt-viewer-app.c:610:5: note: remove the 'if' if its condition is always true
    if (keymap_string) {
    ^~~~~~~~~~~~~~~~~~~
../src/virt-viewer-app.c:595:27: note: initialize the variable 'keymaps' to silence this warning
    gchar **key, **keymaps, **valkey, **valuekeys = NULL;
                          ^
                           = NULL
1 error generated.

Initialize the variable to fix the uninitialized use.

Signed-off-by: Ján Tomko <jtomko@redhat.com>
2021-04-23 15:59:49 +02:00
Daniel P. Berrangé
09f268b05f rpm: remove obsolete icon path from file list
This fixes

  commit 7040dded11aa363d54684da3295d8cd50a2eab3a
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Fri Feb 19 12:51:44 2021 +0000

    icons: remove obsolete usb icon

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
v10.0
2021-04-20 17:16:19 +01:00
Daniel P. Berrangé
6a9909b105 Add NEWS for 10.0 release
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-04-20 14:00:07 +01:00
Pino Toscano
ed58a1bd45 Translated using Weblate (Italian)
Currently translated at 100.0% (178 of 178 strings)

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/it/

Signed-off-by: Pino Toscano <toscano.pino@tiscali.it>
2021-04-20 10:46:51 +02:00
Daniel P. Berrangé
16714e97a5 src: fix case sensitive accelerator parsing
The gtk_accelerator_parse code is case sensitive when resolving key
names, however, the spice_hotkey_to_gtk_accelerator method converts
everything to uppercase. The latter allows the user to provide "f"
as the key and get it converted to "F" which matches a GDK key name.
The latter breaks for most other keys though, eg "comma" is required
to be all lowercase and "Menu" must have the initial capital.

To cope with this we try the gtk_accelerator_parse call twice, once
with the spice munged key name for back compat, and once with the
exact user specified key name.

https://gitlab.com/virt-viewer/virt-viewer/-/issues/30
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-04-19 14:54:37 +01:00
Jan Kuparinen
6f73712a16 Translated using Weblate (Finnish)
Currently translated at 100.0% (178 of 178 strings)

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/fi/

Signed-off-by: Jan Kuparinen <copper_fin@hotmail.com>
2021-04-18 12:02:08 +02:00
Yuri Chornoivan
5f52dfc320 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (178 of 178 strings)

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/uk/

Signed-off-by: Yuri Chornoivan <yurchor@ukr.net>
2021-04-18 12:02:07 +02:00
Oğuz Ersen
3f0c5648b3 Translated using Weblate (Turkish)
Currently translated at 100.0% (178 of 178 strings)

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/tr/

Signed-off-by: Oğuz Ersen <oguzersen@protonmail.com>
2021-04-18 12:02:07 +02:00
Göran Uddeborg
eab4097841 Translated using Weblate (Swedish)
Currently translated at 100.0% (178 of 178 strings)

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/sv/

Signed-off-by: Göran Uddeborg <goeran@uddeborg.se>
2021-04-18 12:02:07 +02:00
simmon
8ab6c1b02a Translated using Weblate (Korean)
Currently translated at 100.0% (178 of 178 strings)

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/ko/

Signed-off-by: simmon <simmon@nplob.com>
2021-04-18 12:02:07 +02:00
Pino Toscano
ec6a76f7a5 Translated using Weblate (Italian)
Currently translated at 92.6% (165 of 178 strings)

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/it/

Signed-off-by: Pino Toscano <toscano.pino@tiscali.it>
2021-04-18 12:02:07 +02:00
Pavel Borecki
68b3f7685a Translated using Weblate (Czech)
Currently translated at 100.0% (178 of 178 strings)

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/cs/

Signed-off-by: Pavel Borecki <pavel.borecki@gmail.com>
2021-04-18 12:02:06 +02:00
Piotr Drąg
3556498bff Translated using Weblate (Polish)
Currently translated at 100.0% (178 of 178 strings)

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/pl/

Signed-off-by: Piotr Drąg <piotrdrag@gmail.com>
2021-04-15 17:29:56 +02:00
Yuri Chornoivan
c97fa32d3f Translated using Weblate (Ukrainian)
Currently translated at 100.0% (154 of 154 strings)

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/uk/

Signed-off-by: Yuri Chornoivan <yurchor@ukr.net>
2021-04-14 18:15:44 +02:00
Oğuz Ersen
25f2a7822b Translated using Weblate (Turkish)
Currently translated at 100.0% (154 of 154 strings)

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/tr/

Signed-off-by: Oğuz Ersen <oguzersen@protonmail.com>
2021-04-14 18:15:44 +02:00
simmon
b178007a7b Translated using Weblate (Korean)
Currently translated at 100.0% (154 of 154 strings)

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/ko/

Signed-off-by: simmon <simmon@nplob.com>
2021-04-14 18:15:44 +02:00
Piotr Drąg
ec1894e1de Translated using Weblate (Polish)
Currently translated at 100.0% (154 of 154 strings)

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/pl/

Signed-off-by: Piotr Drąg <piotrdrag@gmail.com>
2021-04-14 18:15:44 +02:00
Weblate
955ffbaee6 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/

Signed-off-by: Fedora Weblate Translation <i18n@lists.fedoraproject.org>

Update translation files

Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/

Signed-off-by: Fedora Weblate Translation <i18n@lists.fedoraproject.org>
2021-04-14 18:15:44 +02:00
Jan Kuparinen
6813440baa Translated using Weblate (Finnish)
Currently translated at 100.0% (179 of 179 strings)

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/fi/

Signed-off-by: Jan Kuparinen <copper_fin@hotmail.com>
2021-04-14 18:15:43 +02:00
simmon
0b1fc2e97f Translated using Weblate (Korean)
Currently translated at 100.0% (179 of 179 strings)

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/ko/

Signed-off-by: simmon <simmon@nplob.com>

Translated using Weblate (Korean)

Currently translated at 100.0% (179 of 179 strings)

Translation: virt-viewer/virt-viewer
Translate-URL: https://translate.fedoraproject.org/projects/virt-viewer/virt-viewer/ko/

Signed-off-by: simmon <simmon@nplob.com>
2021-04-14 18:15:43 +02:00
Daniel P. Berrangé
8140b6448d po: regenerate POT file with missing UI files added
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-04-14 16:58:10 +01:00
Daniel P. Berrangé
e734a52cec po: add missing UI files to POTFILES
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-04-14 16:57:17 +01:00
Daniel P. Berrangé
82c14f3dea po: sort the POTFILES contents alphabetically
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-04-14 16:55:55 +01:00
Daniel P. Berrangé
32ad23bff7 Refresh translatable strings in pot file
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-04-14 11:39:57 +01:00
Daniel P. Berrangé
30e6f4cd03 src: update for renamed GTK-VNC zoom API
The API was renamed before GTK-VNC 1.2.0 release.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-04-14 11:39:26 +01:00
Daniel P. Berrangé
47c22dc23b src: enable remote desktop resize with VNC
GTK-VNC has native support for remote desktop resize, provided that we
always give the widget the full available allocation. This requires that
we turn off VirtViewerDisplay's code for keeping aspect ratio, and
instead enable GTK-VNC's equivalent.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-04-08 15:08:07 +01:00
Daniel P. Berrangé
20f5b18b6a src: add prop to control forced aspect ratio
When the VirtViewerDisplay class resizes the child display widget, it
attempts to preserve the remote desktop aspect ratio. This is useful in
general, if the display widget can't do this itself. The implication,
however, is that VirtViewerDisplay also has to take ownership of the
remote framebuffer resize functionality.

It is thus useful to disable VirtViewerDisplay's aspect ratio
preservation when the display widget can do this natively, as it can
then also do desktop resizes natively.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-04-08 15:08:07 +01:00
Daniel P. Berrangé
e9e2ebb796 src: add --auto-resize <always|never> CLI arg
This is used to control whether resizing of the remote framebuffer
is permitted.

Fixes: https://gitlab.com/virt-viewer/virt-viewer/-/issues/20
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-04-08 15:08:06 +01:00
Daniel P. Berrangé
707f74b9c4 src: add menu to control whether framebuffer resize is attempted
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-04-08 15:07:08 +01:00
Daniel P. Berrangé
512efe70c6 src: initialize actions during instance init
Currently the GActionMap is registered during the application
startup. This takes place after the command line args are processed,
so prevents the CLI processing from using actions.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-04-08 15:07:08 +01:00
Daniel P. Berrangé
83db5b3c64 src: remove unused property constant
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-04-08 15:07:08 +01:00