mirror of
https://git.wownero.com/wowlet/wowlet.git
synced 2024-08-15 01:03:14 +00:00
Merge pull request 'hide on close' (#90) from hide-on-close into master
Reviewed-on: https://git.wownero.com/wowlet/wowlet/pulls/90
This commit is contained in:
commit
8b215c1e73
7 changed files with 46 additions and 3 deletions
|
@ -184,6 +184,11 @@ AppContext::AppContext(QCommandLineParser *cmdargs) {
|
|||
|
||||
// libwallet connects
|
||||
connect(this->walletManager, &WalletManager::walletOpened, this, &AppContext::onWalletOpened);
|
||||
|
||||
// hideOnClose
|
||||
auto hideOnClose = config()->get(Config::hideOnClose).toBool();
|
||||
if(hideOnClose)
|
||||
QApplication::setQuitOnLastWindowClosed(false);
|
||||
}
|
||||
|
||||
void AppContext::initTor() {
|
||||
|
|
|
@ -108,11 +108,14 @@ MainWindow::MainWindow(AppContext *ctx, QWidget *parent) :
|
|||
m_trayIcon = new QSystemTrayIcon(QIcon(":/assets/images/appicons/64x64.png"));
|
||||
m_trayIcon->show();
|
||||
|
||||
m_trayActionHome = new QAction("Show", this);
|
||||
m_trayActionHome->setStatusTip("Show");
|
||||
|
||||
m_trayActionCalc = new QAction("Calc", this);
|
||||
m_trayActionCalc->setStatusTip("Calculator");
|
||||
|
||||
m_trayActionSend = new QAction("Send", this);
|
||||
m_trayActionSend->setStatusTip("Send WOW payment");
|
||||
m_trayActionSend->setStatusTip("Send a WOW payment");
|
||||
|
||||
m_trayActionHistory = new QAction("History", this);
|
||||
m_trayActionHistory->setStatusTip("View incoming transfers");
|
||||
|
@ -120,6 +123,7 @@ MainWindow::MainWindow(AppContext *ctx, QWidget *parent) :
|
|||
m_trayActionExit = new QAction("Quit", this);
|
||||
m_trayActionExit->setStatusTip("Exit application");
|
||||
|
||||
m_trayMenu.addAction(m_trayActionHome);
|
||||
m_trayMenu.addAction(m_trayActionSend);
|
||||
m_trayMenu.addAction(m_trayActionHistory);
|
||||
m_trayMenu.addAction(m_trayActionCalc);
|
||||
|
@ -127,6 +131,7 @@ MainWindow::MainWindow(AppContext *ctx, QWidget *parent) :
|
|||
m_trayIcon->setContextMenu(&m_trayMenu);
|
||||
|
||||
// @TODO: only init tray *after* boot
|
||||
connect(m_trayActionHome, &QAction::triggered, this, &MainWindow::showHomeWindow);
|
||||
connect(m_trayActionCalc, &QAction::triggered, this, &MainWindow::showCalcWindow);
|
||||
connect(m_trayActionSend, &QAction::triggered, this, &MainWindow::showSendTab);
|
||||
connect(m_trayActionHistory, &QAction::triggered, this, &MainWindow::showHistoryTab);
|
||||
|
@ -968,7 +973,6 @@ void MainWindow::menuNewRestoreClicked() {
|
|||
|
||||
void MainWindow::menuQuitClicked() {
|
||||
cleanupBeforeClose();
|
||||
|
||||
QCoreApplication::quit();
|
||||
}
|
||||
|
||||
|
@ -1038,9 +1042,16 @@ void MainWindow::skinChanged(const QString &skinName) {
|
|||
}
|
||||
|
||||
void MainWindow::closeEvent(QCloseEvent *event) {
|
||||
cleanupBeforeClose();
|
||||
auto hideOnClose = config()->get(Config::hideOnClose).toBool();
|
||||
if(hideOnClose && !this->isHidden()) {
|
||||
this->hide();
|
||||
event->ignore();
|
||||
return;
|
||||
}
|
||||
|
||||
cleanupBeforeClose();
|
||||
QWidget::closeEvent(event);
|
||||
QApplication::exit();
|
||||
}
|
||||
|
||||
void MainWindow::donateButtonClicked() {
|
||||
|
@ -1054,15 +1065,25 @@ void MainWindow::donateButtonClicked() {
|
|||
|
||||
void MainWindow::showHistoryTab() {
|
||||
this->raise();
|
||||
this->show();
|
||||
ui->tabWidget->setCurrentIndex(Tabs::HISTORY);
|
||||
}
|
||||
|
||||
void MainWindow::showSendTab() {
|
||||
this->raise();
|
||||
this->show();
|
||||
ui->tabWidget->setCurrentIndex(Tabs::SEND);
|
||||
}
|
||||
|
||||
void MainWindow::showHomeWindow() {
|
||||
this->raise();
|
||||
this->show();
|
||||
ui->tabWidget->setCurrentIndex(Tabs::HOME);
|
||||
}
|
||||
|
||||
void MainWindow::showCalcWindow() {
|
||||
this->raise();
|
||||
this->show();
|
||||
m_windowCalc->show();
|
||||
}
|
||||
|
||||
|
|
|
@ -109,6 +109,7 @@ public slots:
|
|||
void showViewOnlyDialog();
|
||||
void donateButtonClicked();
|
||||
void showCalcWindow();
|
||||
void showHomeWindow();
|
||||
void payToMany();
|
||||
void showWalletCacheDebugDialog();
|
||||
void showSendTab();
|
||||
|
@ -200,6 +201,7 @@ private:
|
|||
|
||||
QSystemTrayIcon *m_trayIcon;
|
||||
QMenu m_trayMenu;
|
||||
QAction *m_trayActionHome;
|
||||
QAction *m_trayActionCalc;
|
||||
QAction *m_trayActionExit;
|
||||
QAction *m_trayActionSend;
|
||||
|
|
|
@ -30,6 +30,11 @@ Settings::Settings(QWidget *parent) :
|
|||
m_ctx->updateBalance();
|
||||
});
|
||||
|
||||
connect(ui->checkBox_hideOnClose, &QCheckBox::toggled, [this](bool toggled){
|
||||
config()->set(Config::hideOnClose, toggled);
|
||||
QApplication::setQuitOnLastWindowClosed(toggled);
|
||||
});
|
||||
|
||||
connect(ui->closeButton, &QDialogButtonBox::accepted, this, &Settings::close);
|
||||
|
||||
// nodes
|
||||
|
@ -40,6 +45,7 @@ Settings::Settings(QWidget *parent) :
|
|||
// setup checkboxes
|
||||
ui->checkBox_externalLink->setChecked(config()->get(Config::warnOnExternalLink).toBool());
|
||||
ui->checkBox_hideBalance->setChecked(config()->get(Config::hideBalance).toBool());
|
||||
ui->checkBox_hideOnClose->setChecked(config()->get(Config::hideOnClose).toBool());
|
||||
|
||||
// setup comboboxes
|
||||
this->setupSkinCombobox();
|
||||
|
|
|
@ -198,6 +198,13 @@
|
|||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="7" column="0">
|
||||
<widget class="QCheckBox" name="checkBox_hideOnClose">
|
||||
<property name="text">
|
||||
<string>Hide application on close</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="tab_node">
|
||||
|
|
|
@ -46,6 +46,7 @@ static const QHash<Config::ConfigKey, ConfigDirective> configStrings = {
|
|||
{Config::windowState, {QS("windowState"), {}}},
|
||||
{Config::firstRun,{QS("firstRun"), false}},
|
||||
{Config::hideBalance, {QS("hideBalance"), false}},
|
||||
{Config::hideOnClose, {QS("hideOnClose"), false}},
|
||||
{Config::hideFiatBalance, {QS("hideFiatBalance"), false}},
|
||||
{Config::redditFrontend, {QS("redditFrontend"), "old.reddit.com"}},
|
||||
{Config::showHistorySyncNotice, {QS("showHistorySyncNotice"), true}},
|
||||
|
|
|
@ -49,6 +49,7 @@ public:
|
|||
firstRun,
|
||||
hideBalance,
|
||||
hideFiatBalance,
|
||||
hideOnClose,
|
||||
redditFrontend,
|
||||
showHistorySyncNotice,
|
||||
ignoreUpdateWarning,
|
||||
|
|
Loading…
Reference in a new issue