summaryrefslogtreecommitdiff
path: root/src/screen
diff options
context:
space:
mode:
authorAndrew Opalach <andrew@akon.city> 2025-05-11 15:10:54 -0400
committerAndrew Opalach <andrew@akon.city> 2025-05-11 15:10:54 -0400
commitcb342b234defc1205de5d8b10ddf79deae0a551a (patch)
tree135a8f17ef297dcfa71cfa24de0170797add999e /src/screen
parentbbdc4ed66aa171f89f675aa1c82316477d5fd47e (diff)
downloadcamu-cb342b234defc1205de5d8b10ddf79deae0a551a.tar.gz
camu-cb342b234defc1205de5d8b10ddf79deae0a551a.tar.bz2
camu-cb342b234defc1205de5d8b10ddf79deae0a551a.zip
Add keybind to disable scaling filter
- Fix no FFmpeg build. - Cleanup commented code from cmc ui. Signed-off-by: Andrew Opalach <andrew@akon.city>
Diffstat (limited to 'src/screen')
-rw-r--r--src/screen/screen.c16
-rw-r--r--src/screen/screen.h1
2 files changed, 15 insertions, 2 deletions
diff --git a/src/screen/screen.c b/src/screen/screen.c
index f749bcb..23afa7e 100644
--- a/src/screen/screen.c
+++ b/src/screen/screen.c
@@ -1,3 +1,5 @@
+#define AL_LOG_SECTION "screen"
+#include <al/log.h>
#include <nnwt/thread.h>
#include <math.h>
@@ -297,6 +299,16 @@ static bool key_callback(void *userdata, u8 state, u16 button)
}
break;
}
+ case STELA_KEY_N:
+ scr->scaling_disabled = !scr->scaling_disabled;
+ if (scr->scaling_disabled) {
+ scr->renderer->set_scaling(scr->renderer, CAMU_SCALING_NEAREST);
+ log_info("Scaling filters disabled.");
+ } else {
+ scr->renderer->set_scaling(scr->renderer, CAMU_SCALING_DEFAULT);
+ log_info("Scaling filters enabled.");
+ }
+ return true;
default:
break;
}
@@ -324,7 +336,7 @@ static void key_immediate_callback(void *userdata, u8 state, u16 button)
switch (state) {
case STELA_BUTTON_PRESSED:
switch (button) {
- case STELA_KEY_F: {
+ case STELA_KEY_F:
scr->fullscreen = !scr->fullscreen;
if (scr->renderer->set_fullscreen) {
scr->renderer->set_fullscreen(scr->renderer, scr->fullscreen);
@@ -333,7 +345,6 @@ static void key_immediate_callback(void *userdata, u8 state, u16 button)
}
break;
}
- }
break;
default:
break;
@@ -390,6 +401,7 @@ bool camu_screen_create_window(struct camu_screen *scr, const char *name)
scr->width = scr->window->width;
scr->height = scr->window->height;
scr->fullscreen = false;
+ scr->scaling_disabled = false;
#ifdef STELA_EVENT_BUFFER
nn_thread_create(&scr->thread, event_thread, scr);
#endif
diff --git a/src/screen/screen.h b/src/screen/screen.h
index bf1f519..4ba07c2 100644
--- a/src/screen/screen.h
+++ b/src/screen/screen.h
@@ -63,6 +63,7 @@ struct camu_screen {
u32 width;
u32 height;
bool fullscreen;
+ bool scaling_disabled;
u64 last_click_ts;
f64 last_mouse_y;
f64 last_mouse_x;