diff --git a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/ActiveSettingsController.java b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/ActiveSettingsController.java
index ecdfd8a2..f07919cd 100644
--- a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/ActiveSettingsController.java
+++ b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/ActiveSettingsController.java
@@ -25,6 +25,7 @@
import com.google.android.apps.forscience.whistlepunk.sensorapi.ActiveBundle;
import com.google.android.apps.forscience.whistlepunk.sensorapi.ReadableSensorOptions;
import com.google.android.apps.forscience.whistlepunk.sensorapi.WriteableSensorOptions;
+import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import com.google.android.material.snackbar.Snackbar;
/**
@@ -71,7 +72,7 @@ public void launchOptionsDialog(
String name,
String optionsTitle,
WriteableSensorOptions options) {
- final AlertDialog.Builder builder = new AlertDialog.Builder(context);
+ final AlertDialog.Builder builder = new MaterialAlertDialogBuilder(context, R.style.AlertDialogTheme);
final Resources resources = context.getResources();
if (callbacks == null) {
diff --git a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/AudioSettingsDialog.java b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/AudioSettingsDialog.java
index 2a55afb4..450fa40b 100644
--- a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/AudioSettingsDialog.java
+++ b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/AudioSettingsDialog.java
@@ -28,6 +28,8 @@
import android.widget.Spinner;
import com.google.android.apps.forscience.whistlepunk.accounts.AppAccount;
import com.google.android.apps.forscience.whistlepunk.audiogen.SonificationTypeAdapterFactory;
+import com.google.android.material.dialog.MaterialAlertDialogBuilder;
+
import java.util.Arrays;
/** DialogFragment to display audio settings to the user. */
@@ -110,7 +112,7 @@ public AlertDialog onCreateDialog(Bundle savedInstanceState) {
}
sensorIds = getArguments().getStringArray(KEY_SENSOR_ID);
- final AlertDialog.Builder alertDialog = new AlertDialog.Builder(getActivity());
+ final AlertDialog.Builder alertDialog = new MaterialAlertDialogBuilder(getActivity(), R.style.AlertDialogTheme);
View rootView =
LayoutInflater.from(getActivity()).inflate(R.layout.audio_settings_dialog, null);
alertDialog.setView(rootView);
diff --git a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/BluetoothDisabledDialog.java b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/BluetoothDisabledDialog.java
index f8517c29..2d8c33e7 100644
--- a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/BluetoothDisabledDialog.java
+++ b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/BluetoothDisabledDialog.java
@@ -23,6 +23,8 @@
import androidx.fragment.app.DialogFragment;
import androidx.appcompat.app.AlertDialog;
+import com.google.android.material.dialog.MaterialAlertDialogBuilder;
+
public class BluetoothDisabledDialog extends DialogFragment {
public static final String TAG = "bluetooth_disabled_dialog";
@@ -30,7 +32,7 @@ public BluetoothDisabledDialog() {}
@Override
public AlertDialog onCreateDialog(Bundle savedInstanceState) {
- final AlertDialog.Builder alertDialog = new AlertDialog.Builder(getActivity());
+ final AlertDialog.Builder alertDialog = new MaterialAlertDialogBuilder(getActivity(), R.style.AlertDialogTheme);
alertDialog.setMessage(R.string.bluetooth_not_on_body);
alertDialog.setTitle(R.string.bluetooth_not_on_title);
alertDialog.setPositiveButton(
diff --git a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/ExportService.java b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/ExportService.java
index 9cc90e7a..df8000dc 100644
--- a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/ExportService.java
+++ b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/ExportService.java
@@ -17,7 +17,6 @@
import android.annotation.TargetApi;
import android.app.Activity;
-import android.app.AlertDialog;
import android.app.DownloadManager;
import android.app.NotificationManager;
import android.app.PendingIntent;
@@ -41,6 +40,7 @@
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
+import androidx.appcompat.app.AlertDialog;
import androidx.collection.ArrayMap;
import androidx.core.app.NotificationCompat;
import androidx.core.content.FileProvider;
@@ -56,6 +56,7 @@
import com.google.android.apps.forscience.whistlepunk.project.experiment.UpdateExperimentFragment;
import com.google.android.apps.forscience.whistlepunk.sensordb.ScalarReading;
import com.google.android.apps.forscience.whistlepunk.sensordb.TimeRange;
+import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import com.google.android.material.snackbar.Snackbar;
import com.google.common.base.Strings;
import com.google.common.collect.Range;
@@ -598,7 +599,7 @@ public void success(Experiment experiment) {
saveLocally
? R.string.experiment_not_finished_downloading_confirm_download_button
: R.string.experiment_not_finished_downloading_confirm_button;
- AlertDialog.Builder builder = new AlertDialog.Builder(context);
+ AlertDialog.Builder builder = new MaterialAlertDialogBuilder(context, R.style.AlertDialogTheme);
builder.setTitle(R.string.experiment_not_finished_downloading_title);
builder.setMessage(messageId);
builder.setPositiveButton(
diff --git a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/StopRecordingNoDataDialog.java b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/StopRecordingNoDataDialog.java
index f6be5dca..6dd2c763 100644
--- a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/StopRecordingNoDataDialog.java
+++ b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/StopRecordingNoDataDialog.java
@@ -23,6 +23,8 @@
import androidx.fragment.app.DialogFragment;
import androidx.fragment.app.Fragment;
+import com.google.android.material.dialog.MaterialAlertDialogBuilder;
+
/**
* DialogFragment for when recording fails to stop.
*/
@@ -53,7 +55,7 @@ public AlertDialog onCreateDialog(Bundle savedInstanceState) {
if (getArguments() != null) {
text = getArguments().getString(KEY_BODY_STRING, "");
}
- AlertDialog.Builder alertDialog = new AlertDialog.Builder(getActivity());
+ AlertDialog.Builder alertDialog = new MaterialAlertDialogBuilder(getActivity(), R.style.AlertDialogTheme);
alertDialog.setTitle(getResources().getString(R.string.recording_stop_failed_no_data_title));
alertDialog.setMessage(text);
alertDialog.setNegativeButton(
diff --git a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/accounts/OldUserOptionPromptActivity.java b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/accounts/OldUserOptionPromptActivity.java
index 2257310a..79902158 100644
--- a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/accounts/OldUserOptionPromptActivity.java
+++ b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/accounts/OldUserOptionPromptActivity.java
@@ -35,6 +35,7 @@
import com.google.android.apps.forscience.whistlepunk.analytics.TrackerConstants;
import com.google.android.apps.forscience.whistlepunk.analytics.UsageTracker;
import com.google.android.apps.forscience.whistlepunk.filemetadata.FileMetadataUtil;
+import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import com.google.android.material.snackbar.Snackbar;
/** Activity that lets the user choose what to do with their old experiments. */
@@ -126,7 +127,7 @@ private void showMoveAllExperimentsPrompt() {
snackbarManager.showSnackbar(bar);
return;
}
- AlertDialog.Builder builder = new AlertDialog.Builder(this);
+ AlertDialog.Builder builder = new MaterialAlertDialogBuilder(this, R.style.AlertDialogTheme);
builder.setTitle(
getResources()
.getQuantityString(
@@ -202,7 +203,7 @@ view, getResources().getString(R.string.claim_failed), Snackbar.LENGTH_LONG)
}
private void showDeleteAllPrompt() {
- AlertDialog.Builder builder = new AlertDialog.Builder(this);
+ AlertDialog.Builder builder = new MaterialAlertDialogBuilder(this, R.style.AlertDialogTheme);
builder.setTitle(R.string.delete_all_prompt_headline);
builder.setMessage(R.string.delete_all_prompt_text);
builder.setNegativeButton(android.R.string.cancel, (dialog, which) -> dialog.cancel());
diff --git a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/accounts/SignInFragment.java b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/accounts/SignInFragment.java
index dfdfe095..55b285a5 100644
--- a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/accounts/SignInFragment.java
+++ b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/accounts/SignInFragment.java
@@ -33,6 +33,7 @@
import com.google.android.apps.forscience.whistlepunk.R;
import com.google.android.apps.forscience.whistlepunk.WhistlePunkApplication;
import com.google.android.apps.forscience.whistlepunk.analytics.TrackerConstants;
+import com.google.android.material.dialog.MaterialAlertDialogBuilder;
/**
* Fragment that tells the user about saving experiments in Google Drive and prompts the user to *
@@ -83,7 +84,7 @@ private void showScienceJournalIsDisabledAlert() {
WhistlePunkApplication.getUsageTracker(getActivity())
.trackEvent(
TrackerConstants.CATEGORY_SIGN_IN, TrackerConstants.ACTION_PERMISSION_DENIED, null, 0);
- AlertDialog.Builder alertDialog = new AlertDialog.Builder(getActivity());
+ AlertDialog.Builder alertDialog = new MaterialAlertDialogBuilder(getActivity(), R.style.AlertDialogTheme);
Resources resources = getResources();
alertDialog.setTitle(resources.getString(R.string.science_journal_disabled_title));
alertDialog.setMessage(resources.getString(R.string.science_journal_disabled_message));
diff --git a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/devicemanager/DeviceOptionsDialog.java b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/devicemanager/DeviceOptionsDialog.java
index f17e6419..ff75e79e 100644
--- a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/devicemanager/DeviceOptionsDialog.java
+++ b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/devicemanager/DeviceOptionsDialog.java
@@ -33,6 +33,7 @@
import com.google.android.apps.forscience.whistlepunk.accounts.AppAccount;
import com.google.android.apps.forscience.whistlepunk.analytics.TrackerConstants;
import com.google.android.apps.forscience.whistlepunk.metadata.ExternalSensorSpec;
+import com.google.android.material.dialog.MaterialAlertDialogBuilder;
/** Presents dialog options for external devices. */
public class DeviceOptionsDialog extends DialogFragment {
@@ -142,7 +143,7 @@ public void onClick(View v) {
});
}
AlertDialog.Builder builder =
- new AlertDialog.Builder(getActivity())
+ new MaterialAlertDialogBuilder(getActivity(), R.style.AlertDialogTheme)
.setView(view)
.setTitle(R.string.title_activity_sensor_settings)
.setPositiveButton(android.R.string.ok, onOK);
diff --git a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/devicemanager/MkrSciSensorOptionsDialog.java b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/devicemanager/MkrSciSensorOptionsDialog.java
index 27f0aaf3..e0c73f70 100644
--- a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/devicemanager/MkrSciSensorOptionsDialog.java
+++ b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/devicemanager/MkrSciSensorOptionsDialog.java
@@ -21,6 +21,7 @@
import com.google.android.apps.forscience.whistlepunk.metadata.ExternalSensorSpec;
import com.google.android.apps.forscience.whistlepunk.metadata.MkrSciBleSensorSpec;
import com.google.android.apps.forscience.whistlepunk.sensors.MkrSciBleSensor;
+import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import java.util.Objects;
@@ -121,7 +122,7 @@ public Dialog onCreateDialog(Bundle savedInstanceState) {
loadSensorSpec(sensorId, defChecked);
AlertDialog.Builder builder =
- new AlertDialog.Builder(getActivity())
+ new MaterialAlertDialogBuilder(getActivity(), R.style.AlertDialogTheme)
.setView(view)
.setTitle(R.string.title_activity_sensor_settings)
.setCancelable(true)
diff --git a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/gdrivesync/GDriveSyncService.java b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/gdrivesync/GDriveSyncService.java
index 97785496..1d692e6e 100644
--- a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/gdrivesync/GDriveSyncService.java
+++ b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/gdrivesync/GDriveSyncService.java
@@ -1,7 +1,6 @@
package com.google.android.apps.forscience.whistlepunk.gdrivesync;
import android.app.Activity;
-import android.app.AlertDialog;
import android.app.Service;
import android.content.Context;
import android.content.Intent;
@@ -19,6 +18,7 @@
import android.widget.Toast;
import androidx.annotation.Nullable;
+import androidx.appcompat.app.AlertDialog;
import com.google.android.apps.forscience.javalib.MaybeConsumer;
import com.google.android.apps.forscience.javalib.Success;
@@ -32,6 +32,7 @@
import com.google.android.apps.forscience.whistlepunk.filemetadata.ExperimentLibraryManager;
import com.google.android.apps.forscience.whistlepunk.filemetadata.FileMetadataUtil;
import com.google.android.apps.forscience.whistlepunk.filemetadata.LocalSyncManager;
+import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import java.io.File;
import java.io.IOException;
@@ -376,7 +377,7 @@ private ConflictAnswer showConflict(final Context context, final AppAccount appA
new Handler(Looper.getMainLooper()).post(() -> {
final Activity activity = app.onNextActivity().blockingGet();
if (activity != null) {
- AlertDialog.Builder d = new AlertDialog.Builder(activity);
+ AlertDialog.Builder d = new MaterialAlertDialogBuilder(activity, R.style.AlertDialogTheme);
d.setMessage(R.string.drive_sync_conflict);
d.setNeutralButton(R.string.drive_sync_conflict_remote, (dialog, which) -> {
synchronized (lock) {
diff --git a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/gdrivesync/GDriveSyncSetupActivity.java b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/gdrivesync/GDriveSyncSetupActivity.java
index a2dc3a51..5ddbcb29 100644
--- a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/gdrivesync/GDriveSyncSetupActivity.java
+++ b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/gdrivesync/GDriveSyncSetupActivity.java
@@ -40,6 +40,7 @@
import com.google.android.gms.common.api.ApiException;
import com.google.android.gms.common.api.Scope;
import com.google.android.gms.tasks.Task;
+import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import com.google.api.client.googleapis.extensions.android.gms.auth.GoogleAccountCredential;
import java.util.ArrayList;
@@ -359,7 +360,7 @@ private void onNewFolder() {
final EditText et = view.findViewById(R.id.et);
et.setText(R.string.drive_create_folder_def_name);
et.selectAll();
- AlertDialog.Builder b = new AlertDialog.Builder(this);
+ AlertDialog.Builder b = new MaterialAlertDialogBuilder(this, R.style.AlertDialogTheme);
b.setView(view);
b.setTitle(R.string.drive_create_folder_title);
b.setPositiveButton(R.string.drive_create_folder_action, (dialog, which) -> {
diff --git a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/project/ClaimExperimentsActivity.java b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/project/ClaimExperimentsActivity.java
index b67fc1b5..49112d6b 100644
--- a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/project/ClaimExperimentsActivity.java
+++ b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/project/ClaimExperimentsActivity.java
@@ -36,6 +36,7 @@
import com.google.android.apps.forscience.whistlepunk.RxEvent;
import com.google.android.apps.forscience.whistlepunk.WhistlePunkApplication;
import com.google.android.apps.forscience.whistlepunk.accounts.AppAccount;
+import com.google.android.material.dialog.MaterialAlertDialogBuilder;
/**
* Activity that allows a signed-in user to claim experiments that were created before signed-in
@@ -80,7 +81,7 @@ protected void onCreate(Bundle savedInstanceState) {
.commit();
}
- final AlertDialog.Builder d = new AlertDialog.Builder(this, R.style.AppCompatAlertDialogStyle);
+ final AlertDialog.Builder d = new MaterialAlertDialogBuilder(this, R.style.AlertDialogTheme);
final View infoView = getLayoutInflater().inflate(R.layout.claim_experiments_info, null);
infoView.findViewById(R.id.claim_all_btn).setOnClickListener(v -> mInfoDialog.dismiss());
((TextView) infoView.findViewById(R.id.info_1)).setText(Html.fromHtml(getString(R.string.claim_experiments_info_1, claimingAccount.getAccountName())));
diff --git a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/project/ExperimentListFragment.java b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/project/ExperimentListFragment.java
index 024a2fab..55d6a6d6 100644
--- a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/project/ExperimentListFragment.java
+++ b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/project/ExperimentListFragment.java
@@ -819,7 +819,7 @@ public void fail(Exception e) {
}
private void confirmDeleteUnclaimedExperiments() {
- AlertDialog.Builder builder = new AlertDialog.Builder(getContext());
+ AlertDialog.Builder builder = new MaterialAlertDialogBuilder(requireContext(), R.style.AlertDialogTheme);
builder.setTitle(R.string.delete_all_prompt_headline);
builder.setMessage(R.string.delete_all_prompt_text);
builder.setNegativeButton(android.R.string.cancel, (dialog, which) -> dialog.cancel());
diff --git a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/project/experiment/NameExperimentDialog.java b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/project/experiment/NameExperimentDialog.java
index 8d7a91af..c07d2b64 100644
--- a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/project/experiment/NameExperimentDialog.java
+++ b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/project/experiment/NameExperimentDialog.java
@@ -33,6 +33,7 @@
import com.google.android.apps.forscience.whistlepunk.RxDataController;
import com.google.android.apps.forscience.whistlepunk.WhistlePunkApplication;
import com.google.android.apps.forscience.whistlepunk.accounts.AppAccount;
+import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import com.google.android.material.textfield.TextInputEditText;
import com.google.android.material.textfield.TextInputLayout;
import com.jakewharton.rxbinding2.widget.RxTextView;
@@ -80,7 +81,7 @@ public Dialog onCreateDialog(Bundle savedInstanceState) {
experimentId = getArguments().getString(KEY_EXPERIMENT_ID);
- final AlertDialog.Builder alertDialog = new AlertDialog.Builder(getActivity());
+ final AlertDialog.Builder alertDialog = new MaterialAlertDialogBuilder(getActivity(), R.style.AlertDialogTheme);
ViewGroup rootView =
(ViewGroup)
LayoutInflater.from(getActivity()).inflate(R.layout.name_experiment_dialog, null);
diff --git a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/review/DeleteMetadataItemDialog.java b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/review/DeleteMetadataItemDialog.java
index 3b4f39b6..72fb8077 100644
--- a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/review/DeleteMetadataItemDialog.java
+++ b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/review/DeleteMetadataItemDialog.java
@@ -21,6 +21,7 @@
import androidx.fragment.app.DialogFragment;
import androidx.appcompat.app.AlertDialog;
import com.google.android.apps.forscience.whistlepunk.R;
+import com.google.android.material.dialog.MaterialAlertDialogBuilder;
/** DialogFragment for deleting a metadata item. */
public class DeleteMetadataItemDialog extends DialogFragment {
@@ -73,7 +74,7 @@ public static DeleteMetadataItemDialog newInstance(int titleId, int messageId, B
public DeleteMetadataItemDialog() {}
public AlertDialog onCreateDialog(Bundle savedInstanceState) {
- AlertDialog.Builder alertDialog = new AlertDialog.Builder(getActivity());
+ AlertDialog.Builder alertDialog = new MaterialAlertDialogBuilder(getActivity(), R.style.AlertDialogTheme);
alertDialog.setTitle(getArguments().getInt(ARG_TITLE_ID));
alertDialog.setMessage(getArguments().getInt(ARG_MESSAGE_ID));
diff --git a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/review/EditTimestampDialog.java b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/review/EditTimestampDialog.java
index 8dfe677a..9090ff39 100644
--- a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/review/EditTimestampDialog.java
+++ b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/review/EditTimestampDialog.java
@@ -28,6 +28,8 @@
import android.widget.EditText;
import android.widget.TextView;
import com.google.android.apps.forscience.whistlepunk.R;
+import com.google.android.material.dialog.MaterialAlertDialogBuilder;
+
import java.util.Locale;
/** A dialog for editing RunReviewOverlay timestamps directly. */
@@ -91,7 +93,7 @@ public AlertDialog onCreateDialog(Bundle savedInstanceState) {
long currentMs = getArguments().getLong(KEY_CURRENT_MS);
picker.setTimestampRange(minMs, maxMs, zeroMs, currentMs);
- final AlertDialog.Builder alertDialog = new AlertDialog.Builder(getActivity());
+ final AlertDialog.Builder alertDialog = new MaterialAlertDialogBuilder(getActivity(), R.style.AlertDialogTheme);
View rootView =
LayoutInflater.from(getActivity()).inflate(R.layout.edit_timestamp_dialog, null);
diff --git a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/signin/ArduinoSettingsActivity.java b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/signin/ArduinoSettingsActivity.java
index 266423d6..e4045fc5 100644
--- a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/signin/ArduinoSettingsActivity.java
+++ b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/signin/ArduinoSettingsActivity.java
@@ -19,6 +19,7 @@
import com.google.android.apps.forscience.whistlepunk.gdrivesync.GDriveAccount;
import com.google.android.apps.forscience.whistlepunk.gdrivesync.GDriveShared;
import com.google.android.apps.forscience.whistlepunk.gdrivesync.GDriveSyncSetupActivity;
+import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import io.reactivex.annotations.NonNull;
import io.reactivex.observers.DisposableObserver;
@@ -49,7 +50,7 @@ protected void onCreate(Bundle savedInstanceState) {
findViewById(R.id.iv_back_action).setOnClickListener(v -> finish());
mAccountsProvider = WhistlePunkApplication.getAppServices(this).getAccountsProvider();
findViewById(R.id.sign_out).setOnClickListener(v -> {
- AlertDialog.Builder alert = new AlertDialog.Builder(ArduinoSettingsActivity.this);
+ AlertDialog.Builder alert = new MaterialAlertDialogBuilder(ArduinoSettingsActivity.this, R.style.AlertDialogTheme);
alert.setMessage(R.string.arduino_auth_settings_sign_out_confirm);
alert.setPositiveButton(android.R.string.ok, (dialog, which) -> {
GDriveShared.clearCredentials(this);
diff --git a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/signin/BaseFragment.java b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/signin/BaseFragment.java
index f257b947..5b313978 100644
--- a/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/signin/BaseFragment.java
+++ b/OpenScienceJournal/whistlepunk_library/src/main/java/com/google/android/apps/forscience/whistlepunk/signin/BaseFragment.java
@@ -11,6 +11,7 @@
import androidx.fragment.app.Fragment;
import com.google.android.apps.forscience.whistlepunk.R;
+import com.google.android.material.dialog.MaterialAlertDialogBuilder;
abstract class BaseFragment extends Fragment {
@@ -45,7 +46,7 @@ protected final void alert(int resId) {
}
protected final void alert(String message) {
- final AlertDialog.Builder b = new AlertDialog.Builder(mContext);
+ final AlertDialog.Builder b = new MaterialAlertDialogBuilder(mContext, R.style.AlertDialogTheme);
b.setMessage(message);
b.setCancelable(false);
b.setPositiveButton(android.R.string.ok, (dialogInterface, i) -> dialogInterface.dismiss());
@@ -61,7 +62,7 @@ protected final void toast(int message) {
}
protected final void alertNetworkError(final Runnable onRetry) {
- final AlertDialog.Builder b = new AlertDialog.Builder(mContext);
+ final AlertDialog.Builder b = new MaterialAlertDialogBuilder(mContext, R.style.AlertDialogTheme);
b.setMessage(R.string.error_network);
b.setCancelable(false);
b.setPositiveButton(R.string.retry, (dialogInterface, i) -> {
diff --git a/OpenScienceJournal/whistlepunk_library/src/main/res/values/styles.xml b/OpenScienceJournal/whistlepunk_library/src/main/res/values/styles.xml
index d7c17ef5..b76e4ee9 100644
--- a/OpenScienceJournal/whistlepunk_library/src/main/res/values/styles.xml
+++ b/OpenScienceJournal/whistlepunk_library/src/main/res/values/styles.xml
@@ -49,25 +49,40 @@
-
-
-
+
+
+
+
+