diff --git a/src/common/net/net.cpp b/src/common/net/net.cpp index acfc043b31..dedfd06bb1 100644 --- a/src/common/net/net.cpp +++ b/src/common/net/net.cpp @@ -25,8 +25,6 @@ namespace Common::Net { std::vector Release::GetAssets() const { #ifdef _WIN32 static constexpr const std::string prefix = "Eden-Windows"; -#elif defined(__linux__) - static constexpr const std::string prefix = "Eden-Linux"; #elif defined(__APPLE__) static constexpr const std::string prefix = "Eden-macOS"; #elif defined(__ANDROID__) @@ -71,19 +69,13 @@ std::vector Release::GetAssets() const { make_asset(QT_TR_NOOP("Standard"), "-mingw-arm64-clang-standard.zip"), make_asset(QT_TR_NOOP("PGO"), "-mingw-arm64-clang-pgo.zip") #endif -#elif defined(__linux__) -// TODO(crueter): Linux doesn't need this...? -#ifdef ARCHITECTURE_x86_64 - make_asset("Standard", "-amd64-gcc-standard.AppImage"), - make_asset("PGO", "-amd64-clang-pgo.AppImage"), -#endif #elif defined(__APPLE__) #ifdef ARCHITECTURE_arm64 make_asset(QT_TR_NOOP("Standard"), ".dmg"), #endif #elif defined(__ANDROID__) #ifdef ARCHITECTURE_x86_64 - make_asset("ChromeOS", "-chromeos.apk"), + make_asset("Standard", "-chromeos.apk"), #elif defined(ARCHITECTURE_arm64) #ifdef YUZU_LEGACY make_asset("Standard", "-legacy.apk"), diff --git a/src/yuzu/CMakeLists.txt b/src/yuzu/CMakeLists.txt index 38d9bcf412..3adce1dd8b 100644 --- a/src/yuzu/CMakeLists.txt +++ b/src/yuzu/CMakeLists.txt @@ -245,7 +245,7 @@ add_executable(yuzu render/performance_overlay.h render/performance_overlay.cpp render/performance_overlay.ui libqt_common.h libqt_common.cpp - update_dialog.h update_dialog.cpp update_dialog.ui + updater/update_dialog.h updater/update_dialog.cpp updater/update_dialog.ui ) diff --git a/src/yuzu/main_window.cpp b/src/yuzu/main_window.cpp index 0b6a8d8a09..d151162d63 100644 --- a/src/yuzu/main_window.cpp +++ b/src/yuzu/main_window.cpp @@ -8,7 +8,7 @@ #include "frontend_common/settings_generator.h" #include "qt_common/qt_string_lookup.h" #include "render/performance_overlay.h" -#include "update_dialog.h" +#include "updater/update_dialog.h" #if defined(QT_STATICPLUGIN) && !defined(__APPLE__) #undef VMA_IMPLEMENTATION #endif diff --git a/src/yuzu/update_dialog.cpp b/src/yuzu/updater/update_dialog.cpp similarity index 86% rename from src/yuzu/update_dialog.cpp rename to src/yuzu/updater/update_dialog.cpp index 5b8d6b1a4c..d009d2750e 100644 --- a/src/yuzu/update_dialog.cpp +++ b/src/yuzu/updater/update_dialog.cpp @@ -9,6 +9,7 @@ #include "ui_update_dialog.h" #include "update_dialog.h" #include +#include #include "common/httplib.h" @@ -35,21 +36,30 @@ UpdateDialog::UpdateDialog(const Common::Net::Release& release, QWidget* parent) ui->body->setMarkdown(QString::fromStdString(text)); // TODO(crueter): Find a way to set default - u32 i = 0; - for (const Common::Net::Asset& a : release.GetAssets()) { - QRadioButton* r = new QRadioButton(tr(a.name.c_str()), this); - if (i == 0) r->setChecked(true); - ++i; + const auto assets = release.GetAssets(); - r->setProperty("url", QString::fromStdString(a.url)); - r->setProperty("path", QString::fromStdString(a.path)); - r->setProperty("filename", QString::fromStdString(a.filename)); + if (assets.empty()) { + ui->groupBox->setHidden(true); + connect(this, &QDialog::accepted, this, [release]() { + QDesktopServices::openUrl(QUrl{QString::fromStdString(release.html_url)}); + }); + } else { + u32 i = 0; + for (const Common::Net::Asset& a : release.GetAssets()) { + QRadioButton* r = new QRadioButton(tr(a.name.c_str()), this); + if (i == 0) r->setChecked(true); + ++i; - ui->radioButtons->addWidget(r); - m_buttons.append(r); + r->setProperty("url", QString::fromStdString(a.url)); + r->setProperty("path", QString::fromStdString(a.path)); + r->setProperty("filename", QString::fromStdString(a.filename)); + + ui->radioButtons->addWidget(r); + m_buttons.append(r); + } + + connect(this, &QDialog::accepted, this, &UpdateDialog::Download); } - - connect(this, &QDialog::accepted, this, &UpdateDialog::Download); } UpdateDialog::~UpdateDialog() { diff --git a/src/yuzu/update_dialog.h b/src/yuzu/updater/update_dialog.h similarity index 99% rename from src/yuzu/update_dialog.h rename to src/yuzu/updater/update_dialog.h index 01c67c125c..cd8924f4f5 100644 --- a/src/yuzu/update_dialog.h +++ b/src/yuzu/updater/update_dialog.h @@ -20,6 +20,7 @@ public: private slots: void Download(); + private: Ui::UpdateDialog* ui; QList m_buttons; diff --git a/src/yuzu/update_dialog.ui b/src/yuzu/updater/update_dialog.ui similarity index 94% rename from src/yuzu/update_dialog.ui rename to src/yuzu/updater/update_dialog.ui index 85fc415b51..e885f84ef0 100644 --- a/src/yuzu/update_dialog.ui +++ b/src/yuzu/updater/update_dialog.ui @@ -19,6 +19,9 @@ <a href="%1">View on Forgejo</a> + + Qt::AlignmentFlag::AlignRight|Qt::AlignmentFlag::AlignTrailing|Qt::AlignmentFlag::AlignVCenter + true