Fix missing background on video player bar.
This commit is contained in:
parent
aa67c82634
commit
ce31e642dd
4 changed files with 41 additions and 21 deletions
|
@ -57,6 +57,7 @@ import android.view.View.OnKeyListener;
|
|||
import android.view.WindowManager;
|
||||
import android.view.inputmethod.EditorInfo;
|
||||
import android.widget.Button;
|
||||
import android.widget.FrameLayout;
|
||||
import android.widget.ImageButton;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
@ -381,7 +382,7 @@ public class ConversationActivity extends PassphraseRequiredActivity
|
|||
private MenuItem searchViewItem;
|
||||
private MessageRequestsBottomView messageRequestBottomView;
|
||||
private ConversationReactionDelegate reactionDelegate;
|
||||
private Stub<VoiceNotePlayerView> voiceNotePlayerViewStub;
|
||||
private Stub<FrameLayout> voiceNotePlayerViewStub;
|
||||
|
||||
private AttachmentManager attachmentManager;
|
||||
private AudioRecorder audioRecorder;
|
||||
|
@ -413,6 +414,7 @@ public class ConversationActivity extends PassphraseRequiredActivity
|
|||
private VoiceRecorderWakeLock voiceRecorderWakeLock;
|
||||
private DraftViewModel draftViewModel;
|
||||
private VoiceNoteMediaController voiceNoteMediaController;
|
||||
private VoiceNotePlayerView voiceNotePlayerView;
|
||||
|
||||
|
||||
private LiveRecipient recipient;
|
||||
|
@ -2076,19 +2078,25 @@ public class ConversationActivity extends PassphraseRequiredActivity
|
|||
|
||||
voiceNoteMediaController.getVoiceNotePlayerViewState().observe(this, state -> {
|
||||
if (state.isPresent()) {
|
||||
if (!voiceNotePlayerViewStub.resolved()) {
|
||||
voiceNotePlayerViewStub.get().setListener(new VoiceNotePlayerViewListener());
|
||||
}
|
||||
voiceNotePlayerViewStub.get().show();
|
||||
voiceNotePlayerViewStub.get().setState(state.get());
|
||||
requireVoiceNotePlayerView().show();
|
||||
requireVoiceNotePlayerView().setState(state.get());
|
||||
} else if (voiceNotePlayerViewStub.resolved()) {
|
||||
voiceNotePlayerViewStub.get().hide();
|
||||
requireVoiceNotePlayerView().hide();
|
||||
}
|
||||
});
|
||||
|
||||
voiceNoteMediaController.getVoiceNotePlaybackState().observe(ConversationActivity.this, inputPanel.getPlaybackStateObserver());
|
||||
}
|
||||
|
||||
private @NonNull VoiceNotePlayerView requireVoiceNotePlayerView() {
|
||||
if (voiceNotePlayerView == null) {
|
||||
voiceNotePlayerView = voiceNotePlayerViewStub.get().findViewById(R.id.voice_note_player_view);
|
||||
voiceNotePlayerView.setListener(new VoiceNotePlayerViewListener());
|
||||
}
|
||||
|
||||
return voiceNotePlayerView;
|
||||
}
|
||||
|
||||
private void updateWallpaper(@Nullable ChatWallpaper chatWallpaper) {
|
||||
Log.d(TAG, "Setting wallpaper.");
|
||||
if (chatWallpaper != null) {
|
||||
|
|
|
@ -38,6 +38,7 @@ import android.view.MenuItem;
|
|||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.view.inputmethod.InputMethodManager;
|
||||
import android.widget.FrameLayout;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
@ -58,8 +59,6 @@ import androidx.constraintlayout.widget.ConstraintLayout;
|
|||
import androidx.constraintlayout.widget.ConstraintSet;
|
||||
import androidx.core.content.res.ResourcesCompat;
|
||||
import androidx.fragment.app.DialogFragment;
|
||||
import androidx.lifecycle.LifecycleOwner;
|
||||
import androidx.lifecycle.Observer;
|
||||
import androidx.lifecycle.ViewModelProviders;
|
||||
import androidx.recyclerview.widget.ItemTouchHelper;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
|
@ -92,7 +91,6 @@ import org.thoughtcrime.securesms.components.reminder.ReminderView;
|
|||
import org.thoughtcrime.securesms.components.reminder.ServiceOutageReminder;
|
||||
import org.thoughtcrime.securesms.components.reminder.UnauthorizedReminder;
|
||||
import org.thoughtcrime.securesms.components.settings.app.AppSettingsActivity;
|
||||
import org.thoughtcrime.securesms.components.voice.VoiceNoteMediaController;
|
||||
import org.thoughtcrime.securesms.components.voice.VoiceNoteMediaControllerOwner;
|
||||
import org.thoughtcrime.securesms.components.voice.VoiceNotePlayerView;
|
||||
import org.thoughtcrime.securesms.conversation.ConversationFragment;
|
||||
|
@ -195,7 +193,9 @@ public class ConversationListFragment extends MainFragment implements ActionMode
|
|||
private Drawable archiveDrawable;
|
||||
private AppForegroundObserver.Listener appForegroundObserver;
|
||||
private VoiceNoteMediaControllerOwner mediaControllerOwner;
|
||||
private Stub<VoiceNotePlayerView> voiceNotePlayerViewStub;
|
||||
private Stub<FrameLayout> voiceNotePlayerViewStub;
|
||||
private VoiceNotePlayerView voiceNotePlayerView;
|
||||
|
||||
|
||||
private Stopwatch startupStopwatch;
|
||||
|
||||
|
@ -531,18 +531,24 @@ public class ConversationListFragment extends MainFragment implements ActionMode
|
|||
private void initializeVoiceNotePlayer() {
|
||||
mediaControllerOwner.getVoiceNoteMediaController().getVoiceNotePlayerViewState().observe(getViewLifecycleOwner(), state -> {
|
||||
if (state.isPresent()) {
|
||||
if (!voiceNotePlayerViewStub.resolved()) {
|
||||
voiceNotePlayerViewStub.get().setListener(new VoiceNotePlayerViewListener());
|
||||
}
|
||||
|
||||
voiceNotePlayerViewStub.get().setState(state.get());
|
||||
voiceNotePlayerViewStub.get().show();
|
||||
requireVoiceNotePlayerView().setState(state.get());
|
||||
requireVoiceNotePlayerView().show();
|
||||
} else if (voiceNotePlayerViewStub.resolved()) {
|
||||
voiceNotePlayerViewStub.get().hide();
|
||||
requireVoiceNotePlayerView().hide();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private @NonNull VoiceNotePlayerView requireVoiceNotePlayerView() {
|
||||
if (voiceNotePlayerView == null) {
|
||||
voiceNotePlayerView = voiceNotePlayerViewStub.get().findViewById(R.id.voice_note_player_view);
|
||||
voiceNotePlayerView.setListener(new VoiceNotePlayerViewListener());
|
||||
}
|
||||
|
||||
return voiceNotePlayerView;
|
||||
}
|
||||
|
||||
|
||||
private void initializeListAdapters() {
|
||||
defaultAdapter = new ConversationListAdapter(GlideApp.with(this), this);
|
||||
searchAdapter = new ConversationListSearchAdapter(GlideApp.with(this), this, Locale.getDefault());
|
||||
|
|
|
@ -1,5 +1,12 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<org.thoughtcrime.securesms.components.voice.VoiceNotePlayerView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="?selectableItemBackground" />
|
||||
android:background="@color/voice_note_player_view_background">
|
||||
|
||||
<org.thoughtcrime.securesms.components.voice.VoiceNotePlayerView
|
||||
android:id="@+id/voice_note_player_view"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="?selectableItemBackground" />
|
||||
</FrameLayout>
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
<merge 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"
|
||||
tools:background="@color/voice_note_player_view_background"
|
||||
tools:parentTag="androidx.constraintlayout.widget.ConstraintLayout">
|
||||
|
||||
<com.airbnb.lottie.LottieAnimationView
|
||||
|
|
Loading…
Add table
Reference in a new issue