diff options
| author | 2024-11-12 12:12:31 -0500 | |
|---|---|---|
| committer | 2024-11-12 12:12:31 -0500 | |
| commit | 29fa4f8d667d543595e652e7402d395d507ba464 (patch) | |
| tree | eaa2adf9f687c499b31eeddef42493c4bfda9b1c /src/screen | |
| parent | b4bcfa1da5c1be9f7999d4d4df4e8d1b73c3061a (diff) | |
| download | camu-29fa4f8d667d543595e652e7402d395d507ba464.tar.gz camu-29fa4f8d667d543595e652e7402d395d507ba464.tar.bz2 camu-29fa4f8d667d543595e652e7402d395d507ba464.zip | |
Add user volume, simple client add cli
Signed-off-by: Andrew Opalach <andrew@akon.city>
Diffstat (limited to 'src/screen')
| -rw-r--r-- | src/screen/screen.c | 18 | ||||
| -rw-r--r-- | src/screen/screen.h | 1 |
2 files changed, 12 insertions, 7 deletions
diff --git a/src/screen/screen.c b/src/screen/screen.c index f949c1d..aa61ba6 100644 --- a/src/screen/screen.c +++ b/src/screen/screen.c @@ -133,15 +133,19 @@ static bool mouse_button_callback(void *userdata, u8 state, u8 button) static bool scroll_callback(void *userdata, f64 y) { struct camu_screen *scr = (struct camu_screen *)userdata; - struct camu_view *view = get_view_from_mouse_pos(scr); - if (view) { - if (scr->flags & CAMU_SCREEN_ZOOM_PAN_SIMPLE) { - y = -y / SCROLL_MULTIPLIER; - if (camu_view_zoom_simple(view, scr->width, scr->height, scr->last_mouse_x, scr->last_mouse_y, y)) { - view->mode = CAMU_VIEW_DETACHED; - return true; + y = -y / SCROLL_MULTIPLIER; + if (!(scr->flags & CAMU_SCREEN_MODIFIER)) { + struct camu_view *view = get_view_from_mouse_pos(scr); + if (view) { + if (scr->flags & CAMU_SCREEN_ZOOM_PAN_SIMPLE) { + if (camu_view_zoom_simple(view, scr->width, scr->height, scr->last_mouse_x, scr->last_mouse_y, y)) { + view->mode = CAMU_VIEW_DETACHED; + return true; + } } } + } else { + scr->callback(scr->userdata, CAMU_SCREEN_VOLUME, &y); } return false; } diff --git a/src/screen/screen.h b/src/screen/screen.h index a10796a..0c56cf9 100644 --- a/src/screen/screen.h +++ b/src/screen/screen.h @@ -34,6 +34,7 @@ enum { CAMU_SCREEN_TOGGLE_PAUSE, CAMU_SCREEN_SEEK, CAMU_SCREEN_RESEEK, + CAMU_SCREEN_VOLUME, CAMU_SCREEN_CLOSE }; |