Hide scheduled messages bar with input panel.

main
Clark 2023-01-27 11:25:48 -05:00 zatwierdzone przez Greyson Parrelli
rodzic 23190a2f6e
commit 834283ba9b
3 zmienionych plików z 35 dodań i 16 usunięć

Wyświetl plik

@ -469,6 +469,7 @@ public class ConversationParentFragment extends Fragment
private int distributionType;
private int reactWithAnyEmojiStartPage = -1;
private boolean isSearchRequested = false;
private boolean reshowScheduleMessagesBar = false;
private final LifecycleDisposable disposables = new LifecycleDisposable();
private final Debouncer optionsMenuDebouncer = new Debouncer(50);
@ -3316,18 +3317,20 @@ public class ConversationParentFragment extends Fragment
}
}
private void updateScheduledMessagesBar(@NonNull Integer count) {
private void updateScheduledMessagesBar(int count) {
if (count <= 0) {
scheduledMessagesBarStub.setVisibility(View.GONE);
reshowScheduleMessagesBar = false;
} else {
if (!scheduledMessagesBarStub.resolved()) {
View scheduledMessagesBar = scheduledMessagesBarStub.get();
scheduledMessagesBar.findViewById(R.id.scheduled_messages_show_all).setOnClickListener(v -> {
ScheduledMessagesBottomSheet.show(getChildFragmentManager(), threadId, recipient.getId());
});
}
scheduledMessagesBarStub.setVisibility(View.VISIBLE);
TextView scheduledText = scheduledMessagesBarStub.get().findViewById(R.id.scheduled_messages_text);
View scheduledMessagesBar = scheduledMessagesBarStub.get();
scheduledMessagesBar.findViewById(R.id.scheduled_messages_show_all).setOnClickListener(v -> {
ScheduledMessagesBottomSheet.show(getChildFragmentManager(), threadId, recipient.getId());
});
scheduledMessagesBar.setVisibility(View.VISIBLE);
reshowScheduleMessagesBar = true;
TextView scheduledText = scheduledMessagesBar.findViewById(R.id.scheduled_messages_text);
scheduledText.setText(getResources().getQuantityString(R.plurals.conversation_scheduled_messages_bar__number_of_messages, count, count));
}
}
@ -4151,11 +4154,19 @@ public class ConversationParentFragment extends Fragment
public void onMessageActionToolbarOpened() {
searchViewItem.collapseActionView();
toolbar.setVisibility(View.GONE);
if (scheduledMessagesBarStub.getVisibility() == View.VISIBLE) {
reshowScheduleMessagesBar = true;
scheduledMessagesBarStub.setVisibility(View.GONE);
}
}
@Override
public void onMessageActionToolbarClosed() {
toolbar.setVisibility(View.VISIBLE);
if (reshowScheduleMessagesBar) {
scheduledMessagesBarStub.setVisibility(View.VISIBLE);
reshowScheduleMessagesBar = false;
}
}
@Override

Wyświetl plik

@ -35,4 +35,12 @@ public class Stub<T extends View> {
}
}
public int getVisibility() {
if (resolved()) {
return get().getVisibility();
} else {
return View.GONE;
}
}
}

Wyświetl plik

@ -62,13 +62,6 @@
</FrameLayout>
<ViewStub
android:id="@+id/scheduled_messages_stub"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inflatedId="@+id/scheduled_messages"
android:layout="@layout/conversation_activity_scheduled_messages_stub" />
<ViewStub
android:id="@+id/attachment_editor_stub"
android:layout_width="match_parent"
@ -84,6 +77,13 @@
android:clipChildren="false"
android:clipToPadding="false">
<ViewStub
android:id="@+id/scheduled_messages_stub"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inflatedId="@+id/scheduled_messages"
android:layout="@layout/conversation_activity_scheduled_messages_stub" />
<include layout="@layout/conversation_search_nav" />
<FrameLayout