#1012 - Show video attachments

This commit is contained in:
Moez Bhatti
2018-04-20 16:51:02 -04:00
parent 510a9d23b5
commit dcbae53112
17 changed files with 163 additions and 35 deletions
@@ -25,7 +25,6 @@ import android.net.Uri
import android.provider.Telephony
import model.MmsPart
import timber.log.Timber
import util.extensions.isImage
import util.extensions.isSmil
import util.extensions.isText
import java.io.BufferedReader
@@ -51,8 +50,6 @@ class CursorToPartImpl @Inject constructor(private val context: Context) : Curso
// Do nothing
}
isImage() -> image = ContentUris.withAppendedId(CONTENT_URI, id).toString()
isText() -> {
text = if (data == null) {
from.getString(from.getColumnIndexOrThrow("text"))
@@ -0,0 +1,42 @@
/*
* Copyright (C) 2017 Moez Bhatti <moez.bhatti@gmail.com>
*
* This file is part of QKSMS.
*
* QKSMS is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* QKSMS is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with QKSMS. If not, see <http://www.gnu.org/licenses/>.
*/
package migration
import io.realm.DynamicRealm
import io.realm.RealmMigration
class QkRealmMigration : RealmMigration {
override fun migrate(realm: DynamicRealm, oldVersion: Long, newVersion: Long) {
var version = oldVersion
if (version == 0L) {
realm.schema.get("MmsPart")
?.removeField("image")
version++
}
if (version < newVersion) {
throw IllegalStateException("Migration missing from v$oldVersion to v$newVersion")
}
}
}
@@ -206,7 +206,6 @@ class MessageRepositoryImpl @Inject constructor(
.where(MmsPart::class.java)
.equalTo("messages.threadId", threadId)
.contains("type", "image/")
.isNotEmpty("image")
.sort("id", Sort.DESCENDING)
.findAllAsync()
}
@@ -25,4 +25,8 @@ fun MmsPart.isSmil() = ContentType.APP_SMIL == type
fun MmsPart.isImage() = ContentType.isImageType(type)
fun MmsPart.isText() = ContentType.isTextType(type)
fun MmsPart.isVideo() = ContentType.isVideoType(type)
fun MmsPart.isText() = ContentType.isTextType(type)
fun MmsPart.hasThumbnails() = isImage() || isVideo()