1
0
mirror of https://github.com/etesync/android synced 2024-11-18 06:08:08 +00:00
Commit Graph

1061 Commits

Author SHA1 Message Date
Tom Hacohen
df9f2f4ed4 Collection member listing. 2020-09-25 10:04:33 +03:00
Tom Hacohen
251e610fe8 First sync failures on first account addition. 2020-09-25 10:04:33 +03:00
Tom Hacohen
cea7f8fdc6 Implement showing changelog item. 2020-09-25 10:04:33 +03:00
Tom Hacohen
71e37fb9a6 Only allow collection owners to edit it. 2020-09-25 10:04:33 +03:00
Tom Hacohen
290aa159b2 Implement showing fingerprint. 2020-09-25 10:04:33 +03:00
Tom Hacohen
b9d3dc691b Implement collection creation. 2020-09-25 10:04:33 +03:00
Tom Hacohen
74b4ef3ee9 Overhaul Etebase collection activity. 2020-09-25 10:04:33 +03:00
Tom Hacohen
be22beb7f9 EditCollection: add a fragment to edit collection. 2020-09-25 10:04:33 +03:00
Tom Hacohen
63a8bf91a9 ViewCollection: add a basic etebase collection viewing activity. 2020-09-25 10:04:33 +03:00
Tom Hacohen
481dcc1944 SyncManager: handle stoken being null (empty collection). 2020-09-25 10:04:33 +03:00
Tom Hacohen
52b7a84a1a Sync adapter: handle some etebase exceptions. 2020-09-25 10:04:33 +03:00
Tom Hacohen
f8c0eaca35 Sync manager: add etebase support (pushing changes) 2020-09-25 10:04:33 +03:00
Tom Hacohen
6302ab42de Sync manager: add etebase support (pulling changes) 2020-09-25 10:04:33 +03:00
Tom Hacohen
efdce8c557 Account: logout and clear cache on account removal. 2020-09-25 10:04:33 +03:00
Tom Hacohen
85fd9fdd7c AccountSettings: fix issue when saved uri is null. 2020-09-25 10:04:33 +03:00
Tom Hacohen
ea0f974086 Account activity: lock the cache when using it and cleanup color parsing 2020-09-25 10:04:33 +03:00
Tom Hacohen
deb1bb831b AddressBooksSyncAdapter: implement syncing etebase address books 2020-09-25 10:04:33 +03:00
Tom Hacohen
d6a0958d16 TaskListSyncAdapter: implement syncing etebase task lists 2020-09-25 10:04:33 +03:00
Tom Hacohen
1c284bce91 CalendarSyncAdapter: implement syncing etebase calendars. 2020-09-25 10:04:33 +03:00
Tom Hacohen
2069e9b215 LocalEtebaseCache: create a shared collection + meta type. 2020-09-25 10:04:33 +03:00
Tom Hacohen
608f1ff371 Sync collections and show them in the account page. 2020-09-25 10:04:33 +03:00
Tom Hacohen
2c0e14d3a3 EtebaseLocalCache: add stoken and fix issues with loading files. 2020-09-25 10:04:33 +03:00
Tom Hacohen
79b650da38 LocalEtebaseCache: make sure we always return the same item. 2020-09-25 10:04:33 +03:00
Tom Hacohen
eeb93f523d Get account list: add etebase support. 2020-09-25 10:04:33 +03:00
Tom Hacohen
69b044a444 Remove redundant code. 2020-09-25 10:04:33 +03:00
Tom Hacohen
09c932c02c Account Settings: add a flag to check if legacy (and use in account page). 2020-09-25 10:04:33 +03:00
Tom Hacohen
90cc39deeb EtebaseLocalCache: add a class that implements a local cache for etebase. 2020-09-25 10:04:33 +03:00
Tom Hacohen
5da8edd54d Login dialog: add support for login into etebase accounts 2020-09-25 10:04:33 +03:00
Tom Hacohen
476f756307 Simplify Configuration class - caldav/carddav aren't required. 2020-09-25 10:04:33 +03:00
Tom Hacohen
4bf36e7ad3 Add kotlin extensions, enable R8 and fix errors. 2020-09-25 10:04:33 +03:00
Tom Hacohen
ee8c8d8fe1 Login credentials: keep the default uri (even if null).
We need this for etebase compat.
2020-09-25 10:04:33 +03:00
Tom Hacohen
65861b3f1c Account settings: add support for storing an etebase session. 2020-09-25 10:04:33 +03:00
Tom Hacohen
1062ed5833 Update strings because usernames need not be emails anymore. 2020-09-25 10:04:33 +03:00
Tom Hacohen
6718da0615 strings: rename a string to make more sense. 2020-09-25 10:04:27 +03:00
Oğuz Ersen
c022571b87 Translated using Weblate (Turkish)
Currently translated at 100.0% (315 of 315 strings)

Translation: EteSync/Android
Translate-URL: https://hosted.weblate.org/projects/etesync/android/tr/
2020-09-25 09:57:54 +03:00
Artem
f985303583 Translated using Weblate (Russian)
Currently translated at 10.7% (34 of 315 strings)

Translation: EteSync/Android
Translate-URL: https://hosted.weblate.org/projects/etesync/android/ru/
2020-09-25 09:57:54 +03:00
Allan Nordhøy
92668188af Translated using Weblate (Norwegian Bokmål)
Currently translated at 99.3% (313 of 315 strings)

Translation: EteSync/Android
Translate-URL: https://hosted.weblate.org/projects/etesync/android/nb_NO/
2020-09-25 09:57:54 +03:00
J. Lavoie
67a20c6f54 Translated using Weblate (Italian)
Currently translated at 31.7% (100 of 315 strings)

Translation: EteSync/Android
Translate-URL: https://hosted.weblate.org/projects/etesync/android/it/
2020-09-25 09:57:54 +03:00
J. Lavoie
e6b39f4f0b Translated using Weblate (French)
Currently translated at 51.1% (161 of 315 strings)

Translation: EteSync/Android
Translate-URL: https://hosted.weblate.org/projects/etesync/android/fr/
2020-09-25 09:57:54 +03:00
J. Lavoie
c7b438ebbf Translated using Weblate (German)
Currently translated at 52.3% (165 of 315 strings)

Translation: EteSync/Android
Translate-URL: https://hosted.weblate.org/projects/etesync/android/de/
2020-09-25 09:57:54 +03:00
Oğuz Ersen
b6922d17ee Translated using Weblate (Turkish)
Currently translated at 31.1% (98 of 315 strings)

Translation: EteSync/Android
Translate-URL: https://hosted.weblate.org/projects/etesync/android/tr/
2020-09-23 16:59:56 +03:00
Oğuz Ersen
6a697e0e26 Translated using Weblate (Turkish)
Currently translated at 30.7% (97 of 315 strings)

Translation: EteSync/Android
Translate-URL: https://hosted.weblate.org/projects/etesync/android/tr/
2020-09-23 16:59:56 +03:00
Tom Hacohen
aefdfe5479 Update okhttp3 dependency. 2020-09-06 16:07:23 +03:00
Tom Hacohen
09c75914d6 Update appcompat deps and update styles as required 2020-09-06 14:27:24 +03:00
Tom Hacohen
c6c3dd35f6 Explicitly handle securityException for tasks permissions.
It should be handled automatically by the sync adapter's
onSecurityException function. I have no idea why it doesn't work
automatically for some users (but is fine for me).
2020-09-06 13:21:24 +03:00
Tom Hacohen
c90bf78dc5 Enable R8 and fix errors. 2020-09-06 11:51:22 +03:00
Tom Hacohen
cf2198b1b8 Sync contacts: make the account user visible.
It doesn't really matter, because it doesn't actually do anything (although it should),
but it should be user visible.
2020-09-06 11:38:54 +03:00
Tom Hacohen
74e245de6d Android 11: export address book
Changes in Android 11 made it so address books are no longer shown. This
changes fixes it.

Based on DAVx5's similar fix.

638f9f9264
2020-09-06 11:37:43 +03:00
Tom Hacohen
2284af19a7 Remove redundant code. 2020-08-07 09:07:16 +03:00
Tom Hacohen
30354e4158 Tasks: reorder menu now that there are multiple task providers. 2020-08-07 08:53:27 +03:00
Tom Hacohen
8d32a5a956 Tasks: improve warning messages to include Tasks.org. 2020-08-07 08:53:27 +03:00
Alex Baker
a36cfb8c9b Use getWantedTaskProvider 2020-08-07 08:53:27 +03:00
Tom Hacohen
52bf0b615c Add utilities to update and get the wanted tasks provider. 2020-08-07 08:53:27 +03:00
Tom Hacohen
5fca068845 Add a setting to choose if we prefer Tasks.org or OpenTasks. 2020-08-07 08:53:27 +03:00
Alex Baker
e01f54c687 Add Tasks.org support 2020-08-04 13:09:38 -05:00
Tom Hacohen
a3b0f71c13 Add a link to install Tasks.org (recommended tasks provider). 2020-07-05 11:06:56 +03:00
Tom Hacohen
3103d4d42a Add a notice about only OpenTasks lists showing in app. 2020-07-05 10:58:27 +03:00
Tom Hacohen
55d90d9a9d Change contact link to lead to the website rather than email.
The support load was getting too much, and we want people to join the chat
anyway...
2020-07-05 10:21:54 +03:00
Tom Hacohen
b0208f13a5 Fix compilation. 2020-07-03 15:22:00 +03:00
Tom Hacohen
80a9f3a645 Change default collection names from 'Default' to be descriptive
Fixes https://github.com/etesync/android/issues/118
2020-07-02 13:27:46 +03:00
Tom Hacohen
bc75e9371b Add a notice to the import screen about the import importing everything
This was first flagged by a user here:
https://www.reddit.com/r/EteSync/comments/hbdxf8/quickest_way_to_revert_an_import_into_address_book/
2020-06-21 15:44:32 +03:00
Tom Hacohen
c2df2f8d44 Show a snack if missing permissions.
A lot of people don't grant etesync the appropriate permissions
and then complain it doesn't work. Hopefully this will fix this
point of failure.
2020-06-03 09:45:58 +03:00
Tom Hacohen
47c96963e9 Journal: don't attempt fetching entries if we are already up to date.
For a while now, etesync servers return the last entry uid as part of the
general journal querying. We can use this to check if we even need to
update the journals or not, making the overall sync much faster because
we no longer need to fetch journals that haven't changed.
2020-03-27 20:23:40 +03:00
Tom Hacohen
b530b4c02f Tasks collection view: add a warning about tasks not showing without OpenTasks.
Related to #105 (though not a fix...).
2020-03-12 14:26:06 +02:00
bennypr0fane
d92bc50a1d Update German translation and fix typos
Merge of #108
2020-03-06 19:09:08 +02:00
Tom Hacohen
ec78fc52af Member add: change confusing string.
A few users reached out about this and were confused, not understanding
what we mean by having the journal sharing disabled.
2020-03-02 20:21:35 +02:00
Tom Hacohen
bb2b116723 Fix crash when initialising database.
This bug was introduced a few commits ago, in:
9f6b63620e
2020-02-28 22:45:01 +02:00
Tom Hacohen
20387612db Journal entry list: mark malformed entries with a bug icon.
This is an indication that an entry failed to parse.
2020-02-28 13:00:48 +02:00
Tom Hacohen
9f6b63620e Sync: make malformed entry errors non-fatal.
What we do is we mark them as failed and note the error, though we don't
currently have a way to notify the user about these errors. This will
follow in the next commit.
2020-02-28 12:58:56 +02:00
Tom Hacohen
202847f30c Remove unused code. 2020-02-11 22:51:02 +02:00
Tom Hacohen
d603245eb3 Fix DebugInfoActivity - was crashing when fetching services
The issue was introduced in df94fde5ff
because of a bad refactor by android-studio.
2020-02-10 12:56:13 +02:00
Tom Hacohen
021c6595e3 Add a FAB to the collection view activity with info about EteSync.
Many users don't understand how EteSync works and think that this replaces
their existing apps. This should make it more obvious that they should
just use the apps they already use.
2020-02-05 16:03:06 +02:00
Tom Hacohen
ccc17ba141 Login: change the welcome message based if first login or not.
This shared login screen was a shortcut we took a while back, but it's
now time to fix it and make it clear what's going on, just like in the
other apps.
2020-02-05 15:09:46 +02:00
Tom Hacohen
df94fde5ff Move CollectionInfo and SyncEntry to the journalmanager module. 2020-01-29 15:26:35 +02:00
Tom Hacohen
09e2a9255a CollectionInfo: remove deprecated code. 2020-01-29 00:39:14 +02:00
Tom Hacohen
ceead4815b Move to the external journalmanager module (moved the code there) 2020-01-28 20:56:39 +02:00
Tom Hacohen
b70e8903c5 SettingsDB: fix file descriptor leaks. 2020-01-26 13:06:02 +02:00
Tom Hacohen
5857ed51d0 Logout: invalidate the auth token after logging out. 2020-01-23 19:59:46 +02:00
Tom Hacohen
a04a6ee284 JournalAuthenticator: add a way to invalidate tokens. 2020-01-23 19:31:18 +02:00
yumekui
13f7bd9fd0 German translation: Calendar invites 2020-01-21 18:08:06 +02:00
Tom Hacohen
5db8545f8f Upgrade ical4android. 2020-01-09 12:54:22 +02:00
Tom Hacohen
72253932d3 Revert "Revert "Revert "App: only init the data store once per application."""
Even more reverts. :(
After additional testing (based on user reports) it seems like this may
still be causing issues. I find it weird and don't understand why, but
I'm reverting this as a precaution so people aren't affected.

Related to #97

This reverts commit da3ac48bbf.
2019-12-17 10:08:40 +02:00
Tom Hacohen
496b6cd633 Fix tests. 2019-11-28 18:51:10 +02:00
Tom Hacohen
63cbaddfc6 Add a lock when pushing changes.
This is not needed for proper deployments where the server properly locks
the database tables. But in some older etesync server versions and possibly
bad databases, this is not the case.
OpenTasks causes EteSync to concurrently try to sync, so this at least makes
sure this race condition doesn't happen for these rare cases.
2019-11-26 12:47:48 +02:00
Tom Hacohen
e83c95e8ec Sync settings: remove deprecated 5/10 minutes sync options from the UI. 2019-11-25 23:08:59 +02:00
Tom Hacohen
5fc26c6461 Fix issue with journal preview showing the wrong dates. 2019-11-21 18:56:40 +02:00
Tom Hacohen
da3ac48bbf Revert "Revert "App: only init the data store once per application.""
A lot of reverts. :)

According to more information and testing in #97, this was indeed
unrelated and 1.9.3 was enough to fix it.

This reverts commit 73179318f3.
2019-11-18 13:43:36 +02:00
Tom Hacohen
e860a37bf7 Update the user guide's url to the Android specific one. 2019-11-14 18:22:52 +02:00
Tom Hacohen
73179318f3 Revert "App: only init the data store once per application."
It seems like this is the cause of #97 as 19b4e2a796
hasn't fixed the issue. Still not sure why it's happening, but reverting
it so no more users suffer from this issue.

This reverts commit 26ea8900a2.
2019-11-11 19:37:10 +02:00
Tom Hacohen
19b4e2a796 Revert "Add a reentrant lock to our entity data store."
I'm pretty sure this was causing the recent issues with tasks and events
disappearing as described in #97.

Regardless of this, it's not actually needed as SQLite on Android is
already thread-safe. The SQLite locks some users were experiencing were
probably fixed in 26ea8900a2

This reverts commit 9ed172e23c.
2019-11-04 14:01:32 +02:00
Ricki Hirner
8422892708 Address books accounts: set initial user data twice for older Android versions 2019-11-04 10:16:42 +02:00
Tom Hacohen
8abbbd122f Add autofill hints to the login screen. 2019-11-04 10:08:49 +02:00
Tom Hacohen
413218d55f Fix Norwegian Bokmål to not translate untranslatable strings.
This should fix f-droid build. lintVitalRelease was failing.

https://f-droid.org/wiki/page/com.etesync.syncadapter/lastbuild_91
2019-11-03 13:15:49 +02:00
Marius Lindvall
0518269812 Translate to Norwegian Bokmål 2019-10-20 14:35:14 +03:00
Tom Hacohen
26ea8900a2 App: only init the data store once per application.
We were accidentally initialising it once every time we were
trying to access it.
2019-10-16 14:48:22 +03:00
Tom Hacohen
9ed172e23c Add a reentrant lock to our entity data store.
Should fix issues with multiple threads trying to write to the store
at the same time.
2019-10-16 11:26:37 +03:00
Tom Hacohen
a74f188b3b requery: use our own data store class. 2019-10-16 11:15:11 +03:00
Tom Hacohen
d8600f2f04 SetupEncryption: fix issue with inserting existing services. 2019-10-16 10:36:36 +03:00
Tom Hacohen
990ab81c2b ServiceEntity: rename fetch to fetchOrCreate.
This is what it was doing anyway.
2019-10-16 10:35:53 +03:00
Tom Hacohen
9600cd3f1f Service default creation: correctly set the type.
Was a copy-paste error and it was setting type to Tasks.
2019-10-16 10:32:55 +03:00
Tom Hacohen
f7f2dac76b Change the wording for setting collection's color.
The wording assumed the collection was a calendar, though it
can in fact be a task list too. Changed the wording to be
generic.

Fixes #93.
2019-10-15 11:59:00 +03:00
Tom Hacohen
5df3a59a2e Gracefully handle trying to insert again an entry we have in the db. 2019-10-09 13:20:44 +03:00
Tom Hacohen
570ed1b84a SyncAdapter: move journal fetching to a separate caching class
Before this change we were fetching the journals 3 times each time (once
for each journal type).
This was wasteful both for the server and battery life. Now we just cache the
requests for a few seconds with the assumption that a burst most mean it's
the same sync operation.
2019-09-26 18:07:14 +03:00
Tom Hacohen
b50c633ca1 Improve debug information in createLocalEntry.
Print some extra information about the entry we failed to create.
2019-09-25 23:55:28 +03:00
Tom Hacohen
67b6dce44f Basemanager: consider SSLProtocolExceptions as real issues.
Kind of brings back what 1bbf00c6bd removed.
2019-09-12 00:18:05 +01:00
Tom Hacohen
c26c2c5332 Update cert4android and adjust HttpClient accordingly 2019-09-11 09:36:48 +01:00
Tom Hacohen
1bbf00c6bd Revert "BaseManager: Consider SSLHandshakeExceptions as real issues."
This change was mostly flagging non-real issues, like connection reset
by peer. Revert for now and come up with an alternative solution.

This reverts commit d3ad17e0bb.
2019-09-09 08:45:08 +01:00
Tom Hacohen
37a1c06dbd Account settings: change Mannage Account to Account Dashboard 2019-09-06 12:07:05 +01:00
Tom Hacohen
99a174c93d Side menu: rename external links to useful links. 2019-09-06 12:05:58 +01:00
Tom Hacohen
b450d20d2a Side menu: change Web site to Website. 2019-09-06 11:55:44 +01:00
Tom Hacohen
6ca0af69a2 Side menu: change from Contact developer to Contact. 2019-09-06 11:51:25 +01:00
Tom Hacohen
d8cb979d36 Journal viewer: make raw journal entries's text selectable. 2019-09-05 20:23:36 +01:00
Tom Hacohen
ffb7f53c0a TaskList: catch exception when trying to acquire task list 2019-08-29 14:25:52 +01:00
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
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
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
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
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
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
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
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
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
16efe446c0 WebActivity: gracefully handle unsupported link types. 2019-06-13 10:10:23 +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
58b54f9d66 Account list: workaround rare crash when listing accounts. 2019-05-05 17:45:44 +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
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