import android.os.Bundle
import android.util.AttributeSet
import android.view.MotionEvent
-import android.webkit.WebView
-import android.webkit.SslErrorHandler
import android.webkit.HttpAuthHandler
+import android.webkit.SslErrorHandler
+import android.webkit.WebView
import androidx.core.content.ContextCompat
import androidx.core.view.NestedScrollingChild2
private var ultraListBlockedRequests = 0
private var ultraPrivacyBlockedRequests = 0
private var thirdPartyBlockedRequests = 0
+ private var xRequestedWithHeader = mutableMapOf<String, String>()
init {
// Enable nested scrolling by default.
hasPinnedSslCertificate = true
}
- fun getPinnedSslCertificate(): ArrayList<Any> {
- // Initialize an array list.
- val arrayList = ArrayList<Any>()
-
+ fun getPinnedSslCertificate(): Pair<Array<String>, Array<Date>> {
// Create the SSL certificate string array.
val sslCertificateStringArray = arrayOf(pinnedSslIssuedToCName, pinnedSslIssuedToOName, pinnedSslIssuedToUName, pinnedSslIssuedByCName, pinnedSslIssuedByOName, pinnedSslIssuedByUName)
// Create the SSL certificate date array.
val sslCertificateDateArray = arrayOf(pinnedSslStartDate, pinnedSslEndDate)
- // Add the arrays to the array list.
- arrayList.add(sslCertificateStringArray)
- arrayList.add(sslCertificateDateArray)
-
- // Return the pinned SSL certificate array list.
- return arrayList
+ // Return the pinned SSL certificate pair.
+ return Pair(sslCertificateStringArray, sslCertificateDateArray)
}
fun clearPinnedSslCertificate() {
}
+ // X-Requested-With header.
+ fun getXRequestedWithHeader() : MutableMap<String, String> {
+ // Return the X-Requested-With header.
+ return xRequestedWithHeader
+ }
+
+ fun setXRequestedWithHeader() {
+ // Set the X-Requested-With header to use a null value.
+ if (xRequestedWithHeader.isEmpty())
+ xRequestedWithHeader["X-Requested-With"] = ""
+ }
+
+ fun resetXRequestedWithHeader() {
+ // Clear the map, which resets the X-Requested-With header to use the default value of the application ID (com.stoutner.privacybrowser.standard).
+ xRequestedWithHeader.clear()
+ }
+
+
// Publicly expose the scroll ranges.
fun getHorizontalScrollRange(): Int {
// Return the horizontal scroll range.