what-the-bank/sources/io/flutter/plugin/platform/PlatformPlugin.java

416 lines
19 KiB
Java
Raw Normal View History

2024-07-27 18:17:47 +07:00
package io.flutter.plugin.platform;
import android.app.Activity;
import android.app.ActivityManager;
import android.content.ClipData;
import android.content.ClipDescription;
import android.content.ClipboardManager;
import android.graphics.Bitmap;
import android.os.Build;
import android.view.View;
import android.view.Window;
import androidx.core.view.WindowInsetsControllerCompat;
import io.flutter.Log;
import io.flutter.embedding.engine.systemchannels.PlatformChannel;
import io.flutter.plugin.platform.PlatformPlugin;
import java.io.FileNotFoundException;
import java.util.List;
import o.NHB;
import org.bouncycastle.asn1.cmp.PKIFailureInfo;
/* loaded from: classes6.dex */
public class PlatformPlugin {
public static final int DEFAULT_SYSTEM_UI = 1280;
private static final String TAG = "PlatformPlugin";
private final Activity activity;
private PlatformChannel.SystemChromeStyle currentTheme;
private int mEnabledOverlays;
final PlatformChannel.PlatformMessageHandler mPlatformMessageHandler;
private final PlatformChannel platformChannel;
private final PlatformPluginDelegate platformPluginDelegate;
/* loaded from: classes6.dex */
public interface PlatformPluginDelegate {
boolean popSystemNavigator();
}
public PlatformPlugin(Activity activity, PlatformChannel platformChannel) {
this(activity, platformChannel, null);
}
public PlatformPlugin(Activity activity, PlatformChannel platformChannel, PlatformPluginDelegate platformPluginDelegate) {
PlatformChannel.PlatformMessageHandler platformMessageHandler = new PlatformChannel.PlatformMessageHandler(this) { // from class: io.flutter.plugin.platform.PlatformPlugin.1
final PlatformPlugin this$0;
{
this.this$0 = this;
}
@Override // io.flutter.embedding.engine.systemchannels.PlatformChannel.PlatformMessageHandler
public void playSystemSound(PlatformChannel.SoundType soundType) {
this.this$0.playSystemSound(soundType);
}
@Override // io.flutter.embedding.engine.systemchannels.PlatformChannel.PlatformMessageHandler
public void vibrateHapticFeedback(PlatformChannel.HapticFeedbackType hapticFeedbackType) {
this.this$0.vibrateHapticFeedback(hapticFeedbackType);
}
@Override // io.flutter.embedding.engine.systemchannels.PlatformChannel.PlatformMessageHandler
public void setPreferredOrientations(int i) {
this.this$0.setSystemChromePreferredOrientations(i);
}
@Override // io.flutter.embedding.engine.systemchannels.PlatformChannel.PlatformMessageHandler
public void setApplicationSwitcherDescription(PlatformChannel.AppSwitcherDescription appSwitcherDescription) {
this.this$0.setSystemChromeApplicationSwitcherDescription(appSwitcherDescription);
}
@Override // io.flutter.embedding.engine.systemchannels.PlatformChannel.PlatformMessageHandler
public void showSystemOverlays(List<PlatformChannel.SystemUiOverlay> list) {
this.this$0.setSystemChromeEnabledSystemUIOverlays(list);
}
@Override // io.flutter.embedding.engine.systemchannels.PlatformChannel.PlatformMessageHandler
public void showSystemUiMode(PlatformChannel.SystemUiMode systemUiMode) {
this.this$0.setSystemChromeEnabledSystemUIMode(systemUiMode);
}
@Override // io.flutter.embedding.engine.systemchannels.PlatformChannel.PlatformMessageHandler
public void setSystemUiChangeListener() {
this.this$0.setSystemChromeChangeListener();
}
@Override // io.flutter.embedding.engine.systemchannels.PlatformChannel.PlatformMessageHandler
public void restoreSystemUiOverlays() {
this.this$0.restoreSystemChromeSystemUIOverlays();
}
@Override // io.flutter.embedding.engine.systemchannels.PlatformChannel.PlatformMessageHandler
public void setSystemUiOverlayStyle(PlatformChannel.SystemChromeStyle systemChromeStyle) {
this.this$0.setSystemChromeSystemUIOverlayStyle(systemChromeStyle);
}
@Override // io.flutter.embedding.engine.systemchannels.PlatformChannel.PlatformMessageHandler
public void popSystemNavigator() {
this.this$0.popSystemNavigator();
}
@Override // io.flutter.embedding.engine.systemchannels.PlatformChannel.PlatformMessageHandler
public CharSequence getClipboardData(PlatformChannel.ClipboardContentFormat clipboardContentFormat) {
return this.this$0.getClipboardData(clipboardContentFormat);
}
@Override // io.flutter.embedding.engine.systemchannels.PlatformChannel.PlatformMessageHandler
public void setClipboardData(String str) {
this.this$0.setClipboardData(str);
}
@Override // io.flutter.embedding.engine.systemchannels.PlatformChannel.PlatformMessageHandler
public boolean clipboardHasStrings() {
return this.this$0.clipboardHasStrings();
}
};
this.mPlatformMessageHandler = platformMessageHandler;
this.activity = activity;
this.platformChannel = platformChannel;
platformChannel.setPlatformMessageHandler(platformMessageHandler);
this.platformPluginDelegate = platformPluginDelegate;
this.mEnabledOverlays = DEFAULT_SYSTEM_UI;
}
public void destroy() {
this.platformChannel.setPlatformMessageHandler(null);
}
/* JADX INFO: Access modifiers changed from: private */
public void playSystemSound(PlatformChannel.SoundType soundType) {
if (soundType == PlatformChannel.SoundType.CLICK) {
this.activity.getWindow().getDecorView().playSoundEffect(0);
}
}
void vibrateHapticFeedback(PlatformChannel.HapticFeedbackType hapticFeedbackType) {
View decorView = this.activity.getWindow().getDecorView();
int i = AnonymousClass3.$SwitchMap$io$flutter$embedding$engine$systemchannels$PlatformChannel$HapticFeedbackType[hapticFeedbackType.ordinal()];
if (i == 1) {
decorView.performHapticFeedback(0);
return;
}
if (i == 2) {
decorView.performHapticFeedback(1);
return;
}
if (i == 3) {
decorView.performHapticFeedback(3);
} else if (i == 4) {
decorView.performHapticFeedback(6);
} else {
if (i != 5) {
return;
}
decorView.performHapticFeedback(4);
}
}
/* JADX INFO: Access modifiers changed from: private */
public void setSystemChromePreferredOrientations(int i) {
this.activity.setRequestedOrientation(i);
}
/* JADX INFO: Access modifiers changed from: private */
public void setSystemChromeApplicationSwitcherDescription(PlatformChannel.AppSwitcherDescription appSwitcherDescription) {
if (Build.VERSION.SDK_INT < 28) {
this.activity.setTaskDescription(new ActivityManager.TaskDescription(appSwitcherDescription.label, (Bitmap) null, appSwitcherDescription.color));
}
if (Build.VERSION.SDK_INT >= 28) {
this.activity.setTaskDescription(new ActivityManager.TaskDescription(appSwitcherDescription.label, 0, appSwitcherDescription.color));
}
}
/* JADX INFO: Access modifiers changed from: private */
public void setSystemChromeChangeListener() {
View decorView = this.activity.getWindow().getDecorView();
decorView.setOnSystemUiVisibilityChangeListener(new AnonymousClass2(this, decorView));
}
/* JADX INFO: Access modifiers changed from: package-private */
/* renamed from: io.flutter.plugin.platform.PlatformPlugin$2, reason: invalid class name */
/* loaded from: classes6.dex */
public class AnonymousClass2 implements View.OnSystemUiVisibilityChangeListener {
final PlatformPlugin this$0;
final View val$decorView;
AnonymousClass2(PlatformPlugin platformPlugin, View view) {
this.this$0 = platformPlugin;
this.val$decorView = view;
}
@Override // android.view.View.OnSystemUiVisibilityChangeListener
public void onSystemUiVisibilityChange(final int i) {
this.val$decorView.post(new Runnable(this, i) { // from class: io.flutter.plugin.platform.PlatformPlugin$2$$ExternalSyntheticLambda0
public final PlatformPlugin.AnonymousClass2 f$0;
public final int f$1;
{
this.f$0 = this;
this.f$1 = i;
}
@Override // java.lang.Runnable
public final void run() {
this.f$0.m335x970b83d5(this.f$1);
}
});
}
/* JADX INFO: Access modifiers changed from: package-private */
/* renamed from: lambda$onSystemUiVisibilityChange$0$io-flutter-plugin-platform-PlatformPlugin$2, reason: not valid java name */
public /* synthetic */ void m335x970b83d5(int i) {
if ((i & 4) == 0) {
this.this$0.platformChannel.systemChromeChanged(true);
} else {
this.this$0.platformChannel.systemChromeChanged(false);
}
}
}
/* JADX INFO: Access modifiers changed from: private */
public void setSystemChromeEnabledSystemUIMode(PlatformChannel.SystemUiMode systemUiMode) {
int i;
if (systemUiMode == PlatformChannel.SystemUiMode.LEAN_BACK) {
i = 1798;
} else if (systemUiMode == PlatformChannel.SystemUiMode.IMMERSIVE) {
i = 3846;
} else if (systemUiMode == PlatformChannel.SystemUiMode.IMMERSIVE_STICKY) {
i = 5894;
} else if (systemUiMode != PlatformChannel.SystemUiMode.EDGE_TO_EDGE || Build.VERSION.SDK_INT < 29) {
return;
} else {
i = 1792;
}
this.mEnabledOverlays = i;
updateSystemUiOverlays();
}
/* JADX INFO: Access modifiers changed from: private */
public void setSystemChromeEnabledSystemUIOverlays(List<PlatformChannel.SystemUiOverlay> list) {
int i = list.size() == 0 ? 5894 : 1798;
for (int i2 = 0; i2 < list.size(); i2++) {
int i3 = AnonymousClass3.$SwitchMap$io$flutter$embedding$engine$systemchannels$PlatformChannel$SystemUiOverlay[list.get(i2).ordinal()];
if (i3 == 1) {
i &= -5;
} else if (i3 == 2) {
i &= -515;
}
}
this.mEnabledOverlays = i;
updateSystemUiOverlays();
}
public void updateSystemUiOverlays() {
this.activity.getWindow().getDecorView().setSystemUiVisibility(this.mEnabledOverlays);
PlatformChannel.SystemChromeStyle systemChromeStyle = this.currentTheme;
if (systemChromeStyle != null) {
setSystemChromeSystemUIOverlayStyle(systemChromeStyle);
}
}
/* JADX INFO: Access modifiers changed from: private */
public void restoreSystemChromeSystemUIOverlays() {
updateSystemUiOverlays();
}
/* JADX INFO: Access modifiers changed from: private */
public void setSystemChromeSystemUIOverlayStyle(PlatformChannel.SystemChromeStyle systemChromeStyle) {
Window window = this.activity.getWindow();
WindowInsetsControllerCompat windowInsetsControllerCompat = new WindowInsetsControllerCompat(window, window.getDecorView());
if (Build.VERSION.SDK_INT < 30) {
window.addFlags(PKIFailureInfo.systemUnavail);
window.clearFlags(201326592);
}
if (systemChromeStyle.statusBarIconBrightness != null) {
int i = AnonymousClass3.$SwitchMap$io$flutter$embedding$engine$systemchannels$PlatformChannel$Brightness[systemChromeStyle.statusBarIconBrightness.ordinal()];
if (i == 1) {
windowInsetsControllerCompat.e(true);
} else if (i == 2) {
windowInsetsControllerCompat.e(false);
}
}
if (systemChromeStyle.statusBarColor != null) {
window.setStatusBarColor(systemChromeStyle.statusBarColor.intValue());
}
if (systemChromeStyle.systemStatusBarContrastEnforced != null && Build.VERSION.SDK_INT >= 29) {
window.setStatusBarContrastEnforced(systemChromeStyle.systemStatusBarContrastEnforced.booleanValue());
}
if (systemChromeStyle.systemNavigationBarIconBrightness != null) {
int i2 = AnonymousClass3.$SwitchMap$io$flutter$embedding$engine$systemchannels$PlatformChannel$Brightness[systemChromeStyle.systemNavigationBarIconBrightness.ordinal()];
if (i2 == 1) {
windowInsetsControllerCompat.d(true);
} else if (i2 == 2) {
windowInsetsControllerCompat.d(false);
}
}
if (systemChromeStyle.systemNavigationBarColor != null) {
window.setNavigationBarColor(systemChromeStyle.systemNavigationBarColor.intValue());
}
if (systemChromeStyle.systemNavigationBarDividerColor != null && Build.VERSION.SDK_INT >= 28) {
window.setNavigationBarDividerColor(systemChromeStyle.systemNavigationBarDividerColor.intValue());
}
if (systemChromeStyle.systemNavigationBarContrastEnforced != null && Build.VERSION.SDK_INT >= 29) {
window.setNavigationBarContrastEnforced(systemChromeStyle.systemNavigationBarContrastEnforced.booleanValue());
}
this.currentTheme = systemChromeStyle;
}
/* JADX INFO: Access modifiers changed from: package-private */
/* renamed from: io.flutter.plugin.platform.PlatformPlugin$3, reason: invalid class name */
/* loaded from: classes6.dex */
public static /* synthetic */ class AnonymousClass3 {
static final int[] $SwitchMap$io$flutter$embedding$engine$systemchannels$PlatformChannel$Brightness;
static final int[] $SwitchMap$io$flutter$embedding$engine$systemchannels$PlatformChannel$HapticFeedbackType;
static final int[] $SwitchMap$io$flutter$embedding$engine$systemchannels$PlatformChannel$SystemUiOverlay;
static {
int[] iArr = new int[PlatformChannel.Brightness.values().length];
$SwitchMap$io$flutter$embedding$engine$systemchannels$PlatformChannel$Brightness = iArr;
try {
iArr[PlatformChannel.Brightness.DARK.ordinal()] = 1;
} catch (NoSuchFieldError unused) {
}
try {
$SwitchMap$io$flutter$embedding$engine$systemchannels$PlatformChannel$Brightness[PlatformChannel.Brightness.LIGHT.ordinal()] = 2;
} catch (NoSuchFieldError unused2) {
}
int[] iArr2 = new int[PlatformChannel.SystemUiOverlay.values().length];
$SwitchMap$io$flutter$embedding$engine$systemchannels$PlatformChannel$SystemUiOverlay = iArr2;
try {
iArr2[PlatformChannel.SystemUiOverlay.TOP_OVERLAYS.ordinal()] = 1;
} catch (NoSuchFieldError unused3) {
}
try {
$SwitchMap$io$flutter$embedding$engine$systemchannels$PlatformChannel$SystemUiOverlay[PlatformChannel.SystemUiOverlay.BOTTOM_OVERLAYS.ordinal()] = 2;
} catch (NoSuchFieldError unused4) {
}
int[] iArr3 = new int[PlatformChannel.HapticFeedbackType.values().length];
$SwitchMap$io$flutter$embedding$engine$systemchannels$PlatformChannel$HapticFeedbackType = iArr3;
try {
iArr3[PlatformChannel.HapticFeedbackType.STANDARD.ordinal()] = 1;
} catch (NoSuchFieldError unused5) {
}
try {
$SwitchMap$io$flutter$embedding$engine$systemchannels$PlatformChannel$HapticFeedbackType[PlatformChannel.HapticFeedbackType.LIGHT_IMPACT.ordinal()] = 2;
} catch (NoSuchFieldError unused6) {
}
try {
$SwitchMap$io$flutter$embedding$engine$systemchannels$PlatformChannel$HapticFeedbackType[PlatformChannel.HapticFeedbackType.MEDIUM_IMPACT.ordinal()] = 3;
} catch (NoSuchFieldError unused7) {
}
try {
$SwitchMap$io$flutter$embedding$engine$systemchannels$PlatformChannel$HapticFeedbackType[PlatformChannel.HapticFeedbackType.HEAVY_IMPACT.ordinal()] = 4;
} catch (NoSuchFieldError unused8) {
}
try {
$SwitchMap$io$flutter$embedding$engine$systemchannels$PlatformChannel$HapticFeedbackType[PlatformChannel.HapticFeedbackType.SELECTION_CLICK.ordinal()] = 5;
} catch (NoSuchFieldError unused9) {
}
}
}
/* JADX INFO: Access modifiers changed from: private */
/* JADX WARN: Multi-variable type inference failed */
public void popSystemNavigator() {
PlatformPluginDelegate platformPluginDelegate = this.platformPluginDelegate;
if (platformPluginDelegate == null || !platformPluginDelegate.popSystemNavigator()) {
Activity activity = this.activity;
if (activity instanceof NHB) {
((NHB) activity).getOnBackPressedDispatcher().a();
} else {
activity.finish();
}
}
}
/* JADX INFO: Access modifiers changed from: private */
public CharSequence getClipboardData(PlatformChannel.ClipboardContentFormat clipboardContentFormat) {
ClipboardManager clipboardManager = (ClipboardManager) this.activity.getSystemService("clipboard");
if (!clipboardManager.hasPrimaryClip()) {
return null;
}
try {
ClipData primaryClip = clipboardManager.getPrimaryClip();
if (primaryClip == null) {
return null;
}
if (clipboardContentFormat != null && clipboardContentFormat != PlatformChannel.ClipboardContentFormat.PLAIN_TEXT) {
return null;
}
ClipData.Item itemAt = primaryClip.getItemAt(0);
if (itemAt.getUri() != null) {
this.activity.getContentResolver().openTypedAssetFileDescriptor(itemAt.getUri(), "text/*", null);
}
return itemAt.coerceToText(this.activity);
} catch (FileNotFoundException unused) {
return null;
} catch (SecurityException e) {
Log.w(TAG, "Attempted to get clipboard data that requires additional permission(s).\nSee the exception details for which permission(s) are required, and consider adding them to your Android Manifest as described in:\nhttps://developer.android.com/guide/topics/permissions/overview", e);
return null;
}
}
/* JADX INFO: Access modifiers changed from: private */
public void setClipboardData(String str) {
((ClipboardManager) this.activity.getSystemService("clipboard")).setPrimaryClip(ClipData.newPlainText("text label?", str));
}
/* JADX INFO: Access modifiers changed from: private */
public boolean clipboardHasStrings() {
ClipDescription primaryClipDescription;
ClipboardManager clipboardManager = (ClipboardManager) this.activity.getSystemService("clipboard");
if (clipboardManager.hasPrimaryClip() && (primaryClipDescription = clipboardManager.getPrimaryClipDescription()) != null) {
return primaryClipDescription.hasMimeType("text/*");
}
return false;
}
}