aboutsummaryrefslogtreecommitdiff
path: root/app/src/main/res
diff options
context:
space:
mode:
authorAditya Wasan <adityawasan55@gmail.com>2020-10-15 20:46:39 +0530
committerGitHub <noreply@github.com>2020-10-15 20:46:39 +0530
commit92f1aab25da12411aa256c3b763e0cb6182e9320 (patch)
tree6dd854cfe0df29e8dfda3eb46c994d1192bce62a /app/src/main/res
parenta025ecf0730ed0a0eb2b0431fd1564657a97b073 (diff)
Add option to automatically sync repository on app launch (#1137)
* Add option to automatically sync repository on app launch Signed-off-by: Aditya Wasan <adityawasan55@gmail.com> * Pull repo if user is not authenticated Signed-off-by: Aditya Wasan <adityawasan55@gmail.com> * Address review comments Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Hijack incoming intent rather than copying it Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Initialize password repository before using it Signed-off-by: Aditya Wasan <adityawasan55@gmail.com> Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
Diffstat (limited to 'app/src/main/res')
-rw-r--r--app/src/main/res/layout/activity_launch.xml59
-rw-r--r--app/src/main/res/values/strings.xml3
-rw-r--r--app/src/main/res/xml/preference.xml6
3 files changed, 68 insertions, 0 deletions
diff --git a/app/src/main/res/layout/activity_launch.xml b/app/src/main/res/layout/activity_launch.xml
new file mode 100644
index 00000000..df6e4f7b
--- /dev/null
+++ b/app/src/main/res/layout/activity_launch.xml
@@ -0,0 +1,59 @@
+<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:background="?attr/colorPrimary"
+ android:orientation="vertical">
+
+ <androidx.appcompat.widget.AppCompatImageView
+ android:id="@+id/app_icon"
+ android:layout_width="100dp"
+ android:layout_height="100dp"
+ android:contentDescription="@string/app_icon_hint"
+ android:src="@mipmap/ic_launcher"
+ android:transitionName="transition_first_app_icon"
+ app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintEnd_toEndOf="parent"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintTop_toTopOf="parent" />
+
+ <androidx.appcompat.widget.AppCompatTextView
+ android:id="@+id/app_name"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_centerHorizontal="true"
+ android:layout_marginTop="16dp"
+ android:text="@string/app_name"
+ android:textAppearance="@style/TextAppearance.MaterialComponents.Headline5"
+ android:textColor="@color/color_control_normal"
+ android:textStyle="bold"
+ android:transitionName="transition_first_run_app_name"
+ app:layout_constraintEnd_toEndOf="parent"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintTop_toBottomOf="@+id/app_icon" />
+
+ <ProgressBar
+ android:id="@+id/progress_bar"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:visibility="invisible"
+ app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintEnd_toEndOf="parent"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintTop_toTopOf="parent"
+ app:layout_constraintVertical_bias="0.85" />
+
+ <androidx.appcompat.widget.AppCompatTextView
+ android:id="@+id/sync"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="8dp"
+ android:text="@string/syncing"
+ android:textAppearance="@style/TextAppearance.MaterialComponents.Body1"
+ android:textColor="@color/color_control_normal"
+ android:visibility="invisible"
+ app:layout_constraintEnd_toEndOf="parent"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintTop_toBottomOf="@id/progress_bar" />
+
+</androidx.constraintlayout.widget.ConstraintLayout>
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index cc9f1f24..f8be3859 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -407,6 +407,9 @@
<!-- SSH port validation -->
<string name="ssh_scheme_needed_title">Potentially incorrect URL</string>
<string name="ssh_scheme_needed_message">It appears that your URL contains a custom port, but does not specify the ssh:// scheme.\nThis can cause the port to be considered a part of your path. Press OK here to fix the URL.</string>
+ <string name="sync_on_launch_title">Sync on launch</string>
+ <string name="sync_on_launch_summary">Sync passwords when application is launched</string>
+ <string name="syncing">Syncing…</string>
<!-- Proxy configuration activity -->
<string name="proxy_hostname">Proxy hostname</string>
diff --git a/app/src/main/res/xml/preference.xml b/app/src/main/res/xml/preference.xml
index 58a173c5..6631133f 100644
--- a/app/src/main/res/xml/preference.xml
+++ b/app/src/main/res/xml/preference.xml
@@ -138,6 +138,12 @@
app:key="biometric_auth"
app:summary="@string/biometric_auth_summary"
app:title="@string/biometric_auth_title" />
+ <CheckBoxPreference
+ app:defaultValue="false"
+ app:key="sync_on_launch"
+ app:persistent="true"
+ app:summary="@string/sync_on_launch_summary"
+ app:title="@string/sync_on_launch_title" />
</PreferenceCategory>
<PreferenceCategory app:title="@string/pref_category_title_passwords">
<EditTextPreference