[PATCH 0/7] ui: add vdagent implementation and clipboard support.

Gerd Hoffmann posted 7 patches 3 years, 2 months ago
Test checkpatch failed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20210219131349.3993192-1-kraxel@redhat.com
Maintainers: "Marc-André Lureau" <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>, Eric Blake <eblake@redhat.com>, Gerd Hoffmann <kraxel@redhat.com>, Markus Armbruster <armbru@redhat.com>
There is a newer version of this series
include/ui/clipboard.h |  68 +++++
include/ui/gtk.h       |  66 +++++
ui/vnc.h               |  24 ++
chardev/char.c         |   6 +
ui/clipboard.c         |  92 ++++++
ui/gtk-clipboard.c     | 124 ++++++++
ui/gtk.c               |  56 +---
ui/vdagent.c           | 624 +++++++++++++++++++++++++++++++++++++++++
ui/vnc-clipboard.c     | 326 +++++++++++++++++++++
ui/vnc.c               |  20 +-
qapi/char.json         |  17 ++
ui/meson.build         |   5 +-
ui/trace-events        |   9 +
13 files changed, 1375 insertions(+), 62 deletions(-)
create mode 100644 include/ui/clipboard.h
create mode 100644 ui/clipboard.c
create mode 100644 ui/gtk-clipboard.c
create mode 100644 ui/vdagent.c
create mode 100644 ui/vnc-clipboard.c
[PATCH 0/7] ui: add vdagent implementation and clipboard support.
Posted by Gerd Hoffmann 3 years, 2 months ago
Fist sketch of cut+paste support for vnc.  On the guest side we are
going to reuse the spice vdagent, so things should work out-of-the-box
with guests in the wild.  So this patch set brings a qemu implemenation
of the vdagent protocol.

Beside that there is the clipboard infrastructure of course.  For now
only text support is there.  The design allows adding more data types,
so we can add image support and maybe more later on.  So far vdagent,
vnc server and gtk ui are hooked up.

Usage: qemu \
  -chardev vdagent,id=vdagent,clipboard=on \
  -device virtio-serial-pci \
  -device virtserialport,chardev=vdagent,name=com.redhat.spice.0

Enjoy!

Gerd Hoffmann (7):
  ui: add clipboard infrastructure
  ui/vdagent: core infrastructure
  ui/vdagent: add mouse support
  ui/vdagent: add clipboard support
  ui/vnc: clipboard support
  ui/gtk: move struct GtkDisplayState to ui/gtk.h
  ui/gtk: add clipboard support

 include/ui/clipboard.h |  68 +++++
 include/ui/gtk.h       |  66 +++++
 ui/vnc.h               |  24 ++
 chardev/char.c         |   6 +
 ui/clipboard.c         |  92 ++++++
 ui/gtk-clipboard.c     | 124 ++++++++
 ui/gtk.c               |  56 +---
 ui/vdagent.c           | 624 +++++++++++++++++++++++++++++++++++++++++
 ui/vnc-clipboard.c     | 326 +++++++++++++++++++++
 ui/vnc.c               |  20 +-
 qapi/char.json         |  17 ++
 ui/meson.build         |   5 +-
 ui/trace-events        |   9 +
 13 files changed, 1375 insertions(+), 62 deletions(-)
 create mode 100644 include/ui/clipboard.h
 create mode 100644 ui/clipboard.c
 create mode 100644 ui/gtk-clipboard.c
 create mode 100644 ui/vdagent.c
 create mode 100644 ui/vnc-clipboard.c

-- 
2.29.2



Re: [PATCH 0/7] ui: add vdagent implementation and clipboard support.
Posted by no-reply@patchew.org 3 years, 2 months ago
Patchew URL: https://patchew.org/QEMU/20210219131349.3993192-1-kraxel@redhat.com/



Hi,

This series seems to have some coding style problems. See output below for
more information:

Type: series
Message-id: 20210219131349.3993192-1-kraxel@redhat.com
Subject: [PATCH 0/7] ui: add vdagent implementation and clipboard support.

=== TEST SCRIPT BEGIN ===
#!/bin/bash
git rev-parse base > /dev/null || exit 0
git config --local diff.renamelimit 0
git config --local diff.renames True
git config --local diff.algorithm histogram
./scripts/checkpatch.pl --mailback base..
=== TEST SCRIPT END ===

Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384
From https://github.com/patchew-project/qemu
 * [new tag]         patchew/20210219131349.3993192-1-kraxel@redhat.com -> patchew/20210219131349.3993192-1-kraxel@redhat.com
Switched to a new branch 'test'
c2b97c6 ui/gtk: add clipboard support
79fe669 ui/gtk: move struct GtkDisplayState to ui/gtk.h
067e7e7 ui/vnc: clipboard support
e79dd8a ui/vdagent: add clipboard support
f83e621 ui/vdagent: add mouse support
55faac0 ui/vdagent: core infrastructure
4670677 ui: add clipboard infrastructure

=== OUTPUT BEGIN ===
1/7 Checking commit 4670677501e1 (ui: add clipboard infrastructure)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#20: 
new file mode 100644

total: 0 errors, 1 warnings, 167 lines checked

Patch 1/7 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
2/7 Checking commit 55faac09768e (ui/vdagent: core infrastructure)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#90: 
new file mode 100644

ERROR: if this code is redundant consider removing it
#142: FILE: ui/vdagent.c:48:
+#if 0

WARNING: line over 80 characters
#144: FILE: ui/vdagent.c:50:
+    [VD_AGENT_CAP_CLIPBOARD_NO_RELEASE_ON_REGRAB] = "clipboard-no-release-on-regrab",

ERROR: if this code is redundant consider removing it
#165: FILE: ui/vdagent.c:71:
+#if 0

total: 2 errors, 2 warnings, 282 lines checked

Patch 2/7 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

3/7 Checking commit f83e621420e6 (ui/vdagent: add mouse support)
ERROR: if this code is redundant consider removing it
#139: FILE: ui/vdagent.c:175:
+#if 0

total: 1 errors, 0 warnings, 229 lines checked

Patch 3/7 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

4/7 Checking commit e79dd8a43aef (ui/vdagent: add clipboard support)
ERROR: if this code is redundant consider removing it
#120: FILE: ui/vdagent.c:114:
+#if 0

WARNING: line over 80 characters
#159: FILE: ui/vdagent.c:282:
+                                    sizeof(uint32_t) * (QEMU_CLIPBOARD_TYPE__COUNT + 1));

WARNING: line over 80 characters
#390: FILE: ui/vdagent.c:597:
+    cfg->clipboard = qemu_opt_get_bool(opts, "clipboard", VDAGENT_CLIPBOARD_DEFAULT);

total: 1 errors, 2 warnings, 343 lines checked

Patch 4/7 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

5/7 Checking commit 067e7e7026e2 (ui/vnc: clipboard support)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#33: 
new file mode 100644

WARNING: line over 80 characters
#282: FILE: ui/vnc-clipboard.c:245:
+void vnc_client_cut_text_ext(VncState *vs, int32_t len, uint32_t flags, uint8_t *data)

WARNING: line over 80 characters
#291: FILE: ui/vnc-clipboard.c:254:
+            qemu_clipboard_info_new(&vs->cbpeer, QEMU_CLIPBOARD_SELECTION_CLIPBOARD);

WARNING: line over 80 characters
#336: FILE: ui/vnc-clipboard.c:299:
+        qemu_clipboard_info_new(&vs->cbpeer, QEMU_CLIPBOARD_SELECTION_CLIPBOARD);

ERROR: line over 90 characters
#423: FILE: ui/vnc.c:2415:
+            vnc_client_cut_text_ext(vs, abs(read_s32(data, 4)), read_u32(data, 8), data + 12);

WARNING: line over 80 characters
#502: FILE: ui/vnc.h:642:
+void vnc_client_cut_text_ext(VncState *vs, int32_t len, uint32_t flags, uint8_t *data);

total: 1 errors, 5 warnings, 453 lines checked

Patch 5/7 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

6/7 Checking commit 79fe669da11d (ui/gtk: move struct GtkDisplayState to ui/gtk.h)
7/7 Checking commit c2b97c6a3c68 (ui/gtk: add clipboard support)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#51: 
new file mode 100644

WARNING: line over 80 characters
#83: FILE: ui/gtk-clipboard.c:28:
+    GtkDisplayState *gd = container_of(notifier, GtkDisplayState, cbpeer.update);

total: 0 errors, 2 warnings, 164 lines checked

Patch 7/7 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
=== OUTPUT END ===

Test command exited with code: 1


The full log is available at
http://patchew.org/logs/20210219131349.3993192-1-kraxel@redhat.com/testing.checkpatch/?type=message.
---
Email generated automatically by Patchew [https://patchew.org/].
Please send your feedback to patchew-devel@redhat.com