Added menu option to locate current mirror repository
This commit is contained in:
parent
cdcbfdc837
commit
08f47542e8
4 changed files with 46 additions and 2 deletions
|
@ -382,7 +382,7 @@ elseif(WIN32)
|
|||
endif()
|
||||
|
||||
target_link_libraries(yuzu PRIVATE common core input_common frontend_common network video_core)
|
||||
target_link_libraries(yuzu PRIVATE Boost::headers glad Qt${QT_MAJOR_VERSION}::Widgets)
|
||||
target_link_libraries(yuzu PRIVATE Boost::headers glad Qt${QT_MAJOR_VERSION}::Widgets httplib::httplib)
|
||||
target_link_libraries(yuzu PRIVATE ${PLATFORM_LIBRARIES} Threads::Threads)
|
||||
|
||||
target_link_libraries(yuzu PRIVATE Vulkan::Headers)
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
#include "common/linux/gamemode.h"
|
||||
#endif
|
||||
|
||||
#include <httplib.h>
|
||||
#include <boost/container/flat_set.hpp>
|
||||
|
||||
// VFS includes must be before glad as they will conflict with Windows file api, which uses defines.
|
||||
|
@ -1524,6 +1525,7 @@ void GMainWindow::ConnectMenuEvents() {
|
|||
connect_menu(ui->action_Open_Mods_Page, &GMainWindow::OnOpenModsPage);
|
||||
connect_menu(ui->action_Open_Quickstart_Guide, &GMainWindow::OnOpenQuickstartGuide);
|
||||
connect_menu(ui->action_Open_FAQ, &GMainWindow::OnOpenFAQ);
|
||||
connect_menu(ui->action_Open_Mirror_Repo, &GMainWindow::OnOpenMirrorRepo);
|
||||
connect_menu(ui->action_Restart, &GMainWindow::OnRestartGame);
|
||||
connect_menu(ui->action_Configure, &GMainWindow::OnConfigure);
|
||||
connect_menu(ui->action_Configure_Current_Game, &GMainWindow::OnConfigurePerGame);
|
||||
|
@ -3566,6 +3568,41 @@ void GMainWindow::OnOpenFAQ() {
|
|||
OpenURL(QUrl(QStringLiteral("https://yuzu-emu.org/wiki/faq/")));
|
||||
}
|
||||
|
||||
void GMainWindow::OnOpenMirrorRepo() {
|
||||
struct Mirror {
|
||||
const char *host, *path;
|
||||
};
|
||||
const std::initializer_list<Mirror> mirrors = {
|
||||
{"https://github.com", "/litucks/torzu"},
|
||||
{"https://gitlab.com", "/litucks/torzu"},
|
||||
{"https://bitbucket.org", "/litucks/torzu"},
|
||||
{"https://codeberg.org", "/litucks/torzu"},
|
||||
{"https://notabug.org", "/litucks/torzu"},
|
||||
{"https://gitea.com", "/litucks/torzu"},
|
||||
{"https://try.gitea.io", "/litucks/torzu"},
|
||||
{"https://git.math.hamburg", "/litucks/torzu"},
|
||||
{"https://gitea.sprint-pay.com", "/litucks/torzu"},
|
||||
{"https://gitea.djoe.ovh", "/litucks/torzu"},
|
||||
{"https://git.sheetjs.com", "/litucks/torzu"},
|
||||
{"https://gitea.cisetech.com", "/litucks/torzu"}
|
||||
};
|
||||
|
||||
for (const auto& mirror : mirrors) {
|
||||
httplib::Client cli(mirror.host);
|
||||
if (cli.Get(mirror.path)) {
|
||||
OpenURL(QUrl(QString::fromStdString(fmt::format("{}{}", mirror.host, mirror.path))));
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
QMessageBox::warning(this, tr("Error locating mirror"), tr("There has been an error finding the current mirror repository.\n"
|
||||
"Your version may be so old the list has already been depleted\n"
|
||||
"or your network connectivity may be limited.\n"
|
||||
"Please either try again later, through a VPN or access the main\n"
|
||||
"repository via the Tor Browser:\n"
|
||||
"http://y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion/torzu-emu/torzu"));
|
||||
}
|
||||
|
||||
void GMainWindow::ToggleFullscreen() {
|
||||
if (!emulation_running) {
|
||||
return;
|
||||
|
|
|
@ -337,6 +337,7 @@ private slots:
|
|||
void OnOpenModsPage();
|
||||
void OnOpenQuickstartGuide();
|
||||
void OnOpenFAQ();
|
||||
void OnOpenMirrorRepo();
|
||||
/// Called whenever a user selects a game in the game list widget.
|
||||
void OnGameListLoadFile(QString game_path, u64 program_id);
|
||||
void OnGameListOpenFolder(u64 program_id, GameListOpenTarget target,
|
||||
|
|
|
@ -45,7 +45,7 @@
|
|||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>1280</width>
|
||||
<height>21</height>
|
||||
<height>22</height>
|
||||
</rect>
|
||||
</property>
|
||||
<widget class="QMenu" name="menu_File">
|
||||
|
@ -185,6 +185,7 @@
|
|||
<addaction name="action_Report_Compatibility"/>
|
||||
<addaction name="action_Open_Mods_Page"/>
|
||||
<addaction name="action_Open_Quickstart_Guide"/>
|
||||
<addaction name="action_Open_Mirror_Repo"/>
|
||||
<addaction name="action_Open_FAQ"/>
|
||||
<addaction name="separator"/>
|
||||
<addaction name="action_About"/>
|
||||
|
@ -481,6 +482,11 @@
|
|||
<string>Open Home Menu</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="action_Open_Mirror_Repo">
|
||||
<property name="text">
|
||||
<string>Open current Mirror &Repo</string>
|
||||
</property>
|
||||
</action>
|
||||
</widget>
|
||||
<resources>
|
||||
<include location="yuzu.qrc"/>
|
||||
|
|
Loading…
Reference in a new issue