summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/core/frontend/framebuffer_layout.cpp10
-rw-r--r--src/core/frontend/framebuffer_layout.h6
2 files changed, 11 insertions, 5 deletions
diff --git a/src/core/frontend/framebuffer_layout.cpp b/src/core/frontend/framebuffer_layout.cpp
index f94fa0041..d8821f8fd 100644
--- a/src/core/frontend/framebuffer_layout.cpp
+++ b/src/core/frontend/framebuffer_layout.cpp
@@ -30,17 +30,17 @@ FramebufferLayout DefaultFrameLayout(u32 width, u32 height) {
const auto window_aspect_ratio = static_cast<float>(height) / width;
float emulation_aspect_ratio;
- switch (Settings::values.aspect_ratio) {
- case 0: // 16:9 (Default)
+ switch (static_cast<Aspect>(Settings::values.aspect_ratio)) {
+ case Aspect::AspectDefault:
emulation_aspect_ratio = static_cast<float>(ScreenUndocked::Height) / ScreenUndocked::Width;
break;
- case 1: // 21:9
+ case Aspect::Aspect21by9:
emulation_aspect_ratio = 9.f / 21;
break;
- case 2: // Stretch to Window
+ case Aspect::AspectStretch:
emulation_aspect_ratio = window_aspect_ratio;
break;
- default: // 16:9
+ default:
emulation_aspect_ratio = static_cast<float>(ScreenUndocked::Height) / ScreenUndocked::Width;
}
diff --git a/src/core/frontend/framebuffer_layout.h b/src/core/frontend/framebuffer_layout.h
index d2370adde..948c140ac 100644
--- a/src/core/frontend/framebuffer_layout.h
+++ b/src/core/frontend/framebuffer_layout.h
@@ -18,6 +18,12 @@ enum ScreenDocked : u32 {
HeightDocked = 1080,
};
+enum class Aspect {
+ AspectDefault,
+ Aspect21by9,
+ AspectStretch,
+};
+
/// Describes the layout of the window framebuffer
struct FramebufferLayout {
u32 width{ScreenUndocked::Width};