Kate Mobile v109.1版本的 MD5 值为:fcd76ded5f363ecbfac46035a4ed2a23

以下内容为反编译后的 StickerAdapter.java 源代码,内容仅作参考


package com.perm.kate.smile;

import android.content.Context;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import androidx.appcompat.app.AlertDialog;
import androidx.fragment.app.FragmentActivity;
import com.airbnb.lottie.LottieComposition;
import com.airbnb.lottie.LottieCompositionFactory;
import com.airbnb.lottie.LottieDrawable;
import com.airbnb.lottie.LottieResult;
import com.perm.kate.AttachmentsHelper;
import com.perm.kate.Helper;
import com.perm.kate.KApplication;
import com.perm.kate.R;
import com.perm.kate.RecentStickers;
import com.perm.kate.StickerHints;
import com.perm.kate.Vmoji;
import com.perm.kate.smile.SmilePagerAdapter;
import com.perm.kate.theme.ThemeColorsHelper;
import com.perm.utils.LeakDetector;
import com.perm.utils.SmileHelper;
import java.lang.ref.WeakReference;
public class StickerAdapter extends BaseAdapter {
    final WeakReference activity;
    private final View.OnClickListener clickListener = new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Integer num = (Integer) view.getTag();
            RecentStickers.add(num.intValue());
            if (StickerAdapter.this.listener.get() != null) {
                ((SmilePagerAdapter.SmileSelectedListener) StickerAdapter.this.listener.get()).stickerSelected(num);
            }
        }
    };
    public int[] ids;
    final WeakReference listener;

    public StickerAdapter(WeakReference weakReference, WeakReference weakReference2, int[] iArr) {
        this.listener = weakReference;
        this.activity = weakReference2;
        this.ids = iArr;
        LeakDetector.getInstance().monitorObject(this);
    }

    public boolean lambda$getView$0(int i, View view) {
        showPreview(i);
        return true;
    }

    public static void lambda$showAnimationPreview$1(LottieComposition lottieComposition, ImageView imageView) {
        try {
            LottieDrawable lottieDrawable = new LottieDrawable();
            lottieDrawable.setComposition(lottieComposition);
            imageView.setImageDrawable(lottieDrawable);
            lottieDrawable.setRepeatCount(3);
            lottieDrawable.playAnimation();
        } catch (Throwable th) {
            th.printStackTrace();
            Helper.reportError(th);
        }
    }

    public void lambda$showAnimationPreview$2(int i, final ImageView imageView) {
        try {
            StringBuilder sb = new StringBuilder();
            sb.append("https://vk.com/sticker/3-");
            sb.append(i);
            sb.append(!ThemeColorsHelper.isLightTheme() ? "b" : "");
            sb.append(".json");
            String sb2 = sb.toString();
            String serverResponse = AttachmentsHelper.getServerResponse(sb2);
            if (TextUtils.isEmpty(serverResponse)) {
                return;
            }
            LottieResult fromJsonStringSync = LottieCompositionFactory.fromJsonStringSync(serverResponse, sb2);
            Throwable exception = fromJsonStringSync.getException();
            if (exception != null) {
                Helper.reportError(exception, sb2);
                exception.printStackTrace();
            }
            final LottieComposition lottieComposition = (LottieComposition) fromJsonStringSync.getValue();
            if (lottieComposition == null) {
                return;
            }
            ((FragmentActivity) this.activity.get()).runOnUiThread(new Runnable() {
                @Override
                public final void run() {
                    StickerAdapter.lambda$showAnimationPreview$1(LottieComposition.this, imageView);
                }
            });
        } catch (Throwable th) {
            th.printStackTrace();
            Helper.reportError(th);
        }
    }

    private void showAnimationPreview(final int i, final ImageView imageView) {
        new Thread(new Runnable() {
            @Override
            public final void run() {
                StickerAdapter.this.lambda$showAnimationPreview$2(i, imageView);
            }
        }).start();
    }

    private void showPreview(int i) {
        int dip = Helper.getDIP(128.0d);
        int i2 = dip > 64 ? 128 : 64;
        if (dip > 128) {
            i2 = 256;
        }
        StringBuilder sb = new StringBuilder();
        sb.append("https://vk.com/sticker/1-");
        sb.append(i);
        sb.append("-");
        sb.append(i2);
        sb.append(!ThemeColorsHelper.isLightTheme() ? "b" : "");
        String sb2 = sb.toString();
        String str = Vmoji.get(i);
        String str2 = str != null ? str : sb2;
        View inflate = LayoutInflater.from((Context) this.activity.get()).inflate(R.layout.sticker_preview, (ViewGroup) null, false);
        ImageView imageView = (ImageView) inflate.findViewById(R.id.img_photo_photo);
        KApplication.getImageLoader().DisplayImage(str2, imageView, true, dip, AttachmentsHelper.getResIdForNoPhoto4(), false);
        new AlertDialog.Builder((Context) this.activity.get()).setView(inflate).create().show();
        showAnimationPreview(i, imageView);
    }

    @Override
    public int getCount() {
        return this.ids.length;
    }

    @Override
    public Object getItem(int i) {
        return Integer.valueOf(i);
    }

    @Override
    public long getItemId(int i) {
        return i;
    }

    @Override
    public View getView(int i, View view, ViewGroup viewGroup) {
        int i2;
        if (view == null) {
            view = ((LayoutInflater) ((FragmentActivity) this.activity.get()).getSystemService("layout_inflater")).inflate(R.layout.sticker_item, viewGroup, false);
        }
        view.setOnClickListener(this.clickListener);
        ImageView imageView = (ImageView) view.findViewById(R.id.img_photo_photo);
        final int i3 = this.ids[i];
        int dip = Helper.getDIP(64.0d);
        int i4 = dip > 64 ? 128 : 64;
        if (dip > 128) {
            i4 = 256;
        }
        StringBuilder sb = new StringBuilder();
        sb.append("https://vk.com/sticker/1-");
        sb.append(i3);
        sb.append("-");
        sb.append(i4);
        sb.append(!ThemeColorsHelper.isLightTheme() ? "b" : "");
        String sb2 = sb.toString();
        String str = Vmoji.get(i3);
        if (str != null) {
            i2 = Helper.getDIP(128.0d);
            sb2 = str;
        } else {
            i2 = dip;
        }
        KApplication.getImageLoader().DisplayImage(sb2, imageView, true, i2, AttachmentsHelper.getResIdForNoPhoto4(), false);
        view.setTag(Integer.valueOf(i3));
        view.setOnLongClickListener(new View.OnLongClickListener() {
            @Override
            public final boolean onLongClick(View view2) {
                boolean lambda$getView$0;
                lambda$getView$0 = StickerAdapter.this.lambda$getView$0(i3, view2);
                return lambda$getView$0;
            }
        });
        if (SmileHelper.isBlind()) {
            imageView.setContentDescription(StickerHints.getStickerDescription(i3));
        }
        return view;
    }
}