diff --git a/app/src/main/java/org/gnucash/android/app/GnuCashApplication.java b/app/src/main/java/org/gnucash/android/app/GnuCashApplication.java
index 9539f838f..8d9b5c150 100644
--- a/app/src/main/java/org/gnucash/android/app/GnuCashApplication.java
+++ b/app/src/main/java/org/gnucash/android/app/GnuCashApplication.java
@@ -455,6 +455,18 @@ public static boolean shouldBackupTransactions(Context context) {
return sharedPrefs.getBoolean(context.getString(R.string.key_delete_transaction_backup), true);
}
+ /**
+ * Returns true
if setting is enabled to backup the book before importing a book,
+ * false
otherwise.
+ *
+ * @param context The context.
+ * @return true
if the book should be backed-up.
+ */
+ public static boolean shouldBackupForImport(Context context) {
+ SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
+ return sharedPrefs.getBoolean(context.getString(R.string.key_import_book_backup), true);
+ }
+
/**
* Get the default transaction type.
*
diff --git a/app/src/main/java/org/gnucash/android/ui/account/AccountsActivity.java b/app/src/main/java/org/gnucash/android/ui/account/AccountsActivity.java
index 0b96bcf76..c61333457 100644
--- a/app/src/main/java/org/gnucash/android/ui/account/AccountsActivity.java
+++ b/app/src/main/java/org/gnucash/android/ui/account/AccountsActivity.java
@@ -498,7 +498,8 @@ public static void startXmlFileChooser(Fragment fragment) {
* @param onFinishTask Task to be executed when import is complete
*/
public static void importXmlFileFromIntent(Activity context, Intent data, TaskDelegate onFinishTask) {
- new ImportAsyncTask(context, onFinishTask, true).execute(data.getData());
+ boolean backup = GnuCashApplication.shouldBackupForImport(context);
+ new ImportAsyncTask(context, onFinishTask, backup).execute(data.getData());
}
/**
diff --git a/app/src/main/res/values/donottranslate.xml b/app/src/main/res/values/donottranslate.xml
index b73e12e04..5d2fca5ab 100644
--- a/app/src/main/res/values/donottranslate.xml
+++ b/app/src/main/res/values/donottranslate.xml
@@ -38,6 +38,7 @@
backup_location
export_accounts_csv_key
delete_transaction_backup
+ import_book_backup
gnucash_pocket_backup.gnca
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index ee465587a..8f188c54a 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -248,8 +248,10 @@
Enable DropBox
Enable ownCloud
Backup
- When delete transaction?
- Backup active book when delete a transaction?
+ When deleting a transaction?
+ Backup the active book before deleting a transaction?
+ When importing a book?
+ Backup the active book before importing a book?
Enable exporting to DropBox
Enable exporting to ownCloud
Backup Preferences
diff --git a/app/src/main/res/xml/fragment_backup_preferences.xml b/app/src/main/res/xml/fragment_backup_preferences.xml
index 15e51918d..82c6f83d9 100644
--- a/app/src/main/res/xml/fragment_backup_preferences.xml
+++ b/app/src/main/res/xml/fragment_backup_preferences.xml
@@ -50,6 +50,12 @@
android:key="@string/key_delete_transaction_backup"
android:summary="@string/summary_delete_transaction_backup"
android:title="@string/title_delete_transaction_backup" />
+
+