mirror of
https://git.suyu.dev/suyu/suyu.git
synced 2024-12-23 17:00:57 +01:00
Merge pull request #5178 from german77/dockedresize
Add option to reset window size to 1080p
This commit is contained in:
commit
d7f5e55f8e
3 changed files with 30 additions and 6 deletions
|
@ -939,7 +939,10 @@ void GMainWindow::ConnectMenuEvents() {
|
|||
&GMainWindow::OnDisplayTitleBars);
|
||||
connect(ui.action_Show_Filter_Bar, &QAction::triggered, this, &GMainWindow::OnToggleFilterBar);
|
||||
connect(ui.action_Show_Status_Bar, &QAction::triggered, statusBar(), &QStatusBar::setVisible);
|
||||
connect(ui.action_Reset_Window_Size, &QAction::triggered, this, &GMainWindow::ResetWindowSize);
|
||||
connect(ui.action_Reset_Window_Size_720, &QAction::triggered, this,
|
||||
&GMainWindow::ResetWindowSize720);
|
||||
connect(ui.action_Reset_Window_Size_1080, &QAction::triggered, this,
|
||||
&GMainWindow::ResetWindowSize1080);
|
||||
|
||||
// Fullscreen
|
||||
connect(ui.action_Fullscreen, &QAction::triggered, this, &GMainWindow::ToggleFullscreen);
|
||||
|
@ -2258,7 +2261,7 @@ void GMainWindow::ToggleWindowMode() {
|
|||
}
|
||||
}
|
||||
|
||||
void GMainWindow::ResetWindowSize() {
|
||||
void GMainWindow::ResetWindowSize720() {
|
||||
const auto aspect_ratio = Layout::EmulationAspectRatio(
|
||||
static_cast<Layout::AspectRatio>(Settings::values.aspect_ratio.GetValue()),
|
||||
static_cast<float>(Layout::ScreenUndocked::Height) / Layout::ScreenUndocked::Width);
|
||||
|
@ -2272,6 +2275,20 @@ void GMainWindow::ResetWindowSize() {
|
|||
}
|
||||
}
|
||||
|
||||
void GMainWindow::ResetWindowSize1080() {
|
||||
const auto aspect_ratio = Layout::EmulationAspectRatio(
|
||||
static_cast<Layout::AspectRatio>(Settings::values.aspect_ratio.GetValue()),
|
||||
static_cast<float>(Layout::ScreenDocked::Height) / Layout::ScreenDocked::Width);
|
||||
if (!ui.action_Single_Window_Mode->isChecked()) {
|
||||
render_window->resize(Layout::ScreenDocked::Height / aspect_ratio,
|
||||
Layout::ScreenDocked::Height);
|
||||
} else {
|
||||
resize(Layout::ScreenDocked::Height / aspect_ratio,
|
||||
Layout::ScreenDocked::Height + menuBar()->height() +
|
||||
(ui.action_Show_Status_Bar->isChecked() ? statusBar()->height() : 0));
|
||||
}
|
||||
}
|
||||
|
||||
void GMainWindow::OnConfigure() {
|
||||
const auto old_theme = UISettings::values.theme;
|
||||
const bool old_discord_presence = UISettings::values.enable_discord_presence;
|
||||
|
|
|
@ -242,7 +242,8 @@ private slots:
|
|||
void ShowFullscreen();
|
||||
void HideFullscreen();
|
||||
void ToggleWindowMode();
|
||||
void ResetWindowSize();
|
||||
void ResetWindowSize720();
|
||||
void ResetWindowSize1080();
|
||||
void OnCaptureScreenshot();
|
||||
void OnCoreError(Core::System::ResultStatus, std::string);
|
||||
void OnReinitializeKeys(ReinitializeKeyBehavior behavior);
|
||||
|
|
|
@ -97,7 +97,8 @@
|
|||
<addaction name="action_Display_Dock_Widget_Headers"/>
|
||||
<addaction name="action_Show_Filter_Bar"/>
|
||||
<addaction name="action_Show_Status_Bar"/>
|
||||
<addaction name="action_Reset_Window_Size"/>
|
||||
<addaction name="action_Reset_Window_Size_720"/>
|
||||
<addaction name="action_Reset_Window_Size_1080"/>
|
||||
<addaction name="separator"/>
|
||||
<addaction name="menu_View_Debugging"/>
|
||||
</widget>
|
||||
|
@ -220,9 +221,14 @@
|
|||
<string>Show Status Bar</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="action_Reset_Window_Size">
|
||||
<action name="action_Reset_Window_Size_720">
|
||||
<property name="text">
|
||||
<string>Reset Window Size</string>
|
||||
<string>Reset Window Size to 720p</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="action_Reset_Window_Size_1080">
|
||||
<property name="text">
|
||||
<string>Reset Window Size to 1080p</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="action_Fullscreen">
|
||||
|
|
Loading…
Reference in a new issue