aboutsummaryrefslogtreecommitdiff
path: root/src/qt
AgeCommit message (Collapse)Author
2015-09-04Disallow duplicate windows.Casey Rodarmor
2015-09-03Implement RPCTimerHandler for Qt RPC consoleWladimir J. van der Laan
Implement RPCTimerHandler for Qt RPC console, so that `walletpassphrase` works with GUI and `-server=0`. Also simplify HTTPEvent-related code by using boost::function directly.
2015-09-03evhttpd implementationWladimir J. van der Laan
- *Replace usage of boost::asio with [libevent2](http://libevent.org/)*. boost::asio is not part of C++11, so unlike other boost there is no forwards-compatibility reason to stick with it. Together with #4738 (convert json_spirit to UniValue), this rids Bitcoin Core of the worst offenders with regard to compile-time slowness. - *Replace spit-and-duct-tape http server with evhttp*. Front-end http handling is handled by libevent, a work queue (with configurable depth and parallelism) is used to handle application requests. - *Wrap HTTP request in C++ class*; this makes the application code mostly HTTP-server-neutral - *Refactor RPC to move all http-specific code to a separate file*. Theoreticaly this can allow building without HTTP server but with another RPC backend, e.g. Qt's debug console (currently not implemented) or future RPC mechanisms people may want to use. - *HTTP dispatch mechanism*; services (e.g., RPC, REST) register which URL paths they want to handle. By using a proven, high-performance asynchronous networking library (also used by Tor) and HTTP server, problems such as #5674, #5655, #344 should be avoided. What works? bitcoind, bitcoin-cli, bitcoin-qt. Unit tests and RPC/REST tests pass. The aim for now is everything but SSL support. Configuration options: - `-rpcthreads`: repurposed as "number of work handler threads". Still defaults to 4. - `-rpcworkqueue`: maximum depth of work queue. When this is reached, new requests will return a 500 Internal Error. - `-rpctimeout`: inactivity time, in seconds, after which to disconnect a client. - `-debug=http`: low-level http activity logging
2015-09-02tests: fix qt payment testCory Fields
Now that boost no longer automatically initializes openssl, we have to do it ourselves.
2015-08-19Merge pull request #6539Wladimir J. van der Laan
9f68ed6 typofixes (found by misspell_fixer) (Veres Lajos)
2015-08-14Merge pull request #6415Wladimir J. van der Laan
d042854 SQUASH "Implement watchonly support in fundrawtransaction" (Matt Corallo) 428a898 SQUASH "Add have-pubkey distinction to ISMINE flags" (Matt Corallo) 6bdb474 Implement watchonly support in fundrawtransaction (Matt Corallo) f5813bd Add logic to track pubkeys as watch-only, not just scripts (Matt Corallo) d3354c5 Add have-pubkey distinction to ISMINE flags (Matt Corallo) 5c17059 Update importaddress help to push its use to script-only (Matt Corallo) a1d7df3 Add importpubkey method to import a watch-only pubkey (Matt Corallo) 907a425 Add p2sh option to importaddress to import redeemScripts (Matt Corallo) 983d2d9 Split up importaddress into helper functions (Matt Corallo) cfc3dd3 Also remove pay-2-pubkey from watch when adding a priv key (Matt Corallo)
2015-08-10typofixes (found by misspell_fixer)Veres Lajos
2015-08-07[Qt] show client user agent in debug windowPhilip Kaufmann
2015-08-07Merge pull request #4587Wladimir J. van der Laan
ed166df [Qt] allow users to set -onion via GUI (Philip Kaufmann)
2015-08-04[Qt] replace wifi icon with network symbolMarco
2015-08-04[QT] cleanup iconsMarco
* Cleanup SVG code * Unify design ("Typicons" seem to have round edges) * Fix transparency issue with clock5.png
2015-07-31qt: Introduce PlatformStyleWladimir J. van der Laan
Introduce a PlatformStyle to handle platform-specific customization of the UI. This replaces 'scicon', as well as #ifdefs to determine whether to place icons on buttons. The selected PlatformStyle defaults to the platform that the application was compiled on, but can be overridden from the command line with `-uiplatform=<x>`. Also fixes the warning from #6328.
2015-07-28qt: use CHashWriter also in SignVerifyMessageDialogPavel Vasin
This eliminates unnecessary copying of data being hashed.
2015-07-27Merge pull request #5697Wladimir J. van der Laan
60c8bac Includes: Cleanup around net main and wallet (Jorge Timón) 9dd793f TRIVIAL: Missing includes (Jorge Timón)
2015-07-24[Qt] allow users to set -onion via GUIPhilip Kaufmann
- also allow users to see, if the default proxy (-proxy) is used for reaching peers via IPv6 or Tor
2015-07-23build: fix building against qt5.4/5.5Cory Fields
2015-07-23Includes: Cleanup around net main and walletJorge Timón
-Move from .h to .cpp: in main, net and wallet -Remove unnecessary #include "main.h" -Cleanup some wallet files includes
2015-07-23TRIVIAL: Missing includesJorge Timón
2015-07-20Add logic to track pubkeys as watch-only, not just scriptsMatt Corallo
2015-07-20Add have-pubkey distinction to ISMINE flagsMatt Corallo
This indicates that, eg, we have a public key for a key which may be used as a pay-to-pubkey-hash. It generally means that we can create a valid scriptSig except for missing private key(s) with which to create signatures.
2015-07-16[Qt] remove std namespace polution from codePhilip Kaufmann
2015-07-15qt: update forgotten emit to Q_EMIT in macdockiconhandler.mmWladimir J. van der Laan
Leftover from #6433
2015-07-15qt: define QT_NO_KEYWORDSWladimir J. van der Laan
QT_NO_KEYWORDS prevents Qt from defining the `foreach`, `signals`, `slots` and `emit` macros. Avoid overlap between Qt macros and boost - for example #undef hackiness in #6421.
2015-07-10Merge pull request #6384Wladimir J. van der Laan
15e26a6 qt: Force TLS1.0+ for SSL connections (Wladimir J. van der Laan)
2015-07-07[Qt] constify foreach uses where possiblePhilip Kaufmann
- this doesn't replace BOOST_FOREACH, it just makes used arguments const where possible
2015-07-06qt: Force TLS1.0+ for SSL connectionsWladimir J. van der Laan
2015-07-01Use real number of cores for default -par, ignore virtual coresWladimir J. van der Laan
To determine the default for `-par`, the number of script verification threads, use [boost::thread::physical_concurrency()](http://www.boost.org/doc/libs/1_58_0/doc/html/thread/thread_management.html#thread.thread_management.thread.physical_concurrency) which counts only physical cores, not virtual cores. Virtual cores are roughly a set of cached registers to avoid context switches while threading, they cannot actually perform work, so spawning a verification thread for them could even reduce efficiency and will put undue load on the system. Should fix issue #6358, as well as some other reported system overload issues, especially on Intel processors. The function was only introduced in boost 1.56, so provide a utility function `GetNumCores` to fall back for older Boost versions.
2015-06-19fix lock issue for QT node diconnect and RPC disconnectnodeJonas Schnelli
2015-06-11[Qt] deselect peer when switching away from peers tab in RPC consolePhilip Kaufmann
2015-06-11[Qt] replace Boost foreach with Qt version peertablemodel.cppPhilip Kaufmann
2015-06-11[Qt] extend rpc console peers tabPhilip Kaufmann
- add node id, ping wait, whitelisted and common height - rephrase some labels to make them easier to understand for users
2015-06-09Merge pull request #6217Wladimir J. van der Laan
51fc672 [Qt] disconnect peers from peers tab via context menu (Philip Kaufmann)
2015-06-04Remove JSON Spirit wrapper, remove JSON Spirit leftoversJonas Schnelli
- implement find_value() function for UniValue - replace all Array/Value/Object types with UniValues, remove JSON Spirit to UniValue wrapper - remove JSON Spirit sources
2015-06-04Convert tree to using univalue. Eliminate all json_spirit uses.Jeff Garzik
2015-06-02[Qt] disconnect peers from peers tab via context menuPhilip Kaufmann
- It is now allowed to disconnect peers from peers tab via right-click context menu. Peers are not permanently banned!
2015-06-01Merge pull request #6183Wladimir J. van der Laan
28bf062 Fix off-by-one error w/ nLockTime in the wallet (Peter Todd)
2015-05-27Fix off-by-one error w/ nLockTime in the walletPeter Todd
Previously due to an off-by-one error the wallet ignored nLockTime-by-height transactions that would be valid in the next block even though they are accepted into the mempool. The transactions wouldn't show up until confirmed, nor would they be included in the unconfirmed balance. Similar to the mempool behavior fix in 665bdd3b, the wallet code was calling IsFinalTx() directly without taking into account the fact that doing so tells you if the transaction could have been mined in the *current* block, rather than the next block. To fix this we strip IsFinalTx() of non-consensus-critical functionality, removing the default arguments, and add CheckFinalTx() to check if a transaction will be final in the next block.
2015-05-26qt: Periodic translation updateWladimir J. van der Laan
2015-05-22Merge pull request #6098Wladimir J. van der Laan
cc24610 Update Windows resource files (and add one for bitcoin-tx) (Luke Dashjr)
2015-05-22Update Windows resource files (and add one for bitcoin-tx)Luke Dashjr
2015-05-20Merge pull request #6160Wladimir J. van der Laan
16d9cb7 [QT] overviewpage: make sure warning icons gets colored (Jonas Schnelli)
2015-05-19[QT] mainwindow toolbar must not be movableJonas Schnelli
2015-05-19[QT] overviewpage: make sure warning icons gets coloredJonas Schnelli
2015-05-19qt: fix unused function warning in scicon.cppWladimir J. van der Laan
Enclose MakeSingleColorImage in an anonymous namespace to avoid a unused function warning on Windows and MacOSX. Github-Pull: #6143
2015-05-15qt: translations updateWladimir J. van der Laan
2015-05-14Merge pull request #5964Gavin Andresen
9a1dcea Use CScheduler for net's DumpAddresses (Gavin Andresen) ddd0acd Create a scheduler thread for lightweight tasks (Gavin Andresen) 68d370b CScheduler unit test (Gavin Andresen) cfefe5b scheduler: fix with boost <= 1.50 (Cory Fields) ca66717 build: make libboost_chrono mandatory (Cory Fields) 928b950 CScheduler class for lightweight task scheduling (Gavin Andresen) e656560 [Qt] add defaultConfirmTarget constant to sendcoinsdialog (Philip Kaufmann)
2015-05-14Create a scheduler thread for lightweight tasksGavin Andresen
2015-05-14[Qt] add defaultConfirmTarget constant to sendcoinsdialogPhilip Kaufmann
- replaces some hard-coded values for the default confirmation target - also simplify code that is using the new constant
2015-05-14Merge pull request #6110Wladimir J. van der Laan
ca5f688 [QT] don't colorize icons on win and mac (Jonas Schnelli) 7247d10 [QT] use alert icon with tooltip insted of "(out of sync)" text (Jonas Schnelli) 51c7c70 [QT] remove frame to avoid double-frame situation in sendcoinsentry.ui (Jonas Schnelli) 2a6b844 [QT] change transaction amount and height in overview page (Jonas Schnelli)
2015-05-13[QT] don't colorize icons on win and macJonas Schnelli