aboutsummaryrefslogtreecommitdiff
path: root/src/qt
AgeCommit message (Collapse)Author
2021-01-09gui: replace Direction with Connection Type in peer detailsJon Atack
2021-01-08qt: Stop the effect of hidden widgets on the size of QStackedWidgetHennadii Stepanov
Layouts of the hidden widgets, those are children of QStackedWidget, could prevent to adjust the size of the parent widget in the WalletFrame widget.
2021-01-08gui: create GUIUtil::ConnectionTypeToQString utility functionJon Atack
2021-01-08qt: Use "fusion" style on macOS Big Sur with old QtHennadii Stepanov
The "macintosh" style is broken on macOS Big Sur at least for Qt 5.9.8.
2021-01-07gui: Add NAT-PMP network optionHennadii Stepanov
2021-01-07net: Add -natpmp command line optionHennadii Stepanov
2021-01-07gui: Apply port mapping changes on dialog exitHennadii Stepanov
This commit does not change behavior. It is a prerequisite for NAT-PMP support adding.
2021-01-07refactor: Move port mapping code to its own moduleHennadii Stepanov
This commit does not change behavior.
2021-01-07Merge bitcoin-core/gui#173: Follow Qt docs when implementing rowCount and ↵MarcoFalke
columnCount 195fcb53a09e9b852544778a077727f81d31303e qt: Follow Qt docs when implementing rowCount and columnCount (Hennadii Stepanov) Pull request description: [`QAbstractItemModel::rowCount`](https://doc.qt.io/qt-5/qabstractitemmodel.html#rowCount): > **Note:** When implementing a table based model, `rowCount()` should return 0 when the parent is valid. [`QAbstractItemModel::columnCount`](https://doc.qt.io/qt-5/qabstractitemmodel.html#columnCount): > **Note:** When implementing a table based model, `columnCount()` should return 0 when the parent is valid. ACKs for top commit: jarolrod: Tested ACK 195fcb53a09e9b852544778a077727f81d31303e. Compiled and ran on macOS (Big Sur 11.1 and Catalina 10.15.7), Arch Linux, and FreeBSD. visually verified no weird effects with the `Address`, `Ban`, `Peer`, and `Transaction` tables. As already stated, the code change brings us inline with what the QT Docs recommend. Tree-SHA512: 179a3430e68e77b22cdf642964cd96c023a2286ee256bbeb25b43df3d2eef6f59978c8d92173c6be5071d127fdcd6aa338142f6eaf003ff08e4abd65172d20ca
2021-01-07Merge bitcoin-core/gui#165: Save QSplitter state in QSettingsMarcoFalke
90f9fc274bf69b33adea593146ff5d6793123781 qt: Save QSplitter state in QSettings (Hennadii Stepanov) Pull request description: This PR adds the ability to save the `QSplitter` widget state in `QSettings` during shutdown, and restore it on startup. A user no longer needs to adjust the splitter every time :) ![DeepinScreenshot_select-area_20201225211422](https://user-images.githubusercontent.com/32963518/103141024-046c3980-46f7-11eb-9a8c-83613527ffe1.png) ACKs for top commit: jonasschnelli: utACK 90f9fc274bf69b33adea593146ff5d6793123781 jonatack: ACK 90f9fc274bf69b33adea593146ff5d6793123781 this sets the "PeersTabSplitterSizes" value in the RPCConsole dtor and restores it in the RPCConsole ctor; tested in Debian with various split settings, tab open/close sequences, and shutdown methods, and the Peers window split state was faithfully maintained. Tree-SHA512: efbd6a4cee512982944955d36775e75a8a217b1dc49e62d42c6e402d2710dd44324b2c3c1edeb5fe38d9229e0e4a39734d1f4e63405ade8694762e1bbf72020b
2021-01-06qt: Use layout manager for Create Wallet dialogHennadii Stepanov
2021-01-05qt: Fix TxViewDelegate layoutHennadii Stepanov
This change (1) prevents overlapping date and amount strings, and (2) guaranties that "eye" sign at the end of the watch-only address/label is always visible.
2021-01-05qt: Add TransactionOverviewWidget classHennadii Stepanov
2021-01-05Replace boost::variant with std::variantMarcoFalke
2021-01-04doc: fix various typosIkko Ashimine
Co-authored-by: Peter Yordanov <ppyordanov@yahoo.com>
2021-01-04doc: Use https URLs where possibleSawyer Billings
2021-01-02qt: Follow Qt docs when implementing rowCount and columnCountHennadii Stepanov
2020-12-31scripted-diff: Bump copyright headersMarcoFalke
-BEGIN VERIFY SCRIPT- ./contrib/devtools/copyright_header.py update ./ -END VERIFY SCRIPT-
2020-12-30qt, refactor: Drop no longer used PeerTableModel::getNodeStats functionHennadii Stepanov
2020-12-30qt: Use PeerTableModel::StatsRoleHennadii Stepanov
This change prevents direct calls to the PeerTableModel object that is a layer violation.
2020-12-30qt: Add PeerTableModel::StatsRoleHennadii Stepanov
This change allows access to CNodeCombinedStats instance directly from any view object.
2020-12-27gui: display network in peer detailsJon Atack
2020-12-27gui: rename peer tab column headers, initialize in .hHennadii Stepanov
2020-12-27gui: add network column in peers tab/windowJon Atack
2020-12-27gui: fix broken doxygen formatting in src/qt/guiutil.hJon Atack
2020-12-27gui: create GUIUtil::NetworkToQString() utility functionJon Atack
2020-12-25qt: Save QSplitter state in QSettingsHennadii Stepanov
2020-12-23util: Log static plugins meta data and styleHennadii Stepanov
2020-12-20[net processing] Rename nStartingHeight to m_starting_heightJohn Newbery
Not done as a scripted diff to avoid misnaming the local variable in ProcessMessage().
2020-12-20[net processing] Move nStartingHeight to PeerJohn Newbery
2020-12-18qt: Align layout of checkboxesHennadii Stepanov
2020-12-17Merge bitcoin-core/gui#153: Define MAX_DIGITS_BTC for magic number in ↵MarcoFalke
BitcoinUnits::format 198fff88f385e090b57a0ee902719bcc22a6b86b GUI: Define MAX_DIGITS_BTC for magic number in BitcoinUnits::format (Luke Dashjr) Pull request description: A magic number snuck in with https://github.com/bitcoin/bitcoin/pull/16432 ACKs for top commit: hebasto: ACK 198fff88f385e090b57a0ee902719bcc22a6b86b, I have reviewed the code and it looks OK, I agree it can be merged. kristapsk: utACK 198fff88f385e090b57a0ee902719bcc22a6b86b Tree-SHA512: 78dc23c2ae61bac41e5e34eebf57274599cb2ebb0b18d46e8a3228d42b256a1bc9bb17091c748f0f692ef1c4c241cfbd3e30a12bcd12222a234c1a9547ebe786
2020-12-15GUI: Define MAX_DIGITS_BTC for magic number in BitcoinUnits::formatLuke Dashjr
2020-12-15Merge bitcoin-core/gui#115: Replace "Hide tray icon" option with positive ↵Jonas Schnelli
"Show tray icon" one 03edb52eee5a87af16161c23bdc6cde91a2e5b8b qt: Remove redundant BitcoinGUI::setTrayIconVisible (Hennadii Stepanov) 17174f8328c44ae84479e8365c122ad8502bd7da gui: Replace "Hide tray icon" option with positive "Show tray icon" one (Hennadii Stepanov) Pull request description: This change makes easier both (1) using this option, and (2) reasoning about the code. ACKs for top commit: jonasschnelli: utACK 03edb52eee5a87af16161c23bdc6cde91a2e5b8b Tree-SHA512: 38e317492210d4fb13302dea383bd1f4f0ae1219d7ff2fdcb78607f15ac61a51969acaadb59b72c3f075b6356ef54368eb46fb49e6e1bd42db6d5804b97e232b
2020-12-09Bugfix: GUI: Restore SendConfirmationDialog button default to "Yes"Luke Dashjr
The SendConfirmationDialog is used for bumping the fee, where "Send" doesn't really make sense
2020-12-08qt/test: [FIX] Add forgotten Context setting in RPCNestedTestsCarl Dong
2020-12-04refactor: Use C++17 std::array where possibleMarcoFalke
2020-12-02Merge #20530: lint, refactor: Update cppcheck linter to c++17 and improve ↵fanquake
explicit usage 1e62350ca20898189904a88dfef9ea11ddcd8626 refactor: Improve use of explicit keyword (Fabian Jahr) c502a6dbfb854ca827a5a3925394f9e09d29b898 lint: Use c++17 std in cppcheck linter (Fabian Jahr) Pull request description: I found the `extended-lint-cppcheck` linter still uses `std=c++11` when reviewing #20471. The only difference in the output after this change is one line is missing: ``` src/script/descriptor.cpp:159:5: warning: Struct 'PubkeyProvider' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] ``` After some digging, I am still not sure why this one is ignored with c++17 when 40 other`noExplicitConstructor` warnings were still appearing. In the second commit, I fix these warnings, adding `explicit` where appropriate and adding fixes to ignore otherwise. ACKs for top commit: practicalswift: cr ACK 1e62350ca20898189904a88dfef9ea11ddcd8626: patch looks correct! MarcoFalke: review ACK 1e62350ca20898189904a88dfef9ea11ddcd8626 Tree-SHA512: dff7b324429a57160e217cf38d9ddbb6e70c6cb3d3e3e0bd4013d88e07afc2292c3df94d0acf7122e9d486322821682ecf15c8f2724a78667764c05d47f89a12
2020-12-02Merge #18948: qt: Call setParent() in the parent's contextJonas Schnelli
8963b2c71f120b2746396c4987392f0105c8dd60 qt: Improve comments in WalletController::getOrCreateWallet() (Hennadii Stepanov) 5fcfee68af47d4a891ae9c9964d73886f0f01d7d qt: Call setParent() in the parent's context (Hennadii Stepanov) 5659e73493fcdfb5d0cb9d686c24c4fbe1c217ed qt: Add ObjectInvoke template function (Hennadii Stepanov) Pull request description: The `setParent(parent)` internally calls `QCoreApplication::sendEvent(parent, QChildEvent)` that implies running in the thread which created the parent object. That is not the case always, and an internal assertion fails in the debug mode. Steps to reproduce this issue on master (007e15dcd7f8b42501e31cc36343655c53027077) on Linux Mint 20 (x86_64): ``` $ make -C depends DEBUG=1 $ CONFIG_SITE=$PWD/depends/x86_64-pc-linux-gnu/share/config.site ./configure $ make $ QT_FATAL_WARNINGS=1 lldb src/qt/bitcoin-qt -- --regtest -debug=qt (lldb) target create "src/qt/bitcoin-qt" Current executable set to '/home/hebasto/GitHub/bitcoin/src/qt/bitcoin-qt' (x86_64). (lldb) settings set -- target.run-args "--regtest" "-debug=qt" (lldb) run Process 431562 launched: '/home/hebasto/GitHub/bitcoin/src/qt/bitcoin-qt' (x86_64) # load wallet via GUI Process 431562 stopped * thread #24, name = 'QThread', stop reason = signal SIGABRT frame #0: 0x00007ffff794518b libc.so.6`__GI_raise(sig=2) at raise.c:51:1 (lldb) bt * thread #24, name = 'QThread', stop reason = signal SIGABRT * frame #0: 0x00007ffff794518b libc.so.6`__GI_raise(sig=2) at raise.c:51:1 frame #1: 0x00007ffff7924859 libc.so.6`__GI_abort at abort.c:79:7 frame #2: 0x0000555556508ec4 bitcoin-qt`::qt_message_fatal((null)=<unavailable>, context=<unavailable>, message=<unavailable>) at qlogging.cpp:1690:15 frame #3: 0x00005555565099cf bitcoin-qt`QMessageLogger::fatal(this=<unavailable>, msg=<unavailable>) const at qlogging.cpp:796:21 frame #4: 0x000055555650479d bitcoin-qt`qt_assert_x(where=<unavailable>, what=<unavailable>, file=<unavailable>, line=<unavailable>) at qglobal.cpp:3088:46 frame #5: 0x0000555556685733 bitcoin-qt`QCoreApplicationPrivate::checkReceiverThread(receiver=0x0000555557b27510) at qcoreapplication.cpp:557:5 frame #6: 0x00005555567ced86 bitcoin-qt`QApplication::notify(this=0x00007fffffffd4a0, receiver=0x0000555557b27510, e=0x00007fff9a7f8ce0) at qapplication.cpp:2956:27 frame #7: 0x0000555556685d31 bitcoin-qt`QCoreApplication::notifyInternal2(receiver=0x0000555557b27510, event=0x00007fff9a7f8ce0) at qcoreapplication.cpp:1024:24 frame #8: 0x00005555566c9224 bitcoin-qt`QObjectPrivate::setParent_helper(QObject*) [inlined] QCoreApplication::sendEvent(event=<unavailable>, receiver=<unavailable>) at qcoreapplication.h:233:59 frame #9: 0x00005555566c9210 bitcoin-qt`QObjectPrivate::setParent_helper(this=0x00007fff85855260, o=0x0000555557b27510) at qobject.cpp:2036 frame #10: 0x00005555566c9b41 bitcoin-qt`QObject::setParent(this=<unavailable>, parent=<unavailable>) at qobject.cpp:1980:24 frame #11: 0x0000555555710be8 bitcoin-qt`WalletController::getOrCreateWallet(std::unique_ptr<interfaces::Wallet, std::default_delete<interfaces::Wallet> >) + 2534 ... ``` Fixes #18835. ACKs for top commit: ryanofsky: Code review ACK 8963b2c71f120b2746396c4987392f0105c8dd60. No changes since last review, just rebase because of conflict on some adjacent lines jonasschnelli: utACK 8963b2c71f120b2746396c4987392f0105c8dd60 Tree-SHA512: fef615904168717df3d8a0bd85eccc3eef990cc3e66c9fa280c8ef08ea009a7cb5a2a4f868ed0be3c0fe5bf683e8465850b5958deb896fdadd22d296186c9586
2020-12-01refactor: Improve use of explicit keywordFabian Jahr
2020-12-01Merge #20496: build: Drop unneeded macOS framework dependenciesJonas Schnelli
ec4a46dd9c158e1a0de144e9abb260da941aa702 build: Drop unneeded IOKit framework dependency (Hennadii Stepanov) 65afe4cb69e80278de0f584b6eeb6741f02a31eb build: Drop unneeded ApplicationServices framework dependency (Hennadii Stepanov) Pull request description: Bitcoin Core codebase does not contain direct dependencies on the `ApplicationServices` and `IOKit` frameworks. ACKs for top commit: jonasschnelli: utACK ec4a46dd9c158e1a0de144e9abb260da941aa702 practicalswift: cr ACK ec4a46dd9c158e1a0de144e9abb260da941aa702: patch looks correct! promag: Tested ACK ec4a46dd9c158e1a0de144e9abb260da941aa702 (not depends build). Tree-SHA512: 47b5ad87d761992850133a921f07d485565c70ba2909a3289050f406e6dbd39ad49e1aeeb6cad79c6914385a72ddffd273dfadd69259a35545a13cd17d0e5043
2020-12-01Merge bitcoin-core/gui#137: refactor: Replace deprecated ↵Jonas Schnelli
Qt::SystemLocale{Short,Long}Date 86b1ab64b1a5b56518787ef16ea54ddbbc97d83e refactor: Replace deprecated Qt::SystemLocale{Short,Long}Date (Hennadii Stepanov) Pull request description: As all deprecated warning in Qt 5.15.0 were eliminated in #46, Qt 5.15.1 introduced another one that is fixed in this PR. Required for https://github.com/bitcoin/bitcoin/pull/20182. Details in Qt docs: - https://doc.qt.io/qt-5/qdatetime.html#toString-1 - https://doc.qt.io/qt-5/qdate.html#toString-1 ACKs for top commit: jarolrod: Tested ACK 86b1ab6 on MacOS 10.15.7 and Arch Linux both with Qt 5.15.1 jonasschnelli: Tested ACK 86b1ab64b1a5b56518787ef16ea54ddbbc97d83e Tree-SHA512: 1dbba8ee70c895bf58317172a9901cdbe5503b1d6258f51caaae88d88d332d9fbd4697c995192d31e3618ddfd532c5f5881289b3af1184422e5a9263a1224115
2020-11-30GUI/Intro: Move prune setting below explanationLuke Dashjr
2020-11-30GUI/Intro: Estimate max age of backups that can be restored with pruningLuke Dashjr
2020-11-27qt: unlock wallet "OK" button bugfixMichael Dietz
When trying to send a transaction from an encrypted wallet, the ask passphrase dialog would not allow the user to click the "OK" button and proceed. Therefore it was impossible to send a transaction through the gui. It was not enabling the "OK" button after the passphrase was entered by the user, because it was using the same form validation logic as the "Change passphrase" flow.
2020-11-27refactor: Replace deprecated Qt::SystemLocale{Short,Long}DateHennadii Stepanov
2020-11-25build: Drop unneeded ApplicationServices framework dependencyHennadii Stepanov
2020-11-25qt: Improve comments in WalletController::getOrCreateWallet()Hennadii Stepanov
2020-11-25qt: Call setParent() in the parent's contextHennadii Stepanov
setParent(parent) calls sendEvent(parent, QChildEvent) that implies running in the thread which created the parent object.
2020-11-25qt: Add ObjectInvoke template functionHennadii Stepanov
This is a replacement of the QMetaObject::invokeMethod functor overload which is available in Qt 5.10+. Co-authored-by: Russell Yanofsky <russ@yanofsky.org>