diff --git a/app/src/BugReport/Feedback Pausentool.ods b/app/src/BugReport/Feedback Pausentool.ods new file mode 100644 index 0000000..2d72fb4 Binary files /dev/null and b/app/src/BugReport/Feedback Pausentool.ods differ diff --git a/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/BreakActivity.java b/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/BreakActivity.java index ac08e8e..023e4d8 100644 --- a/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/BreakActivity.java +++ b/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/BreakActivity.java @@ -88,6 +88,10 @@ public class BreakActivity extends AppCompatActivity implements View.OnClickList //Keep screen on while on break getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); + + View view = (View) findViewById(R.id.textViewBreak); + onClick(view); + } public void onClick(View v) { diff --git a/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/BreakReminder.java b/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/BreakReminder.java index 4367ab5..ce1f5f6 100644 --- a/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/BreakReminder.java +++ b/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/BreakReminder.java @@ -1,5 +1,6 @@ package orgprivacy_friendly_apps.secuso.privacyfriendlybreakreminder; +import android.annotation.TargetApi; import android.app.Activity; import android.app.Dialog; import android.app.DialogFragment; @@ -8,11 +9,13 @@ import android.app.NotificationManager; import android.appwidget.AppWidgetManager; import android.content.ComponentName; import android.content.Context; +import android.content.DialogInterface; import android.content.Intent; import android.content.SharedPreferences; import android.media.Ringtone; import android.media.RingtoneManager; import android.net.Uri; +import android.os.Build; import android.os.Bundle; import android.os.CountDownTimer; import android.os.Vibrator; @@ -79,6 +82,7 @@ public class BreakReminder extends AppCompatActivity editor.putString("exercise_value", exercises); editor.putString("profiles", allProfiles); editor.putString("current_language", Locale.getDefault().getLanguage()); + editor.putBoolean("notifications_stayOn", true); editor.apply(); WelcomeDialog welcomeDialog = new WelcomeDialog(); @@ -103,7 +107,6 @@ public class BreakReminder extends AppCompatActivity editor.apply(); } - System.out.println("Alle Profile: " + sharedPrefs.getString("profiles", "-1")); // If chosen, set screen to "stay on" @@ -514,7 +517,7 @@ public class BreakReminder extends AppCompatActivity this.startActivity(intent); } - public static class WelcomeDialog extends DialogFragment { + public static class WelcomeDialog extends DialogFragment{ @Override public void onAttach(Activity activity) { @@ -530,9 +533,20 @@ public class BreakReminder extends AppCompatActivity builder.setView(i.inflate(R.layout.first_dialog, null)); builder.setIcon(R.mipmap.ic_launcher); builder.setTitle(getActivity().getString(R.string.app_name_long)); - builder.setPositiveButton("Ok", null); + + builder.setPositiveButton(getActivity().getString(R.string.dialog_positive), null); + builder.setNegativeButton(getActivity().getString(R.string.tutorial_help), new DialogInterface.OnClickListener() { + @TargetApi(Build.VERSION_CODES.M) + @Override + public void onClick(DialogInterface dialog, int which) { + Context context = getContext(); + Intent intent = new Intent(context, HelpActivity.class); + context.startActivity(intent); + } + }); return builder.create(); } + } } diff --git a/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/DynamicListPreference.java b/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/DynamicListPreference.java index 3210155..f628e52 100644 --- a/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/DynamicListPreference.java +++ b/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/DynamicListPreference.java @@ -34,6 +34,7 @@ public class DynamicListPreference extends ListPreference implements DialogInter setEntries(entries()); setEntryValues(entryValues()); setValueIndex(Integer.parseInt(sharedPreferences.getString("current_profile", "1"))); + setPositiveButtonText(mContext.getString(R.string.dialog_positive)); return view; } diff --git a/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/HelpActivity.java b/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/HelpActivity.java index 9f9bcc7..96cb85e 100644 --- a/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/HelpActivity.java +++ b/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/HelpActivity.java @@ -1,20 +1,79 @@ package orgprivacy_friendly_apps.secuso.privacyfriendlybreakreminder; +import android.content.Intent; import android.os.Bundle; import android.support.v7.app.ActionBar; import android.support.v7.app.AppCompatActivity; import android.view.MenuItem; import android.view.View; +import android.widget.AdapterView; import android.widget.ImageView; +import android.widget.ListView; +import android.widget.TextView; public class HelpActivity extends AppCompatActivity { + boolean isInNextView = false; + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.help); + setContentView(R.layout.help_overview); setupActionBar(); + final ListView lv = (ListView) findViewById(R.id.listView2); + + lv.setOnItemClickListener(new AdapterView.OnItemClickListener() { + public void onItemClick(AdapterView myAdapter, View myView, int myItemInt, long mylng) { + String selectedFromList =(String) (lv.getItemAtPosition(myItemInt)); + isInNextView = true; + + setContentView(R.layout.help2); + TextView title = (TextView) findViewById(R.id.titleText); + TextView description = (TextView) findViewById(R.id.descriptionText); + ImageView img = (ImageView) findViewById(R.id.img); + + switch (myItemInt){ + case 0: + img.setImageResource(R.drawable.help_start_screen); + title.setText(R.string.help_start_screen_title); + description.setText(R.string.help_start_screen); + break; + case 1: + img.setImageResource(R.drawable.help_settings_screen); + title.setText(R.string.help_settings_screen_title); + description.setText(R.string.help_settings_screen); + break; + case 2: + img.setImageResource(R.drawable.help_create_profile_screen); + title.setText(R.string.help_settings_screen_title); + description.setText(R.string.help_settings_screen1); + break; + case 3: + img.setImageResource(R.drawable.help_notification_screen); + title.setText(R.string.help_settings_screen_title); + description.setText(R.string.help_settings_screen2); + break; + case 4: + img.setImageResource(R.drawable.help_create_profile_screen); + title.setText(R.string.help_create_profile_screen_title); + description.setText(R.string.help_create_profile_screen); + break; + case 5: + img.setImageResource(R.drawable.help_break_screen); + title.setText(R.string.help_break_screen_title); + description.setText(R.string.help_break_screen); + break; + case 6: + title.setText(R.string.disclaimer); + img.setImageResource(R.drawable.ic_help); + description.setText(R.string.disclaimer); + break; + default: + + } + } + }); } private void setupActionBar() { @@ -28,53 +87,22 @@ public class HelpActivity extends AppCompatActivity { @Override public boolean onOptionsItemSelected(MenuItem item) { + switch (item.getItemId()) { // Respond to the action bar's Up/Home button case android.R.id.home: + if(isInNextView){ + isInNextView = false; + finish(); + Intent intent = new Intent(this, HelpActivity.class); + startActivity(intent); + return true; + } + finish(); return true; } return super.onOptionsItemSelected(item); } - public void clickHandler(View v){ - switch (v.getId()){ - case R.id.imageView: - setContentView(R.layout.help2); - ImageView img = (ImageView) findViewById(R.id.img_back); - img.setImageResource(R.drawable.help_start_screen); - break; - case R.id.imageView1: - setContentView(R.layout.help2); - img = (ImageView) findViewById(R.id.img_back); - img.setImageResource(R.drawable.help_settings_screen); - break; - case R.id.imageView2: - setContentView(R.layout.help2); - img = (ImageView) findViewById(R.id.img_back); - img.setImageResource(R.drawable.help_create_profile_screen); - break; - case R.id.imageView3: - setContentView(R.layout.help2); - img = (ImageView) findViewById(R.id.img_back); - img.setImageResource(R.drawable.help_break_screen); - break; - case R.id.imageView4: - setContentView(R.layout.help2); - img = (ImageView) findViewById(R.id.img_back); - img.setImageResource(R.drawable.help_general_screen); - break; - case R.id.imageView5: - setContentView(R.layout.help2); - img = (ImageView) findViewById(R.id.img_back); - img.setImageResource(R.drawable.help_notification_screen); - break; - case R.id.img_back: - setContentView(R.layout.help); - break; - default: - - } - } - } diff --git a/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/ProfileActivity.java b/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/ProfileActivity.java index 383e37b..5e34cbe 100644 --- a/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/ProfileActivity.java +++ b/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/ProfileActivity.java @@ -113,6 +113,7 @@ public class ProfileActivity extends AppCompatActivity implements View.OnClickLi editor.putString("profiles", sharedPrefs.getString("profiles", "") + name + "," + interval_seekbar.getProgress() + "," + break_seekbar.getProgress() + "," + cont + "," + sharedPrefs.getString("exercise_value", "-1") + ";"); editor.apply(); finish(); + Toast.makeText(this, R.string.new_profile_success, Toast.LENGTH_LONG).show(); break; } case R.id.button_profile_cancel: diff --git a/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/SeekBarPreference.java b/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/SeekBarPreference.java index f45acc0..3d9c778 100644 --- a/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/SeekBarPreference.java +++ b/app/src/main/java/orgprivacy_friendly_apps/secuso/privacyfriendlybreakreminder/SeekBarPreference.java @@ -150,6 +150,7 @@ public class SeekBarPreference extends DialogPreference implements SeekBar.OnSee super.showDialog(state); Button positiveButton = ((AlertDialog) getDialog()).getButton(AlertDialog.BUTTON_POSITIVE); + positiveButton.setText(mContext.getString(R.string.dialog_positive)); positiveButton.setOnClickListener(this); } diff --git a/app/src/main/res/drawable/ic_about.png b/app/src/main/res/drawable/ic_about.png new file mode 100644 index 0000000..9566045 Binary files /dev/null and b/app/src/main/res/drawable/ic_about.png differ diff --git a/app/src/main/res/drawable/ic_help.png b/app/src/main/res/drawable/ic_help.png new file mode 100644 index 0000000..5604621 Binary files /dev/null and b/app/src/main/res/drawable/ic_help.png differ diff --git a/app/src/main/res/drawable/tutorial_play_button2.png b/app/src/main/res/drawable/tutorial_play_button2.png new file mode 100644 index 0000000..ca2ed8e Binary files /dev/null and b/app/src/main/res/drawable/tutorial_play_button2.png differ diff --git a/app/src/main/res/layout/activity_break.xml b/app/src/main/res/layout/activity_break.xml index 4d24fb7..7942fa6 100644 --- a/app/src/main/res/layout/activity_break.xml +++ b/app/src/main/res/layout/activity_break.xml @@ -18,11 +18,10 @@ + android:layout_alignParentBottom="true" + android:layout_alignParentEnd="true" />