566 lines
26 KiB
Java
566 lines
26 KiB
Java
package com.discord.widgets.media;
|
|
|
|
import android.animation.ValueAnimator;
|
|
import android.content.Context;
|
|
import android.content.Intent;
|
|
import android.graphics.Rect;
|
|
import android.net.Uri;
|
|
import android.os.Parcelable;
|
|
import android.view.View;
|
|
import android.widget.ProgressBar;
|
|
import androidx.fragment.app.Fragment;
|
|
import androidx.fragment.app.FragmentViewModelLazyKt;
|
|
import androidx.interpolator.view.animation.FastOutSlowInInterpolator;
|
|
import c.a.d.h0;
|
|
import c.a.d.j0;
|
|
import c.a.d.l;
|
|
import c.a.p.i;
|
|
import c.d.b.a.a;
|
|
import c.f.g.e.v;
|
|
import com.airbnb.lottie.parser.AnimatableValueParser;
|
|
import com.discord.api.message.attachment.MessageAttachment;
|
|
import com.discord.api.message.attachment.MessageAttachmentType;
|
|
import com.discord.api.message.embed.EmbedType;
|
|
import com.discord.api.message.embed.EmbedVideo;
|
|
import com.discord.api.message.embed.MessageEmbed;
|
|
import com.discord.app.AppFragment;
|
|
import com.discord.databinding.WidgetMediaBinding;
|
|
import com.discord.embed.RenderableEmbedMedia;
|
|
import com.discord.player.AppMediaPlayer;
|
|
import com.discord.player.MediaSource;
|
|
import com.discord.player.MediaType;
|
|
import com.discord.utilities.color.ColorCompat;
|
|
import com.discord.utilities.display.DisplayUtils;
|
|
import com.discord.utilities.embed.EmbedResourceUtils;
|
|
import com.discord.utilities.images.MGImages;
|
|
import com.discord.utilities.rx.ObservableExtensionsKt;
|
|
import com.discord.utilities.string.StringUtilsKt;
|
|
import com.discord.utilities.view.extensions.ViewExtensions;
|
|
import com.discord.utilities.viewbinding.FragmentViewBindingDelegate;
|
|
import com.discord.utilities.viewbinding.FragmentViewBindingDelegateKt;
|
|
import com.facebook.drawee.drawable.ScalingUtils$ScaleType;
|
|
import com.facebook.samples.zoomable.ZoomableDraweeView;
|
|
import com.google.android.exoplayer2.ui.PlayerControlView;
|
|
import com.google.android.exoplayer2.ui.PlayerView;
|
|
import com.google.android.material.appbar.AppBarLayout;
|
|
import d0.g0.t;
|
|
import d0.z.d.a0;
|
|
import d0.z.d.m;
|
|
import java.util.concurrent.TimeUnit;
|
|
import kotlin.Lazy;
|
|
import kotlin.jvm.functions.Function0;
|
|
import kotlin.jvm.functions.Function1;
|
|
import kotlin.jvm.internal.DefaultConstructorMarker;
|
|
import kotlin.reflect.KProperty;
|
|
import rx.Observable;
|
|
import rx.Subscription;
|
|
/* compiled from: WidgetMedia.kt */
|
|
public final class WidgetMedia extends AppFragment {
|
|
public static final /* synthetic */ KProperty[] $$delegatedProperties = {a.V(WidgetMedia.class, "binding", "getBinding()Lcom/discord/databinding/WidgetMediaBinding;", 0)};
|
|
public static final Companion Companion = new Companion(null);
|
|
private static final String INTENT_HEIGHT = "INTENT_MEDIA_HEIGHT";
|
|
private static final String INTENT_IMAGE_URL = "INTENT_IMAGE_URL";
|
|
private static final String INTENT_MEDIA_SOURCE = "INTENT_MEDIA_SOURCE";
|
|
private static final String INTENT_TITLE = "INTENT_TITLE";
|
|
private static final String INTENT_URL = "INTENT_MEDIA_URL";
|
|
private static final String INTENT_WIDTH = "INTENT_MEDIA_WIDTH";
|
|
private static final long SHOW_CONTROLS_TIMEOUT_MS = 3000;
|
|
private static final long VERTICAL_CONTROLS_ANIMATION_DURATION_MS = 200;
|
|
private AppMediaPlayer appMediaPlayer;
|
|
private final FragmentViewBindingDelegate binding$delegate = FragmentViewBindingDelegateKt.viewBinding(this, WidgetMedia$binding$2.INSTANCE, new WidgetMedia$binding$3(this));
|
|
private ControlsAnimationAction controlsAnimationAction;
|
|
private ValueAnimator controlsAnimator;
|
|
private Subscription controlsVisibilitySubscription;
|
|
private Uri imageUri;
|
|
private MediaSource mediaSource;
|
|
private int playerControlsHeight;
|
|
private boolean playerPausedByFragmentLifecycle;
|
|
private int toolbarHeight;
|
|
private String videoUrl;
|
|
private final Lazy viewModel$delegate;
|
|
|
|
/* compiled from: WidgetMedia.kt */
|
|
public static final class Companion {
|
|
|
|
public final /* synthetic */ class WhenMappings {
|
|
public static final /* synthetic */ int[] $EnumSwitchMapping$0;
|
|
public static final /* synthetic */ int[] $EnumSwitchMapping$1;
|
|
|
|
static {
|
|
MessageAttachmentType.values();
|
|
int[] iArr = new int[3];
|
|
$EnumSwitchMapping$0 = iArr;
|
|
iArr[MessageAttachmentType.VIDEO.ordinal()] = 1;
|
|
EmbedType.values();
|
|
int[] iArr2 = new int[11];
|
|
$EnumSwitchMapping$1 = iArr2;
|
|
iArr2[EmbedType.VIDEO.ordinal()] = 1;
|
|
iArr2[EmbedType.GIFV.ordinal()] = 2;
|
|
}
|
|
}
|
|
|
|
private Companion() {
|
|
}
|
|
|
|
public /* synthetic */ Companion(DefaultConstructorMarker defaultConstructorMarker) {
|
|
this();
|
|
}
|
|
|
|
private final void launch(Context context, String str, String str2, String str3, String str4, Integer num, Integer num2, MediaType mediaType) {
|
|
MediaSource R = (str3 == null || mediaType == null) ? null : AnimatableValueParser.R(mediaType, str3, "javaClass");
|
|
Intent putExtra = new Intent().putExtra("INTENT_TITLE", str);
|
|
if (str2 == null) {
|
|
str2 = str4;
|
|
}
|
|
Intent putExtra2 = putExtra.putExtra("INTENT_MEDIA_URL", str2).putExtra("INTENT_IMAGE_URL", str4).putExtra("INTENT_MEDIA_WIDTH", num).putExtra("INTENT_MEDIA_HEIGHT", num2).putExtra("INTENT_MEDIA_SOURCE", R);
|
|
m.checkNotNullExpressionValue(putExtra2, "Intent()\n .putE…EDIA_SOURCE, mediaSource)");
|
|
l.d(context, WidgetMedia.class, putExtra2);
|
|
}
|
|
|
|
public final void launch(Context context, MessageAttachment messageAttachment) {
|
|
m.checkNotNullParameter(context, "context");
|
|
m.checkNotNullParameter(messageAttachment, "attachment");
|
|
MessageAttachmentType e = messageAttachment.e();
|
|
MediaType mediaType = null;
|
|
String c2 = e.ordinal() != 0 ? null : messageAttachment.c();
|
|
String a = messageAttachment.a();
|
|
String c3 = messageAttachment.c();
|
|
String c4 = messageAttachment.c();
|
|
Integer g = messageAttachment.g();
|
|
Integer b = messageAttachment.b();
|
|
if (e == MessageAttachmentType.VIDEO) {
|
|
mediaType = MediaType.VIDEO;
|
|
}
|
|
launch(context, a, c3, c2, c4, g, b, mediaType);
|
|
}
|
|
|
|
/* JADX WARNING: Removed duplicated region for block: B:17:0x0044 */
|
|
/* JADX WARNING: Removed duplicated region for block: B:18:0x0047 */
|
|
/* JADX WARNING: Removed duplicated region for block: B:21:0x0054 */
|
|
/* JADX WARNING: Removed duplicated region for block: B:22:0x0058 */
|
|
/* JADX WARNING: Removed duplicated region for block: B:24:0x005b */
|
|
/* JADX WARNING: Removed duplicated region for block: B:25:0x005f */
|
|
/* JADX WARNING: Removed duplicated region for block: B:27:0x0062 */
|
|
public final void launch(Context context, MessageEmbed messageEmbed) {
|
|
String str;
|
|
RenderableEmbedMedia previewImage;
|
|
int ordinal;
|
|
String str2;
|
|
m.checkNotNullParameter(context, "context");
|
|
m.checkNotNullParameter(messageEmbed, "embed");
|
|
EmbedType k = messageEmbed.k();
|
|
Integer num = null;
|
|
if (k != null && ((ordinal = k.ordinal()) == 2 || ordinal == 7)) {
|
|
EmbedVideo m = messageEmbed.m();
|
|
if (m == null || (str2 = m.b()) == null) {
|
|
EmbedVideo m2 = messageEmbed.m();
|
|
if (m2 != null) {
|
|
str2 = m2.c();
|
|
}
|
|
}
|
|
str = str2;
|
|
previewImage = EmbedResourceUtils.INSTANCE.getPreviewImage(messageEmbed);
|
|
MediaType mediaType = messageEmbed.k() != EmbedType.GIFV ? MediaType.GIFV : MediaType.VIDEO;
|
|
String j = messageEmbed.j();
|
|
String l = messageEmbed.l();
|
|
String str3 = previewImage == null ? previewImage.a : null;
|
|
Integer num2 = previewImage == null ? previewImage.b : null;
|
|
if (previewImage != null) {
|
|
num = previewImage.f2028c;
|
|
}
|
|
launch(context, j, l, str, str3, num2, num, mediaType);
|
|
}
|
|
str = null;
|
|
previewImage = EmbedResourceUtils.INSTANCE.getPreviewImage(messageEmbed);
|
|
if (messageEmbed.k() != EmbedType.GIFV) {
|
|
}
|
|
String j = messageEmbed.j();
|
|
String l = messageEmbed.l();
|
|
if (previewImage == null) {
|
|
}
|
|
if (previewImage == null) {
|
|
}
|
|
if (previewImage != null) {
|
|
}
|
|
launch(context, j, l, str, str3, num2, num, mediaType);
|
|
}
|
|
}
|
|
|
|
/* compiled from: WidgetMedia.kt */
|
|
public enum ControlsAnimationAction {
|
|
SHOW,
|
|
HIDE
|
|
}
|
|
|
|
public WidgetMedia() {
|
|
super(2131559105);
|
|
WidgetMedia$viewModel$2 widgetMedia$viewModel$2 = WidgetMedia$viewModel$2.INSTANCE;
|
|
h0 h0Var = new h0(this);
|
|
this.viewModel$delegate = FragmentViewModelLazyKt.createViewModelLazy(this, a0.getOrCreateKotlinClass(WidgetMediaViewModel.class), new WidgetMedia$appViewModels$$inlined$viewModels$1(h0Var), new j0(widgetMedia$viewModel$2));
|
|
}
|
|
|
|
public static final /* synthetic */ WidgetMediaBinding access$getBinding$p(WidgetMedia widgetMedia) {
|
|
return widgetMedia.getBinding();
|
|
}
|
|
|
|
public static final /* synthetic */ ControlsAnimationAction access$getControlsAnimationAction$p(WidgetMedia widgetMedia) {
|
|
return widgetMedia.controlsAnimationAction;
|
|
}
|
|
|
|
public static final /* synthetic */ Subscription access$getControlsVisibilitySubscription$p(WidgetMedia widgetMedia) {
|
|
return widgetMedia.controlsVisibilitySubscription;
|
|
}
|
|
|
|
public static final /* synthetic */ int access$getPlayerControlsHeight$p(WidgetMedia widgetMedia) {
|
|
return widgetMedia.playerControlsHeight;
|
|
}
|
|
|
|
public static final /* synthetic */ int access$getToolbarHeight$p(WidgetMedia widgetMedia) {
|
|
return widgetMedia.toolbarHeight;
|
|
}
|
|
|
|
public static final /* synthetic */ void access$handleImageProgressComplete(WidgetMedia widgetMedia) {
|
|
widgetMedia.handleImageProgressComplete();
|
|
}
|
|
|
|
public static final /* synthetic */ void access$handlePlayerEvent(WidgetMedia widgetMedia, AppMediaPlayer.Event event) {
|
|
widgetMedia.handlePlayerEvent(event);
|
|
}
|
|
|
|
public static final /* synthetic */ void access$hideControls(WidgetMedia widgetMedia) {
|
|
widgetMedia.hideControls();
|
|
}
|
|
|
|
public static final /* synthetic */ boolean access$isVideo(WidgetMedia widgetMedia) {
|
|
return widgetMedia.isVideo();
|
|
}
|
|
|
|
public static final /* synthetic */ void access$onMediaClick(WidgetMedia widgetMedia) {
|
|
widgetMedia.onMediaClick();
|
|
}
|
|
|
|
public static final /* synthetic */ void access$onViewBindingDestroy(WidgetMedia widgetMedia, WidgetMediaBinding widgetMediaBinding) {
|
|
widgetMedia.onViewBindingDestroy(widgetMediaBinding);
|
|
}
|
|
|
|
public static final /* synthetic */ void access$setControlsAnimationAction$p(WidgetMedia widgetMedia, ControlsAnimationAction controlsAnimationAction) {
|
|
widgetMedia.controlsAnimationAction = controlsAnimationAction;
|
|
}
|
|
|
|
public static final /* synthetic */ void access$setControlsVisibilitySubscription$p(WidgetMedia widgetMedia, Subscription subscription) {
|
|
widgetMedia.controlsVisibilitySubscription = subscription;
|
|
}
|
|
|
|
public static final /* synthetic */ void access$setPlayerControlsHeight$p(WidgetMedia widgetMedia, int i) {
|
|
widgetMedia.playerControlsHeight = i;
|
|
}
|
|
|
|
public static final /* synthetic */ void access$setToolbarHeight$p(WidgetMedia widgetMedia, int i) {
|
|
widgetMedia.toolbarHeight = i;
|
|
}
|
|
|
|
private final void configureAndStartControlsAnimation(ValueAnimator valueAnimator) {
|
|
valueAnimator.setInterpolator(new FastOutSlowInInterpolator());
|
|
valueAnimator.setDuration(200L);
|
|
valueAnimator.addUpdateListener(new WidgetMedia$configureAndStartControlsAnimation$$inlined$apply$lambda$1(this));
|
|
valueAnimator.addListener(new WidgetMedia$configureAndStartControlsAnimation$$inlined$apply$lambda$2(this));
|
|
valueAnimator.start();
|
|
}
|
|
|
|
private final void configureMediaImage() {
|
|
getBinding().d.setIsLongpressEnabled(false);
|
|
getBinding().d.setTapListener(new WidgetMedia$configureMediaImage$1(this));
|
|
ZoomableDraweeView zoomableDraweeView = getBinding().d;
|
|
m.checkNotNullExpressionValue(zoomableDraweeView, "binding.mediaImage");
|
|
ScalingUtils$ScaleType scalingUtils$ScaleType = ScalingUtils$ScaleType.a;
|
|
ScalingUtils$ScaleType scalingUtils$ScaleType2 = v.l;
|
|
m.checkNotNullExpressionValue(scalingUtils$ScaleType2, "ScalingUtils.ScaleType.FIT_CENTER");
|
|
MGImages.setScaleType(zoomableDraweeView, scalingUtils$ScaleType2);
|
|
ZoomableDraweeView zoomableDraweeView2 = getBinding().d;
|
|
m.checkNotNullExpressionValue(zoomableDraweeView2, "binding.mediaImage");
|
|
ZoomableDraweeView zoomableDraweeView3 = getBinding().d;
|
|
m.checkNotNullExpressionValue(zoomableDraweeView3, "binding.mediaImage");
|
|
Context context = zoomableDraweeView3.getContext();
|
|
m.checkNotNullExpressionValue(context, "binding.mediaImage.context");
|
|
Uri uri = this.imageUri;
|
|
if (uri == null) {
|
|
m.throwUninitializedPropertyAccessException("imageUri");
|
|
}
|
|
MGImages.setImage$default(zoomableDraweeView2, d0.t.m.listOf(getFormattedUrl(context, uri)), 0, 0, false, null, null, new WidgetMedia$configureMediaImage$2(this), 124, null);
|
|
}
|
|
|
|
private final WidgetMediaBinding getBinding() {
|
|
return (WidgetMediaBinding) this.binding$delegate.getValue((Fragment) this, $$delegatedProperties[0]);
|
|
}
|
|
|
|
private final String getFormattedUrl(Context context, Uri uri) {
|
|
String str;
|
|
Rect resizeToFitScreen = DisplayUtils.resizeToFitScreen(context, new Rect(0, 0, getMostRecentIntent().getIntExtra("INTENT_MEDIA_WIDTH", 0), getMostRecentIntent().getIntExtra("INTENT_MEDIA_HEIGHT", 0)));
|
|
String lastPathSegment = uri.getLastPathSegment();
|
|
if (lastPathSegment == null || !t.endsWith$default(lastPathSegment, ".gif", false, 2, null)) {
|
|
StringBuilder K = a.K("&format=");
|
|
K.append(StringUtilsKt.getSTATIC_IMAGE_EXTENSION());
|
|
str = K.toString();
|
|
} else {
|
|
str = "";
|
|
}
|
|
return uri + "?width=" + resizeToFitScreen.width() + "&height=" + resizeToFitScreen.height() + str;
|
|
}
|
|
|
|
private final float getToolbarTranslationY() {
|
|
AppBarLayout appBarLayout = getBinding().b;
|
|
m.checkNotNullExpressionValue(appBarLayout, "binding.actionBarToolbarLayout");
|
|
return appBarLayout.getTranslationY();
|
|
}
|
|
|
|
private final WidgetMediaViewModel getViewModel() {
|
|
return (WidgetMediaViewModel) this.viewModel$delegate.getValue();
|
|
}
|
|
|
|
private final void handleImageProgressComplete() {
|
|
if (this.videoUrl == null) {
|
|
hideLoadingIndicator();
|
|
}
|
|
}
|
|
|
|
private final void handlePlayerEvent(AppMediaPlayer.Event event) {
|
|
if (m.areEqual(event, AppMediaPlayer.Event.b.a)) {
|
|
showLoadingIndicator();
|
|
} else if (m.areEqual(event, AppMediaPlayer.Event.a.a)) {
|
|
ZoomableDraweeView zoomableDraweeView = getBinding().d;
|
|
m.checkNotNullExpressionValue(zoomableDraweeView, "binding.mediaImage");
|
|
zoomableDraweeView.setVisibility(8);
|
|
getViewModel().setShowCoverFrame(false);
|
|
hideLoadingIndicator();
|
|
} else if (event instanceof AppMediaPlayer.Event.c) {
|
|
getViewModel().setCurrentPlayerPositionMs(((AppMediaPlayer.Event.c) event).a);
|
|
} else if (m.areEqual(event, AppMediaPlayer.Event.d.a)) {
|
|
if (!this.playerPausedByFragmentLifecycle) {
|
|
getViewModel().setPlaying(false);
|
|
}
|
|
} else if (m.areEqual(event, AppMediaPlayer.Event.f.a)) {
|
|
getViewModel().setPlaying(true);
|
|
} else if (m.areEqual(event, AppMediaPlayer.Event.e.a)) {
|
|
hideLoadingIndicator();
|
|
}
|
|
}
|
|
|
|
private final void hideControls() {
|
|
ControlsAnimationAction controlsAnimationAction = this.controlsAnimationAction;
|
|
ControlsAnimationAction controlsAnimationAction2 = ControlsAnimationAction.HIDE;
|
|
if (controlsAnimationAction != controlsAnimationAction2) {
|
|
this.controlsAnimationAction = controlsAnimationAction2;
|
|
ValueAnimator valueAnimator = this.controlsAnimator;
|
|
if (valueAnimator != null) {
|
|
valueAnimator.cancel();
|
|
}
|
|
ValueAnimator ofFloat = ValueAnimator.ofFloat(getToolbarTranslationY(), -((float) this.toolbarHeight));
|
|
m.checkNotNullExpressionValue(ofFloat, "this");
|
|
configureAndStartControlsAnimation(ofFloat);
|
|
this.controlsAnimator = ofFloat;
|
|
}
|
|
}
|
|
|
|
private final void hideLoadingIndicator() {
|
|
ProgressBar progressBar = getBinding().e;
|
|
m.checkNotNullExpressionValue(progressBar, "binding.mediaLoadingIndicator");
|
|
progressBar.setVisibility(8);
|
|
}
|
|
|
|
private final boolean isVideo() {
|
|
MediaSource mediaSource = this.mediaSource;
|
|
return (mediaSource != null ? mediaSource.k : null) == MediaType.VIDEO;
|
|
}
|
|
|
|
private final void onMediaClick() {
|
|
if (getToolbarTranslationY() < 0.0f) {
|
|
showControls();
|
|
} else {
|
|
hideControls();
|
|
}
|
|
}
|
|
|
|
private final void onViewBindingDestroy(WidgetMediaBinding widgetMediaBinding) {
|
|
ValueAnimator valueAnimator = this.controlsAnimator;
|
|
if (valueAnimator != null) {
|
|
valueAnimator.cancel();
|
|
}
|
|
widgetMediaBinding.d.setTapListener(null);
|
|
MGImages mGImages = MGImages.INSTANCE;
|
|
ZoomableDraweeView zoomableDraweeView = widgetMediaBinding.d;
|
|
m.checkNotNullExpressionValue(zoomableDraweeView, "binding.mediaImage");
|
|
mGImages.cancelImageRequests(zoomableDraweeView);
|
|
}
|
|
|
|
private final void showControls() {
|
|
if (isVideo()) {
|
|
getBinding().f.h();
|
|
Subscription subscription = this.controlsVisibilitySubscription;
|
|
if (subscription != null) {
|
|
subscription.unsubscribe();
|
|
}
|
|
Observable<Long> d02 = Observable.d0(3000, TimeUnit.MILLISECONDS);
|
|
m.checkNotNullExpressionValue(d02, "Observable.timer(SHOW_CO…S, TimeUnit.MILLISECONDS)");
|
|
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.ui$default(d02, this, null, 2, null), WidgetMedia.class, (Context) null, new WidgetMedia$showControls$1(this), (Function1) null, (Function0) null, (Function0) null, new WidgetMedia$showControls$2(this), 58, (Object) null);
|
|
} else {
|
|
getBinding().f.c();
|
|
}
|
|
ControlsAnimationAction controlsAnimationAction = this.controlsAnimationAction;
|
|
ControlsAnimationAction controlsAnimationAction2 = ControlsAnimationAction.SHOW;
|
|
if (controlsAnimationAction != controlsAnimationAction2) {
|
|
this.controlsAnimationAction = controlsAnimationAction2;
|
|
ValueAnimator valueAnimator = this.controlsAnimator;
|
|
if (valueAnimator != null) {
|
|
valueAnimator.cancel();
|
|
}
|
|
ValueAnimator ofFloat = ValueAnimator.ofFloat(getToolbarTranslationY(), 0.0f);
|
|
m.checkNotNullExpressionValue(ofFloat, "this");
|
|
configureAndStartControlsAnimation(ofFloat);
|
|
this.controlsAnimator = ofFloat;
|
|
}
|
|
}
|
|
|
|
private final void showLoadingIndicator() {
|
|
ProgressBar progressBar = getBinding().e;
|
|
m.checkNotNullExpressionValue(progressBar, "binding.mediaLoadingIndicator");
|
|
progressBar.setVisibility(0);
|
|
}
|
|
|
|
@Override // androidx.fragment.app.Fragment
|
|
public void onDestroy() {
|
|
AppMediaPlayer appMediaPlayer = this.appMediaPlayer;
|
|
if (appMediaPlayer == null) {
|
|
m.throwUninitializedPropertyAccessException("appMediaPlayer");
|
|
}
|
|
appMediaPlayer.c();
|
|
super.onDestroy();
|
|
}
|
|
|
|
@Override // com.discord.app.AppFragment, androidx.fragment.app.Fragment
|
|
public void onPause() {
|
|
super.onPause();
|
|
AppMediaPlayer appMediaPlayer = this.appMediaPlayer;
|
|
if (appMediaPlayer == null) {
|
|
m.throwUninitializedPropertyAccessException("appMediaPlayer");
|
|
}
|
|
if (appMediaPlayer.f.v()) {
|
|
this.playerPausedByFragmentLifecycle = true;
|
|
AppMediaPlayer appMediaPlayer2 = this.appMediaPlayer;
|
|
if (appMediaPlayer2 == null) {
|
|
m.throwUninitializedPropertyAccessException("appMediaPlayer");
|
|
}
|
|
appMediaPlayer2.f.q(false);
|
|
}
|
|
}
|
|
|
|
@Override // com.discord.app.AppFragment
|
|
public void onViewBound(View view) {
|
|
m.checkNotNullParameter(view, "view");
|
|
super.onViewBound(view);
|
|
this.appMediaPlayer = i.a(requireContext());
|
|
ColorCompat.getThemedColor(this, 2130969908);
|
|
ColorCompat.setStatusBarColor$default((Fragment) this, ColorCompat.getThemedColor(this, 2130969908), false, 4, (Object) null);
|
|
PlayerView playerView = getBinding().g;
|
|
m.checkNotNullExpressionValue(playerView, "binding.mediaPlayerView");
|
|
View videoSurfaceView = playerView.getVideoSurfaceView();
|
|
if (videoSurfaceView != null) {
|
|
videoSurfaceView.setOnClickListener(new WidgetMedia$onViewBound$1(this));
|
|
}
|
|
getBinding().f1846c.setOnClickListener(new WidgetMedia$onViewBound$2(this));
|
|
AppBarLayout appBarLayout = getBinding().b;
|
|
m.checkNotNullExpressionValue(appBarLayout, "binding.actionBarToolbarLayout");
|
|
ViewExtensions.addOnHeightChangedListener(appBarLayout, new WidgetMedia$onViewBound$3(this));
|
|
PlayerControlView playerControlView = getBinding().f;
|
|
m.checkNotNullExpressionValue(playerControlView, "binding.mediaPlayerControlView");
|
|
ViewExtensions.addOnHeightChangedListener(playerControlView, new WidgetMedia$onViewBound$4(this));
|
|
}
|
|
|
|
@Override // com.discord.app.AppFragment
|
|
public void onViewBoundOrOnResume() {
|
|
Uri uri;
|
|
String str;
|
|
Uri uri2;
|
|
super.onViewBoundOrOnResume();
|
|
ZoomableDraweeView zoomableDraweeView = getBinding().d;
|
|
m.checkNotNullExpressionValue(zoomableDraweeView, "binding.mediaImage");
|
|
int i = 8;
|
|
boolean z2 = false;
|
|
zoomableDraweeView.setVisibility(getViewModel().getShowCoverFrame() ? 0 : 8);
|
|
ProgressBar progressBar = getBinding().e;
|
|
m.checkNotNullExpressionValue(progressBar, "binding.mediaLoadingIndicator");
|
|
if (getViewModel().getShowCoverFrame()) {
|
|
i = 0;
|
|
}
|
|
progressBar.setVisibility(i);
|
|
Uri parse = Uri.parse(getMostRecentIntent().getStringExtra("INTENT_MEDIA_URL"));
|
|
Uri parse2 = Uri.parse(getMostRecentIntent().getStringExtra("INTENT_IMAGE_URL"));
|
|
m.checkNotNullExpressionValue(parse2, "Uri.parse(mostRecentInte…gExtra(INTENT_IMAGE_URL))");
|
|
this.imageUri = parse2;
|
|
Parcelable parcelableExtra = getMostRecentIntent().getParcelableExtra("INTENT_MEDIA_SOURCE");
|
|
if (!(parcelableExtra instanceof MediaSource)) {
|
|
parcelableExtra = null;
|
|
}
|
|
MediaSource mediaSource = (MediaSource) parcelableExtra;
|
|
this.mediaSource = mediaSource;
|
|
String uri3 = (mediaSource == null || (uri2 = mediaSource.i) == null) ? null : uri2.toString();
|
|
this.videoUrl = uri3;
|
|
if (uri3 != null) {
|
|
uri = Uri.parse(uri3);
|
|
} else {
|
|
uri = this.imageUri;
|
|
if (uri == null) {
|
|
m.throwUninitializedPropertyAccessException("imageUri");
|
|
}
|
|
}
|
|
String stringExtra = getMostRecentIntent().getStringExtra("INTENT_TITLE");
|
|
if (stringExtra == null || t.isBlank(stringExtra)) {
|
|
String uri4 = parse.toString();
|
|
m.checkNotNullExpressionValue(uri4, "sourceUri.toString()");
|
|
str = uri4;
|
|
} else {
|
|
str = stringExtra;
|
|
}
|
|
AppFragment.setActionBarDisplayHomeAsUpEnabled$default(this, false, 1, null);
|
|
setActionBarTitle(2131894754);
|
|
setActionBarSubtitle(str);
|
|
AppFragment.setActionBarOptionsMenu$default(this, 2131623956, new WidgetMedia$onViewBoundOrOnResume$1(this, parse, uri, stringExtra, str), null, 4, null);
|
|
configureMediaImage();
|
|
showControls();
|
|
this.playerPausedByFragmentLifecycle = false;
|
|
MediaSource mediaSource2 = this.mediaSource;
|
|
if (mediaSource2 != null) {
|
|
if (mediaSource2.k == MediaType.GIFV) {
|
|
z2 = true;
|
|
}
|
|
AppMediaPlayer appMediaPlayer = this.appMediaPlayer;
|
|
if (appMediaPlayer == null) {
|
|
m.throwUninitializedPropertyAccessException("appMediaPlayer");
|
|
}
|
|
boolean isPlaying = getViewModel().isPlaying();
|
|
long currentPlayerPositionMs = getViewModel().getCurrentPlayerPositionMs();
|
|
PlayerView playerView = getBinding().g;
|
|
m.checkNotNullExpressionValue(playerView, "binding.mediaPlayerView");
|
|
appMediaPlayer.a(mediaSource2, isPlaying, z2, currentPlayerPositionMs, playerView, getBinding().f);
|
|
if (z2) {
|
|
AppMediaPlayer appMediaPlayer2 = this.appMediaPlayer;
|
|
if (appMediaPlayer2 == null) {
|
|
m.throwUninitializedPropertyAccessException("appMediaPlayer");
|
|
}
|
|
appMediaPlayer2.d(0.0f);
|
|
} else {
|
|
AppMediaPlayer appMediaPlayer3 = this.appMediaPlayer;
|
|
if (appMediaPlayer3 == null) {
|
|
m.throwUninitializedPropertyAccessException("appMediaPlayer");
|
|
}
|
|
appMediaPlayer3.d(1.0f);
|
|
}
|
|
AppMediaPlayer appMediaPlayer4 = this.appMediaPlayer;
|
|
if (appMediaPlayer4 == null) {
|
|
m.throwUninitializedPropertyAccessException("appMediaPlayer");
|
|
}
|
|
Observable<AppMediaPlayer.Event> J = appMediaPlayer4.a.J();
|
|
m.checkNotNullExpressionValue(J, "eventSubject.onBackpressureBuffer()");
|
|
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.bindToComponentLifecycle(J, this), WidgetMedia.class, (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new WidgetMedia$onViewBoundOrOnResume$$inlined$let$lambda$1(this), 62, (Object) null);
|
|
}
|
|
}
|
|
}
|