adding some conversation details related UI improvements

This commit is contained in:
tibbi 2023-01-01 22:42:59 +01:00
parent ef7a38204f
commit e52cb19059
6 changed files with 92 additions and 104 deletions

View File

@ -63,7 +63,7 @@ android {
}
dependencies {
implementation 'com.github.SimpleMobileTools:Simple-Commons:e87747e2d5'
implementation 'com.github.SimpleMobileTools:Simple-Commons:3c6ffa6f87'
implementation 'org.greenrobot:eventbus:3.3.1'
implementation 'com.github.tibbi:IndicatorFastScroll:4524cd0b61'
implementation 'com.github.tibbi:android-smsmms:33fcaf94d9'

View File

@ -24,9 +24,13 @@ class ConversationDetailsActivity : SimpleActivity() {
private lateinit var participants: ArrayList<SimpleContact>
override fun onCreate(savedInstanceState: Bundle?) {
isMaterialActivity = true
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_conversation_details)
updateMaterialActivityViews(conversation_details_coordinator, participants_recyclerview, true)
setupMaterialScrollListener(participants_recyclerview, conversation_details_toolbar)
threadId = intent.getLongExtra(THREAD_ID, 0L)
ensureBackgroundThread {
conversation = conversationsDB.getConversationWithThreadId(threadId)

View File

@ -1,6 +1,5 @@
package com.simplemobiletools.smsmessenger.adapters
import android.annotation.SuppressLint
import android.content.Intent
import android.graphics.Typeface
import android.os.Parcelable

View File

@ -5,7 +5,9 @@ import android.content.DialogInterface.BUTTON_POSITIVE
import android.view.ViewGroup
import androidx.appcompat.app.AlertDialog
import androidx.core.widget.doAfterTextChanged
import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.commons.extensions.getAlertDialogBuilder
import com.simplemobiletools.commons.extensions.setupDialogStuff
import com.simplemobiletools.commons.extensions.showKeyboard
import com.simplemobiletools.smsmessenger.R
import com.simplemobiletools.smsmessenger.models.Conversation
import kotlinx.android.synthetic.main.dialog_rename_conversation.view.*
@ -15,22 +17,11 @@ class RenameConversationDialog(
private val conversation: Conversation,
private val callback: (name: String) -> Unit,
) {
private var dialog: AlertDialog? = null
init {
val textColor = activity.getProperTextColor()
val primaryColor = activity.getProperPrimaryColor()
val backgroundColor = activity.getProperBackgroundColor()
val view = (activity.layoutInflater.inflate(R.layout.dialog_rename_conversation, null) as ViewGroup).apply {
rename_conv_info.setTextColor(textColor)
rename_conv_input_layout.apply {
setColors(textColor, primaryColor, backgroundColor)
setBoxCornerRadiiResources(R.dimen.medium_margin, R.dimen.medium_margin, R.dimen.medium_margin, R.dimen.medium_margin)
}
rename_conv_edit_text.apply {
setTextColor(textColor)
if (conversation.usesCustomTitle) {
setText(conversation.title)
}

View File

@ -1,84 +1,87 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/conversation_details_coordinator"
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.google.android.material.appbar.AppBarLayout
android:id="@+id/conversation_details_app_bar_layout"
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/conversation_details_toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
android:layout_height="?attr/actionBarSize"
android:background="@color/color_primary"
app:title="@string/conversation_details"
app:titleTextAppearance="@style/AppTheme.ActionBar.TitleTextStyle" />
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/conversation_details_toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/color_primary"
app:title="@string/conversation_details"
app:titleTextAppearance="@style/AppTheme.ActionBar.TitleTextStyle" />
</com.google.android.material.appbar.AppBarLayout>
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/conversation_name_heading"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/normal_margin"
android:layout_marginTop="@dimen/activity_margin"
android:text="@string/conversation_name"
android:textSize="@dimen/normal_text_size"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/conversation_details_app_bar_layout" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/conversation_name"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/small_margin"
android:background="?attr/selectableItemBackground"
android:clickable="true"
android:drawableEnd="@drawable/ic_edit_vector"
android:ellipsize="end"
android:focusable="true"
android:maxLines="1"
android:paddingHorizontal="@dimen/normal_margin"
android:paddingVertical="@dimen/normal_margin"
android:text="@string/members"
android:textSize="@dimen/big_text_size"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/conversation_name_heading" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/members_heading"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/normal_margin"
android:layout_marginTop="@dimen/normal_margin"
android:text="@string/members"
android:textSize="@dimen/normal_text_size"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/conversation_name" />
<com.simplemobiletools.commons.views.MyRecyclerView
android:id="@+id/participants_recyclerview"
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/conversation_details_holder"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/normal_margin"
android:overScrollMode="ifContentScrolls"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/members_heading"
tools:itemCount="3"
tools:listitem="@layout/item_contact_with_number" />
android:layout_height="match_parent"
android:layout_marginTop="?attr/actionBarSize">
</androidx.constraintlayout.widget.ConstraintLayout>
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/conversation_name_heading"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/activity_margin"
android:layout_marginTop="@dimen/activity_margin"
android:layout_marginEnd="@dimen/activity_margin"
android:text="@string/conversation_name"
android:textSize="@dimen/normal_text_size"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/conversation_name"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/small_margin"
android:background="?attr/selectableItemBackground"
android:clickable="true"
android:drawableEnd="@drawable/ic_edit_vector"
android:ellipsize="end"
android:focusable="true"
android:maxLines="1"
android:paddingStart="@dimen/activity_margin"
android:paddingTop="@dimen/normal_margin"
android:paddingEnd="@dimen/activity_margin"
android:paddingBottom="@dimen/normal_margin"
android:text="@string/members"
android:textSize="@dimen/big_text_size"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/conversation_name_heading" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/members_heading"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/activity_margin"
android:layout_marginTop="@dimen/normal_margin"
android:layout_marginEnd="@dimen/activity_margin"
android:text="@string/members"
android:textSize="@dimen/normal_text_size"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/conversation_name" />
<com.simplemobiletools.commons.views.MyRecyclerView
android:id="@+id/participants_recyclerview"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginTop="@dimen/normal_margin"
android:clipToPadding="false"
app:layoutManager="com.simplemobiletools.commons.views.MyLinearLayoutManager"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/members_heading"
tools:itemCount="3"
tools:listitem="@layout/item_contact_with_number" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout>

View File

@ -3,30 +3,22 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingVertical="@dimen/big_margin">
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/rename_conv_info"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/big_margin"
android:paddingHorizontal="@dimen/tiny_margin"
android:text="@string/rename_conversation_warning"
app:layout_constraintBottom_toTopOf="@id/rename_conv_input_layout"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
android:paddingTop="@dimen/normal_margin"
android:paddingBottom="@dimen/normal_margin">
<com.simplemobiletools.commons.views.MyTextInputLayout
android:id="@+id/rename_conv_input_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/big_margin"
android:layout_marginStart="@dimen/big_margin"
android:layout_marginTop="@dimen/activity_margin"
android:layout_marginEnd="@dimen/big_margin"
android:hint="@string/conversation_name"
app:helperText="@string/rename_conversation_warning"
app:helperTextEnabled="true"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/rename_conv_info">
app:layout_constraintTop_toTopOf="parent">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/rename_conv_edit_text"
@ -37,5 +29,4 @@
android:maxLines="1" />
</com.simplemobiletools.commons.views.MyTextInputLayout>
</androidx.constraintlayout.widget.ConstraintLayout>