Commit graph

5448 commits

Author SHA1 Message Date
Chris Heywood
43ecc35298 Minor fix to last commit 2020-01-10 18:08:37 +01:00
Chris Heywood
ae19398944 Improve cancel-ability of account storage cleanup 2020-01-10 17:41:06 +01:00
Chris Heywood
075eb636bc Bugfix for window focus event propogation 2020-01-10 15:37:16 +01:00
Chris Heywood
0f6db1ee28 Updated approach to background storage cleanup
Storage cleanup work now continues and also waits for each account to
complete before moving on
2020-01-10 14:18:01 +01:00
Chris Heywood
f5279c6533 GC vacuum: verify non-null services
Check IMAP and SMTP aren't null before stopping and starting, although
this should never occur anymore as we don't vacuum at startup.
2020-01-10 10:59:40 +01:00
Chris Heywood
47a5fbcd2f Block input to main windows for DB vacuum/upgrade 2020-01-10 10:45:32 +01:00
Chris Heywood
f4a797253f Cleanup to last commit 2020-01-10 09:06:44 +01:00
Chris Heywood
8871f02532 Tweaked old message detachment batching 2020-01-10 09:04:25 +01:00
Chris Heywood
8cb8343366 Revert unwanted folder property update 2020-01-10 08:22:23 +01:00
Chris Heywood
187d613391 Try AccountOperation approach for GC post detach 2020-01-09 20:25:55 +01:00
Chris Heywood
4f89a593a5 Remove temporary WIP code 2020-01-09 20:23:49 +01:00
Chris Heywood
b70a9b4e6e Delete old messages in batches
Done to avoid hitting SQLITE_MAX_SQL_LENGTH with the IN clause, although
fairly unlikely
2020-01-09 18:23:40 +01:00
Chris Heywood
872c7d7fd5 Storage cleanup timing improvements
Ensure only one account is cleaned at a time - they're now cleaned in
sequence. Also ensure re-entrancy isn't possible.
(Geary.Account.last_storage_cleanup was previously assisting with
this but is now unsufficient with the above change).
2020-01-09 14:45:20 +01:00
Chris Heywood
f60c42a36b More explicit class identification 2020-01-09 14:08:46 +01:00
Chris Heywood
8ccc0f3d60 Code cleanup for old message detach
Although this logic will likely be later removed
2020-01-09 13:41:02 +01:00
Chris Heywood
8d9c9ea943 Also stop SMTP when GC vacuuming 2020-01-09 13:38:33 +01:00
Chris Heywood
7dfe2971c6 Rename and improve doc. on method 2020-01-09 13:07:17 +01:00
Chris Heywood
d019d7ae9f Move, rename and document property 2020-01-09 13:00:52 +01:00
Chris Heywood
29d947cd6d Code convention style tweaks 2020-01-09 12:40:56 +01:00
Chris Heywood
dfc4c55a99 Cleanup timeout usage 2020-01-09 12:36:47 +01:00
Chris Heywood
b3ab74839e Improve const naming 2020-01-08 14:49:53 +01:00
Chris Heywood
5d53bbec26 Merge branch 'mainline' into remove-old-msgs-beyond-storage-pref 2020-01-08 14:43:52 +01:00
Chris Heywood
2b20f1cc4d WIP towards responding to window focus in cleanup
The idea being that if we've returned into the foreground while old
message detachment was running the remaining background cleanup tasks
shouldn't be run.
2020-01-08 14:22:51 +01:00
Chris Heywood
9a5871381c Clean old messages before continuing bg idle work
Monitor folder checking operations so we can perform garbage collection
once any message detaching has finished. WIP as this is a second
mechanism for triggering GC after folder checks have completed. Need to
discuss.
2020-01-08 14:19:07 +01:00
Chris Heywood
f7ee234add Minor tidy on last commit 2020-01-08 14:15:07 +01:00
Chris Heywood
609ee01e3e Trigger idle cleanup per account when backgrounded
Also handle continuation of cleanup after old messages have been
detached. Flagged vacuuming is performed even when the cleanup
interval hasn't been reached. The tracking of last background
cleanup time in Account.Information is possibly temporary and isn't
yet persisted.
2020-01-08 14:08:52 +01:00
Chris Heywood
a2d8f1790d Fix typo backgrounded app idle timeout value 2020-01-08 13:38:05 +01:00
Chris Heywood
47bdda6af5 After GC reap check for a vacuum
The idea here being if we've just reduced prefetch period, reap has
detached a whole lot of messages and we want to vacuum. This check
catches that vacuum recommendation, flagging it to run when the app
is backgrounded and idle.
2020-01-08 13:02:22 +01:00
Chris Heywood
1e8465f555 Old message cleanup after folder becomes available
Simple mechanism for triggering GC reap after messages were removed
during folder check on becoming available
2020-01-08 12:58:54 +01:00
Daniel Mustieles
6dd100c58a Updated Spanish translation 2020-01-08 12:34:16 +01:00
Chris Heywood
f7b0a0a61f Breakout ImapDB.Database garbage collection
Including:
- Moved into method run_gc
- Added ability to force reap (useful after old message cleanup when we
  don't want to wait the regular 10 day span)
- Added tracking of desire to vacuum, which will later by executed when
  backgrounded for a period
- Disabled vacuum on startup
- Added stopping IMAP while vacuuming
- Used ugly WIP hack of passing through account to stop IMAP
2020-01-08 12:21:27 +01:00
Chris Heywood
584ae84e5b Run GC after emptying spam or trash 2020-01-08 12:09:55 +01:00
Chris Heywood
ff6c45c29c Add minor missing cleanup
this.gc would previously never have been released if GC reap wasn't
recommended and run
2020-01-08 11:50:54 +01:00
Chris Heywood
15561a1108 Update local folder message count property during cleanup
Likely WIP with other properties to be added
2020-01-08 11:33:48 +01:00
Chris Heywood
cecf66df08 Track and notify messages detached during cleanup
Split detach query into two so that messages identifiers can be captured
which are then used to signal through that the folder has locally
removed messages
2020-01-08 11:31:25 +01:00
Michael Gratton
164f52c5fd Merge branch 'ui-extended-fields' into 'mainline'
composer: Better UI for Cc/Bcc/Reply-To fields

See merge request GNOME/geary!393
2020-01-08 10:08:47 +00:00
Chris Heywood
52bd48bab5 Signalling for locally removed messages 2020-01-08 11:04:51 +01:00
Chris Heywood
7684c33830 Track all windows going out of focus 2020-01-08 11:00:01 +01:00
Michael Gratton
8149f976a8 Merge branch 'fix-attachment-ui' into 'mainline'
composer: Center "drop files here" message

See merge request GNOME/geary!394
2020-01-08 09:52:41 +00:00
Michael Gratton
453caffc5a Merge branch 'fix-composer-headerbar' into 'mainline'
Fix close button in composer

See merge request GNOME/geary!395
2020-01-08 09:50:06 +00:00
James Westman
f6e4109c6e Fix close button in composer
In ccb11359, the composer headerbar was set to have a close button by
default. This caused the reply composer to have a close button that
would close the entire window. This commit reverts that part of
ccb11359.
2020-01-03 23:45:25 -06:00
Andika Triwidada
38fb4e6b1d Update Indonesian translation 2020-01-04 01:25:11 +00:00
James Westman
b39182b719 composer: Center "drop files here" message
The "Drop files here to add them as attachments" message was not
centered as it should have been, because the "expand" child property was
reset to false when it was removed/readded to its parent.
2020-01-03 17:02:44 -06:00
James Westman
7753d0a7f7 composer: Better UI for Cc/Bcc/Reply-To fields
Implemented according to the mockups at
<https://gitlab.gnome.org/Teams/Design/app-mockups/raw/master/mail/composer.png>.

- Use an animated revealer rather than instantly showing/hiding the
  fields
- Include Cc in the "extended fields"
- Use a toggle button instead of a menu item to show/hide these fields,
  for better discoverability
2020-01-01 19:25:54 -06:00
Jordi Mas
e51a3c580b Update Catalan translation 2019-12-30 23:58:00 +01:00
Daniel Mustieles
b2409ad7d1 Updated Spanish translation 2019-12-30 12:47:16 +01:00
Michael Gratton
6196f781ce Merge branch 'fix-ytnef-automagic' into 'mainline'
build: Fix automagic dependency on ytnef library

See merge request GNOME/geary!390
2019-12-30 11:40:16 +00:00
Piotr Drąg
8fdbf66701 Update Polish translation 2019-12-28 16:21:54 +01:00
Emin Tufan Çetin
f56e75af35 Update Turkish translation 2019-12-27 16:10:36 +00:00
Mart Raudsepp
91f78fb411 build: Fix automagic dependency on ytnef library
It would be best to use meson feature option type for ytnef and unwind,
but for now fix the automagic dependency on ytnef with the existing
meson_options.txt setup.
It was adding ytnef to list of dependencies unconditionally, and then
also if tnef-support was enabled. So if the option was disabled, but the
pkg-config file was present, it would still link to it surprisingly.
Just remove the unconditional addition to dep, and rely on the already
existing conditional addition to deps.
2019-12-26 19:28:07 +02:00