This library provides a "Mouse, Keyboard, and Screen" to QEMU using the D-Bus device support in QEMU and GTK 4.
Go to file
Bilal Elmoussaoui 640587ed0f dmabuf-paintable: Build the texture when snapshot is called
Always creating the texture even if the app is not being displayed
(minimized / different virtual monitor) or
if the GdkFrameClock drops a frame we end up doing a comparison with a
very old frame causing full redraws in certain cases or even artifacts
in others.

Instead, we only build the texture once snapshot is called and accumulate
the damage area until that happens to avoid updating the wrong area
2023-08-15 19:37:57 +02:00
data/icons data: provide a symbolic and an emblem 2023-03-09 12:27:45 +01:00
docs docs: Adapt post GNOME group migration 2023-07-11 14:48:23 +02:00
lib dmabuf-paintable: Build the texture when snapshot is called 2023-08-15 19:37:57 +02:00
subprojects build: Depend on gtk main for GdkGLTextureBuilder 2023-05-17 13:08:31 -07:00
tools tools: Display touch device info 2023-06-15 13:57:19 +02:00
.editorconfig initial commit 2023-02-08 18:06:08 -08:00
.gitignore build: Depend on gtk main for GdkGLTextureBuilder 2023-05-17 13:08:31 -07:00
.gitlab-ci.yml build: Depend on gtk main for GdkGLTextureBuilder 2023-05-17 13:08:31 -07:00
COPYING Relicense as LGPLv2.1+ 2023-06-01 12:04:35 +01:00
libmks.doap misc: Add a doap file 2023-08-10 22:20:52 +00:00
meson_options.txt build: allow -Dtracing for more logging information 2023-04-20 14:00:04 -07:00
meson.build Post-release version bump 2023-06-07 15:07:22 -07:00
NEWS Release libmks 0.1.0 2023-06-07 15:06:30 -07:00
org.gnome.libmks.mks.json build: add flatpak manifest to testing in Builder 2023-02-17 16:28:25 -08:00
README.md docs: Adapt post GNOME group migration 2023-07-11 14:48:23 +02:00

libmks

This library provides a "Mouse, Keyboard, and Screen" to QEMU using the D-Bus device support in QEMU and GTK 4.

Documentation

Nightly documentation can be found here.

Testing

By default, QEMU will connect to your user session D-Bus if you do not provide an address for -display dbus. Therefore, it is pretty easy to test things by running QEMU manually and then connecting with the test program ./tools/mks.

qemu-img create -f qcow2 fedora.img 30G
qemu-system-x86_64 \
    -enable-kvm \
    -cpu host \
    -device virtio-vga-gl,xres=1920,yres=1080 \
    -m 8G \
    -smp 4 \
    -display dbus,gl=on \
    -cdrom Fedora-Workstation.iso \
    -hda fedora.img \
    -boot d

and then to run the test widget

meson setup build
cd build
ninja
./tools/mks