正在查看: 91看片 v1.0.4 应用的 UCropActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: 91看片 v1.0.4 应用的 UCropActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.yalantis.ucrop;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.PorterDuff;
import android.graphics.drawable.Animatable;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.Bundle;
import android.text.TextUtils;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.view.Window;
import android.view.animation.AccelerateInterpolator;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.appcompat.widget.Toolbar;
import com.yalantis.ucrop.view.GestureCropImageView;
import com.yalantis.ucrop.view.OverlayView;
import com.yalantis.ucrop.view.UCropView;
import com.yalantis.ucrop.view.b;
import com.yalantis.ucrop.view.widget.AspectRatioTextView;
import com.yalantis.ucrop.view.widget.HorizontalProgressWheelView;
import d8.i;
import d8.k;
import h3.l;
import h3.n;
import j8.j;
import java.io.File;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
public class UCropActivity extends androidx.appcompat.app.c {
public static final Bitmap.CompressFormat O = Bitmap.CompressFormat.JPEG;
private ViewGroup A;
private ViewGroup B;
private ViewGroup C;
private ViewGroup D;
private TextView F;
private TextView G;
private View H;
private l I;
private String f6735h;
private int f6736i;
private boolean f6737j;
private int f6738k;
private int f6739l;
private int f6740m;
private int f6741n;
private int f6742o;
private int f6743p;
private int f6744q;
private int f6745r;
private boolean f6746s;
private boolean f6748u;
private UCropView f6749v;
private GestureCropImageView f6750w;
private OverlayView f6751x;
private ViewGroup f6752y;
private ViewGroup f6753z;
private boolean f6747t = true;
private List<ViewGroup> E = new ArrayList();
private Bitmap.CompressFormat J = O;
private int K = 90;
private int[] L = {1, 2, 3};
private b.c M = new a();
private final View.OnClickListener N = new g();
class a implements b.c {
a() {
}
@Override
public void a(float f10) {
UCropActivity.this.T(f10);
}
@Override
public void b() {
UCropActivity.this.f6749v.animate().alpha(1.0f).setDuration(300L).setInterpolator(new AccelerateInterpolator());
UCropActivity.this.H.setClickable(false);
if (UCropActivity.this.getIntent().getBooleanExtra("com.yalantis.ucrop.ForbidCropGifWebp", false)) {
String f10 = j8.f.f(UCropActivity.this, (Uri) UCropActivity.this.getIntent().getParcelableExtra("com.yalantis.ucrop.InputUri"));
if (j8.f.m(f10) || j8.f.t(f10)) {
UCropActivity.this.H.setClickable(true);
}
}
UCropActivity.this.f6747t = false;
UCropActivity.this.supportInvalidateOptionsMenu();
}
@Override
public void c(Exception exc) {
UCropActivity.this.X(exc);
UCropActivity.this.finish();
}
@Override
public void d(float f10) {
UCropActivity.this.Z(f10);
}
}
class b implements View.OnClickListener {
b() {
}
@Override
public void onClick(View view) {
UCropActivity.this.f6750w.setTargetAspectRatio(((AspectRatioTextView) ((ViewGroup) view).getChildAt(0)).s(view.isSelected()));
UCropActivity.this.f6750w.A();
if (view.isSelected()) {
return;
}
for (ViewGroup viewGroup : UCropActivity.this.E) {
viewGroup.setSelected(viewGroup == view);
}
}
}
class c implements HorizontalProgressWheelView.a {
c() {
}
@Override
public void a() {
UCropActivity.this.f6750w.A();
}
@Override
public void b(float f10, float f11) {
UCropActivity.this.f6750w.y(f10 / 42.0f);
}
@Override
public void c() {
UCropActivity.this.f6750w.u();
}
}
class d implements View.OnClickListener {
d() {
}
@Override
public void onClick(View view) {
UCropActivity.this.Q();
}
}
class e implements View.OnClickListener {
e() {
}
@Override
public void onClick(View view) {
UCropActivity.this.R(90);
}
}
class f implements HorizontalProgressWheelView.a {
f() {
}
@Override
public void a() {
UCropActivity.this.f6750w.A();
}
@Override
public void b(float f10, float f11) {
if (f10 > 0.0f) {
UCropActivity.this.f6750w.D(UCropActivity.this.f6750w.getCurrentScale() + (f10 * ((UCropActivity.this.f6750w.getMaxScale() - UCropActivity.this.f6750w.getMinScale()) / 15000.0f)));
} else {
UCropActivity.this.f6750w.F(UCropActivity.this.f6750w.getCurrentScale() + (f10 * ((UCropActivity.this.f6750w.getMaxScale() - UCropActivity.this.f6750w.getMinScale()) / 15000.0f)));
}
}
@Override
public void c() {
UCropActivity.this.f6750w.u();
}
}
class g implements View.OnClickListener {
g() {
}
@Override
public void onClick(View view) {
if (view.isSelected()) {
return;
}
UCropActivity.this.c0(view.getId());
}
}
class h implements e8.a {
h() {
}
@Override
public void a(Uri uri, int i10, int i11, int i12, int i13) {
UCropActivity uCropActivity = UCropActivity.this;
uCropActivity.Y(uri, uCropActivity.f6750w.getTargetAspectRatio(), i10, i11, i12, i13);
UCropActivity.this.finish();
}
@Override
public void b(Throwable th) {
UCropActivity.this.X(th);
UCropActivity.this.finish();
}
}
static {
androidx.appcompat.app.f.H(true);
}
private void K() {
if (this.H == null) {
this.H = new View(this);
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(-1, -1);
layoutParams.addRule(3, d8.f.f7411w);
this.H.setLayoutParams(layoutParams);
this.H.setClickable(true);
}
((RelativeLayout) findViewById(d8.f.A)).addView(this.H);
}
private void L(int i10) {
n.a((ViewGroup) findViewById(d8.f.A), this.I);
this.A.findViewById(d8.f.f7410v).setVisibility(i10 == d8.f.f7407s ? 0 : 8);
this.f6752y.findViewById(d8.f.f7408t).setVisibility(i10 == d8.f.f7405q ? 0 : 8);
this.f6753z.findViewById(d8.f.f7409u).setVisibility(i10 != d8.f.f7406r ? 8 : 0);
}
private void N() {
Intent intent = getIntent();
boolean booleanExtra = intent.getBooleanExtra("com.yalantis.ucrop.isDarkStatusBarBlack", false);
int intExtra = intent.getIntExtra("com.yalantis.ucrop.StatusBarColor", androidx.core.content.a.b(this, d8.c.f7370j));
this.f6739l = intExtra;
h8.a.a(this, intExtra, intExtra, booleanExtra);
}
private void O() {
UCropView uCropView = (UCropView) findViewById(d8.f.f7413y);
this.f6749v = uCropView;
this.f6750w = uCropView.getCropImageView();
this.f6751x = this.f6749v.getOverlayView();
this.f6750w.setTransformImageListener(this.M);
((ImageView) findViewById(d8.f.f7392d)).setColorFilter(this.f6745r, PorterDuff.Mode.SRC_ATOP);
int i10 = d8.f.f7414z;
findViewById(i10).setBackgroundColor(this.f6742o);
if (this.f6746s) {
return;
}
((RelativeLayout.LayoutParams) findViewById(i10).getLayoutParams()).bottomMargin = 0;
findViewById(i10).requestLayout();
}
private void P(android.content.Intent r8) {
throw new UnsupportedOperationException("Method not decompiled: com.yalantis.ucrop.UCropActivity.P(android.content.Intent):void");
}
public void Q() {
GestureCropImageView gestureCropImageView = this.f6750w;
gestureCropImageView.y(-gestureCropImageView.getCurrentAngle());
this.f6750w.A();
}
public void R(int i10) {
this.f6750w.y(i10);
this.f6750w.A();
}
private void S(int i10) {
GestureCropImageView gestureCropImageView = this.f6750w;
int i11 = this.L[i10];
gestureCropImageView.setScaleEnabled(i11 == 3 || i11 == 1);
GestureCropImageView gestureCropImageView2 = this.f6750w;
int i12 = this.L[i10];
gestureCropImageView2.setRotateEnabled(i12 == 3 || i12 == 2);
this.f6750w.setGestureEnabled(getIntent().getBooleanExtra("com.yalantis.ucrop.isDragImages", true));
}
public void T(float f10) {
TextView textView = this.F;
if (textView != null) {
textView.setText(String.format(Locale.getDefault(), "%.1f°", Float.valueOf(f10)));
}
}
private void U(int i10) {
TextView textView = this.F;
if (textView != null) {
textView.setTextColor(i10);
}
}
private void V(Intent intent) {
Throwable e10;
Uri uri = (Uri) intent.getParcelableExtra("com.yalantis.ucrop.InputUri");
Uri uri2 = (Uri) intent.getParcelableExtra("com.yalantis.ucrop.OutputUri");
P(intent);
if (uri == null || uri2 == null) {
e10 = new NullPointerException(getString(i.f7423a));
} else {
try {
String stringExtra = getIntent().getStringExtra("com.yalantis.ucrop.CropOutputDir");
if (!TextUtils.isEmpty(stringExtra) && "file".equalsIgnoreCase(uri2.getScheme())) {
uri2 = Uri.fromFile(new File(stringExtra, new File(uri2.getPath()).getName()));
}
this.f6750w.m(uri, j8.f.u(this, this.f6748u, uri, uri2), this.f6737j);
return;
} catch (Exception e11) {
e10 = e11;
}
}
X(e10);
finish();
}
private void W() {
if (this.f6746s) {
c0(this.f6752y.getVisibility() == 0 ? d8.f.f7405q : d8.f.f7407s);
} else {
S(0);
}
}
public void Z(float f10) {
TextView textView = this.G;
if (textView != null) {
textView.setText(String.format(Locale.getDefault(), "%d%%", Integer.valueOf((int) (f10 * 100.0f))));
}
}
private void a0(int i10) {
TextView textView = this.G;
if (textView != null) {
textView.setTextColor(i10);
}
}
private void b0(int i10) {
Window window = getWindow();
if (window != null) {
window.addFlags(Integer.MIN_VALUE);
window.setStatusBarColor(i10);
}
}
public void c0(int i10) {
if (this.f6746s) {
ViewGroup viewGroup = this.f6752y;
int i11 = d8.f.f7405q;
viewGroup.setSelected(i10 == i11);
ViewGroup viewGroup2 = this.f6753z;
int i12 = d8.f.f7406r;
viewGroup2.setSelected(i10 == i12);
ViewGroup viewGroup3 = this.A;
int i13 = d8.f.f7407s;
viewGroup3.setSelected(i10 == i13);
this.B.setVisibility(i10 == i11 ? 0 : 8);
this.C.setVisibility(i10 == i12 ? 0 : 8);
this.D.setVisibility(i10 == i13 ? 0 : 8);
L(i10);
if (i10 == i13) {
S(0);
} else if (i10 == i12) {
S(1);
} else {
S(2);
}
}
}
private void d0() {
b0(this.f6739l);
Toolbar toolbar = (Toolbar) findViewById(d8.f.f7411w);
toolbar.setBackgroundColor(this.f6738k);
toolbar.setTitleTextColor(this.f6741n);
TextView textView = (TextView) toolbar.findViewById(d8.f.f7412x);
textView.setTextColor(this.f6741n);
textView.setText(this.f6735h);
textView.setTextSize(this.f6736i);
Drawable mutate = e.a.b(this, this.f6743p).mutate();
mutate.setColorFilter(androidx.core.graphics.a.a(this.f6741n, androidx.core.graphics.b.SRC_ATOP));
toolbar.setNavigationIcon(mutate);
x(toolbar);
androidx.appcompat.app.a n10 = n();
if (n10 != null) {
n10.r(false);
}
}
private void e0(Intent intent) {
int intExtra = intent.getIntExtra("com.yalantis.ucrop.AspectRatioSelectedByDefault", 0);
ArrayList parcelableArrayListExtra = intent.getParcelableArrayListExtra("com.yalantis.ucrop.AspectRatioOptions");
if (parcelableArrayListExtra == null || parcelableArrayListExtra.isEmpty()) {
intExtra = 2;
parcelableArrayListExtra = new ArrayList();
parcelableArrayListExtra.add(new g8.a(null, 1.0f, 1.0f));
parcelableArrayListExtra.add(new g8.a(null, 3.0f, 4.0f));
parcelableArrayListExtra.add(new g8.a(getString(i.f7425c).toUpperCase(), 0.0f, 0.0f));
parcelableArrayListExtra.add(new g8.a(null, 3.0f, 2.0f));
parcelableArrayListExtra.add(new g8.a(null, 16.0f, 9.0f));
}
LinearLayout linearLayout = (LinearLayout) findViewById(d8.f.f7397i);
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(0, -1);
layoutParams.weight = 1.0f;
Iterator it = parcelableArrayListExtra.iterator();
while (it.hasNext()) {
g8.a aVar = (g8.a) it.next();
FrameLayout frameLayout = (FrameLayout) getLayoutInflater().inflate(d8.g.f7417c, (ViewGroup) null);
frameLayout.setLayoutParams(layoutParams);
AspectRatioTextView aspectRatioTextView = (AspectRatioTextView) frameLayout.getChildAt(0);
aspectRatioTextView.setActiveColor(this.f6740m);
aspectRatioTextView.setAspectRatio(aVar);
linearLayout.addView(frameLayout);
this.E.add(frameLayout);
}
this.E.get(intExtra).setSelected(true);
Iterator<ViewGroup> it2 = this.E.iterator();
while (it2.hasNext()) {
it2.next().setOnClickListener(new b());
}
}
private void f0() {
this.F = (TextView) findViewById(d8.f.f7409u);
int i10 = d8.f.f7403o;
((HorizontalProgressWheelView) findViewById(i10)).setScrollingListener(new c());
((HorizontalProgressWheelView) findViewById(i10)).setMiddleLineColor(this.f6740m);
findViewById(d8.f.D).setOnClickListener(new d());
findViewById(d8.f.E).setOnClickListener(new e());
U(this.f6740m);
}
private void g0() {
this.G = (TextView) findViewById(d8.f.f7410v);
int i10 = d8.f.f7404p;
((HorizontalProgressWheelView) findViewById(i10)).setScrollingListener(new f());
((HorizontalProgressWheelView) findViewById(i10)).setMiddleLineColor(this.f6740m);
a0(this.f6740m);
}
private void h0() {
ImageView imageView = (ImageView) findViewById(d8.f.f7395g);
ImageView imageView2 = (ImageView) findViewById(d8.f.f7394f);
ImageView imageView3 = (ImageView) findViewById(d8.f.f7393e);
imageView.setImageDrawable(new j(imageView.getDrawable(), this.f6740m));
imageView2.setImageDrawable(new j(imageView2.getDrawable(), this.f6740m));
imageView3.setImageDrawable(new j(imageView3.getDrawable(), this.f6740m));
}
private void i0(Intent intent) {
this.f6748u = intent.getBooleanExtra("com.yalantis.ucrop.ForbidCropGifWebp", false);
this.f6739l = intent.getIntExtra("com.yalantis.ucrop.StatusBarColor", androidx.core.content.a.b(this, d8.c.f7370j));
this.f6738k = intent.getIntExtra("com.yalantis.ucrop.ToolbarColor", androidx.core.content.a.b(this, d8.c.f7371k));
this.f6740m = intent.getIntExtra("com.yalantis.ucrop.UcropColorControlsWidgetActive", androidx.core.content.a.b(this, d8.c.f7363c));
this.f6741n = intent.getIntExtra("com.yalantis.ucrop.UcropToolbarWidgetColor", androidx.core.content.a.b(this, d8.c.f7372l));
this.f6743p = intent.getIntExtra("com.yalantis.ucrop.UcropToolbarCancelDrawable", d8.e.f7387b);
this.f6744q = intent.getIntExtra("com.yalantis.ucrop.UcropToolbarCropDrawable", d8.e.f7388c);
this.f6735h = intent.getStringExtra("com.yalantis.ucrop.UcropToolbarTitleText");
this.f6736i = intent.getIntExtra("com.yalantis.ucrop.UcropToolbarTitleTextSize", 18);
String str = this.f6735h;
if (str == null) {
str = getResources().getString(i.f7424b);
}
this.f6735h = str;
this.f6745r = intent.getIntExtra("com.yalantis.ucrop.UcropLogoColor", androidx.core.content.a.b(this, d8.c.f7368h));
this.f6746s = !intent.getBooleanExtra("com.yalantis.ucrop.HideBottomControls", false);
this.f6742o = intent.getIntExtra("com.yalantis.ucrop.UcropRootViewBackgroundColor", androidx.core.content.a.b(this, d8.c.f7364d));
d0();
O();
if (this.f6746s) {
ViewGroup viewGroup = (ViewGroup) ((ViewGroup) findViewById(d8.f.A)).findViewById(d8.f.f7389a);
viewGroup.setVisibility(0);
LayoutInflater.from(this).inflate(d8.g.f7418d, viewGroup, true);
h3.b bVar = new h3.b();
this.I = bVar;
bVar.X(50L);
ViewGroup viewGroup2 = (ViewGroup) findViewById(d8.f.f7405q);
this.f6752y = viewGroup2;
viewGroup2.setOnClickListener(this.N);
ViewGroup viewGroup3 = (ViewGroup) findViewById(d8.f.f7406r);
this.f6753z = viewGroup3;
viewGroup3.setOnClickListener(this.N);
ViewGroup viewGroup4 = (ViewGroup) findViewById(d8.f.f7407s);
this.A = viewGroup4;
viewGroup4.setOnClickListener(this.N);
this.B = (ViewGroup) findViewById(d8.f.f7397i);
this.C = (ViewGroup) findViewById(d8.f.f7398j);
this.D = (ViewGroup) findViewById(d8.f.f7399k);
e0(intent);
f0();
g0();
h0();
}
}
protected void M() {
this.H.setClickable(true);
this.f6747t = true;
supportInvalidateOptionsMenu();
this.f6750w.v(this.J, this.K, new h());
}
protected void X(Throwable th) {
setResult(96, new Intent().putExtra("com.yalantis.ucrop.Error", th));
}
protected void Y(Uri uri, float f10, int i10, int i11, int i12, int i13) {
setResult(-1, new Intent().putExtra("com.yalantis.ucrop.OutputUri", uri).putExtra("com.yalantis.ucrop.CropAspectRatio", f10).putExtra("com.yalantis.ucrop.ImageWidth", i12).putExtra("com.yalantis.ucrop.ImageHeight", i13).putExtra("com.yalantis.ucrop.OffsetX", i10).putExtra("com.yalantis.ucrop.OffsetY", i11).putExtra("com.yalantis.ucrop.CropInputOriginal", j8.f.e((Uri) getIntent().getParcelableExtra("com.yalantis.ucrop.InputUri"))));
}
@Override
public void onCreate(Bundle bundle) {
super.onCreate(bundle);
N();
setContentView(d8.g.f7416b);
Intent intent = getIntent();
i0(intent);
V(intent);
W();
K();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(d8.h.f7422a, menu);
MenuItem findItem = menu.findItem(d8.f.f7401m);
Drawable icon = findItem.getIcon();
if (icon != null) {
try {
icon.mutate();
icon.setColorFilter(androidx.core.graphics.a.a(this.f6741n, androidx.core.graphics.b.SRC_ATOP));
findItem.setIcon(icon);
} catch (IllegalStateException e10) {
Log.i("UCropActivity", String.format("%s - %s", e10.getMessage(), getString(i.f7426d)));
}
((Animatable) findItem.getIcon()).start();
}
MenuItem findItem2 = menu.findItem(d8.f.f7400l);
Drawable d10 = androidx.core.content.a.d(this, this.f6744q);
if (d10 != null) {
d10.mutate();
d10.setColorFilter(androidx.core.graphics.a.a(this.f6741n, androidx.core.graphics.b.SRC_ATOP));
findItem2.setIcon(d10);
}
return true;
}
@Override
protected void onDestroy() {
k.a();
super.onDestroy();
}
@Override
public boolean onOptionsItemSelected(MenuItem menuItem) {
if (menuItem.getItemId() == d8.f.f7400l) {
M();
return true;
}
if (menuItem.getItemId() != 16908332) {
return super.onOptionsItemSelected(menuItem);
}
onBackPressed();
return true;
}
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
menu.findItem(d8.f.f7400l).setVisible(!this.f6747t);
menu.findItem(d8.f.f7401m).setVisible(this.f6747t);
return super.onPrepareOptionsMenu(menu);
}
@Override
protected void onStop() {
super.onStop();
GestureCropImageView gestureCropImageView = this.f6750w;
if (gestureCropImageView != null) {
gestureCropImageView.u();
}
}
}