summaryrefslogtreecommitdiffstats
path: root/Swift
diff options
context:
space:
mode:
Diffstat (limited to 'Swift')
-rw-r--r--Swift/QtUI/QtAboutWidget.cpp10
-rw-r--r--Swift/QtUI/Swift.qrc1
2 files changed, 10 insertions, 1 deletions
diff --git a/Swift/QtUI/QtAboutWidget.cpp b/Swift/QtUI/QtAboutWidget.cpp
index a2aa65c..2db0c9d 100644
--- a/Swift/QtUI/QtAboutWidget.cpp
+++ b/Swift/QtUI/QtAboutWidget.cpp
@@ -1,80 +1,88 @@
/*
* Copyright (c) 2010-2017 Isode Limited.
* All rights reserved.
* See the COPYING file for more information.
*/
#include <Swift/QtUI/QtAboutWidget.h>
#include <QCoreApplication>
+#include <QDesktopServices>
#include <QFile>
#include <QIcon>
#include <QLabel>
#include <QProgressBar>
#include <QPushButton>
#include <QTextEdit>
#include <QTextStream>
#include <QVBoxLayout>
#include <QtGlobal>
#include <Swiften/Base/Log.h>
#include <Swiften/Base/Platform.h>
#include <SwifTools/AutoUpdater/AutoUpdater.h>
#include <Swift/QtUI/QtSwiftUtil.h>
#include <Swift/QtUI/QtUISettingConstants.h>
#include <Swift/QtUI/QtUpdateFeedSelectionDialog.h>
#include <Swift/QtUI/SwiftUpdateFeeds.h>
namespace Swift {
QtAboutWidget::QtAboutWidget(SettingsProvider* settingsProvider, AutoUpdater* autoUpdater) : QDialog(), settingsProvider_(settingsProvider), autoUpdater_(autoUpdater) {
#ifndef Q_OS_MAC
setWindowTitle(QString(tr("About %1")).arg("Swift"));
#endif
setWindowIcon(QIcon(":/logo-icon-16.png"));
resize(180, 240);
QVBoxLayout *mainLayout = new QVBoxLayout(this);
mainLayout->setAlignment(Qt::AlignHCenter);
setLayout(mainLayout);
QLabel* iconLabel = new QLabel(this);
- iconLabel->setPixmap(QIcon(":/logo-shaded-text.256.png").pixmap(90, 90));
+ iconLabel->setPixmap(QIcon(":/logo-icon.svg").pixmap(90, 90));
iconLabel->setAlignment(Qt::AlignHCenter);
mainLayout->addWidget(iconLabel);
QLabel* appNameLabel = new QLabel("<center><font size='+1'><b>" + QCoreApplication::applicationName() + "</b></font></center>", this);
mainLayout->addWidget(appNameLabel);
+ auto websiteLabel = new QLabel("<center><font size='-1'><a href='https://swift.im/'>https://swift.im/</a></font></center>", this);
+ websiteLabel->setTextInteractionFlags(Qt::LinksAccessibleByMouse | Qt::LinksAccessibleByKeyboard);
+ connect(websiteLabel, &QLabel::linkActivated, [](){
+ QDesktopServices::openUrl(QUrl("https://swift.im/"));
+ });
+ mainLayout->addWidget(websiteLabel);
+
QLabel* versionLabel = new QLabel((QString("<center><font size='-1'>") + tr("Version %1") + "</font></center><center><font size='-1'><br/>" + QString(tr("Built with Qt %2")) + QString("<br/>") + QString(tr("Running with Qt %3")) + "</font></center>").arg(QCoreApplication::applicationVersion()).arg(QT_VERSION_STR).arg(qVersion()));
versionLabel->setTextInteractionFlags(Qt::TextSelectableByMouse | Qt::TextSelectableByKeyboard);
mainLayout->addWidget(versionLabel);
if (autoUpdater_) {
settingsChangedConnection_ = settingsProvider_->onSettingChanged.connect([&](const std::string& path) {
if (path == QtUISettingConstants::SOFTWARE_UPDATE_CHANNEL.getKey() || path == QtUISettingConstants::ENABLE_SOFTWARE_UPDATES.getKey()) {
updateUpdateInfo();
}
});
autoUpdaterChangeConnection_ = autoUpdater_->onUpdateStateChanged.connect([&](AutoUpdater::State /*updatedState*/) {
updateUpdateInfo();
});
}
updateChannelInfoLabel_ = new QLabel("", this);
updateChannelInfoLabel_->setTextInteractionFlags(Qt::LinksAccessibleByKeyboard | Qt::LinksAccessibleByMouse);
connect(updateChannelInfoLabel_, SIGNAL(linkActivated(const QString &)), this, SLOT(handleChangeUpdateChannelClicked()));
mainLayout->addWidget(updateChannelInfoLabel_);
updateStateInfoLabel_ = new QLabel("", this);
mainLayout->addWidget(updateStateInfoLabel_);
updateProgressBar_ = new QProgressBar(this);
updateProgressBar_->setMinimum(0);
updateProgressBar_->setMaximum(0);
mainLayout->addWidget(updateProgressBar_);
updateUpdateInfo();
diff --git a/Swift/QtUI/Swift.qrc b/Swift/QtUI/Swift.qrc
index cfb0fec..b04503c 100644
--- a/Swift/QtUI/Swift.qrc
+++ b/Swift/QtUI/Swift.qrc
@@ -1,37 +1,38 @@
<!DOCTYPE RCC>
<RCC version="1.0">
<qresource>
<file alias="logo-icon-16.png">../resources/logo/logo-icon-16.png</file>
<file alias="logo-icon-16-win.png">../resources/logo/logo-icon-16-win.png</file>
<file alias="logo-chat-16.png">../resources/logo/logo-chat-16.png</file>
<file alias="logo-shaded-text.png">../resources/logo/logo-shaded-text.png</file>
+ <file alias="logo-icon.svg">../resources/logo/logo-icon.svg</file>
<file alias="icons/online.png">../resources/icons/online.png</file>
<file alias="icons/connecting.mng">../resources/icons/connecting.mng</file>
<file alias="icons/away.png">../resources/icons/away.png</file>
<file alias="icons/dnd.png">../resources/icons/dnd.png</file>
<file alias="icons/offline.png">../resources/icons/offline.png</file>
<file alias="icons/certificate.png">../resources/icons/certificate.png</file>
<file alias="icons/lock.png">../resources/icons/lock.png</file>
<file alias="icons/error.png">../resources/icons/error.png</file>
<file alias="icons/warn.png">../resources/icons/warn.png</file>
<file alias="icons/check.png">../resources/icons/check.png</file>
<file alias="icons/throbber.gif">../resources/icons/throbber.gif</file>
<file alias="icons/avatar.svg">../resources/icons/avatar.svg</file>
<file alias="icons/no-avatar.png">../resources/icons/no-avatar.png</file>
<file alias="icons/tray-standard.png">../resources/icons/tray-standard.png</file>
<file alias="icons/new-chat.png">../resources/icons/new-chat.png</file>
<file alias="icons/actions.png">../resources/icons/actions.png</file>
<file alias="COPYING">COPYING</file>
<file alias="ChangeLog.md">../ChangeLog.md</file>
<file alias="icons/line.png">../resources/icons/line.png</file>
<file alias="icons/rect.png">../resources/icons/rect.png</file>
<file alias="icons/circle.png">../resources/icons/circle.png</file>
<file alias="icons/handline.png">../resources/icons/handline.png</file>
<file alias="icons/text.png">../resources/icons/text.png</file>
<file alias="icons/polygon.png">../resources/icons/polygon.png</file>
<file alias="icons/cursor.png">../resources/icons/cursor.png</file>
<file alias="icons/eraser.png">../resources/icons/eraser.png</file>
<file alias="emoticons/emoticons.txt">../resources/emoticons/emoticons.txt</file>
<file alias="emoticons/evilgrin.png">../resources/emoticons/evilgrin.png</file>
<file alias="emoticons/grin.png">../resources/emoticons/grin.png</file>
<file alias="emoticons/happy.png">../resources/emoticons/happy.png</file>