X-Git-Url: https://gitweb.stoutner.com/?p=PrivacyBrowserAndroid.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fcom%2Fstoutner%2Fprivacybrowser%2Fdialogs%2FPinnedMismatchDialog.java;h=7e86bbdb740589a78c182ab1c0c2710313b6e013;hp=0a25771dfbb994c4605559a31ccc61a004bbf3e9;hb=0cc9b798d6daa99959e33ff94a707516d6db8122;hpb=33bd447a83bd3d763ee26bbb3a3f4adb074776ed diff --git a/app/src/main/java/com/stoutner/privacybrowser/dialogs/PinnedMismatchDialog.java b/app/src/main/java/com/stoutner/privacybrowser/dialogs/PinnedMismatchDialog.java index 0a25771d..7e86bbdb 100644 --- a/app/src/main/java/com/stoutner/privacybrowser/dialogs/PinnedMismatchDialog.java +++ b/app/src/main/java/com/stoutner/privacybrowser/dialogs/PinnedMismatchDialog.java @@ -29,11 +29,6 @@ import android.graphics.drawable.Drawable; import android.net.Uri; import android.net.http.SslCertificate; import android.os.Bundle; -import android.support.annotation.NonNull; -import android.support.design.widget.TabLayout; -import android.support.v4.view.PagerAdapter; -// `AppCompatDialogFragment` is used instead of `DialogFragment` to avoid an error on API <=22. -import android.support.v7.app.AppCompatDialogFragment; import android.text.SpannableStringBuilder; import android.text.Spanned; import android.text.style.ForegroundColorSpan; @@ -43,15 +38,21 @@ import android.view.ViewGroup; import android.view.WindowManager; import android.widget.TextView; +import com.google.android.material.tabs.TabLayout; + import com.stoutner.privacybrowser.R; import com.stoutner.privacybrowser.activities.MainWebViewActivity; -import com.stoutner.privacybrowser.definitions.WrapVerticalContentViewPager; +import com.stoutner.privacybrowser.views.WrapVerticalContentViewPager; import com.stoutner.privacybrowser.helpers.DomainsDatabaseHelper; import java.text.DateFormat; import java.util.Date; -public class PinnedMismatchDialog extends AppCompatDialogFragment { +import androidx.annotation.NonNull; +import androidx.fragment.app.DialogFragment; // The AndroidX dialog fragment must be used or an error is produced on API <=22. +import androidx.viewpager.widget.PagerAdapter; + +public class PinnedMismatchDialog extends DialogFragment { // Instantiate the class variables. private PinnedMismatchListener pinnedMismatchListener; private LayoutInflater layoutInflater; @@ -82,13 +83,14 @@ public class PinnedMismatchDialog extends AppCompatDialogFragment { pinnedMismatchListener = (PinnedMismatchListener) context; } - public static PinnedMismatchDialog displayDialog(boolean pinnedSslCertificate, boolean pinnedIpAddresses) { + public static PinnedMismatchDialog displayDialog(int domainSettingsDatabaseId, boolean pinnedSslCertificate, boolean pinnedIpAddresses) { // Create an arguments bundle. Bundle argumentsBundle = new Bundle(); // Store the variables in the bundle. - argumentsBundle.putBoolean("Pinned_SSL_Certificate", pinnedSslCertificate); - argumentsBundle.putBoolean("Pinned_IP_Addresses", pinnedIpAddresses); + argumentsBundle.putInt("domain_settings_database_id", domainSettingsDatabaseId); + argumentsBundle.putBoolean("pinned_sss_certificate", pinnedSslCertificate); + argumentsBundle.putBoolean("pinned_ip_addresses", pinnedIpAddresses); // Add the arguments bundle to this instance of `PinnedMismatchDialog`. PinnedMismatchDialog thisPinnedMismatchDialog = new PinnedMismatchDialog(); @@ -123,8 +125,9 @@ public class PinnedMismatchDialog extends AppCompatDialogFragment { assert getArguments() != null; // Get the variables from the bundle. - pinnedSslCertificate = getArguments().getBoolean("Pinned_SSL_Certificate"); - pinnedIpAddresses = getArguments().getBoolean("Pinned_IP_Addresses"); + int domainSettingsDatabaseId = getArguments().getInt("domain_settings_database_id"); + pinnedSslCertificate = getArguments().getBoolean("pinned_ssl_certificate"); + pinnedIpAddresses = getArguments().getBoolean("pinned_ip_addresses"); // Set the favorite icon as the dialog icon if it exists. if (MainWebViewActivity.favoriteIconBitmap.equals(MainWebViewActivity.favoriteIconDefaultBitmap)) { // There is no favorite icon. @@ -163,7 +166,7 @@ public class PinnedMismatchDialog extends AppCompatDialogFragment { // Update the SSL certificate if it is pinned. if (pinnedSslCertificate) { // Update the pinned SSL certificate in the domain database. - domainsDatabaseHelper.updatePinnedSslCertificate(MainWebViewActivity.domainSettingsDatabaseId, currentSslIssuedToCName, currentSslIssuedToOName, currentSslIssuedToUName, + domainsDatabaseHelper.updatePinnedSslCertificate(domainSettingsDatabaseId, currentSslIssuedToCName, currentSslIssuedToOName, currentSslIssuedToUName, currentSslIssuedByCName, currentSslIssuedByOName, currentSslIssuedByUName, currentSslStartDateLong, currentSslEndDateLong); // Update the pinned SSL certificate class variables to match the information that is now in the database. @@ -180,7 +183,7 @@ public class PinnedMismatchDialog extends AppCompatDialogFragment { // Update the IP addresses if they are pinned. if (pinnedIpAddresses) { // Update the pinned IP addresses in the domain database. - domainsDatabaseHelper.updatePinnedIpAddresses(MainWebViewActivity.domainSettingsDatabaseId, MainWebViewActivity.currentHostIpAddresses); + domainsDatabaseHelper.updatePinnedIpAddresses(domainSettingsDatabaseId, MainWebViewActivity.currentHostIpAddresses); // Update the pinned IP addresses class variable to match the information that is now in the database. MainWebViewActivity.pinnedHostIpAddresses = MainWebViewActivity.currentHostIpAddresses;