diff --git a/app/build.gradle b/app/build.gradle index 2bcf2a14..0693f510 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -75,7 +75,7 @@ dependencies { implementation 'androidx.recyclerview:recyclerview:1.1.0' implementation 'com.google.guava:guava:28.2-android' implementation 'com.getbase:floatingactionbutton:1.10.1' - implementation 'com.github.apl-devs:appintro:5.1.0' + implementation 'com.github.apl-devs:appintro:6.0.0' implementation 'com.github.avito-tech:krop:0.44' implementation 'com.madgag.spongycastle:core:1.58.0.0' implementation 'de.hdodenhof:circleimageview:3.0.1' diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/IntroActivity.java b/app/src/main/java/com/beemdevelopment/aegis/ui/IntroActivity.java index baf28905..62aaf8bd 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/ui/IntroActivity.java +++ b/app/src/main/java/com/beemdevelopment/aegis/ui/IntroActivity.java @@ -8,6 +8,9 @@ import androidx.fragment.app.Fragment; import com.beemdevelopment.aegis.Preferences; import com.beemdevelopment.aegis.R; +import com.beemdevelopment.aegis.ui.slides.CustomAuthenticatedSlide; +import com.beemdevelopment.aegis.ui.slides.CustomAuthenticationSlide; +import com.beemdevelopment.aegis.ui.tasks.DerivationTask; import com.beemdevelopment.aegis.vault.Vault; import com.beemdevelopment.aegis.vault.VaultFile; import com.beemdevelopment.aegis.vault.VaultFileCredentials; @@ -18,12 +21,9 @@ import com.beemdevelopment.aegis.vault.slots.BiometricSlot; import com.beemdevelopment.aegis.vault.slots.PasswordSlot; import com.beemdevelopment.aegis.vault.slots.Slot; import com.beemdevelopment.aegis.vault.slots.SlotException; -import com.beemdevelopment.aegis.ui.slides.CustomAuthenticatedSlide; -import com.beemdevelopment.aegis.ui.slides.CustomAuthenticationSlide; -import com.beemdevelopment.aegis.ui.tasks.DerivationTask; -import com.github.paolorotolo.appintro.AppIntro2; -import com.github.paolorotolo.appintro.AppIntroFragment; -import com.github.paolorotolo.appintro.model.SliderPage; +import com.github.appintro.AppIntro2; +import com.github.appintro.AppIntroFragment; +import com.github.appintro.model.SliderPage; import org.json.JSONObject; @@ -56,10 +56,9 @@ public class IntroActivity extends AppIntro2 implements DerivationTask.Callback } setWizardMode(true); - showSkipButton(false); - pager.setPagingEnabled(false); - //showPagerIndicator(false); - setGoBackLock(true); + setSkipButtonEnabled(false); + showStatusBar(true); + setSystemBackButtonLocked(true); setBarColor(getResources().getColor(R.color.colorPrimary)); SliderPage homeSliderPage = new SliderPage(); @@ -67,13 +66,12 @@ public class IntroActivity extends AppIntro2 implements DerivationTask.Callback homeSliderPage.setImageDrawable(R.drawable.app_icon); homeSliderPage.setTitleColor(getResources().getColor(R.color.primary_text_dark)); homeSliderPage.setDescription(getString(R.string.app_description)); - homeSliderPage.setDescColor(getResources().getColor(R.color.primary_text_dark)); - homeSliderPage.setBgColor(getResources().getColor(R.color.colorSecondary)); + homeSliderPage.setDescriptionColor(getResources().getColor(R.color.primary_text_dark)); + homeSliderPage.setBackgroundColor(getResources().getColor(R.color.colorSecondary)); addSlide(AppIntroFragment.newInstance(homeSliderPage)); _authenticationSlide = new CustomAuthenticationSlide(); _authenticationSlide.setBgColor(getResources().getColor(R.color.colorSecondary)); - //_authenticationSlide.setDescColor(getResources().getColor(R.color.primary_text_dark)); addSlide(_authenticationSlide); _authenticatedSlide = new CustomAuthenticatedSlide(); _authenticatedSlide.setBgColor(getResources().getColor(R.color.colorSecondary)); @@ -83,7 +81,7 @@ public class IntroActivity extends AppIntro2 implements DerivationTask.Callback endSliderPage.setTitle(getString(R.string.setup_completed)); endSliderPage.setDescription(getString(R.string.setup_completed_description)); endSliderPage.setImageDrawable(R.drawable.app_icon); - endSliderPage.setBgColor(getResources().getColor(R.color.colorSecondary)); + endSliderPage.setBackgroundColor(getResources().getColor(R.color.colorSecondary)); _endSlide = AppIntroFragment.newInstance(endSliderPage); addSlide(_endSlide); @@ -111,9 +109,11 @@ public class IntroActivity extends AppIntro2 implements DerivationTask.Callback // skip to the last slide if no encryption will be used if (cryptType == CustomAuthenticationSlide.CRYPT_TYPE_NONE) { // TODO: no magic indices - getPager().setCurrentItem(4); + goToNextSlide(false); } } + + setSwipeLock(true); } @Override diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/slides/CustomAuthenticatedSlide.java b/app/src/main/java/com/beemdevelopment/aegis/ui/slides/CustomAuthenticatedSlide.java index 640101f0..bb84ca29 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/ui/slides/CustomAuthenticatedSlide.java +++ b/app/src/main/java/com/beemdevelopment/aegis/ui/slides/CustomAuthenticatedSlide.java @@ -15,17 +15,17 @@ import androidx.biometric.BiometricPrompt; import androidx.fragment.app.Fragment; import com.beemdevelopment.aegis.R; -import com.beemdevelopment.aegis.vault.slots.BiometricSlot; import com.beemdevelopment.aegis.helpers.BiometricSlotInitializer; import com.beemdevelopment.aegis.helpers.BiometricsHelper; import com.beemdevelopment.aegis.helpers.EditTextHelper; -import com.github.paolorotolo.appintro.ISlidePolicy; -import com.github.paolorotolo.appintro.ISlideSelectionListener; +import com.beemdevelopment.aegis.vault.slots.BiometricSlot; +import com.github.appintro.SlidePolicy; +import com.github.appintro.SlideSelectionListener; import com.google.android.material.snackbar.Snackbar; import javax.crypto.Cipher; -public class CustomAuthenticatedSlide extends Fragment implements ISlidePolicy, ISlideSelectionListener { +public class CustomAuthenticatedSlide extends Fragment implements SlidePolicy, SlideSelectionListener { private int _cryptType; private EditText _textPassword; private EditText _textPasswordConfirm; diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/slides/CustomAuthenticationSlide.java b/app/src/main/java/com/beemdevelopment/aegis/ui/slides/CustomAuthenticationSlide.java index 1c69fb57..b4cb9706 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/ui/slides/CustomAuthenticationSlide.java +++ b/app/src/main/java/com/beemdevelopment/aegis/ui/slides/CustomAuthenticationSlide.java @@ -13,10 +13,10 @@ import androidx.fragment.app.Fragment; import com.beemdevelopment.aegis.R; import com.beemdevelopment.aegis.helpers.BiometricsHelper; -import com.github.paolorotolo.appintro.ISlidePolicy; +import com.github.appintro.SlidePolicy; import com.google.android.material.snackbar.Snackbar; -public class CustomAuthenticationSlide extends Fragment implements ISlidePolicy, RadioGroup.OnCheckedChangeListener { +public class CustomAuthenticationSlide extends Fragment implements SlidePolicy, RadioGroup.OnCheckedChangeListener { public static final int CRYPT_TYPE_INVALID = 0; public static final int CRYPT_TYPE_NONE = 1; public static final int CRYPT_TYPE_PASS = 2;