MacOs/Arm64/Shortcuts: Add more plist entries

This commit is contained in:
Megamouse 2024-09-25 23:31:59 +02:00
parent 7106bfcfb9
commit 9e460ebe0a
4 changed files with 15 additions and 3 deletions

View File

@ -1077,7 +1077,7 @@ void game_list_frame::CreateShortcuts(const game_info& gameinfo, const std::set<
#endif #endif
} }
if (!gameid_token_value.empty() && gui::utils::create_shortcut(gameinfo->info.name, target_cli_args, gameinfo->info.name, gameinfo->info.icon_path, target_icon_dir, location)) if (!gameid_token_value.empty() && gui::utils::create_shortcut(gameinfo->info.name, gameinfo->info.serial, target_cli_args, gameinfo->info.name, gameinfo->info.icon_path, target_icon_dir, location))
{ {
game_list_log.success("Created %s shortcut for %s", destination, qstr(gameinfo->info.name).simplified()); game_list_log.success("Created %s shortcut for %s", destination, qstr(gameinfo->info.name).simplified());
} }

View File

@ -66,6 +66,7 @@ namespace gui::utils
} }
bool create_shortcut(const std::string& name, bool create_shortcut(const std::string& name,
[[maybe_unused]] const std::string& serial,
[[maybe_unused]] const std::string& target_cli_args, [[maybe_unused]] const std::string& target_cli_args,
[[maybe_unused]] const std::string& description, [[maybe_unused]] const std::string& description,
[[maybe_unused]] const std::string& src_icon_path, [[maybe_unused]] const std::string& src_icon_path,
@ -280,6 +281,16 @@ namespace gui::utils
"\t<string>APPL</string>\n" "\t<string>APPL</string>\n"
"\t<key>CFBundleSignature</key>\n" "\t<key>CFBundleSignature</key>\n"
"\t<string>\?\?\?\?</string>\n" "\t<string>\?\?\?\?</string>\n"
#if defined(ARCH_ARM64)
"\t<key>CFBundleIdentifier</key>\n"
"\t<string>net.rpcs3" + (serial.empty() ? "" : ("." + serial)) + "</string>\n"
"\t<key>LSArchitecturePriority</key>\n"
"\t<array>\n"
"\t\t<string>arm64</string>\n"
"\t</array>\n"
"\t<key>LSRequiresNativeExecution</key>\n"
"\t<true/>\n"
#endif
"</dict>\n" "</dict>\n"
"</plist>\n"; "</plist>\n";

View File

@ -12,6 +12,7 @@ namespace gui::utils
}; };
bool create_shortcut(const std::string& name, bool create_shortcut(const std::string& name,
const std::string& serial,
const std::string& target_cli_args, const std::string& target_cli_args,
const std::string& description, const std::string& description,
const std::string& src_icon_path, const std::string& src_icon_path,

View File

@ -79,12 +79,12 @@ welcome_dialog::welcome_dialog(std::shared_ptr<gui_settings> gui_settings, bool
{ {
if (ui->create_desktop_shortcut->isChecked()) if (ui->create_desktop_shortcut->isChecked())
{ {
gui::utils::create_shortcut("RPCS3", "", "RPCS3", ":/rpcs3.svg", fs::get_temp_dir(), gui::utils::shortcut_location::desktop); gui::utils::create_shortcut("RPCS3", "", "", "RPCS3", ":/rpcs3.svg", fs::get_temp_dir(), gui::utils::shortcut_location::desktop);
} }
if (ui->create_applications_menu_shortcut->isChecked()) if (ui->create_applications_menu_shortcut->isChecked())
{ {
gui::utils::create_shortcut("RPCS3", "", "RPCS3", ":/rpcs3.svg", fs::get_temp_dir(), gui::utils::shortcut_location::applications); gui::utils::create_shortcut("RPCS3", "", "", "RPCS3", ":/rpcs3.svg", fs::get_temp_dir(), gui::utils::shortcut_location::applications);
} }
m_user_wants_dark_theme = ui->use_dark_theme->isChecked(); m_user_wants_dark_theme = ui->use_dark_theme->isChecked();