* Decompile and recreate Soul Browser v1.4.85 with APK CI builds Co-authored-by: KaKi87 <KaKi87@pm.me> * Fix CI build: include bundled google.jks and remove PR trigger The apktool build failed in CI because app/unknown/.../google.jks was excluded by the *.jks gitignore rule. Whitelist app-bundled JKS files and commit the missing resource. Also remove the redundant pull_request workflow trigger. Co-authored-by: KaKi87 <KaKi87@pm.me> * Change package ID to com.github.kaki87.soulbrowser Rename the application ID so the rebuilt APK can be installed alongside the original Soul Browser from Google Play. - Update AndroidManifest package, permissions, providers, and actions - Update R class references in smali (com/github/kaki87/soulbrowser/R) - Update shortcuts.xml targetPackage - Rename app label to "Soul Rebuild" for easy identification Co-authored-by: KaKi87 <KaKi87@pm.me> * Fix install compatibility: remove split APK metadata and bundle native libs The rebuilt APK still declared requiredSplitTypes and Play Store split metadata, causing Android to reject standalone installs as incompatible. - Remove requiredSplitTypes and split-related manifest meta-data - Merge native libs from all ABI splits with uncompressed storage - Page-align before signing for extractNativeLibs=false - Add .so to apktool doNotCompress list Co-authored-by: KaKi87 <KaKi87@pm.me> * Fix install failure: use apksigner v2/v3 and bundle arm64 native libs Target SDK 36 requires APK Signature Scheme v2+, but jarsigner only produces v1 signatures, causing Android to reject the install. - Sign with apksigner (v1+v2+v3) instead of jarsigner - Add arm64-v8a native libraries from universal Soul Browser 1.4.79 - Set extractNativeLibs=true for reliable sideload installs - Commit stable debug keystore for consistent signatures across builds Co-authored-by: KaKi87 <KaKi87@pm.me> * Add committed debug keystore for consistent APK signatures Co-authored-by: KaKi87 <KaKi87@pm.me> * Fix startup crash: use original classes2.dex desugar libraries Apktool recompiles smali_classes2 into a broken classes2.dex, causing ClassNotFoundException for j$.com.android.tools.r8.a at ML Kit init. Inject the original classes2.dex (Java 8+ desugar libs) after apktool build instead of using the recompiled version. Co-authored-by: KaKi87 <KaKi87@pm.me> * Fix missing drawable resources from density split APKs The base APK is an app bundle module; density-specific drawables like seek_thumb_nor_b live in config.xhdpi.apk and were missing after rebuild, causing Resources$NotFoundException at runtime. - Merge non-9-patch resources from split APKs before apktool build - Sync public.xml IDs from R smali only when backing files exist - Add 713 density-specific resource IDs to public.xml Co-authored-by: KaKi87 <KaKi87@pm.me> --------- Co-authored-by: Cursor Agent <cursoragent@cursor.com>
731 lines
24 KiB
Java
731 lines
24 KiB
Java
package com.mycompany.app.view;
|
|
|
|
import android.graphics.Canvas;
|
|
import android.graphics.Paint;
|
|
import android.graphics.Rect;
|
|
import android.graphics.drawable.Drawable;
|
|
import android.os.Build;
|
|
import android.text.Editable;
|
|
import android.text.TextPaint;
|
|
import android.text.TextUtils;
|
|
import android.text.TextWatcher;
|
|
import android.view.KeyEvent;
|
|
import android.view.MotionEvent;
|
|
import android.view.View;
|
|
import android.widget.Filter;
|
|
import android.widget.ListPopupWindow;
|
|
import android.widget.ListView;
|
|
import androidx.appcompat.widget.AppCompatEditText;
|
|
import com.google.android.gms.ads.RequestConfiguration;
|
|
import com.mycompany.app.main.MainActivity;
|
|
import com.mycompany.app.main.MainApp;
|
|
import com.mycompany.app.main.MainConst;
|
|
import com.mycompany.app.main.MainUtil;
|
|
import com.mycompany.app.pref.PrefZtwo;
|
|
import com.mycompany.app.web.WebSearchAdapter2;
|
|
import java.util.List;
|
|
import java.util.concurrent.ExecutorService;
|
|
|
|
/* loaded from: classes3.dex */
|
|
public class MyEditAuto extends AppCompatEditText {
|
|
public MainActivity A;
|
|
public ListPopupWindow B;
|
|
public Filter C;
|
|
public String D;
|
|
public boolean E;
|
|
public String F;
|
|
public int G;
|
|
public String H;
|
|
public int I;
|
|
public String J;
|
|
public int K;
|
|
public String L;
|
|
public int M;
|
|
public final Runnable N;
|
|
public String O;
|
|
public boolean k;
|
|
public EditAutoListener l;
|
|
public KeyBackListener m;
|
|
public List n;
|
|
public String o;
|
|
public boolean p;
|
|
public String q;
|
|
public Paint r;
|
|
public Rect s;
|
|
public int t;
|
|
public int u;
|
|
public int v;
|
|
public int w;
|
|
public int x;
|
|
public int y;
|
|
public ExecutorService z;
|
|
|
|
/* renamed from: com.mycompany.app.view.MyEditAuto$1, reason: invalid class name */
|
|
/* loaded from: classes3.dex */
|
|
class AnonymousClass1 implements View.OnClickListener {
|
|
@Override // android.view.View.OnClickListener
|
|
public final void onClick(View view) {
|
|
}
|
|
}
|
|
|
|
/* loaded from: classes3.dex */
|
|
public interface EditAutoListener {
|
|
boolean a(String str);
|
|
}
|
|
|
|
/* loaded from: classes3.dex */
|
|
public interface KeyBackListener {
|
|
boolean a(boolean z, boolean z2);
|
|
}
|
|
|
|
/* JADX WARN: Multi-variable type inference failed */
|
|
/* JADX WARN: Type inference failed for: r3v3, types: [android.view.View$OnClickListener, java.lang.Object] */
|
|
public MyEditAuto(MainActivity mainActivity) {
|
|
super(mainActivity, null, 0);
|
|
this.N = new Runnable() { // from class: com.mycompany.app.view.MyEditAuto.6
|
|
@Override // java.lang.Runnable
|
|
public final void run() {
|
|
int length;
|
|
String substring;
|
|
MyEditAuto myEditAuto = MyEditAuto.this;
|
|
String str = myEditAuto.o;
|
|
if (TextUtils.isEmpty(str)) {
|
|
myEditAuto.setTextAppend(null);
|
|
return;
|
|
}
|
|
List<String> list = myEditAuto.n;
|
|
if (list == null || list.isEmpty()) {
|
|
myEditAuto.setTextAppend(null);
|
|
return;
|
|
}
|
|
for (String str2 : list) {
|
|
if (myEditAuto.n == null || !str.equals(myEditAuto.o) || TextUtils.isEmpty(str2)) {
|
|
break;
|
|
}
|
|
myEditAuto.p = false;
|
|
if (str2 != null && (length = str2.length()) != 0) {
|
|
if (length > 4 && str2.startsWith("www.")) {
|
|
myEditAuto.p = true;
|
|
substring = str2.substring(4);
|
|
} else if (length > 2 && str2.startsWith(".", 1)) {
|
|
myEditAuto.p = true;
|
|
substring = str2.substring(2);
|
|
} else if (length > 7 && str2.startsWith("mobile.")) {
|
|
myEditAuto.p = true;
|
|
substring = str2.substring(7);
|
|
}
|
|
if (TextUtils.isEmpty(substring) && substring.startsWith(str)) {
|
|
myEditAuto.setTextAppend(substring);
|
|
return;
|
|
} else if (myEditAuto.p && str2.startsWith(str)) {
|
|
myEditAuto.setTextAppend(str2);
|
|
return;
|
|
}
|
|
}
|
|
substring = str2;
|
|
if (TextUtils.isEmpty(substring)) {
|
|
}
|
|
if (myEditAuto.p) {
|
|
myEditAuto.setTextAppend(str2);
|
|
return;
|
|
}
|
|
}
|
|
myEditAuto.setTextAppend(null);
|
|
}
|
|
};
|
|
this.k = true;
|
|
MainUtil.c5(this);
|
|
int inputType = getInputType();
|
|
if ((inputType & 15) == 1) {
|
|
setRawInputType(inputType | 65536);
|
|
}
|
|
setFocusable(true);
|
|
setOnClickListener(new Object());
|
|
addTextChangedListener(new TextWatcher() { // from class: com.mycompany.app.view.MyEditAuto.2
|
|
|
|
/* renamed from: c, reason: collision with root package name */
|
|
public boolean f18685c;
|
|
|
|
@Override // android.text.TextWatcher
|
|
public final void afterTextChanged(Editable editable) {
|
|
String str;
|
|
MyEditAuto myEditAuto = MyEditAuto.this;
|
|
if (myEditAuto.l != null) {
|
|
if (editable != null) {
|
|
str = editable.toString();
|
|
} else {
|
|
str = null;
|
|
}
|
|
if (!myEditAuto.l.a(str)) {
|
|
if (myEditAuto.B != null && this.f18685c && !myEditAuto.f()) {
|
|
myEditAuto.D = null;
|
|
return;
|
|
}
|
|
if (PrefZtwo.B) {
|
|
if (!MainUtil.q5(str, myEditAuto.D)) {
|
|
myEditAuto.D = str;
|
|
} else {
|
|
return;
|
|
}
|
|
}
|
|
Filter filter = myEditAuto.C;
|
|
if (filter != null) {
|
|
filter.filter(editable);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
@Override // android.text.TextWatcher
|
|
public final void beforeTextChanged(CharSequence charSequence, int i, int i2, int i3) {
|
|
MyEditAuto myEditAuto = MyEditAuto.this;
|
|
if (myEditAuto.B != null) {
|
|
this.f18685c = myEditAuto.f();
|
|
}
|
|
}
|
|
|
|
@Override // android.text.TextWatcher
|
|
public final void onTextChanged(CharSequence charSequence, int i, int i2, int i3) {
|
|
}
|
|
});
|
|
}
|
|
|
|
public static void b(MyEditAuto myEditAuto) {
|
|
String str = myEditAuto.H;
|
|
int i = myEditAuto.I;
|
|
myEditAuto.H = null;
|
|
String str2 = myEditAuto.F;
|
|
if (myEditAuto.k && myEditAuto.G == i && MainUtil.q5(str2, str)) {
|
|
myEditAuto.setTextAppend(null);
|
|
myEditAuto.J = str;
|
|
myEditAuto.K = i;
|
|
myEditAuto.post(new Runnable() { // from class: com.mycompany.app.view.MyEditAuto.4
|
|
@Override // java.lang.Runnable
|
|
public final void run() {
|
|
final MyEditAuto myEditAuto2 = MyEditAuto.this;
|
|
String str3 = myEditAuto2.J;
|
|
int i2 = myEditAuto2.K;
|
|
myEditAuto2.J = null;
|
|
String str4 = myEditAuto2.F;
|
|
if (myEditAuto2.k && myEditAuto2.G == i2 && MainUtil.q5(str4, str3)) {
|
|
myEditAuto2.setText(str3);
|
|
if (i2 >= 0 && !TextUtils.isEmpty(str3)) {
|
|
myEditAuto2.L = str3;
|
|
myEditAuto2.M = i2;
|
|
myEditAuto2.post(new Runnable() { // from class: com.mycompany.app.view.MyEditAuto.5
|
|
@Override // java.lang.Runnable
|
|
public final void run() {
|
|
MyEditAuto myEditAuto3 = MyEditAuto.this;
|
|
String str5 = myEditAuto3.L;
|
|
int i3 = myEditAuto3.M;
|
|
myEditAuto3.L = null;
|
|
String str6 = myEditAuto3.F;
|
|
myEditAuto3.F = null;
|
|
if (myEditAuto3.k && myEditAuto3.G == i3 && MainUtil.q5(str6, str5) && i3 >= 0 && !TextUtils.isEmpty(str5)) {
|
|
try {
|
|
myEditAuto3.setSelection(i3);
|
|
} catch (Exception unused) {
|
|
}
|
|
}
|
|
}
|
|
});
|
|
}
|
|
}
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: private */
|
|
public void setTextAppend(String str) {
|
|
int i;
|
|
if (!TextUtils.isEmpty(str) && !TextUtils.isEmpty(this.o)) {
|
|
TextPaint paint = getPaint();
|
|
if (paint != null) {
|
|
if (this.r == null) {
|
|
Paint paint2 = new Paint();
|
|
this.r = paint2;
|
|
paint2.setAntiAlias(true);
|
|
this.r.setColor(-2137994503);
|
|
}
|
|
if (this.s == null) {
|
|
this.s = new Rect();
|
|
}
|
|
String str2 = this.o;
|
|
paint.getTextBounds(str2, 0, str2.length(), this.s);
|
|
int i2 = this.s.right;
|
|
if (!str.equals(this.q)) {
|
|
this.q = str;
|
|
if (paint.getColor() != getCurrentTextColor()) {
|
|
paint.setColor(getCurrentTextColor());
|
|
}
|
|
paint.getTextBounds(str, 0, str.length(), this.s);
|
|
this.t = this.s.right;
|
|
}
|
|
Rect rect = this.s;
|
|
rect.left = i2;
|
|
rect.right = this.t;
|
|
if (this.u == 0) {
|
|
this.u = MainApp.E1 - MainApp.G1;
|
|
}
|
|
int round = Math.round((paint.ascent() + paint.descent()) / 2.0f);
|
|
this.v = round;
|
|
Rect rect2 = this.s;
|
|
if (rect2 != null && (i = this.y) != 0) {
|
|
int i3 = this.u;
|
|
rect2.top = i - i3;
|
|
rect2.bottom = i3 + i;
|
|
this.w = i - round;
|
|
}
|
|
postInvalidate();
|
|
return;
|
|
}
|
|
return;
|
|
}
|
|
if (this.q != null) {
|
|
this.q = null;
|
|
postInvalidate();
|
|
}
|
|
}
|
|
|
|
public final void d() {
|
|
if (this.B != null) {
|
|
MainActivity mainActivity = this.A;
|
|
if (mainActivity != null) {
|
|
mainActivity.a1 = null;
|
|
}
|
|
if (!f()) {
|
|
return;
|
|
}
|
|
this.B.dismiss();
|
|
}
|
|
}
|
|
|
|
@Override // android.view.View
|
|
public final boolean dispatchTouchEvent(MotionEvent motionEvent) {
|
|
String str;
|
|
if (motionEvent.getActionMasked() == 0 && (str = this.q) != null) {
|
|
i(-1, str);
|
|
}
|
|
try {
|
|
return super.dispatchTouchEvent(motionEvent);
|
|
} catch (Exception unused) {
|
|
return true;
|
|
}
|
|
}
|
|
|
|
public final void e() {
|
|
this.n = null;
|
|
this.o = null;
|
|
setTextAppend(null);
|
|
}
|
|
|
|
public final boolean f() {
|
|
ListPopupWindow listPopupWindow = this.B;
|
|
if (listPopupWindow == null) {
|
|
return false;
|
|
}
|
|
return listPopupWindow.isShowing();
|
|
}
|
|
|
|
public final void g() {
|
|
this.k = false;
|
|
this.l = null;
|
|
this.m = null;
|
|
this.n = null;
|
|
this.o = null;
|
|
this.q = null;
|
|
this.r = null;
|
|
this.s = null;
|
|
this.z = null;
|
|
this.A = null;
|
|
this.B = null;
|
|
this.C = null;
|
|
this.D = null;
|
|
}
|
|
|
|
@Override // android.widget.EditText, android.widget.TextView, android.view.View
|
|
public CharSequence getAccessibilityClassName() {
|
|
return MyEditAuto.class.getName();
|
|
}
|
|
|
|
public String getAutoText() {
|
|
if (!TextUtils.isEmpty(this.q)) {
|
|
return MainUtil.a7(this.q);
|
|
}
|
|
return MainUtil.a7(MainUtil.Q0(this, false));
|
|
}
|
|
|
|
public int getDropDownHeight() {
|
|
ListPopupWindow listPopupWindow = this.B;
|
|
if (listPopupWindow == null) {
|
|
return 0;
|
|
}
|
|
return listPopupWindow.getHeight();
|
|
}
|
|
|
|
public int getDropDownHorizontalOffset() {
|
|
ListPopupWindow listPopupWindow = this.B;
|
|
if (listPopupWindow == null) {
|
|
return 0;
|
|
}
|
|
return listPopupWindow.getHorizontalOffset();
|
|
}
|
|
|
|
public int getDropDownVerticalOffset() {
|
|
ListPopupWindow listPopupWindow = this.B;
|
|
if (listPopupWindow == null) {
|
|
return 0;
|
|
}
|
|
return listPopupWindow.getVerticalOffset();
|
|
}
|
|
|
|
public int getDropDownWidth() {
|
|
ListPopupWindow listPopupWindow = this.B;
|
|
if (listPopupWindow == null) {
|
|
return 0;
|
|
}
|
|
return listPopupWindow.getWidth();
|
|
}
|
|
|
|
public String getSelected() {
|
|
String Q0 = MainUtil.Q0(this, false);
|
|
if (TextUtils.isEmpty(Q0)) {
|
|
return null;
|
|
}
|
|
int selectionStart = getSelectionStart();
|
|
int selectionEnd = getSelectionEnd();
|
|
if (selectionStart >= 0 && selectionStart < selectionEnd && selectionEnd <= Q0.length()) {
|
|
return Q0.substring(selectionStart, selectionEnd);
|
|
}
|
|
return Q0;
|
|
}
|
|
|
|
public final boolean h(String str) {
|
|
int length;
|
|
List list = this.n;
|
|
if (list != null && !list.isEmpty()) {
|
|
if (this.q != null && this.o != null) {
|
|
if (str == null) {
|
|
length = 0;
|
|
} else {
|
|
length = str.length();
|
|
}
|
|
if (length < this.o.length() && (length <= 0 || this.o.startsWith(str))) {
|
|
this.q = null;
|
|
this.O = this.o;
|
|
post(new Runnable() { // from class: com.mycompany.app.view.MyEditAuto.7
|
|
@Override // java.lang.Runnable
|
|
public final void run() {
|
|
int length2;
|
|
MyEditAuto myEditAuto = MyEditAuto.this;
|
|
try {
|
|
String str2 = myEditAuto.O;
|
|
myEditAuto.O = null;
|
|
if (str2 != null && (length2 = str2.length()) != 0 && str2.equals(myEditAuto.o)) {
|
|
myEditAuto.setText(str2);
|
|
myEditAuto.setSelection(length2);
|
|
}
|
|
} catch (Exception unused) {
|
|
}
|
|
}
|
|
});
|
|
return true;
|
|
}
|
|
}
|
|
this.O = null;
|
|
if (TextUtils.isEmpty(str)) {
|
|
this.o = RequestConfiguration.MAX_AD_CONTENT_RATING_UNSPECIFIED;
|
|
setTextAppend(null);
|
|
return false;
|
|
}
|
|
if (this.o == null) {
|
|
this.o = RequestConfiguration.MAX_AD_CONTENT_RATING_UNSPECIFIED;
|
|
}
|
|
if (str.length() < this.o.length()) {
|
|
this.o = str;
|
|
setTextAppend(null);
|
|
return false;
|
|
}
|
|
if (!str.equals(this.o)) {
|
|
this.o = str;
|
|
Runnable runnable = this.N;
|
|
ExecutorService executorService = this.z;
|
|
if (executorService == null || executorService.isShutdown() || executorService.isTerminated()) {
|
|
executorService = MainApp.i(getContext());
|
|
if (executorService != null) {
|
|
this.z = executorService;
|
|
}
|
|
}
|
|
try {
|
|
executorService.execute(runnable);
|
|
} catch (Exception unused) {
|
|
}
|
|
}
|
|
}
|
|
return false;
|
|
}
|
|
|
|
public final void i(int i, String str) {
|
|
this.o = str;
|
|
this.F = str;
|
|
this.G = i;
|
|
this.H = str;
|
|
this.I = i;
|
|
post(new Runnable() { // from class: com.mycompany.app.view.MyEditAuto.3
|
|
@Override // java.lang.Runnable
|
|
public final void run() {
|
|
MyEditAuto.b(MyEditAuto.this);
|
|
}
|
|
});
|
|
}
|
|
|
|
public final void j() {
|
|
ListView listView;
|
|
ListPopupWindow listPopupWindow = this.B;
|
|
if (listPopupWindow != null) {
|
|
MainActivity mainActivity = this.A;
|
|
if (mainActivity != null) {
|
|
mainActivity.a1 = this;
|
|
}
|
|
listPopupWindow.setInputMethodMode(1);
|
|
this.B.show();
|
|
if (Build.VERSION.SDK_INT < 31 && !this.E && (listView = this.B.getListView()) != null) {
|
|
listView.setOverScrollMode(2);
|
|
this.E = true;
|
|
}
|
|
}
|
|
}
|
|
|
|
@Override // androidx.appcompat.widget.AppCompatEditText, android.view.View
|
|
public final void onDetachedFromWindow() {
|
|
d();
|
|
super.onDetachedFromWindow();
|
|
}
|
|
|
|
@Override // android.view.View
|
|
public final void onDisplayHint(int i) {
|
|
super.onDisplayHint(i);
|
|
if (i == 4) {
|
|
d();
|
|
}
|
|
}
|
|
|
|
@Override // android.widget.TextView, android.view.View
|
|
public final void onDraw(Canvas canvas) {
|
|
Paint paint;
|
|
Rect rect;
|
|
if (this.q != null && (paint = this.r) != null && (rect = this.s) != null) {
|
|
try {
|
|
canvas.drawRect(rect, paint);
|
|
canvas.drawText(this.q, 0.0f, this.w, getPaint());
|
|
return;
|
|
} catch (Exception unused) {
|
|
}
|
|
}
|
|
super.onDraw(canvas);
|
|
}
|
|
|
|
@Override // android.widget.TextView, android.view.View
|
|
public final void onFocusChanged(boolean z, int i, Rect rect) {
|
|
super.onFocusChanged(z, i, rect);
|
|
if ((Build.VERSION.SDK_INT < 24 || !isTemporarilyDetached()) && !z) {
|
|
d();
|
|
}
|
|
}
|
|
|
|
@Override // android.widget.TextView, android.view.View, android.view.KeyEvent.Callback
|
|
public final boolean onKeyDown(int i, KeyEvent keyEvent) {
|
|
boolean f = f();
|
|
if (f && this.B.onKeyDown(i, keyEvent)) {
|
|
return true;
|
|
}
|
|
if (i == 61 && f && keyEvent.hasNoModifiers()) {
|
|
return true;
|
|
}
|
|
boolean onKeyDown = super.onKeyDown(i, keyEvent);
|
|
if (onKeyDown && f) {
|
|
this.B.clearListSelection();
|
|
}
|
|
return onKeyDown;
|
|
}
|
|
|
|
@Override // android.widget.TextView, android.view.View
|
|
public final boolean onKeyPreIme(int i, KeyEvent keyEvent) {
|
|
boolean z;
|
|
if (this.m != null && i == 4) {
|
|
if (keyEvent.getAction() == 1) {
|
|
z = true;
|
|
} else {
|
|
z = false;
|
|
}
|
|
if (this.m.a(z, false)) {
|
|
return true;
|
|
}
|
|
}
|
|
if ((i == 4 || i == 111) && f()) {
|
|
int action = keyEvent.getAction();
|
|
if (action == 0) {
|
|
if (keyEvent.getRepeatCount() == 0) {
|
|
KeyEvent.DispatcherState keyDispatcherState = getKeyDispatcherState();
|
|
if (keyDispatcherState != null) {
|
|
keyDispatcherState.startTracking(keyEvent, this);
|
|
}
|
|
return true;
|
|
}
|
|
} else if (action == 1) {
|
|
KeyEvent.DispatcherState keyDispatcherState2 = getKeyDispatcherState();
|
|
if (keyDispatcherState2 != null) {
|
|
keyDispatcherState2.handleUpEvent(keyEvent);
|
|
}
|
|
if (keyEvent.isTracking() && !keyEvent.isCanceled()) {
|
|
d();
|
|
return true;
|
|
}
|
|
}
|
|
}
|
|
return super.onKeyPreIme(i, keyEvent);
|
|
}
|
|
|
|
@Override // android.widget.TextView, android.view.View, android.view.KeyEvent.Callback
|
|
public final boolean onKeyUp(int i, KeyEvent keyEvent) {
|
|
boolean f = f();
|
|
if (f && this.B.onKeyUp(i, keyEvent) && (i == 23 || i == 61 || i == 66 || i == 160)) {
|
|
if (keyEvent.hasNoModifiers()) {
|
|
d();
|
|
}
|
|
return true;
|
|
}
|
|
if (i == 61 && f && keyEvent.hasNoModifiers()) {
|
|
d();
|
|
return true;
|
|
}
|
|
return super.onKeyUp(i, keyEvent);
|
|
}
|
|
|
|
@Override // android.view.View
|
|
public final void onSizeChanged(int i, int i2, int i3, int i4) {
|
|
super.onSizeChanged(i, i2, i3, i4);
|
|
int round = Math.round(i2 / 2.0f);
|
|
this.y = round;
|
|
Rect rect = this.s;
|
|
if (rect != null && round != 0) {
|
|
int i5 = this.u;
|
|
rect.top = round - i5;
|
|
rect.bottom = i5 + round;
|
|
this.w = round - this.v;
|
|
}
|
|
}
|
|
|
|
@Override // android.widget.TextView, android.view.View
|
|
public final void onWindowFocusChanged(boolean z) {
|
|
super.onWindowFocusChanged(z);
|
|
if (!z) {
|
|
d();
|
|
}
|
|
}
|
|
|
|
public void setAutoList(List<String> list) {
|
|
this.n = list;
|
|
}
|
|
|
|
public void setDropDownAdapter(WebSearchAdapter2 webSearchAdapter2) {
|
|
ListPopupWindow listPopupWindow = this.B;
|
|
if (listPopupWindow == null) {
|
|
return;
|
|
}
|
|
if (webSearchAdapter2 != null) {
|
|
this.C = webSearchAdapter2.z;
|
|
} else {
|
|
this.C = null;
|
|
}
|
|
this.D = null;
|
|
listPopupWindow.setAdapter(webSearchAdapter2);
|
|
}
|
|
|
|
public void setDropDownAnchor(View view) {
|
|
ListPopupWindow listPopupWindow = this.B;
|
|
if (listPopupWindow == null) {
|
|
return;
|
|
}
|
|
if (view != null) {
|
|
listPopupWindow.setAnchorView(view);
|
|
} else {
|
|
listPopupWindow.setAnchorView(this);
|
|
}
|
|
}
|
|
|
|
public void setDropDownBackgroundDrawable(Drawable drawable) {
|
|
ListPopupWindow listPopupWindow = this.B;
|
|
if (listPopupWindow == null) {
|
|
return;
|
|
}
|
|
listPopupWindow.setBackgroundDrawable(drawable);
|
|
}
|
|
|
|
public void setDropDownFilter(Filter filter) {
|
|
this.C = filter;
|
|
this.D = null;
|
|
}
|
|
|
|
public void setDropDownHeight(int i) {
|
|
ListPopupWindow listPopupWindow = this.B;
|
|
if (listPopupWindow == null) {
|
|
return;
|
|
}
|
|
listPopupWindow.setHeight(i);
|
|
}
|
|
|
|
public void setDropDownHorizontalOffset(int i) {
|
|
ListPopupWindow listPopupWindow = this.B;
|
|
if (listPopupWindow == null) {
|
|
return;
|
|
}
|
|
listPopupWindow.setHorizontalOffset(i);
|
|
}
|
|
|
|
public void setDropDownVerticalOffset(int i) {
|
|
ListPopupWindow listPopupWindow = this.B;
|
|
if (listPopupWindow == null) {
|
|
return;
|
|
}
|
|
listPopupWindow.setVerticalOffset(i);
|
|
}
|
|
|
|
public void setDropDownWidth(int i) {
|
|
ListPopupWindow listPopupWindow = this.B;
|
|
if (listPopupWindow == null) {
|
|
return;
|
|
}
|
|
listPopupWindow.setWidth(i);
|
|
}
|
|
|
|
public void setEditAutoListener(EditAutoListener editAutoListener) {
|
|
this.l = editAutoListener;
|
|
}
|
|
|
|
@Override // android.widget.TextView
|
|
public final boolean setFrame(int i, int i2, int i3, int i4) {
|
|
boolean frame = super.setFrame(i, i2, i3, i4);
|
|
if (f()) {
|
|
j();
|
|
}
|
|
return frame;
|
|
}
|
|
|
|
public void setOldKeyListener(KeyBackListener keyBackListener) {
|
|
if (MainConst.f16453c) {
|
|
return;
|
|
}
|
|
this.m = keyBackListener;
|
|
}
|
|
|
|
@Override // android.widget.TextView
|
|
public void setTextColor(int i) {
|
|
if (this.x == i) {
|
|
return;
|
|
}
|
|
this.x = i;
|
|
super.setTextColor(i);
|
|
}
|
|
}
|