Always launch AuthActivity on lock if MainActivity is resumed

pull/111/head
Alexander Bakker 6 years ago committed by Michael Schättgen
parent ff584a323d
commit 66f99eb4d4

@ -17,6 +17,7 @@ import androidx.annotation.CallSuper;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
public abstract class AegisActivity extends AppCompatActivity implements AegisApplication.LockListener { public abstract class AegisActivity extends AppCompatActivity implements AegisApplication.LockListener {
private boolean _resumed;
private AegisApplication _app; private AegisApplication _app;
@Override @Override
@ -53,6 +54,18 @@ public abstract class AegisActivity extends AppCompatActivity implements AegisAp
super.onDestroy(); super.onDestroy();
} }
@Override
protected void onResume() {
super.onResume();
_resumed = true;
}
@Override
protected void onPause() {
super.onPause();
_resumed = false;
}
@CallSuper @CallSuper
@Override @Override
public void onLocked() { public void onLocked() {
@ -84,6 +97,13 @@ public abstract class AegisActivity extends AppCompatActivity implements AegisAp
} }
} }
/**
* Reports whether this Activity has been resumed. (i.e. onResume was called)
*/
protected boolean isOpen() {
return _resumed;
}
/** /**
* Reports whether this Activity instance has become an orphan. This can happen if * Reports whether this Activity instance has become an orphan. This can happen if
* the vault was locked by an external trigger while the Activity was still open. * the vault was locked by an external trigger while the Activity was still open.

@ -489,7 +489,6 @@ public class MainActivity extends AegisActivity implements EntryListView.Listene
return true; return true;
case R.id.action_lock: case R.id.action_lock:
_app.lock(); _app.lock();
startAuthActivity();
return true; return true;
default: default:
if (item.getGroupId() == R.id.action_filter_group) { if (item.getGroupId() == R.id.action_filter_group) {
@ -615,6 +614,11 @@ public class MainActivity extends AegisActivity implements EntryListView.Listene
public void onLocked() { public void onLocked() {
_entryListView.clearEntries(); _entryListView.clearEntries();
_loaded = false; _loaded = false;
if (isOpen()) {
startAuthActivity();
}
super.onLocked(); super.onLocked();
} }
} }

Loading…
Cancel
Save