QQ浏览器 v12.2.3.7053版本的 MD5 值为:8285ab3059e5c8b521a264dfbc5c3685

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


package com.tencent.mtt.search.jsapi.method;

import android.text.SpannableString;
import android.text.TextPaint;
import android.text.TextUtils;
import android.text.style.ClickableSpan;
import android.text.style.ForegroundColorSpan;
import android.view.View;
import com.tencent.common.featuretoggle.FeatureToggle;
import com.tencent.common.manifest.annotation.CreateMethod;
import com.tencent.common.manifest.annotation.ExtensionImpl;
import com.tencent.common.task.QBTask;
import com.tencent.mtt.R;
import com.tencent.mtt.base.functionwindow.ActivityHandler;
import com.tencent.mtt.base.skin.MttResources;
import com.tencent.mtt.browser.hometab.tablab.service.common.TabLabSettingHelper;
import com.tencent.mtt.browser.jsextension.facade.JsapiCallback;
import com.tencent.mtt.browser.window.UrlParams;
import com.tencent.mtt.browser.window.home.view.HomeTabModeDispather;
import com.tencent.mtt.businesscenter.facade.IFrameworkDelegate;
import com.tencent.mtt.qbcontext.core.QBContext;
import com.tencent.mtt.view.dialog.newui.SimpleDialogBuilder;
import com.tencent.mtt.view.dialog.newui.builder.api.ICommonDialogBuilder;
import com.tencent.mtt.view.dialog.newui.dialog.DialogBase;
import com.tencent.mtt.view.dialog.newui.view.ViewOnClickListener;
import com.tencent.mtt.view.toast.MttToaster;
import java.util.concurrent.Callable;
import org.json.JSONException;
import org.json.JSONObject;
import org.slf4j.Marker;
import qb.library.BuildConfig;

@ExtensionImpl(createMethod = CreateMethod.NEW, extension = ISearchJsMethod.class, filters = {Marker.ANY_MARKER})
public class SetDefaultHomeTabToXHomeMethod extends SearchJsMethodBase {
    public void a(String str, JSONObject jSONObject, String str2, JsapiCallback jsapiCallback) {
        int i;
        if (TextUtils.equals(HomeTabModeDispather.a(), String.valueOf(117))) {
            i = 1;
            MttToaster.show("已经设置过了哦", 0);
        } else {
            TabLabSettingHelper.a().b(117);
            if (!a()) {
                MttToaster.show("设置成功", 0);
            }
            i = 0;
        }
        JSONObject jSONObject2 = new JSONObject();
        try {
            jSONObject2.put("type", i);
        } catch (JSONException unused) {
        }
        jsapiCallback.a(str, jSONObject2);
    }

    private boolean a() {
        ICommonDialogBuilder a2 = SimpleDialogBuilder.a(ActivityHandler.b().n());
        a2.a("https://m4.publicimg.browser.qq.com/publicimg/nav/search/img_search_xhome_guid_dialog_head.png");
        a2.d("设置成功");
        a2.e("打开QQ浏览器,直接进入直达页");
        a2.a((CharSequence) "我知道了");
        a2.a_(new ViewOnClickListener() {
            @Override
            public void onClick(View view, DialogBase dialogBase) {
                dialogBase.dismiss();
            }
        });
        a2.c(true);
        a2.b(true);
        a2.g(b());
        DialogBase d2 = a2.d();
        if (d2 == null) {
            return false;
        }
        d2.setCanceledOnTouchOutside(true);
        d2.show();
        return true;
    }

    private SpannableString b() {
        SpannableString spannableString = new SpannableString("后续可在 我的-实验室 中进行修改");
        spannableString.setSpan(new ForegroundColorSpan(MttResources.d(R.color.theme_common_color_a3)), 0, 4, 34);
        spannableString.setSpan(new ForegroundColorSpan(MttResources.d(R.color.theme_common_color_a3)), 12, 17, 34);
        spannableString.setSpan(new ClickableSpan() {
            @Override
            public void onClick(View view) {
                ((IFrameworkDelegate) QBContext.getInstance().getService(IFrameworkDelegate.class)).doLoad(new UrlParams("qb://labmode/tab"));
            }

            @Override
            public void updateDrawState(TextPaint textPaint) {
                textPaint.setColor(MttResources.d(R.color.theme_common_color_b9));
                textPaint.setUnderlineText(false);
            }
        }, 4, 12, 34);
        return spannableString;
    }

    @Override
    public void exec(final String str, final JSONObject jSONObject, final String str2, final JsapiCallback jsapiCallback) {
        super.exec(str, jSONObject, str2, jsapiCallback);
        if (jsapiCallback == null || !FeatureToggle.a(BuildConfig.FEATURE_TOGGLE_SEARCH_XHOME_GUIDE_868184279)) {
            return;
        }
        QBTask.b((Callable) new Callable<Object>() {
            @Override
            public Object call() throws Exception {
                SetDefaultHomeTabToXHomeMethod.this.a(str, jSONObject, str2, jsapiCallback);
                return null;
            }
        });
    }

    @Override
    public String getMethodName() {
        return "setDefaultHomeTabToXHome";
    }
}