discord-jadx/app/src/main/java/com/discord/widgets/tabs/WidgetTabsHost.java

312 lines
17 KiB
Java

package com.discord.widgets.tabs;
import android.animation.ValueAnimator;
import android.content.Context;
import android.content.Intent;
import android.view.View;
import android.view.ViewGroup;
import android.widget.FrameLayout;
import androidx.core.view.ViewCompat;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentContainerView;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentViewModelLazyKt;
import androidx.interpolator.view.animation.FastOutSlowInInterpolator;
import c.a.d.h0;
import c.a.d.j0;
import c.d.b.a.a;
import com.discord.app.AppFragment;
import com.discord.databinding.WidgetTabsHostBinding;
import com.discord.utilities.analytics.AnalyticsTracker;
import com.discord.utilities.auth.GoogleSmartLockManager;
import com.discord.utilities.color.ColorCompat;
import com.discord.utilities.rx.ObservableExtensionsKt;
import com.discord.utilities.view.extensions.ViewExtensions;
import com.discord.utilities.viewbinding.FragmentViewBindingDelegate;
import com.discord.utilities.viewbinding.FragmentViewBindingDelegateKt;
import com.discord.widgets.quickmentions.WidgetQuickMentionsDialog;
import com.discord.widgets.stage.discovery.StageDiscoveryUsersFeatureFlag;
import com.discord.widgets.status.WidgetGlobalStatusIndicatorState;
import com.discord.widgets.tabs.TabsHostViewModel;
import com.discord.widgets.user.WidgetUserStatusSheet;
import com.discord.widgets.user.search.WidgetGlobalSearchDialog;
import d0.z.d.a0;
import d0.z.d.m;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Objects;
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;
/* compiled from: WidgetTabsHost.kt */
public final class WidgetTabsHost extends AppFragment {
public static final /* synthetic */ KProperty[] $$delegatedProperties = {a.V(WidgetTabsHost.class, "binding", "getBinding()Lcom/discord/databinding/WidgetTabsHostBinding;", 0)};
private static final long BOTTOM_TABS_DOWNWARD_ANIMATION_DURATION_MS = 200;
private static final long BOTTOM_TABS_UPWARD_ANIMATION_DURATION_MS = 250;
public static final Companion Companion = new Companion(null);
private final FragmentViewBindingDelegate binding$delegate = FragmentViewBindingDelegateKt.viewBinding$default(this, WidgetTabsHost$binding$2.INSTANCE, null, 2, null);
private ValueAnimator bottomNavAnimator;
private final WidgetGlobalStatusIndicatorState globalStatusIndicatorStateObserver = WidgetGlobalStatusIndicatorState.Provider.get();
private int previousBottomNavHeight;
private Boolean previousShowBottomNav;
private final Map<NavigationTab, OnTabSelectedListener> tabToTabSelectionListenerMap = new LinkedHashMap();
private final Lazy viewModel$delegate;
private TabsHostViewModel.ViewState viewState;
/* compiled from: WidgetTabsHost.kt */
public static final class Companion {
private Companion() {
}
public /* synthetic */ Companion(DefaultConstructorMarker defaultConstructorMarker) {
this();
}
}
public WidgetTabsHost() {
super(2131559272);
WidgetTabsHost$viewModel$2 widgetTabsHost$viewModel$2 = WidgetTabsHost$viewModel$2.INSTANCE;
h0 h0Var = new h0(this);
this.viewModel$delegate = FragmentViewModelLazyKt.createViewModelLazy(this, a0.getOrCreateKotlinClass(TabsHostViewModel.class), new WidgetTabsHost$appViewModels$$inlined$viewModels$1(h0Var), new j0(widgetTabsHost$viewModel$2));
}
public static final /* synthetic */ WidgetTabsHostBinding access$getBinding$p(WidgetTabsHost widgetTabsHost) {
return widgetTabsHost.getBinding();
}
public static final /* synthetic */ TabsHostViewModel access$getViewModel$p(WidgetTabsHost widgetTabsHost) {
return widgetTabsHost.getViewModel();
}
public static final /* synthetic */ void access$handleEvent(WidgetTabsHost widgetTabsHost, TabsHostViewModel.Event event) {
widgetTabsHost.handleEvent(event);
}
public static final /* synthetic */ void access$onSearchClick(WidgetTabsHost widgetTabsHost) {
widgetTabsHost.onSearchClick();
}
public static final /* synthetic */ void access$onSettingsLongPress(WidgetTabsHost widgetTabsHost) {
widgetTabsHost.onSettingsLongPress();
}
public static final /* synthetic */ void access$setPanelWindowInsetsListeners(WidgetTabsHost widgetTabsHost, boolean z2) {
widgetTabsHost.setPanelWindowInsetsListeners(z2);
}
public static final /* synthetic */ void access$updateViews(WidgetTabsHost widgetTabsHost, TabsHostViewModel.ViewState viewState) {
widgetTabsHost.updateViews(viewState);
}
private final void configureSystemStatusBar() {
int themedColor = ColorCompat.getThemedColor(this, 2130968907);
ColorCompat.setStatusBarColor$default((Fragment) this, themedColor, false, 4, (Object) null);
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.bindToComponentLifecycle(this.globalStatusIndicatorStateObserver.observeState(), this), WidgetTabsHost.class, (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new WidgetTabsHost$configureSystemStatusBar$1(this, themedColor), 62, (Object) null);
}
private final WidgetTabsHostBinding getBinding() {
return (WidgetTabsHostBinding) this.binding$delegate.getValue((Fragment) this, $$delegatedProperties[0]);
}
private final TabsHostViewModel getViewModel() {
return (TabsHostViewModel) this.viewModel$delegate.getValue();
}
private final void handleEvent(TabsHostViewModel.Event event) {
if (m.areEqual(event, TabsHostViewModel.Event.TrackFriendsListShown.INSTANCE)) {
handleFriendsListShown();
} else if (!m.areEqual(event, TabsHostViewModel.Event.DismissSearchDialog.INSTANCE)) {
} else {
if (StageDiscoveryUsersFeatureFlag.Companion.getINSTANCE().canAccessStageDiscovery()) {
WidgetQuickMentionsDialog.Companion companion = WidgetQuickMentionsDialog.Companion;
FragmentManager parentFragmentManager = getParentFragmentManager();
m.checkNotNullExpressionValue(parentFragmentManager, "parentFragmentManager");
companion.dismiss(parentFragmentManager);
return;
}
WidgetGlobalSearchDialog.Companion companion2 = WidgetGlobalSearchDialog.Companion;
FragmentManager parentFragmentManager2 = getParentFragmentManager();
m.checkNotNullExpressionValue(parentFragmentManager2, "parentFragmentManager");
companion2.dismiss(parentFragmentManager2);
}
}
private final void handleFriendsListShown() {
AnalyticsTracker.INSTANCE.friendsListViewed();
}
private final void navigateToTab(NavigationTab navigationTab) {
FragmentContainerView fragmentContainerView = getBinding().f;
m.checkNotNullExpressionValue(fragmentContainerView, "binding.widgetTabsHostHome");
boolean z2 = true;
int i = 0;
fragmentContainerView.setVisibility(navigationTab == NavigationTab.HOME ? 0 : 8);
FragmentContainerView fragmentContainerView2 = getBinding().e;
m.checkNotNullExpressionValue(fragmentContainerView2, "binding.widgetTabsHostFriends");
fragmentContainerView2.setVisibility(navigationTab == NavigationTab.FRIENDS ? 0 : 8);
FragmentContainerView fragmentContainerView3 = getBinding().g;
m.checkNotNullExpressionValue(fragmentContainerView3, "binding.widgetTabsHostMentions");
fragmentContainerView3.setVisibility(navigationTab == NavigationTab.MENTIONS ? 0 : 8);
FragmentContainerView fragmentContainerView4 = getBinding().j;
m.checkNotNullExpressionValue(fragmentContainerView4, "binding.widgetTabsHostUserSettings");
fragmentContainerView4.setVisibility(navigationTab == NavigationTab.SETTINGS ? 0 : 8);
FragmentContainerView fragmentContainerView5 = getBinding().d;
m.checkNotNullExpressionValue(fragmentContainerView5, "binding.widgetTabsHostDiscovery");
if (navigationTab != NavigationTab.DISCOVERY) {
z2 = false;
}
if (!z2) {
i = 8;
}
fragmentContainerView5.setVisibility(i);
OnTabSelectedListener onTabSelectedListener = this.tabToTabSelectionListenerMap.get(navigationTab);
if (onTabSelectedListener != null) {
onTabSelectedListener.onTabSelected();
}
}
private final void onSearchClick() {
if (StageDiscoveryUsersFeatureFlag.Companion.getINSTANCE().canAccessStageDiscovery()) {
WidgetQuickMentionsDialog.Companion companion = WidgetQuickMentionsDialog.Companion;
FragmentManager parentFragmentManager = getParentFragmentManager();
m.checkNotNullExpressionValue(parentFragmentManager, "parentFragmentManager");
WidgetQuickMentionsDialog.Companion.show$default(companion, parentFragmentManager, null, 2, null);
return;
}
WidgetGlobalSearchDialog.Companion companion2 = WidgetGlobalSearchDialog.Companion;
FragmentManager parentFragmentManager2 = getParentFragmentManager();
m.checkNotNullExpressionValue(parentFragmentManager2, "parentFragmentManager");
WidgetGlobalSearchDialog.Companion.show$default(companion2, parentFragmentManager2, null, 2, null);
}
private final void onSettingsLongPress() {
WidgetUserStatusSheet.Companion.show(this);
}
private final void setPanelWindowInsetsListeners(boolean z2) {
ViewCompat.setOnApplyWindowInsetsListener(getBinding().f1986c, WidgetTabsHost$setPanelWindowInsetsListeners$1.INSTANCE);
ViewCompat.setOnApplyWindowInsetsListener(getBinding().f, new WidgetTabsHost$setPanelWindowInsetsListeners$2(z2));
FrameLayout frameLayout = getBinding().h;
m.checkNotNullExpressionValue(frameLayout, "binding.widgetTabsHostNavHost");
ViewExtensions.setForwardingWindowInsetsListener(frameLayout);
ViewCompat.setOnApplyWindowInsetsListener(getBinding().i, new WidgetTabsHost$setPanelWindowInsetsListeners$3(z2));
ViewCompat.setOnApplyWindowInsetsListener(getBinding().b, WidgetTabsHost$setPanelWindowInsetsListeners$4.INSTANCE);
getBinding().f1986c.requestApplyInsets();
}
public static /* synthetic */ void setPanelWindowInsetsListeners$default(WidgetTabsHost widgetTabsHost, boolean z2, int i, Object obj) {
if ((i & 1) != 0) {
z2 = false;
}
widgetTabsHost.setPanelWindowInsetsListeners(z2);
}
private final void updateNavHostMargins(TabsHostViewModel.ViewState viewState) {
NavigationTab selectedTab = viewState.getSelectedTab();
FrameLayout frameLayout = getBinding().h;
m.checkNotNullExpressionValue(frameLayout, "binding.widgetTabsHostNavHost");
ViewGroup.LayoutParams layoutParams = frameLayout.getLayoutParams();
Objects.requireNonNull(layoutParams, "null cannot be cast to non-null type android.view.ViewGroup.MarginLayoutParams");
ViewGroup.MarginLayoutParams marginLayoutParams = (ViewGroup.MarginLayoutParams) layoutParams;
marginLayoutParams.setMargins(marginLayoutParams.leftMargin, marginLayoutParams.topMargin, marginLayoutParams.rightMargin, selectedTab == NavigationTab.HOME ? 0 : viewState.getBottomNavHeight());
FrameLayout frameLayout2 = getBinding().h;
m.checkNotNullExpressionValue(frameLayout2, "binding.widgetTabsHostNavHost");
frameLayout2.setLayoutParams(marginLayoutParams);
}
private final void updateViews(TabsHostViewModel.ViewState viewState) {
this.viewState = viewState;
NavigationTab selectedTab = viewState.getSelectedTab();
boolean showBottomNav = viewState.getShowBottomNav();
int bottomNavHeight = viewState.getBottomNavHeight();
navigateToTab(selectedTab);
getBinding().b.updateView(selectedTab, new WidgetTabsHost$updateViews$1(getViewModel()), showBottomNav, viewState.getMyUserId(), viewState.getVisibleTabs(), viewState.getNumHomeNotifications(), viewState.getNumFriendsNotifications(), new WidgetTabsHost$updateViews$2(this), new WidgetTabsHost$updateViews$3(this), new WidgetTabsHost$updateViews$4(this));
updateNavHostMargins(viewState);
boolean z2 = !m.areEqual(Boolean.valueOf(showBottomNav), this.previousShowBottomNav);
boolean z3 = bottomNavHeight != this.previousBottomNavHeight;
if (z2 || z3) {
ValueAnimator valueAnimator = this.bottomNavAnimator;
if (valueAnimator != null) {
valueAnimator.cancel();
}
TabsHostBottomNavigationView tabsHostBottomNavigationView = getBinding().b;
m.checkNotNullExpressionValue(tabsHostBottomNavigationView, "binding.widgetTabsHostBottomNavigationView");
float translationY = tabsHostBottomNavigationView.getTranslationY();
if (showBottomNav) {
TabsHostBottomNavigationView tabsHostBottomNavigationView2 = getBinding().b;
m.checkNotNullExpressionValue(tabsHostBottomNavigationView2, "binding.widgetTabsHostBottomNavigationView");
tabsHostBottomNavigationView2.setVisibility(0);
ValueAnimator ofFloat = ValueAnimator.ofFloat(translationY, 0.0f);
ofFloat.setInterpolator(new FastOutSlowInInterpolator());
ofFloat.setDuration(250L);
ofFloat.addUpdateListener(new WidgetTabsHost$updateViews$$inlined$apply$lambda$1(this));
ofFloat.start();
this.bottomNavAnimator = ofFloat;
} else if (bottomNavHeight > 0) {
ValueAnimator ofFloat2 = ValueAnimator.ofFloat(translationY, (float) bottomNavHeight);
ofFloat2.setInterpolator(new FastOutSlowInInterpolator());
ofFloat2.setDuration(200L);
ofFloat2.addUpdateListener(new WidgetTabsHost$updateViews$$inlined$apply$lambda$2(this));
ofFloat2.start();
this.bottomNavAnimator = ofFloat2;
} else {
TabsHostBottomNavigationView tabsHostBottomNavigationView3 = getBinding().b;
m.checkNotNullExpressionValue(tabsHostBottomNavigationView3, "binding.widgetTabsHostBottomNavigationView");
tabsHostBottomNavigationView3.setVisibility(4);
}
}
this.previousBottomNavHeight = bottomNavHeight;
this.previousShowBottomNav = Boolean.valueOf(showBottomNav);
}
@Override // com.discord.app.AppFragment, androidx.fragment.app.Fragment
public void onActivityResult(int i, int i2, Intent intent) {
super.onActivityResult(i, i2, intent);
if (i == 4008) {
GoogleSmartLockManager.Companion.handleResult(i2, intent);
}
}
@Override // com.discord.app.AppFragment, androidx.fragment.app.Fragment
public void onDestroyView() {
ValueAnimator valueAnimator = this.bottomNavAnimator;
if (valueAnimator != null) {
valueAnimator.cancel();
}
super.onDestroyView();
}
@Override // com.discord.app.AppFragment
public void onViewBound(View view) {
m.checkNotNullParameter(view, "view");
super.onViewBound(view);
getBinding().b.addHeightChangedListener(BottomNavViewObserver.Companion.getINSTANCE());
setPanelWindowInsetsListeners$default(this, false, 1, null);
AppFragment.setOnBackPressed$default(this, new WidgetTabsHost$onViewBound$1(this), 0, 2, null);
}
@Override // com.discord.app.AppFragment
public void onViewBoundOrOnResume() {
super.onViewBoundOrOnResume();
Observable<TabsHostViewModel.ViewState> r = getViewModel().observeViewState().r();
m.checkNotNullExpressionValue(r, "viewModel.observeViewSta… .distinctUntilChanged()");
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.bindToComponentLifecycle(r, this), WidgetTabsHost.class, (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new WidgetTabsHost$onViewBoundOrOnResume$1(this), 62, (Object) null);
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.bindToComponentLifecycle(getViewModel().observeEvents(), this), WidgetTabsHost.class, (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new WidgetTabsHost$onViewBoundOrOnResume$2(this), 62, (Object) null);
configureSystemStatusBar();
}
public final void registerTabSelectionListener(NavigationTab navigationTab, OnTabSelectedListener onTabSelectedListener) {
m.checkNotNullParameter(navigationTab, "navigationTab");
m.checkNotNullParameter(onTabSelectedListener, "onTabSelectedListener");
this.tabToTabSelectionListenerMap.put(navigationTab, onTabSelectedListener);
TabsHostViewModel.ViewState viewState = this.viewState;
NavigationTab selectedTab = viewState != null ? viewState.getSelectedTab() : null;
if (selectedTab != null) {
navigateToTab(selectedTab);
}
}
}