Aegis/app/src/main/java/me/impy/aegis/ui/PreferencesActivity.java
2018-05-14 16:53:27 +02:00

54 lines
1.8 KiB
Java

package me.impy.aegis.ui;
import android.os.Bundle;
import javax.crypto.Cipher;
import me.impy.aegis.db.slots.Slot;
import me.impy.aegis.ui.dialogs.PasswordDialogFragment;
public class PreferencesActivity extends AegisActivity implements PasswordDialogFragment.Listener {
private PreferencesFragment _fragment;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
_fragment = new PreferencesFragment();
_fragment.setArguments(getIntent().getExtras());
getFragmentManager().beginTransaction().replace(android.R.id.content, _fragment).commit();
}
@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
// pass permission request results to the fragment
_fragment.onRequestPermissionsResult(requestCode, permissions, grantResults);
}
@Override
protected final void onRestoreInstanceState(final Bundle inState) {
// pass the stored result intent back to the fragment
if (inState.containsKey("result")) {
_fragment.setResult(inState.getParcelable("result"));
}
super.onRestoreInstanceState(inState);
}
@Override
protected final void onSaveInstanceState(final Bundle outState) {
// save the result intent of the fragment
// this is done so we don't lose anything if the fragment calls recreate on this activity
outState.putParcelable("result", _fragment.getResult());
super.onSaveInstanceState(outState);
}
@Override
public void onSlotResult(Slot slot, Cipher cipher) {
_fragment.onSlotResult(slot, cipher);
}
@Override
public void onException(Exception e) {
_fragment.onException(e);
}
}