From 21b8e8bbc0cc64f469bcf2d28e04319bbd895db9 Mon Sep 17 00:00:00 2001 From: Bnyro Date: Sat, 11 Jun 2022 13:04:33 +0200 Subject: [PATCH] codebase --- .../java/com/github/libretube/MainActivity.kt | 2 +- .../libretube/dialogs/CustomInstanceDialog.kt | 43 ++++++++ .../github/libretube/dialogs/ShareDialog.kt | 2 +- .../libretube/preferences/InstanceSettings.kt | 34 ++++-- app/src/main/res/drawable/ic_add_instance.xml | 10 ++ .../res/layout/dialog_custom_instance.xml | 103 ++++++++++++++++++ app/src/main/res/values/strings.xml | 6 +- app/src/main/res/xml/instance_settings.xml | 9 +- 8 files changed, 192 insertions(+), 17 deletions(-) create mode 100644 app/src/main/java/com/github/libretube/dialogs/CustomInstanceDialog.kt create mode 100644 app/src/main/res/drawable/ic_add_instance.xml create mode 100644 app/src/main/res/layout/dialog_custom_instance.xml diff --git a/app/src/main/java/com/github/libretube/MainActivity.kt b/app/src/main/java/com/github/libretube/MainActivity.kt index a20f7971d..183fe853f 100644 --- a/app/src/main/java/com/github/libretube/MainActivity.kt +++ b/app/src/main/java/com/github/libretube/MainActivity.kt @@ -53,7 +53,7 @@ class MainActivity : AppCompatActivity() { CronetHelper.initCronet(this.applicationContext) val sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this) RetrofitInstance.url = - sharedPreferences.getString("instance", "https://pipedapi.kavin.rocks/")!! + sharedPreferences.getString("selectInstance", "https://pipedapi.kavin.rocks/")!! SponsorBlockSettings.sponsorBlockEnabled = sharedPreferences.getBoolean("sb_enabled_key", false) SponsorBlockSettings.sponsorNotificationsEnabled = diff --git a/app/src/main/java/com/github/libretube/dialogs/CustomInstanceDialog.kt b/app/src/main/java/com/github/libretube/dialogs/CustomInstanceDialog.kt new file mode 100644 index 000000000..56c0f116b --- /dev/null +++ b/app/src/main/java/com/github/libretube/dialogs/CustomInstanceDialog.kt @@ -0,0 +1,43 @@ +package com.github.libretube.dialogs + +import android.app.Dialog +import android.os.Bundle +import android.util.TypedValue +import android.view.View +import android.widget.Button +import android.widget.TextView +import androidx.core.text.HtmlCompat +import androidx.fragment.app.DialogFragment +import com.github.libretube.R +import com.google.android.material.dialog.MaterialAlertDialogBuilder +import com.google.android.material.textfield.TextInputEditText + +class CustomInstanceDialog : DialogFragment() { + override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { + return activity?.let { + val builder = MaterialAlertDialogBuilder(it) + val inflater = requireActivity().layoutInflater + val view: View = inflater.inflate(R.layout.dialog_custom_instance, null) + + val instanceNameEditText = view.findViewById(R.id.instanceName) + val instanceApiUrlEditText = view.findViewById(R.id.instanceApiUrl) + val addInstanceButton = view.findViewById