diff --git a/app/build.gradle b/app/build.gradle index 85cadd61..33cc9880 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -41,7 +41,7 @@ dependencies { implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'com.getbase:floatingactionbutton:1.10.1' implementation 'com.github.apl-devs:appintro:v4.2.2' - implementation 'com.github.avito-tech:krop:3e65e12' + implementation 'com.github.avito-tech:krop:0.43' implementation 'com.madgag.spongycastle:core:1.58.0.0' implementation 'com.mattprecious.swirl:swirl:1.0.0' implementation 'de.hdodenhof:circleimageview:2.2.0' diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index e7a907de..b1c5a0f1 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -15,11 +15,11 @@ android:label="Aegis" android:supportsRtl="true" tools:replace="android:theme" - android:theme="@style/AppTheme.NoActionBar"> + android:theme="@style/AppTheme.NoActionBar" + tools:ignore="GoogleAppIndexingWarning"> @@ -40,12 +40,9 @@ + android:theme="@style/Theme.Intro"> - + diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/AegisActivity.java b/app/src/main/java/com/beemdevelopment/aegis/ui/AegisActivity.java index 3dfafd9e..5af2e269 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/ui/AegisActivity.java +++ b/app/src/main/java/com/beemdevelopment/aegis/ui/AegisActivity.java @@ -1,5 +1,6 @@ package com.beemdevelopment.aegis.ui; +import android.content.Intent; import android.os.Bundle; import android.view.WindowManager; @@ -18,6 +19,15 @@ public abstract class AegisActivity extends AppCompatActivity { super.onCreate(savedInstanceState); _app = (AegisApplication) getApplication(); + // if the app was killed, relaunch MainActivity and close everything else + if (!(this instanceof MainActivity) && !(this instanceof AuthActivity) && _app.getDatabaseManager().isLocked()) { + Intent intent = new Intent(this, MainActivity.class); + intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); + startActivity(intent); + finish(); + return; + } + // set FLAG_SECURE on the window of every AegisActivity if (getPreferences().isSecureScreenEnabled()) { getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE); diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/MainActivity.java b/app/src/main/java/com/beemdevelopment/aegis/ui/MainActivity.java index 8599712c..bcc6bcb7 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/ui/MainActivity.java +++ b/app/src/main/java/com/beemdevelopment/aegis/ui/MainActivity.java @@ -114,9 +114,7 @@ public class MainActivity extends AegisActivity implements EntryListView.Listene super.onNewIntent(intent); setIntent(intent); - if (!doShortcutActions() || _db.isLocked()) { - unlockDatabase(null); - } + doShortcutActions(); } @Override @@ -305,15 +303,11 @@ public class MainActivity extends AegisActivity implements EntryListView.Listene startActivityForResult(scannerActivity, CODE_SCAN); } - private boolean doShortcutActions() { - // return false if an action was blocked by a locked database - // otherwise, always return true + private void doShortcutActions() { Intent intent = getIntent(); String action = intent.getStringExtra("action"); - if (action == null) { - return true; - } else if (_db.isLocked()) { - return false; + if (action == null || _db.isLocked()) { + return; } switch (action) { @@ -323,11 +317,9 @@ public class MainActivity extends AegisActivity implements EntryListView.Listene } intent.removeExtra("action"); - return true; } public void startActivityForResult(Intent intent, int requestCode) { - intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); super.startActivityForResult(intent, requestCode); } @@ -361,6 +353,7 @@ public class MainActivity extends AegisActivity implements EntryListView.Listene } updateLockIcon(); + doShortcutActions(); } private BottomSheetDialog createBottomSheet(final DatabaseEntry entry) { diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/PreferencesFragment.java b/app/src/main/java/com/beemdevelopment/aegis/ui/PreferencesFragment.java index 34c95774..6b258669 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/ui/PreferencesFragment.java +++ b/app/src/main/java/com/beemdevelopment/aegis/ui/PreferencesFragment.java @@ -339,6 +339,11 @@ public class PreferencesFragment extends PreferenceFragmentCompat { return true; } }); + } + + @Override + public void onActivityCreated (Bundle savedInstanceState) { + super.onActivityCreated(savedInstanceState); updateEncryptionPreferences(); }