mirror of
https://github.com/nextcloud/talk-android
synced 2025-06-19 19:49:33 +01:00
Remove 'UserEntity' from 'SharedItem' model
Signed-off-by: Tim Krüger <t@timkrueger.me>
This commit is contained in:
parent
6b9ab738cb
commit
0d65824fa6
@ -76,7 +76,7 @@ class SharedItemsActivity : AppCompatActivity() {
|
|||||||
LinearLayoutManager(this, LinearLayoutManager.VERTICAL, false)
|
LinearLayoutManager(this, LinearLayoutManager.VERTICAL, false)
|
||||||
}
|
}
|
||||||
|
|
||||||
val adapter = SharedItemsAdapter(showGrid, userEntity.username, userEntity.token).apply {
|
val adapter = SharedItemsAdapter(showGrid, userEntity).apply {
|
||||||
items = it.items
|
items = it.items
|
||||||
}
|
}
|
||||||
binding.imageRecycler.adapter = adapter
|
binding.imageRecycler.adapter = adapter
|
||||||
|
@ -5,12 +5,12 @@ import android.view.ViewGroup
|
|||||||
import androidx.recyclerview.widget.RecyclerView
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
import com.nextcloud.talk.databinding.SharedItemGridBinding
|
import com.nextcloud.talk.databinding.SharedItemGridBinding
|
||||||
import com.nextcloud.talk.databinding.SharedItemListBinding
|
import com.nextcloud.talk.databinding.SharedItemListBinding
|
||||||
|
import com.nextcloud.talk.models.database.UserEntity
|
||||||
import com.nextcloud.talk.shareditems.model.SharedItem
|
import com.nextcloud.talk.shareditems.model.SharedItem
|
||||||
|
|
||||||
class SharedItemsAdapter(
|
class SharedItemsAdapter(
|
||||||
private val showGrid: Boolean,
|
private val showGrid: Boolean,
|
||||||
private val userName: String,
|
private val userEntity: UserEntity
|
||||||
private val userToken: String
|
|
||||||
) : RecyclerView.Adapter<SharedItemsViewHolder>() {
|
) : RecyclerView.Adapter<SharedItemsViewHolder>() {
|
||||||
|
|
||||||
var items: List<SharedItem> = emptyList()
|
var items: List<SharedItem> = emptyList()
|
||||||
@ -24,8 +24,7 @@ class SharedItemsAdapter(
|
|||||||
parent,
|
parent,
|
||||||
false
|
false
|
||||||
),
|
),
|
||||||
userName,
|
userEntity
|
||||||
userToken
|
|
||||||
)
|
)
|
||||||
} else {
|
} else {
|
||||||
SharedItemsListViewHolder(
|
SharedItemsListViewHolder(
|
||||||
@ -34,8 +33,7 @@ class SharedItemsAdapter(
|
|||||||
parent,
|
parent,
|
||||||
false
|
false
|
||||||
),
|
),
|
||||||
userName,
|
userEntity
|
||||||
userToken
|
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4,12 +4,12 @@ import android.view.View
|
|||||||
import android.widget.ProgressBar
|
import android.widget.ProgressBar
|
||||||
import com.facebook.drawee.view.SimpleDraweeView
|
import com.facebook.drawee.view.SimpleDraweeView
|
||||||
import com.nextcloud.talk.databinding.SharedItemGridBinding
|
import com.nextcloud.talk.databinding.SharedItemGridBinding
|
||||||
|
import com.nextcloud.talk.models.database.UserEntity
|
||||||
|
|
||||||
class SharedItemsGridViewHolder(
|
class SharedItemsGridViewHolder(
|
||||||
override val binding: SharedItemGridBinding,
|
override val binding: SharedItemGridBinding,
|
||||||
userName: String,
|
userEntity: UserEntity
|
||||||
userToken: String
|
) : SharedItemsViewHolder(binding, userEntity) {
|
||||||
) : SharedItemsViewHolder(binding, userName, userToken) {
|
|
||||||
|
|
||||||
override val image: SimpleDraweeView
|
override val image: SimpleDraweeView
|
||||||
get() = binding.image
|
get() = binding.image
|
||||||
|
@ -5,14 +5,14 @@ import android.view.View
|
|||||||
import android.widget.ProgressBar
|
import android.widget.ProgressBar
|
||||||
import com.facebook.drawee.view.SimpleDraweeView
|
import com.facebook.drawee.view.SimpleDraweeView
|
||||||
import com.nextcloud.talk.databinding.SharedItemListBinding
|
import com.nextcloud.talk.databinding.SharedItemListBinding
|
||||||
|
import com.nextcloud.talk.models.database.UserEntity
|
||||||
import com.nextcloud.talk.shareditems.model.SharedItem
|
import com.nextcloud.talk.shareditems.model.SharedItem
|
||||||
import com.nextcloud.talk.utils.DateUtils
|
import com.nextcloud.talk.utils.DateUtils
|
||||||
|
|
||||||
class SharedItemsListViewHolder(
|
class SharedItemsListViewHolder(
|
||||||
override val binding: SharedItemListBinding,
|
override val binding: SharedItemListBinding,
|
||||||
userName: String,
|
userEntity: UserEntity
|
||||||
userToken: String
|
) : SharedItemsViewHolder(binding, userEntity) {
|
||||||
) : SharedItemsViewHolder(binding, userName, userToken) {
|
|
||||||
|
|
||||||
override val image: SimpleDraweeView
|
override val image: SimpleDraweeView
|
||||||
get() = binding.fileImage
|
get() = binding.fileImage
|
||||||
|
@ -16,6 +16,7 @@ import com.facebook.drawee.view.SimpleDraweeView
|
|||||||
import com.facebook.imagepipeline.common.RotationOptions
|
import com.facebook.imagepipeline.common.RotationOptions
|
||||||
import com.facebook.imagepipeline.image.ImageInfo
|
import com.facebook.imagepipeline.image.ImageInfo
|
||||||
import com.facebook.imagepipeline.request.ImageRequestBuilder
|
import com.facebook.imagepipeline.request.ImageRequestBuilder
|
||||||
|
import com.nextcloud.talk.models.database.UserEntity
|
||||||
import com.nextcloud.talk.shareditems.model.SharedItem
|
import com.nextcloud.talk.shareditems.model.SharedItem
|
||||||
import com.nextcloud.talk.utils.ApiUtils
|
import com.nextcloud.talk.utils.ApiUtils
|
||||||
import com.nextcloud.talk.utils.DrawableUtils
|
import com.nextcloud.talk.utils.DrawableUtils
|
||||||
@ -23,8 +24,7 @@ import com.nextcloud.talk.utils.FileViewerUtils
|
|||||||
|
|
||||||
abstract class SharedItemsViewHolder(
|
abstract class SharedItemsViewHolder(
|
||||||
open val binding: ViewBinding,
|
open val binding: ViewBinding,
|
||||||
userName: String,
|
private val userEntity: UserEntity
|
||||||
userToken: String
|
|
||||||
) : RecyclerView.ViewHolder(binding.root) {
|
) : RecyclerView.ViewHolder(binding.root) {
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
@ -35,7 +35,12 @@ abstract class SharedItemsViewHolder(
|
|||||||
abstract val clickTarget: View
|
abstract val clickTarget: View
|
||||||
abstract val progressBar: ProgressBar
|
abstract val progressBar: ProgressBar
|
||||||
|
|
||||||
private val authHeader = mapOf(Pair("Authorization", ApiUtils.getCredentials(userName, userToken)))
|
private val authHeader = mapOf(
|
||||||
|
Pair(
|
||||||
|
"Authorization",
|
||||||
|
ApiUtils.getCredentials(userEntity.username, userEntity.token)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
open fun onBind(item: SharedItem) {
|
open fun onBind(item: SharedItem) {
|
||||||
image.hierarchy.setPlaceholderImage(staticImage(item.mimeType, image))
|
image.hierarchy.setPlaceholderImage(staticImage(item.mimeType, image))
|
||||||
@ -43,7 +48,7 @@ abstract class SharedItemsViewHolder(
|
|||||||
image.controller = configurePreview(item)
|
image.controller = configurePreview(item)
|
||||||
}
|
}
|
||||||
|
|
||||||
val fileViewerUtils = FileViewerUtils(image.context, item.userEntity)
|
val fileViewerUtils = FileViewerUtils(image.context, userEntity)
|
||||||
|
|
||||||
clickTarget.setOnClickListener {
|
clickTarget.setOnClickListener {
|
||||||
fileViewerUtils.openFile(
|
fileViewerUtils.openFile(
|
||||||
|
@ -1,7 +1,5 @@
|
|||||||
package com.nextcloud.talk.shareditems.model
|
package com.nextcloud.talk.shareditems.model
|
||||||
|
|
||||||
import com.nextcloud.talk.models.database.UserEntity
|
|
||||||
|
|
||||||
data class SharedItem(
|
data class SharedItem(
|
||||||
val id: String,
|
val id: String,
|
||||||
val name: String,
|
val name: String,
|
||||||
@ -11,6 +9,5 @@ data class SharedItem(
|
|||||||
val link: String?,
|
val link: String?,
|
||||||
val mimeType: String?,
|
val mimeType: String?,
|
||||||
val previewAvailable: Boolean?,
|
val previewAvailable: Boolean?,
|
||||||
val previewLink: String,
|
val previewLink: String
|
||||||
val userEntity: UserEntity,
|
|
||||||
)
|
)
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
package com.nextcloud.talk.shareditems.repositories
|
package com.nextcloud.talk.shareditems.repositories
|
||||||
|
|
||||||
import com.nextcloud.talk.models.database.UserEntity
|
|
||||||
import com.nextcloud.talk.shareditems.model.SharedItemType
|
import com.nextcloud.talk.shareditems.model.SharedItemType
|
||||||
import com.nextcloud.talk.shareditems.model.SharedMediaItems
|
import com.nextcloud.talk.shareditems.model.SharedMediaItems
|
||||||
import io.reactivex.Observable
|
import io.reactivex.Observable
|
||||||
@ -21,7 +20,6 @@ interface SharedItemsRepository {
|
|||||||
val userName: String,
|
val userName: String,
|
||||||
val userToken: String,
|
val userToken: String,
|
||||||
val baseUrl: String,
|
val baseUrl: String,
|
||||||
val userEntity: UserEntity,
|
|
||||||
val roomToken: String
|
val roomToken: String
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
@ -69,8 +69,7 @@ class SharedItemsRepositoryImpl @Inject constructor(private val ncApi: NcApi) :
|
|||||||
fileParameters["link"]!!,
|
fileParameters["link"]!!,
|
||||||
fileParameters["mimetype"]!!,
|
fileParameters["mimetype"]!!,
|
||||||
previewAvailable,
|
previewAvailable,
|
||||||
previewLink(fileParameters["id"], parameters.baseUrl),
|
previewLink(fileParameters["id"], parameters.baseUrl)
|
||||||
parameters.userEntity
|
|
||||||
)
|
)
|
||||||
} else {
|
} else {
|
||||||
Log.w(TAG, "location and deckcard are not yet supported")
|
Log.w(TAG, "location and deckcard are not yet supported")
|
||||||
|
@ -6,8 +6,8 @@ import androidx.lifecycle.MutableLiveData
|
|||||||
import androidx.lifecycle.ViewModel
|
import androidx.lifecycle.ViewModel
|
||||||
import com.nextcloud.talk.models.database.UserEntity
|
import com.nextcloud.talk.models.database.UserEntity
|
||||||
import com.nextcloud.talk.shareditems.model.SharedItemType
|
import com.nextcloud.talk.shareditems.model.SharedItemType
|
||||||
import com.nextcloud.talk.shareditems.repositories.SharedItemsRepository
|
|
||||||
import com.nextcloud.talk.shareditems.model.SharedMediaItems
|
import com.nextcloud.talk.shareditems.model.SharedMediaItems
|
||||||
|
import com.nextcloud.talk.shareditems.repositories.SharedItemsRepository
|
||||||
import io.reactivex.Observer
|
import io.reactivex.Observer
|
||||||
import io.reactivex.android.schedulers.AndroidSchedulers
|
import io.reactivex.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.disposables.Disposable
|
import io.reactivex.disposables.Disposable
|
||||||
@ -124,7 +124,6 @@ class SharedItemsViewModel @Inject constructor(
|
|||||||
userEntity.userId,
|
userEntity.userId,
|
||||||
userEntity.token,
|
userEntity.token,
|
||||||
userEntity.baseUrl,
|
userEntity.baseUrl,
|
||||||
userEntity,
|
|
||||||
roomToken
|
roomToken
|
||||||
)
|
)
|
||||||
_currentItemType = initialType
|
_currentItemType = initialType
|
||||||
|
Loading…
Reference in New Issue
Block a user