diff --git a/app/src/main/java/xdsopl/robot36/MainActivity.java b/app/src/main/java/xdsopl/robot36/MainActivity.java
index 52b9c0d..8af776d 100644
--- a/app/src/main/java/xdsopl/robot36/MainActivity.java
+++ b/app/src/main/java/xdsopl/robot36/MainActivity.java
@@ -85,6 +85,7 @@ public class MainActivity extends AppCompatActivity {
private int fgColor;
private int thinColor;
private int tintColor;
+ private boolean autoSave;
private void setStatus(int id) {
setTitle(id);
@@ -198,7 +199,8 @@ public class MainActivity extends AppCompatActivity {
if (imageBuffer.line < imageBuffer.height)
return;
imageBuffer.line = -1;
- storeBitmap(Bitmap.createBitmap(imageBuffer.pixels, imageBuffer.width, imageBuffer.height, Bitmap.Config.ARGB_8888));
+ if (autoSave)
+ storeBitmap(Bitmap.createBitmap(imageBuffer.pixels, imageBuffer.width, imageBuffer.height, Bitmap.Config.ARGB_8888));
}
private void initAudioRecord() {
@@ -302,6 +304,20 @@ public class MainActivity extends AppCompatActivity {
initAudioRecord();
}
+ private void setAutoSave(boolean newAutoSave) {
+ if (autoSave == newAutoSave)
+ return;
+ autoSave = newAutoSave;
+ updateAutoSaveMenu();
+ }
+
+ private void updateAutoSaveMenu() {
+ if (autoSave)
+ menu.findItem(R.id.action_enable_auto_save).setChecked(true);
+ else
+ menu.findItem(R.id.action_disable_auto_save).setChecked(true);
+ }
+
private void updateRecordRateMenu() {
switch (recordRate) {
case 8000:
@@ -385,6 +401,7 @@ public class MainActivity extends AppCompatActivity {
state.putInt("recordChannel", recordChannel);
state.putInt("audioSource", audioSource);
state.putInt("audioFormat", audioFormat);
+ state.putBoolean("autoSave", autoSave);
state.putString("language", language);
super.onSaveInstanceState(state);
}
@@ -397,6 +414,7 @@ public class MainActivity extends AppCompatActivity {
edit.putInt("recordChannel", recordChannel);
edit.putInt("audioSource", audioSource);
edit.putInt("audioFormat", audioFormat);
+ edit.putBoolean("autoSave", autoSave);
edit.putString("language", language);
edit.apply();
}
@@ -407,6 +425,7 @@ public class MainActivity extends AppCompatActivity {
final int defaultChannelSelect = 0;
final int defaultAudioSource = MediaRecorder.AudioSource.MIC;
final int defaultAudioFormat = AudioFormat.ENCODING_PCM_FLOAT;
+ final boolean defaultAutoSave = true;
final String defaultLanguage = "system";
if (state == null) {
SharedPreferences pref = getPreferences(Context.MODE_PRIVATE);
@@ -415,6 +434,7 @@ public class MainActivity extends AppCompatActivity {
recordChannel = pref.getInt("recordChannel", defaultChannelSelect);
audioSource = pref.getInt("audioSource", defaultAudioSource);
audioFormat = pref.getInt("audioFormat", defaultAudioFormat);
+ autoSave = pref.getBoolean("autoSave", defaultAutoSave);
language = pref.getString("language", defaultLanguage);
} else {
AppCompatDelegate.setDefaultNightMode(state.getInt("nightMode", AppCompatDelegate.getDefaultNightMode()));
@@ -422,6 +442,7 @@ public class MainActivity extends AppCompatActivity {
recordChannel = state.getInt("recordChannel", defaultChannelSelect);
audioSource = state.getInt("audioSource", defaultAudioSource);
audioFormat = state.getInt("audioFormat", defaultAudioFormat);
+ autoSave = state.getBoolean("autoSave", defaultAutoSave);
language = state.getString("language", defaultLanguage);
}
super.onCreate(state);
@@ -469,6 +490,7 @@ public class MainActivity extends AppCompatActivity {
updateRecordChannelMenu();
updateAudioSourceMenu();
updateAudioFormatMenu();
+ updateAutoSaveMenu();
return true;
}
@@ -615,6 +637,14 @@ public class MainActivity extends AppCompatActivity {
setAudioFormat(AudioFormat.ENCODING_PCM_16BIT);
return true;
}
+ if (id == R.id.action_enable_auto_save) {
+ setAutoSave(true);
+ return true;
+ }
+ if (id == R.id.action_disable_auto_save) {
+ setAutoSave(false);
+ return true;
+ }
if (id == R.id.action_enable_night_mode) {
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES);
return true;
diff --git a/app/src/main/res/drawable/outline_scan_delete_24.xml b/app/src/main/res/drawable/outline_scan_delete_24.xml
new file mode 100644
index 0000000..bcee1cc
--- /dev/null
+++ b/app/src/main/res/drawable/outline_scan_delete_24.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/app/src/main/res/menu/menu_main.xml b/app/src/main/res/menu/menu_main.xml
index 2f9610c..fad5c30 100644
--- a/app/src/main/res/menu/menu_main.xml
+++ b/app/src/main/res/menu/menu_main.xml
@@ -205,6 +205,25 @@
app:iconTint="@color/tint" />
+ -
+
+
- Dekodiertes SSTV-Bild
Frequenzdiagramm
Spitzenpegel des Audiosignals
+ Automatisches Speichern
Nachtmodus
Aktivieren
Deaktivieren
diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml
index 3193177..307eb92 100644
--- a/app/src/main/res/values-pl/strings.xml
+++ b/app/src/main/res/values-pl/strings.xml
@@ -36,6 +36,7 @@
Zdekodowano obraz SSTV
Wykres częstotliwości
Szczytowy poziom sygnału audio
+ Automatyczne zapisywanie
Tryb nocny
Włącz
Wyłącz
diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml
index 2f0eace..10297fd 100755
--- a/app/src/main/res/values-pt-rBR/strings.xml
+++ b/app/src/main/res/values-pt-rBR/strings.xml
@@ -36,6 +36,7 @@
Imagem SSTV decodificada
Gráfico de frequência
Nível de sinal de áudio máximo
+ Salvamento automático
Modo noturno
Habilitar
Desabilitar
diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml
index 7c9c9b5..bbd89a4 100644
--- a/app/src/main/res/values-ru/strings.xml
+++ b/app/src/main/res/values-ru/strings.xml
@@ -36,6 +36,7 @@
Декодированное изображение SSTV
График частот
Пиковый уровень аудиосигнала
+ Автосохранение
Ночной режим
Включить
Выключить
diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml
index e111861..2b5811b 100644
--- a/app/src/main/res/values-zh-rCN/strings.xml
+++ b/app/src/main/res/values-zh-rCN/strings.xml
@@ -36,6 +36,7 @@
解码的SSTV图像
频率图
音频峰值信号水平
+ 自动保存
夜间模式
开启
禁用
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index f8b465f..5883d8f 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -68,6 +68,7 @@
Decoded SSTV picture
Frequency plot
Peak audio signal level
+ Auto Save
Night Mode
Enable
Disable