正在查看: Tasker v6.5.11 应用的 IpackIconSelect.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: Tasker v6.5.11 应用的 IpackIconSelect.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package net.dinglisch.android.taskerm;
import android.app.Activity;
import android.content.Intent;
import android.content.res.Resources;
import android.graphics.Typeface;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.AsyncTask;
import android.os.Bundle;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AbsListView;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.ListAdapter;
import android.widget.TextView;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import net.dinglisch.android.taskerm.yd;
public class IpackIconSelect extends Activity {
private GridView s;
private int i = 60;
private int q = 90;
private int r = 863467383;
private List<Integer> t = new ArrayList();
private Bundle u = new Bundle();
private d v = null;
class a extends BaseAdapter {
a() {
}
@Override
public final int getCount() {
return IpackIconSelect.this.t.size();
}
@Override
public final Object getItem(int i) {
return IpackIconSelect.this.t.get(i);
}
@Override
public final long getItemId(int i) {
return i;
}
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
ImageView imageView;
if (view == null) {
imageView = new ImageView(IpackIconSelect.this);
imageView.setScaleType(ImageView.ScaleType.FIT_CENTER);
imageView.setLayoutParams(new AbsListView.LayoutParams(IpackIconSelect.this.q, IpackIconSelect.this.q));
int i2 = (IpackIconSelect.this.q - IpackIconSelect.this.i) / 2;
imageView.setPadding(i2, i2, i2, i2);
} else {
imageView = (ImageView) view;
}
try {
imageView.setImageResource(((Integer) IpackIconSelect.this.t.get(i)).intValue());
} catch (OutOfMemoryError unused) {
Log.w("IpackIconSelect", "getView: oom");
}
return imageView;
}
}
class b implements Comparator<Integer> {
final boolean i;
final Map q;
final Map r;
b(boolean z, Map map, Map map2) {
this.i = z;
this.q = map;
this.r = map2;
}
@Override
public int compare(Integer num, Integer num2) {
if (this.i) {
return ((String) this.q.get(num2)).compareToIgnoreCase((String) this.q.get(num));
}
Integer num3 = (Integer) this.r.get(num);
Integer num4 = (Integer) this.r.get(num2);
return num3 == num4 ? ((String) this.q.get(num2)).compareToIgnoreCase((String) this.q.get(num)) : num4.compareTo(num3);
}
}
class c implements AdapterView.OnItemClickListener {
c() {
}
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long j) {
String str;
int intValue = ((Integer) IpackIconSelect.this.t.get(i)).intValue();
String resourceEntryName = IpackIconSelect.this.getResources().getResourceEntryName(intValue);
Iterator<String> it = IpackIconSelect.this.u.keySet().iterator();
while (true) {
if (!it.hasNext()) {
str = null;
break;
} else {
str = it.next();
if (IpackIconSelect.this.u.getInt(str) == intValue) {
break;
}
}
}
Intent intent = new Intent();
intent.setData(Uri.parse("android.resource://" + IpackIconSelect.this.getPackageName() + "/" + resourceEntryName));
if (str != null) {
intent.putExtra("net.dinglisch.android.ipack.extras.ICON_LABEL", str);
}
intent.putExtra("net.dinglisch.android.ipack.extras.ICON_NAME", resourceEntryName);
intent.putExtra("net.dinglisch.android.ipack.extras.ICON_ID", intValue);
IpackIconSelect.this.setResult(-1, intent);
IpackIconSelect.this.finish();
}
}
public class d extends AsyncTask<Boolean, Integer, Boolean> {
public d() {
}
@Override
public Boolean doInBackground(Boolean... boolArr) {
IpackIconSelect.this.k(boolArr[0].booleanValue());
return Boolean.TRUE;
}
@Override
public void onPostExecute(Boolean bool) {
try {
IpackIconSelect.this.v = null;
IpackIconSelect.this.i();
IpackIconSelect.this.setProgressBarIndeterminateVisibility(false);
} catch (Exception unused) {
}
}
}
private TextView g() {
TextView textView = new TextView(this);
StringBuilder sb = new StringBuilder();
sb.append("#");
sb.append(this.u.size());
String str = x5.a;
if (!TextUtils.isEmpty(str)) {
sb.append(" [");
sb.append(str);
sb.append("]");
}
textView.setText(sb.toString());
textView.setTextSize(16.0f);
textView.setPadding(5, 5, 5, 5);
textView.setTypeface(Typeface.defaultFromStyle(2), 2);
return textView;
}
private void h() {
Bundle extras = getIntent().getExtras();
if (extras != null) {
try {
if (extras.containsKey("net.dinglisch.android.ipack.extras.GRID_BACK_COLOUR")) {
this.r = extras.getInt("net.dinglisch.android.ipack.extras.GRID_BACK_COLOUR");
}
if (extras.containsKey("net.dinglisch.android.ipack.extras.CELL_SIZE")) {
this.q = extras.getInt("net.dinglisch.android.ipack.extras.CELL_SIZE");
}
if (extras.containsKey("net.dinglisch.android.ipack.extras.ICON_DISPLAY_SIZE")) {
this.q = extras.getInt("net.dinglisch.android.ipack.extras.ICON_DISPLAY_SIZE");
}
} catch (Exception e) {
Log.d("Tasker Built-In", "exception parsing intent: " + e.toString());
}
}
}
public void i() {
this.s.setAdapter((ListAdapter) new a());
}
private void j() {
GridView gridView = new GridView(this);
this.s = gridView;
gridView.setBackgroundColor(this.r);
this.s.setGravity(17);
this.s.setPadding(10, 10, 10, 10);
this.s.setNumColumns(getResources().getDisplayMetrics().widthPixels / this.q);
this.s.setOnItemClickListener(new c());
}
public void k(boolean z) {
Resources resources = getResources();
HashMap hashMap = new HashMap();
HashMap hashMap2 = new HashMap();
Bundle bundle = this.u;
if (bundle == null) {
Log.e("IpackIconSelect", "sortIcons: null");
return;
}
for (String str : bundle.keySet()) {
int i = this.u.getInt(str);
if (!z) {
try {
Drawable g = yd.k0.g(resources, i, null);
if (g != null) {
hashMap.put(Integer.valueOf(i), Integer.valueOf(g.getIntrinsicHeight() * g.getIntrinsicWidth()));
}
} catch (Resources.NotFoundException unused) {
Log.e("Tasker Built-In", "sort icons: resource not found: " + str);
}
}
List<Integer> list = this.t;
if (list != null) {
list.add(Integer.valueOf(i));
}
hashMap2.put(Integer.valueOf(i), str);
}
Collections.sort(this.t, new b(z, hashMap2, hashMap));
}
@Override
public void onCreate(Bundle bundle) {
super.onCreate(bundle);
setResult(0);
x5.a(getResources(), this.u);
h();
j();
requestWindowFeature(5);
setTitle("Tasker Built-In");
LinearLayout linearLayout = new LinearLayout(this);
linearLayout.setId(2131297324);
linearLayout.setOrientation(1);
linearLayout.addView(g());
linearLayout.addView(this.s);
setContentView(linearLayout);
setProgressBarIndeterminateVisibility(true);
d dVar = new d();
this.v = dVar;
dVar.execute(Boolean.FALSE);
}
@Override
public void onDestroy() {
super.onDestroy();
this.s.setAdapter((ListAdapter) null);
this.s = null;
this.t = null;
this.u = null;
this.v = null;
}
}