X-Git-Url: https://gitweb.stoutner.com/?p=PrivacyBrowserAndroid.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fcom%2Fstoutner%2Fprivacybrowser%2Fdialogs%2FPinnedMismatchDialog.kt;h=e80cdc47b31e00b77bf7cc16819f2523f3fb6dff;hp=0dd2ce57a9b82f8ba43b4c9aaf66fcff841bb907;hb=1d656c562831f535aa33903d44198dd890393f4f;hpb=91154b307513e7bc6958b27fba518e4f9b564cf9 diff --git a/app/src/main/java/com/stoutner/privacybrowser/dialogs/PinnedMismatchDialog.kt b/app/src/main/java/com/stoutner/privacybrowser/dialogs/PinnedMismatchDialog.kt index 0dd2ce57..e80cdc47 100644 --- a/app/src/main/java/com/stoutner/privacybrowser/dialogs/PinnedMismatchDialog.kt +++ b/app/src/main/java/com/stoutner/privacybrowser/dialogs/PinnedMismatchDialog.kt @@ -19,11 +19,9 @@ package com.stoutner.privacybrowser.dialogs -import android.annotation.SuppressLint import android.app.Dialog import android.content.Context import android.content.DialogInterface -import android.content.res.Configuration import android.graphics.drawable.BitmapDrawable import android.graphics.drawable.Drawable import android.os.Bundle @@ -43,7 +41,7 @@ import com.stoutner.privacybrowser.adapters.PinnedMismatchPagerAdapter import com.stoutner.privacybrowser.helpers.DomainsDatabaseHelper import com.stoutner.privacybrowser.views.NestedScrollWebView -// Declare the class constants. +// Define the class constants. private const val WEBVIEW_FRAGMENT_ID = "webview_fragment_id" class PinnedMismatchDialog : DialogFragment() { @@ -84,8 +82,6 @@ class PinnedMismatchDialog : DialogFragment() { } } - // `@SuppressLint("InflateParams")` removes the warning about using `null` as the parent view group when inflating the alert dialog. - @SuppressLint("InflateParams") override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { // Get the WebView fragment ID. val webViewFragmentId = requireArguments().getLong(WEBVIEW_FRAGMENT_ID) @@ -106,7 +102,7 @@ class PinnedMismatchDialog : DialogFragment() { val dialogBuilder = AlertDialog.Builder(requireContext(), R.style.PrivacyBrowserAlertDialog) // Get the favorite icon. - val favoriteIconBitmap = nestedScrollWebView.favoriteOrDefaultIcon + val favoriteIconBitmap = nestedScrollWebView.getFavoriteOrDefaultIcon() // Get the default favorite icon drawable. `ContextCompat` must be used until API >= 21. val defaultFavoriteIconDrawable = ContextCompat.getDrawable(requireContext(), R.drawable.world) @@ -119,15 +115,8 @@ class PinnedMismatchDialog : DialogFragment() { // Set the favorite icon as the dialog icon if it exists. if (favoriteIconBitmap.sameAs(defaultFavoriteIconBitmap)) { // There is no website favorite icon. - // Get the current theme status. - val currentThemeStatus = resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK - // Set the icon according to the theme. - if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) { - dialogBuilder.setIcon(R.drawable.ssl_certificate_enabled_day) - } else { - dialogBuilder.setIcon(R.drawable.ssl_certificate_enabled_night) - } + dialogBuilder.setIconAttribute(R.attr.sslCertificateBlueIcon) } else { // There is a favorite icon. // Create a drawable version of the favorite icon. val favoriteIconDrawable: Drawable = BitmapDrawable(resources, favoriteIconBitmap) @@ -139,8 +128,8 @@ class PinnedMismatchDialog : DialogFragment() { // Set the title. dialogBuilder.setTitle(R.string.pinned_mismatch) - // Set the layout. The parent view is `null` because it will be assigned by the alert dialog. - dialogBuilder.setView(requireActivity().layoutInflater.inflate(R.layout.pinned_mismatch_linearlayout, null)) + // Set the layout. + dialogBuilder.setView(R.layout.pinned_mismatch_linearlayout) // Set the update button listener. dialogBuilder.setNeutralButton(R.string.update) { _: DialogInterface?, _: Int -> @@ -171,7 +160,7 @@ class PinnedMismatchDialog : DialogFragment() { } // Update the IP addresses if they are pinned. - if (nestedScrollWebView.hasPinnedIpAddresses()) { + if (nestedScrollWebView.pinnedIpAddresses != "") { // Update the pinned IP addresses in the domain database. domainsDatabaseHelper.updatePinnedIpAddresses(nestedScrollWebView.domainSettingsDatabaseId, nestedScrollWebView. currentIpAddresses) @@ -194,7 +183,7 @@ class PinnedMismatchDialog : DialogFragment() { // Set the proceed button listener. dialogBuilder.setPositiveButton(R.string.proceed) { _: DialogInterface?, _: Int -> // Do not check the pinned information for this domain again until the domain changes. - nestedScrollWebView.setIgnorePinnedDomainInformation(true) + nestedScrollWebView.ignorePinnedDomainInformation = true } // Create an alert dialog from the alert dialog builder.