Skip to content
This repository was archived by the owner on Apr 14, 2025. It is now read-only.

Commit 8854cec

Browse files
Better status report via text/progress bars
Removed some unused strings
1 parent e24d9ab commit 8854cec

10 files changed

Lines changed: 94 additions & 48 deletions

File tree

app/src/main/java/com/spse/javamodsoptimiser/MainActivity.java

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ public class MainActivity extends AppCompatActivity {
5959
private PowerManager.WakeLock wakelock;
6060
private ImageButton filePickerBtn;
6161

62+
private TextView currentTaskTextView;
6263
private ProgressBar currentTaskProgressBar;
6364
private ProgressBar totalTaskProgressBar;
6465
private ProgressBar modItemProgressBar;
@@ -82,6 +83,7 @@ protected void onCreate(Bundle savedInstanceState) {
8283
settingDialog = new Dialog(this);
8384
settingDialog.setContentView(R.layout.setting_layout);
8485

86+
currentTaskTextView = findViewById(R.id.currentTaskTextView2);
8587
currentTaskProgressBar = findViewById(R.id.currentTaskProgressBar);
8688
totalTaskProgressBar = findViewById(R.id.totalTaskProgressBar);
8789
modList = findViewById(R.id.listView);
@@ -227,11 +229,9 @@ public void launchAsyncTask(int step){
227229
Toast.makeText(MainActivity.this, "The async task launcher tried to launch a non-existing task ! (".concat(Integer.toString(step)).concat(")"),Toast.LENGTH_LONG).show();
228230
return;
229231
}
230-
setTotalTaskProgress(step);
232+
setTotalTaskProgress(Math.max(0, step-1));
231233
}
232234

233-
234-
235235
public void setWakelockState(boolean awake){
236236
if(awake){
237237
PowerManager powerManager = (PowerManager) getSystemService(POWER_SERVICE);
@@ -345,11 +345,14 @@ public void setCurrentTaskProgress(int progress){
345345
currentTaskProgressBar.setProgress(progress, true);
346346
}
347347

348-
private void setTotalTaskProgress(int progress){
348+
public void setTotalTaskProgress(int progress){
349349
totalTaskProgressBar.setProgress(progress, true);
350350
modItemProgressBar.setProgress(progress, true);
351351
}
352352

353+
public void setCurrentTaskTextView(String taskAtHand){
354+
currentTaskTextView.setText(taskAtHand);
355+
}
353356

354357
public void launchOptimizationManually(View view) {
355358
launchOptimization();

app/src/main/java/com/spse/javamodsoptimiser/asynctask/FileCopier.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
import com.spse.javamodsoptimiser.MainActivity;
88
import com.spse.javamodsoptimiser.MinecraftMod;
9+
import com.spse.javamodsoptimiser.R;
910

1011
import java.io.File;
1112
import java.io.FileInputStream;
@@ -24,6 +25,11 @@ public FileCopier(MainActivity activity){
2425
activityWeakReference = new WeakReference<>(activity);
2526
}
2627

28+
@Override
29+
protected void onPreExecute() {
30+
activityWeakReference.get().setCurrentTaskTextView(activityWeakReference.get().getResources().getString(R.string.process_status_copying));
31+
}
32+
2733
protected Void doInBackground(Void... aVoid) {
2834

2935
//Parse arguments

app/src/main/java/com/spse/javamodsoptimiser/asynctask/FileParser.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55

66
import com.spse.javamodsoptimiser.MainActivity;
77
import com.spse.javamodsoptimiser.MinecraftMod;
8+
import com.spse.javamodsoptimiser.R;
89

910
import java.io.File;
1011
import java.io.FileFilter;
@@ -21,6 +22,11 @@ public FileParser(MainActivity activity){
2122
activityWeakReference = new WeakReference<>(activity);
2223
}
2324

25+
@Override
26+
protected void onPreExecute() {
27+
activityWeakReference.get().setCurrentTaskTextView(activityWeakReference.get().getResources().getString(R.string.process_status_parsing));
28+
}
29+
2430
FileFilter numberFilter = new FileFilter() {
2531
@Override
2632
public boolean accept(File pathname) {

app/src/main/java/com/spse/javamodsoptimiser/asynctask/FileUnzipper.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55

66
import com.spse.javamodsoptimiser.FileManager;
77
import com.spse.javamodsoptimiser.MainActivity;
8+
import com.spse.javamodsoptimiser.R;
89

910
import java.io.BufferedInputStream;
1011
import java.io.BufferedOutputStream;
@@ -26,6 +27,11 @@ public FileUnzipper(MainActivity activity){
2627
activityWeakReference = new WeakReference<>(activity);
2728
}
2829

30+
@Override
31+
protected void onPreExecute() {
32+
activityWeakReference.get().setCurrentTaskTextView(activityWeakReference.get().getResources().getString(R.string.process_status_unzipping));
33+
}
34+
2935
@Override
3036
protected Void doInBackground(Void[] voids) {
3137
try {

app/src/main/java/com/spse/javamodsoptimiser/asynctask/FileZipper.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import com.spse.javamodsoptimiser.FileManager;
77
import com.spse.javamodsoptimiser.MainActivity;
88
import com.spse.javamodsoptimiser.MinecraftMod;
9+
import com.spse.javamodsoptimiser.R;
910
import com.spse.javamodsoptimiser.setting.Setting;
1011

1112
import java.io.File;
@@ -30,6 +31,11 @@ public FileZipper(MainActivity activity){
3031
activityWeakReference = new WeakReference<>(activity);
3132
}
3233

34+
@Override
35+
protected void onPreExecute() {
36+
activityWeakReference.get().setCurrentTaskTextView(activityWeakReference.get().getResources().getString(R.string.process_status_zipping));
37+
}
38+
3339
@Override
3440
protected Void doInBackground(Void... voids) {
3541

@@ -144,7 +150,9 @@ protected void onPostExecute(Void aVoid) {
144150
//Go for the next
145151
MainActivity activity = activityWeakReference.get();
146152
activity.modStack.remove(0);
153+
activity.setTotalTaskProgress(7);
147154
activity.setWakelockState(false);
155+
activityWeakReference.get().setCurrentTaskTextView(activityWeakReference.get().getResources().getString(R.string.process_status_none));
148156

149157
activity.launchOptimization();
150158

app/src/main/java/com/spse/javamodsoptimiser/asynctask/JsonMinifier.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55

66
import com.spse.javamodsoptimiser.MainActivity;
77
import com.spse.javamodsoptimiser.MinecraftMod;
8+
import com.spse.javamodsoptimiser.R;
89
import com.spse.javamodsoptimiser.setting.Setting;
910
import com.whoischarles.util.json.Minify;
1011

@@ -25,6 +26,10 @@ public JsonMinifier(MainActivity activity){
2526
activityWeakReference = new WeakReference<>(activity);
2627
}
2728

29+
@Override
30+
protected void onPreExecute() {
31+
activityWeakReference.get().setCurrentTaskTextView(activityWeakReference.get().getResources().getString(R.string.process_status_json));
32+
}
2833

2934
@Override
3035
protected Void doInBackground(Void[] voids) {

app/src/main/java/com/spse/javamodsoptimiser/asynctask/SoundOptimizer.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import com.arthenica.mobileffmpeg.FFmpeg;
88
import com.spse.javamodsoptimiser.MainActivity;
99
import com.spse.javamodsoptimiser.MinecraftMod;
10+
import com.spse.javamodsoptimiser.R;
1011
import com.spse.javamodsoptimiser.setting.Setting;
1112

1213
import java.io.IOException;
@@ -27,6 +28,11 @@ public SoundOptimizer(MainActivity activity){
2728
activityWeakReference = new WeakReference<>(activity);
2829
}
2930

31+
@Override
32+
protected void onPreExecute() {
33+
activityWeakReference.get().setCurrentTaskTextView(activityWeakReference.get().getResources().getString(R.string.process_status_sound));
34+
}
35+
3036
@Override
3137
public Void doInBackground(Void[] voids){
3238

app/src/main/java/com/spse/javamodsoptimiser/asynctask/TextureOptimizer.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import com.nicdahlquist.pngquant.LibPngQuant;
88
import com.spse.javamodsoptimiser.MainActivity;
99
import com.spse.javamodsoptimiser.MinecraftMod;
10+
import com.spse.javamodsoptimiser.R;
1011
import com.spse.javamodsoptimiser.setting.Setting;
1112

1213
import java.io.File;
@@ -28,6 +29,11 @@ public TextureOptimizer(MainActivity activity){
2829
activityWeakReference = new WeakReference<>(activity);
2930
}
3031

32+
@Override
33+
protected void onPreExecute() {
34+
activityWeakReference.get().setCurrentTaskTextView(activityWeakReference.get().getResources().getString(R.string.process_status_texture));
35+
}
36+
3137
@Override
3238
protected Void doInBackground(Void[] voids){
3339

app/src/main/res/layout/main_layout.xml

Lines changed: 36 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
android:layout_height="wrap_content"
2929
android:layout_marginTop="30dp"
3030

31-
android:text="Current task progress"
31+
android:text="Current task progress:"
3232
android:textColor="@color/PrimaryText"
3333
android:textStyle="bold"
3434

@@ -37,6 +37,21 @@
3737
app:layout_constraintStart_toStartOf="parent"
3838
app:layout_constraintTop_toBottomOf="@+id/appTitle" />
3939

40+
<TextView
41+
android:id="@+id/currentTaskTextView2"
42+
android:layout_width="wrap_content"
43+
android:layout_height="wrap_content"
44+
45+
android:paddingStart="5dp"
46+
47+
android:text="@string/process_status_none"
48+
android:textColor="@color/PrimaryText"
49+
android:textStyle="bold"
50+
51+
app:layout_constraintBottom_toBottomOf="@+id/currentTaskTextView"
52+
app:layout_constraintStart_toEndOf="@+id/currentTaskTextView"
53+
app:layout_constraintTop_toTopOf="@+id/currentTaskTextView" />
54+
4055
<ProgressBar
4156
android:id="@+id/currentTaskProgressBar"
4257
style="?android:attr/progressBarStyleHorizontal"
@@ -102,6 +117,24 @@
102117
app:layout_constraintTop_toTopOf="parent"
103118
app:layout_constraintVertical_bias="0.39" />
104119

120+
<ScrollView
121+
android:layout_width="match_parent"
122+
android:layout_height="0dp"
123+
android:layout_marginHorizontal="15dp"
124+
android:layout_marginVertical="15dp"
125+
126+
app:layout_constraintBottom_toTopOf="@+id/settingButton"
127+
app:layout_constraintEnd_toEndOf="parent"
128+
app:layout_constraintStart_toStartOf="parent"
129+
app:layout_constraintTop_toBottomOf="@+id/optimizingModsTitle">
130+
131+
<LinearLayout
132+
android:id="@+id/listView"
133+
android:layout_width="match_parent"
134+
android:layout_height="wrap_content"
135+
android:orientation="vertical" />
136+
</ScrollView>
137+
105138
<ImageButton
106139
android:id="@+id/addModButton"
107140
android:layout_width="wrap_content"
@@ -138,24 +171,6 @@
138171
app:layout_constraintVertical_bias="0.95"
139172
app:srcCompat="@drawable/ic_round_settings_24" />
140173

141-
<ScrollView
142-
android:layout_width="match_parent"
143-
android:layout_height="0dp"
144-
android:layout_marginHorizontal="15dp"
145-
android:layout_marginVertical="15dp"
146-
147-
app:layout_constraintBottom_toTopOf="@+id/settingButton"
148-
app:layout_constraintEnd_toEndOf="parent"
149-
app:layout_constraintStart_toStartOf="parent"
150-
app:layout_constraintTop_toBottomOf="@+id/optimizingModsTitle">
151-
152-
<LinearLayout
153-
android:id="@+id/listView"
154-
android:layout_width="match_parent"
155-
android:layout_height="wrap_content"
156-
android:orientation="vertical" />
157-
</ScrollView>
158-
159174
<Button
160175
android:id="@+id/optimizeButton"
161176
android:layout_width="wrap_content"
@@ -178,4 +193,6 @@
178193
app:layout_constraintTop_toTopOf="@+id/settingButton" />
179194

180195

196+
197+
181198
</androidx.constraintlayout.widget.ConstraintLayout>

app/src/main/res/values/strings.xml

Lines changed: 8 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -3,31 +3,14 @@
33
<string name="Button_choose_file">Pick file</string>
44
<string name="File_picked">File Picked:</string>
55

6-
<string name="mod_info_title">Information:</string>
7-
<string name="mod_info_name">Name: </string>
8-
<string name="mod_info_minecraft_version">Made for: </string>
9-
<string name="mod_info_version">Version: </string>
10-
<string name="mod_info_texture_number">Textures: </string>
11-
<string name="mod_info_sound_number">Sounds: </string>
12-
<string name="mod_info_unknown">Unknown, wait for parsing…</string>
13-
14-
<string name="option_title">Options:</string>
15-
<string name="option_delete_original">Delete original file</string>
16-
<string name="option_really_low_quality">Make the mod even smaller (reduced quality)</string>
17-
<string name="option_parallel_workload">Multi-Threaded workload (usually faster)</string>
18-
<string name="option_remove_signature">Remove signature files</string>
19-
<string name="options_remove_miscellaneous">Remove miscellaneous files</string>
20-
21-
<string name="process_status_title">Status:</string>
22-
<string name="process_status_copying">Copying:</string>
23-
<string name="process_status_unzipping">Unzipping:</string>
24-
<string name="process_status_parsing">Parsing:</string>
25-
<string name="process_status_texture">Textures:</string>
26-
<string name="process_status_sound">Sounds:</string>
27-
<string name="process_status_json">Minify:</string>
28-
<string name="process_status_zipping">Repacking:</string>
29-
30-
<string name="text_output_optimizing">Optimizing </string>
6+
<string name="process_status_none">none</string>
7+
<string name="process_status_copying">copying</string>
8+
<string name="process_status_unzipping">unzipping</string>
9+
<string name="process_status_parsing">parsing</string>
10+
<string name="process_status_texture">optimizing textures</string>
11+
<string name="process_status_sound">optimizing sounds</string>
12+
<string name="process_status_json">minifying</string>
13+
<string name="process_status_zipping">repacking</string>
3114

3215
<string name="dialog_illegal_path_title">Illegal path !</string>
3316
<string name="dialog_illegal_path_message">You can\'t take mods which are in the app folder !</string>

0 commit comments

Comments
 (0)