diff --git a/app/build.gradle.kts b/app/build.gradle.kts index e9d5ab541..6c594a8f9 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -195,7 +195,7 @@ dependencies { implementation("androidx.work:work-runtime:${Versions.work}") implementation("com.mapbox.mapboxsdk:mapbox-android-sdk:7.3.0") implementation("com.mapbox.mapboxsdk:mapbox-sdk-services:4.6.0") - implementation("com.etesync:journalmanager:1.0.4") + implementation("com.etesync:journalmanager:1.1.0") implementation("com.github.QuadFlask:colorpicker:0.0.15") googleplayImplementation("com.crashlytics.sdk.android:crashlytics:${Versions.crashlytics}") diff --git a/app/src/main/java/org/tasks/etesync/EteSyncClient.java b/app/src/main/java/org/tasks/etesync/EteSyncClient.java index e7aaba370..54f4dd38a 100644 --- a/app/src/main/java/org/tasks/etesync/EteSyncClient.java +++ b/app/src/main/java/org/tasks/etesync/EteSyncClient.java @@ -251,7 +251,12 @@ public class EteSyncClient { String makeCollection(String name, int color) throws VersionTooNewException, IntegrityException, HttpException { String uid = Journal.genUid(); - CollectionInfo collectionInfo = createCollectionInfo(uid, name, color); + CollectionInfo collectionInfo = new CollectionInfo(); + collectionInfo.setDisplayName(name); + collectionInfo.setType(TYPE_TASKS); + collectionInfo.setUid(uid); + collectionInfo.setSelected(true); + collectionInfo.setColor(color == 0 ? null : color); CryptoManager crypto = new CryptoManager(collectionInfo.getVersion(), encryptionPassword, uid); journalManager.create(new Journal(crypto, collectionInfo.toJson(), uid)); return uid; @@ -260,22 +265,15 @@ public class EteSyncClient { String updateCollection(CaldavCalendar calendar, String name, int color) throws VersionTooNewException, IntegrityException, HttpException { String uid = calendar.getUrl(); - CollectionInfo collectionInfo = createCollectionInfo(uid, name, color); + Journal journal = journalManager.fetch(uid); + CollectionInfo collectionInfo = convertJournalToCollection(journal); + collectionInfo.setDisplayName(name); + collectionInfo.setColor(color == 0 ? null : color); CryptoManager crypto = new CryptoManager(collectionInfo.getVersion(), encryptionPassword, uid); journalManager.update(new Journal(crypto, collectionInfo.toJson(), uid)); return uid; } - private CollectionInfo createCollectionInfo(String uid, String name, int color) { - CollectionInfo collectionInfo = new CollectionInfo(); - collectionInfo.setDisplayName(name); - collectionInfo.setType(TYPE_TASKS); - collectionInfo.setUid(uid); - collectionInfo.setSelected(true); - collectionInfo.setColor(color == 0 ? null : color); - return collectionInfo; - } - void deleteCollection(CaldavCalendar calendar) throws HttpException { journalManager.delete(Journal.fakeWithUid(calendar.getUrl())); }