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 @@ - - - + + + + +