Quantum
ffbf6cd8b4
[client] egl: make preset UI more intuitive
...
This commit makes selecting a preset load it, and changes "Create preset" to
"Save preset as...".
2021-08-30 18:45:21 +10:00
Quantum
39e42ba735
[common] option: change option_dump to option_dump_preset
...
This new function dumps all options marked as preset instead of dumping
individual sections. This should allow filter options to not be all grouped
into the [eglFilter] section.
2021-08-30 18:32:16 +10:00
Quantum
3345ff8448
[client] egl: mark all preset-only options as such
2021-08-30 18:21:54 +10:00
Quantum
44850f1699
[common] option: add preset-only options that don't show up in help
2021-08-30 18:21:54 +10:00
Quantum
8a2ae6860e
[client] egl: warn when attempting to save without preset selected
2021-08-30 18:21:54 +10:00
Quantum
1717555187
[client] egl: implement preset deletion
2021-08-30 18:21:54 +10:00
Quantum
dc27638025
[client] egl: implement loading and saving of filter order
2021-08-30 18:21:54 +10:00
Quantum
c85cc7d668
[client] egl: show preset errors as modal dialogs
2021-08-30 18:21:54 +10:00
Quantum
311f7241c6
[client] egl: implement preset loading/saving logic
2021-08-30 18:21:54 +10:00
Quantum
b7b93f624c
[client] egl: implement options loading/saving for downscale
2021-08-30 18:21:54 +10:00
Quantum
084837b936
[client] egl: add loadState and saveState for filters
2021-08-30 18:21:54 +10:00
Quantum
4adb425337
[client] egl: add UI for presets list
2021-08-30 18:21:54 +10:00
Quantum
e11246d46e
[common] stringlist: implement item removal
2021-08-30 18:21:54 +10:00
Quantum
f0beedb5ba
[common] vector: implement item removal
2021-08-30 18:21:54 +10:00
Quantum
bbd39b8185
[common] option: implement the ability to set option values
...
This can then be used to update the options from EGL filters, and then
dumping them to files.
2021-08-30 18:21:54 +10:00
Quantum
f0624ccf89
[common] option: implement ability to dump config into ini
...
This is intended to be used for saving filter options into an ini file.
2021-08-30 18:21:54 +10:00
Tudor Brindus
e22a070dd3
[common] appstrings: add blurb for xyene
2021-08-30 17:46:24 +10:00
Quantum
0c27111260
[common] option: return NAN when float option doesn't exist
...
false is not a float value.
2021-08-30 17:40:35 +10:00
Quantum
5225d2e97f
[client] egl: fix framebuffer leaking textures
2021-08-28 19:17:24 +10:00
Quantum
e5f2b3079e
[common] stringlist: use vector for storage
2021-08-28 19:17:15 +10:00
Quantum
e6df0acad9
[common] vector: eliminate double allocation when possible
...
This commit creates two constructor/destructor pairs for vector:
* vector_alloc/vector_free dynamically allocates the vector itself
* vector_create/vector_destroy uses existing Vector objects
2021-08-28 19:17:15 +10:00
Quantum
ba527761ef
[common] vector: inline common operations
2021-08-28 19:17:15 +10:00
Quantum
ceff9dca9b
[client] egl: simplify filter moving logic with memmove
...
This avoids duplicating the entire array of filters.
2021-08-25 05:35:50 +10:00
Quantum
e040b88bf0
[common] ivshmem: switch to using vectors
2021-08-24 22:10:36 +10:00
Quantum
7c7eff8dba
[client] egl: make texture_dmabuf.c use vector
...
This replaces the custom memory management code.
2021-08-24 22:10:36 +10:00
Quantum
377757e743
[common] vector: add indexed iteration modes
2021-08-24 22:10:36 +10:00
Quantum
53b4b4818b
[common] vector: allow inplace construction with vector_push
...
This makes vector_push return a pointer to the pushed element.
It also allows the user to push a NULL pointer, which means allocating the
memory for the element but do not copy anything into it.
2021-08-24 22:10:36 +10:00
Quantum
07d3d6cbe7
[common] vector: implement a clear operation
2021-08-24 22:10:36 +10:00
Quantum
b71838a530
[common] vector: allow vector_free to be used with NULL
...
This is done for consistency with free.
2021-08-24 22:10:36 +10:00
Geoffrey McRae
b118c3b681
[client] egl: implement nicer drag & drop re-ordering of filters
2021-08-24 22:05:46 +10:00
Quantum
e5e76d784e
[client] egl: allow postprocessing filters to be reordered by dragging
2021-08-22 21:36:13 +10:00
Quantum
99761b195f
[client] egl: switch postprocessing filters to use vectors
...
This will allow them to be reordered much more easily.
2021-08-22 21:36:13 +10:00
Quantum
24e0343156
[common] vector: add new data structure
2021-08-22 21:36:13 +10:00
Quantum
0b70aa49d0
[doc] add documentation about libdecor
2021-08-21 23:02:20 +10:00
Quantum
1e2caf4c9f
[host] pipewire: implement basic capture
...
It works, with the following limitations:
1. user is forced to select the monitor through platform-specific mechanisms
every time the client starts.
2. cursor is composed onto the screen, and no position can be reported.
2021-08-21 23:01:11 +10:00
Quantum
28eae3bd86
[host] linux: add skeleton pipewire capture backend
2021-08-21 23:01:11 +10:00
Quantum
4b3aaa7e0c
[host] cmake: report capture backends enabled
2021-08-20 21:03:50 +10:00
Quantum
164dd00490
[common] rects: fix typo in rectContains
2021-08-20 17:13:04 +10:00
Quantum
9bd205a527
[client] imgui: fix modifier key modification race
...
imgui really hates it when we update the modifier key state after igNewFrame.
The result is:
void ImGui::ErrorCheckEndFrameSanityChecks(): Assertion
`(key_mod_flags == 0 || g.IO.KeyMods == key_mod_flags) &&
"Mismatching io.KeyCtrl/io.KeyShift/io.KeyAlt/io.KeySuper vs io.KeyMods"'
failed.
Therefore, we buffer the modifier state information and update it in the IO
object right before we call igNewFrame.
2021-08-20 13:21:50 +10:00
Quantum
c0fa6c414c
[client] spice: do not warp host cursor if guest cursor is not visible
...
This avoids warping the host cursor when the guest-side warp has not finished,
which will result in the host cursor exiting at the wrong position if it exits
at that moment.
2021-08-20 13:21:26 +10:00
Quantum
11a661ce3a
[client] spice: don't display mouse before realignment finishes
...
This avoids showing the mouse briefly at the old position when reentering
the window.
2021-08-20 13:21:26 +10:00
Geoffrey McRae
c246b4a719
Revert "[client] core: realign in the enter/focus handlers if possible"
...
This reverts commit 17617cc421
.
2021-08-19 23:19:59 +10:00
Geoffrey McRae
17617cc421
[client] core: realign in the enter/focus handlers if possible
2021-08-19 22:57:03 +10:00
Geoffrey McRae
e1a4401ffa
[client] core: wait for the host to process the cursor move
2021-08-19 22:17:22 +10:00
Geoffrey McRae
4b3a79c110
[client] x11: remove print from debugging
2021-08-19 21:35:54 +10:00
Geoffrey McRae
3c3c0f70be
[all] bump the LGMP version to obtain access to data serial tracking
2021-08-19 21:29:03 +10:00
Geoffrey McRae
2d470b8deb
[client] x11: filter out virtual/grabbed XIEnterEvents
2021-08-19 21:29:03 +10:00
Quantum
9aa0d3ddab
[client] egl: fix context creation on EGL 1.4
...
EGL_CONTEXT_OPENGL_DEBUG is only defined in EGL 1.5, and therefore, we should
not be passing it on older versions of EGL.
2021-08-19 21:28:56 +10:00
Quantum
429620c48b
[client] egl: dynamically import glBufferStorageEXT
...
On some implementations (e.g. llvmpipe), the function can only be queried via
eglGetProcAddress.
2021-08-19 21:28:45 +10:00
Quantum
5a906131eb
[all] cmake: tell users to clone submodules when they haven't
...
This gives users a command to run that will automagically fix the submodule
situation, and should reduce the amount of support requests.
2021-08-19 21:28:36 +10:00