show an image at search results too

This commit is contained in:
tibbi
2021-02-16 10:04:05 +01:00
parent 5b99c8a599
commit 5c684a5361
4 changed files with 24 additions and 3 deletions

View File

@@ -92,7 +92,7 @@ class SearchActivity : SimpleActivity() {
val searchResults = ArrayList<SearchResult>() val searchResults = ArrayList<SearchResult>()
conversations.forEach { conversation -> conversations.forEach { conversation ->
val date = conversation.date.formatDateOrTime(this, true, true) val date = conversation.date.formatDateOrTime(this, true, true)
val searchResult = SearchResult(conversation.title, conversation.phoneNumber, date, conversation.threadId) val searchResult = SearchResult(conversation.title, conversation.phoneNumber, date, conversation.threadId, conversation.photoUri, conversation.isGroupConversation)
searchResults.add(searchResult) searchResults.add(searchResult)
} }
@@ -104,7 +104,7 @@ class SearchActivity : SimpleActivity() {
} }
val date = message.date.formatDateOrTime(this, true, true) val date = message.date.formatDateOrTime(this, true, true)
val searchResult = SearchResult(recipient, message.body, date, message.threadId) val searchResult = SearchResult(recipient, message.body, date, message.threadId, message.senderPhotoUri, false)
searchResults.add(searchResult) searchResults.add(searchResult)
} }

View File

@@ -4,8 +4,10 @@ import android.util.TypedValue
import android.view.Menu import android.view.Menu
import android.view.View import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
import com.bumptech.glide.Glide
import com.simplemobiletools.commons.adapters.MyRecyclerViewAdapter import com.simplemobiletools.commons.adapters.MyRecyclerViewAdapter
import com.simplemobiletools.commons.extensions.getTextSize import com.simplemobiletools.commons.extensions.getTextSize
import com.simplemobiletools.commons.helpers.SimpleContactsHelper
import com.simplemobiletools.commons.views.MyRecyclerView import com.simplemobiletools.commons.views.MyRecyclerView
import com.simplemobiletools.smsmessenger.R import com.simplemobiletools.smsmessenger.R
import com.simplemobiletools.smsmessenger.activities.SimpleActivity import com.simplemobiletools.smsmessenger.activities.SimpleActivity
@@ -65,6 +67,15 @@ class SearchResultsAdapter(activity: SimpleActivity, var searchResults: ArrayLis
text = searchResult.date text = searchResult.date
setTextSize(TypedValue.COMPLEX_UNIT_PX, fontSize * 0.8f) setTextSize(TypedValue.COMPLEX_UNIT_PX, fontSize * 0.8f)
} }
SimpleContactsHelper(context).loadContactImage(searchResult.photoUri, search_result_image, searchResult.title)
}
}
override fun onViewRecycled(holder: ViewHolder) {
super.onViewRecycled(holder)
if (!activity.isDestroyed && !activity.isFinishing && holder.itemView.search_result_image != null) {
Glide.with(activity).clear(holder.itemView.search_result_image)
} }
} }
} }

View File

@@ -1,3 +1,3 @@
package com.simplemobiletools.smsmessenger.models package com.simplemobiletools.smsmessenger.models
data class SearchResult(val title: String, val snippet: String, val date: String, val threadId: Long) data class SearchResult(val title: String, val snippet: String, val date: String, val threadId: Long, var photoUri: String, var isGroupConversation: Boolean)

View File

@@ -4,14 +4,23 @@
android:id="@+id/search_result_holder" android:id="@+id/search_result_holder"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="@dimen/small_margin"
android:layout_marginBottom="@dimen/small_margin"
android:background="?attr/selectableItemBackground" android:background="?attr/selectableItemBackground"
android:padding="@dimen/normal_margin"> android:padding="@dimen/normal_margin">
<ImageView
android:id="@+id/search_result_image"
android:layout_width="@dimen/normal_icon_size"
android:layout_height="@dimen/normal_icon_size"
android:layout_marginEnd="@dimen/normal_margin" />
<TextView <TextView
android:id="@+id/search_result_title" android:id="@+id/search_result_title"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_toStartOf="@+id/search_result_date" android:layout_toStartOf="@+id/search_result_date"
android:layout_toEndOf="@+id/search_result_image"
android:ellipsize="end" android:ellipsize="end"
android:maxLines="1" android:maxLines="1"
android:paddingEnd="@dimen/activity_margin" android:paddingEnd="@dimen/activity_margin"
@@ -23,6 +32,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@+id/search_result_title" android:layout_below="@+id/search_result_title"
android:layout_toEndOf="@+id/search_result_image"
android:alpha="0.7" android:alpha="0.7"
android:ellipsize="end" android:ellipsize="end"
android:maxLines="1" android:maxLines="1"