diff options
| author | 2025-01-01 16:04:59 -0500 | |
|---|---|---|
| committer | 2025-01-01 16:13:22 -0500 | |
| commit | 24b58a516e6bacfdf59aac422411c2f1fcf4ffb2 (patch) | |
| tree | 834284316a98f829362619eb2174022687df85ea /src/screen | |
| parent | 20003fd25404ee5fc4cd068fbc4fae1ad6f6ae99 (diff) | |
| download | camu-24b58a516e6bacfdf59aac422411c2f1fcf4ffb2.tar.gz camu-24b58a516e6bacfdf59aac422411c2f1fcf4ffb2.tar.bz2 camu-24b58a516e6bacfdf59aac422411c2f1fcf4ffb2.zip | |
Optimizations based on video loop performance
- Support nn_packet_stream direct mode
- Hook up FFmpeg hardware accelerated decoding
- Refactor VCR
- Reduce locking when returning packets to a packet pool
Signed-off-by: Andrew Opalach <andrew@akon.city>
Diffstat (limited to 'src/screen')
| -rw-r--r-- | src/screen/screen.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/screen/screen.c b/src/screen/screen.c index c323204..de7c8a7 100644 --- a/src/screen/screen.c +++ b/src/screen/screen.c @@ -57,7 +57,8 @@ static bool pointer_pos_callback(void *userdata, f64 x, f64 y) bool queue_refresh = false; if (view) { if (scr->flags & CAMU_SCREEN_DRAGGING) { - if (scr->flags & CAMU_SCREEN_ZOOM_PAN_SIMPLE) { + if (!(scr->flags & CAMU_SCREEN_MODIFIER) && + (scr->flags & CAMU_SCREEN_ZOOM_PAN_SIMPLE)) { f64 dx = x - scr->last_mouse_x; f64 dy = y - scr->last_mouse_y; if (camu_view_pan_simple(view, scr->width, scr->height, dx, dy)) { @@ -329,6 +330,10 @@ bool camu_screen_create_renderer(struct camu_screen *scr, struct camu_renderer * scr->window->vk_create_surface, scr->window->vk_get_extensions, #elif defined CAMU_RENDERER_OPENGL +#ifdef STELA_USE_EGL + scr->window->display, + scr->window->context, +#endif scr->window->get_gl_proc_address, scr->window->gl_loader_load, scr->window->gl_make_current, @@ -533,6 +538,9 @@ void camu_screen_wake(struct camu_screen *scr) #else (void)scr; #endif +#ifndef LIANA_LIST_SCUFFED_LOOP + scr->force_render = true; +#endif } void camu_screen_close(struct camu_screen *scr) |