Tom Hacohen
d659b48f6d
Create collection: gracefully handle IO exceptions.
2019-08-27 18:34:37 +01:00
Tom Hacohen
d3ad17e0bb
BaseManager: Consider SSLHandshakeExceptions as real issues.
...
They inherit from IO exceptions so were temporarily ignored, but they could
indicate a real issue with the ability of this user to connect to the
server.
2019-08-27 18:31:11 +01:00
Tom Hacohen
36a44ba339
LocalAddressBook: update according to vcard4android changes.
2019-08-23 09:35:41 +01:00
Tom Hacohen
9560d4a65b
BaseManager: add a debug log for the beginning of a network call.
2019-08-22 11:52:01 +01:00
Tom Hacohen
3451f51376
Bump version.
2019-08-18 16:07:12 +01:00
Tom Hacohen
58f16681aa
Debug info: add calling class information to reports.
...
This change makes it easier to detect if a debug report was actually due to a
real issue, or is just a user sending the debug activity without any real
issue behind it.
This is to battle the surprising amount of debug info spam we've had to battle
with. Essentially users sending debug info without actually experiencing any
issues and never replying to questions. This is made worse because many of
those emails also have weird addresses in CC which make it look even more
like some weird sort of spam.
2019-08-18 16:07:06 +01:00
Tom Hacohen
3c74cb1575
Optimise imports.
2019-08-18 15:26:26 +01:00
Tom Hacohen
7405452975
Bump version.
2019-08-07 08:57:39 +01:00
Tom Hacohen
c8a81862ea
Import: fix import of contacts.
2019-08-06 14:12:50 +01:00
Tom Hacohen
9018b6cdd0
Import: make it easy to report import issues to devs.
2019-08-06 13:45:55 +01:00
Tom Hacohen
d1d08658f9
Don't export private activities.
...
Fixes #84 .
2019-08-05 14:25:31 +01:00
Tom Hacohen
687f973725
Fix formatting.
2019-08-05 08:34:30 +01:00
Tom Hacohen
7aea44bb27
Bump version.
2019-08-05 08:31:06 +01:00
Tom Hacohen
1cfdc59b17
Change journal: make it possible to revert an item to a past state.
...
Fixes #83
2019-07-30 20:29:47 +01:00
Tom Hacohen
97358224ab
Bump version.
2019-07-28 11:11:45 +01:00
Tom Hacohen
6031bd2699
Events: automatically transform EMAIL event reminders to DISPLAY ones.
...
iCal support EMAIL event reminders which EteSync doesn't and can't support
due to end-to-end encryption. This commit therefore modifies the event reminders
DISPLAY so reminders are actually shown on the phone.
Fixes #63
2019-07-28 11:10:50 +01:00
Tom Hacohen
cfae3bf0b5
Bump version.
2019-07-22 22:41:21 +01:00
Tom Hacohen
8e457c5ec7
Import contacts: fix wrong import account.
2019-07-21 14:48:01 +01:00
Tom Hacohen
201a1e078e
Change the icon to an adaptive icon
...
It would require a proper redesign to take advantage of the full
capabilities of adaptive icons. This is good enough for now though.
Fixes #65
2019-07-21 10:55:30 +01:00
Tom Hacohen
5fe963d7b9
Bump version.
2019-07-15 13:08:06 +01:00
Tom Hacohen
cac34e6785
Import: verify activity is not null when finishing import.
...
This is really just an ugly workaround for a crash. This whole thing needs to
be redone. It's currently quite broken when it comes to lifecycle handling and
a source for many issues.
2019-07-15 13:08:06 +01:00
Tom Hacohen
84ab0cb16f
Import: check if successfully acquired the provider before trying to import.
2019-07-15 13:08:06 +01:00
Tom Hacohen
b2f41fd0a8
Invitation email: update signature.
2019-07-09 13:59:48 +01:00
Tom Hacohen
d2739a50ef
Bump version.
2019-07-08 13:33:31 +01:00
Tom Hacohen
7d7096cc58
Allow connecting to insecure (http) servers.
...
I'm a bit conflicted about this one because even though EteSync is
end-to-end encrypted, people should be using TLS.
I can't think of a reason why anyone would want to use HTTP over HTTPS,
especially given let's encrypt exists and EteSync supports self-signed
certs, but I guess it's better to allow it for now, at least until we
have a nice error message for it.
Fixes #81
2019-07-08 13:25:36 +01:00
Tom Hacohen
1f9e7fa6a6
Revert: Import: always import, don't try to find duplicates based on UID
...
This is somehow a revert of 536bef9815
.
It was initially implemented as a workaround for #24 , but having
improved all the clients to deal with weird UIDs and matured a lot since
then, I believe this is no longer an issue.
Would have to keep a close eye for regressions.
2019-07-06 10:38:28 +01:00
Tom Hacohen
bbd40e0255
LocalGroup: implement updateAsDirty.
2019-07-06 10:28:42 +01:00
Tom Hacohen
cc83e2c5d9
Tasks: implement update as dirty.
2019-07-06 10:03:18 +01:00
Tom Hacohen
101e7e2559
Settings: cleanup the code to open the app's notification settings
2019-06-28 19:45:48 +01:00
Tom Hacohen
aea3bb3c5c
Bump version.
2019-06-26 11:16:39 +01:00
Tom Hacohen
d08ec6926d
Encryption password error: add a note about username casing.
2019-06-26 11:16:39 +01:00
Tom Hacohen
cdc5afba61
Fix debug log for failed login attempts.
...
Before this fix a failed loging attempt wouldn't include any debug
information on why it failed. This commit fixes that.
2019-06-26 10:51:24 +01:00
Tom Hacohen
032abfaa60
Build: update target sdk version.
2019-06-20 14:18:26 +01:00
Tom Hacohen
336ec16920
Bump version.
2019-06-20 14:09:26 +01:00
Tom Hacohen
16efe446c0
WebActivity: gracefully handle unsupported link types.
2019-06-13 10:10:23 +01:00
Tom Hacohen
9c13d5247c
Bump version.
2019-06-13 09:57:11 +01:00
Tom Hacohen
7cfba6dc34
Acra: don't include email prefix.
...
We've recently started getting exceptions such as:
"java.lang.ClassCastException: java.lang.String cannot be cast to java.util.ArrayList"
I suspect it may be related to using the new email body prefix which is
probably not as well tested upstream as the rest of the code. Removing
it to see if this fixes things.
2019-06-13 09:57:11 +01:00
Tom Hacohen
1a7ef1b78e
Sync: log broken entries on processing failure.
...
This change prints the content of broken entries (ones that fail parsing)
to the log so it's easier to debug issues.
2019-06-13 09:56:50 +01:00
Tom Hacohen
7932610c87
Webview: add missing call to super's save instance state.
2019-05-28 10:40:25 +01:00
Tom Hacohen
3ae422bb99
Bump version.
2019-05-28 10:25:23 +01:00
Tom Hacohen
6196b71a67
Update requery and kotlin version.
2019-05-06 12:47:00 +01:00
Tom Hacohen
58b54f9d66
Account list: workaround rare crash when listing accounts.
2019-05-05 17:45:44 +01:00
Tom Hacohen
e6d53fbfa0
Bump version.
2019-05-03 15:49:25 +01:00
Tom Hacohen
d358ac0ba4
Import: implement importing tasks from file.
...
Fixes #74 .
2019-05-01 14:52:20 +01:00
Tom Hacohen
bfe68b9684
LocalTask: add a function to save tasks as dirty.
2019-05-01 14:52:16 +01:00
Tom Hacohen
f4ce548310
Import: replace size check with isEmpty().
2019-05-01 14:31:21 +01:00
Tom Hacohen
6381617f2c
Import: only dismiss import dialog if already showing.
...
This should fix a crash when the os kills the activity before import is done.
2019-05-01 13:47:20 +01:00
Tom Hacohen
e4b29832f5
Import: mark progressDialog as non-null.
2019-05-01 13:26:59 +01:00
Tom Hacohen
bab8cdf913
Bump version.
2019-05-01 10:06:28 +01:00
Tom Hacohen
2615fbd9ce
Unify all of the sync adapter exception handling.
...
The exception handling was duplicated across every sync backend.
It was redundant and made it easy to not handle all of the exceptions correctly
everywhere.
2019-05-01 09:57:21 +01:00
Tom Hacohen
6250cacd30
Add missing exception handling to contacts sync.
...
It wasn't handling IgnorableException.
2019-05-01 09:57:07 +01:00
Tom Hacohen
1d5bcc6a3d
Add a separate exception for HttpConflict.
2019-05-01 09:12:42 +01:00
Tom Hacohen
fe980f937e
Fix potential crash when opening and stopping the app very quickly.
2019-04-30 14:09:35 +01:00
Tom Hacohen
6bd405012d
Bump version.
2019-04-25 13:26:05 +01:00
Tom Hacohen
9c8daf1ebd
More optimise imports.
2019-04-16 17:14:49 +01:00
Tom Hacohen
c484d29a42
Optimise imports.
2019-04-16 17:14:14 +01:00
Tom Hacohen
3b0bfbb054
Don't rely on the ACCOUNTS_CHANGED broadcast receiver
...
I've seen some crashes there. This change brings it inline with
DAVDroid, and looks cleaner regardless.
Based on 1f7298f947a4878e86fcba0c6722e34b03cb63c6 from DAVDroid
2019-04-16 17:09:01 +01:00
Tom Hacohen
f629d23c38
Fix access to uninitialized properties in account update service.
2019-04-16 13:18:28 +01:00
Tom Hacohen
45b8e24503
Bump version.
2019-04-15 14:21:54 +01:00
Tom Hacohen
2e2841cea4
Fix encryption password change not to crash.
...
It was a regression from the custom cert manager update.
2019-04-15 14:20:54 +01:00
Tom Hacohen
91ac46e211
Bump version.
2019-04-15 13:58:21 +01:00
Tom Hacohen
41c7239a8c
Members list: fix crash and handle correct lifecycle.
2019-04-12 09:51:56 +01:00
Steve Divskinsy
e3e61eb7bd
Fix spelling in values/strings.xml
...
Correct spelling of "comporomised" to "compromised" in
main/res/values/strings.xml
2019-04-05 13:18:14 +01:00
Tom Hacohen
47c9452a4d
Bump version.
2019-04-04 13:59:05 +01:00
Tom Hacohen
7010967a31
Import: fix crash when import finishes while the activity is dead.
2019-04-04 13:59:00 +01:00
Tom Hacohen
f41c7cd4c9
Contacts sync manager: remove unnecessary not-null assertion.
2019-04-04 13:58:16 +01:00
Tom Hacohen
eef861614e
Contacts sync manager: only init one resource downloader per sync.
...
Before this we were doing it per sync entry which could be slow.
2019-04-04 13:58:16 +01:00
Tom Hacohen
487d330a7a
Contacts Sync Manager: remove redundant address book init.
...
Fixes #73
2019-04-04 13:58:16 +01:00
Steve Divskinsy
2f7866ce75
Correct spelling
...
Correct spelling "plesae" -> "please"
2019-04-04 11:24:15 +01:00
Tom Hacohen
3637fc95db
Sync: catch and report SSLHandshakeExceptions.
...
They were not being reported as part of the general code
because SSLException inherits from IOException which is
handled differently.
2019-04-03 22:24:42 +01:00
Tom Hacohen
6ac83beb47
Debug activity: fix crash when getting sync errors.
...
Sync phase was passed as an Int but expected as a String.
2019-03-30 09:36:57 +00:00
Tom Hacohen
a702a4e794
Crash email: include a body with requests for more information.
2019-03-27 11:26:06 +00:00
Tom Hacohen
608f40058b
Update ACRA.
2019-03-27 11:24:18 +00:00
Tom Hacohen
409f586835
Add tutanota to the list of email clients not supporting attachments.
...
This list is the clients that don't support attachments when called from
an intent. We want to include debug info inline for those.
2019-03-26 16:10:53 +00:00
Tom Hacohen
5562d917f3
Bump version.
2019-03-21 16:10:36 +00:00
Tom Hacohen
0a2a3b2d99
Rename queryCapabilites to prepareFetch
2019-03-21 16:09:04 +00:00
Tom Hacohen
44c516a868
Sync: fix the sync to also do the initial preparation in chunks
...
This fixes issues with Android killing the sync when making massive
syncs such as importing 10,000 events.
Fixes #69
2019-03-21 16:09:04 +00:00
Tom Hacohen
dcc3ec6f88
Fix crash when removing journal members
2019-03-21 16:06:37 +00:00
Tom Hacohen
d04d0f902f
Fix closing of the HttpClient when syncing.
2019-03-21 16:06:37 +00:00
Tom Hacohen
bc829d0d1e
Improve logging in syncmanager and import.
2019-03-21 11:40:02 +00:00
Tom Hacohen
8d660e376a
Bump version (only number)
...
We had to do it because the play store version had a broken apk and we
needed to upload a new version that's built correctly.
Damn proguard, don't know why it does it every now and then.
2019-03-15 12:19:37 +00:00
Tom Hacohen
022ed146c4
Bump version.
2019-03-15 11:04:53 +00:00
Tom Hacohen
5090a3206e
Only show the custom certificate popup when using EteSync interactively
...
With this change, we make it so using a self-signed certificate will
have to be authorised on the first login rather than checked every time
on the background.
This was causing annoying issues with networks that mitm SSL
connections, and anyhow, we shouldn't be asking users to trust bad certs
when in 99.9% of the cases it would either be an attack or a broken
network.
Fixes #36
2019-03-15 10:53:51 +00:00
Tom Hacohen
ee2dad4d19
Set certmanager foreground/background state.
2019-03-15 10:53:51 +00:00
Tom Hacohen
4134f78da4
Upgrade cert4android and refactor httpclient based on upstream
2019-03-15 10:53:51 +00:00
Tom Hacohen
75020c1841
Settings: add a link to the notification settings.
2019-03-15 08:56:06 +00:00
Tom Hacohen
07292a1422
Log to file: improve strings.
2019-03-14 21:32:52 +00:00
Tom Hacohen
d147728acd
Add a setting to control log verbosity.
2019-03-14 21:25:47 +00:00
Tom Hacohen
705df2a536
Overhaul the notification system and add notification channels.
2019-03-14 21:15:17 +00:00
Tom Hacohen
64f8c5e1d2
Move the sync notification helper under syncadapter and rename it.
2019-03-14 20:46:36 +00:00
Tom Hacohen
ac22ece30d
Don't use a separate :sync process anymore so prefs don't need IPC.
...
Fixes #67
2019-03-14 20:40:52 +00:00
Tom Hacohen
21c64d58ec
Fix broadcast receiever intent to the correct etesync one.
2019-03-14 20:34:52 +00:00
Tom Hacohen
1cdad6232e
Log to file: move to use normal preferences.
2019-03-14 20:30:07 +00:00
Tom Hacohen
df315a48ab
Fix logging to file.
2019-03-14 20:10:31 +00:00
Tom Hacohen
17b6e69c86
Move everything to use the new Logger
2019-03-14 19:35:30 +00:00
Tom Hacohen
216b51d138
Create a logger object to take care of all the logging.
2019-03-14 19:14:34 +00:00
Tom Hacohen
14abc6400d
Rename the logger's name to etesync.
2019-03-14 19:02:42 +00:00
Tom Hacohen
a7aed85a4c
Import latest logger code from davdroid.
2019-03-14 19:01:08 +00:00
Tom Hacohen
b382b8515c
Request sync after encryption password change.
...
This is because we need the journals to be up to date with the newly
added key, or otherwise there could be issues when editing them.
2019-03-11 18:17:42 +00:00
Tom Hacohen
a2e126071a
Bump version.
2019-03-10 19:01:29 +00:00
Tom Hacohen
a605c2ae49
Fix adding journal members following an encryption password change.
...
See previous commit for more details about this issue.
2019-03-10 19:01:19 +00:00
Tom Hacohen
9f0b492c42
Fix collection editing following an encryption password change.
...
A lot of the code dealing with collections assumes that the editing is
done by the owner (true assumption, for now), and therefore the encryption
key is derived from the master key (not true anymore, as it could be a
stored version of the old key). This commit removes this wrong assumption.
2019-03-10 19:01:02 +00:00
Tom Hacohen
6f453faf06
Import: cleanup code a bit.
...
This should make it easier to debug null errors.
2019-03-10 19:00:56 +00:00
Tom Hacohen
77d89f3b4b
Import: Rename poorly named class.
2019-03-10 16:16:42 +00:00
Tom Hacohen
c4ee03b733
Fix null warning
2019-03-07 08:32:29 +00:00
Tom Hacohen
2e639aad16
Bump version.
2019-03-07 08:27:27 +00:00
Tom Hacohen
cf8afd541c
ACRA: switch to notification alerts on crashes.
...
On some devices users weren't able to send stack traces because
EteSync would restart and then hide/cancel the email app chooser.
2019-03-07 08:26:10 +00:00
Tom Hacohen
332caf1631
View Collection: add checks if we successfully managed to acquire the provider.
2019-03-07 08:09:16 +00:00
Tom Hacohen
f0a320f854
Bump version.
2019-03-06 21:51:49 +00:00
Tom Hacohen
356017a541
Entry sync: also generate UUIDs for first synced deleted entries
...
This fixes a bug with deleting entries that were never synced before. To
reproduce:
1. Turn off wifi + data (to ensure nothing is synced).
2. Add an entry (event/task/contact).
3. Delete that entry.
4. Turn wifi + data back on
5. Hit sync
2019-03-06 19:27:43 +00:00
Tom Hacohen
f64960699b
LocalTask: remove a potentiall bad logging message.
2019-03-06 19:19:40 +00:00
Tom Hacohen
e1573ef7ab
Tasks journal view: show the number of tasks in the journal.
2019-03-06 19:03:32 +00:00
Tom Hacohen
7eee04f458
Remove wrong not-null assertion.
2019-03-06 18:30:36 +00:00
Tom Hacohen
db8667e84a
Fix issue with OpenTasks causing a lot of syncs in some rare cases.
...
We weren't setting a default sync interval which meant that in some
cases it was just syncing every 10 seconds.
This fix also fixes #66 .
2019-03-06 18:10:37 +00:00
Tom Hacohen
c6472fe220
Unify the sync interval settings across journal types.
2019-03-06 17:11:19 +00:00
Tom Hacohen
b765f177c7
Migrate to AndroidX.
2019-03-06 16:24:23 +00:00
Tom Hacohen
130cea18ce
Tasks: move the opentasks install button to the menu.
...
It was quite ugly having it there.
2019-02-25 15:26:14 +00:00
Tom Hacohen
4cc664ee6c
Fix misleading logging message.
2019-02-25 08:49:16 +00:00
Tom Hacohen
1b15aaab19
Import: minor code cleanups.
2019-02-24 08:48:24 +00:00
Tom Hacohen
ab7f9be65a
Bump version.
2019-02-24 08:08:53 +00:00
Tom Hacohen
858378b107
Revert "Event invites: Warn about clients that don't support email attachments"
...
We can't trigger a toast from a service, revert this for now.
This reverts commit 0cda396d20
.
2019-02-24 08:07:11 +00:00
Tom Hacohen
b64b95e204
Import from file: fix issues with sometimes importing from file.
2019-02-24 08:07:11 +00:00
Tom Hacohen
4fb49cf5f4
Import from file: dismiss dialog and print an error in a missed error case.
2019-02-23 21:24:26 +00:00
Tom Hacohen
4f2e90484e
Bump version.
2019-02-23 13:18:59 +00:00
Tom Hacohen
2beebdb25e
Fix proguard rules for ezvcard and ical4j.
2019-02-23 13:18:46 +00:00
Tom Hacohen
3ba342ccc3
Bump version.
2019-02-21 19:24:39 +00:00
Tom Hacohen
98ca5fa318
Fix the setting controlling change notifications.
2019-02-21 19:24:39 +00:00
Tom Hacohen
dfb609a26a
Bump version.
2019-02-20 16:30:55 +00:00
Tom Hacohen
cb570978e5
Account activity: don't hide collection headers even if empty.
...
This was an annoying remanent from DAVDroid. Maybe it makes sense for
DAV, but it defo doesn't make sense for us where we can just create
collections (and anyhow always have existing defaults!).
2019-02-20 16:30:55 +00:00
Tom Hacohen
1aed0106cd
Add a button for installing OpenTasks if not already installed.
2019-02-20 16:30:55 +00:00
Tom Hacohen
bbbfbffe59
Add a helper function for checking if a package is installed.
2019-02-20 16:30:55 +00:00
Tom Hacohen
0cda396d20
Event invites: Warn about clients that don't support email attachments
2019-02-20 16:30:26 +00:00
Tom Hacohen
09ee9a2bd1
Rename and move the function checking if email attachments are supported.
2019-02-20 15:35:14 +00:00
Tom Hacohen
cfd0028300
Bump version.
2019-02-13 19:18:53 +00:00
Tom Hacohen
4d661117e5
Don't pop up notifications on bad gatewary errors as most likely a server restart.
...
The server is and should be monitored for misconfigurations, we don't want to annoy
users with temporary issues.
2019-02-13 19:06:32 +00:00
Tom Hacohen
ea0add8f45
Gracefully handle getting non json responses when expecting json.
2019-02-13 19:06:32 +00:00
Tom Hacohen
143092ecf3
Don't pop up notifications when server is under maintenance.
2019-02-13 18:52:58 +00:00
Tom Hacohen
5e8bb06b03
Add an exception for a bad gateway error.
2019-02-13 18:52:58 +00:00
Tom Hacohen
79ddd1d7c9
Fix bug with resetting contact deleted state.
2019-02-13 14:47:05 +00:00
Tom Hacohen
cabea0c3ec
Revert changes when changing read only journals.
2019-02-13 14:47:05 +00:00
Tom Hacohen
7216a177c5
Member list: indicate if a member is read only or not.
2019-02-13 13:13:55 +00:00
Tom Hacohen
a899502728
Move to a different read only icon.
2019-02-13 13:05:51 +00:00
Tom Hacohen
e44c4a394c
Add the UI to invite read only members to journals.
2019-02-13 12:58:52 +00:00
Tom Hacohen
a43d0fceb8
Fix journal readOnly json to use the correct field name.
2019-02-13 11:02:28 +00:00
Tom Hacohen
e7186df6b8
Fix compilation warning.
2019-02-12 21:50:48 +00:00
Tom Hacohen
b6453718f4
Import fragment: move the null assertions around a bit
...
Better this way. Easier to know what's going on.
2019-02-12 10:18:29 +00:00
Tom Hacohen
69bf028481
Apply group memberships: be more defensive with potentially missing members.
...
This should never happen, but it has:
kotlin.TypeCastException: null cannot be cast to non-null type com.etesync.syncadapter.resource.LocalContact
at com.etesync.syncadapter.resource.LocalGroup$Companion.applyPendingMemberships(LocalGroup.kt:66)
at com.etesync.syncadapter.syncadapter.ContactsSyncManager.postProcess(ContactsSyncManager.kt:122)
at com.etesync.syncadapter.syncadapter.SyncManager.performSync(SyncManager.kt:169)
at com.etesync.syncadapter.syncadapter.ContactsSyncAdapterService$ContactsSyncAdapter.onPerformSync(ContactsSyncAdapterService.kt:59)
at android.content.AbstractThreadedSyncAdapter$SyncThread.run(AbstractThreadedSyncAdapter.java:259)
We call it at post process exactly because we want to make sure that all
the members already exist.
I guess a deletion on a misbehaving client (maybe even the web client?)
can cause this. Potentially also with some DAV clients.
Anyhow, it's better to be more defensive here.
2019-02-12 09:27:44 +00:00
Tom Hacohen
69d17ed644
Bump version.
2019-02-07 12:10:25 +00:00
Tom Hacohen
e324f148a1
Fix proguard definitions.
...
Not sure why it wasn't showing up for me on any other phone than
the one I justed tested on, but it was indeed wrong and it's now
fixed.
2019-02-07 12:10:16 +00:00
Tom Hacohen
3862ae3726
Bump version.
2019-02-04 14:02:01 +00:00