diff --git a/app/src/main/java/me/impy/aegis/ui/IntroActivity.java b/app/src/main/java/me/impy/aegis/ui/IntroActivity.java index 81d81645..877d1234 100644 --- a/app/src/main/java/me/impy/aegis/ui/IntroActivity.java +++ b/app/src/main/java/me/impy/aegis/ui/IntroActivity.java @@ -58,7 +58,9 @@ public class IntroActivity extends AppIntro implements DerivationTask.Callback { getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE); } + setWizardMode(true); showSkipButton(false); + pager.setPagingEnabled(false); //showPagerIndicator(false); setGoBackLock(true); @@ -69,19 +71,6 @@ public class IntroActivity extends AppIntro implements DerivationTask.Callback { homeSliderPage.setBgColor(getResources().getColor(R.color.colorPrimary)); addSlide(AppIntroFragment.newInstance(homeSliderPage)); - SliderPage permSliderPage = new SliderPage(); - permSliderPage.setTitle("Permissions"); - permSliderPage.setDescription("Aegis needs permission to use your camera in order to scan QR codes. " + - "It also needs access to external storage to able to export the database."); - permSliderPage.setImageDrawable(R.drawable.intro_scanner); - permSliderPage.setBgColor(getResources().getColor(R.color.colorAccent)); - addSlide(AppIntroFragment.newInstance(permSliderPage)); - askForPermissions(new String[]{ - Manifest.permission.CAMERA, - Manifest.permission.READ_EXTERNAL_STORAGE, - Manifest.permission.WRITE_EXTERNAL_STORAGE - }, 2); - _authenticationSlide = new CustomAuthenticationSlide(); _authenticationSlide.setBgColor(getResources().getColor(R.color.colorHeaderSuccess)); addSlide(_authenticationSlide); @@ -124,7 +113,7 @@ public class IntroActivity extends AppIntro 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(5); + getPager().setCurrentItem(4); } } } diff --git a/app/src/main/java/me/impy/aegis/ui/slides/CustomAuthenticationSlide.java b/app/src/main/java/me/impy/aegis/ui/slides/CustomAuthenticationSlide.java index f3b8144d..b46f7421 100644 --- a/app/src/main/java/me/impy/aegis/ui/slides/CustomAuthenticationSlide.java +++ b/app/src/main/java/me/impy/aegis/ui/slides/CustomAuthenticationSlide.java @@ -8,8 +8,10 @@ import android.support.v4.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.widget.ArrayAdapter; import android.widget.RadioButton; import android.widget.RadioGroup; +import android.widget.Spinner; import android.widget.TextView; import com.github.paolorotolo.appintro.ISlidePolicy; @@ -23,6 +25,7 @@ public class CustomAuthenticationSlide extends Fragment implements ISlidePolicy, public static final int CRYPT_TYPE_PASS = 2; public static final int CRYPT_TYPE_FINGER = 3; + private Spinner _authenticationSpinner; private RadioGroup _buttonGroup; private int _bgColor; @@ -38,8 +41,8 @@ public class CustomAuthenticationSlide extends Fragment implements ISlidePolicy, if (manager != null) { RadioButton button = view.findViewById(R.id.rb_fingerprint); TextView text = view.findViewById(R.id.text_rb_fingerprint); - button.setVisibility(View.VISIBLE); - text.setVisibility(View.VISIBLE); + button.setEnabled(false); + text.setEnabled(false); } view.findViewById(R.id.main).setBackgroundColor(_bgColor); diff --git a/app/src/main/res/color/disabled_textview_colors.xml b/app/src/main/res/color/disabled_textview_colors.xml new file mode 100644 index 00000000..adbd5b7e --- /dev/null +++ b/app/src/main/res/color/disabled_textview_colors.xml @@ -0,0 +1,11 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_id_card.xml b/app/src/main/res/drawable/ic_id_card.xml new file mode 100644 index 00000000..724573e4 --- /dev/null +++ b/app/src/main/res/drawable/ic_id_card.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/layout/fragment_authentication_slide.xml b/app/src/main/res/layout/fragment_authentication_slide.xml index cae4dc7d..030c0f2e 100644 --- a/app/src/main/res/layout/fragment_authentication_slide.xml +++ b/app/src/main/res/layout/fragment_authentication_slide.xml @@ -1,5 +1,6 @@ + android:textSize="24sp" + android:layout_marginTop="30dp" + android:textStyle="bold" /> + + + android:layout_alignParentBottom="true" + android:layout_marginTop="12dp" + android:orientation="horizontal"> + + android:text="@string/authentication_method_none" + android:textSize="16sp" /> + + + + + + - - - - - + android:layout_marginTop="-5dp" + + android:text="@string/authentication_method_fingerprint_description" + android:textColor="@color/disabled_textview_colors" + /> + The database will be stored in plain text Password The database will be encrypted with a key derived from a password - Password & Fingerprint + Fingerprint In addition to a password, fingerprints registered on this device can be used to decrypt the database Password Enter your password @@ -45,7 +45,7 @@ None Password - Password & Fingerprint + Fingerprint