diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index a65c1bdfb0..166b896dc6 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -342,7 +342,8 @@
+ android:launchMode="singleTask"
+ android:theme="@style/Theme.Session.DayNight.NoActionBar"/>
+
+
diff --git a/res/drawable/ic_baseline_visibility_24.xml b/res/drawable/ic_baseline_visibility_24.xml
new file mode 100644
index 0000000000..a3e222a2d1
--- /dev/null
+++ b/res/drawable/ic_baseline_visibility_24.xml
@@ -0,0 +1,10 @@
+
+
+
diff --git a/res/drawable/ic_baseline_visibility_off_24.xml b/res/drawable/ic_baseline_visibility_off_24.xml
new file mode 100644
index 0000000000..92c48569fd
--- /dev/null
+++ b/res/drawable/ic_baseline_visibility_off_24.xml
@@ -0,0 +1,10 @@
+
+
+
diff --git a/res/layout/prompt_passphrase_activity.xml b/res/layout/prompt_passphrase_activity.xml
index fd88069b91..372a67663b 100644
--- a/res/layout/prompt_passphrase_activity.xml
+++ b/res/layout/prompt_passphrase_activity.xml
@@ -6,7 +6,8 @@
android:id="@+id/prompt_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:orientation="vertical">
+ android:orientation="vertical"
+ tools:context="org.thoughtcrime.securesms.PassphrasePromptActivity">
+ android:layout_alignParentTop="true">
+ tools:visibility="visible">
+ android:paddingEnd="40dp"
+ tools:text="password"/>
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
diff --git a/res/values/attrs.xml b/res/values/attrs.xml
index f4239b0104..4bc4d4db39 100644
--- a/res/values/attrs.xml
+++ b/res/values/attrs.xml
@@ -26,9 +26,8 @@
-
-
+
diff --git a/res/values/themes.xml b/res/values/themes.xml
index 8a8e9e240a..59c0ffd766 100644
--- a/res/values/themes.xml
+++ b/res/values/themes.xml
@@ -43,6 +43,10 @@
- ?dividerVertical
+ - @drawable/ic_baseline_visibility_24
+ - @drawable/ic_baseline_visibility_off_24
+ - @drawable/ic_baseline_arrow_forward_24
+
- @color/black
- @color/black
diff --git a/src/org/thoughtcrime/securesms/PassphrasePromptActivity.java b/src/org/thoughtcrime/securesms/PassphrasePromptActivity.java
index fedb1649c0..475c097647 100644
--- a/src/org/thoughtcrime/securesms/PassphrasePromptActivity.java
+++ b/src/org/thoughtcrime/securesms/PassphrasePromptActivity.java
@@ -23,9 +23,6 @@ import android.content.Intent;
import android.graphics.PorterDuff;
import android.os.Build;
import android.os.Bundle;
-import androidx.core.hardware.fingerprint.FingerprintManagerCompat;
-import androidx.core.os.CancellationSignal;
-import androidx.appcompat.widget.Toolbar;
import android.text.Editable;
import android.text.InputType;
import android.text.SpannableString;
@@ -49,6 +46,9 @@ import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.TextView;
+import androidx.core.hardware.fingerprint.FingerprintManagerCompat;
+import androidx.core.os.CancellationSignal;
+
import org.thoughtcrime.securesms.animation.AnimationCompleteListener;
import org.thoughtcrime.securesms.components.AnimatingToggle;
import org.thoughtcrime.securesms.crypto.InvalidPassphraseException;
@@ -76,8 +76,8 @@ public class PassphrasePromptActivity extends PassphraseActivity {
private Button lockScreenButton;
private EditText passphraseText;
-// private ImageButton showButton;
-// private ImageButton hideButton;
+ private ImageButton showButton;
+ private ImageButton hideButton;
private AnimatingToggle visibilityToggle;
private FingerprintManagerCompat fingerprintManager;
@@ -91,8 +91,6 @@ public class PassphrasePromptActivity extends PassphraseActivity {
public void onCreate(Bundle savedInstanceState) {
Log.i(TAG, "onCreate()");
dynamicLanguage.onCreate(this);
- getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
- getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
super.onCreate(savedInstanceState);
setContentView(R.layout.prompt_passphrase_activity);
@@ -203,11 +201,10 @@ public class PassphrasePromptActivity extends PassphraseActivity {
private void initializeResources() {
-// ImageButton okButton = findViewById(R.id.ok_button);
- Toolbar toolbar = findViewById(R.id.toolbar);
+ ImageButton okButton = findViewById(R.id.ok_button);
-// showButton = findViewById(R.id.passphrase_visibility);
-// hideButton = findViewById(R.id.passphrase_visibility_off);
+ showButton = findViewById(R.id.passphrase_visibility);
+ hideButton = findViewById(R.id.passphrase_visibility_off);
visibilityToggle = findViewById(R.id.button_toggle);
passphraseText = findViewById(R.id.passphrase_edit);
passphraseAuthContainer = findViewById(R.id.password_auth_container);
@@ -217,20 +214,16 @@ public class PassphrasePromptActivity extends PassphraseActivity {
fingerprintCancellationSignal = new CancellationSignal();
fingerprintListener = new FingerprintListener();
-// setSupportActionBar(toolbar);
-// getSupportActionBar().setTitle("");
-
SpannableString hint = new SpannableString(" " + getString(R.string.PassphrasePromptActivity_enter_passphrase));
hint.setSpan(new RelativeSizeSpan(0.9f), 0, hint.length(), Spanned.SPAN_INCLUSIVE_INCLUSIVE);
hint.setSpan(new TypefaceSpan("sans-serif"), 0, hint.length(), Spanned.SPAN_INCLUSIVE_INCLUSIVE);
passphraseText.setHint(hint);
-// okButton.setOnClickListener(new OkButtonClickListener());
-// showButton.setOnClickListener(new ShowButtonOnClickListener());
-// hideButton.setOnClickListener(new HideButtonOnClickListener());
+ okButton.setOnClickListener(new OkButtonClickListener());
+ showButton.setOnClickListener(new ShowButtonOnClickListener());
+ hideButton.setOnClickListener(new HideButtonOnClickListener());
passphraseText.setOnEditorActionListener(new PassphraseActionListener());
- passphraseText.setImeActionLabel(getString(R.string.prompt_passphrase_activity__unlock),
- EditorInfo.IME_ACTION_DONE);
+ passphraseText.setImeActionLabel(getString(R.string.prompt_passphrase_activity__unlock), EditorInfo.IME_ACTION_DONE);
fingerprintPrompt.setImageResource(R.drawable.ic_fingerprint_white_48dp);
fingerprintPrompt.getBackground().setColorFilter(getResources().getColor(R.color.signal_primary), PorterDuff.Mode.SRC_IN);
@@ -316,7 +309,7 @@ public class PassphrasePromptActivity extends PassphraseActivity {
private class ShowButtonOnClickListener implements OnClickListener {
@Override
public void onClick(View v) {
-// visibilityToggle.display(hideButton);
+ visibilityToggle.display(hideButton);
setPassphraseVisibility(true);
}
}
@@ -324,7 +317,7 @@ public class PassphrasePromptActivity extends PassphraseActivity {
private class HideButtonOnClickListener implements OnClickListener {
@Override
public void onClick(View v) {
-// visibilityToggle.display(showButton);
+ visibilityToggle.display(showButton);
setPassphraseVisibility(false);
}
}