Fix banner input overlap in some situations.

fork-5.53.8
Alex Hart 2022-06-15 10:01:41 -03:00 zatwierdzone przez Greyson Parrelli
rodzic 6854632fec
commit c83a888ed0
4 zmienionych plików z 13 dodań i 7 usunięć

Wyświetl plik

@ -95,6 +95,7 @@ public class InputPanel extends LinearLayout
private @Nullable Listener listener;
private boolean emojiVisible;
private boolean hideForMessageRequestState;
private boolean hideForGroupState;
private boolean hideForBlockedState;
private boolean hideForSearch;
@ -353,6 +354,11 @@ public class InputPanel extends LinearLayout
quoteView.setWallpaperEnabled(enabled);
}
public void setHideForMessageRequestState(boolean hideForMessageRequestState) {
this.hideForMessageRequestState = hideForMessageRequestState;
updateVisibility();
}
public void setHideForGroupState(boolean hideForGroupState) {
this.hideForGroupState = hideForGroupState;
updateVisibility();
@ -550,7 +556,7 @@ public class InputPanel extends LinearLayout
}
private void updateVisibility() {
if (hideForGroupState || hideForBlockedState || hideForSearch || hideForSelection) {
if (hideForGroupState || hideForBlockedState || hideForSearch || hideForSelection || hideForMessageRequestState) {
setVisibility(GONE);
} else {
setVisibility(VISIBLE);

Wyświetl plik

@ -4287,23 +4287,23 @@ public class ConversationParentFragment extends Fragment
{
Log.d(TAG, "[presentMessageRequestState] Have extra, so ignoring provided state.");
messageRequestBottomView.setVisibility(View.GONE);
inputPanel.setVisibility(View.VISIBLE);
inputPanel.setHideForMessageRequestState(false);
} else if (isPushGroupV1Conversation() && !isActiveGroup()) {
Log.d(TAG, "[presentMessageRequestState] Inactive push group V1, so ignoring provided state.");
messageRequestBottomView.setVisibility(View.GONE);
inputPanel.setVisibility(View.VISIBLE);
inputPanel.setHideForMessageRequestState(false);
} else if (messageData == null) {
Log.d(TAG, "[presentMessageRequestState] Null messageData. Ignoring.");
} else if (messageData.getMessageState() == MessageRequestState.NONE) {
Log.d(TAG, "[presentMessageRequestState] No message request necessary.");
messageRequestBottomView.setVisibility(View.GONE);
inputPanel.setVisibility(View.VISIBLE);
inputPanel.setHideForMessageRequestState(false);
} else {
Log.d(TAG, "[presentMessageRequestState] " + messageData.getMessageState());
messageRequestBottomView.setMessageData(messageData);
messageRequestBottomView.setVisibility(View.VISIBLE);
noLongerMemberBanner.setVisibility(View.GONE);
inputPanel.setVisibility(View.GONE);
inputPanel.setHideForMessageRequestState(true);
}
invalidateOptionsMenu();

Wyświetl plik

@ -91,7 +91,6 @@ open class Material3OnScrollHelper(
}
start()
}
} else {
setColorImmediate()
}

Wyświetl plik

@ -17,8 +17,9 @@
android:text="@string/ConversationActivity_your_request_to_join_has_been_sent_to_the_group_admin"
android:textColor="@color/signal_text_secondary" />
<Button
<com.google.android.material.button.MaterialButton
android:id="@+id/conversation_cancel_request"
style="@style/Signal.Widget.Button.Large.Tonal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"