diff --git a/app/build.gradle b/app/build.gradle index 20f5613d..a70422da 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -123,7 +123,7 @@ dependencies { implementation "androidx.annotation:annotation:1.2.0" implementation 'androidx.gridlayout:gridlayout:1.0.0' implementation "androidx.activity:activity-ktx:1.2.3" - implementation 'androidx.fragment:fragment-ktx:1.3.4' + implementation 'androidx.fragment:fragment-ktx:1.3.5' // Use the most recent version of CameraX def cameraX_version = '1.0.0' @@ -203,7 +203,7 @@ dependencies { // debugImplementation required vs testImplementation: https://issuetracker.google.com/issues/128612536 //noinspection FragmentGradleConfiguration - stagingImplementation("androidx.fragment:fragment-testing:1.3.4") { + stagingImplementation("androidx.fragment:fragment-testing:1.3.5") { exclude group:'androidx.test', module:'monitor' } diff --git a/app/src/main/java/org/pixeldroid/app/posts/feeds/cachedFeeds/postFeeds/PostFeedFragment.kt b/app/src/main/java/org/pixeldroid/app/posts/feeds/cachedFeeds/postFeeds/PostFeedFragment.kt index 5f22b80c..693f43ba 100644 --- a/app/src/main/java/org/pixeldroid/app/posts/feeds/cachedFeeds/postFeeds/PostFeedFragment.kt +++ b/app/src/main/java/org/pixeldroid/app/posts/feeds/cachedFeeds/postFeeds/PostFeedFragment.kt @@ -88,8 +88,8 @@ class PostFeedFragment: CachedFeedFragment() { } override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) { - val uiModel = getItem(position) as Status - uiModel.let { + val uiModel = getItem(position) as Status? + uiModel?.let { (holder as StatusViewHolder).bind(it, apiHolder, db, lifecycleScope, displayDimensionsInPx) } } diff --git a/app/src/main/java/org/pixeldroid/app/posts/feeds/uncachedFeeds/UncachedPostsFragment.kt b/app/src/main/java/org/pixeldroid/app/posts/feeds/uncachedFeeds/UncachedPostsFragment.kt index 9a528833..7f503c04 100644 --- a/app/src/main/java/org/pixeldroid/app/posts/feeds/uncachedFeeds/UncachedPostsFragment.kt +++ b/app/src/main/java/org/pixeldroid/app/posts/feeds/uncachedFeeds/UncachedPostsFragment.kt @@ -91,13 +91,10 @@ class UncachedPostsFragment : UncachedFeedFragment() { return StatusViewHolder.create(parent) } - override fun getItemViewType(position: Int): Int { - return R.layout.post_fragment - } + override fun getItemViewType(position: Int): Int = R.layout.post_fragment override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) { - val uiModel = getItem(position) as Status - uiModel.let { + getItem(position)?.let { (holder as StatusViewHolder).bind(it, apiHolder, db, lifecycleScope, displayDimensionsInPx) } } diff --git a/app/src/main/java/org/pixeldroid/app/searchDiscover/SearchDiscoverFragment.kt b/app/src/main/java/org/pixeldroid/app/searchDiscover/SearchDiscoverFragment.kt index 2285b6cd..31dfb11d 100644 --- a/app/src/main/java/org/pixeldroid/app/searchDiscover/SearchDiscoverFragment.kt +++ b/app/src/main/java/org/pixeldroid/app/searchDiscover/SearchDiscoverFragment.kt @@ -100,7 +100,7 @@ class SearchDiscoverFragment : BaseFragment() { * [RecyclerView.Adapter] that can display a list of [Status]s' thumbnails for the discover view */ class DiscoverRecyclerViewAdapter: RecyclerView.Adapter() { - private val posts: ArrayList = ArrayList() + private val posts: ArrayList = ArrayList() fun addPosts(newPosts : List) { posts.clear() @@ -116,12 +116,12 @@ class SearchDiscoverFragment : BaseFragment() { override fun onBindViewHolder(holder: ProfilePostViewHolder, position: Int) { val post = posts[position] - if(post.media_attachments?.size ?: 0 > 1) { + if(post?.media_attachments?.size ?: 0 > 1) { holder.albumIcon.visibility = View.VISIBLE } else { holder.albumIcon.visibility = View.GONE } - ImageConverter.setSquareImageFromURL(holder.postView, post.media_attachments?.firstOrNull()?.preview_url, holder.postPreview, post.media_attachments?.firstOrNull()?.blurhash) + ImageConverter.setSquareImageFromURL(holder.postView, post?.media_attachments?.firstOrNull()?.preview_url, holder.postPreview, post?.media_attachments?.firstOrNull()?.blurhash) holder.postPreview.setOnClickListener { val intent = Intent(holder.postView.context, PostActivity::class.java) intent.putExtra(Status.POST_TAG, post)