Commit Graph

826 Commits

Author SHA1 Message Date
689d697a40
Refactor bandwidth limit and speed calculator
- also fixes potential deadlocks
2017-01-14 23:21:00 +01:00
ad75552b5c
Move shutdown from shared.py to state.py 2017-01-14 23:20:15 +01:00
8d278182a7
Indentation 2017-01-13 15:53:47 +01:00
93bdc3c800
Remove extra print 2017-01-13 12:32:26 +01:00
d0b1cbfe1f
Add current git HEAD info to support request 2017-01-13 12:29:14 +01:00
5ae676f2ad
Minor support fix 2017-01-13 12:05:39 +01:00
6778d6046f
Add OpenSSL 1.1.0 compatibility
- thanks to Wolfgang Frisch <wfr@roembden.net>
2017-01-13 12:02:34 +01:00
ff8deebf60
Keep track of network protocol status 2017-01-12 19:18:56 +01:00
c738d93056
Assorted fixes
- landscape.io was complaining, this fixes most easily fixable errors
2017-01-11 18:13:00 +01:00
fa0a3135e7
Fixes pointed out by landscape.io
- missing/wrong/obsolete imports
- logger formatting
2017-01-11 17:26:25 +01:00
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
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
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
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
025950c05e
Fix locale init
- date/time wasn't localised correctly on startup
2016-12-13 11:54:01 +01:00
fbc9886eda
OpenCL settings saving fix 2016-11-15 17:06:56 +01:00
612333a267
Enable support for extended encoding
- receiving extended encoding now works
- sending works from the GUI by pressing "Shift" while clicking on
  "Send"
- requires https://pypi.python.org/pypi/msgpack-python
2016-11-14 20:23:58 +01:00
54e3465575
HTML parser queue flush fix
- the queue wasn't correctly flushed
2016-11-14 20:19:26 +01:00
4af788e963
Placeholder proxy text
- based on what tor you're probably using (9150 for OSX and Windows,
  9050 for others)
2016-11-12 15:41:58 +01:00
e9a3ef465c
OpenCL vendor selector
- when you have multiple OpenCL drivers at the same time, e.g. intel and
  nvidia, they won't mix leading to crashes. This patch makes it
  possible to select which driver to use by listing the available
  vendors
2016-11-10 21:43:10 +01:00
a7f3afe5a6
Typo 2016-11-05 00:46:07 +01:00
3d4869851e
Many changes on chan create/join dialog
- refactored to use the .ui file
- input logic change, address is always optional
- interactive input validation
- runs asynchronously to the main window
- address generator thread can now validate chans in addition to just
adding them
2016-10-28 22:07:16 +02:00
5c9bfe09a2
Parser queue flushing
- the parser queue wasn't flushed when there's an exception resulting in
  the wrong message being displayed selected
2016-10-27 23:09:31 +02:00
781ea8a8a6
Typo 2016-10-26 02:19:26 +02:00
30d9de008f
Label change fix
- when changing an addressbook label using UTF-8, the correspnding
  messagelist label was garbled
2016-10-25 07:54:52 +02:00
a3584bb141
"From" combobox empty fix
- if label of your address is empty, the "From" combo box showed an
  empty entry (just the identicon). Now it shows the address instead
- fixes #898
2016-10-25 02:51:09 +02:00
b0d1ed8304
Make clear that address error message refer to the recipient
- a user report indicated there is confusion about address error
messages. He/she thought it refers to the sender address, however it
refers to the recipient address. This makes it more clear
2016-10-24 22:33:13 +02:00
ad0d2c375a
Recipient address error message status bar unicode fix
- when reporting an error about recipient address in the status bar, it
didn't correctly handle unicode
2016-10-24 22:31:54 +02:00
2c972fbe41
"Fetch Namecoin ID" button font size fixed 2016-10-24 22:29:14 +02:00
671f321ead
HTML parser fix
- the UTF-8-ifying of tags had missing brackets
2016-10-23 18:35:20 +02:00
c335ef7d10
HTML parser fix
- sometimes, a tag attribute name is UTF-8, sometimes it isn't. This
  change makes it handle both
2016-10-23 09:02:27 +02:00
32f1e0447a
Multiprocessing PoW fixes and improvements
- the multiprocessing PoW should now work correctly
- it also should be interruptible correctly and the GUI will ask about
  it during exit
2016-10-22 05:00:35 +02:00
9dd09a44fc
Message list loading performance improvement
- by disabling UI updates (which are not necessary as it freezes
  anyway), the message list loading is faster
2016-10-22 01:47:29 +02:00
47e2df86b9
Freezing message parser fix #2
- this has been tested on Windows as well, and has been cleaned up.
  There is now a permanent parser thread, and it restarts when the
  parsing takes more than 1 second
- Fixes #900
2016-10-22 01:45:32 +02:00
8f194296e7
Long message parsing fix
- while 448ceaa74c fixed slow rendering on
  windows, there was still a bug where overly long messages caused
  freezeing of the hyperlink regexp parser, which appears to happen on
  all platforms. Maybe it's a freeze, maybe it just takes too long. This
  patch aborts the regexp parser after 1 second and simply displays the
  message without hyperlinks being clickable. This doesn't affect HTML
  mode because there the links are kept as they are
- Fixes #900
2016-10-21 15:54:02 +02:00
2067040ff1
MessageView localisation fix 2016-10-20 20:38:21 +02:00
448ceaa74c
Line wrap performance workaround
- some messages (e.g. some long messages on Windows, or binary data)
  cause an excessive amount of time in rendering the body. This
  change is base on a workaround I found at
  http://www.qtcentre.org/threads/8188-bug-setLineWrapMode
2016-10-20 20:26:53 +02:00
96212693b2
Message does not need plurals 2016-10-20 16:54:25 +02:00
3a1d581c9e
Multiple UI status updates
- most status messages are transient, so they are now only displayed for
  10 seconds
- when trying to quit while disconnected or not fully synced, a
  three-choice message box now appears: Yes for waiting, No for
  closing anyway, and Cancel for aborting the shutdown procedure
2016-10-20 16:06:46 +02:00
e1dd29bfd1
Copyright UTF8 character fix
- this copyright character has been plaguing pylupdate4 parser and
  multiple unsuccessful attempts have been made and then reverted.
  Replaced with a HTML entity, hopefully this will finally fix it.
2016-10-20 02:50:00 +02:00
Marius Ghita
7aecb4aad1 Hide connection notifications configuration option
New option on the User Interface settings tab, to hide connection
notification messages.
2016-10-11 19:14:06 +02:00
9590f83820
Typo
- see
  e6ce73f4bd (commitcomment-19344095)
2016-10-08 10:01:34 +02:00
1b03b535cf
Translation source fix 2016-10-05 20:49:32 +02:00
739d46004c
Translation source fix 2016-10-05 20:29:42 +02:00
e6ce73f4bd
Multiple PoW updates
- fixes "fast python" (multiprocessing) PoW
- python PoW (both slow and fast) interruptible on *NIX
- signal handler should handle multiple processes and threads correctly
(only tested on Linux)
- popul window asking whether to interrupt PoW when quitting QT GUI
- PoW status in "sent" folder fixes and now also displays broadcast
status which didn't exist before
- Fixes #894
2016-10-05 20:06:47 +02:00
2616a9d4c1
Fix PyGI warnings
- Partially addresses #893
2016-08-27 21:47:40 +08:00
c58c1969e5
Increase width of TTL slider
- horizontal slider was too narrow and unusable on the latest Fedora.
  Increased size and tested at 800x600 to make sure it's not too wide
  now.
2016-08-21 07:23:46 +02:00
67c3d7bbca
Add "Mark all messages unread" context menu item
- account context menu how has a "Mark all messages unread" item
- folders now have a context menu as well and it has this item too
2016-08-20 22:38:36 +02:00
ca031dc421
More namecoin fixes
- namecoin lookup now also includes name of the record in the recipient
  field
- namecoin lookups now support multiple semicolon-separated
  recipients like the other recipient-related functions. If there are
  multiple recipients, namecoin lookup will look up the last entry on
  the line, for example if you have "a; b; c" in the recipient line,
  it will lookup "c"
2016-08-17 22:02:41 +02:00
306a2495e0
Recipient label UTF-8 fix
If recipient label had UTF-8 characters, clicking Send would trigger a
decoding error and woudln't send.
2016-08-14 12:56:28 +02:00
de2fb17959
Keep system language when changing settings
- when language was set to "system settings" and you changed any setting
  while BM was running, it switched the language to English.
2016-08-14 12:01:00 +02:00
cec2233043
Fix about dialog
- Last commit broke the about dialog, this fixes it again.
2016-06-17 19:58:16 +02:00
d9ca8d1e5e
Fix UTF8 character in translation source
- "About" dialog did not correctly interpret source UTF-8 characters
2016-06-16 14:06:36 +02:00
65211703c0
Try UTF-8 locale encoding
- setlocale didn't always try UTF-8, and on systems that only had UTF-8
  encoding of the selected locale, this would fail to change locale

Fixes #872
2016-06-14 21:57:40 +02:00
e353af3195
Locale encoding fixes
On non-Windows, setlocale will try both normalised and preferred
encoding.
2016-05-24 08:44:07 +02:00
6dff105a5b
Unread count and subscriptions
- unread count was optimised (based on profiling)
- unread count is now accurate
- listing subscription messagelists and count fixed
2016-05-23 11:11:44 +02:00
aabf600c38
Fix incorrectly resolved merge conflicts
Two file merge conflicts, __init__.py and upnp.py, were not resolved
correctly by the automatic resolving (probably because the affected code
was written by other people and I merged them into mailchuck fork). This
changes it to the same code that is in the mailchuck fork)
2016-05-02 17:10:45 +02:00
mailchuck
b724d3ee4f Copyright year updates 2016-05-02 15:00:26 +02:00
mailchuck
444edbd6a3 Subscription folder loading fix 2016-05-02 15:00:26 +02:00
mailchuck
9193c2070e Labels when replying
If present, a label will be included in the reply line edit.
2016-05-02 15:00:26 +02:00
mailchuck
4013bd31fd Time & date Windows encoding
On Windows, the encoding was always the default windows encoding and
didn't change when you use a language in BM that required a different
encoding. This affected mainly date & time in the received column and
the startup info on the network status tab.
2016-05-02 15:00:26 +02:00
mailchuck
88678eab3a Sent table header
Inbox/Sent table header for the last column now adjust (previously, both
were "Received", now the latter is "Sent).
2016-05-02 15:00:26 +02:00
mailchuck
5afdc052ff Retranslate fix
Update identities tree context menu on language change.
2016-05-02 15:00:26 +02:00
mailchuck
58481afda2 Completer unicode fixes 2016-05-02 15:00:26 +02:00
mailchuck
46edb72b4f Send from addressbook label
When choosing an item from addressbook to send to, put both label and
address into the lineEditTo widget.
2016-05-02 15:00:26 +02:00
mailchuck
98313d594f Sender autocompletion
Sender autocompletion now works, and is based on the l labels in the
addressbook (i.e. all addressbook entries, all subscriptions and chans).

Repurposed C code from
https://stackoverflow.com/questions/21773348/how-to-force-qcompleter-to-check-second-word-in-qlineedit
2016-05-02 15:00:26 +02:00
mailchuck
b8667864f5 Addressbook exception fix
The avatar was throwing an exception.
2016-05-02 15:00:26 +02:00
mailchuck
94d5eeb16f Unread count fixes 2016-05-02 15:00:26 +02:00
ad6d55cebe Translations update
- TTL hours/days now has correct plurals/paucals
- TTL description updates better when changing language (was "X days")
- language sources updated
2016-05-02 15:00:26 +02:00
658d52fb4f TTL/Send tab fixes
Now stretches correctly and does not unnecessarily shorten the text.
2016-05-02 15:00:26 +02:00
mailchuck
ddb48cad86 Typo 2016-05-02 15:00:26 +02:00
e8b1e1adcf Localisation update
The plural/paucal form support was not compatible with pylupdate4, it
didn't correctly parse the 3-argument calls to translate.

This fixes it, and updates the sources accordingly.
2016-05-02 15:00:26 +02:00
mailchuck
360d41792c Tab labels
Network status and Blacklist labels fix.
2016-05-02 15:00:26 +02:00
mailchuck
cb1c8157fe Objects to be synced timer
Now updates together with bandwidth every 2 seconds.
2016-05-02 15:00:26 +02:00
mailchuck
b7fefb3c40 Windows locale fix
Python locales (e.g. for time and date) didn't work on Windows.
2016-05-02 15:00:26 +02:00
92e3e62640 Locale fix
Date formatting sometimes didn't use the correct locale encoding
2016-05-02 15:00:26 +02:00
mailchuck
c29f266020 Translation fixes
- locale name is properly normalised rather than simply changing the
string
- translations now support plurals/paucals
- networkstatus updated
2016-05-02 15:00:26 +02:00
38700a1721 Network Status tab translations update
- remembers startup time
- kB instead of KB
- stream table and status texts scale and aren't cut if they translated
text doesn't fit
2016-05-02 15:00:25 +02:00
af098e4805 Locale for non-QT UI strings
Some parts of strings did not use the proper locale. For example, date
and time strings was always output with the US locale. This fixes it.
There are still some cases where localisation is not implemented, and
could be changed from str(string) to locale.str(string).
2016-05-02 15:00:25 +02:00
0507411696 Shutdown fix
The GUI shutdown changes sometimes caused freezes on linux.
2016-05-02 15:00:25 +02:00
mailchuck
3dbb4d5ce9 GUI shutdown improvements
- it shows that it needs to wait for PoW to finish
- it waits a bit for new objects to be distributed
- it displays a better progress indicator in the status bar

Previously, people who don't understand how PyBitmessage works sometimes
shut it down immediately after they wrote a message. This would have
caused the message to be stuck in the queue locally and not sent. Now,
it will indicate that the PoW still needs to work, and it will wait a
bit longer so that the message can spread. It's not a completely correct
approach, because it does not know whether the message was really
retrieved after the "inv" notification was sent.
2016-05-02 15:00:25 +02:00
mailchuck
167da731d0 Make new version notifications less intrusive
Now only in status bar and no more popup window.

Previously, it only showed once until a restart, but now it shows every
time it detects a new version online. Since it does not show a popup
window it's not a big deal.
2016-05-02 15:00:25 +02:00
70e06c33f6 Remove some debugging
Language loading debugging not necessary.
2016-05-02 15:00:25 +02:00
fd4329bee0 Refactor localisation
The language combo box is generated dynamically from the list of
available translations in the translations directory. This allows the
users to add their own translations without having to change the code.
2016-05-02 15:00:25 +02:00
d46fd6f486 Translation fix
Plural form fix
2016-05-02 15:00:25 +02:00
ca11852632 Translation source update
NewSubscriptionDialog missing string updated.
2016-05-02 15:00:25 +02:00
baff42f578 Typo
String typo, also updated translation source.
2016-05-02 15:00:25 +02:00
e9f62efa4b Default compose body "untranslate"
There is no reason to retranslate the default message/broadcast body,
and the default was just confusing HTML with no content.
2016-05-02 15:00:25 +02:00
c30433cdaa "All accounts" internationalisation fix 2016-05-02 15:00:25 +02:00
412e175f27 Translation updates
Added a RetranslateMixin. Since PyQT does not support automated language
changes of UI files (like the C++ QT does), this implements something
similar. It assumes that the UI file has the same name as the class, but
lowercase.

Added RetraslateMixin to the new blacklist and networkstatus interfaces.
2016-05-02 15:00:25 +02:00
ecfa18b1c6 Change UI loading for frozen 2016-05-02 15:00:25 +02:00
8b605a874a Translation updates
- add missing files into translation definition
- refresh english strings
- change context for "networkstatus"
2016-05-02 15:00:25 +02:00
mirrorwish
554627dd92 Refactor Inventory 2016-05-02 15:00:25 +02:00
mirrorwish
7800272d3a Refactor Blacklist tab 2016-05-02 15:00:25 +02:00
mirrorwish
337cf93b4b Fix byte formatting 2016-05-02 15:00:25 +02:00
mirrorwish
a23022b2db Refactor Network Status tab 2016-05-02 15:00:24 +02:00
mirrorwish
64fce79321 Refactor status icon 2016-05-02 15:00:24 +02:00
mailchuck
4f56e49a30 Unread count refresh updates 2016-05-02 15:00:24 +02:00
mailchuck
8172fce730 Typos 2016-05-02 15:00:24 +02:00
mailchuck
a63f9054f4 Global Sent fix 2016-05-02 15:00:24 +02:00
f8dcb965ea Grammar fix
- Fixes #179
- Thanks to @Erkan-Yilmaz
2016-05-02 15:00:24 +02:00
d63ecfc566 Translation update
- typos
- updated German translation
- Fixes Bitmessage#844
2016-05-02 15:00:24 +02:00
c5363c3c5e Add bitcoin URI handler for message viewer 2016-05-02 15:00:24 +02:00
2e47ab0cd2 Keyboard modifiers with quick navigation
The quick navigation key disrupted keybindings with keyboard modifiers,
like Ctrl-C for copy. This restricts the quick navigation only where no
keyboard modifiers are active.

Fixes #184
2016-05-02 15:00:24 +02:00
a30d5af948 Global Sent and Trash folders 2016-05-02 15:00:24 +02:00
mailchuck
8d8cfe8555 More unicode fixes
Addresses #180
2016-05-02 15:00:24 +02:00
mailchuck
da036c6b6b UTF fixes
Label edits now accept and save utf8 characters.
Addresses #180
Still need to check how it behaves on invalid chars.
2016-05-02 15:00:24 +02:00
mailchuck
47bc85f0b6 Sent folder in chans extended
Previously, it only showed message sent to the selected chan address.
Now it shows both those sent to and sent from the chan address.

Fixes #181
2016-05-02 15:00:24 +02:00
mailchuck
d8aa484b8c Email gateway interface usability improvements
- don't allow status request / settings unless registered already
- if registered, status request is the default selected option

Fixes #182
2016-05-02 15:00:24 +02:00
mailchuck
2adafdaadc Improved URI detector 2016-05-02 15:00:24 +02:00
mailchuck
ed5c8a01ef loadResource incorrect parameters 2016-05-02 15:00:24 +02:00
mailchuck
a79f6cce3b Clipboard copy unicode
Copying unicode subjects to clipboard didn't work.

Fixes #183
2016-05-02 15:00:24 +02:00
113ceb0868 Email links "From"
Clicking email links now sets "From" based on the message the link is
in.
2016-05-02 15:00:24 +02:00
af193a1bca Keybindings
- delete key now works when message body is focused as well
- N for next message (down)
- P for previous message (up)
- R for reply
- C for compose
- F for find
- Find is now dynamic if the search text is least 3 characters long

Fixes Bitmessage#655
Addresses #155
2016-05-02 15:00:24 +02:00
9e2ae4eeb5 Allow close to tray
PyBitmessage can now close to tray. Even though the main code was there,
the UI and config variable were missing.

Fixes Bitmessage#564
2016-05-02 15:00:24 +02:00
b3b69b1eac deleteRowFromMessagelist implementation
Rows are deleted from a message list in multiple places, and this is an
attempt to refactor it so that it is done in one function. It's not used
anywhere yet.
2016-05-02 15:00:24 +02:00
976af4b3cd Empty resource loader for messageview
MessageView does not currently load external resources (QTextBrowser by
default interprets all external resources as local file names and tries
to load them like that. This can, in the future, be implemented. For
example, if SOCKS (Tor) is used, the resource could be loaded through
the SOCKS too.

This commit is a skeleton for it that does not actually do anything and
can be filled with an implementation that does the loading.
2016-05-02 15:00:24 +02:00
96a1726426 Clickable email and http links in plain text
Email addresses and URIs are now clickable when viewing a message in
plain text mode. Clicking an email address moves to the Send tab, while
clicking an URI has the same result as clicking an URI in html mode, it
will ask for confirmation before opening it in external handler.
2016-05-02 15:00:24 +02:00
f27ca0d3d6 HTML parser updates
HTML parser wasn't correctly handling img tags.
Now it also by defaults disabled external schemas to prevent
deanonymisation (even though the renderer actually doesn't support
external schemas at the moment)

Addresses #178
2016-05-02 15:00:24 +02:00
1a92db54c9 Process gateway registration rejections
A message from gateway registration addres regarding registration
rejection is processed and a dialog displayed to get a new email
address.

Fixes #14
2016-05-02 15:00:24 +02:00
6b8f255a60 Email gateway updates
- settings option available
- reduce max TTL to 2 days
2016-05-02 15:00:24 +02:00
2b6bffc7ff Email gateway account status query
- addresses #14
2016-05-02 15:00:24 +02:00
db84d699db Search improvements
- selecting a new folder will apply search
- newly arrived message will consider search
- fixes #166
2016-05-02 15:00:24 +02:00
40f0ff381e blacklist rendering edit fix
Editing of blacklist labels affected the rerendering, because it emits
the changed signal too, and it caused an exception because the address
field was missing at that time. This works around both.
2016-05-02 15:00:23 +02:00
mirrorwish
80c174e417 Save changes to blacklist labels
Fixes mailchuck/PyBitmessage#175

Signed-off-by: Peter Surda <surda@economicsofbitcoin.com>
2016-05-02 15:00:23 +02:00
mailchuck
24a2deed8f Cleanup lockfile on exit
singleton.py design was broken.
Fixed Bitmessage#775
2016-05-02 15:00:23 +02:00
mailchuck
89752faceb Newly arrives messages sorting
There could be cases where newly arrives message is not added correctly.
It won't necessarily go to the top, that depends on the sort.
2016-05-02 15:00:23 +02:00
mailchuck
185d212cb2 Unread count refresh on change 2016-05-02 15:00:23 +02:00
mailchuck
8f1e753cf0 Typo 2016-05-02 15:00:23 +02:00
mailchuck
140b3ddbb8 Test cleanup
Safer this way
2016-05-02 15:00:23 +02:00
mailchuck
66e1a26b33 Popup menu on folders
There are no functions associated with it but sometimes it popped up so
disable it.
2016-05-02 15:00:23 +02:00
mailchuck
7c99899248 updateText was deleted so no need to call it 2016-05-02 15:00:23 +02:00
mailchuck
2dc230db90 Tree rerendering cleanup
Fixes #76
2016-05-02 15:00:23 +02:00
mailchuck
1cc4fac7f4 Unread count cleanup
Addresses #128
2016-05-02 15:00:23 +02:00
mailchuck
f5187e16a0 BlackWhitelist rerendering
It used to show entries with no address.
Fixes #170
2016-05-02 15:00:23 +02:00
mailchuck
aae5b713b1 Disabling subscriptions should rerender addressbook
Addresses #76
2016-05-02 15:00:23 +02:00
mailchuck
4e4da254fa Addressbook / Tree / Messagelist rendering
Some changes that didn't propagate correctly before now do.
Addresses #76
2016-05-02 15:00:23 +02:00
mailchuck
f159133f14 TreeWidget and Addressbook editing propagation
If you change, add or remove an item in a treewidget or addressbook,
messagelists will now autoupdate labels, and sender comboboxes will also
update if applicable.
Fixes #69
2016-05-02 15:00:23 +02:00
mailchuck
e6c379cca6 Scroll/zoom in message composing widget
Fixes #169
2016-05-02 15:00:23 +02:00
mailchuck
a4c48228fc Messagelist subscription color
Fixes Bitmessage#842
2016-05-02 15:00:23 +02:00
mailchuck
484bdb0782 Quoting fixes
Message compose sometimes misinterpreted quoted message as HTML, causing
rendering screwups. Since we don't support HTML composing, we will treat
all quoted messages as plain text.
2016-05-02 15:00:23 +02:00
mailchuck
2597ac63f6 Zooming info percent based an single step
Zooming in message body view / compose works in single steps
irrespective of wheel sensitivity, and info about zoom level is
displayed in percent rather than font pixel size.
2016-05-02 15:00:23 +02:00
mailchuck
d36d6f300e Message body display handling of spaces
After the changes in the message body renderer, spaces were not
correctly handled. Fixes #168
2016-05-02 15:00:23 +02:00
mailchuck
056512a715 Sent folder new message selection fix
Fixes Bitmessage#838
2016-05-02 15:00:23 +02:00
mailchuck
9353e8eff7 Message editor updates
- Does not allow changing fonts (it's ignored once it's sent anyway),
fixes #167
- Allows zooming, fixes #163
2016-05-02 15:00:23 +02:00
e4f31d25fc Flood mitigation optimisation
Flood mitigation was done both in the ObjectProcessorQueue as well as
receiveData threads. This patch removes the mitigation in receiveData
threads and cleans up the one in the ObjectProcessorQueue
2016-05-02 15:00:23 +02:00
mailchuck
c137e334d2 OpenSSL version for support contact form 2016-05-02 15:00:23 +02:00
mailchuck
98fab9c568 Message body focus on reply
Fixes #156
2016-05-02 15:00:23 +02:00
mailchuck
43a765515a Remember current search
@rainulf  What's the reasoning behind resetting the search?

Fixes #155
2016-05-02 15:00:23 +02:00
mailchuck
b699475906 Clicks in empty message shouldn't produce an error 2016-05-02 15:00:23 +02:00
mailchuck
46494dc3e6 "All accounts" can't be renamed
Minor error
2016-05-02 15:00:23 +02:00
mailchuck
f4c2cc5160 Unicode
- subject on replies was not parsed correctly (or should I say was
parsed more than necessary)
- unicode can handle invalid characters without needing a special
function

Fixes #164
2016-05-02 15:00:23 +02:00
mailchuck
962c36e122 Allow zooming of message body
Uses default system zoom settings (Ctrl-Wheel).
Fixes #163
2016-05-02 15:00:23 +02:00
mailchuck
d7ff86705e Fix frozen localisation
Addresses Bitmessage#737
2016-05-02 15:00:23 +02:00
mailchuck
3b30afea29 Messagelist subject class
Messagelist subjects now are their own class. Fixes #153
Also fixes replies/clipboard for gatewayed messages.
2016-05-02 15:00:22 +02:00
mailchuck
0f24fe5a0c Missing import 2016-05-02 15:00:22 +02:00
mailchuck
4647fcb876 Disable label rerendering in messagelist
It's broken and just consumes resources. I'll fix it separately.
2016-05-02 15:00:22 +02:00
mailchuck
e650cff42d (Un)read messagelist items
Previous commits broke them, now it renders correctly again.
2016-05-02 15:00:22 +02:00
mailchuck
4b63c4c086 Address Qt.UserData fix
The previous commit broke places where UserData was read from the
mesagelist line, because it's now a string rather than a QVariant. This
actually simplifies things.
2016-05-02 15:00:22 +02:00
mailchuck
879a6f1d68 Messagelist loads faster
Addresses #149. About 5 times faster.
2016-05-02 15:00:22 +02:00
mailchuck
0b4c57a516 Entries missing in messagelist 2016-05-02 15:00:22 +02:00
69494594d5 Main Window raising fixes
On OSX and linux, the tray icon now raises window.

Starting a new instance should raise the window too, but it may not work
on linux (on my Ubuntu it just flashes the icon)

Fixes Bitmessage#743
2016-05-02 15:00:22 +02:00
mailchuck
ff207c1b56 Portable mode fix
The option should not be available if the directory with the executable
is not writable, such as when running from a dmg on OSX.
2016-05-02 15:00:22 +02:00
mailchuck
ea37913ff1 Html parser fixes
Raw mode improved, avoid HTML parser entirely and just replaces some
strings.
2016-05-02 15:00:22 +02:00
mailchuck
07cee7209b Contact support fixes
- typos & formatting
- OS detection crash fixes
2016-05-02 15:00:22 +02:00
d0b9d75ce1 Fix contact support unix detection 2016-05-02 15:00:22 +02:00
mailchuck
4049662a3a Contact support updates
Yes/No -> True/False
Add Portable mode
2016-05-02 15:00:22 +02:00
mailchuck
3e956509b2 Add PyBitmessage version to contact support 2016-05-02 15:00:22 +02:00
mailchuck
8359b8b202 Contact support user interface
Fixes #25
2016-05-02 15:00:22 +02:00
mailchuck
4c8ba431e5 Add to blacklist from "All accounts"
It didn't work before
2016-05-02 15:00:22 +02:00
mailchuck
1f525da1ff Link follow warning
The message box should be a warning rather than a simple question.
2016-05-02 15:00:22 +02:00
mailchuck
eb35f35b83 Add system translations
Items like dialog box buttons were not localised. This loads the default
qt localisation, and also unloads the old localisation on locale change.
Still needs to be adjusted for frozen.

Addresses Bitmessage#737
2016-05-02 15:00:22 +02:00
mailchuck
7ef94b446d Lazy rendering of message contents
Message will render as user is scrolling down. This prevents interface
freezes on long messages (such as inline img in text mode). Fixes
Bitmessage##366

Also a minor fix in text mode rendering.
2016-05-02 15:00:22 +02:00
mailchuck
6557681a6c Message has safe link opening
Links in message body (if in HTML mode) now open, but it asks for a
confirmation in a dialog box.

Fixes #27
2016-05-02 15:00:22 +02:00
mailchuck
751f9108d8 HTML detector and switcher
HTML messages are detected and if present, the top of the message
textedit displays a clickable area that switches HTML rendering on and
off.

Fixes #13
2016-05-02 15:00:22 +02:00
mailchuck
8ff5bf0464 Channel reply enhancement
When replying to a message sent to a chan, now you can choose if you
want to reply to chan or sender. Fixed #9
2016-05-02 15:00:22 +02:00
mailchuck
4e32125ca3 Copy to clipboard in messagelists
Fixes #142
2016-05-02 15:00:22 +02:00
mailchuck
e2fb34e2fb More portable mode fixes 2016-05-02 15:00:22 +02:00
mailchuck
242c8fa9c2 More portable mode fixes 2016-05-02 15:00:22 +02:00
mailchuck
5a45d7dd8f Portable mode fixes
Fixes Bitmessage#379, Bitmessage#341
2016-05-02 15:00:22 +02:00
538642f236 Label for blacklisting sender fix
It wasn't properly utf-8-ied.
2016-05-02 15:00:22 +02:00
bdfaa90ecb Auto-register for email gateway if necessary
If attempting to send to an email address from an unregistered
account, auto-send registration to mailchuck.
Use label if possible, otherwise random 12 characater address

Fixes #131
2016-05-02 15:00:22 +02:00
082eb823bb New message appears if viewing account root
Fixes #132
2016-05-02 15:00:22 +02:00
mailchuck
d72e5647f4 Fix wrong account type initialiser
Addresses #14
2016-05-02 15:00:22 +02:00
mailchuck
a5456f792c Fix Addressbook context menu delete 2016-05-02 15:00:22 +02:00
mailchuck
bccc2406a2 Fix double unread count in tray icon 2016-05-02 15:00:22 +02:00
mailchuck
27c187283b Unify messagelist rendering
also some minor fixes
2016-05-02 15:00:22 +02:00
mailchuck
a3b13b70e2 Add BROADCAST type
also improve sorting
2016-05-02 15:00:22 +02:00
mailchuck
be02116af9 Global folder, global search, unread folder
Fixes #38
Fixes #39

Minor unread refresh issues.
2016-05-02 15:00:22 +02:00
mailchuck
6862952c55 Typo
OpenCL config variable setter had a typo
2016-05-02 15:00:22 +02:00
mailchuck
1e89616c0f Avoid strings in account types 2016-05-02 15:00:21 +02:00
mailchuck
e7e245fe25 OpenCL GUI settings 2016-05-02 15:00:21 +02:00
mailchuck
f9a7a5b6f2 Account in treeWidget more like a QT class
It behaves more like a QT class is supposed to now, it's somewhat
cleaner.
Fixes #122
2016-05-02 15:00:21 +02:00
mailchuck
48b9e50397 UPnP GUI
Settings GUI now contains a checkbox for UPnP and auto starts/stops the
thread when changed.
Default UPnP socket timeout decreased for faster thread
starting/stopping
2016-05-02 15:00:21 +02:00
mailchuck
8c14641810 Window resize on minimize bugfix
Fixes Bitmessage#243
2016-05-02 15:00:21 +02:00
mailchuck
9338772b1e Logging updates
Came over BM (from "general" channel), I slightly modified it.
2016-05-02 15:00:21 +02:00
mailchuck
960d446104 Ask before deleting a subscription
Fixes #120
2016-05-02 15:00:21 +02:00
mailchuck
c2970cd92e Update addressbook on changes
Fixes  #99
- enable/disable new/delete chan/subscription
- also found and fixed a logger crash
2016-05-02 15:00:21 +02:00
mailchuck
1f331f217c Messagelist address tooltip
Fixes #108
2016-05-02 15:00:21 +02:00
mailchuck
8909a535ae Remove extra debug logging 2016-05-02 15:00:21 +02:00
mailchuck
dd15d1b6ed Delete key and shift modifier
Addresses #114
- delete from sent works when pressing delete key
- delete from trash deletes rather than moves
- delete with shift deletes rather than moves
2016-05-02 15:00:21 +02:00
mailchuck
cd9a7b5157 Missing folders in rerenderTabTreeSubscriptions
I optimised it too much and sometimes folders were missing in the tree.
2016-05-02 15:00:21 +02:00
mailchuck
d7817ca2ef Smoother rerenderTabSubscriptions
Does not reset it all the time but adds/removes
Fixes #109
2016-05-02 15:00:21 +02:00
mailchuck
231219a193 Improved logging
Fixes #118

- changed almost all "print" into logger
- threads have nicer names
- logger can have configuration in "logger.dat" in the same directory as
"keys.dat", and the logger will pick the one named "default" to replace
the "console" and "file" that are in PyBitmessage otherwise

Example file for logging to syslog:

[loggers]
keys = root,syslog

[logger_root]
level=NOTSET
handlers=syslog

[logger_syslog]
level=DEBUG
handlers=syslog
qualname=default

[handlers]
keys = syslog

[handler_syslog]
class = handlers.SysLogHandler
formatter = syslog
level = DEBUG
args=(('localhost', handlers.SYSLOG_UDP_PORT),
handlers.SysLogHandler.LOG_LOCAL7)

[formatters]
keys = syslog

[formatter_syslog]
format=%(asctime)s %(threadName)s %(filename)s@%(lineno)d %(message)s
datefmt=%b %d %H:%M:%S
2016-05-02 15:00:21 +02:00
Denilson M. Amorim
cf610080b9 Squash: Single instance and pop up old instance 2016-05-02 15:00:21 +02:00
mailchuck
049e226ddc Move saving UI state
quit is more appropriate than close event, but it my resurrect the issue
with linux saving config data.
2016-05-02 15:00:21 +02:00
mailchuck
5cb02dc783 Improve blacklist autolabel 2016-05-02 15:00:21 +02:00
mailchuck
a02ea14233 Blacklist through context menu
Fixes #101
2016-05-02 15:00:21 +02:00
mailchuck
2f874e41be Fix adding/editing entries in addresbook
It didn't sort correctly and didn't update the label correctly when
changed.
Fixes #95
2016-05-02 15:00:21 +02:00
mailchuck
25cc1dc287 Unified code for finding source code location
It is already used in 3 places so I put it into a function
2016-05-02 15:00:20 +02:00
mailchuck
f68627158d Click on inactive tab
Would cause exception.
2016-05-02 15:00:20 +02:00
mailchuck
0e15b246af Fix broadcast
Any normal address should be able to broadcast. Reported over BM in one
of the chans.
2016-05-02 15:00:20 +02:00
mailchuck
10474b3561 Fix sync status sum
Last commit was broken.
2016-05-02 15:00:20 +02:00
mailchuck
79e199b45a Show sync status in Network tab
Addresses Bitmessage#745 (but no API exposure yet)
2016-05-02 15:00:20 +02:00
mailchuck
5b724f366e Prepare for tree widgets to store settings
Precursor for #12
2016-05-02 15:00:20 +02:00
mailchuck
4b88922104 Translation directory for OSX bundles
Addresses bitmessage#514
2016-05-02 15:00:20 +02:00
mailchuck
8f5d177690 Enabling/disabling color propagation
Fixes #105
2016-05-02 15:00:20 +02:00
mailchuck
a85e9ed20e Default message font
Fixes #106 and Bitmesage#248
2016-05-02 15:00:20 +02:00
mailchuck
2947462d45 Unregistering of unregeistered accounts
Since it's unregistered, we don't know where to unregister from.
Fixes #91.
2016-05-02 15:00:20 +02:00
mailchuck
1a842730a2 Newly sent messages and status update
- newly sent messages did not appear in all tabs
- message status change didn't work in all tabs
- addresses #90
- however, still new sent message sender/recipient do not have the
correct color
2016-05-02 15:00:20 +02:00
mailchuck
4aaf0048c6 Disabled folder color
Fixes #92
2016-05-02 15:00:20 +02:00
mailchuck
2783a1c1e5 Autofold/unfold when enabling/disabling
Fixes #93
2016-05-02 15:00:20 +02:00
mailchuck
d9401c7180 several bugfixes for rerendertabtree
It was prone to infinite loops, mixing elements etc.
2016-05-02 15:00:20 +02:00
mailchuck
8103874f6e Allow deleting channels
Fixes #96
2016-05-02 15:00:20 +02:00
mailchuck
b74dc569ef Disable "Special address behaviour" in chan
Fixes #97
2016-05-02 15:00:20 +02:00
mailchuck
2921b6553b TTL/send splitter shouldn't save state
Because it also cannot be resized from the UI
2016-05-02 15:00:20 +02:00
mailchuck
83850536cf Do not store search splitter state
It causes problems because it can't be resized through GUI.
2016-05-02 15:00:20 +02:00
mailchuck
3f96962e62 Actually enable saving states
It was temporarily disabled for testing resizing.
Addresses #12
2016-05-02 15:00:20 +02:00
mailchuck
d5743f12b9 More tabs resizable and save state
Fixes #15
Addresses #12
2016-05-02 15:00:20 +02:00
mailchuck
df3c662832 Message status update
Someone reported the exception via BM. Fixes #90

Signed-off-by: mailchuck <dev@mailchuck.com>
2016-05-02 15:00:20 +02:00
mailchuck
8eb1b7462a notify of new message fixed
Will notify even if not on active messagelist.
2016-05-02 15:00:20 +02:00
mailchuck
abc2ea2427 Wrong messagelist 2016-05-02 15:00:20 +02:00
mailchuck
0f1d85ff89 Unread count fixes 2016-05-02 15:00:20 +02:00
mailchuck
e84efecb67 getCurrentFolder should return None on unavailable
I think None is better than False.
2016-05-02 15:00:20 +02:00
mailchuck
aafa7b2840 Deleting from sent fix
Fixes #52
2016-05-02 15:00:20 +02:00
mailchuck
33928f1bc7 Trash undelete
Fixes #55
2016-05-02 15:00:20 +02:00
mailchuck
657eeeb1ca Clear message lists better
Fixes #71
2016-05-02 15:00:20 +02:00
mailchuck
d78629a6cf Emptying trash updates
Fixes #75, however it is quite slow
2016-05-02 15:00:20 +02:00
mailchuck
6a95eba8f3 Unread count for trash
MarkUnread assumed all folders are inbox.
2016-05-02 15:00:20 +02:00
mailchuck
b4c920316e Enable/disable dynamic behaviour
Fixes #88
2016-05-02 15:00:20 +02:00
mailchuck
81e8ee1f83 Color fixes in messagelists
Fixes #87
2016-05-02 15:00:20 +02:00
mailchuck
ad63e956cf accountBrush improvements
Moved code into the method
2016-05-02 15:00:19 +02:00
mailchuck
828bf64630 Address book better context menu
Don't allow delete of chans/subscriptions.
Fixes #82
2016-05-02 15:00:19 +02:00
mailchuck
feea1ccd8d Colors for From ComboBox
Fixes #86
2016-05-02 15:00:19 +02:00
mailchuck
0eb89d8af5 Subscription new messages display correctly
Fixes #70
2016-05-02 15:00:19 +02:00
mailchuck
4c8223ae88 Unread count performance optimisation
Continuation of #63
2016-05-02 15:00:19 +02:00
mailchuck
2adfa6a178 Ubuntu notification fixes
Notification should work irrespective of whether the new message shows
up in the messagelist.
2016-05-02 15:00:19 +02:00
mailchuck
1174fb394a Indicate message sending
Fixes #83
2016-05-02 15:00:19 +02:00
mailchuck
6123b27315 removeInboxRowByMsgid fixes
Now undertands messagelists and has better performance.
Haven't tested it yet though because it's triggered through API.
I think it fixes #85
2016-05-02 15:00:19 +02:00
mailchuck
7478440bd6 Update unread count more efficiently
Fixes #63. There are still some situations which can be improved but it
appears good enough.
2016-05-02 15:00:19 +02:00