Geoffrey McRae
cb5b9ab292
[client] round overlay damage outward
...
Expand ImGui window damage to include its border and round both logical
window bounds and framebuffer-scaled bounds outward.
This prevents a one-pixel strip of stale desktop content when an
overlay window is resized at fractional positions or display scales.
2026-08-03 23:53:33 +10:00
Geoffrey McRae
aa289fa022
[client/host/idd] correct frame timing attribution
...
Use calibrated copy-queue timestamps to separate source and effect
waits from the actual framebuffer copy.
Exclude producer readiness waits from client import timing so the
same interval is not counted in both Copy and Import.
2026-08-03 23:53:33 +10:00
Geoffrey McRae
8828e640ab
[common] rects: fix unaligned avx memcpy implementation
2026-07-30 15:14:29 +10:00
Geoffrey McRae
b60fa8756f
[client] egl: remove blocking waits from frame submission
...
Track PBO fences per upload slot and wait only when a slot is reused,
allowing rendering to proceed without a CPU stall. Use GPU-side waits
for cross-context DMABUF synchronization.
Also propagate KVMFR write-completion failures so incomplete
shared-memory frames are never submitted, while retaining incremental
damage-copy waits to avoid added latency.
2026-07-23 09:43:59 +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
Geoffrey McRae
551298ed5b
[doc] all: update copyright year
2025-03-05 12:24:38 +11:00
Geoffrey McRae
6a0a635781
[common] rect: fix avx unaligned bytes copy
...
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
Thanks @D0ot for debugging and finding this this, the LG community are
very appreciate for a fix for this long outstanding bug.
Fixes #1129
Closes #1136
2024-08-30 09:12:19 +10:00
Geoffrey McRae
0b210a280d
[all] update the copyright to 2024
2024-02-01 17:16:31 +11:00
Geoffrey McRae
8d27d9e2e2
[common] rect: fix avx alignment issue take 2
2023-11-19 18:01:34 +11:00
Geoffrey McRae
660b4b8ec8
[common] rects: fix avx implementation for unaligned accesses
2023-11-19 17:16:22 +11:00
Geoffrey McRae
d3ee5bddde
[common] rect/framebuffer: improve avx implementations
2023-11-19 15:45:15 +11:00
Geoffrey McRae
584de4133f
[common] fix compilation on clang
2023-11-19 03:20:34 +11:00
Geoffrey McRae
3330f83af6
[common] add runtime detection and selection of AVX/AVX2 support
2023-11-19 02:52:11 +11:00
Geoffrey McRae
750cab83a3
Revert "[common] add AVX/AVX2 memory copy implementations"
...
This reverts commit e61678ef1b .
GCC only supports multi-versioning in C++
2023-11-19 00:18:48 +11:00
Geoffrey McRae
e61678ef1b
[common] add AVX/AVX2 memory copy implementations
2023-11-19 00:09:42 +11:00
Geoffrey McRae
c665044bfa
[client] implement support for RGB24 packed data
2023-11-10 06:28:05 +11:00
Geoffrey McRae
742e41c2c3
[host] dxgi: fix HDR damage aware copy
2023-10-22 03:15:12 +11:00
Geoffrey McRae
2e515657dd
[all] update/add license headers
2023-10-20 15:36:34 +11:00
Geoffrey McRae
952ebea2c5
[all] refresh copyright dates
2022-01-05 19:42:46 +11:00
Geoffrey McRae
0d27092ef5
[all] move min/max and upcast macros into common/util.h
2022-01-05 19:41:57 +11:00
Geoffrey McRae
affc3f51f8
[common] rects: fix error introduced in cosmetics patch
...
`x2` and `y2` are required here as they need to operate on the original
x & y before they are clamped. Can't believe I missed this *facepalm*
2021-10-26 23:35:09 +11:00
Geoffrey McRae
6078b11200
Revert "[common] rects: fix damage regression introduced in the cosmetics patch"
...
This was correct, brainfart moment
2021-10-26 22:26:20 +11:00
Geoffrey McRae
68a9504366
[common] rects: fix damage regression introduced in the cosmetics patch
2021-10-26 22:15:54 +11:00
Geoffrey McRae
9d71655273
[common] rects: fix return value of removeRects
2021-10-24 22:22:13 +11:00
Geoffrey McRae
2f0b97a487
[common] rects: de-dup code and don't needlessly copy rect over itself
2021-10-24 22:19:28 +11:00
Geoffrey McRae
f69b869282
[common] rects: cosmetics
2021-10-24 22:05:30 +11:00
Geoffrey McRae
bc7cbf1173
[common] fix out by one error in rectsIntersect
2021-10-24 13:31:41 +11:00
Quantum
edf1e341da
[common] rects: fix rectIntersects
2021-10-20 16:32:41 +11:00
Geoffrey McRae
dca5da02a0
[client] egl: fix undefined behaviour with zero size array
2021-10-20 13:34:16 +11:00
Quantum
164dd00490
[common] rects: fix typo in rectContains
2021-08-20 17:13:04 +10:00
Quantum
e945955d13
[common] rects: add rectsRejectContained function
...
This function will remove rectangles in a list that are entirely contained
in another rectangle in the same list.
2021-08-13 20:21:27 +10:00
Quantum
604b44d6d8
[common] rects: add rectsMergeOverlapping helper function
...
This is based on the client's util_mergeOverlappingRects.
2021-08-11 19:01:52 +10:00
Quantum
0462cee9db
[common] rects: implement routine to copy rectangles from framebuffer
2021-08-08 08:30:11 +10:00
Quantum
cab95c5eed
[common] rects: refactor rect buffer copy code to common module
...
This also fixes a bug of accidentally multiplying the stride by 4 when
the stride is already in bytes and not pixels.
2021-08-08 08:30:11 +10:00