Geoffrey McRae
74f3b426e1
[idd/client] apply the Windows display color transform
...
Honor the IddCx 3x4 XYZ matrix and post-transfer LUT in the IDD
conversion pipeline. Carry transform changes to the client so EGL applies
the same calibration to hardware cursors, and invalidate the full frame
whenever calibration changes.
2026-07-23 09:44:00 +10:00
Geoffrey McRae
c234866055
[client] wayland: forward HDR mastering metadata
...
Propagate valid ST 2086 mastering primaries and luminance data, MaxCLL,
and MaxFALL to the Wayland compositor using the protocol's expected
units.
2026-07-23 09:44:00 +10:00
Geoffrey McRae
09acb0153b
[client] main: validate damage metadata
2026-07-23 09:44:00 +10:00
Geoffrey McRae
78802319e3
[client] add a MPV glsl style effect loader
2026-07-23 09:43:59 +10:00
Geoffrey McRae
96b16debad
client: move LGMP session probing off the event thread
...
LGMP session validation may wait 500 ms for the shared-memory heartbeat
to advance. Run it on a worker so Wayland input remains responsive while
preserving stale-data detection.
2026-07-23 09:43:59 +10:00
Geoffrey McRae
845c612d0f
[idd/client/obs] hdr: wire up the SdrWhiteLevel from the capture
2026-07-23 09:43:59 +10:00
Geoffrey McRae
364485ded8
[client] wayland: implement HDR support
2026-07-16 05:34:09 +10:00
Geoffrey McRae
11b3ac00a8
[client/obs] update LGMP to detect version missmatch since struct change
build / client (Debug, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / module (push) Has been cancelled
build / host-linux (push) Has been cancelled
build / host-windows-cross (push) Has been cancelled
build / host-windows-native (push) Has been cancelled
build / idd (push) Has been cancelled
build / obs (clang) (push) Has been cancelled
build / obs (gcc) (push) Has been cancelled
build / docs (push) Has been cancelled
2026-07-15 17:25:52 +10:00
Geoffrey McRae
69f44a003d
[all] refresh copyright
build / client (Debug, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / module (push) Has been cancelled
build / host-linux (push) Has been cancelled
build / host-windows-cross (push) Has been cancelled
build / host-windows-native (push) Has been cancelled
build / idd (push) Has been cancelled
build / obs (clang) (push) Has been cancelled
build / obs (gcc) (push) Has been cancelled
build / docs (push) Has been cancelled
2026-05-31 15:13:57 +10:00
Geoffrey McRae
e9b7bdfea1
Revert "[all] refresh copyright"
...
Corrupted IDD sources due to lack of UTF-8 with BOM support in the
script.
2026-05-31 15:10:44 +10:00
Geoffrey McRae
98602fb95e
[all] refresh copyright
2026-05-31 15:03:37 +10:00
Marco Rodolfi
add45347b5
[client] app: add option to disable waiting for host message
2025-06-30 14:25:08 +10:00
Geoffrey McRae
852eb6bf69
[client] core: new message event system to debounce window size events
2025-04-02 13:46:55 +11:00
Geoffrey McRae
afbd844be8
[client] evdev: add new exclusive evdev while captured option
build / client (Debug, map[cc:clang cxx:clang++], libdecor) (push) Waiting to run
build / client (Debug, map[cc:clang cxx:clang++], xdg-shell) (push) Waiting to run
build / client (Debug, map[cc:gcc cxx:g++], libdecor) (push) Waiting to run
build / client (Debug, map[cc:gcc cxx:g++], xdg-shell) (push) Waiting to run
build / client (Release, map[cc:clang cxx:clang++], libdecor) (push) Waiting to run
build / client (Release, map[cc:clang cxx:clang++], xdg-shell) (push) Waiting to run
build / client (Release, map[cc:gcc cxx:g++], libdecor) (push) Waiting to run
build / client (Release, map[cc:gcc cxx:g++], xdg-shell) (push) Waiting to run
build / module (push) Waiting to run
build / host-linux (push) Waiting to run
build / host-windows-cross (push) Waiting to run
build / host-windows-native (push) Waiting to run
build / obs (clang) (push) Waiting to run
build / obs (gcc) (push) Waiting to run
build / docs (push) Waiting to run
2025-03-07 13:47:01 +11:00
Geoffrey McRae
66ac453c98
[client] input: add support for evdev keyboard capture mode
...
build / client (Debug, map[cc:clang cxx:clang++], libdecor) (push) Waiting to run
build / client (Debug, map[cc:clang cxx:clang++], xdg-shell) (push) Waiting to run
build / client (Debug, map[cc:gcc cxx:g++], libdecor) (push) Waiting to run
build / client (Debug, map[cc:gcc cxx:g++], xdg-shell) (push) Waiting to run
build / client (Release, map[cc:clang cxx:clang++], libdecor) (push) Waiting to run
build / client (Release, map[cc:clang cxx:clang++], xdg-shell) (push) Waiting to run
build / client (Release, map[cc:gcc cxx:g++], libdecor) (push) Waiting to run
build / client (Release, map[cc:gcc cxx:g++], xdg-shell) (push) Waiting to run
build / module (push) Waiting to run
build / host-linux (push) Waiting to run
build / host-windows-cross (push) Waiting to run
build / host-windows-native (push) Waiting to run
build / obs (clang) (push) Waiting to run
build / obs (gcc) (push) Waiting to run
build / docs (push) Waiting to run
The new configuration option `input:evdev` accepts a comma separated
list of `/dev/input/` keyboard devices to use for input when in capture
mode. This makes it possible to capture only a specific keyboard instead
of all keyboards.
2025-03-07 02:36:00 +11:00
Geoffrey McRae
d9f2df361d
[client] cimgui: update to 1.91.8
2025-03-05 15:16:31 +11:00
Geoffrey McRae
551298ed5b
[doc] all: update copyright year
2025-03-05 12:24:38 +11:00
rs189
e25492a3a3
[client] x11/wayland: add application id
build / client (Debug, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / module (push) Has been cancelled
build / host-linux (push) Has been cancelled
build / host-windows-cross (push) Has been cancelled
build / host-windows-native (push) Has been cancelled
build / obs (clang) (push) Has been cancelled
build / obs (gcc) (push) Has been cancelled
build / docs (push) Has been cancelled
2024-10-15 11:52:10 +11:00
Geoffrey McRae
0b210a280d
[all] update the copyright to 2024
2024-02-01 17:16:31 +11:00
Geoffrey McRae
5d4c1d348c
[all] refactor cpuInfo function names
2023-11-19 01:22:09 +11:00
Geoffrey McRae
929e88b9d3
[all] provide conditional path optimization hints to the compiler
2023-11-12 18:26:08 +11:00
Geoffrey McRae
0a9784d09d
[client] main: fix possible dereference of null g_state.ds
2023-11-11 13:48:41 +11:00
Geoffrey McRae
120e063a10
[client] main: prevent possible null pointer dereference
2023-11-11 13:48:41 +11:00
Geoffrey McRae
86e8e99107
[all] add initial support for RGB24-bpp support
2023-11-10 06:28:05 +11:00
Geoffrey McRae
c665044bfa
[client] implement support for RGB24 packed data
2023-11-10 06:28:05 +11:00
Geoffrey McRae
6625cd733a
[client] main: log if the frame format is using PQ or not
2023-10-27 01:16:08 +11:00
Geoffrey McRae
2f36aaff5c
[client] egl: prepare for DXGI HDR10 support
2023-10-27 01:03:22 +11:00
Geoffrey McRae
2e515657dd
[all] update/add license headers
2023-10-20 15:36:34 +11:00
Geoffrey McRae
e658c2e0a2
[client] x11: change to a more visible "dot" cursor
...
This change alters the small square dot cursor to a more visible 16x16
cursor for X11. A new option `spice:largeDotCursor` can be set to use an
alternative 32x32 cursor for the vision impaired.
2023-09-13 21:54:31 +10:00
Geoffrey McRae
a3045e0b4a
[client] main: don't request activation just because we re-connected
2023-09-13 14:08:18 +10:00
Geoffrey McRae
9cadb64942
[client] main: make activation requests optional
2023-09-13 14:07:42 +10:00
Geoffrey McRae
ad43969c1a
[client] egl: add support to map HDR to SDR
2023-04-26 16:26:54 +10:00
Geoffrey McRae
b7b302334c
[client] main: remove debug true from if statement
2023-04-02 20:14:16 +10:00
Geoffrey McRae
28e74a73a4
[client] main: detect and warn on sub-optimal guest CPU configuration
2023-04-02 20:13:14 +10:00
Geoffrey McRae
48cd0c3789
[client] audio: add missing earlyInit call for audio devs
2023-01-24 13:35:18 +11:00
Geoffrey McRae
20b5957999
[client] update LGMP to fix buffer overflow bug
2022-11-07 21:57:10 +11:00
Geoffrey McRae
f0cb9d1167
[client] main: fix spice display fallback when waiting for LGMP upgrade
2022-11-07 19:16:52 +11:00
Quantum
646a725c0e
[client] spice: wait 1 second before attempting to use spice video
...
This prevents the flash of spice display when it's not set to mirror
in the VM.
2022-09-19 14:59:59 +10:00
Quantum
0c63a901be
[client] main: add support for spice cursor channel
2022-09-19 11:13:53 +10:00
Quantum
ae38db4915
[client] main: move micDefaultState into g_state
2022-07-13 07:06:04 +10:00
Quantum
9dee9ed7bb
[client] main: better error when no display server is available
...
This commit makes it show a prettier error message when no display
server is available, including the display servers compiled. This
replaces the old assert.
Example output:
[E] 572277145932 main.c:1167 | lg_run | No display servers available, tried:
[E] 572277145934 main.c:1169 | lg_run | * Wayland
[E] 572277145935 main.c:1169 | lg_run | * X11
2022-07-13 07:05:07 +10:00
Geoffrey McRae
da04a6dd54
[client] all: use the defined keyboard mapping for keybinds
...
Fixes #1007
2022-06-29 18:26:40 +10:00
Geoffrey McRae
286e7622b8
[client] main: fix failure to startup when the guest VM has no UUID
2022-05-30 13:43:51 +10:00
Geoffrey McRae
fba7c80b2f
[client] interface: remove needsRender from renderers
2022-05-27 14:38:42 +10:00
Geoffrey McRae
48735cd001
[client] main: don't start the overlay tick timer until init is done
2022-05-27 13:42:47 +10:00
Geoffrey McRae
1770defea2
[client] spice: wait for the spice connection to finish at startup
...
A failure to connect to spice would cause LG to exit late, this adds a
startup condition that prevents the LG initialization to complete until
the spice connection has been established.
2022-05-27 09:22:10 +10:00
Geoffrey McRae
b94869249c
[client] main: don't show the splash when transitioning to spice
2022-05-27 02:24:01 +10:00
Geoffrey McRae
5de175c1f3
[client] all: unify the LG splash screen into an overlay
2022-05-27 02:07:20 +10:00
Geoffrey McRae
8974ae4fb5
[client] add SVG loading support and use icons for status display
...
This brings nanosvg into the project for SVG loading and rendering.
Unfortunatly we can not at this time use a submodule for this project
until https://github.com/memononen/nanosvg/pull/214 is merged.
2022-05-26 04:11:31 +10:00
Geoffrey McRae
8aa36144dc
overlay: move init/free to the context of the render thread
...
This is done to allow overlays to make use of the renderer during
init/free.
2022-05-26 00:46:13 +10:00