summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/preferences/synchronization/NextcloudAuthenticationFragment.java6
-rw-r--r--app/src/main/res/layout/gpodnetauth_credentials.xml63
-rw-r--r--app/src/main/res/layout/gpodnetauth_device.xml6
-rw-r--r--app/src/main/res/layout/gpodnetauth_dialog.xml31
-rw-r--r--app/src/main/res/layout/gpodnetauth_host.xml17
-rw-r--r--app/src/main/res/layout/nextcloud_auth_dialog.xml12
-rw-r--r--ui/i18n/src/main/res/values/strings.xml41
7 files changed, 104 insertions, 72 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/synchronization/NextcloudAuthenticationFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/synchronization/NextcloudAuthenticationFragment.java
index 3578dace5..14440be47 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/synchronization/NextcloudAuthenticationFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/synchronization/NextcloudAuthenticationFragment.java
@@ -39,9 +39,9 @@ public class NextcloudAuthenticationFragment extends DialogFragment
viewBinding = NextcloudAuthDialogBinding.inflate(getLayoutInflater());
dialog.setView(viewBinding.getRoot());
- viewBinding.loginButton.setOnClickListener(v -> {
+ viewBinding.chooseHostButton.setOnClickListener(v -> {
viewBinding.errorText.setVisibility(View.GONE);
- viewBinding.loginButton.setVisibility(View.GONE);
+ viewBinding.chooseHostButton.setVisibility(View.GONE);
viewBinding.loginProgressContainer.setVisibility(View.VISIBLE);
nextcloudLoginFlow = new NextcloudLoginFlow(AntennapodHttpClient.getHttpClient(),
viewBinding.serverUrlText.getText().toString(), getContext(), this);
@@ -87,6 +87,6 @@ public class NextcloudAuthenticationFragment extends DialogFragment
viewBinding.loginProgressContainer.setVisibility(View.GONE);
viewBinding.errorText.setVisibility(View.VISIBLE);
viewBinding.errorText.setText(errorMessage);
- viewBinding.loginButton.setVisibility(View.VISIBLE);
+ viewBinding.chooseHostButton.setVisibility(View.VISIBLE);
}
}
diff --git a/app/src/main/res/layout/gpodnetauth_credentials.xml b/app/src/main/res/layout/gpodnetauth_credentials.xml
index e318f11d9..a5b8c594d 100644
--- a/app/src/main/res/layout/gpodnetauth_credentials.xml
+++ b/app/src/main/res/layout/gpodnetauth_credentials.xml
@@ -7,11 +7,17 @@
android:orientation="vertical">
<TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="16dp"
+ android:text="@string/synchronization_credentials_explanation" />
+
+ <TextView
android:id="@+id/createAccountWarning"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/gpodnetauth_encryption_warning"
- android:textColor="#F44336"
+ android:textColor="?attr/icon_red"
android:textStyle="bold"
android:visibility="invisible" />
@@ -25,6 +31,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/username_label"
+ android:inputType="textNoSuggestions"
android:lines="1"
android:imeOptions="actionNext|flagNoFullscreen" />
@@ -33,6 +40,7 @@
<com.google.android.material.textfield.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
+ android:layout_marginBottom="16dp"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox">
<com.google.android.material.textfield.TextInputEditText
@@ -43,42 +51,33 @@
android:inputType="textPassword"
android:lines="1"
android:imeOptions="actionNext|flagNoFullscreen"
- android:imeActionLabel="@string/gpodnetauth_login_butLabel" />
+ android:imeActionLabel="@string/synchronization_login_butLabel" />
</com.google.android.material.textfield.TextInputLayout>
- <LinearLayout
- android:layout_width="match_parent"
+ <ProgressBar
+ android:id="@+id/progBarLogin"
+ android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:orientation="horizontal"
- android:gravity="end|center_vertical">
-
- <TextView
- android:id="@+id/credentialsError"
- android:layout_width="0dp"
- android:layout_height="wrap_content"
- android:layout_weight="1"
- android:textColor="?attr/icon_red"
- android:textSize="@dimen/text_size_small"
- android:maxLines="2"
- android:ellipsize="end"
- android:gravity="center"
- tools:text="Error message"
- tools:background="@android:color/holo_green_dark" />
-
- <ProgressBar
- android:id="@+id/progBarLogin"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:visibility="gone"
- android:layout_gravity="right" />
+ android:visibility="gone"
+ android:layout_gravity="right" />
- <Button
- android:id="@+id/butLogin"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="@string/gpodnetauth_login_butLabel" />
+ <TextView
+ android:id="@+id/credentialsError"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:textColor="?attr/icon_red"
+ android:textSize="@dimen/text_size_small"
+ android:maxLines="2"
+ android:ellipsize="end"
+ android:gravity="center"
+ android:visibility="gone"
+ tools:text=" message" />
- </LinearLayout>
+ <Button
+ android:id="@+id/butLogin"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/synchronization_login_butLabel" />
</LinearLayout>
diff --git a/app/src/main/res/layout/gpodnetauth_device.xml b/app/src/main/res/layout/gpodnetauth_device.xml
index cb133f684..6e051ecf3 100644
--- a/app/src/main/res/layout/gpodnetauth_device.xml
+++ b/app/src/main/res/layout/gpodnetauth_device.xml
@@ -6,6 +6,12 @@
android:layout_height="wrap_content"
android:orientation="vertical">
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="16dp"
+ android:text="@string/synchronization_selectDevice_explanation" />
+
<com.google.android.material.textfield.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
diff --git a/app/src/main/res/layout/gpodnetauth_dialog.xml b/app/src/main/res/layout/gpodnetauth_dialog.xml
index a70b76a49..b5814a4e5 100644
--- a/app/src/main/res/layout/gpodnetauth_dialog.xml
+++ b/app/src/main/res/layout/gpodnetauth_dialog.xml
@@ -1,20 +1,31 @@
<?xml version="1.0" encoding="utf-8"?>
-<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:padding="16dp"
- android:clipToPadding="false">
+<ScrollView
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:padding="16dp"
+ android:clipToPadding="false">
+
<ViewFlipper
android:id="@+id/viewflipper"
android:layout_width="match_parent"
android:layout_height="wrap_content"
+ android:measureAllChildren="false"
android:inAnimation="@anim/slide_right_in"
android:outAnimation="@anim/slide_left_out">
- <include layout="@layout/gpodnetauth_host" />
- <include layout="@layout/gpodnetauth_credentials" />
- <include layout="@layout/gpodnetauth_device" />
- <include layout="@layout/gpodnetauth_finish" />
+ <include
+ layout="@layout/gpodnetauth_host" />
+
+ <include
+ layout="@layout/gpodnetauth_credentials" />
+
+ <include
+ layout="@layout/gpodnetauth_device" />
+
+ <include
+ layout="@layout/gpodnetauth_finish" />
</ViewFlipper>
-</ScrollView> \ No newline at end of file
+
+</ScrollView>
diff --git a/app/src/main/res/layout/gpodnetauth_host.xml b/app/src/main/res/layout/gpodnetauth_host.xml
index bcee9b880..7f2d16f11 100644
--- a/app/src/main/res/layout/gpodnetauth_host.xml
+++ b/app/src/main/res/layout/gpodnetauth_host.xml
@@ -3,18 +3,26 @@
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:orientation="vertical">
+ android:orientation="vertical"
+ android:clipToPadding="false">
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="16dp"
+ android:text="@string/synchronization_host_explanation" />
<com.google.android.material.textfield.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
+ android:layout_marginBottom="16dp"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/serverUrlText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:hint="@string/gpodnetauth_host"
+ android:hint="@string/synchronization_host_label"
android:inputType="textNoSuggestions"
android:lines="1"
android:imeOptions="actionNext|flagNoFullscreen" />
@@ -23,9 +31,8 @@
<Button
android:id="@+id/chooseHostButton"
- android:layout_width="wrap_content"
+ android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_gravity="right|end"
- android:text="@string/gpodnetauth_select_server" />
+ android:text="@string/proceed_to_login_butLabel" />
</LinearLayout>
diff --git a/app/src/main/res/layout/nextcloud_auth_dialog.xml b/app/src/main/res/layout/nextcloud_auth_dialog.xml
index 08cf05ef9..c08c5b969 100644
--- a/app/src/main/res/layout/nextcloud_auth_dialog.xml
+++ b/app/src/main/res/layout/nextcloud_auth_dialog.xml
@@ -7,6 +7,12 @@
android:orientation="vertical"
android:clipToPadding="false">
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="16dp"
+ android:text="@string/synchronization_host_explanation" />
+
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/serverUrlTextInput"
android:layout_width="match_parent"
@@ -18,7 +24,7 @@
android:id="@+id/serverUrlText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:hint="@string/gpodnetauth_host"
+ android:hint="@string/synchronization_host_label"
android:inputType="textNoSuggestions"
android:lines="1"
android:imeOptions="actionNext|flagNoFullscreen" />
@@ -55,9 +61,9 @@
android:layout_marginBottom="16dp" />
<Button
- android:id="@+id/loginButton"
+ android:id="@+id/chooseHostButton"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:text="@string/gpodnetauth_login_butLabel" />
+ android:text="@string/proceed_to_login_butLabel" />
</LinearLayout>
diff --git a/ui/i18n/src/main/res/values/strings.xml b/ui/i18n/src/main/res/values/strings.xml
index cdab72bab..40015630f 100644
--- a/ui/i18n/src/main/res/values/strings.xml
+++ b/ui/i18n/src/main/res/values/strings.xml
@@ -460,20 +460,6 @@
<string name="pref_theme_title_dark">Dark</string>
<string name="pref_theme_title_trueblack">Black (AMOLED ready)</string>
<string name="pref_episode_cache_unlimited">Unlimited</string>
- <string name="synchronization_logout">Logout</string>
- <string name="pref_synchronization_logout_toast">Logout was successful</string>
- <string name="pref_gpodnet_setlogin_information_title">Change login information</string>
- <string name="pref_gpodnet_setlogin_information_sum">Change the login information for your gpodder.net account.</string>
- <string name="synchronization_sync_changes_title">Synchronize now</string>
- <string name="synchronization_full_sync_title">Force full synchronization</string>
- <string name="synchronization_login_status"><![CDATA[Logged in as <i>%1$s</i> on <i>%2$s</i>. <br/><br/>You can choose your synchronization provider again once you have logged out]]></string>
- <string name="synchronization_summary_unchoosen">You can choose from multiple providers to synchronize your subscriptions and episode play state with</string>
- <string name="synchronization_summary_nextcloud">Gpoddersync is an open-source Nextcloud app that you can easily install on your own server. The app is independent of the AntennaPod project.</string>
- <string name="synchronization_nextcloud_authenticate_browser">Grant access using the opened web browser and come back to AntennaPod.</string>
- <string name="synchronization_choose_title">Choose synchronization provider</string>
- <string name="synchronization_force_sync_summary">Re-synchronize all subscriptions and episode states</string>
- <string name="synchronization_sync_summary">Synchronize subscription and episode state changes</string>
- <string name="dialog_choose_sync_service_title">Choose synchronization provider</string>
<string name="pref_playback_speed_sum">Customize the speeds available for variable speed playback</string>
<string name="pref_feed_playback_speed_sum">The speed to use when starting audio playback for episodes in this podcast</string>
<string name="pref_feed_skip">Auto Skip</string>
@@ -631,21 +617,38 @@
<string name="auto_enable_label">Auto-enable</string>
<string name="sleep_timer_enabled_label">Sleep timer enabled</string>
- <!-- gpodder.net -->
+ <!-- Synchronisation -->
+ <string name="synchronization_choose_title">Choose synchronization provider</string>
+ <string name="synchronization_summary_unchoosen">You can choose from multiple providers to synchronize your subscriptions and episode play state with</string>
+ <string name="dialog_choose_sync_service_title">Choose synchronization provider</string>
+ <string name="gpodnet_description">Gpodder.net is an open-source podcast synchronization service that you can install on your own server. Gpodder.net is independent of the AntennaPod project.</string>
+ <string name="synchronization_summary_nextcloud">Gpoddersync is an open-source Nextcloud app that you can easily install on your own server. The app is independent of the AntennaPod project.</string>
+ <string name="synchronization_host_explanation">You can pick your own server to synchronize with. When you have identified your preferred synchronization server, please enter its address here.</string>
+ <string name="synchronization_host_label">Server address</string>
+ <string name="proceed_to_login_butLabel">Proceed to login</string>
+ <string name="synchronization_nextcloud_authenticate_browser">Grant access using the opened web browser and come back to AntennaPod.</string>
<string name="gpodnetauth_login_butLabel">Login</string>
+ <string name="synchronization_credentials_explanation">Please provide the credentials of your account on the synchronization server.</string>
<string name="gpodnetauth_encryption_warning">Password and data are not encrypted!</string>
<string name="username_label">Username</string>
<string name="password_label">Password</string>
- <string name="gpodnet_description">Gpodder.net is an open-source podcast synchronization service that you can install on your own server. Gpodder.net is independent of the AntennaPod project.</string>
- <string name="gpodnetauth_host">Hostname</string>
- <string name="gpodnetauth_select_server">Select server</string>
+ <string name="synchronization_login_butLabel">Log in</string>
+ <string name="synchronization_selectDevice_explanation">Please select the device that you created on the synchronization server or create a new one.</string>
<string name="gpodnetauth_device_name">Device name</string>
<string name="gpodnetauth_device_name_default">AntennaPod on %1$s</string>
<string name="gpodnetauth_existing_devices">Existing devices</string>
<string name="gpodnetauth_create_device">Create device</string>
<string name="gpodnetauth_finish_descr">Congratulations! Your gpodder.net account is now linked with your device. AntennaPod will from now on automatically sync subscriptions on your device with your gpodder.net account.</string>
<string name="gpodnetauth_finish_butsyncnow">Start sync now</string>
-
+ <string name="pref_gpodnet_setlogin_information_title">Change login information</string>
+ <string name="pref_gpodnet_setlogin_information_sum">Change the login information for your gpodder.net account.</string>
+ <string name="synchronization_sync_changes_title">Synchronize now</string>
+ <string name="synchronization_sync_summary">Synchronize subscription and episode state changes</string>
+ <string name="synchronization_full_sync_title">Force full synchronization</string>
+ <string name="synchronization_force_sync_summary">Re-synchronize all subscriptions and episode states</string>
+ <string name="synchronization_logout">Logout</string>
+ <string name="synchronization_login_status"><![CDATA[Logged in as <i>%1$s</i> on <i>%2$s</i>. <br/><br/>You can choose your synchronization provider again once you have logged out]]></string>
+ <string name="pref_synchronization_logout_toast">Logout was successful</string>
<string name="gpodnetsync_error_title">gpodder.net sync error</string>
<string name="gpodnetsync_error_descr">An error occurred during syncing:\u0020</string>
<string name="gpodnetsync_pref_report_successful">Successful</string>