picom/src
Yuxuan Shui dd83f550e1
core: always check if render is finished at next vblank
Right now we rely on `reschedule_render_at_vblank` being scheduled for
the render finish check. Which means we will only know if a frame has
finished rendering the next time we queue a render. And we only check at
vblank boundary, which means when a render is queued we have to wait for
the next vblank, when had we checked earlier, we will be able to start
rendering immediately

Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com>
2023-12-19 23:27:10 +00:00
..
backend core: simplify pacing logic a bit more 2023-12-19 23:27:06 +00:00
atom.c x: remove the last bit of Xlib dependency 2020-10-23 07:58:01 +01:00
atom.h atom: add atoms associated with the background pixmap 2023-06-18 14:57:50 +03:00
c2.c compiler: bring the unreachable macro in line with C23 2023-12-17 08:51:22 +00:00
c2.h config: add options `window-shader-fg` and `window-shader-fg-rules` 2022-08-11 04:28:48 +01:00
cache.c cache: add cache_set for testing 2020-12-26 07:25:34 +00:00
cache.h cache: add cache_set for testing 2020-12-26 07:25:34 +00:00
common.h core: refactor frame pacing 2023-12-19 23:26:59 +00:00
compiler.h compiler: use C23 auto when available 2023-12-17 08:55:23 +00:00
config.c config: add debug options to enable timing based pacing 2023-12-19 23:27:04 +00:00
config.h config: add debug options to enable timing based pacing 2023-12-19 23:27:04 +00:00
config_libconfig.c config_libconfig: address some clang-tidy issues, run clang-format 2023-07-22 02:17:13 +03:00
dbus.c dbus: address some clang-tidy issues 2023-08-11 01:04:58 +03:00
dbus.h win: split struct win 2019-05-21 20:15:29 +01:00
diagnostic.c backend: make target window a parameter of the init backend operation 2023-09-24 01:14:55 +03:00
diagnostic.h picom: make sure --diagnostics works when another picom is running 2020-03-11 19:15:26 +00:00
err.h
event.c core: don't call schedule_render too early 2023-12-19 22:36:17 +00:00
event.h
file_watch.c file_watch: don't watch special files 2020-02-26 21:11:55 +00:00
file_watch.h core: watch for configuration file changes 2019-11-10 18:58:01 +00:00
kernel.c kernel: address some clang-tidy issues 2023-08-11 00:50:57 +03:00
kernel.h backend: gl: use gaussian blur for shadow 2022-09-18 05:00:52 +01:00
list.h event: handle reparent to the same parent 2019-05-21 20:15:32 +01:00
log.c log: give verbose log level a color 2023-12-18 04:18:18 +00:00
log.h log: add a new log level, verbose 2023-12-18 04:11:18 +00:00
meson.build core: refactor frame pacing 2023-12-19 23:26:59 +00:00
meta.h Add missing header file 2019-05-21 20:15:34 +01:00
opengl.c opengl: address some clang-tidy issues 2023-09-15 00:43:15 +03:00
opengl.h opengl: address some clang-tidy issues 2023-09-15 00:43:15 +03:00
options.c options: address some clang-tidy issues 2023-08-11 01:40:47 +03:00
options.h options: reject invalid backend earlier 2019-11-10 05:03:17 +00:00
picom.c core: always check if render is finished at next vblank 2023-12-19 23:27:10 +00:00
picom.h picom: address some clang-tidy issues 2023-08-11 01:38:22 +03:00
picom.modulemap rename: fix the name of the modulemap file 2019-10-24 19:41:35 +01:00
region.h region: address some clang-tidy issues, run clang-format 2023-08-11 00:47:14 +03:00
render.c compiler: use C23 auto when available 2023-12-17 08:55:23 +00:00
render.h core: isolate X connection with error handling into a struct 2023-07-04 16:24:53 +01:00
statistics.c core: factor out code for estimating the rendering time budget 2023-06-10 14:33:24 +01:00
statistics.h core: don't request vblank events when we are not rendering 2023-12-19 22:36:31 +00:00
string_utils.c string_utils: add trim_both 2022-07-17 15:43:47 +01:00
string_utils.h string_utils: address some clang-tidy issues 2023-08-11 01:47:43 +03:00
types.h new backend: glx: implement IMAGE_OP_APPLY_ALPHA 2019-05-21 20:15:35 +01:00
uthash_extra.h
utils.c compiler: bring the unreachable macro in line with C23 2023-12-17 08:51:22 +00:00
utils.h core: don't call schedule_render too early 2023-12-19 22:36:17 +00:00
vblank.c vblank: winding down vblank events instead of stopping immediately 2023-12-19 23:27:08 +00:00
vblank.h core: refactor frame pacing 2023-12-19 23:26:59 +00:00
vsync.c core: isolate X connection with error handling into a struct 2023-07-04 16:24:53 +01:00
vsync.h
win.c compiler: use C23 auto when available 2023-12-17 08:55:23 +00:00
win.h win: address some clang-tidy issues, run clang-format 2023-08-11 01:09:56 +03:00
win_defs.h event, win: delayed handling of shape notify 2020-10-23 04:37:38 +01:00
x.c x: fix x_request_vblank_event 2023-12-19 23:27:07 +00:00
x.h core: refactor frame pacing 2023-12-19 23:26:59 +00:00
xrescheck.c
xrescheck.h