diff --git a/build.gradle b/build.gradle
index feadbf81..4e29c087 100644
--- a/build.gradle
+++ b/build.gradle
@@ -42,7 +42,7 @@ allprojects {
ext {
androidApplicationId = 'org.cryptomator'
androidVersionCode = getVersionCode()
- androidVersionName = '1.5.12-SNAPSHOT'
+ androidVersionName = '1.5.12'
}
repositories {
mavenCentral()
diff --git a/fastlane/metadata/android/de-DE/changelogs/default.txt b/fastlane/metadata/android/de-DE/changelogs/default.txt
index 96332f4f..d723022d 100644
--- a/fastlane/metadata/android/de-DE/changelogs/default.txt
+++ b/fastlane/metadata/android/de-DE/changelogs/default.txt
@@ -1 +1,4 @@
-- Foo
\ No newline at end of file
+- Möglichkeit zum Sortieren der Tresorliste hinzugefügt
+- Logging in Google Drive Cloud hinzugefügt
+- Verhalten bei Änderung des OneDrive-Passworts verbessert
+- CryptoBot-Symbole aufpoliert
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/default.txt b/fastlane/metadata/android/en-US/changelogs/default.txt
index 96332f4f..22075f45 100644
--- a/fastlane/metadata/android/en-US/changelogs/default.txt
+++ b/fastlane/metadata/android/en-US/changelogs/default.txt
@@ -1 +1,4 @@
-- Foo
\ No newline at end of file
+- Added possibility to sort vault list
+- Added logging to Google drive cloud
+- Enhanced behavior when OneDrive password changed
+- Polished CryptoBot icons
\ No newline at end of file
diff --git a/fastlane/metadata/android/fr-FR/changelogs/default.txt b/fastlane/metadata/android/fr-FR/changelogs/default.txt
index 96332f4f..e69de29b 100644
--- a/fastlane/metadata/android/fr-FR/changelogs/default.txt
+++ b/fastlane/metadata/android/fr-FR/changelogs/default.txt
@@ -1 +0,0 @@
-- Foo
\ No newline at end of file
diff --git a/fastlane/release-notes.html b/fastlane/release-notes.html
index 8066f97b..839af27d 100644
--- a/fastlane/release-notes.html
+++ b/fastlane/release-notes.html
@@ -1,3 +1,6 @@
- - Foo
+ - Added possibility to sort vault list
+ - Added logging to Google drive cloud
+ - Enhanced behavior when OneDrive password changed
+ - Polished CryptoBot icons
\ No newline at end of file
diff --git a/presentation/src/main/java/org/cryptomator/presentation/model/comparator/VaultPositionComparator.kt b/presentation/src/main/java/org/cryptomator/presentation/model/comparator/VaultPositionComparator.kt
new file mode 100644
index 00000000..08324c77
--- /dev/null
+++ b/presentation/src/main/java/org/cryptomator/presentation/model/comparator/VaultPositionComparator.kt
@@ -0,0 +1,10 @@
+package org.cryptomator.presentation.model.comparator
+
+import org.cryptomator.presentation.model.VaultModel
+
+class VaultPositionComparator : Comparator {
+
+ override fun compare(v1: VaultModel, v2: VaultModel): Int {
+ return v1.position - v2.position
+ }
+}
diff --git a/presentation/src/main/java/org/cryptomator/presentation/ui/adapter/BiometricAuthSettingsAdapter.kt b/presentation/src/main/java/org/cryptomator/presentation/ui/adapter/BiometricAuthSettingsAdapter.kt
index 2b45f0c1..ee154fa0 100644
--- a/presentation/src/main/java/org/cryptomator/presentation/ui/adapter/BiometricAuthSettingsAdapter.kt
+++ b/presentation/src/main/java/org/cryptomator/presentation/ui/adapter/BiometricAuthSettingsAdapter.kt
@@ -4,6 +4,7 @@ import android.view.View
import com.google.android.material.switchmaterial.SwitchMaterial
import org.cryptomator.presentation.R
import org.cryptomator.presentation.model.VaultModel
+import org.cryptomator.presentation.model.comparator.VaultPositionComparator
import org.cryptomator.presentation.ui.adapter.BiometricAuthSettingsAdapter.BiometricAuthSettingsViewHolder
import javax.inject.Inject
import kotlinx.android.synthetic.main.item_biometric_auth_vault.view.cloud
@@ -12,7 +13,7 @@ import kotlinx.android.synthetic.main.item_biometric_auth_vault.view.vaultName
class BiometricAuthSettingsAdapter //
@Inject
-constructor() : RecyclerViewBaseAdapter() {
+constructor() : RecyclerViewBaseAdapter(VaultPositionComparator()) {
private var onVaultBiometricAuthSettingsChanged: OnVaultBiometricAuthSettingsChanged? = null
diff --git a/presentation/src/main/java/org/cryptomator/presentation/ui/adapter/SharedLocationsAdapter.kt b/presentation/src/main/java/org/cryptomator/presentation/ui/adapter/SharedLocationsAdapter.kt
index 4b8403dc..59693452 100644
--- a/presentation/src/main/java/org/cryptomator/presentation/ui/adapter/SharedLocationsAdapter.kt
+++ b/presentation/src/main/java/org/cryptomator/presentation/ui/adapter/SharedLocationsAdapter.kt
@@ -3,6 +3,7 @@ package org.cryptomator.presentation.ui.adapter
import android.view.View
import org.cryptomator.presentation.R
import org.cryptomator.presentation.model.VaultModel
+import org.cryptomator.presentation.model.comparator.VaultPositionComparator
import org.cryptomator.presentation.ui.adapter.SharedLocationsAdapter.VaultViewHolder
import javax.inject.Inject
import kotlinx.android.synthetic.main.item_shareable_location.view.chooseFolderLocation
@@ -12,7 +13,7 @@ import kotlinx.android.synthetic.main.item_shareable_location.view.selectedVault
import kotlinx.android.synthetic.main.item_shareable_location.view.vaultName
class SharedLocationsAdapter @Inject
-constructor() : RecyclerViewBaseAdapter() {
+constructor() : RecyclerViewBaseAdapter(VaultPositionComparator()) {
private var selectedVault: VaultModel? = null
private var selectedLocation: String? = null
diff --git a/presentation/src/main/java/org/cryptomator/presentation/ui/adapter/VaultsAdapter.kt b/presentation/src/main/java/org/cryptomator/presentation/ui/adapter/VaultsAdapter.kt
index 57d3407b..946aebfe 100644
--- a/presentation/src/main/java/org/cryptomator/presentation/ui/adapter/VaultsAdapter.kt
+++ b/presentation/src/main/java/org/cryptomator/presentation/ui/adapter/VaultsAdapter.kt
@@ -3,6 +3,7 @@ package org.cryptomator.presentation.ui.adapter
import android.view.View
import org.cryptomator.presentation.R
import org.cryptomator.presentation.model.VaultModel
+import org.cryptomator.presentation.model.comparator.VaultPositionComparator
import org.cryptomator.presentation.ui.adapter.VaultsAdapter.VaultViewHolder
import javax.inject.Inject
import kotlinx.android.synthetic.main.item_vault.view.cloudImage
@@ -12,7 +13,7 @@ import kotlinx.android.synthetic.main.item_vault.view.vaultName
import kotlinx.android.synthetic.main.item_vault.view.vaultPath
class VaultsAdapter @Inject
-internal constructor() : RecyclerViewBaseAdapter(VaultModelComparator()), VaultsMoveListener.Listener {
+internal constructor() : RecyclerViewBaseAdapter(VaultPositionComparator()), VaultsMoveListener.Listener {
interface OnItemInteractionListener {
@@ -82,11 +83,4 @@ internal constructor() : RecyclerViewBaseAdapter {
-
- override fun compare(o1: VaultModel, o2: VaultModel): Int {
- return o1.position - o2.position
- }
- }
}
diff --git a/presentation/src/main/java/org/cryptomator/presentation/ui/fragment/SharedFilesFragment.kt b/presentation/src/main/java/org/cryptomator/presentation/ui/fragment/SharedFilesFragment.kt
index bafbcdfa..351aee11 100644
--- a/presentation/src/main/java/org/cryptomator/presentation/ui/fragment/SharedFilesFragment.kt
+++ b/presentation/src/main/java/org/cryptomator/presentation/ui/fragment/SharedFilesFragment.kt
@@ -6,6 +6,7 @@ import org.cryptomator.presentation.R
import org.cryptomator.presentation.model.CloudFolderModel
import org.cryptomator.presentation.model.SharedFileModel
import org.cryptomator.presentation.model.VaultModel
+import org.cryptomator.presentation.model.comparator.VaultPositionComparator
import org.cryptomator.presentation.presenter.SharedFilesPresenter
import org.cryptomator.presentation.ui.adapter.SharedFilesAdapter
import org.cryptomator.presentation.ui.adapter.SharedFilesAdapter.Callback
@@ -70,9 +71,10 @@ class SharedFilesFragment : BaseFragment() {
}
fun displayVaults(vaults: List?) {
- if (vaults?.isNotEmpty() == true) {
- presenter.selectedVault?.let { presenter.selectedVault = vaults[vaults.indexOf(it)] }
- val preselectedVault = presenter.selectedVault ?: vaults[0]
+ val sortedVaults = vaults?.sortedWith(VaultPositionComparator())
+ if (sortedVaults?.isNotEmpty() == true) {
+ presenter.selectedVault?.let { presenter.selectedVault = sortedVaults[sortedVaults.indexOf(it)] }
+ val preselectedVault = presenter.selectedVault ?: sortedVaults[0]
locationsAdapter.setPreselectedVault(preselectedVault)
presenter.onVaultSelected(preselectedVault)
}