Fix progress dialog deprecation warnings.
Moves everything under our own class and ignores the deprecation. Also gives us future ability to re-style all blocking UI dialogs in the future for mat3 compat.
This commit is contained in:
parent
5f0d37739a
commit
3478e13d38
6 changed files with 61 additions and 22 deletions
|
@ -0,0 +1,39 @@
|
|||
@file:Suppress("DEPRECATION")
|
||||
|
||||
package org.thoughtcrime.securesms.components
|
||||
|
||||
import android.app.ProgressDialog
|
||||
import android.content.Context
|
||||
import android.content.DialogInterface
|
||||
|
||||
/**
|
||||
* Wraps a normal progress dialog for showing blocking in-progress UI.
|
||||
*/
|
||||
class SignalProgressDialog private constructor(val progressDialog: ProgressDialog) {
|
||||
|
||||
val isShowing: Boolean
|
||||
get() = progressDialog.isShowing
|
||||
|
||||
fun hide() {
|
||||
progressDialog.hide()
|
||||
}
|
||||
|
||||
fun dismiss() {
|
||||
progressDialog.dismiss()
|
||||
}
|
||||
|
||||
companion object {
|
||||
@JvmStatic
|
||||
@JvmOverloads
|
||||
fun show(
|
||||
context: Context,
|
||||
title: CharSequence? = null,
|
||||
message: CharSequence? = null,
|
||||
indeterminate: Boolean = false,
|
||||
cancelable: Boolean = false,
|
||||
cancelListener: DialogInterface.OnCancelListener? = null
|
||||
): SignalProgressDialog {
|
||||
return SignalProgressDialog(ProgressDialog.show(context, title, message, indeterminate, cancelable, cancelListener))
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,6 +1,5 @@
|
|||
package org.thoughtcrime.securesms.components.settings.app.privacy.advanced
|
||||
|
||||
import android.app.ProgressDialog
|
||||
import android.content.BroadcastReceiver
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
|
@ -18,6 +17,7 @@ import androidx.lifecycle.ViewModelProvider
|
|||
import androidx.preference.PreferenceManager
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder
|
||||
import org.thoughtcrime.securesms.R
|
||||
import org.thoughtcrime.securesms.components.SignalProgressDialog
|
||||
import org.thoughtcrime.securesms.components.settings.DSLConfiguration
|
||||
import org.thoughtcrime.securesms.components.settings.DSLSettingsFragment
|
||||
import org.thoughtcrime.securesms.components.settings.DSLSettingsText
|
||||
|
@ -48,7 +48,7 @@ class AdvancedPrivacySettingsFragment : DSLSettingsFragment(R.string.preferences
|
|||
}
|
||||
}
|
||||
|
||||
var progressDialog: ProgressDialog? = null
|
||||
var progressDialog: SignalProgressDialog? = null
|
||||
|
||||
val statusIcon: CharSequence by lazy {
|
||||
val unidentifiedDeliveryIcon = requireNotNull(
|
||||
|
@ -85,7 +85,7 @@ class AdvancedPrivacySettingsFragment : DSLSettingsFragment(R.string.preferences
|
|||
viewModel.state.observe(viewLifecycleOwner) {
|
||||
if (it.showProgressSpinner) {
|
||||
if (progressDialog?.isShowing == false) {
|
||||
progressDialog = ProgressDialog.show(requireContext(), null, null, true)
|
||||
progressDialog = SignalProgressDialog.show(requireContext(), null, null, true)
|
||||
}
|
||||
} else {
|
||||
progressDialog?.hide()
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package org.thoughtcrime.securesms.components.settings.app.subscription.receipts.detail
|
||||
|
||||
import android.app.ProgressDialog
|
||||
import android.content.ActivityNotFoundException
|
||||
import android.content.Intent
|
||||
import android.graphics.Bitmap
|
||||
|
@ -16,6 +15,7 @@ import com.google.android.material.button.MaterialButton
|
|||
import org.signal.core.util.concurrent.SimpleTask
|
||||
import org.signal.core.util.logging.Log
|
||||
import org.thoughtcrime.securesms.R
|
||||
import org.thoughtcrime.securesms.components.SignalProgressDialog
|
||||
import org.thoughtcrime.securesms.components.settings.DSLConfiguration
|
||||
import org.thoughtcrime.securesms.components.settings.DSLSettingsFragment
|
||||
import org.thoughtcrime.securesms.components.settings.DSLSettingsText
|
||||
|
@ -31,7 +31,7 @@ import java.util.Locale
|
|||
|
||||
class DonationReceiptDetailFragment : DSLSettingsFragment(layoutId = R.layout.donation_receipt_detail_fragment) {
|
||||
|
||||
private lateinit var progressDialog: ProgressDialog
|
||||
private lateinit var progressDialog: SignalProgressDialog
|
||||
|
||||
private val viewModel: DonationReceiptDetailViewModel by viewModels(
|
||||
factoryProducer = {
|
||||
|
@ -63,8 +63,7 @@ class DonationReceiptDetailFragment : DSLSettingsFragment(layoutId = R.layout.do
|
|||
}
|
||||
|
||||
private fun renderPng(record: DonationReceiptRecord, subscriptionName: String) {
|
||||
progressDialog = ProgressDialog(requireContext())
|
||||
progressDialog.show()
|
||||
progressDialog = SignalProgressDialog.show(requireContext())
|
||||
|
||||
val today: String = DateUtils.formatDateWithDayOfWeek(Locale.getDefault(), System.currentTimeMillis())
|
||||
val amount: String = FiatMoneyUtil.format(resources, record.amount)
|
||||
|
|
|
@ -19,7 +19,6 @@ package org.thoughtcrime.securesms.conversationlist;
|
|||
import android.Manifest;
|
||||
import android.annotation.SuppressLint;
|
||||
import android.app.Activity;
|
||||
import android.app.ProgressDialog;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.res.Configuration;
|
||||
|
@ -90,6 +89,7 @@ import org.thoughtcrime.securesms.badges.self.expired.CantProcessSubscriptionPay
|
|||
import org.thoughtcrime.securesms.badges.self.expired.ExpiredBadgeBottomSheetDialogFragment;
|
||||
import org.thoughtcrime.securesms.components.Material3SearchToolbar;
|
||||
import org.thoughtcrime.securesms.components.RatingManager;
|
||||
import org.thoughtcrime.securesms.components.SignalProgressDialog;
|
||||
import org.thoughtcrime.securesms.components.UnreadPaymentsView;
|
||||
import org.thoughtcrime.securesms.components.menu.ActionItem;
|
||||
import org.thoughtcrime.securesms.components.menu.SignalBottomActionBar;
|
||||
|
@ -1035,14 +1035,15 @@ public class ConversationListFragment extends MainFragment implements ActionMode
|
|||
|
||||
if (!selectedConversations.isEmpty()) {
|
||||
new AsyncTask<Void, Void, Void>() {
|
||||
private ProgressDialog dialog;
|
||||
private SignalProgressDialog dialog;
|
||||
|
||||
@Override
|
||||
protected void onPreExecute() {
|
||||
dialog = ProgressDialog.show(requireActivity(),
|
||||
context.getString(R.string.ConversationListFragment_deleting),
|
||||
context.getString(R.string.ConversationListFragment_deleting_selected_conversations),
|
||||
true, false);
|
||||
dialog = SignalProgressDialog.show(requireActivity(),
|
||||
context.getString(R.string.ConversationListFragment_deleting),
|
||||
context.getString(R.string.ConversationListFragment_deleting_selected_conversations),
|
||||
true,
|
||||
false);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -1,17 +1,18 @@
|
|||
package org.thoughtcrime.securesms.util.task;
|
||||
|
||||
import android.app.ProgressDialog;
|
||||
import android.content.Context;
|
||||
import android.os.AsyncTask;
|
||||
|
||||
import androidx.annotation.CallSuper;
|
||||
|
||||
import org.thoughtcrime.securesms.components.SignalProgressDialog;
|
||||
|
||||
import java.lang.ref.WeakReference;
|
||||
|
||||
public abstract class ProgressDialogAsyncTask<Params, Progress, Result> extends AsyncTask<Params, Progress, Result> {
|
||||
|
||||
private final WeakReference<Context> contextReference;
|
||||
private ProgressDialog progress;
|
||||
private SignalProgressDialog progress;
|
||||
private final String title;
|
||||
private final String message;
|
||||
|
||||
|
@ -29,7 +30,7 @@ public abstract class ProgressDialogAsyncTask<Params, Progress, Result> extends
|
|||
@Override
|
||||
protected void onPreExecute() {
|
||||
final Context context = contextReference.get();
|
||||
if (context != null) progress = ProgressDialog.show(context, title, message, true);
|
||||
if (context != null) progress = SignalProgressDialog.show(context, title, message, true);
|
||||
}
|
||||
|
||||
@CallSuper
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
package org.thoughtcrime.securesms.util.task;
|
||||
|
||||
import android.app.ProgressDialog;
|
||||
import android.graphics.Color;
|
||||
import android.os.AsyncTask;
|
||||
import android.view.View;
|
||||
|
||||
|
@ -12,6 +10,7 @@ import androidx.lifecycle.Lifecycle;
|
|||
import com.google.android.material.snackbar.Snackbar;
|
||||
|
||||
import org.signal.core.util.logging.Log;
|
||||
import org.thoughtcrime.securesms.components.SignalProgressDialog;
|
||||
|
||||
public abstract class SnackbarAsyncTask<Params>
|
||||
extends AsyncTask<Params, Void, Void>
|
||||
|
@ -27,8 +26,8 @@ public abstract class SnackbarAsyncTask<Params>
|
|||
private final int snackbarDuration;
|
||||
private final boolean showProgress;
|
||||
|
||||
private @Nullable Params reversibleParameter;
|
||||
private @Nullable ProgressDialog progressDialog;
|
||||
private @Nullable Params reversibleParameter;
|
||||
private @Nullable SignalProgressDialog progressDialog;
|
||||
|
||||
public SnackbarAsyncTask(@NonNull Lifecycle lifecycle,
|
||||
@NonNull View view,
|
||||
|
@ -49,7 +48,7 @@ public abstract class SnackbarAsyncTask<Params>
|
|||
|
||||
@Override
|
||||
protected void onPreExecute() {
|
||||
if (this.showProgress) this.progressDialog = ProgressDialog.show(view.getContext(), "", "", true);
|
||||
if (this.showProgress) this.progressDialog = SignalProgressDialog.show(view.getContext(), "", "", true);
|
||||
else this.progressDialog = null;
|
||||
}
|
||||
|
||||
|
@ -83,7 +82,7 @@ public abstract class SnackbarAsyncTask<Params>
|
|||
new AsyncTask<Void, Void, Void>() {
|
||||
@Override
|
||||
protected void onPreExecute() {
|
||||
if (showProgress) progressDialog = ProgressDialog.show(view.getContext(), "", "", true);
|
||||
if (showProgress) progressDialog = SignalProgressDialog.show(view.getContext(), "", "", true);
|
||||
else progressDialog = null;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue