Merge pull request #1942 from DarkLordZach/profile-select-game-boot
qt: Add setting to prompt for user on game boot
This commit is contained in:
commit
a6aa710b84
|
@ -470,6 +470,8 @@ void Config::ReadValues() {
|
||||||
qt_config->value("enable_discord_presence", true).toBool();
|
qt_config->value("enable_discord_presence", true).toBool();
|
||||||
UISettings::values.screenshot_resolution_factor =
|
UISettings::values.screenshot_resolution_factor =
|
||||||
static_cast<u16>(qt_config->value("screenshot_resolution_factor", 0).toUInt());
|
static_cast<u16>(qt_config->value("screenshot_resolution_factor", 0).toUInt());
|
||||||
|
UISettings::values.select_user_on_boot =
|
||||||
|
qt_config->value("select_user_on_boot", false).toBool();
|
||||||
|
|
||||||
qt_config->beginGroup("UIGameList");
|
qt_config->beginGroup("UIGameList");
|
||||||
UISettings::values.show_unknown = qt_config->value("show_unknown", true).toBool();
|
UISettings::values.show_unknown = qt_config->value("show_unknown", true).toBool();
|
||||||
|
@ -693,6 +695,7 @@ void Config::SaveValues() {
|
||||||
qt_config->setValue("enable_discord_presence", UISettings::values.enable_discord_presence);
|
qt_config->setValue("enable_discord_presence", UISettings::values.enable_discord_presence);
|
||||||
qt_config->setValue("screenshot_resolution_factor",
|
qt_config->setValue("screenshot_resolution_factor",
|
||||||
UISettings::values.screenshot_resolution_factor);
|
UISettings::values.screenshot_resolution_factor);
|
||||||
|
qt_config->setValue("select_user_on_boot", UISettings::values.select_user_on_boot);
|
||||||
|
|
||||||
qt_config->beginGroup("UIGameList");
|
qt_config->beginGroup("UIGameList");
|
||||||
qt_config->setValue("show_unknown", UISettings::values.show_unknown);
|
qt_config->setValue("show_unknown", UISettings::values.show_unknown);
|
||||||
|
|
|
@ -30,6 +30,7 @@ ConfigureGeneral::~ConfigureGeneral() = default;
|
||||||
void ConfigureGeneral::setConfiguration() {
|
void ConfigureGeneral::setConfiguration() {
|
||||||
ui->toggle_deepscan->setChecked(UISettings::values.gamedir_deepscan);
|
ui->toggle_deepscan->setChecked(UISettings::values.gamedir_deepscan);
|
||||||
ui->toggle_check_exit->setChecked(UISettings::values.confirm_before_closing);
|
ui->toggle_check_exit->setChecked(UISettings::values.confirm_before_closing);
|
||||||
|
ui->toggle_user_on_boot->setChecked(UISettings::values.select_user_on_boot);
|
||||||
ui->theme_combobox->setCurrentIndex(ui->theme_combobox->findData(UISettings::values.theme));
|
ui->theme_combobox->setCurrentIndex(ui->theme_combobox->findData(UISettings::values.theme));
|
||||||
ui->use_cpu_jit->setChecked(Settings::values.use_cpu_jit);
|
ui->use_cpu_jit->setChecked(Settings::values.use_cpu_jit);
|
||||||
ui->enable_nfc->setChecked(Settings::values.enable_nfc);
|
ui->enable_nfc->setChecked(Settings::values.enable_nfc);
|
||||||
|
@ -42,6 +43,7 @@ void ConfigureGeneral::PopulateHotkeyList(const HotkeyRegistry& registry) {
|
||||||
void ConfigureGeneral::applyConfiguration() {
|
void ConfigureGeneral::applyConfiguration() {
|
||||||
UISettings::values.gamedir_deepscan = ui->toggle_deepscan->isChecked();
|
UISettings::values.gamedir_deepscan = ui->toggle_deepscan->isChecked();
|
||||||
UISettings::values.confirm_before_closing = ui->toggle_check_exit->isChecked();
|
UISettings::values.confirm_before_closing = ui->toggle_check_exit->isChecked();
|
||||||
|
UISettings::values.select_user_on_boot = ui->toggle_user_on_boot->isChecked();
|
||||||
UISettings::values.theme =
|
UISettings::values.theme =
|
||||||
ui->theme_combobox->itemData(ui->theme_combobox->currentIndex()).toString();
|
ui->theme_combobox->itemData(ui->theme_combobox->currentIndex()).toString();
|
||||||
|
|
||||||
|
|
|
@ -38,6 +38,13 @@
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QCheckBox" name="toggle_user_on_boot">
|
||||||
|
<property name="text">
|
||||||
|
<string>Prompt for user on game boot</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
|
|
|
@ -687,10 +687,26 @@ bool GMainWindow::LoadROM(const QString& filename) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void GMainWindow::SelectAndSetCurrentUser() {
|
||||||
|
QtProfileSelectionDialog dialog(this);
|
||||||
|
dialog.setWindowFlags(Qt::Dialog | Qt::CustomizeWindowHint | Qt::WindowTitleHint |
|
||||||
|
Qt::WindowSystemMenuHint | Qt::WindowCloseButtonHint);
|
||||||
|
dialog.setWindowModality(Qt::WindowModal);
|
||||||
|
dialog.exec();
|
||||||
|
|
||||||
|
if (dialog.GetStatus()) {
|
||||||
|
Settings::values.current_user = static_cast<s32>(dialog.GetIndex());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void GMainWindow::BootGame(const QString& filename) {
|
void GMainWindow::BootGame(const QString& filename) {
|
||||||
LOG_INFO(Frontend, "yuzu starting...");
|
LOG_INFO(Frontend, "yuzu starting...");
|
||||||
StoreRecentFile(filename); // Put the filename on top of the list
|
StoreRecentFile(filename); // Put the filename on top of the list
|
||||||
|
|
||||||
|
if (UISettings::values.select_user_on_boot) {
|
||||||
|
SelectAndSetCurrentUser();
|
||||||
|
}
|
||||||
|
|
||||||
if (!LoadROM(filename))
|
if (!LoadROM(filename))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
|
|
@ -128,6 +128,8 @@ private:
|
||||||
void ShowTelemetryCallout();
|
void ShowTelemetryCallout();
|
||||||
void SetDiscordEnabled(bool state);
|
void SetDiscordEnabled(bool state);
|
||||||
|
|
||||||
|
void SelectAndSetCurrentUser();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Stores the filename in the recently loaded files list.
|
* Stores the filename in the recently loaded files list.
|
||||||
* The new filename is stored at the beginning of the recently loaded files list.
|
* The new filename is stored at the beginning of the recently loaded files list.
|
||||||
|
|
|
@ -40,6 +40,8 @@ struct Values {
|
||||||
bool confirm_before_closing;
|
bool confirm_before_closing;
|
||||||
bool first_start;
|
bool first_start;
|
||||||
|
|
||||||
|
bool select_user_on_boot;
|
||||||
|
|
||||||
// Discord RPC
|
// Discord RPC
|
||||||
bool enable_discord_presence;
|
bool enable_discord_presence;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue