That fuck shit the fascists are using
at master 52 lines 2.4 kB view raw
1package org.tm.archive.pin; 2 3import android.content.Context; 4 5import androidx.annotation.NonNull; 6import androidx.appcompat.app.AlertDialog; 7import androidx.core.content.ContextCompat; 8 9import com.google.android.material.dialog.MaterialAlertDialogBuilder; 10 11import org.signal.core.util.concurrent.SimpleTask; 12import org.signal.core.util.logging.Log; 13import org.tm.archive.R; 14import org.tm.archive.util.views.SimpleProgressDialog; 15 16public final class PinOptOutDialog { 17 18 private static final String TAG = Log.tag(PinOptOutDialog.class); 19 20 public static void show(@NonNull Context context, @NonNull Runnable onSuccess) { 21 Log.i(TAG, "show()"); 22 AlertDialog dialog = new MaterialAlertDialogBuilder(context) 23 .setTitle(R.string.PinOptOutDialog_warning) 24 .setMessage(R.string.PinOptOutDialog_if_you_disable_the_pin_you_will_lose_all_data) 25 .setCancelable(true) 26 .setPositiveButton(R.string.PinOptOutDialog_disable_pin, (d, which) -> { 27 Log.i(TAG, "Disable clicked."); 28 d.dismiss(); 29 AlertDialog progress = SimpleProgressDialog.show(context); 30 31 SimpleTask.run(() -> { 32 SvrRepository.optOutOfPin(); 33 return null; 34 }, success -> { 35 Log.i(TAG, "Disable operation finished."); 36 onSuccess.run(); 37 progress.dismiss(); 38 }); 39 }) 40 .setNegativeButton(android.R.string.cancel, (d, which) -> { 41 Log.i(TAG, "Cancel clicked."); 42 d.dismiss(); 43 }) 44 .create(); 45 46 dialog.setOnShowListener(dialogInterface -> { 47 dialog.getButton(AlertDialog.BUTTON_POSITIVE).setTextColor(ContextCompat.getColor(context, R.color.signal_alert_primary)); 48 }); 49 50 dialog.show(); 51 } 52}