Browse Source

Merge branch 'linux'

pull/45/head 0.7.0
Jane Mercer 5 years ago
parent
commit
ca00278639
  1. 4
      src/about.ui
  2. 44
      src/connection.cpp
  3. 8
      src/main.cpp
  4. 22
      src/mainwindow.cpp
  5. 5
      src/mainwindow.ui
  6. 8
      src/requestdialog.cpp
  7. 2
      src/requestdialog.ui
  8. 6
      src/rpc.cpp
  9. 6
      src/settings.cpp
  10. 2
      src/version.h
  11. 2
      src/websockets.cpp
  12. 2
      zec-qt-wallet.pro

4
src/about.ui

@ -17,7 +17,7 @@
<item>
<widget class="QGroupBox" name="groupBox">
<property name="title">
<string notr="true">ZecWallet</string>
<string notr="true">SevenSeas</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
@ -52,7 +52,7 @@
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'MS Shell Dlg 2'; font-size:8.1pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'Ubuntu'; font-size:11pt;&quot;&gt;Copyright (c) 2018 Aditya Kulkarni. (MIT License)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'Ubuntu'; font-size:11pt;&quot;&gt;Copyright (c) 2019 David Mercer and Aditya Kulkarni. (MIT License)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Ubuntu'; font-size:11pt;&quot;&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'Ubuntu'; font-size:11pt;&quot;&gt;Special thanks to:&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-family:'Ubuntu'; font-size:11pt;&quot;&gt;JSON for Modern C++ : &lt;/span&gt;&lt;a href=&quot;https://nlohmann.github.io/json/&quot;&gt;&lt;span style=&quot; font-size:8pt; text-decoration: underline; color:#0000ff;&quot;&gt;https://nlohmann.github.io/json/&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;

44
src/connection.cpp

@ -74,13 +74,13 @@ void ConnectionLoader::doAutoConnect(bool tryEzcashdStart) {
main->logger->write("Couldn't start embedded zcashd for unknown reason");
QString explanation;
if (config->zcashDaemon) {
explanation = QString() % QObject::tr("You have zcashd set to start as a daemon, which can cause problems "
"with ZecWallet\n\n."
"Please remove the following line from your zcash.conf and restart ZecWallet\n"
explanation = QString() % QObject::tr("You have komodod set to start as a daemon, which can cause problems "
"with SevenSeas\n\n."
"Please remove the following line from your PIRATE.conf and restart SevenSeas\n"
"daemon=1");
} else {
explanation = QString() % QObject::tr("Couldn't start the embedded zcashd.\n\n"
"Please try restarting.\n\nIf you previously started zcashd with custom arguments, you might need to reset zcash.conf.\n\n"
explanation = QString() % QObject::tr("Couldn't start the embedded komodod.\n\n"
"Please try restarting.\n\nIf you previously started komodod with custom arguments, you might need to reset PIRATE.conf.\n\n"
"If all else fails, please run zcashd manually.") %
(ezcashd ? QObject::tr("The process returned") + ":\n\n" % ezcashd->errorString() : QString(""));
}
@ -88,16 +88,16 @@ void ConnectionLoader::doAutoConnect(bool tryEzcashdStart) {
this->showError(explanation);
}
} else {
// zcash.conf exists, there's no connection, and the user asked us not to start zcashd. Error!
// PIRATE.conf exists, there's no connection, and the user asked us not to start zcashd. Error!
main->logger->write("Not using embedded and couldn't connect to zcashd");
QString explanation = QString() % QObject::tr("Couldn't connect to zcashd configured in zcash.conf.\n\n"
QString explanation = QString() % QObject::tr("Couldn't connect to zcashd configured in PIRATE.conf.\n\n"
"Not starting embedded zcashd because --no-embedded was passed");
this->showError(explanation);
}
});
} else {
if (Settings::getInstance()->useEmbedded()) {
// zcash.conf was not found, so create one
// PIRATE.conf was not found, so create one
createZcashConf();
} else {
// Fall back to manual connect
@ -124,7 +124,7 @@ QString randomPassword() {
}
/**
* This will create a new zcash.conf, download Zcash parameters.
* This will create a new PIRATE.conf, download Zcash parameters.
*/
void ConnectionLoader::createZcashConf() {
main->logger->write("createZcashConf");
@ -175,7 +175,7 @@ void ConnectionLoader::createZcashConf() {
QFile file(confLocation);
if (!file.open(QIODevice::ReadWrite | QIODevice::Truncate)) {
main->logger->write("Could not create zcash.conf, returning");
main->logger->write("Could not create PIRATE.conf, returning");
return;
}
@ -194,7 +194,7 @@ void ConnectionLoader::createZcashConf() {
file.close();
// Now that zcash.conf exists, try to autoconnect again
// Now that PIRATE.conf exists, try to autoconnect again
this->doAutoConnect();
}
@ -330,12 +330,12 @@ bool ConnectionLoader::startEmbeddedZcashd() {
#ifdef Q_OS_LINUX
auto zcashdProgram = appPath.absoluteFilePath("zqw-zcashd");
if (!QFile(zcashdProgram).exists()) {
zcashdProgram = appPath.absoluteFilePath("zcashd");
zcashdProgram = appPath.absoluteFilePath("komodod");
}
#elif defined(Q_OS_DARWIN)
auto zcashdProgram = appPath.absoluteFilePath("zcashd");
auto zcashdProgram = appPath.absoluteFilePath("komodod");
#else
auto zcashdProgram = appPath.absoluteFilePath("zcashd.exe");
auto zcashdProgram = appPath.absoluteFilePath("komodod.exe");
#endif
if (!QFile(zcashdProgram).exists()) {
@ -511,11 +511,11 @@ void ConnectionLoader::showError(QString explanation) {
QString ConnectionLoader::locateZcashConfFile() {
#ifdef Q_OS_LINUX
auto confLocation = QStandardPaths::locate(QStandardPaths::HomeLocation, ".zcash/zcash.conf");
auto confLocation = QStandardPaths::locate(QStandardPaths::HomeLocation, ".komodo/PIRATE/PIRATE.conf");
#elif defined(Q_OS_DARWIN)
auto confLocation = QStandardPaths::locate(QStandardPaths::HomeLocation, "Library/Application Support/Zcash/zcash.conf");
auto confLocation = QStandardPaths::locate(QStandardPaths::HomeLocation, "Library/Application Support/Komodo/PIRATE/PIRATE.conf");
#else
auto confLocation = QStandardPaths::locate(QStandardPaths::AppDataLocation, "../../Zcash/zcash.conf");
auto confLocation = QStandardPaths::locate(QStandardPaths::AppDataLocation, "../../Komodo/PIRATE/PIRATE.conf");
#endif
main->logger->write("Found zcashconf at " + QDir::cleanPath(confLocation));
@ -524,11 +524,11 @@ QString ConnectionLoader::locateZcashConfFile() {
QString ConnectionLoader::zcashConfWritableLocation() {
#ifdef Q_OS_LINUX
auto confLocation = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation)).filePath(".zcash/zcash.conf");
auto confLocation = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation)).filePath(".komodo/PIRATE/PIRATE.conf");
#elif defined(Q_OS_DARWIN)
auto confLocation = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation)).filePath("Library/Application Support/Zcash/zcash.conf");
auto confLocation = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation)).filePath("Library/Application Support/Zcash/PIRATE/PIRATE.conf");
#else
auto confLocation = QDir(QStandardPaths::writableLocation(QStandardPaths::AppDataLocation)).filePath("../../Zcash/zcash.conf");
auto confLocation = QDir(QStandardPaths::writableLocation(QStandardPaths::AppDataLocation)).filePath("../../Komodo/PIRATE/PIRATE.conf");
#endif
main->logger->write("Found zcashconf at " + QDir::cleanPath(confLocation));
@ -566,7 +566,7 @@ bool ConnectionLoader::verifyParams() {
}
/**
* Try to automatically detect a zcash.conf file in the correct location and load parameters
* Try to automatically detect a PIRATE/PIRATE.conf file in the correct location and load parameters
*/
std::shared_ptr<ConnectionConfig> ConnectionLoader::autoDetectZcashConf() {
auto confLocation = locateZcashConfFile();
@ -625,7 +625,7 @@ std::shared_ptr<ConnectionConfig> ConnectionLoader::autoDetectZcashConf() {
if (zcashconf->port.isEmpty()) zcashconf->port = "8232";
file.close();
// In addition to the zcash.conf file, also double check the params.
// In addition to the PIRATE/PIRATE.conf file, also double check the params.
return std::shared_ptr<ConnectionConfig>(zcashconf);
}

8
src/main.cpp

@ -160,7 +160,7 @@ public:
parser.addOption(noembeddedOption);
// Positional argument will specify a zcash payment URI
parser.addPositionalArgument("zcashURI", "An optional zcash URI to pay");
parser.addPositionalArgument("zcashURI", "An optional ARRR URI to pay");
parser.process(a);
@ -173,8 +173,8 @@ public:
return 0;
}
QCoreApplication::setOrganizationName("zec-qt-wallet-org");
QCoreApplication::setApplicationName("zec-qt-wallet");
QCoreApplication::setOrganizationName("pirate-black-org");
QCoreApplication::setApplicationName("seven-seas");
QString locale = QLocale::system().name();
locale.truncate(locale.lastIndexOf('_')); // Get the language code
@ -218,7 +218,7 @@ public:
}
w = new MainWindow();
w->setWindowTitle("ZecWallet v" + QString(APP_VERSION));
w->setWindowTitle("SevenSeas v" + QString(APP_VERSION));
// If there was a payment URI on the command line, pay it
if (parser.positionalArguments().length() > 0) {

22
src/mainwindow.cpp

@ -414,7 +414,7 @@ void MainWindow::setupStatusBar() {
url = "https://explorer.testnet.z.cash/tx/" + txid;
}
else {
url = "https://explorer.zcha.in/transactions/" + txid;
url = "https://explorer.pirate.black/tx/" + txid;
}
QDesktopServices::openUrl(QUrl(url));
});
@ -538,7 +538,7 @@ void MainWindow::setupSettingsModal() {
rpc->getConnection()->config->proxy = "proxy=127.0.0.1:9050";
QMessageBox::information(this, tr("Enable Tor"),
tr("Connection over Tor has been enabled. To use this feature, you need to restart ZecWallet."),
tr("Connection over Tor has been enabled. To use this feature, you need to restart SevenSeas."),
QMessageBox::Ok);
}
@ -548,7 +548,7 @@ void MainWindow::setupSettingsModal() {
rpc->getConnection()->config->proxy.clear();
QMessageBox::information(this, tr("Disable Tor"),
tr("Connection over Tor has been disabled. To fully disconnect from Tor, you need to restart ZecWallet."),
tr("Connection over Tor has been disabled. To fully disconnect from Tor, you need to restart SevenSeas."),
QMessageBox::Ok);
}
@ -577,9 +577,9 @@ void MainWindow::setupSettingsModal() {
}
if (showRestartInfo) {
auto desc = tr("ZecWallet needs to restart to rescan/reindex. ZecWallet will now close, please restart ZecWallet to continue");
auto desc = tr("SevenSeas needs to restart to rescan/reindex. SevenSeas will now close, please restart SevenSeas to continue");
QMessageBox::information(this, tr("Restart ZecWallet"), desc, QMessageBox::Ok);
QMessageBox::information(this, tr("Restart SevenSeas"), desc, QMessageBox::Ok);
QTimer::singleShot(1, [=]() { this->close(); });
}
}
@ -609,9 +609,9 @@ void MainWindow::donate() {
Settings::getInstance()->isSaplingAddress(ui->inputsCombo->currentText())));
ui->Address1->setCursorPosition(0);
ui->Amount1->setText("0.01");
ui->MemoTxt1->setText(tr("Thanks for supporting ZecWallet!"));
ui->MemoTxt1->setText(tr("Thanks for supporting SevenSeas!"));
ui->statusBar->showMessage(tr("Donate 0.01 ") % Settings::getTokenName() % tr(" to support ZecWallet"));
ui->statusBar->showMessage(tr("Donate 0.01 ") % Settings::getTokenName() % tr(" to support SevenSeas"));
// And switch to the send tab.
ui->tabWidget->setCurrentIndex(1);
@ -807,8 +807,8 @@ void MainWindow::payZcashURI(QString uri, QString myAddr) {
// If there was no URI passed, ask the user for one.
if (uri.isEmpty()) {
uri = QInputDialog::getText(this, tr("Paste Zcash URI"),
"Zcash URI" + QString(" ").repeated(180));
uri = QInputDialog::getText(this, tr("Paste Pirate URI"),
"Pirate URI" + QString(" ").repeated(180));
}
// If there's no URI, just exit
@ -1093,7 +1093,7 @@ void MainWindow::setupBalancesTab() {
if (Settings::getInstance()->isTestnet()) {
url = "https://explorer.testnet.z.cash/address/" + addr;
} else {
url = "https://explorer.zcha.in/accounts/" + addr;
url = "https://explorer.pirate.black/address/" + addr;
}
QDesktopServices::openUrl(QUrl(url));
});
@ -1159,7 +1159,7 @@ void MainWindow::setupTransactionsTab() {
if (Settings::getInstance()->isTestnet()) {
url = "https://explorer.testnet.z.cash/tx/" + txid;
} else {
url = "https://explorer.zcha.in/transactions/" + txid;
url = "https://explorer.pirate.black/tx/" + txid;
}
QDesktopServices::openUrl(QUrl(url));
});

5
src/mainwindow.ui

@ -1066,7 +1066,6 @@
</widget>
<addaction name="menuFile"/>
<addaction name="menu_Edit"/>
<addaction name="menuApps"/>
<addaction name="menuHelp"/>
</widget>
<widget class="QStatusBar" name="statusBar"/>
@ -1144,7 +1143,7 @@
</action>
<action name="actionPay_URI">
<property name="text">
<string>Pay zcash &amp;URI...</string>
<string>Pay Pirate &amp;URI...</string>
</property>
</action>
<action name="actionConnect_Mobile_App">
@ -1157,7 +1156,7 @@
</action>
<action name="actionRequest_zcash">
<property name="text">
<string>Request zcash...</string>
<string>Request Pirate...</string>
</property>
</action>
</widget>

8
src/requestdialog.cpp

@ -47,8 +47,8 @@ void RequestDialog::setupDialog(MainWindow* main, QDialog* d, Ui_RequestDialog*
void RequestDialog::showPaymentConfirmation(MainWindow* main, QString paymentURI) {
PaymentURI payInfo = Settings::parseURI(paymentURI);
if (!payInfo.error.isEmpty()) {
QMessageBox::critical(main, tr("Error paying zcash URI"),
tr("URI should be of the form 'zcash:<addr>?amt=x&memo=y") + "\n" + payInfo.error);
QMessageBox::critical(main, tr("Error paying Pirate URI"),
tr("URI should be of the form 'pirate:<addr>?amt=x&memo=y") + "\n" + payInfo.error);
return;
}
@ -124,11 +124,11 @@ void RequestDialog::showRequestZcash(MainWindow* main) {
if (d.exec() == QDialog::Accepted) {
// Construct a zcash Payment URI with the data and pay it immediately.
QString memoURI = "zcash:" + req.cmbMyAddress->currentText()
QString memoURI = "pirate:" + req.cmbMyAddress->currentText()
+ "?amt=" + Settings::getDecimalString(req.txtAmount->text().toDouble())
+ "&memo=" + QUrl::toPercentEncoding(req.txtMemo->toPlainText());
QString sendURI = "zcash:" + AddressBook::addressFromAddressLabel(req.txtFrom->text())
QString sendURI = "pirate:" + AddressBook::addressFromAddressLabel(req.txtFrom->text())
+ "?amt=0.0001"
+ "&memo=" + QUrl::toPercentEncoding(memoURI);

2
src/requestdialog.ui

@ -216,7 +216,7 @@
<item row="0" column="2" colspan="2">
<widget class="QLabel" name="lblHeader">
<property name="text">
<string>Request payment from a Sapling address. You'll send a ZEC 0.0001 transaction to the address with a zcash payment URI. The memo will be included in the transaction when the address pays you.</string>
<string>Request payment from a Sapling address. You'll send a ARRR 0.0001 transaction to the address with a Pirate payment URI. The memo will be included in the transaction when the address pays you.</string>
</property>
<property name="wordWrap">
<bool>true</bool>

6
src/rpc.cpp

@ -971,7 +971,7 @@ void RPC::checkForUpdate(bool silent) {
if (conn == nullptr)
return noConnection();
QUrl cmcURL("https://api.github.com/repos/ZcashFoundation/zecwallet/releases");
QUrl cmcURL("https://api.github.com/repos/radix42/SevenSeas/releases");
QNetworkRequest req;
req.setUrl(cmcURL);
@ -1017,7 +1017,7 @@ void RPC::checkForUpdate(bool silent) {
.arg(currentVersion.toString()),
QMessageBox::Yes, QMessageBox::Cancel);
if (ans == QMessageBox::Yes) {
QDesktopServices::openUrl(QUrl("https://github.com/ZcashFoundation/zecwallet/releases"));
QDesktopServices::openUrl(QUrl("https://github.com/radix42/SevenSeas/releases"));
} else {
// If the user selects cancel, don't bother them again for this version
s.setValue("update/lastversion", maxVersion.toString());
@ -1112,7 +1112,7 @@ void RPC::shutdownZcashd() {
Ui_ConnectionDialog connD;
connD.setupUi(&d);
connD.topIcon->setBasePixmap(QIcon(":/icons/res/icon.ico").pixmap(256, 256));
connD.status->setText(QObject::tr("Please wait for ZecWallet to exit"));
connD.status->setText(QObject::tr("Please wait for SevenSeas to exit"));
connD.statusDetail->setText(QObject::tr("Waiting for zcashd to exit"));
QTimer waiter(main);

6
src/settings.cpp

@ -195,7 +195,7 @@ QString Settings::getTokenName() {
if (Settings::getInstance()->isTestnet()) {
return "TAZ";
} else {
return "ZEC";
return "ARRR";
}
}
@ -207,7 +207,7 @@ QString Settings::getDonationAddr(bool sapling) {
return "ztn6fYKBii4Fp4vbGhkPgrtLU4XjXp4ZBMZgShtopmDGbn1L2JLTYbBp2b7SSkNr9F3rQeNZ9idmoR7s4JCVUZ7iiM5byhF";
else
if (sapling)
return "zs1gv64eu0v2wx7raxqxlmj354y9ycznwaau9kduljzczxztvs4qcl00kn2sjxtejvrxnkucw5xx9u";
return "zs1knmre6w5dyy2mjdxw2g8v93adr3fh9jtwqx76863557sjunlqq563cftxaz05saskyyn72xm2hv";
else
return "zcEgrceTwvoiFdEvPWcsJHAMrpLsprMF6aRJiQa3fan5ZphyXLPuHghnEPrEPRoEVzUy65GnMVyCTRdkT6BYBepnXh6NBYs";
}
@ -297,7 +297,7 @@ PaymentURI Settings::parseURI(QString uri) {
PaymentURI ans;
if (!uri.startsWith("zcash:")) {
ans.error = "Not a zcash payment URI";
ans.error = "Not a Pirate payment URI";
return ans;
}

2
src/version.h

@ -1 +1 @@
#define APP_VERSION "0.6.7"
#define APP_VERSION "0.7.0"

2
src/websockets.cpp

@ -356,7 +356,7 @@ QString AppDataServer::connDesc(AppConnectionType t) {
return QObject::tr("Connected directly");
}
else {
return QObject::tr("Connected over the internet via ZecWallet wormhole service");
return QObject::tr("Connected over the internet via SevenSeas wormhole service");
}
}

2
zec-qt-wallet.pro

@ -13,7 +13,7 @@ PRECOMPILED_HEADER = src/precompiled.h
QT += widgets
QT += websockets
TARGET = zecwallet
TARGET = sevenseas
TEMPLATE = app

Loading…
Cancel
Save