mirror of
https://github.com/beemdevelopment/Aegis.git
synced 2025-04-20 22:09:12 +00:00
parent
be222cd877
commit
b5c957d4d1
3 changed files with 40 additions and 10 deletions
|
@ -214,12 +214,10 @@ public class EditProfileActivity extends AegisActivity {
|
|||
return;
|
||||
}
|
||||
|
||||
new AlertDialog.Builder(this)
|
||||
.setTitle("Discard changes?")
|
||||
.setMessage("Your changes have not been saved")
|
||||
.setPositiveButton(R.string.save, (dialog, which) -> onSave())
|
||||
.setNegativeButton(R.string.discard, (dialog, which) -> super.onBackPressed())
|
||||
.show();
|
||||
Dialogs.showDiscardDialog(this,
|
||||
(dialog, which) -> onSave(),
|
||||
(dialog, which) -> super.onBackPressed()
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -23,6 +23,7 @@ import me.impy.aegis.db.slots.Slot;
|
|||
import me.impy.aegis.db.slots.SlotCollection;
|
||||
import me.impy.aegis.db.slots.SlotException;
|
||||
import me.impy.aegis.helpers.FingerprintHelper;
|
||||
import me.impy.aegis.ui.dialogs.Dialogs;
|
||||
import me.impy.aegis.ui.dialogs.FingerprintDialogFragment;
|
||||
import me.impy.aegis.ui.dialogs.PasswordDialogFragment;
|
||||
import me.impy.aegis.ui.views.SlotAdapter;
|
||||
|
@ -33,6 +34,8 @@ public class SlotManagerActivity extends AegisActivity implements SlotAdapter.Li
|
|||
private SlotCollection _slots;
|
||||
private SlotAdapter _adapter;
|
||||
|
||||
private boolean _edited = false;
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
|
@ -92,12 +95,11 @@ public class SlotManagerActivity extends AegisActivity implements SlotAdapter.Li
|
|||
findViewById(R.id.button_add_fingerprint).setVisibility(visibility);
|
||||
}
|
||||
|
||||
private boolean onSave() {
|
||||
private void onSave() {
|
||||
Intent intent = new Intent();
|
||||
intent.putExtra("slots", _slots);
|
||||
setResult(RESULT_OK, intent);
|
||||
finish();
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -105,12 +107,15 @@ public class SlotManagerActivity extends AegisActivity implements SlotAdapter.Li
|
|||
switch (item.getItemId()) {
|
||||
case android.R.id.home:
|
||||
onBackPressed();
|
||||
return true;
|
||||
break;
|
||||
case R.id.action_save:
|
||||
return onSave();
|
||||
onSave();
|
||||
break;
|
||||
default:
|
||||
return super.onOptionsItemSelected(item);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -119,6 +124,19 @@ public class SlotManagerActivity extends AegisActivity implements SlotAdapter.Li
|
|||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBackPressed() {
|
||||
if (!_edited) {
|
||||
super.onBackPressed();
|
||||
return;
|
||||
}
|
||||
|
||||
Dialogs.showDiscardDialog(this,
|
||||
(dialog, which) -> onSave(),
|
||||
(dialog, which) -> super.onBackPressed()
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onEditSlot(Slot slot) {
|
||||
/*EditText textName = new EditText(this);
|
||||
|
@ -129,6 +147,7 @@ public class SlotManagerActivity extends AegisActivity implements SlotAdapter.Li
|
|||
.setView(textName)
|
||||
.setPositiveButton(android.R.string.ok, (dialog, whichButton) -> {
|
||||
String name = textName.getText().toString();
|
||||
_edited = true;
|
||||
})
|
||||
.setNegativeButton(android.R.string.cancel, null)
|
||||
.show();*/
|
||||
|
@ -147,6 +166,7 @@ public class SlotManagerActivity extends AegisActivity implements SlotAdapter.Li
|
|||
.setPositiveButton(android.R.string.yes, (dialog, whichButton) -> {
|
||||
_slots.remove(slot);
|
||||
_adapter.removeSlot(slot);
|
||||
_edited = true;
|
||||
updateFingerprintButton();
|
||||
})
|
||||
.setNegativeButton(android.R.string.no, null)
|
||||
|
@ -164,6 +184,7 @@ public class SlotManagerActivity extends AegisActivity implements SlotAdapter.Li
|
|||
|
||||
_slots.add(slot);
|
||||
_adapter.addSlot(slot);
|
||||
_edited = true;
|
||||
updateFingerprintButton();
|
||||
}
|
||||
|
||||
|
|
|
@ -4,6 +4,8 @@ import android.app.Activity;
|
|||
import android.content.DialogInterface;
|
||||
import android.support.v7.app.AlertDialog;
|
||||
|
||||
import me.impy.aegis.R;
|
||||
|
||||
public class Dialogs {
|
||||
private Dialogs() {
|
||||
|
||||
|
@ -17,4 +19,13 @@ public class Dialogs {
|
|||
.setNegativeButton(android.R.string.no, null)
|
||||
.show();
|
||||
}
|
||||
|
||||
public static AlertDialog showDiscardDialog(Activity activity, DialogInterface.OnClickListener onSave, DialogInterface.OnClickListener onDiscard) {
|
||||
return new AlertDialog.Builder(activity)
|
||||
.setTitle("Discard changes?")
|
||||
.setMessage("Your changes have not been saved")
|
||||
.setPositiveButton(R.string.save, onSave)
|
||||
.setNegativeButton(R.string.discard, onDiscard)
|
||||
.show();
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue