QQ浏览器 v12.2.3.7053版本的 MD5 值为:8285ab3059e5c8b521a264dfbc5c3685
以下内容为反编译后的 TopicContentView.java 源代码,内容仅作参考
package com.tencent.mtt.external.circle.publisher.topicEditor;
import android.app.Activity;
import android.content.Context;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import android.text.Editable;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;
import com.tencent.common.manifest.EventEmiter;
import com.tencent.common.manifest.EventMessage;
import com.tencent.common.wup.IWUPRequestCallBack;
import com.tencent.common.wup.WUPRequestBase;
import com.tencent.common.wup.WUPResponseBase;
import com.tencent.common.wup.WUPTaskProxy;
import com.tencent.mtt.R;
import com.tencent.mtt.base.functionwindow.ActivityHandler;
import com.tencent.mtt.base.skin.MttResources;
import com.tencent.mtt.base.ui.widget.QBWebImageView;
import com.tencent.mtt.base.wup.WUPRequest;
import com.tencent.mtt.browser.bra.toolbar.CommentToolBarView;
import com.tencent.mtt.external.circle.publisher.db.CircleTopic;
import com.tencent.mtt.external.circle.publisher.db.CircleTopicRepository;
import com.tencent.mtt.lightwindow.framwork.WindowController;
import com.tencent.mtt.newskin.SimpleSkinBuilder;
import com.tencent.mtt.view.common.QBImageView;
import com.tencent.mtt.view.common.QBTextView;
import com.tencent.mtt.view.common.QBView;
import com.tencent.mtt.view.common.QBViewResourceManager;
import com.tencent.mtt.view.edittext.ui.MttEditTextViewNew;
import com.tencent.mtt.view.layout.QBLinearLayout;
import com.tencent.mtt.view.scrollview.QBScrollView;
import com.tencent.qqlive.module.videoreport.collect.EventCollector;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import qb.a.e;
import qb.a.g;
import qb.circle.SearchHotTalkReq;
import qb.circle.SearchHotTalkRsp;
import qb.circle.SearchTalkHintReq;
import qb.circle.SearchTalkHintRsp;
import qb.circle.TalkSumary;
import qb.circle.UserSession;
public class TopicContentView extends QBLinearLayout implements TextWatcher, View.OnClickListener, IWUPRequestCallBack, CircleTopicRepository.ILoadCallBack {
private WindowController f51096a;
private QBTextView f51097b;
private MttEditTextViewNew f51098c;
private QBImageView f51099d;
private QBScrollView e;
private final ArrayList<TalkSumary> f;
private String g;
private long h;
private QBLinearLayout i;
private QBLinearLayout j;
private QBLinearLayout k;
private int l;
private HashMap<View, TalkSumary> m;
private Handler n;
private LinearLayout o;
public TopicContentView(Context context, ArrayList<String> arrayList, WindowController windowController, int i) {
super(context, false);
this.f = new ArrayList<>();
this.n = new Handler(Looper.getMainLooper()) {
@Override
public void handleMessage(Message message) {
int i2 = message.what;
boolean z = true;
if (i2 == 1) {
TopicContentView.this.a("最热话题", (ArrayList) message.obj, 1);
return;
}
if (i2 != 2) {
if (i2 != 3) {
return;
}
Iterator it = ((List) message.obj).iterator();
while (it.hasNext()) {
TopicContentView.this.f.add(TopicContentView.this.a((CircleTopic) it.next()));
}
TopicContentView topicContentView = TopicContentView.this;
topicContentView.a("最近使用", topicContentView.f, 2);
return;
}
ArrayList arrayList2 = (ArrayList) message.obj;
if (arrayList2 == null) {
arrayList2 = new ArrayList();
}
int i3 = 0;
while (true) {
if (i3 < arrayList2.size()) {
TalkSumary talkSumary = (TalkSumary) arrayList2.get(i3);
if (talkSumary != null && !TextUtils.isEmpty(talkSumary.title) && talkSumary.title.equals(TopicContentView.this.g)) {
z = false;
break;
}
i3++;
} else {
break;
}
}
if (z) {
arrayList2.add(0, new TalkSumary(TopicContentView.this.g, "new", ""));
}
TopicContentView.this.a("", arrayList2, 3);
}
};
this.f51096a = windowController;
this.m = new HashMap<>();
this.l = i;
Activity a2 = ActivityHandler.b().a();
if (a2 != null) {
a2.getWindow().setSoftInputMode(16);
}
b();
a();
c();
}
private CircleTopic a(TalkSumary talkSumary) {
if (talkSumary != null) {
return new CircleTopic(talkSumary.title, talkSumary.pic, talkSumary.talkId);
}
return null;
}
public TalkSumary a(CircleTopic circleTopic) {
if (circleTopic != null) {
return new TalkSumary(circleTopic.f51086a, circleTopic.f51088c, circleTopic.f51087b);
}
return null;
}
private void a() {
this.f.clear();
CircleTopicRepository.a(this);
}
private void a(QBLinearLayout qBLinearLayout, TalkSumary talkSumary) {
if (qBLinearLayout == null || talkSumary == null) {
return;
}
QBLinearLayout qBLinearLayout2 = new QBLinearLayout(getContext());
this.m.put(qBLinearLayout2, talkSumary);
qBLinearLayout2.setId(CommentToolBarView.ID_BACK);
qBLinearLayout2.setOnClickListener(this);
qBLinearLayout2.setOrientation(0);
qBLinearLayout2.setGravity(16);
qBLinearLayout.addView(qBLinearLayout2, new LinearLayout.LayoutParams(-1, MttResources.s(60)));
QBWebImageView qBWebImageView = new QBWebImageView(getContext());
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(MttResources.s(40), MttResources.s(40));
layoutParams.gravity = 19;
layoutParams.leftMargin = MttResources.s(16);
qBWebImageView.setRadius(MttResources.s(2));
qBWebImageView.setUseMaskForNightMode(true);
if (TextUtils.isEmpty(talkSumary.pic)) {
talkSumary.pic = "https://res.imtt.qq.com/circle/images/circle_topic_tag.png";
}
qBWebImageView.setUrl(talkSumary.pic);
SimpleSkinBuilder.a((ImageView) qBWebImageView).f();
qBLinearLayout2.addView(qBWebImageView, layoutParams);
QBTextView qBTextView = new QBTextView(getContext());
LinearLayout.LayoutParams layoutParams2 = new LinearLayout.LayoutParams(-2, -2, 1.0f);
layoutParams2.leftMargin = MttResources.s(8);
qBTextView.setTextColorNormalIds(e.n);
qBTextView.setTextSize(MttResources.s(16));
qBTextView.setText(talkSumary.title);
qBTextView.setSingleLine();
qBTextView.setIncludeFontPadding(false);
qBTextView.setEllipsize(TextUtils.TruncateAt.END);
qBLinearLayout2.addView(qBTextView, layoutParams2);
if (!TextUtils.isEmpty(talkSumary.talkId) && talkSumary.talkId.equals("new")) {
QBTextView qBTextView2 = new QBTextView(getContext());
LinearLayout.LayoutParams layoutParams3 = new LinearLayout.LayoutParams(-2, -2);
layoutParams3.leftMargin = MttResources.s(8);
layoutParams3.rightMargin = MttResources.s(16);
qBTextView2.setTextColorNormalIds(e.f);
qBTextView2.setTextSize(MttResources.s(12));
qBTextView2.setText("新话题");
qBTextView2.setSingleLine();
qBTextView2.setIncludeFontPadding(false);
qBLinearLayout2.addView(qBTextView2, layoutParams3);
}
QBView qBView = new QBView(getContext());
qBView.setBackgroundNormalIds(QBViewResourceManager.D, e.t);
LinearLayout.LayoutParams layoutParams4 = new LinearLayout.LayoutParams(-1, 1);
layoutParams4.leftMargin = MttResources.s(16);
layoutParams4.rightMargin = MttResources.s(16);
qBLinearLayout.addView(qBView, layoutParams4);
}
public void a(String str) {
SearchTalkHintReq searchTalkHintReq = new SearchTalkHintReq();
searchTalkHintReq.session = new UserSession();
searchTalkHintReq.keyword = str;
WUPRequest wUPRequest = new WUPRequest("circle", "searchTalkHint", this);
wUPRequest.put("stReq", searchTalkHintReq);
wUPRequest.setType((byte) 2);
wUPRequest.setNeedEncrypt(false);
wUPRequest.setClassLoader(TopicContentView.class.getClassLoader());
WUPTaskProxy.send(wUPRequest);
}
public void a(String str, ArrayList<TalkSumary> arrayList, int i) {
QBLinearLayout qBLinearLayout;
if (i == 1) {
qBLinearLayout = new QBLinearLayout(getContext());
this.j = qBLinearLayout;
} else if (i == 2) {
qBLinearLayout = new QBLinearLayout(getContext());
this.k = qBLinearLayout;
} else if (i == 3) {
QBLinearLayout qBLinearLayout2 = this.j;
if (qBLinearLayout2 != null) {
qBLinearLayout2.setVisibility(8);
}
QBLinearLayout qBLinearLayout3 = this.k;
if (qBLinearLayout3 != null) {
qBLinearLayout3.setVisibility(8);
}
qBLinearLayout = this.i;
if (qBLinearLayout != null) {
qBLinearLayout.removeAllViews();
this.i.setVisibility(0);
} else {
qBLinearLayout = new QBLinearLayout(getContext());
this.i = qBLinearLayout;
}
} else {
qBLinearLayout = new QBLinearLayout(getContext());
}
qBLinearLayout.setOrientation(1);
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(-1, -2);
if (this.o.indexOfChild(qBLinearLayout) == -1) {
if (i == 2) {
this.o.addView(qBLinearLayout, 0, layoutParams);
} else {
this.o.addView(qBLinearLayout, layoutParams);
}
}
if (!TextUtils.isEmpty(str) && arrayList != null && arrayList.size() > 0) {
QBTextView qBTextView = new QBTextView(getContext(), false);
ViewGroup.LayoutParams layoutParams2 = new LinearLayout.LayoutParams(-1, MttResources.s(24));
qBTextView.setGravity(19);
qBTextView.setPadding(MttResources.s(16), 0, 0, 0);
qBTextView.setTextColorNormalIds(e.f85874c);
qBTextView.setBackgroundNormalIds(QBViewResourceManager.D, e.A);
qBTextView.setTextSize(MttResources.s(12));
qBTextView.setText(str);
qBLinearLayout.addView(qBTextView, layoutParams2);
}
if (arrayList == null || arrayList.size() <= 0) {
return;
}
for (int i2 = 0; i2 < arrayList.size(); i2++) {
a(qBLinearLayout, arrayList.get(i2));
}
}
private void b() {
setBackgroundNormalIds(QBViewResourceManager.D, e.C);
setOrientation(1);
QBLinearLayout qBLinearLayout = new QBLinearLayout(getContext(), false);
qBLinearLayout.setOrientation(0);
qBLinearLayout.setGravity(16);
addView(qBLinearLayout, new LinearLayout.LayoutParams(-1, MttResources.s(50)));
QBLinearLayout qBLinearLayout2 = new QBLinearLayout(getContext(), false);
qBLinearLayout2.setOrientation(0);
qBLinearLayout2.setGravity(16);
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(-1, MttResources.s(36));
layoutParams.weight = 1.0f;
layoutParams.leftMargin = MttResources.s(16);
layoutParams.gravity = 16;
qBLinearLayout2.setBackgroundNormalIds(QBViewResourceManager.D, e.E);
qBLinearLayout.addView(qBLinearLayout2, layoutParams);
QBImageView qBImageView = new QBImageView(getContext());
qBImageView.setBackgroundNormalIds(R.drawable.abu, QBViewResourceManager.D);
LinearLayout.LayoutParams layoutParams2 = new LinearLayout.LayoutParams(MttResources.s(15), MttResources.s(15));
layoutParams2.gravity = 19;
layoutParams2.leftMargin = MttResources.s(8);
qBLinearLayout2.addView(qBImageView, layoutParams2);
this.f51098c = new MttEditTextViewNew(getContext());
this.f51098c.setGravity(17);
this.f51098c.setSingleLine(true);
this.f51098c.setEnabled(true);
this.f51098c.setFocusableInTouchMode(true);
this.f51098c.setOverScrollMode(1);
this.f51098c.setTextColor(MttResources.c(e.n));
this.f51098c.setHintTextColor(MttResources.c(e.p));
this.f51098c.addTextChangedListener(this);
this.f51098c.setHint("话题");
this.f51098c.setTextSize(MttResources.s(14));
LinearLayout.LayoutParams layoutParams3 = new LinearLayout.LayoutParams(-1, -1);
layoutParams3.leftMargin = MttResources.s(4);
layoutParams3.weight = 1.0f;
qBLinearLayout2.addView(this.f51098c, layoutParams3);
this.f51099d = new QBImageView(getContext());
this.f51099d.setBackgroundNormalIds(g.aV, QBViewResourceManager.D);
LinearLayout.LayoutParams layoutParams4 = new LinearLayout.LayoutParams(MttResources.s(16), MttResources.s(16));
layoutParams4.gravity = 21;
this.f51099d.setOnClickListener(this);
this.f51099d.setVisibility(4);
layoutParams4.rightMargin = MttResources.s(8);
qBLinearLayout2.addView(this.f51099d, layoutParams4);
this.f51097b = new QBTextView(getContext());
LinearLayout.LayoutParams layoutParams5 = new LinearLayout.LayoutParams(-2, -1);
layoutParams5.leftMargin = MttResources.s(16);
layoutParams5.rightMargin = MttResources.s(16);
this.f51097b.setGravity(17);
this.f51097b.setTextColorNormalIds(e.n);
this.f51097b.setTextSize(MttResources.s(16));
this.f51097b.setOnClickListener(this);
this.f51097b.setText("取消");
qBLinearLayout.addView(this.f51097b, layoutParams5);
this.e = new QBScrollView(getContext());
ViewGroup.LayoutParams layoutParams6 = new LinearLayout.LayoutParams(-1, -1, 1.0f);
this.o = new LinearLayout(getContext());
this.o.setOrientation(1);
this.e.addView(this.o, new ViewGroup.LayoutParams(-1, -1));
addView(this.e, layoutParams6);
}
private void b(TalkSumary talkSumary) {
boolean z;
if (talkSumary == null || TextUtils.isEmpty(talkSumary.title)) {
return;
}
if (!TextUtils.isEmpty(talkSumary.talkId) && talkSumary.talkId.equals("new")) {
talkSumary.talkId = "";
}
int i = 0;
while (true) {
if (i >= this.f.size()) {
z = true;
break;
} else {
if (this.f.get(i).title.equals(talkSumary.title)) {
z = false;
break;
}
i++;
}
}
if (z) {
if (this.f.size() >= 3) {
this.f.remove(0);
}
this.f.add(talkSumary);
CircleTopicRepository.a(a(talkSumary));
}
}
private void c() {
SearchHotTalkReq searchHotTalkReq = new SearchHotTalkReq();
searchHotTalkReq.session = new UserSession();
WUPRequest wUPRequest = new WUPRequest("circle", "searchHotTalk", this);
wUPRequest.put("stReq", searchHotTalkReq);
wUPRequest.setType((byte) 1);
wUPRequest.setNeedEncrypt(false);
wUPRequest.setClassLoader(TopicContentView.class.getClassLoader());
WUPTaskProxy.send(wUPRequest);
}
@Override
public void a(List<CircleTopic> list) {
Message obtainMessage = this.n.obtainMessage(3);
obtainMessage.obj = list;
obtainMessage.sendToTarget();
}
@Override
public void afterTextChanged(final Editable editable) {
this.g = editable.toString();
if (!TextUtils.isEmpty(editable)) {
QBImageView qBImageView = this.f51099d;
if (qBImageView != null) {
qBImageView.setVisibility(0);
}
this.h = System.currentTimeMillis();
postDelayed(new Runnable() {
@Override
public void run() {
if (System.currentTimeMillis() - TopicContentView.this.h >= 200) {
TopicContentView.this.g = editable.toString();
if (TextUtils.isEmpty(TopicContentView.this.g)) {
return;
}
TopicContentView topicContentView = TopicContentView.this;
topicContentView.a(topicContentView.g);
}
}
}, 200L);
return;
}
QBLinearLayout qBLinearLayout = this.j;
if (qBLinearLayout != null) {
qBLinearLayout.setVisibility(0);
}
QBLinearLayout qBLinearLayout2 = this.k;
if (qBLinearLayout2 != null) {
qBLinearLayout2.setVisibility(0);
}
QBLinearLayout qBLinearLayout3 = this.i;
if (qBLinearLayout3 != null) {
qBLinearLayout3.setVisibility(8);
}
QBImageView qBImageView2 = this.f51099d;
if (qBImageView2 != null) {
qBImageView2.setVisibility(4);
}
}
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i2, int i3) {
}
@Override
public void onClick(View view) {
WindowController windowController;
EventCollector.getInstance().onViewClickedBefore(view);
if (view == this.f51099d) {
this.f51098c.setText("");
this.f51099d.setVisibility(4);
} else if (view == this.f51097b) {
windowController = this.f51096a;
} else if (view.getId() == 1316) {
TalkSumary talkSumary = this.m.get(view);
if (talkSumary != null) {
EventEmiter.getDefault().emit(new EventMessage("@circle_topic_result", this.l, 0, talkSumary, null));
b(talkSumary);
}
windowController = this.f51096a;
}
EventCollector.getInstance().onViewClicked(view);
}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i2, int i3) {
}
@Override
public void onWUPTaskFail(WUPRequestBase wUPRequestBase) {
wUPRequestBase.getType();
}
@Override
public void onWUPTaskSuccess(WUPRequestBase wUPRequestBase, WUPResponseBase wUPResponseBase) {
Message message;
ArrayList<TalkSumary> arrayList;
SearchTalkHintRsp searchTalkHintRsp;
byte type = wUPRequestBase.getType();
if (type == 1) {
SearchHotTalkRsp searchHotTalkRsp = (SearchHotTalkRsp) wUPResponseBase.get("stRsp");
if (searchHotTalkRsp == null || searchHotTalkRsp.talks == null || searchHotTalkRsp.talks.size() <= 0) {
return;
}
message = new Message();
message.what = 1;
arrayList = searchHotTalkRsp.talks;
} else {
if (type != 2 || (searchTalkHintRsp = (SearchTalkHintRsp) wUPResponseBase.get("stRsp")) == null) {
return;
}
message = new Message();
message.what = 2;
arrayList = searchTalkHintRsp.talks;
}
message.obj = arrayList;
this.n.sendMessage(message);
}
}