Arda Atci
c9aee893d2
Merge pull request #14 from yshui/next
...
Merge yshui/next
2023-01-13 23:02:18 +03:00
Yuxuan Shui
1926b6d231
Merge pull request #994 from absolutelynothelix/ensure_glx_context_segfault
2023-01-13 16:55:41 +00:00
Yuxuan Shui
766f9f996f
Merge pull request #986 from absolutelynothelix/fix-creating-eglpixmap
...
fixes https://github.com/yshui/picom/issues/981
2023-01-13 16:55:06 +00:00
Yuxuan Shui
7ac80f980d
Merge pull request #992 from absolutelynothelix/xcb_request_check_memory_leaks
2023-01-13 16:52:22 +00:00
Yuxuan Shui
e18a42ebd0
Merge pull request #985 from absolutelynothelix/free-root-image-properly
...
fixes https://github.com/yshui/picom/issues/982
2023-01-13 16:51:41 +00:00
Yuxuan Shui
2f1e244cd5
Merge pull request #990 from absolutelynothelix/simplify-getting-egl-fbconfig
2023-01-13 16:51:09 +00:00
Arda Atci
a1dcadf81b
Merge pull request #13 from yshui/next
...
Merge yshui/next
2023-01-12 20:19:37 +03:00
Maxim Solovyov
74ab307626
opengl: fix segfault in ensure_glx_context
2023-01-12 06:40:56 +03:00
Maxim Solovyov
0ecfd9fd32
backend: egl: fix creating eglpixmap
...
according to the specification of the EGL_KHR_image_pixmap extension,
if target is EGL_NATIVE_PIXMAP_KHR then ctx must be EGL_NO_CONTEXT,
otherwise, the EGL_BAD_PARAMETER error is generated. source:
https://registry.khronos.org/EGL/extensions/KHR/EGL_KHR_image_pixmap.txt
fixes #981
2023-01-11 13:36:18 +03:00
Maxim Solovyov
81f2bf4c07
picom: fix xcb_request_check memory leaks
2023-01-11 12:35:03 +03:00
Maxim Solovyov
ca64654256
use _checked functions with xcb_request_check
2023-01-10 00:15:49 +03:00
Maxim Solovyov
29342e7cea
backend: egl: simplify getting a framebuffer configuration
...
we're using the first available framebuffer configuration that
meets our needs so there is no need to ask for more than one
2023-01-09 04:25:59 +03:00
Maxim Solovyov
91828be79d
picom: free root image properly
...
fixes #982
2022-12-30 06:16:46 +03:00
Arda Atci
c86652a5c4
Merge remote-tracking branch 'yshui/next' into next
2022-12-25 21:37:18 +03:00
Maxim Solovyov
cffc443bfd
xrender: make corner-radius respect inactive-dim
...
for the new xrender backend it's enough to clip with a rounded rectangle after dimming, not before
partially fixes #867
2022-12-23 15:21:52 +03:00
Maxim Solovyov
32020ff659
xrender: fix leak in release_rounded_corner_cache
...
calling wrong free function did nothing and produced ton of x errors
fixes at least #892
2022-12-22 20:42:20 +03:00
Maxim Solovyov
dd9ffecd85
xrender: fix leak in deinit
...
and check should we actually free something
fixes at least #960
2022-12-22 02:08:04 +03:00
Maxim Solovyov
70032b9282
xrender: fix leak in bind_pixmap
2022-12-22 00:20:43 +03:00
Maxim Solovyov
df7b994d00
x: fix leak in x_create_picture_with_pictfmt_and_pixmap
2022-12-21 23:29:52 +03:00
Arda Atci
157cb57ea7
Merge remote-tracking branch 'yshui/next' into next
2022-12-20 03:07:52 +03:00
Yuxuan Shui
37ecb4b496
core: detect screen off
...
Use the DPMS extension to detect if screen is turned off, and unredirect
if it is. This also helps working around the problem where OpenGL
buffers lose data when screen is turned off, causing screen to flicker
later when it turns back on if use-damage is enabled.
Unfortunately the DPMS extension doesn't define an event, so we have to
periodically poll the screen state.
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2022-12-19 08:52:18 +00:00
Yuxuan Shui
c28462673e
backend: xrender: fix using of invalid picture when vsync is disabled
...
Fixes #974
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2022-12-18 19:24:16 +00:00
Yuxuan Shui
1ea3276bd1
x: fix missing _checked
...
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2022-12-18 19:23:06 +00:00
Yuxuan Shui
17b34ce390
core: add set_cant_fail_cookie
...
Enables picom to abort when certain requests fail.
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2022-12-14 14:30:58 +00:00
Yuxuan Shui
aca3fdcef7
core: expand X error handling
...
We used to have a list of X errors we should ignore in case they do
occur. This commit expands that functionality to also allow us aborting
on certain errors.
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2022-12-14 14:23:55 +00:00
Yuxuan Shui
4ecb8093cf
x: fix CI build failure
...
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2022-12-14 14:02:57 +00:00
Yuxuan Shui
3b342afa95
general: fix compiler warning about unused results
...
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2022-12-14 13:47:38 +00:00
Yuxuan Shui
5a5ea76006
event: restore event sequence number after passing it to Xlib handlers
...
We set event sequence number to the last sequence xlib knows about to
silence its complaint about missing sequence numbers, but we forgot to
restore it back afterwards.
This used to break error ignoring mechanism in `should_ignore`. In the
last commit we updated it to use full_sequence which incidently fixed
this problem. But let's restore the sequence number anyway for good
measure.
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2022-12-14 13:37:58 +00:00
Yuxuan Shui
8b189bc5ec
core: print error with full_sequence
...
ev->sequence was just the lower 16 bits of the sequence number.
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2022-12-14 12:35:37 +00:00
Yuxuan Shui
23a29470e5
backend: xrender: set update region for PresentPixmap request
...
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2022-12-14 07:40:42 +00:00
Yuxuan Shui
e407c5c765
x: add x_{create,destroy}_region
...
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2022-12-14 07:37:27 +00:00
Yuxuan Shui
88608027b8
backend: add a comment
...
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2022-12-14 07:36:07 +00:00
Yuxuan Shui
4594168946
utils: add rolling_avg
...
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2022-12-13 14:35:26 +00:00
Yuxuan Shui
91e023971d
utils: add rolling_max
...
For tracking rolling max of a stream of integers.
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2022-12-13 14:35:20 +00:00
Arda Atci
ad8feaad12
Merge branch 'yshui:next' into next
2022-12-05 21:07:53 +03:00
Yuxuan Shui
882025092f
Merge pull request #952 from yshui/dither
2022-12-03 03:10:30 +00:00
Yuxuan Shui
236c8228b8
backend: gl: fix use-after-scope
...
'format' was pointing to an array with a shorter lifetime
suggested by @tryone144
Co-authored-by: Bernd Busse <bernd@busse-net.de >
2022-12-02 02:57:28 +00:00
Yuxuan Shui
d38b0ead7d
backend: gl: try different back buffer formats
...
Prefer RGB formats first, because they use less memory; but fallback to
RGBA formats, as they are formats required by OpenGL.
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2022-12-01 18:54:22 +00:00
Yuxuan Shui
7198874fc9
Merge pull request #947 from JakeRoggenbuck/spelling
2022-11-30 19:26:44 +00:00
Yuxuan Shui
979c399ebb
Merge pull request #937 from yshui/pcre2
2022-11-30 19:20:59 +00:00
Evgeniy Baskov
de3e1a80eb
win: consider border when creating the mask image
...
With rounded corners, X11 native border and blur enabled, left and
bottom 2*border_width pixels were not blurred, since mask did not
include border_width, only content width and height.
Create mask image with dimensions that include border width.
Signed-off-by: Evgeniy Baskov <j-basevgser@yandex.ru >
2022-11-30 20:00:46 +03:00
Yuxuan Shui
d704e0f80e
backend: gl: don't add dither where it's not needed
...
If a pixel is perfectly representable as an 8-bit number, don't add
dither. Reduce artifacts where dither is unnecessary.
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2022-11-30 12:15:34 +00:00
Jake
1a82b8180a
Change dreaw -> draw
2022-11-29 22:20:22 -08:00
Yuxuan Shui
1271839baf
options: add dithered-present option
...
See also 0a2cd0f14e
Related: #602
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2022-11-30 05:33:21 +00:00
Yuxuan Shui
0a2cd0f14e
backend: gl: add dither
...
Add bayer ordered dithering when presenting to screen. Reduce banding
when using a strong blur. Also use 16-bit intermediary textures to
preserve precision in the rendering pipeline.
Related: #602
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2022-11-30 05:08:02 +00:00
Arda Atci
f54315b51c
Merge branch 'yshui:next' into next
2022-11-29 19:17:45 +03:00
Yuxuan Shui
19a24ada9d
backend: egl: fix warning
2022-11-27 18:07:05 +00:00
Yuxuan Shui
552bf77d0e
backend: egl: fix undefined symbols on old systems
...
Users with an old EGL version won't be able to use the egl backend. OTOH
we shouldn't prevent them from running picom because of a feature they
won't even use.
Don't assume the existence of EGL 1.5 symbols.
Fixes #945
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2022-11-27 18:03:25 +00:00
Arda Atci
8e3ff3d63b
Merge branch 'yshui:next' into next
2022-11-23 01:22:09 +03:00
Yuxuan Shui
e2b8c3fd1e
c2: replace pcre with pcre2
...
Because pcre has been deprecated.[1]
There are subtle changes from pcre to pcre2, so this could be a breaking
change.
Closes #895
[1]: https://www.pcre.org/original/changelog.txt
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2022-11-22 16:12:36 +00:00