feat: 后台安装结束后退出任务栏驻留

* fix: 没有下载的时候直接退出客户端
* feat: 后台安装结束后退出任务栏驻留
* feat: 更新的时候关闭旧实例
This commit is contained in:
Pluto 2023-02-23 12:50:44 +00:00
parent 762caae49f
commit a3e1d19ac3
13 changed files with 125 additions and 65 deletions

@ -32,4 +32,5 @@ if [ "$1" = "remove" ] || [ "$1" = "purge" ] ; then
apt-key del '9D9A A859 F750 24B1 A1EC E16E 0E41 D354 A29A 440C' apt-key del '9D9A A859 F750 24B1 A1EC E16E 0E41 D354 A29A 440C'
else else
echo "非卸载操作,不进行配置清理" echo "非卸载操作,不进行配置清理"
(echo "关闭已有 spark-store..") && (pkill spark-store) || echo "继续安装 spark-store.."
fi fi

@ -113,6 +113,11 @@ void Application::setMainWindow(MainWindow *window)
#endif #endif
} }
MainWindow *Application::mainWindow()
{
return m_mainWindow;
}
void Application::initAboutDialog() void Application::initAboutDialog()
{ {
if (m_mainWindow == nullptr) if (m_mainWindow == nullptr)

@ -20,7 +20,9 @@ public:
static void checkAppConfigLocation(); static void checkAppConfigLocation();
void setBuildDateTime(const QString &buildDateTime); void setBuildDateTime(const QString &buildDateTime);
void setMainWindow(MainWindow *window); void setMainWindow(MainWindow *window);
MainWindow *mainWindow();
private: private:
void initAboutDialog(); void initAboutDialog();

@ -104,6 +104,22 @@ void MainWindow::openUrl(const QString &url)
} }
} }
bool MainWindow::isCloseWindowAnimation()
{
return closeWindowAnimation;
}
void MainWindow::closeEvent(QCloseEvent *event)
{
// 判断下载任务数量,如果没有要下载的,就直接退出主程序
if(!downloadlistwidget->isDownloadInProcess()){
// 已经全部下载完成
qApp->quit();
}
BaseWidgetOpacity::closeEvent(event);
}
void MainWindow::initUI() void MainWindow::initUI()
{ {
setWindowTitle(QObject::tr("Spark Store")); setWindowTitle(QObject::tr("Spark Store"));

@ -29,6 +29,11 @@ public:
void openUrl(const QString &url); void openUrl(const QString &url);
bool isCloseWindowAnimation();
protected:
void closeEvent(QCloseEvent *event) override;
private: private:
void initUI(); void initUI();
void initTitleBar(); void initTitleBar();

@ -1,6 +1,7 @@
#include "basewidgetopacity.h" #include "basewidgetopacity.h"
#include "utils/widgetanimation.h" #include "utils/widgetanimation.h"
#include "utils/utils.h" #include "utils/utils.h"
#include "widgets/downloadlistwidget.h"
#include <QSettings> #include <QSettings>
#include <QStandardPaths> #include <QStandardPaths>
@ -43,6 +44,7 @@ void BaseWidgetOpacity::closeEvent(QCloseEvent *event)
bool isWayland = Utils::isWayland(); bool isWayland = Utils::isWayland();
if (isWayland) if (isWayland)
{ {
closeWindowAnimation = true;
return DBlurEffectWidget::closeEvent(event); return DBlurEffectWidget::closeEvent(event);
} }

@ -111,7 +111,7 @@ void DownloadItem::setSpeed(QString s)
/*************************************************************** /***************************************************************
* @brief * @brief
* @param int t, t为安装方式 0,1,2 * @param int t, t为安装方式 0,1,2
* @note * @note
* @Sample usage: DownloadItem::install(0); * @Sample usage: DownloadItem::install(0);
**************************************************************/ **************************************************************/
void DownloadItem::install(int t) void DownloadItem::install(int t)

@ -5,6 +5,7 @@
#include "backend/downloadworker.h" #include "backend/downloadworker.h"
#include "utils/utils.h" #include "utils/utils.h"
#include "application.h" #include "application.h"
#include "mainwindow-dtk.h"
#include <QDesktopServices> #include <QDesktopServices>
#include <QtConcurrent> #include <QtConcurrent>
@ -70,6 +71,15 @@ DownloadListWidget::~DownloadListWidget()
delete ui; delete ui;
} }
bool DownloadListWidget::isDownloadInProcess()
{
if (toDownload > 0)
{
return true;
}
return false;
}
void DownloadListWidget::clearItem() void DownloadListWidget::clearItem()
{ {
ui->listWidget->clear(); ui->listWidget->clear();
@ -83,6 +93,7 @@ DownloadItem* DownloadListWidget::addItem(QString name, QString fileName, QStrin
} }
urList.append(downloadurl); urList.append(downloadurl);
allDownload += 1; allDownload += 1;
toDownload += 1;
DownloadItem *di = new DownloadItem; DownloadItem *di = new DownloadItem;
dlist << downloadurl; dlist << downloadurl;
downloaditemlist << di; downloaditemlist << di;
@ -126,8 +137,7 @@ void DownloadListWidget::startRequest(QUrl url, QString fileName)
{ {
downloadController = new DownloadController; // 并发下载,在第一次点击下载按钮的时候才会初始化 downloadController = new DownloadController; // 并发下载,在第一次点击下载按钮的时候才会初始化
} }
else
if (downloadController)
{ {
downloadController->disconnect(); downloadController->disconnect();
downloadController->stopDownload(); downloadController->stopDownload();
@ -153,17 +163,33 @@ void DownloadListWidget::httpFinished() // 完成下载
QtConcurrent::run([=]() QtConcurrent::run([=]()
{ {
while (downloaditemlist[nowDownload - 1]->readyInstall() == -1) while (downloaditemlist[nowDownload - 1]->readyInstall() == -1) // 安装当前应用堵塞安装后面的下载suspend
{ {
continue; continue;
} }
toDownload -= 1; // 安装完以后减少待安装数目
qDebug() << "Download: 还没有下载的数目:" << toDownload;
if(toDownload == 0){
Application *app = qobject_cast<Application *>(qApp);
MainWindow *mainWindow = app->mainWindow();
if(mainWindow->isCloseWindowAnimation() == true){
qDebug()<< "Download: 后台安装结束,退出程序";
qApp->quit();
}
else{
delete app;
delete mainWindow;
}
}
downloaditemlist[nowDownload - 1]->free = true; downloaditemlist[nowDownload - 1]->free = true;
emit downloadFinished(); emit downloadFinished();
if (nowDownload < allDownload) if (nowDownload < allDownload)
{ {
// 如果有排队则下载下一个 // 如果有排队则下载下一个
qDebug() << "切换下一个下载..."; qDebug() << "Download: 切换下一个下载...";
nowDownload += 1; nowDownload += 1;
while (downloaditemlist[nowDownload - 1]->close) while (downloaditemlist[nowDownload - 1]->close)
{ {

@ -22,12 +22,15 @@ public:
DownloadItem *addItem(QString name, QString fileName, QString pkgName, const QPixmap icon, QString downloadurl); DownloadItem *addItem(QString name, QString fileName, QString pkgName, const QPixmap icon, QString downloadurl);
int nowDownload = 0; int nowDownload = 0;
int allDownload = 0; int allDownload = 0;
int toDownload = 0;
QList<DownloadItem *> getDIList(); QList<DownloadItem *> getDIList();
QList<QUrl> getUrlList(); QList<QUrl> getUrlList();
void m_move(int x, int y); void m_move(int x, int y);
explicit DownloadListWidget(QWidget *parent = nullptr); explicit DownloadListWidget(QWidget *parent = nullptr);
~DownloadListWidget() override; ~DownloadListWidget() override;
bool isDownloadInProcess();
protected: protected:
void mouseMoveEvent(QMouseEvent *event) override; void mouseMoveEvent(QMouseEvent *event) override;

@ -240,12 +240,12 @@
<context> <context>
<name>DAboutDialog</name> <name>DAboutDialog</name>
<message> <message>
<location filename="../src/application.cpp" line="133"/> <location filename="../src/application.cpp" line="138"/>
<source>Version: %1</source> <source>Version: %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/application.cpp" line="143"/> <location filename="../src/application.cpp" line="148"/>
<source>%1 is released under %2</source> <source>%1 is released under %2</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -452,33 +452,33 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="170"/> <location filename="../src/mainwindow-dtk.cpp" line="186"/>
<source>Submit App</source> <source>Submit App</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="171"/> <location filename="../src/mainwindow-dtk.cpp" line="187"/>
<source>Submit App with client(Recommanded)</source> <source>Submit App with client(Recommanded)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="172"/> <location filename="../src/mainwindow-dtk.cpp" line="188"/>
<source>Settings</source> <source>Settings</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="173"/> <location filename="../src/mainwindow-dtk.cpp" line="189"/>
<source>APP Upgrade and Install Settings</source> <source>APP Upgrade and Install Settings</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="129"/> <location filename="../src/mainwindow-dtk.cpp" line="145"/>
<location filename="../src/mainwindow-dtk.cpp" line="224"/> <location filename="../src/mainwindow-dtk.cpp" line="240"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="134"/> <location filename="../src/mainwindow-dtk.cpp" line="150"/>
<source>Search or enter spk://</source> <source>Search or enter spk://</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -488,7 +488,7 @@
<message> <message>
<location filename="../src/application.cpp" line="33"/> <location filename="../src/application.cpp" line="33"/>
<location filename="../src/application.cpp" line="34"/> <location filename="../src/application.cpp" line="34"/>
<location filename="../src/mainwindow-dtk.cpp" line="109"/> <location filename="../src/mainwindow-dtk.cpp" line="125"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -498,17 +498,17 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/application.cpp" line="140"/> <location filename="../src/application.cpp" line="145"/>
<source>Spark Project</source> <source>Spark Project</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/downloadlistwidget.cpp" line="17"/> <location filename="../src/widgets/downloadlistwidget.cpp" line="18"/>
<source>Download list</source> <source>Download list</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="227"/> <location filename="../src/mainwindow-dtk.cpp" line="243"/>
<source>Show MainWindow</source> <source>Show MainWindow</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -619,12 +619,12 @@
<context> <context>
<name>TitleBarMenu</name> <name>TitleBarMenu</name>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="228"/> <location filename="../src/mainwindow-dtk.cpp" line="244"/>
<source>About</source> <source>About</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="229"/> <location filename="../src/mainwindow-dtk.cpp" line="245"/>
<source>Exit</source> <source>Exit</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>

@ -240,12 +240,12 @@
<context> <context>
<name>DAboutDialog</name> <name>DAboutDialog</name>
<message> <message>
<location filename="../src/application.cpp" line="133"/> <location filename="../src/application.cpp" line="138"/>
<source>Version: %1</source> <source>Version: %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/application.cpp" line="143"/> <location filename="../src/application.cpp" line="148"/>
<source>%1 is released under %2</source> <source>%1 is released under %2</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -452,33 +452,33 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="170"/> <location filename="../src/mainwindow-dtk.cpp" line="186"/>
<source>Submit App</source> <source>Submit App</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="171"/> <location filename="../src/mainwindow-dtk.cpp" line="187"/>
<source>Submit App with client(Recommanded)</source> <source>Submit App with client(Recommanded)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="172"/> <location filename="../src/mainwindow-dtk.cpp" line="188"/>
<source>Settings</source> <source>Settings</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="173"/> <location filename="../src/mainwindow-dtk.cpp" line="189"/>
<source>APP Upgrade and Install Settings</source> <source>APP Upgrade and Install Settings</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="129"/> <location filename="../src/mainwindow-dtk.cpp" line="145"/>
<location filename="../src/mainwindow-dtk.cpp" line="224"/> <location filename="../src/mainwindow-dtk.cpp" line="240"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="134"/> <location filename="../src/mainwindow-dtk.cpp" line="150"/>
<source>Search or enter spk://</source> <source>Search or enter spk://</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -488,7 +488,7 @@
<message> <message>
<location filename="../src/application.cpp" line="33"/> <location filename="../src/application.cpp" line="33"/>
<location filename="../src/application.cpp" line="34"/> <location filename="../src/application.cpp" line="34"/>
<location filename="../src/mainwindow-dtk.cpp" line="109"/> <location filename="../src/mainwindow-dtk.cpp" line="125"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -498,17 +498,17 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/application.cpp" line="140"/> <location filename="../src/application.cpp" line="145"/>
<source>Spark Project</source> <source>Spark Project</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/downloadlistwidget.cpp" line="17"/> <location filename="../src/widgets/downloadlistwidget.cpp" line="18"/>
<source>Download list</source> <source>Download list</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="227"/> <location filename="../src/mainwindow-dtk.cpp" line="243"/>
<source>Show MainWindow</source> <source>Show MainWindow</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -619,12 +619,12 @@
<context> <context>
<name>TitleBarMenu</name> <name>TitleBarMenu</name>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="228"/> <location filename="../src/mainwindow-dtk.cpp" line="244"/>
<source>About</source> <source>About</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="229"/> <location filename="../src/mainwindow-dtk.cpp" line="245"/>
<source>Exit</source> <source>Exit</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>

@ -240,12 +240,12 @@
<context> <context>
<name>DAboutDialog</name> <name>DAboutDialog</name>
<message> <message>
<location filename="../src/application.cpp" line="133"/> <location filename="../src/application.cpp" line="138"/>
<source>Version: %1</source> <source>Version: %1</source>
<translation>%1</translation> <translation>%1</translation>
</message> </message>
<message> <message>
<location filename="../src/application.cpp" line="143"/> <location filename="../src/application.cpp" line="148"/>
<source>%1 is released under %2</source> <source>%1 is released under %2</source>
<translation>%1%2</translation> <translation>%1%2</translation>
</message> </message>
@ -452,33 +452,33 @@
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="170"/> <location filename="../src/mainwindow-dtk.cpp" line="186"/>
<source>Submit App</source> <source>Submit App</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="171"/> <location filename="../src/mainwindow-dtk.cpp" line="187"/>
<source>Submit App with client(Recommanded)</source> <source>Submit App with client(Recommanded)</source>
<translation>使稿</translation> <translation>使稿</translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="172"/> <location filename="../src/mainwindow-dtk.cpp" line="188"/>
<source>Settings</source> <source>Settings</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="173"/> <location filename="../src/mainwindow-dtk.cpp" line="189"/>
<source>APP Upgrade and Install Settings</source> <source>APP Upgrade and Install Settings</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="129"/> <location filename="../src/mainwindow-dtk.cpp" line="145"/>
<location filename="../src/mainwindow-dtk.cpp" line="224"/> <location filename="../src/mainwindow-dtk.cpp" line="240"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="134"/> <location filename="../src/mainwindow-dtk.cpp" line="150"/>
<source>Search or enter spk://</source> <source>Search or enter spk://</source>
<translation></translation> <translation></translation>
</message> </message>
@ -488,7 +488,7 @@
<message> <message>
<location filename="../src/application.cpp" line="33"/> <location filename="../src/application.cpp" line="33"/>
<location filename="../src/application.cpp" line="34"/> <location filename="../src/application.cpp" line="34"/>
<location filename="../src/mainwindow-dtk.cpp" line="109"/> <location filename="../src/mainwindow-dtk.cpp" line="125"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation></translation> <translation></translation>
</message> </message>
@ -498,17 +498,17 @@
<translation>&lt;span style=&apos; font-size:10pt;font-weight:60;&apos;&gt;&lt;/span&gt;&lt;br/&gt;&lt;a href=&apos;https://www.spark-app.store/&apos;&gt;https://www.spark-app.store&lt;/a&gt;&lt;br/&gt;&lt;span style=&apos; font-size:12pt;&apos;&gt;星火计划开发者&lt;/span&gt;</translation> <translation>&lt;span style=&apos; font-size:10pt;font-weight:60;&apos;&gt;&lt;/span&gt;&lt;br/&gt;&lt;a href=&apos;https://www.spark-app.store/&apos;&gt;https://www.spark-app.store&lt;/a&gt;&lt;br/&gt;&lt;span style=&apos; font-size:12pt;&apos;&gt;星火计划开发者&lt;/span&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/application.cpp" line="140"/> <location filename="../src/application.cpp" line="145"/>
<source>Spark Project</source> <source>Spark Project</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/downloadlistwidget.cpp" line="17"/> <location filename="../src/widgets/downloadlistwidget.cpp" line="18"/>
<source>Download list</source> <source>Download list</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="227"/> <location filename="../src/mainwindow-dtk.cpp" line="243"/>
<source>Show MainWindow</source> <source>Show MainWindow</source>
<translation></translation> <translation></translation>
</message> </message>
@ -619,12 +619,12 @@
<context> <context>
<name>TitleBarMenu</name> <name>TitleBarMenu</name>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="228"/> <location filename="../src/mainwindow-dtk.cpp" line="244"/>
<source>About</source> <source>About</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="229"/> <location filename="../src/mainwindow-dtk.cpp" line="245"/>
<source>Exit</source> <source>Exit</source>
<translation>退</translation> <translation>退</translation>
</message> </message>

@ -240,12 +240,12 @@
<context> <context>
<name>DAboutDialog</name> <name>DAboutDialog</name>
<message> <message>
<location filename="../src/application.cpp" line="133"/> <location filename="../src/application.cpp" line="138"/>
<source>Version: %1</source> <source>Version: %1</source>
<translation>%1</translation> <translation>%1</translation>
</message> </message>
<message> <message>
<location filename="../src/application.cpp" line="143"/> <location filename="../src/application.cpp" line="148"/>
<source>%1 is released under %2</source> <source>%1 is released under %2</source>
<translation>%1%2</translation> <translation>%1%2</translation>
</message> </message>
@ -452,33 +452,33 @@
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="170"/> <location filename="../src/mainwindow-dtk.cpp" line="186"/>
<source>Submit App</source> <source>Submit App</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="171"/> <location filename="../src/mainwindow-dtk.cpp" line="187"/>
<source>Submit App with client(Recommanded)</source> <source>Submit App with client(Recommanded)</source>
<translation>()</translation> <translation>()</translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="172"/> <location filename="../src/mainwindow-dtk.cpp" line="188"/>
<source>Settings</source> <source>Settings</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="173"/> <location filename="../src/mainwindow-dtk.cpp" line="189"/>
<source>APP Upgrade and Install Settings</source> <source>APP Upgrade and Install Settings</source>
<translation> </translation> <translation> </translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="129"/> <location filename="../src/mainwindow-dtk.cpp" line="145"/>
<location filename="../src/mainwindow-dtk.cpp" line="224"/> <location filename="../src/mainwindow-dtk.cpp" line="240"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="134"/> <location filename="../src/mainwindow-dtk.cpp" line="150"/>
<source>Search or enter spk://</source> <source>Search or enter spk://</source>
<translation></translation> <translation></translation>
</message> </message>
@ -488,7 +488,7 @@
<message> <message>
<location filename="../src/application.cpp" line="33"/> <location filename="../src/application.cpp" line="33"/>
<location filename="../src/application.cpp" line="34"/> <location filename="../src/application.cpp" line="34"/>
<location filename="../src/mainwindow-dtk.cpp" line="109"/> <location filename="../src/mainwindow-dtk.cpp" line="125"/>
<source>Spark Store</source> <source>Spark Store</source>
<translation></translation> <translation></translation>
</message> </message>
@ -498,17 +498,17 @@
<translation>&lt;span style=&apos; font-size:10pt;font-weight:60;&apos;&gt;&lt;/span&gt;&lt;br/&gt;&lt;a href=&apos;https://www.spark-app.store/&apos;&gt;https://www.spark-app.store&lt;/a&gt;&lt;br/&gt;&lt;span style=&apos; font-size:12pt;&apos;&gt;星火计划开发者&lt;/span&gt;</translation> <translation>&lt;span style=&apos; font-size:10pt;font-weight:60;&apos;&gt;&lt;/span&gt;&lt;br/&gt;&lt;a href=&apos;https://www.spark-app.store/&apos;&gt;https://www.spark-app.store&lt;/a&gt;&lt;br/&gt;&lt;span style=&apos; font-size:12pt;&apos;&gt;星火计划开发者&lt;/span&gt;</translation>
</message> </message>
<message> <message>
<location filename="../src/application.cpp" line="140"/> <location filename="../src/application.cpp" line="145"/>
<source>Spark Project</source> <source>Spark Project</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/widgets/downloadlistwidget.cpp" line="17"/> <location filename="../src/widgets/downloadlistwidget.cpp" line="18"/>
<source>Download list</source> <source>Download list</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="227"/> <location filename="../src/mainwindow-dtk.cpp" line="243"/>
<source>Show MainWindow</source> <source>Show MainWindow</source>
<translation></translation> <translation></translation>
</message> </message>
@ -619,12 +619,12 @@
<context> <context>
<name>TitleBarMenu</name> <name>TitleBarMenu</name>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="228"/> <location filename="../src/mainwindow-dtk.cpp" line="244"/>
<source>About</source> <source>About</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../src/mainwindow-dtk.cpp" line="229"/> <location filename="../src/mainwindow-dtk.cpp" line="245"/>
<source>Exit</source> <source>Exit</source>
<translation>退</translation> <translation>退</translation>
</message> </message>