Geoffrey McRae
4f4cf2be7d
[client] audio: provide option to prevent volume level sync
2023-04-16 19:10:35 +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
996e1b2f7a
[client] overlay: fix race on startup that caused a segfault
...
Fixes #1065
2023-03-30 14:59:37 +11: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
Ali Abdel-Qader
352cd2fafe
[client] remove non-prototype function declarations
...
With -Wstrict-prototypes on non-protyped functions are deprecated and
functions must include a void parameter if they do not take parameters.
2022-11-01 08:03:15 +11:00
Chris Spencer
081a0a419d
[client] audio: use actual device period if larger than expected maximum
...
This is rare and I'm not sure what causes it, but PipeWire sometimes uses a
larger period size than requested for no obvious reason (e.g., we could
request a period size of 512, but PipeWire uses 2048 anyway). This causes
us to stay in a permanent state of underrunning because the target latency
is too low.
With this change, we use the actual device period in the target latency
calculation if it is larger than the expected maximum. We may still get
some glitches at the beginning of playback (because the startup latency is
based upon the expected maximum period size), but it will recover after a
few seconds as it adjusts to the new target latency.
2022-11-01 08:02:37 +11:00
Geoffrey McRae
9d8bc46812
[client] keybind: fix typo
2022-11-01 08:00:37 +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
1fd00ba26c
[client] render_queue: support cursor operations
2022-09-19 11:13:53 +10:00
Quantum
eb1774f955
[client] keybind: add ScrollLock+C to cycle microphone defaults
...
This makes it possible to change the default action taken the next time
an application tries to open the microphone without restarting the
client.
2022-07-13 07:06:04 +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
0799910e70
[client] app: fix segfault when jitRender + spice display is in use
2022-05-28 00:52:03 +10:00
Quantum
8b8b580f63
[client] overlay/status: re-rasterize at high DPI when needed
...
When the window scale goes above the scale the SVGs were rasterized
at, we re-rasterize them at the necessary scale for a more crisp
appearance.
2022-05-27 18:19:18 +10:00
Quantum
712b1cbc46
[client] overlay/graphs: allow unregistering after shutdown
...
The Wayland display server has a graph for presentation times, but the
backend shuts down after the overlays, so calling
overlayGraph_unregister causes memory corruption. We can avoid this
problem by making unregister a noop after all graphs have been freed.
This is safe because updating the graph doesn't use the graph handle:
instead you update the ringbuffer which is owned by the user.
2022-05-27 18:18:15 +10:00
Geoffrey McRae
fba7c80b2f
[client] interface: remove needsRender from renderers
2022-05-27 14:38:42 +10:00
Geoffrey McRae
a4f5bc7320
[client] render_queue: fix failure to show spice at startup
2022-05-27 14:02:00 +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
123be552a4
[client] spice: fix duplicate keybind registration
2022-05-27 13:29:28 +10:00
Geoffrey McRae
aba8c5b499
[client] splash: added LG url, version and copyright strings
2022-05-27 12:39:08 +10:00
Geoffrey McRae
9ccd93bfd8
[client] app: add option to disable dimming in overlay mode
2022-05-27 11:36:39 +10:00
Geoffrey McRae
f17dfdc9b3
[client] config: cosmetics
2022-05-27 11:30:24 +10:00
Geoffrey McRae
39c1f99446
[client] splash: add back support for win:quickSplash
2022-05-27 11:27:50 +10:00
Quantum
7e8849180d
[client] audio: allow microphone recording to be toggled after dialog
2022-05-27 11:22:49 +10:00
Quantum
146d9a2a53
[client] main: remove micAlwaysAllow from g_params
2022-05-27 11:22:12 +10:00
Quantum
7cb6ccd6f5
[client] audio: switch to use config value audio:micDefault
2022-05-27 11:22:12 +10:00
Quantum
9b910eced1
[client] config: replace audio:micAlwaysAllow with audio:micDefault
2022-05-27 11:22:12 +10:00
Quantum
3e079e0489
[client] main: add micDefaultState to state and params
2022-05-27 11:22:12 +10:00
Geoffrey McRae
1e660fb7e1
[client] splash: pre-calculate & cache the radial gradient vectors
2022-05-27 10:23:10 +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
Geoffrey McRae
6384a8d006
[client] main: fix race condition on usage of events
2022-05-24 11:06:47 +10:00
Geoffrey McRae
d1e421f8a8
[client] spice: delay showing the spice display until spice is ready
2022-05-24 09:48:54 +10:00
Geoffrey McRae
faae785c44
[client] spice: initialize new surfaces to black
2022-05-24 00:17:08 +10:00
Geoffrey McRae
b2221b114e
[client] spice: more fixes to video source transition
2022-05-24 00:05:22 +10:00
Geoffrey McRae
47b2a26898
[client] app: better handling of transition to/from spice display
2022-05-23 22:35:27 +10:00
Geoffrey McRae
247e867f18
[client] egl: implemented SPICE display support
2022-05-22 18:19:58 +10:00
Geoffrey McRae
16f39450b5
[client] spice: added initial framework for spice display fallback
2022-05-22 11:45:11 +10:00
Geoffrey McRae
ffd27ac82c
[client] update PureSpice submodule
2022-05-22 11:14:48 +10:00
matthewjmc
53c843d9dd
[common] Update framebuffer metadata + references
2022-05-16 20:01:09 +10:00
Geoffrey McRae
81aa24d4d3
[client] overlay/config: general UX changes
...
* Moved the LG license and version onto a seperate tab.
* Added general donation section and link to the website donation page
* Removed donation details under gnif's section
2022-05-15 17:16:07 +10:00