Commit Graph

616 Commits

Author SHA1 Message Date
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
Peter Šurda 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
Peter Šurda 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
Peter Šurda 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
Peter Šurda 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
Peter Šurda 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
Peter Šurda 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
Peter Šurda 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
Peter Šurda 70e06c33f6 Remove some debugging
Language loading debugging not necessary.
2016-05-02 15:00:25 +02:00
Peter Šurda 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
Peter Šurda d46fd6f486 Translation fix
Plural form fix
2016-05-02 15:00:25 +02:00
Peter Šurda ca11852632 Translation source update
NewSubscriptionDialog missing string updated.
2016-05-02 15:00:25 +02:00
Peter Šurda baff42f578 Typo
String typo, also updated translation source.
2016-05-02 15:00:25 +02:00
Peter Šurda 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
Peter Šurda c30433cdaa "All accounts" internationalisation fix 2016-05-02 15:00:25 +02:00
Peter Šurda 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
Peter Šurda ecfa18b1c6 Change UI loading for frozen 2016-05-02 15:00:25 +02:00
Peter Šurda 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
Peter Šurda f8dcb965ea Grammar fix
- Fixes #179
- Thanks to @Erkan-Yilmaz
2016-05-02 15:00:24 +02:00
Peter Šurda d63ecfc566 Translation update
- typos
- updated German translation
- Fixes Bitmessage#844
2016-05-02 15:00:24 +02:00
Peter Šurda c5363c3c5e Add bitcoin URI handler for message viewer 2016-05-02 15:00:24 +02:00
Peter Šurda 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
Peter Šurda 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
Peter Šurda 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
Peter Šurda 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
Peter Šurda 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
Peter Šurda 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
Peter Šurda 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
Peter Šurda 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
Peter Šurda 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
Peter Šurda 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
Peter Šurda 6b8f255a60 Email gateway updates
- settings option available
- reduce max TTL to 2 days
2016-05-02 15:00:24 +02:00
Peter Šurda 2b6bffc7ff Email gateway account status query
- addresses #14
2016-05-02 15:00:24 +02:00
Peter Šurda 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
Peter Šurda 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
Peter Šurda 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