Qt: Better layout for updater window

This commit is contained in:
Stenzek
2025-11-28 15:49:00 +10:00
parent 243a8afe97
commit 1ba3efae7c
2 changed files with 76 additions and 38 deletions

View File

@@ -108,6 +108,10 @@ LOG_CHANNEL(Host);
AutoUpdaterWindow::AutoUpdaterWindow(Error* const error) : QWidget()
{
m_ui.setupUi(this);
QFont title_font(m_ui.titleLabel->font());
title_font.setBold(true);
title_font.setPixelSize(20);
m_ui.titleLabel->setFont(title_font);
setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint);
setDownloadSectionVisibility(false);
@@ -414,14 +418,12 @@ void AutoUpdaterWindow::getLatestReleaseComplete(s32 status_code, const Error& e
static_cast<s64>(
QDateTime::fromString(doc_object["published_at"].toString(), Qt::DateFormat::ISODate).toSecsSinceEpoch()));
m_ui.currentVersion->setText(tr("Current Version: %1 (%2)")
m_ui.currentVersion->setText(tr("%1 (%2)")
.arg(QtUtils::StringViewToQString(
TinyString::from_format("{}/{}", g_scm_version_str, UPDATER_RELEASE_CHANNEL)))
.arg(current_date));
m_ui.newVersion->setText(
tr("New Version: %1 (%2)").arg(QString::fromStdString(getCurrentUpdateTag())).arg(release_date));
m_ui.downloadSize->setText(
tr("Download Size: %1 MB").arg(static_cast<double>(m_download_size) / 1000000.0, 0, 'f', 2));
m_ui.newVersion->setText(tr("%1 (%2)").arg(QString::fromStdString(getCurrentUpdateTag())).arg(release_date));
m_ui.downloadSize->setText(tr("%1 MB").arg(static_cast<double>(m_download_size) / 1000000.0, 0, 'f', 2));
m_ui.downloadAndInstall->setEnabled(true);
m_ui.updateNotes->setText(tr("Loading..."));

View File

@@ -22,56 +22,96 @@
<item>
<layout class="QHBoxLayout" name="updateTextLayout" stretch="0,1">
<item>
<widget class="QLabel" name="icon">
<widget class="QLabel" name="iconLabel">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>32</width>
<height>32</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>32</width>
<height>32</height>
</size>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap resource="resources/duckstation-qt.qrc">:/icons/UpdateDuck.png</pixmap>
</property>
<property name="scaledContents">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="updateLabel">
<property name="font">
<font>
<pointsize>16</pointsize>
<bold>true</bold>
</font>
</property>
<widget class="QLabel" name="titleLabel">
<property name="text">
<string>Update Available</string>
</property>
<property name="alignment">
<set>Qt::AlignmentFlag::AlignLeading|Qt::AlignmentFlag::AlignLeft|Qt::AlignmentFlag::AlignTop</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="QLabel" name="currentVersion">
<property name="text">
<string>Current Version: </string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="newVersion">
<property name="text">
<string>New Version: </string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="downloadSize">
<property name="text">
<string>Download Size:</string>
</property>
</widget>
<layout class="QGridLayout" name="versionInfoLayout" columnstretch="0,1">
<item row="0" column="0">
<widget class="QLabel" name="currentVersionLabel">
<property name="font">
<font>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Current Version: </string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLabel" name="currentVersion"/>
</item>
<item row="1" column="0">
<widget class="QLabel" name="newVersionLabel">
<property name="font">
<font>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>New Version: </string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLabel" name="newVersion"/>
</item>
<item row="2" column="0">
<widget class="QLabel" name="downloadSizeLabel">
<property name="font">
<font>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Download Size:</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QLabel" name="downloadSize"/>
</item>
</layout>
</item>
<item>
<widget class="QTextBrowser" name="updateNotes"/>
@@ -133,11 +173,7 @@
</widget>
</item>
<item row="0" column="0" colspan="2">
<widget class="QLabel" name="downloadStatus">
<property name="text">
<string/>
</property>
</widget>
<widget class="QLabel" name="downloadStatus"/>
</item>
</layout>
</item>