Synchronisation label changes (#6213)

This commit is contained in:
Keunes 2023-01-14 14:46:19 +01:00 committed by GitHub
parent 63e9d7f696
commit f995fd96df
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 104 additions and 72 deletions

View File

@ -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);
}
}

View File

@ -6,12 +6,18 @@
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_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,29 +51,10 @@
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"
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"
@ -73,12 +62,22 @@
android:visibility="gone"
android:layout_gravity="right" />
<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" />
<Button
android:id="@+id/butLogin"
android:layout_width="wrap_content"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/gpodnetauth_login_butLabel" />
</LinearLayout>
android:text="@string/synchronization_login_butLabel" />
</LinearLayout>

View File

@ -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"

View File

@ -1,20 +1,31 @@
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
<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>

View File

@ -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>

View File

@ -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>

View File

@ -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>