aboutsummaryrefslogtreecommitdiff
path: root/src/qt/bitcoingui.cpp
AgeCommit message (Collapse)Author
2019-09-09gui: fix autofocus in CreateWalletActivity::askPassphrase()Jon Atack
2019-09-09Merge #16826: Do additional character escaping for wallet names and address ↵fanquake
labels ad52f054f67374dc46e0096d1e2f593d6372a2df Escape ampersands (&) in wallet names in Open Wallet menu (Andrew Chow) 2c530ea2ada71ca23fa17bab5023b855515463ef HTML escape address labels in more dialogs and notifications (Andrew Chow) 1770a972d471d2bdb36195ec370b6fc238649f4d HTML escape the wallet name in more dialogs and notifications (Andrew Chow) Pull request description: Fixes some places where wallet names and address labels which contain valid html or other interpreted characters are displayed incorrectly. In the send coins dialog, if the wallet name or the address label contains valid html, then the html would be shown rather than the literal string for the wallet name or label. This PR fixes that so the true name or label is shown. The Open Wallet menu would incorrectly show wallet names with ampersands (`&`). For some reason, Qt removes the first ampersand in a string. So by replacing the first ampersand with 2 ampersands, the correct number of ampersands will be shown. Fixes the HTML escaping issues in #16820 ACKs for top commit: laanwj: Untested ACK, thanks for adding proper escaping, ad52f054f67374dc46e0096d1e2f593d6372a2df fanquake: ACK ad52f054f67374dc46e0096d1e2f593d6372a2df Tree-SHA512: 264bef28a8061c7f43cc30c3e04b361c614ea78b9915e8763c44553c8967131b066db500977fa6130de1f8874b9bba59e630486c58e1e3c5c165555105a6c254
2019-09-08Escape ampersands (&) in wallet names in Open Wallet menuAndrew Chow
2019-09-08Merge #16735: gui: Remove unused menu items for Windows and LinuxMarcoFalke
f091dc818085c3fa478374ea4378a0c1dd3d87f2 GUI: Remove unused menu items for Windows and Linux (GChuf) Pull request description: Removed "Main Window" and "Restore" menu option for Windows and linux Keep the options for macOS ACKs for top commit: MarcoFalke: unsigned ACK f091dc818085c3fa478374ea4378a0c1dd3d87f2 fanquake: ACK f091dc818085c3fa478374ea4378a0c1dd3d87f2 - tested on macOS, Windows and Linux. MarcoFalke: ACK f091dc818085c3fa478374ea4378a0c1dd3d87f2 kristapsk: ACK f091dc818085c3fa478374ea4378a0c1dd3d87f2 (tested on Linux with Xfce4) Tree-SHA512: a84a9a8bd3b09224f111cad4712076150524a24d6f09910147194c4149222443c453372db61eed8aa82c3450339b63fd216288196feb4ab637b6ea21b0109830
2019-09-05Add Create Wallet menu actionAndrew Chow
Co-authored-by: João Barbosa <joao.paulo.barbosa@gmail.com>
2019-09-06gui: Refactor OpenWalletActivityJoão Barbosa
2019-08-30GUI: Remove unused menu items for Windows and LinuxGChuf
2019-08-25qt: Replace obsolete functions of QDesktopWidgetHennadii Stepanov
2019-08-23qt: Add TextWidth() wrapperHennadii Stepanov
In Qt 5.12 and before the QFontMetrics::width() is used and it is deprecated since Qt 13.0. In Qt 5.11 the QFontMetrics::horizontalAdvance() was introduced.
2019-08-15qt: Remove menu iconsWladimir J. van der Laan
2019-07-23Merge #16366: init: Use InitError for all errors in bitcoind/qtMarcoFalke
fa6f402bde146f92ed131e0c9c8e15a55e723307 Call node->initError instead of InitError from GUI code (Russell Yanofsky) fad2502240a1c440ef03ac3f880475702e418275 init: Use InitError for all errors in bitcoind/qt (MarcoFalke) Pull request description: Using the same InitError for startup error in the daemon and the gui makes it possible to run the tests with the gui again: ```sh BITCOIND=bitcoin-qt ./test/functional/test_runner.py feature_includeconf feature_config_args ACKs for top commit: hebasto: ACK fa6f402bde146f92ed131e0c9c8e15a55e723307 ryanofsky: utACK fa6f402bde146f92ed131e0c9c8e15a55e723307. Only changes since last review are removing more includes and adding Node::initError method to avoid accessing node `InitError` function and global variables from GUI code. Tree-SHA512: bd19e08dcea4019dfe40356bc5c63cb583cefed54b6c9dcfb82f1b5b00308d8e2b363549afcaea5e93bf83864dbe0917400c3b70f43a8a5bdff45c9cd34cc294
2019-07-11init: Use InitError for all errors in bitcoind/qtMarcoFalke
Also, remove unused <boost/thread.hpp> include (and others)
2019-07-09Merge #16348: qt: Assert QMetaObject::invokeMethod resultWladimir J. van der Laan
64fee489448c62319e77941c30152084695b5a5d qt: Assert QMetaObject::invokeMethod result (João Barbosa) f27bd96b5fdc2921d93c44bbf422bff0e979c4de gui: Fix missing qRegisterMetaType(WalletModel*) (João Barbosa) Pull request description: Invalid/wrong dynamic calls aren't verified by the compiler. This PR asserts those dynamic calls. Once we bump Qt to at least 5.10 these can be refactored to use the `invokeMethod` overload that allows connecting to lambdas or member pointers, which are compile checked. For reference, one of the overloaded versions is https://doc.qt.io/qt-5/qmetaobject.html#invokeMethod-5. ACKs for top commit: laanwj: ACK 64fee489448c62319e77941c30152084695b5a5d Tree-SHA512: d332e5d7eb2c7be5d3fe90e2e4ff20a67800b9664f6637c122a23647a964f7915703d3f086e2de440f695cfe14de268ff581d0092b7736e911952a4f4d248e25
2019-07-08qt: Assert QMetaObject::invokeMethod resultJoão Barbosa
2019-07-08Merge #16291: gui: Stop translating PACKAGE_NAMEMarcoFalke
fa64b947bb3075ff8737656706b941af691908ab util: No translation of `Bitcoin Core` in the copyright (MarcoFalke) fab85208f678ba1be53bdb73a73ce3c5c937d448 qt: Run «make translate» in ./src/ (MarcoFalke) fabe87d2c923ab3a70b8cde2666a4d1cda8b22fb scripted-diff: Avoid passing PACKAGE_NAME for translation (MarcoFalke) fa5e9f157e568b7fbbea1482b393181f0733f2ba build: Stop translating PACKAGE_NAME (MarcoFalke) Pull request description: Generally the package name is not translated, but the package description is. E.g. `GIMP` or `Firefox` are always called that way regardless of the system language. However, "`Firefox` webbrowser" or "`GIMP` image manipulation program" are translated. ACKs for top commit: hebasto: ACK fa64b947bb3075ff8737656706b941af691908ab, I have not tested the code, but I have reviewed it and it looks OK, I agree it can be merged. Tree-SHA512: 626f811531182d0ba0ef1044930d32726773349bcb49b10261288a86ee6b80a183db30a87d817d5b0d501fad058ac22d6272311716b4f5a154f17c6f391a5a1a
2019-07-08refactor: Rename getWallets to getOpenWallets in WalletControllerJoão Barbosa
2019-07-08gui: Sort wallets in open wallet menuJoão Barbosa
2019-06-26scripted-diff: Avoid passing PACKAGE_NAME for translationMarcoFalke
-BEGIN VERIFY SCRIPT- sed -i --regexp-extended -e 's/\<\w+(::\w+)?\(PACKAGE_NAME\)/PACKAGE_NAME/g' $(git grep -l --extended-regexp '\<\w+(::\w+)?\(PACKAGE_NAME\)' src) -END VERIFY SCRIPT-
2019-06-25Merge #15894: Remove duplicated "Error: " prefix in logsWladimir J. van der Laan
f724f31401b963c75bd64f5e2c5b9d9561a9a9dd Make AbortNode() aware of MSG_NOPREFIX flag (Hennadii Stepanov) 96fd4ee02f6c3be21cade729b95a85c60634b0f8 Add MSG_NOPREFIX flag for user messages (Hennadii Stepanov) f0641f274ffe94fbe7cae43c07a9373013739df2 Prepend the error/warning prefix for GUI messages (Hennadii Stepanov) Pull request description: The "Error" prefix/title is set already in the next functions: - `noui_ThreadSafeMessageBox()`https://github.com/bitcoin/bitcoin/blob/2068f089c8b7b90eb4557d3f67ea0f0ed2059a23/src/noui.cpp#L17 - `ThreadSafeMessageBox()`https://github.com/bitcoin/bitcoin/blob/a720a983015c9ef8cc814c16a5b9ef6379695817/src/qt/bitcoingui.cpp#L1351 Currently on master: ![Screenshot from 2019-04-25 22-08-54](https://user-images.githubusercontent.com/32963518/56763092-25ee8280-67aa-11e9-86c8-6a029dd9ab08.png) With this PR: ![Screenshot from 2019-04-25 22-26-36](https://user-images.githubusercontent.com/32963518/56763107-30108100-67aa-11e9-9021-683cbd7e2aaa.png) ACKs for top commit: laanwj: concept and code-review ACK f724f31401b963c75bd64f5e2c5b9d9561a9a9dd Tree-SHA512: 218a179b81cc2ac64239d833c02b4c4d4da9b976728a2dcd645966726c4c660b6f1fe43aa28f33d1cb566785a4329e7f93bf5a502bf202316db79d2ff5fce0f8
2019-06-19Add MSG_NOPREFIX flag for user messagesHennadii Stepanov
It forces do not prepend error/warning prefix.
2019-06-19Prepend the error/warning prefix for GUI messagesHennadii Stepanov
2019-06-18gui: Fix open wallet menu initialization orderJoão Barbosa
The menu must be created before connecting to aboutToShow signal.
2019-06-13Merge #16118: gui: Enable open wallet menu on setWalletControllerfanquake
75485ef09 gui: Enable open wallet menu on setWalletController (João Barbosa) Pull request description: `BitcoinApplication::initializeResult` and `BitcoinGUI::setWalletController` are only called after the startup rescan is completed. While the rescan is in progress the window menus are already available. This PR makes the Open Wallet menu disabled until `BitcoinGUI::setWalletController` is called. ![Screenshot 2019-05-29 at 14 17 48](https://user-images.githubusercontent.com/3534524/58560510-35377480-821d-11e9-8f96-d0573c9e47b0.png) Fixes #16087 ACKs for commit 75485e: jonasschnelli: utACK 75485ef0962a53946f17b761c4445627b07e6eff ryanofsky: utACK 75485ef0962a53946f17b761c4445627b07e6eff. It's a simple, sensible fix. Tree-SHA512: 9395ceed54bbceb6cbf1cd443f783d07a6ebb8fc5515b63c6e1b8b19b216b08d1cba7eaf872814d7c426ab7192f3b416ba0d57fc84f3bcbfebf01ce153794201
2019-06-02gui: Set progressDialog to nullptrJoão Barbosa
2019-05-29gui: Enable open wallet menu on setWalletControllerJoão Barbosa
2019-05-08Show loaded wallets as disabled in open menu instead of nothingMeshCollider
2019-02-23gui: Fix async open wallet call orderJoão Barbosa
2019-02-12gui: Add close wallet actionJoão Barbosa
2019-02-04gui: Show indeterminate progress dialog while opening wallletJoão Barbosa
2019-02-04gui: Add OpenWalletActivityJoão Barbosa
2019-02-04gui: Add Open Wallet menuJoão Barbosa
2019-01-21Merge #15167: qt: Fix wallet selector size adjustmentWladimir J. van der Laan
ca91661adf9fa22bf1c919d118de27bfac04e94c Fix wallet selector size adjustment (Hennadii Stepanov) Pull request description: This PR sets `QComboBox::AdjustToContents` instead of default `QComboBox::AdjustToContentsOnFirstShow` for wallet selectors. Before (in master): ![screenshot from 2019-01-14 20-47-22](https://user-images.githubusercontent.com/32963518/51133771-83d00d80-183e-11e9-812c-3a1119fa766e.png) After (with this PR): ![screenshot from 2019-01-14 20-48-43](https://user-images.githubusercontent.com/32963518/51133788-90546600-183e-11e9-8394-eb62a998b90f.png) Tree-SHA512: c23ac91905bb31aaa32f2fccc02b01f5707d8b094020fe6a75a9e099e78f9191670474920234a01c46480f67d3d311f44ff46f1f4202cd50a4a6d4d09a8342ce
2019-01-19gui: Fix window title updateJoão Barbosa
2019-01-18Merge #15101: gui: Add WalletControllerJonas Schnelli
0dd9bdefa gui: Refactor to use WalletController (João Barbosa) 8fa271f08 gui: Add WalletController (João Barbosa) cefb399e2 gui: Use AutoConnection for WalletModel::unload signal (João Barbosa) Pull request description: This PR is a subset of the work done in the context of #13100. This change consists in extracting from the application class the code that manages the wallet models. The role of the `WalletController` instance is to coordinate wallet operations and the window. Tree-SHA512: 6a824054376730eb7d16c643dd2003f5f60778e8ad3af707b82bc12c48438db179ca4446316b28fb17b206f4b9aba8998419aab8c5dd1f7c32467015732b5094
2019-01-18gui: Refactor to use WalletControllerJoão Barbosa
2019-01-17Merge #15040: qt: Add workaround for QProgressDialog bug on macOSJonas Schnelli
7c572c488 Add workaround for QProgressDialog bug on macOS (Hennadii Stepanov) Pull request description: Fix #15016. Refs: - [QTBUG-65750: QProgressDialog too small width at larger font size on Mac](https://bugreports.qt.io/browse/QTBUG-65750) - [QTBUG-70357: QProgressDialog is too narrow to fit the text of its label](https://bugreports.qt.io/browse/QTBUG-70357) With this PR: ![screenshot from 2018-12-26 22-01-30](https://user-images.githubusercontent.com/32963518/50456571-1aa35b80-095e-11e9-8442-c285555f2bee.png) Tree-SHA512: dde668dfa7d2144973c0e868aea7fdb7d90f78584836d024ffefb8df4a709d6842fa3601954759b4462856a80e81df15b861ea39506599230a16928b621d9f8f
2019-01-15Merge #15149: gui: Show current wallet name in window titleJonas Schnelli
fe7048b39 gui: Show current wallet name in window title (João Barbosa) 8a7926112 gui: Keep network style in BitcoinGUI (João Barbosa) f411c8b35 gui: Remove unused return type in some BitcoinGUI methods (João Barbosa) Pull request description: <img width="876" alt="screenshot 2019-01-11 at 23 58 26" src="https://user-images.githubusercontent.com/3534524/51065458-d7ebaf80-15fc-11e9-9162-e37e9a10d448.png"> Tree-SHA512: 5c43f615834983bc1c5045e07c6e119044dd78ca947fd2679d302b519d5ce1d08d29ca00b1c11e88c4bbc4d56f2e6f4a8adc42084f3503e751e642e8a13112dc
2019-01-15Merge #14556: qt: fix confirmed transaction labeled "open" (#13299)Wladimir J. van der Laan
fb3ce75807c50055a97f573fc72bf44d997ea218 Don't label transactions "Open" while catching up (Hennadii Stepanov) Pull request description: Fix #13299. Since the default `nSequence` is `0xFFFFFFFE` and locktime is enabled, the checking `wtx.is_final` is meaningless until the syncing has completed (ref: #1026). This PR makes the wallet mark a transaction "Unconfirmed" instead of misleading "Open for NNN more blocks" when syncing after a period of being offline. Before this PR (with the issue): ![screenshot from 2018-12-12 15-56-23](https://user-images.githubusercontent.com/32963518/49874288-cdd06880-fe26-11e8-8441-f3ceb479611b.png) With this PR (the issue has been resolved): ![screenshot from 2018-12-12 15-54-41](https://user-images.githubusercontent.com/32963518/49874336-e9d40a00-fe26-11e8-8c05-9aeee2eb1bba.png) Tree-SHA512: 358ec83b43c266a4d32a37a79dda80e80d40a2b77ad38261c84a095e613399f674aa7184805b3f6310e51ddb83ae2636b8849fcc7c4333e1b3ecbb0f70ad86d3
2019-01-15gui: Show current wallet name in window titleJoão Barbosa
2019-01-15gui: Keep network style in BitcoinGUIJoão Barbosa
2019-01-15gui: Remove unused return type in some BitcoinGUI methodsJoão Barbosa
2019-01-15Merge #14594: qt: Fix minimized window bug on LinuxWladimir J. van der Laan
a88640e123ca0c00d81719f9a009699c26e85b90 Fix minimized window bug on Linux (Hennadii Stepanov) Pull request description: Fix #14591 On some Linux systems the minimized to the taskbar (iconified) main window cannot be restored properly using actions from the systray icon menu when `QSystemTrayIcon::contextMenu()` is a child of the main window. Tree-SHA512: 05c9f724fc2278d45dac6fe72b09859f12b5d71f54659bb779403c8cd81b55e610fb7b5aa912ac273d3cd19bf953b0405bbc6451feb00d1827c95dd9f0876aa4
2019-01-15Add workaround for QProgressDialog bug on macOSHennadii Stepanov
See: QTBUG-65750, QTBUG-70357.
2019-01-14Fix wallet selector size adjustmentHennadii Stepanov
2019-01-13Don't use zero as null pointer constant (-Wzero-as-null-pointer-constant)practicalswift
Qt-only changes.
2019-01-09Merge #11625: Add BitcoinApplication & RPCConsole testsMarcoFalke
7e4bd19785 Add BitcoinApplication & RPCConsole tests (Russell Yanofsky) ca20b65cc0 Move BitcoinApplication to header so it can be tested (Russell Yanofsky) Pull request description: Add test coverage for Qt initialization code & basic RPC console functionality Motivation for this change was a bug in #11603 which existing tests failed to catch. Tree-SHA512: f66546ffc84b8e07679c66a73b265023fbf6a0cb8f24f1606a5fcae2dd3b4dc7b2c6d26c69dedcec53398a26ef17c4d5fb28c055698fa6e45e89aa2995cefe2f
2019-01-04Fix minimized window bug on LinuxHennadii Stepanov
On some Linux systems the minimized to the taskbar (iconified) main window cannot be restored properly using actions from the systray icon menu when QSystemTrayIcon::contextMenu() is a child of the main window.
2019-01-04qt: Use WalletModel* instead of wallet name in main windowJoão Barbosa
2019-01-04qt: Factor out WalletModel::getDisplayName()João Barbosa
2019-01-04Add BitcoinApplication & RPCConsole testsRussell Yanofsky
Add test coverage for Qt initialization code & basic RPC console functionality.