Skip to content

Commit f85a54f

Browse files
committed
Release 2.0
1 parent a98f34e commit f85a54f

25 files changed

Lines changed: 156 additions & 133 deletions

File tree

ART/web_hi_res_512.png

61.6 KB
Loading

app/build.gradle

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -41,16 +41,17 @@ dependencies {
4141
implementation fileTree(dir: 'libs', include: ['*.jar'])
4242
implementation 'androidx.cardview:cardview:1.0.0'
4343
implementation 'androidx.annotation:annotation:1.1.0'
44+
implementation 'androidx.preference:preference:1.1.1'
45+
implementation "androidx.core:core-ktx:1.3.1"
46+
implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'
47+
48+
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
49+
implementation 'org.jetbrains:annotations:19.0.0'
50+
4451
implementation 'com.google.android.material:material:1.2.0'
52+
4553
implementation 'com.anjlab.android.iab.v3:library:1.1.0'
4654
implementation 'com.jakewharton:butterknife:8.5.1'
4755
//annotationProcessor 'com.jakewharton:butterknife-compiler:10.1.0'
4856
implementation 'com.nineoldandroids:library:2.4.0'
49-
implementation 'org.jetbrains:annotations:15.0'
50-
implementation "androidx.core:core-ktx:+"
51-
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
52-
implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'
53-
}
54-
repositories {
55-
mavenCentral()
56-
}
57+
}

app/release/app-release.aab

87.5 KB
Binary file not shown.

app/src/main/AndroidManifest.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
<application
1313
android:label="@string/app_name"
1414
android:icon="@mipmap/ic_launcher"
15+
android:roundIcon="@mipmap/ic_launcher_round"
1516
android:name=".App"
1617
android:largeHeap="true"
1718
android:theme="@style/AppTheme"

app/src/main/java/com/mcal/disassembler/App.kt

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,24 @@ package com.mcal.disassembler
33
import android.annotation.SuppressLint
44
import android.app.Application
55
import android.content.Context
6+
import android.content.SharedPreferences
7+
import android.preference.PreferenceManager
8+
import com.mcal.disassembler.data.Database
9+
import org.jetbrains.annotations.Nullable
610

711
class App : Application() {
812
override fun onCreate() {
913
super.onCreate()
1014
context = this
15+
preferences = PreferenceManager.getDefaultSharedPreferences(this)
16+
Database(getContext())
1117
}
1218

1319
companion object {
1420
@SuppressLint("StaticFieldLeak")
1521
private var context: Context? = null
22+
private var app: Application? = null
23+
private var preferences: SharedPreferences? = null
1624

1725
@JvmStatic
1826
fun getContext(): Context? {
@@ -21,5 +29,21 @@ class App : Application() {
2129
}
2230
return context
2331
}
32+
33+
fun getApp(): Application? {
34+
if (app == null) {
35+
app = App()
36+
}
37+
return app
38+
}
39+
40+
@JvmStatic
41+
@Nullable
42+
fun getPreferences(): SharedPreferences {
43+
if (preferences == null) {
44+
preferences = PreferenceManager.getDefaultSharedPreferences(this.getContext())
45+
}
46+
return preferences!!
47+
}
2448
}
2549
}

app/src/main/java/com/mcal/disassembler/activities/MainActivity.java

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,20 +5,16 @@
55
import android.content.Intent;
66
import android.content.pm.PackageManager;
77
import android.database.Cursor;
8-
import android.database.DataSetObserver;
98
import android.os.Build;
109
import android.os.Bundle;
1110
import android.provider.Settings;
1211
import android.view.View;
13-
import android.widget.LinearLayout;
1412

1513
import androidx.appcompat.app.AppCompatActivity;
16-
import androidx.recyclerview.widget.LinearLayoutManager;
1714
import androidx.recyclerview.widget.RecyclerView;
1815

1916
import com.google.android.material.appbar.MaterialToolbar;
2017
import com.mcal.disassembler.R;
21-
import com.mcal.disassembler.adapters.ListAdapter;
2218
import com.mcal.disassembler.data.Database;
2319
import com.mcal.disassembler.data.RecentsManager;
2420
import com.mcal.disassembler.interfaces.MainView;
@@ -29,7 +25,6 @@
2925
import com.nbsp.materialfilepicker.ui.FilePickerActivity;
3026

3127
import java.util.ArrayList;
32-
import java.util.Objects;
3328
import java.util.regex.Pattern;
3429

3530
public class MainActivity extends AppCompatActivity implements MainView {
@@ -41,7 +36,7 @@ public class MainActivity extends AppCompatActivity implements MainView {
4136

4237
ProgressDialog dialog;
4338
private MaterialToolbar toolbar;
44-
private LinearLayout welcomeLayout;
39+
//private LinearLayout welcomeLayout;
4540
private RecyclerView recentOpened;
4641
private ArrayList<String> paths = new ArrayList<>();
4742
private String path;
@@ -58,9 +53,10 @@ public void onCreate(Bundle savedInstanceState) {
5853
}
5954

6055
new Database(this);
61-
welcomeLayout = findViewById(R.id.welcome_layout);
56+
//welcomeLayout = findViewById(R.id.welcome_layout);
6257
recentOpened = findViewById(R.id.items);
63-
setupList();
58+
59+
//setupList();
6460
}
6561

6662
@SuppressWarnings("ConstantConditions")
@@ -72,11 +68,12 @@ private void setupToolbar(String title) {
7268
getSupportActionBar().setDisplayShowHomeEnabled(false);
7369
}
7470

75-
public void setupList() {
71+
/*public void setupList() {
7672
Cursor cursor = RecentsManager.getRecents();
7773
if (cursor.getCount() == 0) {
7874
recentOpened.setVisibility(View.GONE);
7975
welcomeLayout.setVisibility(View.VISIBLE);
76+
recentOpened.setAdapter(new ListAdapter(paths, this));
8077
} else {
8178
welcomeLayout.setVisibility(View.INVISIBLE);
8279
recentOpened.setVisibility(View.VISIBLE);
@@ -88,7 +85,7 @@ public void setupList() {
8885
}
8986
recentOpened.setAdapter(new ListAdapter(paths, this));
9087
}
91-
}
88+
}*/
9289

9390
void updateRecents() {
9491
paths.clear();

app/src/main/java/com/mcal/disassembler/adapters/ListAdapter.java

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
import android.view.LayoutInflater;
44
import android.view.View;
55
import android.view.ViewGroup;
6+
import android.widget.Filter;
7+
import android.widget.Filterable;
68
import android.widget.LinearLayout;
79

810
import androidx.appcompat.widget.AppCompatImageView;
@@ -15,13 +17,20 @@
1517

1618
import java.util.ArrayList;
1719

18-
public class ListAdapter extends RecyclerView.Adapter<ListAdapter.ViewHolder> {
20+
public class ListAdapter extends RecyclerView.Adapter<ListAdapter.ViewHolder> implements Filterable {
21+
private SearchFilter filter;
1922
private ArrayList<String> paths;
2023
private MainView mainView;
2124

2225
public ListAdapter(ArrayList<String> paths, MainView mainView) {
2326
this.paths = paths;
2427
this.mainView = mainView;
28+
filter = new SearchFilter();
29+
}
30+
31+
@Override
32+
public Filter getFilter() {
33+
return filter;
2534
}
2635

2736
@Override
@@ -63,4 +72,28 @@ static class ViewHolder extends RecyclerView.ViewHolder {
6372
remove = view.findViewById(R.id.item_remove);
6473
}
6574
}
75+
76+
private class SearchFilter extends Filter {
77+
private ArrayList<String> items_backup = paths;
78+
private ArrayList<String> filteredItems = new ArrayList<>();
79+
80+
@Override
81+
protected Filter.FilterResults performFiltering(CharSequence p1) {
82+
filteredItems.clear();
83+
84+
for (int x = 0; x < items_backup.size(); x++) {
85+
String query = p1.toString().toLowerCase();
86+
if (items_backup.get(x).toLowerCase().contains((query))) {
87+
filteredItems.add(items_backup.get(x));
88+
}
89+
}
90+
return null;
91+
}
92+
93+
@Override
94+
protected void publishResults(CharSequence p1, Filter.FilterResults p2) {
95+
paths = filteredItems;
96+
notifyDataSetChanged();
97+
}
98+
}
6699
}

app/src/main/java/com/mcal/disassembler/data/Database.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import android.content.Context;
44
import android.database.sqlite.SQLiteDatabase;
55
import android.database.sqlite.SQLiteOpenHelper;
6+
import android.util.Log;
67

78
public final class Database extends SQLiteOpenHelper {
89

@@ -24,6 +25,6 @@ public void onCreate(SQLiteDatabase db) {
2425

2526
@Override
2627
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
27-
28+
Log.e("onUpgrade", ": " + db + ": " + oldVersion + ": " + newVersion);
2829
}
2930
}

0 commit comments

Comments
 (0)