aboutsummaryrefslogtreecommitdiff
path: root/src/qt
AgeCommit message (Collapse)Author
2021-04-18refactor: Drop CCoinControl::SetNullJoão Barbosa
2021-04-18Change GetBlocksDir() to ArgsManager.GetBlocksDirPath().Kiminuo
2021-04-17Merge bitcoin-core/gui#277: Do not use QClipboard::Selection on Windows and ↵MarcoFalke
macOS. 7f3a5980c1d54988a707b961fd2ef647cebb4c5b qt: Do not use QClipboard::Selection on Windows and macOS. (Hennadii Stepanov) Pull request description: Windows and macOS do [not support](https://doc.qt.io/qt-5/qclipboard.html#notes-for-windows-and-macos-users) the global mouse selection. Fixes #258. ACKs for top commit: promag: Code review ACK 7f3a5980c1d54988a707b961fd2ef647cebb4c5b. jarolrod: ACK 7f3a5980c1d54988a707b961fd2ef647cebb4c5b Tree-SHA512: be2beeef7d25af6f4d4a4548325d8d29f08e4342f499666bc4a670ed468a63195d514077c2cd0dba197e12bd43316fd3e2813cdc0954364b6aa4ae6b90c118bf
2021-04-14qt, refactor: Use better QMenu::addAction overloaded functionHennadii Stepanov
This overloaded function was introduced in Qt 5.6 and makes code more concise.
2021-04-14qt: Do not assign Alt+<KEY> shortcuts to context menu actionsHennadii Stepanov
Such shortcuts are useless as pressing the Alt key closes a context menu widget immediately.
2021-04-14qt: Drop menu separator that separates nothingHennadii Stepanov
2021-04-14qt, refactor: Make AddressBookPage::deleteAction a local variableHennadii Stepanov
2021-04-14Merge #260: Handle exceptions instead of crashW. J. van der Laan
b8e5d0d3fe3386807d47f50d13ac34fcd2a538fd qt: Handle exceptions in SendCoinsDialog::sendButtonClicked slot (Hennadii Stepanov) 1ac2bc7ac070dfd1df1872d759540b0c92495301 qt: Handle exceptions in TransactionView::bumpFee slot (Hennadii Stepanov) bc00e13bc800863641b3e1e64732a38418d3022f qt: Handle exceptions in WalletModel::pollBalanceChanged slot (Hennadii Stepanov) eb6156ba1b4c303eb597e3fc4a9e42ce45e6e78d qt: Handle exceptions in BitcoinGUI::addWallet slot (Hennadii Stepanov) f7e260a471010e2d656fbc5ea8c310f6d94c26b9 qt: Add GUIUtil::ExceptionSafeConnect function (Hennadii Stepanov) 64a8755af396f1c2791018510e22b58114e68594 qt: Add BitcoinApplication::handleNonFatalException function (Hennadii Stepanov) af7e365b1516d660d271475fdfe0c20ae09e66a8 qt: Make PACKAGE_BUGREPORT link clickable (Hennadii Stepanov) Pull request description: This PR is an alternative to https://github.com/bitcoin/bitcoin/pull/18897, and is based on Russ' [idea](https://github.com/bitcoin/bitcoin/pull/18897#pullrequestreview-418703664): > IMO it would be nice to have a followup PR that eliminated the one-line forwarding methods ... Related issues - #91 - https://github.com/bitcoin/bitcoin/issues/18643 Qt docs: https://doc.qt.io/qt-5.12/exceptionsafety.html#exceptions-in-client-code With this PR the GUI handles the wallet-related exception, and: - display it to a user: ![Screenshot from 2021-04-01 02-55-59](https://user-images.githubusercontent.com/32963518/113226183-33ff8480-9298-11eb-8fe6-2168834ab09a.png) - prints a message to `stderr`: ``` ************************ EXCEPTION: 18NonFatalCheckError wallet/wallet.cpp:2677 (IsCurrentForAntiFeeSniping) Internal bug detected: '!chain.findBlock(block_hash, FoundBlock().time(block_time))' You may report this issue here: https://github.com/bitcoin/bitcoin/issues bitcoin in QPushButton->SendCoinsDialog ``` - writes a message to the `debug.log` - and, if the exception is a non-fatal error, leaves the main window running. ACKs for top commit: laanwj: Code review ACK b8e5d0d3fe3386807d47f50d13ac34fcd2a538fd ryanofsky: Code review ACK b8e5d0d3fe3386807d47f50d13ac34fcd2a538fd. This is great! I think more improvements are possible but implementation is very clean and I love how targeted each commit is. Changes since last review: adding more explanatory text, making links clickable, reorganizing. Tree-SHA512: a9f2a2ee8e64b993b0dbc454edcbc39c68c8852abb5dc1feb58f601c0e0e8014dca81c72733aa3fb07b619c6f49b823ed20c7d79cc92088a3abe040ed2149727
2021-04-10qt: Do not use QClipboard::Selection on Windows and macOS.Hennadii Stepanov
Windows and macOS do not support the global mouse selection.
2021-04-10qt: Elide long strings in their middle in the Peers tabHennadii Stepanov
2021-04-06Merge #21557: test: small cleanup in RPCNestedTests testsMarcoFalke
6526a1644cd1723e47054aa83b3ae8eacf84bf84 test: small cleanup in RPCNestedTests tests (fanquake) Pull request description: Remove QtDir & QtGlobal (dea086f498097d19a2c9acbfc753c9c2d68dbb03) Add missing includes. Remove obsolete comment about Qt 5.3 (fd46c4c0018c41d36cd892ccb47485b572d65837) Top commit has no ACKs. Tree-SHA512: 097e603fc31a19be1817459ad4c5a9692708f8a39a0ae87e4a60eabc22bf4f6141b577ba68746044fd594f92e36848b7cd56d60dccd262f83f8ec7310ab7d1bc
2021-04-05qt: Handle exceptions in SendCoinsDialog::sendButtonClicked slotHennadii Stepanov
Also, uic automatic connection replaced with an explicit one.
2021-04-05qt: Handle exceptions in TransactionView::bumpFee slotHennadii Stepanov
Also the parameter list of the TransactionView::bumpFee slot is made compatible with one of the QAction::triggered signal.
2021-04-05qt: Handle exceptions in WalletModel::pollBalanceChanged slotHennadii Stepanov
Actually, the private QTimer::timeout signal has one QTimer::QPrivateSignal parameter.
2021-04-01rpc: Fail to return undocumented return valuesMarcoFalke
2021-04-01qt: Handle exceptions in BitcoinGUI::addWallet slotHennadii Stepanov
2021-04-01qt: Add GUIUtil::ExceptionSafeConnect functionHennadii Stepanov
Throwing an exception from a slot invoked by Qt's signal-slot connection mechanism is considered undefined behavior, unless it is handled within the slot. The GUIUtil::ExceptionSafeConnect function should be used for exception handling within slots.
2021-04-01qt: Add BitcoinApplication::handleNonFatalException functionHennadii Stepanov
This helper function will be used in the following commits. Co-authored-by: Russell Yanofsky <russ@yanofsky.org>
2021-04-01qt: Make PACKAGE_BUGREPORT link clickableHennadii Stepanov
Co-authored-by: Russell Yanofsky <russ@yanofsky.org>
2021-03-31test: small cleanup in RPCNestedTests testsfanquake
Add missing includes. Remove obsolete comment about Qt 5.3 (fd46c4c0018c41d36cd892ccb47485b572d65837)
2021-03-29Merge #21531: test: remove qt byteswap compattestsMarcoFalke
9ac86bcc0d72cdcecdbf8884a557095bbc3cdc11 test: remove qt byteswap compattests (fanquake) Pull request description: These were added as part of #9366 when with fixing issues with Protobuf. Now that we no-longer use Protobuf, there's no reason to maintain a duplicate set of byteswap tests in the qt tests. Our other set of byteswap tests are here: https://github.com/bitcoin/bitcoin/blob/master/src/test/bswap_tests.cpp. ACKs for top commit: laanwj: Code review ACK 9ac86bcc0d72cdcecdbf8884a557095bbc3cdc11 Tree-SHA512: 72ba131a5f8fbd9fdbbc4e1f95baa794496c960b12e0271700c632c6511b7e1b331e8db07a201838b4d56b2aeeb43d4de4e10265ea07ab14241307fa14d3342e
2021-03-29Merge bitcoin-core/gui#154: qt: Support macOS Dark modeMarcoFalke
dc4551c22c46104d18e8e7a8bf133cbebe4bc89f remove incompatibility release note for darkmode on macos (Sylvain Goumy) 303cfc62277efccf242dc5a51368e349dc2782e3 allow darkmode on macos build (Sylvain Goumy) 78f75a2d60d4930e6e8d1b27030205179adf7f6d Allow icon colorization on mac os to better support dark mode (Uplab) Pull request description: Allow icons to be colorized on macOS to support native Dark mode color scheme. Rendering on macOS Big Sur before PR: ![macos-darkmode-before-pr](https://user-images.githubusercontent.com/5577626/102502739-43f3af80-407f-11eb-9263-5bbc27b371c2.png) Rendering on macOS Big Sur after PR: ![macos-darkmode-after-pr](https://user-images.githubusercontent.com/5577626/102502678-350cfd00-407f-11eb-8b98-e271f2688c36.png) Light mode stay visually unchanged. <del>Note, that this currently only affect the build from source, as the macos dmg includes an attributes to force light color scheme on macos windows (see https://github.com/bitcoin/bitcoin/pull/14593). </del> <del>But once all glitches are fixed, we will be able to remove this temporary fix. </del> Edit: this PR is know including the removal of `NSRequiresAquaSystemAppearance` on Info.plist file so that the color fix is apply to every build. Linked issues: #68 #136 ACKs for top commit: hebasto: re-ACK dc4551c22c46104d18e8e7a8bf133cbebe4bc89f jarolrod: ACK dc4551c22c46104d18e8e7a8bf133cbebe4bc89f Tree-SHA512: 1c3a4dec796063e61fcaf80112afc2b15c8669a1cd30ebd537cea96647c20215f8f80289719f905820bb0c490c8c1f94bfae4bb32f9c6d1fdd4e8f199ebb559f
2021-03-29Merge bitcoin-core/gui#251: Improve URI/file handling messageMarcoFalke
ef3e1d7272d294c65cc9904079571cf67dc6c463 qt: Improve URI/file handling message (Hennadii Stepanov) Pull request description: This PR: - fixes missing spaces after full stops - makes the translation context much bigger The latter is the main motivation for this PR, as I became a translator :tiger2: Screenshots: - master (a9d1b40d53ec417eefbe767aa66701ef8e1801d5) ![DeepinScreenshot_select-area_20210317211750](https://user-images.githubusercontent.com/32963518/111527570-bd776880-8768-11eb-9035-96bb08067e74.png) - this PR: ![Screenshot from 2021-03-17 21-13-36](https://user-images.githubusercontent.com/32963518/111527727-e7308f80-8768-11eb-95c7-e8b802bfed5f.png) ACKs for top commit: jarolrod: ACK ef3e1d7272d294c65cc9904079571cf67dc6c463 Tree-SHA512: 8fbd1e3731b75866356fae201b3129126001600ca0197e83c05825e8c5bbbcf0132d6a6b808d7a5cbfbdde75ed1865ecbb651c30017570abd7c5803eff2b9306
2021-03-29test: remove qt byteswap compattestsfanquake
These were added as part of #9366 to fix issues with Protobuf. Now that we no-longer use Protobuf, there's no reason to maintain a duplicate set of byteswap tests for qt.
2021-03-28Merge bitcoin-core/gui#254: refactor: Drop redundant ↵MarcoFalke
setEditTriggers(NoEditTriggers) calls 257f55c119c2c63245f3a84a9cd8f7aaeaf2d129 qt, refactor: Drop redundant setEditTriggers(NoEditTriggers) calls (Hennadii Stepanov) Pull request description: The models of the both views have no `Qt::ItemIsEditable` flag: https://github.com/bitcoin-core/gui/blob/3c87dbe95c925274f80234ad4a88beb5a05fdfff/src/qt/peertablemodel.cpp#L218-L224 https://github.com/bitcoin-core/gui/blob/3c87dbe95c925274f80234ad4a88beb5a05fdfff/src/qt/bantablemodel.cpp#L148-L154 ACKs for top commit: Talkless: utACK 257f55c119c2c63245f3a84a9cd8f7aaeaf2d129, seems reasonable. jarolrod: ACK 257f55c119c2c63245f3a84a9cd8f7aaeaf2d129, looks correct. Tree-SHA512: 4356e4d785055935fba452488a5d97ed95995def97b26ab18af43a545835f9e9d4c347e4cad7952aa725179cf6e775a2208c48730feebf40e3b1a7ba5f402af0
2021-03-26Merge bitcoin-core/gui#243: fix issue when disabling the auto-enabled blank ↵MarcoFalke
wallet checkbox 915e34112b5a4c2ef391d7e3706603bcd6f62a2a qt: fix issue when disabling the auto-enabled blank wallet checkbox (Jarol Rodriguez) Pull request description: As detailed by #151, On `master` a user can create the confusing scenario where you have a disabled `Encrypt Wallet` checkbox and a selected `Disable Private Keys` checkbox after unselecting the auto-enabled `Blank Wallet` checkbox. This commit makes it so that when the `Blank Wallet` checkbox is auto-selected after the user selects `Disable Private keys`, unselecting it will also unselect the `Disable Private Keys` checkbox, which in turn re-enables the `Encrypt Wallet` checkbox. Below are screenshots comparing the behavior of selecting `Disable Private Keys` then unselecting the `Blank Wallet` between `master` and this `PR`: **Master:** | Select `Disable Private Keys` | Unselect `Blank Wallet` | | ----------------------------- | ------------------------ | | ![Screen Shot 2021-03-09 at 7 57 14 PM](https://user-images.githubusercontent.com/23396902/110560141-77405a80-8113-11eb-9285-5acba6241dcf.png) | ![Screen Shot 2021-03-09 at 7 57 31 PM](https://user-images.githubusercontent.com/23396902/110560159-81faef80-8113-11eb-9b37-086aa39ecb9f.png) | **PR:** | Select `Disable Private Keys` | Unselect `Blank Wallet` | | ----------------------------- | ------------------------ | | ![Screen Shot 2021-03-09 at 7 34 12 PM](https://user-images.githubusercontent.com/23396902/110560379-e3bb5980-8113-11eb-899a-3a4c6a1bc115.png) | ![Screen Shot 2021-03-09 at 7 34 20 PM](https://user-images.githubusercontent.com/23396902/110560412-f170df00-8113-11eb-8bd0-f7fe6fc0d739.png) | ACKs for top commit: hebasto: ACK 915e34112b5a4c2ef391d7e3706603bcd6f62a2a Talkless: ACK 915e34112b5a4c2ef391d7e3706603bcd6f62a2a Tree-SHA512: ce6ecbc35b94a08cabf0b8a24dbdfc874d82cc8918cc8623dce8172c7fc9c75d63a13b036bae5f7ab2c090f8d020574a542285d1651600813faf5d91e2506a8d
2021-03-24Merge #17227: Qt: Add Android packaging supportWladimir J. van der Laan
246774e26459cb3652e308880abdd140e8e9d204 depends: fix Qt precompiled headers bug (Igor Cota) 8e7ad4146d55f472e3d1dacaabb6b7dee704a896 depends: disable Qt Vulkan support on Android (Igor Cota) ba46adaa1abd51798394b5bad3799021adc237d2 CI: add Android APK build to cirrus (Igor Cota) 7563720e30a3052b7ee390f1b3d2874856fd073a CI: add Android APK build script (Igor Cota) ebfb10cb75adb704418d08197681c1e742e63bd5 Qt: add Android packaging support (Igor Cota) Pull request description: ![bitcoin-qt](https://user-images.githubusercontent.com/762502/67396157-62f3d000-f5a7-11e9-8a6f-9425823fcd6c.gif) This PR is the third and final piece of the basic Android support puzzle - it depends on https://github.com/bitcoin/bitcoin/pull/16110 and is related to https://github.com/bitcoin/bitcoin/pull/16883. It introduces an `android` directory under `qt` and a simple way to build an Android package of `bitcoin-qt`: 1. Build depends for Android as described in the [README](https://github.com/bitcoin/bitcoin/blob/master/depends/README.md) 2. Configure with one of the resulting prefixes 3. Run `make && make apk` in `src/qt` The resulting APK files will be in `android/build/outputs/apk`. You can install them manually or with [adb](https://developer.android.com/studio/command-line/adb). One can also open the `android` directory in Android Studio for that integrated development and debugging experience. `BitcoinQtActivity` is your starting point. Under the hood makefile `apk` target: 1. Renames the `bitcoin-qt` binary to `libbitcoin-qt.so` and copies it over to a folder under `android/libs` depending on which prefix and corresponding [ABI](https://developer.android.com/ndk/guides/abis.html#sa) `bitcoin-qt` was built for 2. Takes `libc++_shared.so` from the Android NDK and puts in the same place. It [must be included](https://developer.android.com/ndk/guides/cpp-support) in the APK 3. Extracts Qt for Android Java support files from the `qtbase` archive in `depends/sources` to `android/src` There is also just a tiny bit of `ifdef`'d code to make the Qt Widgets menus usable. It's not pretty but it works and is a stepping stone towards https://github.com/bitcoin/bitcoin/pull/16883. ACKs for top commit: MarcoFalke: cr ACK 246774e264 laanwj: Code review ACK 246774e26459cb3652e308880abdd140e8e9d204 Tree-SHA512: ba30a746576a167545223c35a51ae60bb0838818779fc152c210f5af1413961b2a6ab6af520ff92cbc8dcd5dcb663e81ca960f021218430c1f76397ed4cead6c
2021-03-23qt: fix issue when disabling the auto-enabled blank wallet checkboxJarol Rodriguez
This commit makes it so that when the `Blank Wallet` checkbox is auto-selected after the user selects 'Disable Private' keys, unselecting it will also unselect the 'Disable Private Keys' checkbox, which in turn re-enables the 'Encrypt Wallet' checkbox.
2021-03-23Merge bitcoin-core/gui#248: Fix: For values of "Bytes transferred" and ↵MarcoFalke
"Bytes/s" with 1000-based prefix names use 1000-based divisor instead of 1024-based d09ebc47233187ab8dd5a70df4d261353958978c Fix wrong(1024) divisor for 1000-based prefixes (wodry) Pull request description: v.0.21.0 I saw in the GUI peer window in the "received" column `1007 KB`, and after increasing to >=1024 I guess, it switched to `1 MB`. I would have expected the display unit to change from KB to MB already at value >=1000. I looked into the code, and the values appear to be power-of-2 byte values, so the switching at >=1024 and not >=1000 seems correct. But the unit display is not precisely correct, binary prefixes should be used for power-of-2 byte values. To be correct, this PR changes ~~KB/MB/GB to KiB/MiB/GiB.~~ KB to kB and the divisor from 1024 to 1000. ACKs for top commit: hebasto: ACK d09ebc47233187ab8dd5a70df4d261353958978c, tested on Linux Mint 20.1 (Qt 5.12.8) the both "Network Traffic" and "Peers" tabs of the "Node Window". jarolrod: ACK d09ebc47233187ab8dd5a70df4d261353958978c leonardojobim: Tested ACK https://github.com/bitcoin-core/gui/pull/248/commits/d09ebc47233187ab8dd5a70df4d261353958978c on Ubuntu 20.04 Qt 5.12.8 Tree-SHA512: 8f830b08cc3fd36dc8a18f1192959fe55d1644938044bf31d770f7c3bf8475fba6da5019a2d2024d5b2c81a8dab112f360c555367814a14f4d05c89d130f25b0
2021-03-23qt, refactor: Drop redundant setEditTriggers(NoEditTriggers) callsHennadii Stepanov
The models of the both views have no Qt::ItemIsEditable flag.
2021-03-21Qt: add Android packaging supportIgor Cota
Introduce an android directory under qt and allow one to package bitcoin-qt for Android by running make apk. Add bitcoin-qt Android build instructions.
2021-03-19Merge #21328: net, refactor: pass uint16 CService::port as uint16MarcoFalke
52dd40a9febec1f4e70d777821b6764830bdec61 test: add missing netaddress include headers (Jon Atack) 6f09c0f6b57ac01a473c587a3e51e9d477866bb0 util: add missing braces and apply clang format to SplitHostPort() (Jon Atack) 2875a764f7d8b1503c7bdb2f262964f7a0cb5fc3 util: add ParseUInt16(), use it in SplitHostPort() (Jon Atack) 6423c8175fad3163c10ffdb49e0df48e4e4931f1 p2p, refactor: pass and use uint16_t CService::port as uint16_t (Jon Atack) Pull request description: As noticed during review today in https://github.com/bitcoin/bitcoin/pull/20685#discussion_r584873708 of the upcoming I2P network support, `CService::port` is `uint16_t` but is passed around the codebase and into the ctors as `int`, which causes uneeded conversions and casts. We can avoid these (including in the incoming I2P code without further changes to it) by using ports with the correct type. The remaining conversions are pushed out to the user input boundaries where they can be range-checked and raise with user feedback in the next patch. ACKs for top commit: practicalswift: cr ACK 52dd40a9febec1f4e70d777821b6764830bdec61: patch looks correct MarcoFalke: cr ACK 52dd40a9febec1f4e70d777821b6764830bdec61 vasild: ACK 52dd40a9febec1f4e70d777821b6764830bdec61 Tree-SHA512: 203c1cab3189a206c55ecada77b9548b810281cdc533252b8e3330ae0606b467731c75f730ce9deb07cbaab66facf97e1ffd2051084ff9077cba6750366b0432
2021-03-19 Fix wrong(1024) divisor for 1000-based prefixeswodry
2021-03-17qt: Improve URI/file handling messageHennadii Stepanov
This change: - fixes missing spaces after full stops - makes translation context bigger
2021-03-17Merge #21415: refactor: remove Optional & nulloptWladimir J. van der Laan
ebc4ab721b0371c0ef217c0f5bd7d42613e951e6 refactor: post Optional<> removal cleanups (fanquake) 57e980d13ca488031bde6ef197cf34d493d36796 scripted-diff: remove Optional & nullopt (fanquake) Pull request description: Same rationale & motivation as #21404, which turned out to be quite low in the number of potential conflicts. Lets see what the bot has to say here. ACKs for top commit: practicalswift: cr ACK ebc4ab721b0371c0ef217c0f5bd7d42613e951e6: patch looks correct jnewbery: utACK ebc4ab721b0371c0ef217c0f5bd7d42613e951e6 laanwj: Code review ACK ebc4ab721b0371c0ef217c0f5bd7d42613e951e6 Tree-SHA512: 550fbeef09b9d35ddefaa805d1755c18c8fd499c4b0f77ebfece8c20296a7abd1cf6c699e2261f92fe3552deeb7555ec2a2287ffe3ab9e98bb9f8612a4d43be3
2021-03-16p2p, refactor: pass and use uint16_t CService::port as uint16_tJon Atack
2021-03-16Merge #220: Do not translate file extensionsWladimir J. van der Laan
88df300f20da02060694cfe643e1c882efaa306c qt: Do not translate file extensions (Hennadii Stepanov) Pull request description: File extensions are untranslatable by their nature. ACKs for top commit: laanwj: Concept and code review ACK 88df300f20da02060694cfe643e1c882efaa306c Talkless: tACK 88df300f20da02060694cfe643e1c882efaa306c, tested on Debian Sid with Qt 5.15.2. Tested all filters except for .psbt. jarolrod: re-ACK 88df300f20da02060694cfe643e1c882efaa306c Tree-SHA512: 104d383543edcee8fb825f98d3b6669a7aaae2c74b6602f9bc407bf1c88be121ec535f2f9be87afa6ca775dc79865165f620553f6f6ab1d31a3f9ea93f7f9593
2021-03-16Merge bitcoin-core/gui#246: Revert "qt: Use "fusion" style on macOS Big Sur ↵MarcoFalke
with old Qt" 77833a364a09c463e088069faf4d32dc5cea7242 Revert "qt: Use "fusion" style on macOS Big Sur with old Qt" (Hennadii Stepanov) Pull request description: This PR reverts workaround introduced in #177. After bumping Qt version in depends to 5.12.10 in bitcoin/bitcoin#21376, there are no reasons to use the Fusion style on macOS. ACKs for top commit: leonardojobim: tACK https://github.com/bitcoin-core/gui/pull/246/commits/77833a364a09c463e088069faf4d32dc5cea7242. Tested on macOS Big Sur v11.2.3 jarolrod: ACK 77833a364a09c463e088069faf4d32dc5cea7242 Talkless: utACK 77833a364a09c463e088069faf4d32dc5cea7242 Tree-SHA512: f704f2027dd380dfc604231e3606a036a8be891aeeddf643c474131014fa080e123b42836ac643a2064fe7a5a018fa8b9aa61a31f9da1d15880de6a36c4c0d54
2021-03-15scripted-diff: remove Optional & nulloptfanquake
-BEGIN VERIFY SCRIPT- git rm src/optional.h sed -i -e 's/Optional</std::optional</g' $(git grep -l 'Optional<' src) sed -i -e 's/{nullopt}/{std::nullopt}/g' $(git grep -l 'nullopt' src) sed -i -e 's/ nullopt;/ std::nullopt;/g' $(git grep -l 'nullopt' src) sed -i -e 's/ nullopt)/ std::nullopt)/g' $(git grep -l 'nullopt' src) sed -i -e 's/(nullopt)/(std::nullopt)/g' $(git grep -l 'nullopt' src) sed -i -e 's/ nullopt,/ std::nullopt,/g' $(git grep -l 'nullopt' src) sed -i -e 's/? nullopt :/? std::nullopt :/g' $(git grep -l 'nullopt' src) sed -i -e 's/: nullopt}/: std::nullopt}/g' $(git grep -l 'nullopt' src) sed -i -e '/optional.h \\/d' src/Makefile.am sed -i -e '/#include <optional.h>/d' src/test/fuzz/autofile.cpp src/test/fuzz/buffered_file.cpp src/test/fuzz/node_eviction.cpp sed -i -e 's/#include <optional.h>/#include <optional>/g' $(git grep -l '#include <optional.h>' src) -END VERIFY SCRIPT-
2021-03-15scripted-diff: Drop redundant QString callsHennadii Stepanov
-BEGIN VERIFY SCRIPT- sed -i 's/QString(QObject::tr(\([^)]*\))/QObject::tr(\1/' src/qt/guiutil.cpp -END VERIFY SCRIPT-
2021-03-12Revert "qt: Use "fusion" style on macOS Big Sur with old Qt"Hennadii Stepanov
This reverts commit 4e1154dfd128cbada65e9ea08ee274cdeafc4c53. After bumping Qt version in depends to 5.12.10 in bitcoin/bitcoin#21376, there are no reasons to use the Fusion style on macOS.
2021-03-12Merge #21404: refactor: Remove MakeUnique<T>()MarcoFalke
1a6323bdbe20bdb7b1c907d8fa0333ffa88b21ff doc: update developer notes for removal of MakeUnique (fanquake) 3ba2840e7ee81341b0748c0121aedc2e9305041a scripted-diff: remove MakeUnique<T>() (fanquake) Pull request description: Since requiring C++17, this is just pointless abstraction. I think we should just "tear the band-aid off" and remove it. Similar to the changes happening in #21366. Also, having a comment saying this is deprecated doesn't prevent it's usage in new code. i.e : https://github.com/bitcoin/bitcoin/pull/20946#discussion_r561949731. The repository is fairly quiet at the moment, so any potential complaints about having to rebase should be minimal. Might as well get this over and done with. ACKs for top commit: jnewbery: utACK 1a6323bdbe20bdb7b1c907d8fa0333ffa88b21ff practicalswift: cr ACK 1a6323bdbe20bdb7b1c907d8fa0333ffa88b21ff: patch looks correct ajtowns: ACK 1a6323bdbe20bdb7b1c907d8fa0333ffa88b21ff -- code review only glozow: ACK https://github.com/bitcoin/bitcoin/commit/1a6323bdbe20bdb7b1c907d8fa0333ffa88b21ff looks correct Tree-SHA512: 4a14b9611b60b9b3026b54d6f5a2dce4c5d9b63a7b93d7de1307512df736503ed84bac66e7b93372c76e3117f49bf9f29cd473d3a47cb41fb2775bc10234736f
2021-03-11Merge bitcoin-core/gui#188: Write PSBTs to file with binary modeMarcoFalke
cc3971c9ff538a924c1a76ca1352bcaeb24f579f GUI: Write PSBTs to file with binary mode (Andrew Chow) Pull request description: As noted in https://github.com/bitcoin/bitcoin/issues/20959, PSBT files should be opened in binary mode as on windows, all newlines are turned into CRLF which produces invalid PSBTs. Fixes https://github.com/bitcoin/bitcoin/issues/20959 ACKs for top commit: Talkless: utACK cc3971c9ff538a924c1a76ca1352bcaeb24f579f. Tree-SHA512: fee62b66da844017a44d7d6da6d2d2794b097a7dec33fb07711615df1e94dccc76f987ffcbb325ad1f8db2a2dd6eaf514b6cbd2453e7658b9f6c9fb5c4c41dab
2021-03-11Merge #21376: depends: Qt 5.12.10Wladimir J. van der Laan
550ed1bed2e8091616a2d64254efdd217d94e808 build: update qt qpaint non determinism patch for 5.12.10 (fanquake) 6093ae4d30bd3d888eccc4d6cb1c3c1efb7f13fd build: update qt no-xlib patch for 5.12.10 (fanquake) 84928c4e73a6dba46ec47b5b344d24ed0b201c44 build: update qt android jni static patch for 5.12.10 (fanquake) cc6f47d51a0b3a1bb95a1f2a1b67a6d47cfcaa11 build: update qt lrelease patch for 5.12.10 (fanquake) 286d07ff1778971d7df456cc18a91db813c1a028 build, qt: Fix lib paths in *.pc files (Hennadii Stepanov) fa5e97e8c2cf93b7afc0d6b0c460700ec18d18f2 build: disable qt SDK version checking (fanquake) 1be8e0f2388e243d310fe7eeb46149a690de4ddf build: Add QMacStyle support (Hennadii Stepanov) e674e94302dec9933006dde1c18f01a1d4b77d8e build: revert to using Qts internal zlib (fanquake) 06cd0da21fc14360e10204affe240b72715a0267 build: qt 5.12.10 (fanquake) 3272e34f9c548f7e4570d786fd322947e3cf20c6 build: Add xkbcommon 0.8.4 (Hennadii Stepanov) d769b3372d9833224a5151000ab99048474f8051 build: only pass -optimized-tools to qt in debug mode (fanquake) Pull request description: Switch to Qt 5.12.10 in depends. Based on #21363. This is a much smaller changeset, and should be easier to review than #19716. Also postpones needing to bring a bunch of new libs into depends. Big thanks to Hebasto that has been helping with this. ACKs for top commit: laanwj: Code review ACK 550ed1bed2e8091616a2d64254efdd217d94e808 hebasto: ACK 550ed1bed2e8091616a2d64254efdd217d94e808 jarolrod: ACK 550ed1bed2e8091616a2d64254efdd217d94e808 , tested on macOS 11.2 built from depends Tree-SHA512: cb6b70f5a5372ba0b64f7ddfa696eda0411922cd261c67bfa2d9332c685a7b358ab18e5cfaa677b414ae8ad78296bba6ed0eecd071fdacdf736a0d030f679fe5
2021-03-11scripted-diff: remove MakeUnique<T>()fanquake
-BEGIN VERIFY SCRIPT- git rm src/util/memory.h sed -i -e 's/MakeUnique/std::make_unique/g' $(git grep -l MakeUnique src) sed -i -e '/#include <util\/memory.h>/d' $(git grep -l '#include <util/memory.h>' src) sed -i -e '/util\/memory.h \\/d' src/Makefile.am -END VERIFY SCRIPT-
2021-03-10Merge bitcoin-core/gui#229: Fix regression with initial sorting after pr205MarcoFalke
c524dc54bb985f801b5a3def3c3d51ce497e838e qt: Fix regression with initial sorting after pr205 (Hennadii Stepanov) Pull request description: Unfortunately, #205 introduced a regression. After opening the "Receive" or "Transaction" tab at first time despite of the "Date" header is marked as sorted, table rows are not sorted actually: ![Screenshot from 2021-02-27 17-49-54](https://user-images.githubusercontent.com/32963518/109392491-f7e9a480-7924-11eb-96cc-98b6f932e18e.png) It appears that sorting the table must be triggered _after_ the `QTableView::setModel` call. With this PR (and pre-#205): ![Screenshot from 2021-02-27 17-48-40](https://user-images.githubusercontent.com/32963518/109392505-08018400-7925-11eb-8107-8f8685744b83.png) ACKs for top commit: Talkless: tACK c524dc54bb985f801b5a3def3c3d51ce497e838e, tested on Debian Sid with Qt 5.15.2. I can confirm @leonardojobim observations. leonardojobim: Tested ACK https://github.com/bitcoin-core/gui/pull/229/commits/c524dc54bb985f801b5a3def3c3d51ce497e838e on Ubuntu 20.04.2 Qt 5.12.8 jonatack: ACK c524dc54bb985f801b5a3def3c3d51ce497e838e jarolrod: ACK c524dc54bb985f801b5a3def3c3d51ce497e838e, tested on macOS 11.1 Qt 5.15.2 Tree-SHA512: e370229979a70d63a0b64dbc11c4eca338695a070881d4d8f015644617f180e6accc24d6bdf98a75e7c9ba9be2a0ace9a2b7eb9c783ebb2992c3b2c3b3deb408
2021-03-10build: Add QMacStyle supportHennadii Stepanov
2021-03-08Merge bitcoin-core/gui#233: qt test: Don't bind to regtest portMarcoFalke
e21276a82a9996c73e43990ccf927397f71399ea qt test: Don't bind to regtest port (Andrew Chow) Pull request description: The qt tests don't need to bind to the regtest port. By not binding, it will no longer conflict with existing regtest instances and the tests will run as normal. Fixes #10 ACKs for top commit: MarcoFalke: cr ACK e21276a82a9996c73e43990ccf927397f71399ea jarolrod: re-ACK e21276a82a9996c73e43990ccf927397f71399ea, tested on macOS 11.2 Tree-SHA512: 5a269ee043f9aff7900e092c166de71912a2bf86ebe2982b3fb0e26bdebfb91869ee5d0f62082fd608c1288bfb7981f6c8647e504b11176711d7fec993a09164
2021-03-07Merge bitcoin-core/gui#221: qt, refactor: rpcconsole translatable string ↵MarcoFalke
fixes and improvements 6242beeb067139c01dd27c63ebcd24df5808cb15 Hoist repeated translated strings to RPCConsole struct members (Jon Atack) 0f035c12fb0a5c5f98fc2b9907d475c08018df36 RPCConsole::updateDetailWidget: convert strings to translated strings (Jon Atack) Pull request description: - fixups from #206 review feedback (thanks!), see commit message for details - hoists repeatedly used translatable strings to the `RPCConsole` class for reuse ACKs for top commit: hebasto: re-ACK 6242beeb067139c01dd27c63ebcd24df5808cb15 Talkless: tACK 6242beeb067139c01dd27c63ebcd24df5808cb15, tested on Debian Sid with Qt 5.15.2. I see "Ban for.." translated to my native language as before, "To/From/Yes/No" are not but that's expected, as `.ts` files are not updated. jarolrod: ACK 6242beeb067139c01dd27c63ebcd24df5808cb15 Tree-SHA512: 20a296511c5ac03a816766237fa2731b0360dedebf1bea02711eb21d7e4eae2a63a051fe48f4726052edc3e6318952f01fef920cd4b22a8196c39c23d8e5cc3a
2021-03-07qt, refactor: Drop no longer used PeerTableModel::getRowByNodeId funcHennadii Stepanov