diff --git a/vector/src/main/java/im/vector/riotredesign/features/home/room/detail/RoomDetailFragment.kt b/vector/src/main/java/im/vector/riotredesign/features/home/room/detail/RoomDetailFragment.kt index f8f6f297..028e2740 100644 --- a/vector/src/main/java/im/vector/riotredesign/features/home/room/detail/RoomDetailFragment.kt +++ b/vector/src/main/java/im/vector/riotredesign/features/home/room/detail/RoomDetailFragment.kt @@ -501,6 +501,7 @@ class RoomDetailFragment : } else if (state.asyncInviter.complete) { vectorBaseActivity.finish() } + composerLayout.setRoomEncrypted(state.isEncrypted) } private fun renderRoomSummary(state: RoomDetailViewState) { diff --git a/vector/src/main/java/im/vector/riotredesign/features/home/room/detail/RoomDetailViewModel.kt b/vector/src/main/java/im/vector/riotredesign/features/home/room/detail/RoomDetailViewModel.kt index 681ef9e2..ce777c29 100644 --- a/vector/src/main/java/im/vector/riotredesign/features/home/room/detail/RoomDetailViewModel.kt +++ b/vector/src/main/java/im/vector/riotredesign/features/home/room/detail/RoomDetailViewModel.kt @@ -484,7 +484,10 @@ class RoomDetailViewModel(initialState: RoomDetailViewState, private fun observeRoomSummary() { room.rx().liveRoomSummary() .execute { async -> - copy(asyncRoomSummary = async) + copy( + asyncRoomSummary = async, + isEncrypted = room.isEncrypted() + ) } } diff --git a/vector/src/main/java/im/vector/riotredesign/features/home/room/detail/RoomDetailViewState.kt b/vector/src/main/java/im/vector/riotredesign/features/home/room/detail/RoomDetailViewState.kt index 927bbba1..36408604 100644 --- a/vector/src/main/java/im/vector/riotredesign/features/home/room/detail/RoomDetailViewState.kt +++ b/vector/src/main/java/im/vector/riotredesign/features/home/room/detail/RoomDetailViewState.kt @@ -46,7 +46,8 @@ data class RoomDetailViewState( val asyncInviter: Async = Uninitialized, val asyncRoomSummary: Async = Uninitialized, val sendMode: SendMode = SendMode.REGULAR, - val selectedEvent: TimelineEvent? = null + val selectedEvent: TimelineEvent? = null, + val isEncrypted: Boolean = false ) : MvRxState { constructor(args: RoomDetailArgs) : this(roomId = args.roomId, eventId = args.eventId) diff --git a/vector/src/main/java/im/vector/riotredesign/features/home/room/detail/composer/TextComposerView.kt b/vector/src/main/java/im/vector/riotredesign/features/home/room/detail/composer/TextComposerView.kt index c0fc2725..f31d655e 100644 --- a/vector/src/main/java/im/vector/riotredesign/features/home/room/detail/composer/TextComposerView.kt +++ b/vector/src/main/java/im/vector/riotredesign/features/home/room/detail/composer/TextComposerView.kt @@ -9,7 +9,6 @@ import android.widget.ImageView import android.widget.TextView import androidx.constraintlayout.widget.ConstraintLayout import androidx.constraintlayout.widget.ConstraintSet -import androidx.core.view.isVisible import androidx.transition.AutoTransition import androidx.transition.Transition import androidx.transition.TransitionManager @@ -113,4 +112,13 @@ class TextComposerView @JvmOverloads constructor(context: Context, attrs: Attrib it.applyTo(this) } } + + fun setRoomEncrypted(isEncrypted: Boolean) { + composerEditText.setHint( + if (isEncrypted) { + R.string.room_message_placeholder_encrypted + } else { + R.string.room_message_placeholder_not_encrypted + }) + } } \ No newline at end of file diff --git a/vector/src/main/res/layout/merge_composer_layout.xml b/vector/src/main/res/layout/merge_composer_layout.xml index 3d316213..3828063f 100644 --- a/vector/src/main/res/layout/merge_composer_layout.xml +++ b/vector/src/main/res/layout/merge_composer_layout.xml @@ -116,12 +116,12 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:background="@android:color/transparent" - android:hint="@string/room_message_placeholder_not_encrypted" android:nextFocusLeft="@id/composerEditText" android:nextFocusUp="@id/composerEditText" android:padding="8dp" android:textColor="?vctr_message_text_color" android:textSize="14sp" + tools:hint="@string/room_message_placeholder_not_encrypted" tools:ignore="MissingConstraints" /> \ No newline at end of file