X-Git-Url: https://gitweb.stoutner.com/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fcom%2Fstoutner%2Fprivacybrowser%2Fdialogs%2FHttpAuthenticationDialog.kt;h=b2c749bdeea2c9071657b877636770e835366bab;hb=3b5b81db53b0ee6f448ac3144a176c6d9042f4c8;hp=c8e84e6f8b430250a5c0fcef0be49d02d6f3208a;hpb=aba828cabddd0a277271c90816b50292bb64baf1;p=PrivacyBrowserAndroid.git diff --git a/app/src/main/java/com/stoutner/privacybrowser/dialogs/HttpAuthenticationDialog.kt b/app/src/main/java/com/stoutner/privacybrowser/dialogs/HttpAuthenticationDialog.kt index c8e84e6f..b2c749bd 100644 --- a/app/src/main/java/com/stoutner/privacybrowser/dialogs/HttpAuthenticationDialog.kt +++ b/app/src/main/java/com/stoutner/privacybrowser/dialogs/HttpAuthenticationDialog.kt @@ -1,5 +1,5 @@ /* - * Copyright © 2017-2022 Soren Stoutner . + * Copyright © 2017-2023 Soren Stoutner . * * This file is part of Privacy Browser Android . * @@ -21,7 +21,6 @@ package com.stoutner.privacybrowser.dialogs import android.app.Dialog import android.content.DialogInterface -import android.content.res.Configuration import android.os.Bundle import android.text.SpannableStringBuilder import android.text.Spanned @@ -47,16 +46,7 @@ private const val REALM = "realm" private const val WEBVIEW_FRAGMENT_ID = "webview_fragment_id" class HttpAuthenticationDialog : DialogFragment() { - // Define the class variables. - private var dismissDialog: Boolean = false - - // Declare the class views. - private lateinit var usernameEditText: EditText - private lateinit var passwordEditText: EditText - companion object { - // `@JvmStatic` will no longer be required once all the code has transitioned to Kotlin. - @JvmStatic fun displayDialog(host: String, realm: String, webViewFragmentId: Long): HttpAuthenticationDialog { // Create an arguments bundle. val argumentsBundle = Bundle() @@ -77,6 +67,13 @@ class HttpAuthenticationDialog : DialogFragment() { } } + // Define the class variables. + private var dismissDialog: Boolean = false + + // Declare the class views. + private lateinit var usernameEditText: EditText + private lateinit var passwordEditText: EditText + override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { // Get a handle for the arguments. val arguments = requireArguments() @@ -89,10 +86,10 @@ class HttpAuthenticationDialog : DialogFragment() { // Try to populate the alert dialog. try { // Getting the WebView tab fragment will fail if Privacy Browser has been restarted. // Get the current position of this WebView fragment. - val webViewPosition = MainWebViewActivity.webViewPagerAdapter.getPositionForId(webViewFragmentId) + val webViewPosition = MainWebViewActivity.webViewStateAdapter!!.getPositionForId(webViewFragmentId) // Get the WebView tab fragment. - val webViewTabFragment = MainWebViewActivity.webViewPagerAdapter.getPageFragment(webViewPosition) + val webViewTabFragment = MainWebViewActivity.webViewStateAdapter!!.getPageFragment(webViewPosition) // Get the fragment view. val fragmentView = webViewTabFragment.requireView() @@ -106,8 +103,8 @@ class HttpAuthenticationDialog : DialogFragment() { // Use an alert dialog builder to create the alert dialog. val dialogBuilder = AlertDialog.Builder(requireContext(), R.style.PrivacyBrowserAlertDialog) - // Set the icon according to the theme. - dialogBuilder.setIconAttribute(R.attr.lockBlueIcon) + // Set the icon. + dialogBuilder.setIcon(R.drawable.lock) // Set the title. dialogBuilder.setTitle(R.string.http_authentication) @@ -165,20 +162,11 @@ class HttpAuthenticationDialog : DialogFragment() { realmTextView.text = httpAuthRealm // Initialize the host label and the spannable string builder. - val hostLabel = getString(R.string.host) + " " + val hostLabel = getString(R.string.host) val hostStringBuilder = SpannableStringBuilder(hostLabel + httpAuthHost) - // Get the current theme status. - val currentThemeStatus = resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK - - // Set the blue color span according to the theme. The deprecated `getColor()` must be used until API >= 23. - val blueColorSpan = if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) { - @Suppress("DEPRECATION") - ForegroundColorSpan(resources.getColor(R.color.blue_700)) - } else { - @Suppress("DEPRECATION") - ForegroundColorSpan(resources.getColor(R.color.violet_700)) - } + // Set the blue color span. + val blueColorSpan = ForegroundColorSpan(requireContext().getColor(R.color.blue_text)) // Setup the span to display the host name in blue. `SPAN_INCLUSIVE_INCLUSIVE` allows the span to grow in either direction. hostStringBuilder.setSpan(blueColorSpan, hostLabel.length, hostStringBuilder.length, Spanned.SPAN_INCLUSIVE_INCLUSIVE)