diff options
Diffstat (limited to 'libs/documents/src/main/java')
| -rw-r--r-- | libs/documents/src/main/java/org/the_jk/cleversync/io/documents/DocumentFile.kt | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/libs/documents/src/main/java/org/the_jk/cleversync/io/documents/DocumentFile.kt b/libs/documents/src/main/java/org/the_jk/cleversync/io/documents/DocumentFile.kt index 768b679..31aeb7f 100644 --- a/libs/documents/src/main/java/org/the_jk/cleversync/io/documents/DocumentFile.kt +++ b/libs/documents/src/main/java/org/the_jk/cleversync/io/documents/DocumentFile.kt @@ -40,8 +40,22 @@ internal class DocumentFile( } } - override fun equals(other: Any?) = other is DocumentFile && - DocumentsContract.getDocumentId(other.documentUri) == DocumentsContract.getDocumentId(documentUri) + override fun equals(other: Any?): Boolean { + return when (other) { + is DocumentFile -> { + DocumentsContract.getDocumentId(other.documentUri) == + DocumentsContract.getDocumentId(documentUri) + } + + is DelayedCreationDocumentFile -> { + other == this + } + + else -> { + false + } + } + } override fun hashCode() = DocumentsContract.getDocumentId(documentUri).hashCode() override fun toString() = DocumentsContract.getDocumentId(documentUri) ?: "null" } |
