Hide compose for inactive groups.

master
Cody Henthorne 2020-07-17 14:32:53 -04:00 committed by Greyson Parrelli
parent e89655f793
commit 8128fcf8bc
6 changed files with 31 additions and 2 deletions

View File

@ -340,6 +340,7 @@ public class ConversationActivity extends PassphraseRequiredActivity
protected HidingLinearLayout inlineAttachmentToggle;
private InputPanel inputPanel;
private View panelParent;
private View noLongerMemberBanner;
private LinkPreviewViewModel linkPreviewViewModel;
private ConversationSearchViewModel searchViewModel;
@ -1419,7 +1420,10 @@ public class ConversationActivity extends PassphraseRequiredActivity
private void initializeEnabledCheck() {
groupViewModel.getGroupActiveState().observe(this, state -> {
boolean enabled = state == null || !(isPushGroupConversation() && !state.isActiveGroup());
boolean inactivePushGroup = state != null && isPushGroupConversation() && !state.isActiveGroup();
boolean enabled = !inactivePushGroup;
noLongerMemberBanner.setVisibility(enabled ? View.GONE : View.VISIBLE);
inputPanel.setVisibility(enabled ? View.VISIBLE : View.GONE);
inputPanel.setEnabled(enabled);
sendButton.setEnabled(enabled);
attachButton.setEnabled(enabled);
@ -1701,6 +1705,8 @@ public class ConversationActivity extends PassphraseRequiredActivity
ImageButton quickCameraToggle = ViewUtil.findById(this, R.id.quick_camera_toggle);
ImageButton inlineAttachmentButton = ViewUtil.findById(this, R.id.inline_attachment_button);
noLongerMemberBanner = findViewById(R.id.conversation_no_longer_member_banner);
container.addOnKeyboardShownListener(this);
inputPanel.setListener(this);
inputPanel.setMediaListener(this);
@ -2145,7 +2151,8 @@ public class ConversationActivity extends PassphraseRequiredActivity
makeDefaultSmsButton.setVisibility(View.VISIBLE);
registerButton.setVisibility(View.GONE);
} else {
inputPanel.setVisibility(View.VISIBLE);
boolean inactivePushGroup = isPushGroupConversation() && !recipient.isActiveGroup();
inputPanel.setVisibility(inactivePushGroup ? View.GONE : View.VISIBLE);
unblockButton.setVisibility(View.GONE);
makeDefaultSmsButton.setVisibility(View.GONE);
registerButton.setVisibility(View.GONE);

View File

@ -83,6 +83,10 @@
android:clipChildren="false"
android:clipToPadding="false">
<include
layout="@layout/conversation_no_longer_a_member"
android:visibility="gone" />
<include layout="@layout/conversation_input_panel" />
<include layout="@layout/conversation_search_nav" />

View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/conversation_no_longer_member_banner"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?secondary_background"
android:gravity="center"
android:paddingStart="16dp"
android:paddingTop="8dp"
android:paddingEnd="16dp"
android:paddingBottom="8dp"
android:text="@string/ConversationActivity_you_cant_send_messages_to_this_group"
android:textColor="?title_text_color_secondary" />

View File

@ -17,6 +17,8 @@
<attr name="attachment_keyboard_button_background" format="color|reference" />
<attr name="attachment_keyboard_button_foreground" format="color" />
<attr name="secondary_background" format="reference" />
<attr name="conversation_list_item_background" format="reference"/>
<attr name="conversation_list_item_contact_color" format="reference|color"/>
<attr name="conversation_list_item_subject_color" format="reference|color"/>

View File

@ -244,6 +244,7 @@
<string name="ConversationActivity_attachment_exceeds_size_limits">Attachment exceeds size limits for the type of message you\'re sending.</string>
<string name="ConversationActivity_quick_camera_unavailable">Camera unavailable</string>
<string name="ConversationActivity_unable_to_record_audio">Unable to record audio!</string>
<string name="ConversationActivity_you_cant_send_messages_to_this_group">You can\'t send messages to this group because you\'re no longer a member.</string>
<string name="ConversationActivity_there_is_no_app_available_to_handle_this_link_on_your_device">There is no app available to handle this link on your device.</string>
<string name="ConversationActivity_to_send_audio_messages_allow_signal_access_to_your_microphone">To send audio messages, allow Signal access to your microphone.</string>

View File

@ -189,6 +189,7 @@
<item name="colorControlHighlight">@color/core_ultramarine</item>
<item name="android:windowBackground">@color/white</item>
<item name="android:windowContentOverlay">@null</item>
<item name="secondary_background">@color/core_grey_02</item>
<item name="alertDialogTheme">@style/AppCompatAlertDialogStyleLight</item>
<item name="android:alertDialogTheme">@style/AppCompatDialogStyleLight</item>
<item name="homeAsUpIndicator">@drawable/ic_arrow_left_24</item>
@ -493,6 +494,7 @@
<item name="android:colorControlHighlight" tools:ignore="NewApi">@color/core_ultramarine_light</item>
<item name="android:windowBackground">@color/core_grey_95</item>
<item name="android:windowContentOverlay">@null</item>
<item name="secondary_background">@color/core_grey_90</item>
<item name="alertDialogTheme">@style/AppCompatAlertDialogStyleDark</item>
<item name="android:alertDialogTheme">@style/AppCompatDialogStyleDark</item>
<item name="homeAsUpIndicator">@drawable/ic_arrow_left_24</item>