Commit graph

4814 commits

Author SHA1 Message Date
Michael Gratton
b955bc433e Hardcode PartTest's source encoding since it shouldn't change 2019-07-18 15:05:03 +10:00
Michael Gratton
2cb0a83342 Don't munge Base64 encoded text parts when saving to disk
Avoid doing character encoding conversion and CRLF stripping when saving
text parts to disk. This prevents UTF-8 encoded text attachments from
being broken when base64 encoded and no encoding is specified.

See #362
2019-07-18 14:38:38 +10:00
Michael Gratton
faf84db9f4 Actually ensure the engine PartTest suite is run 2019-07-18 14:37:23 +10:00
Michael Gratton
6a871c25c6 Remove Geary.RFC822.Part.get_effective_content_type
Just make the `content_type` property non-nullable and set a default
in the ctor instead, since it's unlikely to ever be null despite the
GMime API suggesting it could be. Update call sites to use the property
instead.
2019-07-18 14:37:10 +10:00
Michael Gratton
88efd14a82 Merge branch 'wip/fix-gmime-abstract-ctors' into 'mainline'
Fix another GMime custom binding abstract ctors

See merge request GNOME/geary!263
2019-07-17 09:31:28 +00:00
Michael Gratton
6a889fc6cf Merge branch 'wip/491-email-spoofing-case' into 'mainline'
Don't consider substrings when checking distinct mailbox names

See merge request GNOME/geary!261
2019-07-17 09:03:48 +00:00
Michael Gratton
6af84001f2 Fix another GMime custom binding abstract ctors
Silences compiler warnings produced by current vala head
2019-07-17 18:28:38 +10:00
Michael Gratton
c67b60fc9e Add API docs to Geary.RFC822.MailboxAddress to clarify escaping 2019-07-17 18:11:23 +10:00
Michael Gratton
b6ec51bc3a Don't consider substrings when checking distinct mailbox names
RFC822.MailboxAddress.has_distinct_name() really needs to not do
sub-string checks since it will cause addresses like
`"foo-bar@baz" <bar@baz>` to not have a distinct name. To keep the fix
for #491 in effect, also adds special case checking for sinlge quotes.

Add some more tests to cover these cases.

Partially reverts commit 6e137eb649

See discussion in GNOME/geary!252
2019-07-17 18:11:17 +10:00
Michael Gratton
a4044f1ca5 Merge branch 'wip/499-wrong-folks-contact' into 'mainline'
Ensure searching for Folks contacts by email is an exact match

See merge request GNOME/geary!259
2019-07-17 06:59:51 +00:00
Michael Gratton
09bc7bdc72 Merge branch 'wip/430-custom-window-buttons' into 'mainline'
Fix handling GTK button-layout settings that are missing a ':'

See merge request GNOME/geary!260
2019-07-17 06:58:41 +00:00
Michael Gratton
ca6d5fdc88 Fix handling GTK button-layout settings that are missing a ':'
See #430
2019-07-17 16:38:02 +10:00
Michael Gratton
8b652df03c Ensure searching for Folks contacts by email is an exact match
Folks's SimpleQuery does sub-string matching which we don't want when
looking up via email, since we know we have the complete, full address.
Work around by checking matches have the full email address before using
one.

See #499
2019-07-17 16:18:55 +10:00
Michael Gratton
e3e2c56a01 Merge branch 'wip/fix-gmime-abstract-ctors' into 'mainline'
Fix GMime custom binding abstract ctors

See merge request GNOME/geary!257
2019-07-17 05:59:48 +00:00
Michael Gratton
f07c84adb3 Fix GMime custom binding abstract ctors
Silences compiler warnings produced by current vala head
2019-07-17 15:36:09 +10:00
Michael Gratton
ffb3b8fb7a Merge branch 'wip/366-remove-folders' into 'mainline'
Fix folders removed from the server never being removed

See merge request GNOME/geary!255
2019-07-17 05:27:39 +00:00
Michael Gratton
9c8723ac2a Fix folders removed from the server never being removed
Third time lucky at using BidiIterator correctly :(
2019-07-17 15:06:41 +10:00
Michael Gratton
119846c6e6 Merge branch 'wip/message-body-hight' into 'mainline'
Message body hight fixes

See merge request GNOME/geary!253
2019-07-16 03:30:22 +00:00
Michael Gratton
c27d250032 ClientWebView: Use HTML element's height to determine preferred
Return the scroll height of the HTML element since the BODY
may have margin/border/padding and we want to know
precisely how high the widget needs to be to avoid
scrolling.
2019-07-16 12:00:04 +10:00
Michael Gratton
66fb96181c ClientWebView: Don't update preferred height on height change
Only send an updated height change when the width has changed on
receiving a JavaScript resize event to avoid getting into a feedback
loop, as was happening with email from Mastodon instances.
2019-07-16 12:00:04 +10:00
Michael Gratton
d99caa5f2d Merge branch 'reply_with_another_account' into 'mainline'
Reply with another account

Closes #9

See merge request GNOME/geary!241
2019-07-09 02:01:34 +00:00
Mete Can Eris
ca85c9852d Allow replying/forwarding with another account. 2019-07-08 16:25:59 +03:00
Piotr Drąg
d35f9b408f Update Polish translation 2019-07-07 13:49:45 +02:00
Bruce Cowan
824116d597 Update British English translation
(cherry picked from commit 664cd77d1a4be7b85baa3ce8cda909f29e530ee2)
2019-07-06 19:53:15 +00:00
Piotr Drąg
5e84fce551 Update POTFILES.in 2019-07-06 18:16:38 +02:00
Michael Gratton
f22d4309ed Merge branch 'wip/491-email-spoofing-case' into 'mainline'
Fix "'test@example.com' <test@example.com>" marked as spoofed

See merge request GNOME/geary!252
2019-07-06 05:02:51 +00:00
Michael Gratton
bed1bad3ea Fix "'test@example.com' <test@example.com>" marked as spoofed
Make RFC833.MailboxAddress.has_distinct_name() consider substrings
rather than straight-up string comparison.

See #491
2019-07-06 14:38:05 +10:00
Michael Gratton
936c4aa402 Merge branch 'wip/problem-report-logs' into 'mainline'
Include log records in the Problem Report dialog and saved information

See merge request GNOME/geary!250
2019-07-06 03:40:02 +00:00
Michael Gratton
4d215ba089 Improve formatting of Inspector/problem report data for GitLab
Format Inspector and problem report data copied to the clipboard as
Markdown so that people who copy and paste into bug reports have it
automatically formatted properly.
2019-07-05 13:00:11 +10:00
Michael Gratton
ab27f3f092 Update problem report dialog error details text
Ask people to save and attach the data now we are saving logs as they
might get quite large.
2019-07-05 13:00:11 +10:00
Michael Gratton
eb586280fd Use text label for problem dialog Save As button 2019-07-05 13:00:11 +10:00
Michael Gratton
6456e94500 Fix Inspector tooltip typo 2019-07-05 13:00:11 +10:00
Michael Gratton
4df0bb7880 Capture log records in Geary.ProblemReport
Allow getting both the earliest and latest log records from
Geary.Logging and record these when constructing new ProblemReport
instances. Update InspectorLogView.load to have starting and end log
record parameters, and specify these when displaying a problem report.

This ensures that only those log records up to the point of the problem
report being generated are included in the report, and not any later
records.
2019-07-05 13:00:11 +10:00
Michael Gratton
253712671b Update MainWindowInfoBars UI
Ensure non-retryable problems are always dismissable. Use same title for
both account and service problems, one that matches custom info bars for
auth and cert problems.
2019-07-05 13:00:11 +10:00
Michael Gratton
b91bf818bb Convert MainWindow to use MainWindowInfoBars for status problems
Sysnthesise a problem report and use a MainWindowInfoBar for displaying
account service status problems rather than using a custom info bar.
This lets us use the same infrastructure for displaying problem reports
and will enable capturing relevant logs at the time that the error
occurred.
2019-07-05 13:00:11 +10:00
Michael Gratton
c2ca6954d9 Ensure problem report logs are filtered by accout, if any 2019-07-05 13:00:11 +10:00
Michael Gratton
7d1b8c5216 Ensure Inspector overwrites existing files on save 2019-07-05 13:00:11 +10:00
Michael Gratton
6f65062219 Convert ProblemReportDialog to use Inspector views
Aside from the code re-use, this allows including log files in problem
reports.
2019-07-05 13:00:11 +10:00
Michael Gratton
2841cb0b66 Break up Inspector's panes into seperate components for re-use
Create new InspectorLogView and InspectorSystemView classes abd UI, move
code from inspector into those and use them in the inspector.
2019-07-05 13:00:11 +10:00
Piotr Drąg
ee801132df Update Polish translation 2019-06-30 15:39:34 +02:00
Michael Gratton
7e91b7a9c7 Merge branch 'wip/structured-logging' into 'mainline'
Convert Geary to use GLib structured logging

See merge request GNOME/geary!249
2019-06-30 07:50:25 +00:00
Michael Gratton
6e07d066aa Use a reasonable sized buffer when formatting log messages 2019-06-30 17:23:56 +10:00
Michael Gratton
e338d5d2df Stop printing elapsed time between logs, log absolute ms instead 2019-06-30 17:22:38 +10:00
Michael Gratton
a0d2e7347b Add Geary.Logging.clear method, call it on app shutdown 2019-06-30 16:43:15 +10:00
Michael Gratton
95e856b664 Ensure logging system is thread-safe
Use a mutex to log when outputting debug log lines, ensure the listener
(if any) is invoked on the main loop.
2019-06-30 16:27:48 +10:00
Michael Gratton
258537eb27 Pretty-print well known logging variables
Print account, folder and client session details abbrevated, pull a few
more details into Logging.Record.
2019-06-30 16:15:03 +10:00
Michael Gratton
337ea2ea05 Integrate Logging.Record into structured logging system
Record logged fields in the record and use them when formatting a
message.
2019-06-30 16:15:03 +10:00
Michael Gratton
ff3c4b0cd7 Fix incorrect log field key being used for Loggable objects 2019-06-30 16:15:03 +10:00
Michael Gratton
b0ca8c9e0a Switch to using GLib structured logging
This converts the logging infrastructure to using structured logging
calls, adds and sets a structured logging writer.
2019-06-30 16:15:03 +10:00
Michael Gratton
de8c3858e9 Convert key classes to implement Loggable
Make accounts, folders, client sessions and account ops implement
Loggable, remove manual context from log messages there and in
subclasses.
2019-06-30 16:14:50 +10:00