diff options
Diffstat (limited to 'src/core/frontend')
-rw-r--r-- | src/core/frontend/framebuffer_layout.cpp | 10 | ||||
-rw-r--r-- | src/core/frontend/framebuffer_layout.h | 6 |
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}; |