0
0
mirror of https://github.com/ankidroid/Anki-Android.git synced 2024-09-20 20:03:05 +02:00

Fix the remaining confirmation dialogs

I missed several confirmation dialogs in 5c8a309, due to my incorrect assumption that the compiler would catch all of the old usages.
This time I grepped to make sure I got them all.
This commit is contained in:
Timothy Rae 2017-02-26 19:01:55 +09:00 committed by Tim Rae
parent 995e0a1776
commit b8bd6349e8
2 changed files with 79 additions and 87 deletions

View File

@ -446,41 +446,37 @@ public class ModelBrowser extends AnkiActivity {
*/
private void deleteModelDialog() {
if (mModelIds.size() > 1) {
Runnable confirm = new Runnable() {
@Override
public void run() {
try {
col.modSchema(false);
deleteModel();
} catch (ConfirmModSchemaException e) {
//This should never be reached because modSchema() didn't throw an exception
}
dismissContextMenu();
}
};
Runnable cancel = new Runnable() {
@Override
public void run() {
dismissContextMenu();
}
};
try {
col.modSchema();
ConfirmationDialog d = new ConfirmationDialog() {
public void confirm() {
try {
col.modSchema(false);
deleteModel();
} catch (ConfirmModSchemaException e) {
//This should never be reached because modSchema() didn't throw an exception
}
dismissContextMenu();
}
public void cancel() {
dismissContextMenu();
}
};
ConfirmationDialog d = new ConfirmationDialog();
d.setArgs(getResources().getString(R.string.model_delete_warning));
d.setConfirm(confirm);
d.setCancel(cancel);
ModelBrowser.this.showDialogFragment(d);
} catch (ConfirmModSchemaException e) {
ConfirmationDialog c = new ConfirmationDialog() {
public void confirm() {
try {
col.modSchema(false);
deleteModel();
} catch (ConfirmModSchemaException e) {
//This should never be reached because we gave false argument to modSchema
}
dismissContextMenu();
}
public void cancel() {
dismissContextMenu();
}
};
ConfirmationDialog c = new ConfirmationDialog();
c.setArgs(getResources().getString(R.string.full_sync_confirmation));
c.setConfirm(confirm);
c.setCancel(cancel);
showDialogFragment(c);
}
}

View File

@ -62,6 +62,12 @@ public class ModelFieldEditor extends AnkiActivity {
private ModelEditorContextMenu mContextMenu;
private EditText mFieldNameInput;
private Runnable mConfirmDialogCancel = new Runnable() {
@Override
public void run() {
dismissContextMenu();
}
};
// ----------------------------------------------------------------------------
// ANDROID METHODS
@ -200,8 +206,11 @@ public class ModelFieldEditor extends AnkiActivity {
} catch (ConfirmModSchemaException e) {
//Create dialogue to for schema change
ConfirmationDialog c = new ConfirmationDialog() {
public void confirm() {
ConfirmationDialog c = new ConfirmationDialog();
c.setArgs(getResources().getString(R.string.full_sync_confirmation));
Runnable confirm = new Runnable() {
@Override
public void run() {
mCol.modSchemaNoCheck();
String fieldName = mFieldNameInput.getText().toString()
.replaceAll("[\'\"\\n\\r\\[\\]\\(\\)]", "");
@ -209,13 +218,10 @@ public class ModelFieldEditor extends AnkiActivity {
new DeckTask.TaskData(new Object[]{mMod, fieldName}));
dismissContextMenu();
}
public void cancel() {
dismissContextMenu();
}
};
c.setArgs(getResources().getString(R.string.full_sync_confirmation));
c.setConfirm(confirm);
c.setCancel(mConfirmDialogCancel);
ModelFieldEditor.this.showDialogFragment(c);
}
mCol.getModels().update(mMod);
@ -233,43 +239,34 @@ public class ModelFieldEditor extends AnkiActivity {
* Processing time scales with number of items
*/
private void deleteFieldDialog() {
Runnable confirm = new Runnable() {
@Override
public void run() {
try {
mCol.modSchema(false);
deleteField();
} catch (ConfirmModSchemaException e) {
//This should never be reached because modSchema() didn't throw an exception
}
dismissContextMenu();
}
};
if (mFieldLabels.size() < 2) {
showToast(getResources().getString(R.string.toast_last_field));
} else {
try {
mCol.modSchema();
ConfirmationDialog d = new ConfirmationDialog() {
public void confirm() {
try {
mCol.modSchema(false);
deleteField();
} catch (ConfirmModSchemaException e) {
//This should never be reached because modSchema() didn't throw an exception
}
dismissContextMenu();
}
public void cancel() {
dismissContextMenu();
}
};
ConfirmationDialog d = new ConfirmationDialog();
d.setArgs(getResources().getString(R.string.field_delete_warning));
d.setConfirm(confirm);
d.setCancel(mConfirmDialogCancel);
showDialogFragment(d);
} catch (ConfirmModSchemaException e) {
ConfirmationDialog c = new ConfirmationDialog() {
public void confirm() {
try {
mCol.modSchema(false);
deleteField();
} catch (ConfirmModSchemaException e) {
//This should never be reached because we gave false argument to modSchema
}
dismissContextMenu();
}
public void cancel() {
dismissContextMenu();
}
};
ConfirmationDialog c = new ConfirmationDialog();
c.setConfirm(confirm);
c.setCancel(mConfirmDialogCancel);
c.setArgs(getResources().getString(R.string.full_sync_confirmation));
showDialogFragment(c);
}
@ -316,8 +313,11 @@ public class ModelFieldEditor extends AnkiActivity {
} catch (ConfirmModSchemaException e) {
// Handler mod schema confirmation
ConfirmationDialog c = new ConfirmationDialog() {
public void confirm() {
ConfirmationDialog c = new ConfirmationDialog();
c.setArgs(getResources().getString(R.string.full_sync_confirmation));
Runnable confirm = new Runnable() {
@Override
public void run() {
try {
mCol.modSchema(false);
renameField();
@ -326,13 +326,9 @@ public class ModelFieldEditor extends AnkiActivity {
}
dismissContextMenu();
}
public void cancel() {
dismissContextMenu();
}
};
c.setArgs(getResources().getString(R.string.full_sync_confirmation));
c.setConfirm(confirm);
c.setCancel(mConfirmDialogCancel);
ModelFieldEditor.this.showDialogFragment(c);
}
}
@ -379,8 +375,11 @@ public class ModelFieldEditor extends AnkiActivity {
} catch (ConfirmModSchemaException e) {
// Handle mod schema confirmation
ConfirmationDialog c = new ConfirmationDialog() {
public void confirm() {
ConfirmationDialog c = new ConfirmationDialog();
c.setArgs(getResources().getString(R.string.full_sync_confirmation));
Runnable confirm = new Runnable() {
@Override
public void run() {
try {
mCol.modSchemaNoCheck();
String newPosition = mFieldNameInput.getText().toString();
@ -393,12 +392,9 @@ public class ModelFieldEditor extends AnkiActivity {
throw new RuntimeException(e);
}
}
public void cancel() {
dismissContextMenu();
}
};
c.setArgs(getResources().getString(R.string.full_sync_confirmation));
c.setConfirm(confirm);
c.setCancel(mConfirmDialogCancel);
ModelFieldEditor.this.showDialogFragment(c);
} catch (JSONException e) {
throw new RuntimeException(e);
@ -462,19 +458,19 @@ public class ModelFieldEditor extends AnkiActivity {
new DeckTask.TaskData(new Object[]{mMod, mCurrentPos}));
} catch (ConfirmModSchemaException e) {
// Handler mMod schema confirmation
ConfirmationDialog c = new ConfirmationDialog() {
public void confirm() {
ConfirmationDialog c = new ConfirmationDialog();
c.setArgs(getResources().getString(R.string.full_sync_confirmation));
Runnable confirm = new Runnable() {
@Override
public void run() {
mCol.modSchemaNoCheck();
DeckTask.launchDeckTask(DeckTask.TASK_TYPE_CHANGE_SORT_FIELD, mChangeFieldHandler,
new DeckTask.TaskData(new Object[]{mMod, mCurrentPos}));
dismissContextMenu();
}
public void cancel() {
dismissContextMenu();
}
};
c.setArgs(getResources().getString(R.string.full_sync_confirmation));
c.setConfirm(confirm);
c.setCancel(mConfirmDialogCancel);
ModelFieldEditor.this.showDialogFragment(c);
}
}