Commit Graph

649 Commits

Author SHA1 Message Date
Dmitri Bogomolov 9ef928b4a9
Removed extra call of shared.thisapp.cleanup() in bitmessageqt 2018-11-01 11:32:14 +02:00
Dmitri Bogomolov ff04bf072e
Allow re-call of MyForm.quit() if user selected to wait at first 2018-11-01 11:32:14 +02:00
Dmitri Bogomolov 4383b49be8
flake8 for bitmessageqt.MyForm.quit() 2018-11-01 11:32:14 +02:00
Dmitri Bogomolov a1a8d3a05d
Fixed undesirable log_level replacement in depends 2018-07-30 11:48:11 +03:00
Dmitri Bogomolov 996a48f298
Confirmation for network switch 2018-07-22 12:10:13 +03:00
Dmitri Bogomolov 2504c80da6
Fix an issue from #1153 for setup without plugins package 2018-07-01 12:18:12 +03:00
Dmitri Bogomolov c7d3784b80
No need to import namecoin early because it's really used only in Qt UI 2018-06-30 16:11:11 +03:00
Dmitri Bogomolov da8e7a246e
Returning bitmessageqt package back to normal
reverting all changes to __init__
2018-06-26 13:34:29 +03:00
coffeedogs e5e9f70c2a
Fixed: Code style and lint issues 2018-06-15 12:54:41 +01:00
coffeedogs d9f0a8708b
Fixed: Chan-provided diff to revert changes from boolean operators to any()/all(). Closes #1277. 2018-06-15 12:25:10 +01:00
coffeedogs 9263026bc8
Fixed: Addressed issues raised in PR 2018-05-17 10:51:21 +01:00
coffeedogs da87ae24ee
Fixed: Style and lint violations in src/bitmessageqt/__init__.py 2018-05-15 16:20:53 +01:00
Dmitri Bogomolov 2268413cd0
Do not try to connect namecoin if dontconnect set in config (#1146) 2018-03-26 16:47:22 +03:00
Dmitri Bogomolov 9ccd3a0989
Prevent settingsDialog from setting dontconnect = false
if "Work offline" was checked in the ConnectDialog
2018-03-22 17:10:29 +02:00
Dmitri Bogomolov 3850a920c9
Do not add gui.menu plugins with prefix 'address' to "All accounts" item 2018-03-13 13:46:47 +02:00
Dmitri Bogomolov 08a2115412
Properly renamed qrcode plugin module and made menu available
for all address entries except for addressbook and blacklist
2018-03-13 13:46:47 +02:00
Peter Šurda 1e4400a207
Remove obsolete code
- PendingDownload and PendingUpload in inventory.py are obsolete
- the replacement functions only provide lengths and are in
  network/stats.py
2018-03-13 07:32:23 +01:00
Peter Šurda 616920e21a
Minor UI fixes
- typo in UTF conversion
- update status message correct matching (does not show all messages as
changed status, for example)
- add newly sent messages to global sent folder if selected
2018-02-18 19:39:26 +01:00
Peter Šurda cf8ed36240
Windows Qt refactoring fix 2018-02-09 11:11:48 +01:00
Peter Šurda 066b419e16
Bugfixes
- typo in dandelion
- stealth ackdata fix for broadcasts and mailing lists
2018-02-09 00:49:08 +01:00
Peter Šurda c6834093ee
QT sqlite conversion fix
- QByteArray will be stored as str in the db
2018-02-06 23:55:41 +01:00
Dmitri Bogomolov d083c53e1b
New button "Clear" on tab "Send" to clear all fields (#919) 2018-02-06 21:07:01 +02:00
Dmitri Bogomolov 4a3f8f4806
Change unread status of message in "All Accounts"
when it changed in "Chans" and vice versa (#1044, #884)
2018-02-06 15:48:56 +02:00
Dmitri Bogomolov 85cce42de0
Update "Network Status" information only when the tab selected 2018-02-05 14:39:32 +02:00
Dmitri Bogomolov 25a9e5ea45
Fixed errors I introduced in commit 4115540 after rebase 2018-01-31 20:12:04 +02:00
Peter Šurda 9807d3e4b4
Don't complain about being disconnected if in offline mode 2018-01-30 17:42:10 +01:00
Dmitri Bogomolov afcd83a434
This is probably the right way to handle modal dialogs 2018-01-30 17:27:01 +02:00
Dmitri Bogomolov 41155406d6
Simplified showing statusbar messages:
- Use MyForm.statusbar set in __init__ instead of MyForm.statusBar()
 - MyForm.updateStatusBar() to show the message in MyForm methods
 - queues.UISignalQueue.put(('updateStatusBar', msg)) in dialogs
2018-01-30 17:27:01 +02:00
Dmitri Bogomolov c699f6d872
Got rid of wildcard imports in bitmessageqt.__init__ 2018-01-30 17:27:00 +02:00
Dmitri Bogomolov 641db73614
Removed unused _encoding and _transalate 2018-01-30 17:27:00 +02:00
Dmitri Bogomolov 25876ded2b
Removed unused import of inventory.Inventory 2018-01-30 17:27:00 +02:00
Dmitri Bogomolov cd88d063a1
Imported NewChanDialog into dialogs module 2018-01-30 17:26:59 +02:00
Dmitri Bogomolov 35a11c271a
Moved NewAddressDialog into dialogs module 2018-01-30 17:26:59 +02:00
Dmitri Bogomolov 8109fa7ece
Moved EmailGatewayDialog (with both usage) into dialogs module 2018-01-30 17:26:59 +02:00
Dmitri Bogomolov fe76d230eb
Moved RegenerateAddressesDialog into dialogs module 2018-01-30 17:26:58 +02:00
Dmitri Bogomolov b899086d91
Followed the recommendation #527 about tab indexes 2018-01-30 17:26:58 +02:00
Dmitri Bogomolov 62a930c374
Moved SpecialAddressBehaviorDialog into dialogs module 2018-01-30 17:26:57 +02:00
Dmitri Bogomolov c965a1d2aa
Moved helpDialog and connectDialog also into dialogs module 2018-01-30 17:26:51 +02:00
Dmitri Bogomolov e2e7e16ab7
Moved aboutDialog and iconGlossaryDialog also into dialogs module 2018-01-30 17:26:42 +02:00
Dmitri Bogomolov d9d9f9d787
Returned AddAddressDialog and NewSubscriptionDialog into dialogs module
where it's been initialized by loading the ui-files.
2018-01-30 16:59:51 +02:00
Dmitri Bogomolov 81c80aa98f
Use AddAddressDialog for "Add sender to your Addres Book" context menu 2018-01-30 16:59:51 +02:00
Dmitri Bogomolov 25ef9fec51
Added menu entry "File -> Go offline/Go online" switching dontconnect
config variable and "Work offline" option to connectDialog.
2018-01-30 14:04:03 +02:00
Peter Šurda cc63c1270b
Fix message content display after deleting/undeleting 2018-01-28 16:13:07 +01:00
Peter Šurda aabce6bab2
Fix selection after delete/undelete 2018-01-28 12:48:25 +01:00
Peter Šurda 08ac8a077b
Merge branch '1062' into v0.6 2018-01-28 10:41:09 +01:00
Peter Šurda ff92cc30c8
Fix previous commit (UI deleting optimisation) 2018-01-28 09:16:37 +01:00
Peter Šurda 0f61ed9f19
Optimise UI deleting and undeleting multiple messages
- use sqlExecuteChunked and disable UI updates while removing entries
2018-01-28 08:12:46 +01:00
Dmitri Bogomolov 6fca1631af
Made use of helper_sql.sqlExecuteChunked() also in on_action_InboxMarkUnread 2018-01-25 23:22:15 +02:00
Dmitri Bogomolov 80fdb08f03
Made use of helper_sql.sqlExecuteChunked() in the on_action_MarkAllRead 2018-01-25 23:04:38 +02:00
Dmitri Bogomolov 0097ea6476
The condition which is always False causes critical error #1081 2018-01-25 14:29:25 +02:00
Peter Šurda 1864762a0a
Apply bandwidth limits without restart
- also minor style fixes
2018-01-01 12:49:08 +01:00
Peter Šurda 3b86dfc639
Log missing indicator plugin 2017-12-02 00:45:01 +01:00
Peter Šurda 6c224447a6
Minor fixes that came over BM
- typo in quit confirmation dialog
- nicer traceback in unhandled exceptions
2017-11-30 19:44:03 +01:00
Dmitri Bogomolov 8fcdf51e57
One more unicode related exception - when editing a contact label 2017-10-19 18:43:41 +03:00
Dmitri Bogomolov 9cffd50de8
Fixed statusbar message on error in namecoin name search 2017-10-17 11:37:50 +03:00
Dmitri Bogomolov 59d1309a9e
Fixed typo when closing tempfile in bitmessageqt.__init__ 2017-10-17 11:25:33 +03:00
Dmitri Bogomolov 9dae77dd2b
Quiet Mode (i.e. turn off notification) in tray menu 2017-10-16 19:30:12 +03:00
f97ada87 be0e724b23
implement stealth ack objects 2017-09-30 19:45:40 +10:00
Dmitri Bogomolov 1f47a4060e
Added "Set notification sound..." context menu on addressbook entry. 2017-09-20 10:21:27 +03:00
Dmitri Bogomolov c8a47b988f
Moved "Ubuntu" MessagingMenu code into indicator_libmessaging plugin 2017-09-20 10:21:27 +03:00
Dmitri Bogomolov cd81718871
Moved sound category constants to the separate module `sound`
for importing from the sound theme plugins.
2017-09-20 10:21:27 +03:00
Dmitri Bogomolov 289a6c5bfa
Added support for sound notification plugins which use
the desktop sound theme, with pycanberra for example. Plugin name should
start with 'theme' in that case, whereas the name of plugins playing the
sound file starts with 'file'.
2017-09-20 10:21:27 +03:00
Dmitri Bogomolov be716bf228
Improved and documented plugin module 2017-09-20 10:21:27 +03:00
Dmitri Bogomolov ef8f40ccc4
Moved notifications to plugins (including sound) 2017-09-20 10:21:27 +03:00
Peter Šurda 7e35ea6bdf
Email gateway autoregistration fixes
- don't treat "@" in label as an email address
- ask for confirmation before autoregistering. It confused some
newbies into thinking that bitmessage requires payment
2017-08-24 14:16:37 +02:00
Peter Šurda 7f06cb7c27
Inventory flush fix in GUI
- Fixes #1011
2017-06-10 10:10:59 +02:00
Dmitri Bogomolov e6f0b34f9b
Fixed some inconvenience on first run mainly in Ubuntu.
- immediately return from initCL() if numpy or pyopencl is unevailable
   (no ImportError because of resetPoW() call)
 - use glob to find C extension even if it named like
   `bitmsghash.x86_64-linux-gnu.so`

If user chooses to show the Settings dialog:

 - activate the "Network Settings" tab
 - remove option 'dontconnect' if settings have been saved
2017-04-05 14:25:02 +03:00
Peter Šurda 1af49a0165
Download tracking refactoring
- replace PendingDownload singleton dict with a Queue
- total memory and CPU requirements should be reduced
- get rid of somObjectsOfWhichThisRemoteNodeIsAlearedyAware. It has very
little practicle effect and only uses memory
2017-03-19 22:08:00 +01:00
Dmitri Bogomolov ee7e630694
Show a dialog with QR-code for selected bm-address 2017-03-06 18:00:23 +02:00
Dmitri Bogomolov 9836206402
Missed translations: namecoin and welcom message 2017-03-05 23:07:18 +02:00
Peter Šurda 8d829b587e
Reset OpenCL when settings change
- previously, changing the OpenCL vendor (or turning it on/off) required
  a restart and this wasn't clear
2017-02-28 22:59:44 +01:00
Peter Šurda eaafb9efa5
Listening port shouldn't be grey 2017-02-28 22:04:34 +01:00
Peter Šurda 741ac5ca05
UPnP recommendation notification fixes
- notify also if no connections and no change
2017-02-27 16:18:22 +01:00
Peter Šurda ff786725ed
Typo
- UPnP / connectivity recommendation was active when on proxy rather
  than without
2017-02-27 16:12:19 +01:00
Peter Šurda cd0972c0f3
Recommend enabling UPnP on network problems
- it looks like there aren't enough listening nodes
- if connection is dropped, notify non-proxy users about the UPnP option
2017-02-27 15:30:19 +01:00
Peter Šurda cff1af1b4f
Subscription wrong tab
- when subscribing from addressbook, it switched to blacklist tab
  instead of subscriptions
2017-02-26 20:03:47 +01:00
Peter Šurda d7076626c2
TTL label is in red and warning when too low
- TTL to chans shouldn't be too low so the UI gives a feedback
- warning when sending wouldn either require a lot of refactoring or
  wouldn't have good usability
2017-02-22 16:07:39 +01:00
Peter Šurda 6062277d60
Rename configparser.py to bmconfigparser.py
- it was causing problems with py2app because the source of python's own
  CongigParser is also configparser.py
2017-02-22 09:34:54 +01:00
Justin Ramos fd95f8f519
allowing for max outbound connection configuration
Signed-off-by: Justin Ramos <justin.ramos@gmail.com>
2017-02-21 16:28:54 -06:00
Peter Šurda f499a3b1d8
Typo 2017-02-14 13:57:20 +01:00
Peter Šurda a4b1a781ce
Minor UI fixes
- "new" folder consistently appears in chans and "All accounts"
- "Sent" message list sorting fix
- When editing a label, keys.dat is saved and the lineEdit completer
  is updated
- addressbook is updated when adding/deleting a new chan
2017-02-14 01:35:32 +01:00
Peter Šurda d8ae44f9ee
Obsolete imports, missing exception type 2017-02-09 21:04:07 +01:00
Peter Šurda c778b81427
knownNodes refactoring and shutdown fixes
- saveKnownNodes replaced the repeated pickle.dump
- with knownNodesLock instead of acquire/release
- outgoingSynSender had an unnecessary loop during shutdown causing
  excessive CPU usage / GUI freezing
2017-02-09 11:53:33 +01:00
Peter Šurda 157881bc63
Cyclic import fix
- networkDefaultProofOfWorkNonceTrialsPerByte and
  networkDefaultPayloadLengthExtraBytes cyclic import fix
- PyBitmessage should launch now when there's no keys.dat
2017-02-08 20:37:42 +01:00
Peter Šurda 59f3a2fbe7
Reduce cyclic dependencies
- rearranged code to reduce cyclic dependencies
- doCleanShutdown is separated in shutdown.py
- shared queues are separated in queues.py
- some default values were moved to defaults.py
- knownnodes partially moved to knownnodes.py
2017-02-08 13:41:56 +01:00
Peter Šurda a381f75b4b
Git head information in version
- About dialog now shows the git head
- git head check has been improved to point to the head rather than the
  previous commit
2017-02-07 20:46:30 +01:00
Peter Šurda 6b65dfeeec
MarkAllUnread sqlite argument limit
- shouldn't crash anymore if there are too many messages to mark read
2017-02-07 16:38:02 +01:00
Peter Šurda 5ae1327edc
Download/upload shutdown fixes
- Missing renamed to PendingDownload
- PendingDownload now only retries 3 times rather than 6 to dowload an
  object
- Added PendingUpload, replacing invQueueSize
- PendingUpload has both the "len" method (number of objects not
  uploaded) as well as "progress" method, which is a float from 0
  (nothing done) to 1 (all uploaded) which considers not only objects
  but also how many nodes they are uploaded to
- PendingUpload tracks when the object is successfully uploaded to the
  remote node instead of just adding an arbitrary time after they have
  been send the corresponding "inv"
- Network status tab's "Objects to be synced" shows the sum of
  PendingUpload and PendingDownload sizes
2017-01-19 19:48:12 +01:00
Peter Šurda 9ed59dd825
Shutdown procedure cleanup 2017-01-16 23:38:18 +01:00
Peter Šurda 805f72e098
Make objects to be send stoppable if not empty 2017-01-15 22:21:19 +01:00
Peter Šurda f079ff5b99
Refactor objects to be downloaded
- moved logic into a Missing singleton
- shouldn't try to download duplicates anymore, only requests a hash
  once every 5 minutes and not from the same host
- removed obsoleted variables
- the "Objects to be synced" in the Network tab should now be correct
- removed some checks which aren't necessary anymore in my opinion
- fix missing self in Throttle (thanks landscape.io)
2017-01-15 19:21:24 +01:00
Peter Šurda 8cb0953401
Moved writeKeysFile into configparser
- shared.writeKeysFile -> BMConfigParser().save
- makes it easier to get rid of circular imports
2017-01-15 10:50:02 +01:00
Peter Šurda 5ca8a52662
Typos, extra imports and similar
- pointed out by landscape.io
- also updated dev/ssltest.py to work the same way as the main program
2017-01-15 10:48:29 +01:00
Peter Šurda 689d697a40
Refactor bandwidth limit and speed calculator
- also fixes potential deadlocks
2017-01-14 23:21:00 +01:00
Peter Šurda ff8deebf60
Keep track of network protocol status 2017-01-12 19:18:56 +01:00
Peter Šurda c738d93056
Assorted fixes
- landscape.io was complaining, this fixes most easily fixable errors
2017-01-11 18:13:00 +01:00
Peter Šurda ac348e4e6b
Fixes and refactoring
- fixes errors introduced in the earlier refactoring
- more variables moved to state.py
- path finding functions moved to paths.py
- remembers IPv6 network unreachable (in the future can be used to skip
  IPv6 for a while)
2017-01-11 17:00:00 +01:00
Peter Šurda 8bcfe80ad0
Refactoring of config parser and shared.py
- got rid of shared config parser and made it into a singleton
- refactored safeConfigGetBoolean as a method of the config singleton
- refactored safeConfigGet as a method of the config singleton
- moved softwareVersion from shared.py into version.py
- moved some global variables from shared.py into state.py
- moved some protocol-specific functions from shared.py into protocol.py
2017-01-11 14:27:19 +01:00
Peter Šurda e84b19613e
Inventory refactoring
- minor refactoring, made it into singleton instead of a shared global
  variable. This makes it a little bit cleaner and moves the class into
a separate file
- removed duplicate inventory locking
- renamed singleton.py to singleinstance.py (this is the code that
  ensures only one instance of PyBitmessage runs at the same time)
2017-01-10 21:15:35 +01:00
Peter Šurda fefb959338
Notify if C PoW missing
- Linux users often don't know that the C PoW is available and complain
  it's slow. This will try to build it, and adds availability
  notification in the status bar
- also, the updateStatusBar signal now allows emphasised notifications,
  which will remain visible for a longer period of time and also
  reappear if a status change happened in the meantime
2016-12-15 16:11:29 +01:00