diff options
Diffstat (limited to 'src/core/frontend/framebuffer_layout.cpp')
-rw-r--r-- | src/core/frontend/framebuffer_layout.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/core/frontend/framebuffer_layout.cpp b/src/core/frontend/framebuffer_layout.cpp index 1b4f0255e..2dc795d56 100644 --- a/src/core/frontend/framebuffer_layout.cpp +++ b/src/core/frontend/framebuffer_layout.cpp @@ -28,8 +28,8 @@ FramebufferLayout DefaultFrameLayout(u32 width, u32 height) { FramebufferLayout res{width, height}; const float window_aspect_ratio = static_cast<float>(height) / width; - float emulation_aspect_ratio = EmulationAspectRatio( - static_cast<Aspect>(Settings::values.aspect_ratio), window_aspect_ratio); + const float emulation_aspect_ratio = EmulationAspectRatio( + static_cast<AspectRatio>(Settings::values.aspect_ratio), window_aspect_ratio); const Common::Rectangle<u32> screen_window_area{0, 0, width, height}; Common::Rectangle<u32> screen = MaxRectangle(screen_window_area, emulation_aspect_ratio); @@ -58,13 +58,15 @@ FramebufferLayout FrameLayoutFromResolutionScale(u32 res_scale) { return DefaultFrameLayout(width, height); } -float EmulationAspectRatio(Aspect aspect, float window_aspect_ratio) { +float EmulationAspectRatio(AspectRatio aspect, float window_aspect_ratio) { switch (aspect) { - case Aspect::Default: + case AspectRatio::Default: return static_cast<float>(ScreenUndocked::Height) / ScreenUndocked::Width; - case Aspect::Aspect21by9: + case AspectRatio::R4_3: + return 3.0f / 4.0f; + case AspectRatio::R21_9: return 9.0f / 21.0f; - case Aspect::StretchToWindow: + case AspectRatio::StretchToWindow: return window_aspect_ratio; default: return static_cast<float>(ScreenUndocked::Height) / ScreenUndocked::Width; |