diff --git a/app/src/main/java/com/boba/runassistant/MainActivity.java b/app/src/main/java/com/boba/runassistant/MainActivity.java index 2cc2fd6..0f10992 100644 --- a/app/src/main/java/com/boba/runassistant/MainActivity.java +++ b/app/src/main/java/com/boba/runassistant/MainActivity.java @@ -1,8 +1,10 @@ package com.boba.runassistant; +import androidx.appcompat.app.AlertDialog; import androidx.appcompat.app.AppCompatActivity; import android.content.Context; +import android.content.DialogInterface; import android.content.Intent; import android.content.SharedPreferences; import android.os.Bundle; @@ -11,9 +13,7 @@ import android.view.View; import android.widget.Button; import android.widget.TextView; -import java.text.SimpleDateFormat; import java.util.Calendar; -import java.util.Date; import java.util.Locale; public class MainActivity extends AppCompatActivity { @@ -47,22 +47,13 @@ public class MainActivity extends AppCompatActivity { startIndoorRunningButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - startingTime = Calendar.getInstance(); + startIndoorRunning(); } }); stopIndoorRunningButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - if (!indoorTimeTextView.getText().toString().equals("-")) { - SharedPreferences sharedPreferences; - sharedPreferences = getSharedPreferences("previousRun", Context.MODE_PRIVATE); - SharedPreferences.Editor editor = sharedPreferences.edit(); - editor.putString("IND_TIME_KEY", indoorTimeTextView.getText().toString()); - editor.putString("IND_DATE_KEY", getStringDate()); - editor.apply(); - startingTime = null; - indoorTimeTextView.setText("-"); - } + stopIndoorRunning(); } }); startOutdoorRunningButton.setOnClickListener(new View.OnClickListener() { @@ -108,6 +99,20 @@ public class MainActivity extends AppCompatActivity { newTimer.start(); } + @Override + public void onBackPressed() { + new AlertDialog.Builder(this) + .setTitle("Exit confirmation") + .setMessage("Do you really want to close Run Assistant?") + .setIcon(android.R.drawable.ic_dialog_alert) + .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int whichButton) { + MainActivity.super.onBackPressed(); + } + }) + .setNegativeButton(android.R.string.no, null).show(); + } + private void launchMapActivity() { Intent intent = new Intent(this, MapsActivity.class); startActivity(intent); @@ -136,4 +141,45 @@ public class MainActivity extends AppCompatActivity { Calendar.getInstance().get(Calendar.MINUTE), Calendar.getInstance().get(Calendar.SECOND)); } + + private void startIndoorRunning() { + if (!indoorTimeTextView.getText().toString().equals("-")) { + new AlertDialog.Builder(this) + .setTitle("Confirmation") + .setMessage("Do you really want to restart the running exercise?") + .setIcon(android.R.drawable.ic_dialog_alert) + .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int whichButton) { + startingTime = Calendar.getInstance(); + } + }) + .setNegativeButton(android.R.string.no, null).show(); + + } else { + startingTime = Calendar.getInstance(); + } + } + + private void stopIndoorRunning() { + if (!indoorTimeTextView.getText().toString().equals("-")) { + new AlertDialog.Builder(this) + .setTitle("Confirmation") + .setMessage("Do you really want to stop and save the running exercise?") + .setIcon(android.R.drawable.ic_dialog_alert) + .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int whichButton) { + SharedPreferences sharedPreferences; + sharedPreferences = getSharedPreferences("previousRun", Context.MODE_PRIVATE); + SharedPreferences.Editor editor = sharedPreferences.edit(); + editor.putString("IND_TIME_KEY", indoorTimeTextView.getText().toString()); + editor.putString("IND_DATE_KEY", getStringDate()); + editor.apply(); + startingTime = null; + indoorTimeTextView.setText("-"); + } + }) + .setNegativeButton(android.R.string.no, null).show(); + + } + } } diff --git a/app/src/main/java/com/boba/runassistant/MapsActivity.java b/app/src/main/java/com/boba/runassistant/MapsActivity.java index 5fec697..66ca89e 100644 --- a/app/src/main/java/com/boba/runassistant/MapsActivity.java +++ b/app/src/main/java/com/boba/runassistant/MapsActivity.java @@ -139,6 +139,11 @@ public class MapsActivity extends FragmentActivity implements OnMapReadyCallback } } + @Override + public void onBackPressed() { + finishRunningActivityButton(); + } + private String getStringTimeFromSec(Integer timeElapsed) { Integer secondsElapsed = timeElapsed % 60; Integer minutesElapsed = (timeElapsed / 60) % 60; @@ -177,7 +182,7 @@ public class MapsActivity extends FragmentActivity implements OnMapReadyCallback private void finishRunningActivityButton() { new AlertDialog.Builder(this) .setTitle("Confirmation") - .setMessage("Do you really want to stop the running exercise?") + .setMessage("Do you really want to stop and save the running exercise?") .setIcon(android.R.drawable.ic_dialog_alert) .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int whichButton) {