From 5175a85e5e50bff26948793336695fe05dab1c04 Mon Sep 17 00:00:00 2001 From: ByteHamster Date: Tue, 21 Jun 2022 18:46:59 +0200 Subject: Remove default gpodder sync server --- .../GpodderAuthenticationFragment.java | 43 ++----- .../main/res/layout/gpodnetauth_credentials.xml | 137 +++++++++------------ app/src/main/res/layout/gpodnetauth_host.xml | 59 +++------ .../net/sync/gpoddernet/GpodnetService.java | 2 +- ui/i18n/src/main/res/values/strings.xml | 5 +- 5 files changed, 90 insertions(+), 156 deletions(-) diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/synchronization/GpodderAuthenticationFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/synchronization/GpodderAuthenticationFragment.java index 358985cea..e3e069868 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/synchronization/GpodderAuthenticationFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/synchronization/GpodderAuthenticationFragment.java @@ -2,7 +2,6 @@ package de.danoeh.antennapod.fragment.preferences.synchronization; import android.app.Dialog; import android.content.Context; -import android.graphics.Paint; import android.os.Build; import android.os.Bundle; import android.view.View; @@ -12,31 +11,20 @@ import android.widget.Button; import android.widget.EditText; import android.widget.LinearLayout; import android.widget.ProgressBar; -import android.widget.RadioGroup; import android.widget.TextView; import android.widget.ViewFlipper; - import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.appcompat.app.AlertDialog; import androidx.fragment.app.DialogFragment; - import com.google.android.material.button.MaterialButton; -import com.google.android.material.textfield.TextInputLayout; - -import java.util.List; -import java.util.Locale; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - import de.danoeh.antennapod.R; -import de.danoeh.antennapod.core.sync.SynchronizationCredentials; import de.danoeh.antennapod.core.service.download.AntennapodHttpClient; import de.danoeh.antennapod.core.sync.SyncService; +import de.danoeh.antennapod.core.sync.SynchronizationCredentials; import de.danoeh.antennapod.core.sync.SynchronizationProviderViewData; import de.danoeh.antennapod.core.sync.SynchronizationSettings; import de.danoeh.antennapod.core.util.FileNameGenerator; -import de.danoeh.antennapod.core.util.IntentUtils; import de.danoeh.antennapod.net.sync.gpoddernet.GpodnetService; import de.danoeh.antennapod.net.sync.gpoddernet.model.GpodnetDevice; import io.reactivex.Completable; @@ -44,6 +32,11 @@ import io.reactivex.Observable; import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.schedulers.Schedulers; +import java.util.List; +import java.util.Locale; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + /** * Guides the user through the authentication process. */ @@ -70,7 +63,7 @@ public class GpodderAuthenticationFragment extends DialogFragment { @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { AlertDialog.Builder dialog = new AlertDialog.Builder(getContext()); - dialog.setTitle(GpodnetService.DEFAULT_BASE_HOST); + dialog.setTitle(R.string.gpodnetauth_login_butLabel); dialog.setNegativeButton(R.string.cancel_label, null); dialog.setCancelable(false); this.setCancelable(false); @@ -85,23 +78,13 @@ public class GpodderAuthenticationFragment extends DialogFragment { private void setupHostView(View view) { final Button selectHost = view.findViewById(R.id.chooseHostButton); - final RadioGroup serverRadioGroup = view.findViewById(R.id.serverRadioGroup); final EditText serverUrlText = view.findViewById(R.id.serverUrlText); - - if (!GpodnetService.DEFAULT_BASE_HOST.equals(SynchronizationCredentials.getHosturl())) { - serverUrlText.setText(SynchronizationCredentials.getHosturl()); - } - final TextInputLayout serverUrlTextInput = view.findViewById(R.id.serverUrlTextInput); - serverRadioGroup.setOnCheckedChangeListener((group, checkedId) -> { - serverUrlTextInput.setVisibility(checkedId == R.id.customServerRadio ? View.VISIBLE : View.GONE); - }); selectHost.setOnClickListener(v -> { - SynchronizationCredentials.clear(getContext()); - if (serverRadioGroup.getCheckedRadioButtonId() == R.id.customServerRadio) { - SynchronizationCredentials.setHosturl(serverUrlText.getText().toString()); - } else { - SynchronizationCredentials.setHosturl(GpodnetService.DEFAULT_BASE_HOST); + if (serverUrlText.getText().length() == 0) { + return; } + SynchronizationCredentials.clear(getContext()); + SynchronizationCredentials.setHosturl(serverUrlText.getText().toString()); service = new GpodnetService(AntennapodHttpClient.getHttpClient(), SynchronizationCredentials.getHosturl(), SynchronizationCredentials.getDeviceID(), SynchronizationCredentials.getUsername(), SynchronizationCredentials.getPassword()); @@ -116,12 +99,8 @@ public class GpodderAuthenticationFragment extends DialogFragment { final Button login = view.findViewById(R.id.butLogin); final TextView txtvError = view.findViewById(R.id.credentialsError); final ProgressBar progressBar = view.findViewById(R.id.progBarLogin); - final TextView createAccount = view.findViewById(R.id.createAccountButton); final TextView createAccountWarning = view.findViewById(R.id.createAccountWarning); - createAccount.setPaintFlags(createAccount.getPaintFlags() | Paint.UNDERLINE_TEXT_FLAG); - createAccount.setOnClickListener(v -> IntentUtils.openInBrowser(getContext(), "https://gpodder.net/register/")); - if (SynchronizationCredentials.getHosturl().startsWith("http://")) { createAccountWarning.setVisibility(View.VISIBLE); } diff --git a/app/src/main/res/layout/gpodnetauth_credentials.xml b/app/src/main/res/layout/gpodnetauth_credentials.xml index 8cf6941c9..91224744b 100644 --- a/app/src/main/res/layout/gpodnetauth_credentials.xml +++ b/app/src/main/res/layout/gpodnetauth_credentials.xml @@ -1,107 +1,84 @@ - - - - - - - + xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:tools="http://schemas.android.com/tools" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:orientation="vertical"> + android:id="@+id/createAccountWarning" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:text="@string/gpodnetauth_encryption_warning" + android:textColor="#F44336" + android:textStyle="bold" + android:visibility="invisible" /> + android:layout_width="match_parent" + android:layout_height="wrap_content" + style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"> + android:id="@+id/etxtUsername" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:hint="@string/username_label" + android:lines="1" + android:imeOptions="actionNext|flagNoFullscreen" /> + android:layout_width="match_parent" + android:layout_height="wrap_content" + style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"> + android:id="@+id/etxtPassword" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:hint="@string/password_label" + android:inputType="textPassword" + android:lines="1" + android:imeOptions="actionNext|flagNoFullscreen" + android:imeActionLabel="@string/gpodnetauth_login_butLabel" /> + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:orientation="horizontal" + android:gravity="end|center_vertical"> + android:id="@+id/credentialsError" + android:layout_width="0dp" + android:layout_height="wrap_content" + android:layout_weight="1" + android:textColor="@color/download_failed_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" /> + android:id="@+id/progBarLogin" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:visibility="gone" + android:layout_gravity="right" />