导航菜单

页面标题

页面副标题

CAARD v1.1.19 - UCropActivity.java 源代码

正在查看: CAARD v1.1.19 应用的 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.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 java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
import o1.l;
import o1.n;
import t9.i;

public class UCropActivity extends androidx.appcompat.app.c {

    public static final Bitmap.CompressFormat f7670n0 = Bitmap.CompressFormat.JPEG;
    private String J;
    private int K;
    private int L;
    private int M;
    private int N;
    private int O;
    private int P;
    private int Q;
    private int R;
    private boolean S;
    private UCropView U;
    private GestureCropImageView V;
    private OverlayView W;
    private ViewGroup X;
    private ViewGroup Y;
    private ViewGroup Z;

    private ViewGroup f7671a0;

    private ViewGroup f7672b0;

    private ViewGroup f7673c0;

    private TextView f7675e0;

    private TextView f7676f0;

    private View f7677g0;

    private l f7678h0;
    private boolean T = true;

    private List<ViewGroup> f7674d0 = new ArrayList();

    private Bitmap.CompressFormat f7679i0 = f7670n0;

    private int f7680j0 = 90;

    private int[] f7681k0 = {1, 2, 3};

    private b.InterfaceC0116b f7682l0 = new a();

    private final View.OnClickListener f7683m0 = new g();

    class a implements b.InterfaceC0116b {
        a() {
        }

        @Override
        public void a(float f10) {
            UCropActivity.this.U0(f10);
        }

        @Override
        public void b() {
            UCropActivity.this.U.animate().alpha(1.0f).setDuration(300L).setInterpolator(new AccelerateInterpolator());
            UCropActivity.this.f7677g0.setClickable(false);
            UCropActivity.this.T = false;
            UCropActivity.this.z0();
        }

        @Override
        public void c(Exception exc) {
            UCropActivity.this.Y0(exc);
            UCropActivity.this.finish();
        }

        @Override
        public void d(float f10) {
            UCropActivity.this.a1(f10);
        }
    }

    class b implements View.OnClickListener {
        b() {
        }

        @Override
        public void onClick(View view) {
            UCropActivity.this.V.setTargetAspectRatio(((AspectRatioTextView) ((ViewGroup) view).getChildAt(0)).s(view.isSelected()));
            UCropActivity.this.V.B();
            if (view.isSelected()) {
                return;
            }
            for (ViewGroup viewGroup : UCropActivity.this.f7674d0) {
                viewGroup.setSelected(viewGroup == view);
            }
        }
    }

    class c implements HorizontalProgressWheelView.a {
        c() {
        }

        @Override
        public void a() {
            UCropActivity.this.V.B();
        }

        @Override
        public void b(float f10, float f11) {
            UCropActivity.this.V.z(f10 / 42.0f);
        }

        @Override
        public void c() {
            UCropActivity.this.V.v();
        }
    }

    class d implements View.OnClickListener {
        d() {
        }

        @Override
        public void onClick(View view) {
            UCropActivity.this.R0();
        }
    }

    class e implements View.OnClickListener {
        e() {
        }

        @Override
        public void onClick(View view) {
            UCropActivity.this.S0(90);
        }
    }

    class f implements HorizontalProgressWheelView.a {
        f() {
        }

        @Override
        public void a() {
            UCropActivity.this.V.B();
        }

        @Override
        public void b(float f10, float f11) {
            if (f10 > 0.0f) {
                UCropActivity.this.V.E(UCropActivity.this.V.getCurrentScale() + (f10 * ((UCropActivity.this.V.getMaxScale() - UCropActivity.this.V.getMinScale()) / 15000.0f)));
            } else {
                UCropActivity.this.V.G(UCropActivity.this.V.getCurrentScale() + (f10 * ((UCropActivity.this.V.getMaxScale() - UCropActivity.this.V.getMinScale()) / 15000.0f)));
            }
        }

        @Override
        public void c() {
            UCropActivity.this.V.v();
        }
    }

    class g implements View.OnClickListener {
        g() {
        }

        @Override
        public void onClick(View view) {
            if (view.isSelected()) {
                return;
            }
            UCropActivity.this.d1(view.getId());
        }
    }

    class h implements q9.a {
        h() {
        }

        @Override
        public void a(Uri uri, int i10, int i11, int i12, int i13) {
            UCropActivity uCropActivity = UCropActivity.this;
            uCropActivity.Z0(uri, uCropActivity.V.getTargetAspectRatio(), i10, i11, i12, i13);
            UCropActivity.this.finish();
        }

        @Override
        public void b(Throwable th) {
            UCropActivity.this.Y0(th);
            UCropActivity.this.finish();
        }
    }

    static {
        androidx.appcompat.app.f.H(true);
    }

    private void M0() {
        if (this.f7677g0 == null) {
            this.f7677g0 = new View(this);
            RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(-1, -1);
            layoutParams.addRule(3, p9.e.f11770t);
            this.f7677g0.setLayoutParams(layoutParams);
            this.f7677g0.setClickable(true);
        }
        ((RelativeLayout) findViewById(p9.e.f11774x)).addView(this.f7677g0);
    }

    private void N0(int i10) {
        n.a((ViewGroup) findViewById(p9.e.f11774x), this.f7678h0);
        this.Z.findViewById(p9.e.f11769s).setVisibility(i10 == p9.e.f11766p ? 0 : 8);
        this.X.findViewById(p9.e.f11767q).setVisibility(i10 == p9.e.f11764n ? 0 : 8);
        this.Y.findViewById(p9.e.f11768r).setVisibility(i10 != p9.e.f11765o ? 8 : 0);
    }

    private void P0() {
        UCropView uCropView = (UCropView) findViewById(p9.e.f11772v);
        this.U = uCropView;
        this.V = uCropView.getCropImageView();
        this.W = this.U.getOverlayView();
        this.V.setTransformImageListener(this.f7682l0);
        ((ImageView) findViewById(p9.e.f11753c)).setColorFilter(this.R, PorterDuff.Mode.SRC_ATOP);
        int i10 = p9.e.f11773w;
        findViewById(i10).setBackgroundColor(this.O);
        if (this.S) {
            return;
        }
        ((RelativeLayout.LayoutParams) findViewById(i10).getLayoutParams()).bottomMargin = 0;
        findViewById(i10).requestLayout();
    }

    private void Q0(android.content.Intent r8) {
        throw new UnsupportedOperationException("Method not decompiled: com.yalantis.ucrop.UCropActivity.Q0(android.content.Intent):void");
    }

    public void R0() {
        GestureCropImageView gestureCropImageView = this.V;
        gestureCropImageView.z(-gestureCropImageView.getCurrentAngle());
        this.V.B();
    }

    public void S0(int i10) {
        this.V.z(i10);
        this.V.B();
    }

    private void T0(int i10) {
        GestureCropImageView gestureCropImageView = this.V;
        int i11 = this.f7681k0[i10];
        gestureCropImageView.setScaleEnabled(i11 == 3 || i11 == 1);
        GestureCropImageView gestureCropImageView2 = this.V;
        int i12 = this.f7681k0[i10];
        gestureCropImageView2.setRotateEnabled(i12 == 3 || i12 == 2);
    }

    public void U0(float f10) {
        TextView textView = this.f7675e0;
        if (textView != null) {
            textView.setText(String.format(Locale.getDefault(), "%.1f°", Float.valueOf(f10)));
        }
    }

    private void V0(int i10) {
        TextView textView = this.f7675e0;
        if (textView != null) {
            textView.setTextColor(i10);
        }
    }

    private void W0(Intent intent) {
        Throwable e10;
        Uri uri = (Uri) intent.getParcelableExtra("com.yalantis.ucrop.InputUri");
        Uri uri2 = (Uri) intent.getParcelableExtra("com.yalantis.ucrop.OutputUri");
        Q0(intent);
        if (uri == null || uri2 == null) {
            e10 = new NullPointerException(getString(p9.h.f11782a));
        } else {
            try {
                this.V.p(uri, uri2);
                return;
            } catch (Exception e11) {
                e10 = e11;
            }
        }
        Y0(e10);
        finish();
    }

    private void X0() {
        if (this.S) {
            d1(this.X.getVisibility() == 0 ? p9.e.f11764n : p9.e.f11766p);
        } else {
            T0(0);
        }
    }

    public void a1(float f10) {
        TextView textView = this.f7676f0;
        if (textView != null) {
            textView.setText(String.format(Locale.getDefault(), "%d%%", Integer.valueOf((int) (f10 * 100.0f))));
        }
    }

    private void b1(int i10) {
        TextView textView = this.f7676f0;
        if (textView != null) {
            textView.setTextColor(i10);
        }
    }

    private void c1(int i10) {
        Window window = getWindow();
        if (window != null) {
            window.addFlags(Integer.MIN_VALUE);
            window.setStatusBarColor(i10);
        }
    }

    public void d1(int i10) {
        if (this.S) {
            ViewGroup viewGroup = this.X;
            int i11 = p9.e.f11764n;
            viewGroup.setSelected(i10 == i11);
            ViewGroup viewGroup2 = this.Y;
            int i12 = p9.e.f11765o;
            viewGroup2.setSelected(i10 == i12);
            ViewGroup viewGroup3 = this.Z;
            int i13 = p9.e.f11766p;
            viewGroup3.setSelected(i10 == i13);
            this.f7671a0.setVisibility(i10 == i11 ? 0 : 8);
            this.f7672b0.setVisibility(i10 == i12 ? 0 : 8);
            this.f7673c0.setVisibility(i10 == i13 ? 0 : 8);
            N0(i10);
            if (i10 == i13) {
                T0(0);
            } else if (i10 == i12) {
                T0(1);
            } else {
                T0(2);
            }
        }
    }

    private void e1() {
        c1(this.L);
        Toolbar toolbar = (Toolbar) findViewById(p9.e.f11770t);
        toolbar.setBackgroundColor(this.K);
        toolbar.setTitleTextColor(this.N);
        TextView textView = (TextView) toolbar.findViewById(p9.e.f11771u);
        textView.setTextColor(this.N);
        textView.setText(this.J);
        Drawable mutate = androidx.core.content.a.getDrawable(this, this.P).mutate();
        mutate.setColorFilter(this.N, PorterDuff.Mode.SRC_ATOP);
        toolbar.setNavigationIcon(mutate);
        y0(toolbar);
        androidx.appcompat.app.a o02 = o0();
        if (o02 != null) {
            o02.r(false);
        }
    }

    private void f1(Intent intent) {
        int intExtra = intent.getIntExtra("com.yalantis.ucrop.AspectRatioSelectedByDefault", 0);
        ArrayList parcelableArrayListExtra = intent.getParcelableArrayListExtra("com.yalantis.ucrop.AspectRatioOptions");
        if (parcelableArrayListExtra == null || parcelableArrayListExtra.isEmpty()) {
            parcelableArrayListExtra = new ArrayList();
            parcelableArrayListExtra.add(new r9.a(null, 1.0f, 1.0f));
            parcelableArrayListExtra.add(new r9.a(null, 3.0f, 4.0f));
            parcelableArrayListExtra.add(new r9.a(getString(p9.h.f11784c).toUpperCase(), 0.0f, 0.0f));
            parcelableArrayListExtra.add(new r9.a(null, 3.0f, 2.0f));
            parcelableArrayListExtra.add(new r9.a(null, 16.0f, 9.0f));
            intExtra = 2;
        }
        LinearLayout linearLayout = (LinearLayout) findViewById(p9.e.f11757g);
        LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(0, -1);
        layoutParams.weight = 1.0f;
        Iterator it = parcelableArrayListExtra.iterator();
        while (it.hasNext()) {
            r9.a aVar = (r9.a) it.next();
            FrameLayout frameLayout = (FrameLayout) getLayoutInflater().inflate(p9.f.f11778b, (ViewGroup) null);
            frameLayout.setLayoutParams(layoutParams);
            AspectRatioTextView aspectRatioTextView = (AspectRatioTextView) frameLayout.getChildAt(0);
            aspectRatioTextView.setActiveColor(this.M);
            aspectRatioTextView.setAspectRatio(aVar);
            linearLayout.addView(frameLayout);
            this.f7674d0.add(frameLayout);
        }
        this.f7674d0.get(intExtra).setSelected(true);
        Iterator<ViewGroup> it2 = this.f7674d0.iterator();
        while (it2.hasNext()) {
            it2.next().setOnClickListener(new b());
        }
    }

    private void g1() {
        this.f7675e0 = (TextView) findViewById(p9.e.f11768r);
        int i10 = p9.e.f11762l;
        ((HorizontalProgressWheelView) findViewById(i10)).setScrollingListener(new c());
        ((HorizontalProgressWheelView) findViewById(i10)).setMiddleLineColor(this.M);
        findViewById(p9.e.f11776z).setOnClickListener(new d());
        findViewById(p9.e.A).setOnClickListener(new e());
        V0(this.M);
    }

    private void h1() {
        this.f7676f0 = (TextView) findViewById(p9.e.f11769s);
        int i10 = p9.e.f11763m;
        ((HorizontalProgressWheelView) findViewById(i10)).setScrollingListener(new f());
        ((HorizontalProgressWheelView) findViewById(i10)).setMiddleLineColor(this.M);
        b1(this.M);
    }

    private void i1() {
        ImageView imageView = (ImageView) findViewById(p9.e.f11756f);
        ImageView imageView2 = (ImageView) findViewById(p9.e.f11755e);
        ImageView imageView3 = (ImageView) findViewById(p9.e.f11754d);
        imageView.setImageDrawable(new i(imageView.getDrawable(), this.M));
        imageView2.setImageDrawable(new i(imageView2.getDrawable(), this.M));
        imageView3.setImageDrawable(new i(imageView3.getDrawable(), this.M));
    }

    private void j1(Intent intent) {
        this.L = intent.getIntExtra("com.yalantis.ucrop.StatusBarColor", androidx.core.content.a.getColor(this, p9.b.f11733h));
        this.K = intent.getIntExtra("com.yalantis.ucrop.ToolbarColor", androidx.core.content.a.getColor(this, p9.b.f11734i));
        this.M = intent.getIntExtra("com.yalantis.ucrop.UcropColorControlsWidgetActive", androidx.core.content.a.getColor(this, p9.b.f11726a));
        this.N = intent.getIntExtra("com.yalantis.ucrop.UcropToolbarWidgetColor", androidx.core.content.a.getColor(this, p9.b.f11735j));
        this.P = intent.getIntExtra("com.yalantis.ucrop.UcropToolbarCancelDrawable", p9.d.f11749a);
        this.Q = intent.getIntExtra("com.yalantis.ucrop.UcropToolbarCropDrawable", p9.d.f11750b);
        String stringExtra = intent.getStringExtra("com.yalantis.ucrop.UcropToolbarTitleText");
        this.J = stringExtra;
        if (stringExtra == null) {
            stringExtra = getResources().getString(p9.h.f11783b);
        }
        this.J = stringExtra;
        this.R = intent.getIntExtra("com.yalantis.ucrop.UcropLogoColor", androidx.core.content.a.getColor(this, p9.b.f11731f));
        this.S = !intent.getBooleanExtra("com.yalantis.ucrop.HideBottomControls", false);
        this.O = intent.getIntExtra("com.yalantis.ucrop.UcropRootViewBackgroundColor", androidx.core.content.a.getColor(this, p9.b.f11727b));
        e1();
        P0();
        if (this.S) {
            ViewGroup viewGroup = (ViewGroup) ((ViewGroup) findViewById(p9.e.f11774x)).findViewById(p9.e.f11751a);
            viewGroup.setVisibility(0);
            LayoutInflater.from(this).inflate(p9.f.f11779c, viewGroup, true);
            o1.b bVar = new o1.b();
            this.f7678h0 = bVar;
            bVar.Z(50L);
            ViewGroup viewGroup2 = (ViewGroup) findViewById(p9.e.f11764n);
            this.X = viewGroup2;
            viewGroup2.setOnClickListener(this.f7683m0);
            ViewGroup viewGroup3 = (ViewGroup) findViewById(p9.e.f11765o);
            this.Y = viewGroup3;
            viewGroup3.setOnClickListener(this.f7683m0);
            ViewGroup viewGroup4 = (ViewGroup) findViewById(p9.e.f11766p);
            this.Z = viewGroup4;
            viewGroup4.setOnClickListener(this.f7683m0);
            this.f7671a0 = (ViewGroup) findViewById(p9.e.f11757g);
            this.f7672b0 = (ViewGroup) findViewById(p9.e.f11758h);
            this.f7673c0 = (ViewGroup) findViewById(p9.e.f11759i);
            f1(intent);
            g1();
            h1();
            i1();
        }
    }

    protected void O0() {
        this.f7677g0.setClickable(true);
        this.T = true;
        z0();
        this.V.w(this.f7679i0, this.f7680j0, new h());
    }

    protected void Y0(Throwable th) {
        setResult(96, new Intent().putExtra("com.yalantis.ucrop.Error", th));
    }

    protected void Z0(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));
    }

    @Override
    public void onCreate(Bundle bundle) {
        super.onCreate(bundle);
        setContentView(p9.f.f11777a);
        Intent intent = getIntent();
        j1(intent);
        W0(intent);
        X0();
        M0();
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(p9.g.f11781a, menu);
        MenuItem findItem = menu.findItem(p9.e.f11761k);
        Drawable icon = findItem.getIcon();
        if (icon != null) {
            try {
                icon.mutate();
                icon.setColorFilter(this.N, PorterDuff.Mode.SRC_ATOP);
                findItem.setIcon(icon);
            } catch (IllegalStateException e10) {
                Log.i("UCropActivity", String.format("%s - %s", e10.getMessage(), getString(p9.h.f11785d)));
            }
            ((Animatable) findItem.getIcon()).start();
        }
        MenuItem findItem2 = menu.findItem(p9.e.f11760j);
        Drawable drawable = androidx.core.content.a.getDrawable(this, this.Q);
        if (drawable != null) {
            drawable.mutate();
            drawable.setColorFilter(this.N, PorterDuff.Mode.SRC_ATOP);
            findItem2.setIcon(drawable);
        }
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem menuItem) {
        if (menuItem.getItemId() == p9.e.f11760j) {
            O0();
            return true;
        }
        if (menuItem.getItemId() != 16908332) {
            return super.onOptionsItemSelected(menuItem);
        }
        onBackPressed();
        return true;
    }

    @Override
    public boolean onPrepareOptionsMenu(Menu menu) {
        menu.findItem(p9.e.f11760j).setVisible(!this.T);
        menu.findItem(p9.e.f11761k).setVisible(this.T);
        return super.onPrepareOptionsMenu(menu);
    }

    @Override
    protected void onStop() {
        super.onStop();
        GestureCropImageView gestureCropImageView = this.V;
        if (gestureCropImageView != null) {
            gestureCropImageView.v();
        }
    }
}