X-Git-Url: https://gitweb.stoutner.com/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fcom%2Fstoutner%2Fprivacybrowser%2Factivities%2FViewHeadersActivity.kt;h=b18365a5954362eef3e67a53815ffc806462f8d1;hb=35dd941d73d9d72a1ae8c16add68f20615affada;hp=ce86183b021b79f83053a1f276a759ba59cb6390;hpb=cbeede13395a246b8a32adebbee3872031259f82;p=PrivacyBrowserAndroid.git diff --git a/app/src/main/java/com/stoutner/privacybrowser/activities/ViewHeadersActivity.kt b/app/src/main/java/com/stoutner/privacybrowser/activities/ViewHeadersActivity.kt index ce86183b..b18365a5 100644 --- a/app/src/main/java/com/stoutner/privacybrowser/activities/ViewHeadersActivity.kt +++ b/app/src/main/java/com/stoutner/privacybrowser/activities/ViewHeadersActivity.kt @@ -1,5 +1,5 @@ /* - * Copyright 2017-2023 Soren Stoutner . + * Copyright 2017-2024 Soren Stoutner . * * This file is part of Privacy Browser Android . * @@ -37,7 +37,6 @@ import android.view.View import android.view.View.OnFocusChangeListener import android.view.WindowManager import android.view.inputmethod.InputMethodManager -import android.widget.Button import android.widget.EditText import android.widget.ProgressBar import android.widget.TextView @@ -46,6 +45,7 @@ import androidx.activity.result.contract.ActivityResultContracts import androidx.appcompat.app.ActionBar import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.widget.Toolbar +import androidx.constraintlayout.widget.ConstraintLayout import androidx.core.app.NavUtils import androidx.lifecycle.ViewModelProvider import androidx.preference.PreferenceManager @@ -90,8 +90,7 @@ class ViewHeadersActivity: AppCompatActivity(), UntrustedSslCertificateListener private lateinit var urlEditText: EditText private lateinit var sslInformationTitleTextView: TextView private lateinit var sslInformationTextView: TextView - private lateinit var ciphersButton: Button - private lateinit var certificateButton: Button + private lateinit var sslButtonsConstraintLayout: ConstraintLayout private lateinit var requestHeadersTitleTextView: TextView private lateinit var requestHeadersTextView: TextView private lateinit var responseMessageTitleTextView: TextView @@ -105,23 +104,17 @@ class ViewHeadersActivity: AppCompatActivity(), UntrustedSslCertificateListener private val saveTextActivityResultLauncher = registerForActivityResult(ActivityResultContracts.CreateDocument("text/plain")) { fileUri -> // Only save the file if the URI is not null, which happens if the user exited the file picker by pressing back. if (fileUri != null) { - // Initialize the file name string from the file URI last path segment. - var fileNameString = fileUri.lastPathSegment + // Get a cursor from the content resolver. + val contentResolverCursor = contentResolver.query(fileUri, null, null, null)!! - // Query the exact file name if the API >= 26. - if (Build.VERSION.SDK_INT >= 26) { - // Get a cursor from the content resolver. - val contentResolverCursor = contentResolver.query(fileUri, null, null, null)!! + // Move to the first row. + contentResolverCursor.moveToFirst() - // Move to the first row. - contentResolverCursor.moveToFirst() + // Get the file name from the cursor. + val fileNameString = contentResolverCursor.getString(contentResolverCursor.getColumnIndexOrThrow(OpenableColumns.DISPLAY_NAME)) - // Get the file name from the cursor. - fileNameString = contentResolverCursor.getString(contentResolverCursor.getColumnIndexOrThrow(OpenableColumns.DISPLAY_NAME)) - - // Close the cursor. - contentResolverCursor.close() - } + // Close the cursor. + contentResolverCursor.close() try { // Get the about version string. @@ -201,8 +194,7 @@ class ViewHeadersActivity: AppCompatActivity(), UntrustedSslCertificateListener val swipeRefreshLayout = findViewById(R.id.swiperefreshlayout) sslInformationTitleTextView = findViewById(R.id.ssl_information_title_textview) sslInformationTextView = findViewById(R.id.ssl_information_textview) - ciphersButton = findViewById(R.id.ciphers_button) - certificateButton = findViewById(R.id.certificate_button) + sslButtonsConstraintLayout = findViewById(R.id.ssl_buttons_constraintlayout) requestHeadersTitleTextView = findViewById(R.id.request_headers_title_textview) requestHeadersTextView = findViewById(R.id.request_headers_textview) responseMessageTitleTextView = findViewById(R.id.response_message_title_textview) @@ -452,7 +444,7 @@ class ViewHeadersActivity: AppCompatActivity(), UntrustedSslCertificateListener // Display a snackbar if the API <= 32 (Android 12L). Beginning in Android 13 the OS displays a notification that covers up the snackbar. if (Build.VERSION.SDK_INT <= 32) - Snackbar.make(urlEditText, R.string.version_info_copied, Snackbar.LENGTH_SHORT).show() + Snackbar.make(urlEditText, R.string.headers_copied, Snackbar.LENGTH_SHORT).show() // Consume the event. return true @@ -595,8 +587,7 @@ class ViewHeadersActivity: AppCompatActivity(), UntrustedSslCertificateListener // Hide the unused views. sslInformationTitleTextView.visibility = View.GONE sslInformationTextView.visibility = View.GONE - ciphersButton.visibility = View.GONE - certificateButton.visibility = View.GONE + sslButtonsConstraintLayout.visibility = View.GONE requestHeadersTitleTextView.visibility = View.GONE requestHeadersTextView.visibility = View.GONE responseMessageTitleTextView.visibility = View.GONE @@ -611,14 +602,12 @@ class ViewHeadersActivity: AppCompatActivity(), UntrustedSslCertificateListener // Hide the SSL information views. sslInformationTitleTextView.visibility = View.GONE sslInformationTextView.visibility = View.GONE - ciphersButton.visibility = View.GONE - certificateButton.visibility = View.GONE + sslButtonsConstraintLayout.visibility = View.GONE } else { // This is not an HTTP URL. // Show the SSL information views. sslInformationTitleTextView.visibility = View.VISIBLE sslInformationTextView.visibility = View.VISIBLE - ciphersButton.visibility = View.VISIBLE - certificateButton.visibility = View.VISIBLE + sslButtonsConstraintLayout.visibility = View.VISIBLE } // Show the other views.