Commit graph

5321 commits

Author SHA1 Message Date
Torben
9eb265bb8d Update dependencies for CI 2019-12-01 12:55:07 +01:00
Torben
6a34a6166f Remove custom gmime-2.6 bindings 2019-12-01 12:37:57 +01:00
Torben
1aac6f2284 Change GMime dependency from 2.6.17 to 3.2.4
This commit squashes several non-compiling commits:

66dd6500 Change required GMime version to 3.2.4 or higher
4b9c8a38 Fix some compilations errors in test code
98aa5a2e Fix some (hopefully) last compilation errors
558360c6 Fix parser format when getting message headers
cc248ffc Fix name of stream-buffer mode
b293c66b Fix another iteration over a header-list
52fa183f Fix parsing of Gmime parameters
e078ee62 Use Unix2Dos-, Dos2Unix- and/or SmtpData-filters instead of 'FilterCRLF'
ff31b8e5 Fix setting of email headers
eb676482 Fix compilation errros due to string-uint8-char conversion problems
8558769f Fix datetime conversion
d44a28cd Remove some obsolete arguments
1ce81662 Pass charset where it's required
6013806f Pass GMime.ParserOptions to header-decode methods
986d05a0 Pass GMime.FormatOptions where it's required
e9b93187 Pass GMime.ParserOptions where it's required
640ce667 Fix compilation errors in GMime initialization
312f80bf Remove use of GMime.HeaderIter
acc73d14 Change GMime dependency from 2.6 to 3.0
54fc250a Adapt names to 'offical' gmime-2.6 bindings

The commits are part of the branch 'letorbi/gmime-3-spread', which can be
found at: https://gitlab.gnome.org/letorbi/geary/tree/letorbi/gmime-3-spread
2019-12-01 12:37:39 +01:00
Michael Gratton
fced79bfd2 Merge branch '422-conversation-dnd-folder-highlight' into 'mainline'
Highlight destination folder upon conversation DND

Closes #422

See merge request GNOME/geary!377
2019-11-30 03:30:44 +00:00
Rafael Fontenelle
a837179047 Update Brazilian Portuguese translation 2019-11-29 06:20:29 +00:00
Piotr Drąg
70dee4794d Update POTFILES.in 2019-11-28 15:37:06 +01:00
Chris Heywood
eb36fd5929 Highlight destination folder upon conversation DND
Further utilises partially enabled automatic DND. Fixes #422.
2019-11-28 11:33:28 +01:00
Michael Gratton
151d9aed86 Merge branch 'mjog/575-drop-libunity' into 'mainline'
Drop libunity dependency

Closes #575

See merge request GNOME/geary!376
2019-11-27 06:44:58 +00:00
Michael Gratton
9790d9a3bb Remove libunity dependency from the build 2019-11-27 17:24:42 +11:00
Michael Gratton
7a05541ea0 Add minimal Unity Launcher API implementation
Hook it up to NotificationPlugin.
2019-11-27 17:17:16 +11:00
Michael Gratton
c66a108442 Merge branch 'mjog/conversation-message-link-popover' into 'mainline'
Break out ConversationMessage link popover into seperate UI file

See merge request GNOME/geary!375
2019-11-27 00:39:18 +00:00
Michael Gratton
e99bf29bd5 Break out ConversationMessage link popover into seperate UI file
This reduces the number of widgets to be parsed and constructed when
showing a conversation, improving loading perf a bit for large
conversations.

See #230
2019-11-27 11:17:04 +11:00
Michael Gratton
e4a5b85698 Merge branch 'mjog/558-webkit-shared-process' into 'mainline'
Share per-window WebkitGTK WebProcesses

Closes #558

See merge request GNOME/geary!374
2019-11-27 00:15:51 +00:00
Michael Gratton
9eff8a36f0 Add release note about conversation loading perf 2019-11-27 10:37:49 +11:00
Michael Gratton
4927409848 Minor code and doc comment cleanup 2019-11-26 19:37:49 +11:00
Michael Gratton
4b710074fd Use SLIDE_UP transition for ComposerMessage body animantion
This isn't as nifty, but makes the transiton between conversations
less flashy and hence less janky.
2019-11-26 19:37:49 +11:00
Michael Gratton
6c57839ddf Fix remote resource blocking with shared processes
Now that a shared WebKitUserContentManager is shared between web views,
the old "load a JS file when remote resource loading is allowed" doesn't
work any more. Instead, set a variable on the frame's window object
in the web extension notified that a new page has been loaded, and
use that instead.
2019-11-26 19:37:49 +11:00
Michael Gratton
1a391758fa Minor perf improvement when conversation load was cancelled.
Lazily initialise the ConversationMessage's web onlt after checking to
see if the conversation load as been cancelled or not.
2019-11-26 19:37:49 +11:00
Michael Gratton
ec155ed707 Re-use WebKitGTK WebProcess between conversation loads
Since the WebProcess will be torn down when the last WebView using it is
destroyed (not when the view object is deleted), we need to keep
previous conversation widgets around until after the new conversation is
loaded.
2019-11-26 19:37:49 +11:00
Michael Gratton
5b04686dbb Re-use WebKitGTK WebProcesses between ConversationWebView
Add a new ctor to Component.WebView and ConversationWebView to be able
to use the WebKit.WebView::related-view property at construction time.
Add new ConversationViewer::previous-web-view property to store
the per-window last created web view. Use this when constructing new
wen views in ConversationMessage to share the WebProcess.
2019-11-26 14:26:03 +11:00
Michael Gratton
7b35e53343 Remove WebKitGTK 2.24 shared process workaround
See #558
2019-11-26 14:26:03 +11:00
Michael Gratton
8140135d7b Fix Components.WebViewTestCase fixture setup and tear down
Move config and web view creation into ::set_up, set them to null in
::tear_down.
2019-11-26 14:26:03 +11:00
Michael Gratton
ceb9c9764a Rename ClientWebView to Components.WebView per code style 2019-11-26 14:26:03 +11:00
Konstantin Kharlamov
99d4e1bdce conversation-viewer: create web_view on demand
Time for loading a 204 mails discussion, milliseconds

Before: 10662, 10826, 11134
After :  9972,  9810,  9881

Improvement: ≈10%

Signed-off-by: Konstantin Kharlamov <Hi-Angel@yandex.ru>
2019-11-26 14:26:03 +11:00
Konstantin Kharlamov
876b3923a8 conversation-viewer: privatize web_view
Signed-off-by: Konstantin Kharlamov <Hi-Angel@yandex.ru>
2019-11-26 14:26:03 +11:00
Daniel Mustieles
66f6525480 Update Spanish translation 2019-11-25 10:54:25 +00:00
Alexandre Franke
e8412192f9 Update French translation 2019-11-25 09:58:44 +00:00
Michael Gratton
c758bd57ae Update THANKS 2019-11-24 13:13:48 +11:00
Michael Gratton
96fbc085cd Update files for 3.35.2 2019-11-24 13:09:29 +11:00
Daniel Mustieles
7af0c6fb1d Updated Spanish translation 2019-11-21 12:55:01 +01:00
Daniel Mustieles
07a231e108 Update Spanish translation 2019-11-21 11:42:46 +00:00
Michael Gratton
01d34ccc12 Merge branch 'wip/fix-main-window-shortcuts' into 'mainline'
Make single key shortcuts optional

See merge request GNOME/geary!373
2019-11-20 23:25:01 +00:00
Michael Gratton
dfe0b5cc76 Update online keyboard shortcuts help
Make it a bit more compact by merging a few one/the other entries,
make labels read better.
2019-11-21 10:00:34 +11:00
Michael Gratton
c4cba4370d Update release notes with new features 2019-11-21 02:59:09 +11:00
Michael Gratton
82e77023bc Update help with information about single key shortcuts 2019-11-21 02:56:44 +11:00
Michael Gratton
259ebe50fd Re-implement single key shortcuts as a preference
Add new `single-key-shortcuts` GSetting, Application.Configuration
property and add UI for it in the Preferences window. When enabled,
load in new `single-key-shortcuts.css` file that has the appropriate
bindings. Update bindings to match Google's current set, and update
shortcut help to match.
2019-11-21 02:36:09 +11:00
Michael Gratton
fb1439264a Update MainWindow shortcuts to be keybinding signal based
Use keybinding ("action") signals and a GtkBindingSet to hook up most
of MainWindow's actions to keyboard shortcuts, rather than use
the application to do so. Remove single-key shortcuts, and update
shortcuts used to avoid collisions. Replace "focus conversation list"
action with general navigation between panes.

🚨 Remove MainWindow hack that enabled single key shortcuts to work 🚨
2019-11-21 02:26:05 +11:00
Michael Gratton
e11e2bd279 Convert prefs dialog to a HdyPreferencesWindow
Move it to the Components package, use libhandy preferences widgets
for the UI.
2019-11-20 23:16:55 +11:00
Michael Gratton
93311aeb1f Merge branch 'mjog/fix-search-not-realised' into 'mainline'
Fix criticals when activating search

See merge request GNOME/geary!372
2019-11-20 07:02:51 +00:00
Michael Gratton
8c46079078 Fix criticals when activating search
Now that MainWindow doesn't get a show_all(), need to manually set the
search bar to be visible. GTK4 can't get here soon enough!
2019-11-20 17:36:57 +11:00
Michael Gratton
cf2cfb5426 Merge branch 'mjog/636-add-account-name-validation' into 'mainline'
Fix accounts editor default name validation when adding an account

Closes #636

See merge request GNOME/geary!371
2019-11-20 06:29:46 +00:00
Michael Gratton
a278163ca9 Manually pre-validate default name in Accounts.EditorAddPane
Fixes #636
2019-11-20 17:11:14 +11:00
Michael Gratton
ca6cbecb83 Add manual Components.Validator::validator method
Support manual validation where needed, add unit tests.

This also slightly changes the behaviour of non-required field, since
an empty non-required field should be valid.
2019-11-20 17:11:14 +11:00
Michael Gratton
c9fc877d12 Ensure Components.Validator::is-valid gets notify sigs emitted 2019-11-20 14:44:17 +11:00
Michael Gratton
89642c5283 Replace uses of Gee.TreeSet where used for sorting
Add new Geary.Iterable::to_sorted_list method that should be more
performant than adding elements to a sorted set and sorting one-by-one,
use that instead of a TreeSet.
2019-11-20 12:46:36 +11:00
Michael Gratton
37d2898b73 Replace use of Gee.TreeSet in Util.Cache.Lru
We're getting crashes (#398, #609) in Gee.TreeSet for the LRU cache when
removing values to update the last used time for an existing cache.
Since Gee isn't currently being activaly maintained, replace use of
that class with something else.
2019-11-20 12:43:15 +11:00
Daniel Mustieles
cb7cdbbbe6 Updated Spanish translation 2019-11-19 10:04:52 +01:00
Michael Gratton
e576c780c5 Merge branch 'mjog/misc-fixes' into 'mainline'
Misc fixes

See merge request GNOME/geary!369
2019-11-19 09:00:28 +00:00
Michael Gratton
32ee1b2b06 Remove unused method 2019-11-19 19:22:38 +11:00
Michael Gratton
2b15b49e4f Fix valac criticals at build time
See GNOME/vala#835
2019-11-19 19:22:38 +11:00