diff options
author | bunnei <bunneidev@gmail.com> | 2016-11-15 19:57:08 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-11-15 19:57:08 -0500 |
commit | 5a31552764dc8970253e642f4b829a8b785375c6 (patch) | |
tree | 8186a82c37ae04c17bd1d6250c524fc097f9671c /src/core | |
parent | 3b4f134c08eb61e5f69e35270adb34fdad1fae77 (diff) | |
parent | 793339b73a9bc87d6fa22742be4631565c2201db (diff) |
Merge pull request #1753 from jroweboy/frame_layouts
Support additional screen layouts.
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/settings.cpp | 7 | ||||
-rw-r--r-- | src/core/settings.h | 11 |
2 files changed, 18 insertions, 0 deletions
diff --git a/src/core/settings.cpp b/src/core/settings.cpp index 4a0969b00..05f41f798 100644 --- a/src/core/settings.cpp +++ b/src/core/settings.cpp @@ -7,6 +7,8 @@ #include "settings.h" #include "video_core/video_core.h" +#include "common/emu_window.h" + namespace Settings { Values values = {}; @@ -20,6 +22,11 @@ void Apply() { VideoCore::g_shader_jit_enabled = values.use_shader_jit; VideoCore::g_scaled_resolution_enabled = values.use_scaled_resolution; + if (VideoCore::g_emu_window) { + auto layout = VideoCore::g_emu_window->GetFramebufferLayout(); + VideoCore::g_emu_window->UpdateCurrentFramebufferLayout(layout.width, layout.height); + } + AudioCore::SelectSink(values.sink_id); AudioCore::EnableStretching(values.enable_audio_stretching); } diff --git a/src/core/settings.h b/src/core/settings.h index 5a64f8018..e931953d7 100644 --- a/src/core/settings.h +++ b/src/core/settings.h @@ -10,7 +10,15 @@ namespace Settings { +enum class LayoutOption { + Default, + SingleScreen, + LargeScreen, + Custom, +}; + namespace NativeInput { + enum Values { // directly mapped keys A, @@ -84,6 +92,9 @@ struct Values { bool use_scaled_resolution; bool use_vsync; + LayoutOption layout_option; + bool swap_screen; + float bg_red; float bg_green; float bg_blue; |