Tested images and added custom exercise times per exercise. Refactoring.
49
.idea/codeStyles/Project.xml
generated
|
|
@ -24,54 +24,5 @@
|
|||
<option name="ITERATION_ELEMENTS_WRAPPING" value="chop_down_if_not_single" />
|
||||
</formatting-settings>
|
||||
</DBN-SQL>
|
||||
<Objective-C-extensions>
|
||||
<file>
|
||||
<option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Import" />
|
||||
<option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Macro" />
|
||||
<option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Typedef" />
|
||||
<option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Enum" />
|
||||
<option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Constant" />
|
||||
<option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Global" />
|
||||
<option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Struct" />
|
||||
<option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="FunctionPredecl" />
|
||||
<option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Function" />
|
||||
</file>
|
||||
<class>
|
||||
<option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Property" />
|
||||
<option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="Synthesize" />
|
||||
<option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="InitMethod" />
|
||||
<option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="StaticMethod" />
|
||||
<option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="InstanceMethod" />
|
||||
<option name="com.jetbrains.cidr.lang.util.OCDeclarationKind" value="DeallocMethod" />
|
||||
</class>
|
||||
<extensions>
|
||||
<pair source="cpp" header="h" fileNamingConvention="NONE" />
|
||||
<pair source="c" header="h" fileNamingConvention="NONE" />
|
||||
</extensions>
|
||||
</Objective-C-extensions>
|
||||
<DBN-PSQL>
|
||||
<case-options enabled="false">
|
||||
<option name="KEYWORD_CASE" value="lower" />
|
||||
<option name="FUNCTION_CASE" value="lower" />
|
||||
<option name="PARAMETER_CASE" value="lower" />
|
||||
<option name="DATATYPE_CASE" value="lower" />
|
||||
<option name="OBJECT_CASE" value="preserve" />
|
||||
</case-options>
|
||||
<formatting-settings enabled="false" />
|
||||
</DBN-PSQL>
|
||||
<DBN-SQL>
|
||||
<case-options enabled="false">
|
||||
<option name="KEYWORD_CASE" value="lower" />
|
||||
<option name="FUNCTION_CASE" value="lower" />
|
||||
<option name="PARAMETER_CASE" value="lower" />
|
||||
<option name="DATATYPE_CASE" value="lower" />
|
||||
<option name="OBJECT_CASE" value="preserve" />
|
||||
</case-options>
|
||||
<formatting-settings enabled="false">
|
||||
<option name="STATEMENT_SPACING" value="one_line" />
|
||||
<option name="CLAUSE_CHOP_DOWN" value="chop_down_if_statement_long" />
|
||||
<option name="ITERATION_ELEMENTS_WRAPPING" value="chop_down_if_not_single" />
|
||||
</formatting-settings>
|
||||
</DBN-SQL>
|
||||
</code_scheme>
|
||||
</component>
|
||||
|
|
@ -2,14 +2,13 @@ apply plugin: 'com.android.application'
|
|||
|
||||
android {
|
||||
compileSdkVersion 28
|
||||
buildToolsVersion '27.0.3'
|
||||
|
||||
defaultConfig {
|
||||
applicationId "org.secuso.privacyfriendlypausinghealthily"
|
||||
applicationId "org.secuso.aktivpause"
|
||||
minSdkVersion 21
|
||||
targetSdkVersion 27
|
||||
versionCode 7
|
||||
versionName "1.3"
|
||||
versionCode 1
|
||||
versionName "1.0"
|
||||
vectorDrawables.useSupportLibrary = true
|
||||
}
|
||||
lintOptions {
|
||||
|
|
@ -38,13 +37,13 @@ repositories {
|
|||
|
||||
dependencies {
|
||||
implementation fileTree(include: ['*.jar'], dir: 'libs')
|
||||
implementation 'com.android.support:appcompat-v7:28.0.0-alpha1'
|
||||
implementation 'com.android.support:design:28.0.0-alpha1'
|
||||
implementation 'com.github.bumptech.glide:glide:4.6.1'
|
||||
implementation 'com.android.support:support-v4:28.0.0-alpha1'
|
||||
implementation 'com.android.support:support-annotations:27.1.1'
|
||||
implementation 'com.android.support:cardview-v7:28.0.0-alpha1'
|
||||
implementation 'com.android.support.constraint:constraint-layout:1.1.2'
|
||||
implementation 'com.android.support:appcompat-v7:28.0.0'
|
||||
implementation 'com.android.support:design:28.0.0'
|
||||
implementation 'com.github.bumptech.glide:glide:4.7.1'
|
||||
implementation 'com.android.support:support-v4:28.0.0'
|
||||
implementation 'com.android.support:support-annotations:28.0.0'
|
||||
implementation 'com.android.support:cardview-v7:28.0.0'
|
||||
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
|
||||
implementation 'com.nex3z:flow-layout:1.0.0'
|
||||
implementation 'com.readystatesoftware.sqliteasset:sqliteassethelper:2.0.1'
|
||||
testImplementation 'junit:junit:4.12'
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="org.secuso.privacyfriendlypausinghealthily">
|
||||
package="org.secuso.aktivpause">
|
||||
|
||||
<uses-permission android:name="android.permission.VIBRATE" />
|
||||
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
|
||||
|
|
@ -15,16 +15,16 @@
|
|||
android:supportsRtl="true"
|
||||
android:theme="@style/AppTheme">
|
||||
<activity
|
||||
android:name="org.secuso.privacyfriendlypausinghealthily.activities.SettingsActivity"
|
||||
android:name="org.secuso.aktivpause.activities.SettingsActivity"
|
||||
android:label="@string/title_activity_settings"
|
||||
android:parentActivityName="org.secuso.privacyfriendlypausinghealthily.activities.TimerActivity"
|
||||
android:parentActivityName="org.secuso.aktivpause.activities.TimerActivity"
|
||||
android:screenOrientation="portrait">
|
||||
<meta-data
|
||||
android:name="android.support.PARENT_ACTIVITY"
|
||||
android:value="org.secuso.privacyfriendlypausinghealthily.activities.TimerActivity" />
|
||||
android:value="org.secuso.aktivpause.activities.TimerActivity" />
|
||||
</activity>
|
||||
<activity
|
||||
android:name="org.secuso.privacyfriendlypausinghealthily.activities.SplashActivity"
|
||||
android:name="org.secuso.aktivpause.activities.SplashActivity"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/SplashTheme">
|
||||
<intent-filter>
|
||||
|
|
@ -34,92 +34,91 @@
|
|||
</intent-filter>
|
||||
</activity>
|
||||
<activity
|
||||
android:name="org.secuso.privacyfriendlypausinghealthily.activities.tutorial.TutorialActivity"
|
||||
android:parentActivityName="org.secuso.privacyfriendlypausinghealthily.activities.TimerActivity"
|
||||
android:name="org.secuso.aktivpause.activities.tutorial.TutorialActivity"
|
||||
android:parentActivityName="org.secuso.aktivpause.activities.TimerActivity"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/AppTheme.NoActionBar">
|
||||
<meta-data
|
||||
android:name="android.support.PARENT_ACTIVITY"
|
||||
android:value="org.secuso.privacyfriendlypausinghealthily.activities.TimerActivity" />
|
||||
android:value="org.secuso.aktivpause.activities.TimerActivity" />
|
||||
</activity>
|
||||
<activity
|
||||
android:name="org.secuso.privacyfriendlypausinghealthily.activities.TimerActivity"
|
||||
android:name="org.secuso.aktivpause.activities.TimerActivity"
|
||||
android:label="@string/activity_title_break_reminder"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/AppTheme.NoActionBar" />
|
||||
<activity
|
||||
android:name="org.secuso.privacyfriendlypausinghealthily.activities.ManageExerciseSetsActivity"
|
||||
android:name="org.secuso.aktivpause.activities.ManageExerciseSetsActivity"
|
||||
android:label="@string/activity_title_manage_exercise_sets"
|
||||
android:parentActivityName="org.secuso.privacyfriendlypausinghealthily.activities.TimerActivity"
|
||||
android:parentActivityName="org.secuso.aktivpause.activities.TimerActivity"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/AppTheme.NoActionBar"
|
||||
android:windowSoftInputMode="adjustResize">
|
||||
<meta-data
|
||||
android:name="android.support.PARENT_ACTIVITY"
|
||||
android:value="org.secuso.privacyfriendlypausinghealthily.activities.TimerActivity" />
|
||||
android:value="org.secuso.aktivpause.activities.TimerActivity" />
|
||||
</activity>
|
||||
<activity
|
||||
android:name="org.secuso.privacyfriendlypausinghealthily.activities.ExerciseActivity"
|
||||
android:name="org.secuso.aktivpause.activities.ExerciseActivity"
|
||||
android:label=""
|
||||
android:parentActivityName="org.secuso.privacyfriendlypausinghealthily.activities.TimerActivity"
|
||||
android:parentActivityName="org.secuso.aktivpause.activities.TimerActivity"
|
||||
android:screenOrientation="portrait">
|
||||
<meta-data
|
||||
android:name="android.support.PARENT_ACTIVITY"
|
||||
android:value="org.secuso.privacyfriendlypausinghealthily.activities.TimerActivity" />
|
||||
android:value="org.secuso.aktivpause.activities.TimerActivity" />
|
||||
</activity>
|
||||
<activity
|
||||
android:name="org.secuso.privacyfriendlypausinghealthily.activities.EditExerciseSetActivity"
|
||||
android:name="org.secuso.aktivpause.activities.EditExerciseSetActivity"
|
||||
android:label="@string/activity_title_edit_exercise_set"
|
||||
android:parentActivityName="org.secuso.privacyfriendlypausinghealthily.activities.ManageExerciseSetsActivity"
|
||||
android:parentActivityName="org.secuso.aktivpause.activities.ManageExerciseSetsActivity"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/AppTheme.NoActionBar"
|
||||
android:windowSoftInputMode="adjustResize">
|
||||
<meta-data
|
||||
android:name="android.support.PARENT_ACTIVITY"
|
||||
android:value="org.secuso.privacyfriendlypausinghealthily.activities.ManageExerciseSetsActivity" />
|
||||
android:value="org.secuso.aktivpause.activities.ManageExerciseSetsActivity" />
|
||||
</activity>
|
||||
<activity
|
||||
android:name="org.secuso.privacyfriendlypausinghealthily.activities.ChooseExerciseActivity"
|
||||
android:name="org.secuso.aktivpause.activities.ChooseExerciseActivity"
|
||||
android:label="@string/activity_title_choose_exercises"
|
||||
android:parentActivityName="org.secuso.privacyfriendlypausinghealthily.activities.EditExerciseSetActivity"
|
||||
android:parentActivityName="org.secuso.aktivpause.activities.EditExerciseSetActivity"
|
||||
android:screenOrientation="portrait">
|
||||
<meta-data
|
||||
android:name="android.support.PARENT_ACTIVITY"
|
||||
android:value="org.secuso.privacyfriendlypausinghealthily.activities.EditExerciseSetActivity" />
|
||||
>
|
||||
android:value="org.secuso.aktivpause.activities.EditExerciseSetActivity" />
|
||||
</activity>
|
||||
<activity
|
||||
android:name="org.secuso.privacyfriendlypausinghealthily.activities.AboutActivity"
|
||||
android:name="org.secuso.aktivpause.activities.AboutActivity"
|
||||
android:label="@string/activity_title_about"
|
||||
android:parentActivityName="org.secuso.privacyfriendlypausinghealthily.activities.TimerActivity"
|
||||
android:parentActivityName="org.secuso.aktivpause.activities.TimerActivity"
|
||||
android:screenOrientation="portrait">
|
||||
<meta-data
|
||||
android:name="android.support.PARENT_ACTIVITY"
|
||||
android:value="org.secuso.privacyfriendlypausinghealthily.activities.TimerActivity" />
|
||||
android:value="org.secuso.aktivpause.activities.TimerActivity" />
|
||||
</activity>
|
||||
<activity
|
||||
android:name="org.secuso.privacyfriendlypausinghealthily.activities.HelpActivity"
|
||||
android:name="org.secuso.aktivpause.activities.HelpActivity"
|
||||
android:label="@string/activity_title_help"
|
||||
android:parentActivityName="org.secuso.privacyfriendlypausinghealthily.activities.TimerActivity"
|
||||
android:parentActivityName="org.secuso.aktivpause.activities.TimerActivity"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/AppTheme.NoActionBar">
|
||||
<meta-data
|
||||
android:name="android.support.PARENT_ACTIVITY"
|
||||
android:value="org.secuso.privacyfriendlypausinghealthily.activities.TimerActivity" />
|
||||
android:value="org.secuso.aktivpause.activities.TimerActivity" />
|
||||
</activity>
|
||||
|
||||
<service
|
||||
android:name="org.secuso.privacyfriendlypausinghealthily.service.TimerService"
|
||||
android:name="org.secuso.aktivpause.service.TimerService"
|
||||
android:enabled="true"
|
||||
android:exported="false" />
|
||||
|
||||
<receiver android:name="org.secuso.privacyfriendlypausinghealthily.receivers.OnBootCompletedReceiver">
|
||||
<receiver android:name="org.secuso.aktivpause.receivers.OnBootCompletedReceiver">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.BOOT_COMPLETED" />
|
||||
</intent-filter>
|
||||
</receiver>
|
||||
|
||||
<receiver android:name="org.secuso.privacyfriendlypausinghealthily.receivers.TimerSchedulerReceiver"/>
|
||||
<receiver android:name="org.secuso.aktivpause.receivers.TimerSchedulerReceiver"/>
|
||||
|
||||
</application>
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.activities;
|
||||
package org.secuso.aktivpause.activities;
|
||||
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
|
|
@ -9,8 +9,8 @@ import android.view.MenuItem;
|
|||
import android.view.View;
|
||||
import android.widget.TextView;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.BuildConfig;
|
||||
import org.secuso.privacyfriendlypausinghealthily.R;
|
||||
import org.secuso.aktivpause.BuildConfig;
|
||||
import org.secuso.aktivpause.R;
|
||||
|
||||
/**
|
||||
* About Page :)
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.activities;
|
||||
package org.secuso.aktivpause.activities;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.os.PersistableBundle;
|
||||
|
|
@ -16,17 +16,17 @@ import android.view.MenuItem;
|
|||
import android.view.View;
|
||||
import android.widget.TextView;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.R;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.adapter.ExerciseAdapter;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.helper.IExerciseTimeUpdateable;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.SQLiteHelper;
|
||||
import org.secuso.privacyfriendlypausinghealthily.exercises.ExerciseLocale;
|
||||
import org.secuso.privacyfriendlypausinghealthily.exercises.ExerciseSections;
|
||||
import org.secuso.aktivpause.R;
|
||||
import org.secuso.aktivpause.activities.adapter.ExerciseAdapter;
|
||||
import org.secuso.aktivpause.activities.helper.IExerciseTimeUpdateable;
|
||||
import org.secuso.aktivpause.database.SQLiteHelper;
|
||||
import org.secuso.aktivpause.exercises.ExerciseLocale;
|
||||
import org.secuso.aktivpause.exercises.ExerciseSections;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import static org.secuso.privacyfriendlypausinghealthily.activities.adapter.ExerciseAdapter.ID_COMPARATOR;
|
||||
import static org.secuso.aktivpause.activities.adapter.ExerciseAdapter.ID_COMPARATOR;
|
||||
|
||||
/**
|
||||
* This activity lets you choose exercises. The result is then sent back to {@link EditExerciseSetActivity}
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.activities;
|
||||
package org.secuso.aktivpause.activities;
|
||||
|
||||
import android.animation.Animator;
|
||||
import android.animation.AnimatorListenerAdapter;
|
||||
|
|
@ -25,18 +25,18 @@ import android.widget.ProgressBar;
|
|||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.adapter.ExerciseAdapter;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.data.Exercise;
|
||||
import org.secuso.privacyfriendlypausinghealthily.exercises.ExerciseLocale;
|
||||
import org.secuso.privacyfriendlypausinghealthily.R;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.SQLiteHelper;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.data.ExerciseSet;
|
||||
import org.secuso.aktivpause.activities.adapter.ExerciseAdapter;
|
||||
import org.secuso.aktivpause.database.data.Exercise;
|
||||
import org.secuso.aktivpause.exercises.ExerciseLocale;
|
||||
import org.secuso.aktivpause.R;
|
||||
import org.secuso.aktivpause.database.SQLiteHelper;
|
||||
import org.secuso.aktivpause.database.data.ExerciseSet;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
|
||||
import static org.secuso.privacyfriendlypausinghealthily.activities.adapter.ExerciseAdapter.ID_COMPARATOR;
|
||||
import static org.secuso.aktivpause.activities.adapter.ExerciseAdapter.ID_COMPARATOR;
|
||||
|
||||
/**
|
||||
* This activity lets you edit the name of an exercise set. To edit what exercises are in that set, {@link ChooseExerciseActivity} is called.
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.activities;
|
||||
package org.secuso.aktivpause.activities;
|
||||
|
||||
import android.animation.Animator;
|
||||
import android.animation.AnimatorListenerAdapter;
|
||||
|
|
@ -33,14 +33,16 @@ import android.widget.ProgressBar;
|
|||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.R;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.tutorial.FirstLaunchManager;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.SQLiteHelper;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.data.Exercise;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.data.ExerciseSet;
|
||||
import org.secuso.privacyfriendlypausinghealthily.dialog.ExerciseDialog;
|
||||
import org.secuso.privacyfriendlypausinghealthily.exercises.ExerciseLocale;
|
||||
import org.secuso.privacyfriendlypausinghealthily.service.TimerService;
|
||||
import com.bumptech.glide.Glide;
|
||||
|
||||
import org.secuso.aktivpause.R;
|
||||
import org.secuso.aktivpause.activities.tutorial.FirstLaunchManager;
|
||||
import org.secuso.aktivpause.database.SQLiteHelper;
|
||||
import org.secuso.aktivpause.database.data.Exercise;
|
||||
import org.secuso.aktivpause.database.data.ExerciseSet;
|
||||
import org.secuso.aktivpause.dialog.ExerciseDialog;
|
||||
import org.secuso.aktivpause.exercises.ExerciseLocale;
|
||||
import org.secuso.aktivpause.service.TimerService;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
|
|
@ -48,7 +50,7 @@ import java.util.Random;
|
|||
|
||||
import static android.content.Intent.FLAG_ACTIVITY_CLEAR_TOP;
|
||||
import static android.view.Gravity.CENTER_HORIZONTAL;
|
||||
import static org.secuso.privacyfriendlypausinghealthily.service.TimerService.ACTION_STOP_TIMER;
|
||||
import static org.secuso.aktivpause.service.TimerService.ACTION_STOP_TIMER;
|
||||
|
||||
/**
|
||||
* This activity handles showing the exercises and the exercise timer.
|
||||
|
|
@ -571,13 +573,24 @@ public class ExerciseActivity extends AppCompatActivity implements android.suppo
|
|||
return false;
|
||||
}
|
||||
|
||||
private void showExercise(final Exercise e, int image) {
|
||||
private void showExercise(final Exercise e, int currentExercisePart) {
|
||||
int[] images = e.getImageResIds(this);
|
||||
int[] durations = e.getDurations();
|
||||
|
||||
if (image < 0 || image >= images.length) {
|
||||
image = 0;
|
||||
int exerciseDuration = 30 * 1000;
|
||||
|
||||
if (currentExercisePart < 0 || currentExercisePart >= images.length) {
|
||||
currentExercisePart = 0;
|
||||
}
|
||||
|
||||
if(currentExercisePart >= durations.length || durations.length > 0) {
|
||||
exerciseDuration = durations[0] * 1000;
|
||||
} else {
|
||||
exerciseDuration = durations[currentExercisePart] * 1000;
|
||||
}
|
||||
|
||||
exerciseTime = exerciseDuration;
|
||||
|
||||
View.OnClickListener infoClickListener = new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
|
|
@ -594,7 +607,7 @@ public class ExerciseActivity extends AppCompatActivity implements android.suppo
|
|||
executionText.setText(e.getExecution());
|
||||
descriptionText.setText(e.getDescription());
|
||||
sectionText.setText(e.getSection(this));
|
||||
exerciseImage.setImageResource(e.getImageResIds(this)[image]);
|
||||
Glide.with(this).load(e.getImageResIds(this)[currentExercisePart]).into(exerciseImage);
|
||||
exerciseImage.setOnClickListener(infoClickListener);
|
||||
exerciseInfoButton.setOnClickListener(infoClickListener);
|
||||
|
||||
|
|
@ -1,11 +1,11 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.activities;
|
||||
package org.secuso.aktivpause.activities;
|
||||
|
||||
import android.os.Bundle;
|
||||
import android.widget.ExpandableListView;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.R;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.helper.BaseActivity;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.helper.ExpandableListAdapter;
|
||||
import org.secuso.aktivpause.R;
|
||||
import org.secuso.aktivpause.activities.helper.BaseActivity;
|
||||
import org.secuso.aktivpause.activities.helper.ExpandableListAdapter;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.activities;
|
||||
package org.secuso.aktivpause.activities;
|
||||
|
||||
import android.animation.Animator;
|
||||
import android.animation.AnimatorListenerAdapter;
|
||||
|
|
@ -33,13 +33,13 @@ import android.widget.ProgressBar;
|
|||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.tutorial.FirstLaunchManager;
|
||||
import org.secuso.privacyfriendlypausinghealthily.exercises.ExerciseLocale;
|
||||
import org.secuso.privacyfriendlypausinghealthily.R;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.adapter.ExerciseSetListAdapter;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.helper.BaseActivity;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.SQLiteHelper;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.data.ExerciseSet;
|
||||
import org.secuso.aktivpause.activities.tutorial.FirstLaunchManager;
|
||||
import org.secuso.aktivpause.exercises.ExerciseLocale;
|
||||
import org.secuso.aktivpause.R;
|
||||
import org.secuso.aktivpause.activities.adapter.ExerciseSetListAdapter;
|
||||
import org.secuso.aktivpause.activities.helper.BaseActivity;
|
||||
import org.secuso.aktivpause.database.SQLiteHelper;
|
||||
import org.secuso.aktivpause.database.data.ExerciseSet;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
package org.secuso.privacyfriendlypausinghealthily.activities;
|
||||
package org.secuso.aktivpause.activities;
|
||||
|
||||
|
||||
import android.annotation.TargetApi;
|
||||
|
|
@ -16,9 +16,9 @@ import android.preference.PreferenceFragment;
|
|||
import android.preference.PreferenceManager;
|
||||
import android.view.MenuItem;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.R;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.helper.AppCompatPreferenceActivity;
|
||||
import org.secuso.privacyfriendlypausinghealthily.receivers.TimerSchedulerReceiver;
|
||||
import org.secuso.aktivpause.R;
|
||||
import org.secuso.aktivpause.activities.helper.AppCompatPreferenceActivity;
|
||||
import org.secuso.aktivpause.receivers.TimerSchedulerReceiver;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
|
|
@ -1,11 +1,11 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.activities;
|
||||
package org.secuso.aktivpause.activities;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.support.v7.app.AppCompatActivity;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.tutorial.FirstLaunchManager;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.tutorial.TutorialActivity;
|
||||
import org.secuso.aktivpause.activities.tutorial.FirstLaunchManager;
|
||||
import org.secuso.aktivpause.activities.tutorial.TutorialActivity;
|
||||
|
||||
/**
|
||||
* @author yonjuni
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.activities;
|
||||
package org.secuso.aktivpause.activities;
|
||||
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.ComponentName;
|
||||
|
|
@ -28,14 +28,14 @@ import android.widget.Spinner;
|
|||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.tutorial.FirstLaunchManager;
|
||||
import org.secuso.privacyfriendlypausinghealthily.exercises.ExerciseLocale;
|
||||
import org.secuso.privacyfriendlypausinghealthily.R;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.adapter.ExerciseSetSpinnerAdapter;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.helper.BaseActivity;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.SQLiteHelper;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.data.ExerciseSet;
|
||||
import org.secuso.privacyfriendlypausinghealthily.service.TimerService;
|
||||
import org.secuso.aktivpause.activities.tutorial.FirstLaunchManager;
|
||||
import org.secuso.aktivpause.exercises.ExerciseLocale;
|
||||
import org.secuso.aktivpause.R;
|
||||
import org.secuso.aktivpause.activities.adapter.ExerciseSetSpinnerAdapter;
|
||||
import org.secuso.aktivpause.activities.helper.BaseActivity;
|
||||
import org.secuso.aktivpause.database.SQLiteHelper;
|
||||
import org.secuso.aktivpause.database.data.ExerciseSet;
|
||||
import org.secuso.aktivpause.service.TimerService;
|
||||
|
||||
import com.shawnlin.numberpicker.NumberPicker;
|
||||
|
||||
|
|
@ -43,8 +43,8 @@ import java.util.LinkedList;
|
|||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
|
||||
import static org.secuso.privacyfriendlypausinghealthily.activities.tutorial.FirstLaunchManager.DEFAULT_EXERCISE_SET;
|
||||
import static org.secuso.privacyfriendlypausinghealthily.activities.tutorial.FirstLaunchManager.PAUSE_TIME;
|
||||
import static org.secuso.aktivpause.activities.tutorial.FirstLaunchManager.DEFAULT_EXERCISE_SET;
|
||||
import static org.secuso.aktivpause.activities.tutorial.FirstLaunchManager.PAUSE_TIME;
|
||||
|
||||
/**
|
||||
* This is the main break reminder activity. It lets you choose exercise and work times, as well as the exercises you want to perform during the break.
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.activities.adapter;
|
||||
package org.secuso.aktivpause.activities.adapter;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.drawable.Drawable;
|
||||
|
|
@ -18,11 +18,11 @@ import android.widget.ImageView;
|
|||
import com.bumptech.glide.Glide;
|
||||
import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.R;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.helper.IExerciseTimeUpdateable;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.tutorial.FirstLaunchManager;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.data.Exercise;
|
||||
import org.secuso.privacyfriendlypausinghealthily.dialog.ExerciseDialog;
|
||||
import org.secuso.aktivpause.R;
|
||||
import org.secuso.aktivpause.activities.helper.IExerciseTimeUpdateable;
|
||||
import org.secuso.aktivpause.activities.tutorial.FirstLaunchManager;
|
||||
import org.secuso.aktivpause.database.data.Exercise;
|
||||
import org.secuso.aktivpause.dialog.ExerciseDialog;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
|
|
@ -258,9 +258,25 @@ public class ExerciseAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
|
|||
}
|
||||
|
||||
public String getExerciseTimeString(List<Integer> specificIds) {
|
||||
long exerciseDuration = Long.parseLong(PreferenceManager.getDefaultSharedPreferences(mContext).getString(FirstLaunchManager.EXERCISE_DURATION, "30"));
|
||||
int seconds = (int) (getExerciseCount(specificIds) * exerciseDuration);
|
||||
return String.format(Locale.getDefault(), "%02d:%02d", (seconds / 60), (seconds % 60));
|
||||
List<Exercise> checkedExercises = new LinkedList<Exercise>();
|
||||
|
||||
for(int id : checkedIds) {
|
||||
for(Exercise e : mAllExercises) {
|
||||
if (e.getId() == id) {
|
||||
checkedExercises.add(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
long exerciseDuration = 0;
|
||||
|
||||
for(Exercise e : checkedExercises) {
|
||||
for(int d : e.getDurations()) {
|
||||
exerciseDuration += d;
|
||||
}
|
||||
}
|
||||
|
||||
return String.format(Locale.getDefault(), "%02d:%02d", (exerciseDuration / 60), (exerciseDuration % 60));
|
||||
}
|
||||
|
||||
public class ExerciseViewHolder extends RecyclerView.ViewHolder {
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.activities.adapter;
|
||||
package org.secuso.aktivpause.activities.adapter;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.preference.PreferenceManager;
|
||||
|
|
@ -16,11 +16,11 @@ import android.widget.Toast;
|
|||
import com.bumptech.glide.Glide;
|
||||
import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.R;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.EditExerciseSetActivity;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.ManageExerciseSetsActivity;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.tutorial.FirstLaunchManager;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.data.ExerciseSet;
|
||||
import org.secuso.aktivpause.R;
|
||||
import org.secuso.aktivpause.activities.EditExerciseSetActivity;
|
||||
import org.secuso.aktivpause.activities.ManageExerciseSetsActivity;
|
||||
import org.secuso.aktivpause.activities.tutorial.FirstLaunchManager;
|
||||
import org.secuso.aktivpause.database.data.ExerciseSet;
|
||||
|
||||
import java.util.Iterator;
|
||||
import java.util.LinkedList;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.activities.adapter;
|
||||
package org.secuso.aktivpause.activities.adapter;
|
||||
|
||||
import android.content.Context;
|
||||
import android.preference.PreferenceManager;
|
||||
|
|
@ -16,9 +16,9 @@ import android.widget.TextView;
|
|||
import com.bumptech.glide.Glide;
|
||||
import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.R;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.tutorial.FirstLaunchManager;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.data.ExerciseSet;
|
||||
import org.secuso.aktivpause.R;
|
||||
import org.secuso.aktivpause.activities.tutorial.FirstLaunchManager;
|
||||
import org.secuso.aktivpause.database.data.ExerciseSet;
|
||||
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.activities.helper;
|
||||
package org.secuso.aktivpause.activities.helper;
|
||||
|
||||
import android.content.res.Configuration;
|
||||
import android.os.Bundle;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.activities.helper;
|
||||
package org.secuso.aktivpause.activities.helper;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.content.SharedPreferences;
|
||||
|
|
@ -16,13 +16,13 @@ import android.support.v7.widget.Toolbar;
|
|||
import android.view.MenuItem;
|
||||
import android.view.View;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.R;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.AboutActivity;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.HelpActivity;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.ManageExerciseSetsActivity;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.SettingsActivity;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.TimerActivity;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.tutorial.TutorialActivity;
|
||||
import org.secuso.aktivpause.R;
|
||||
import org.secuso.aktivpause.activities.AboutActivity;
|
||||
import org.secuso.aktivpause.activities.HelpActivity;
|
||||
import org.secuso.aktivpause.activities.ManageExerciseSetsActivity;
|
||||
import org.secuso.aktivpause.activities.SettingsActivity;
|
||||
import org.secuso.aktivpause.activities.TimerActivity;
|
||||
import org.secuso.aktivpause.activities.tutorial.TutorialActivity;
|
||||
|
||||
import static android.content.Intent.FLAG_ACTIVITY_CLEAR_TOP;
|
||||
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.activities.helper;
|
||||
package org.secuso.aktivpause.activities.helper;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.Typeface;
|
||||
|
|
@ -8,7 +8,7 @@ import android.view.ViewGroup;
|
|||
import android.widget.BaseExpandableListAdapter;
|
||||
import android.widget.TextView;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.R;
|
||||
import org.secuso.aktivpause.R;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.activities.helper;
|
||||
package org.secuso.aktivpause.activities.helper;
|
||||
|
||||
/**
|
||||
* @author Christopher Beckmann (Kamuno)
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.activities.tutorial;
|
||||
package org.secuso.aktivpause.activities.tutorial;
|
||||
|
||||
import android.app.NotificationChannel;
|
||||
import android.app.NotificationChannelGroup;
|
||||
|
|
@ -10,9 +10,9 @@ import android.os.Build;
|
|||
import android.preference.PreferenceManager;
|
||||
import android.support.annotation.RequiresApi;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.R;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.SQLiteHelper;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.columns.ExerciseSetColumns;
|
||||
import org.secuso.aktivpause.R;
|
||||
import org.secuso.aktivpause.database.SQLiteHelper;
|
||||
import org.secuso.aktivpause.database.columns.ExerciseSetColumns;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
|
|
@ -90,7 +90,7 @@ public class FirstLaunchManager {
|
|||
.putStringSet(PREF_SCHEDULE_EXERCISE_DAYS, new HashSet<String>(Arrays.asList("Mo", "Di", "Mi", "Do", "Fr", "Sa", "So")))
|
||||
.apply();
|
||||
|
||||
loadInitialExerciseSets();
|
||||
//TODO loadInitialExerciseSets();
|
||||
|
||||
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.activities.tutorial;
|
||||
package org.secuso.aktivpause.activities.tutorial;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
|
|
@ -19,8 +19,8 @@ import android.widget.Button;
|
|||
import android.widget.LinearLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.R;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.ManageExerciseSetsActivity;
|
||||
import org.secuso.aktivpause.R;
|
||||
import org.secuso.aktivpause.activities.ManageExerciseSetsActivity;
|
||||
|
||||
/**
|
||||
* Class structure taken from tutorial at http://www.androidhive.info/2016/05/android-build-intro-slider-app/
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.database;
|
||||
package org.secuso.aktivpause.database;
|
||||
|
||||
|
||||
import android.content.ContentValues;
|
||||
|
|
@ -9,11 +9,11 @@ import android.support.annotation.NonNull;
|
|||
|
||||
import com.readystatesoftware.sqliteasset.SQLiteAssetHelper;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.columns.ExerciseSetColumns;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.data.Exercise;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.columns.ExerciseColumns;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.columns.ExerciseLocalColumns;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.data.ExerciseSet;
|
||||
import org.secuso.aktivpause.database.columns.ExerciseSetColumns;
|
||||
import org.secuso.aktivpause.database.data.Exercise;
|
||||
import org.secuso.aktivpause.database.columns.ExerciseColumns;
|
||||
import org.secuso.aktivpause.database.columns.ExerciseLocalColumns;
|
||||
import org.secuso.aktivpause.database.data.ExerciseSet;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.LinkedList;
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.database.columns;
|
||||
package org.secuso.aktivpause.database.columns;
|
||||
|
||||
import android.database.Cursor;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.data.Exercise;
|
||||
import org.secuso.aktivpause.database.data.Exercise;
|
||||
|
||||
/**
|
||||
* Database representation of an exercise.
|
||||
|
|
@ -18,11 +18,13 @@ public final class ExerciseColumns {
|
|||
public static final String _ID = "exercise_id";
|
||||
public static final String SECTION = "section";
|
||||
public static final String IMAGE_ID = "image_id";
|
||||
public static final String DURATION = "duration";
|
||||
|
||||
public static final String[] PROJECTION = {
|
||||
_ID,
|
||||
SECTION,
|
||||
IMAGE_ID,
|
||||
DURATION,
|
||||
};
|
||||
|
||||
public static final String SQL_DELETE_ENTRIES = "DROP TABLE IF EXISTS " + TABLE_NAME;
|
||||
|
|
@ -33,6 +35,7 @@ public final class ExerciseColumns {
|
|||
e.setId(c.getInt(c.getColumnIndexOrThrow(ExerciseColumns._ID)));
|
||||
e.setSection(c.getString(c.getColumnIndexOrThrow(ExerciseColumns.SECTION)));
|
||||
e.setImageID(c.getString(c.getColumnIndexOrThrow(ExerciseColumns.IMAGE_ID)));
|
||||
e.setDuration(c.getString(c.getColumnIndexOrThrow(ExerciseColumns.DURATION)));
|
||||
|
||||
return e;
|
||||
}
|
||||
|
|
@ -1,9 +1,9 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.database.columns;
|
||||
package org.secuso.aktivpause.database.columns;
|
||||
|
||||
import android.content.ContentValues;
|
||||
import android.database.Cursor;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.data.Exercise;
|
||||
import org.secuso.aktivpause.database.data.Exercise;
|
||||
|
||||
/**
|
||||
* Localised strings of an exercise.
|
||||
|
|
@ -1,9 +1,9 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.database.columns;
|
||||
package org.secuso.aktivpause.database.columns;
|
||||
|
||||
import android.content.ContentValues;
|
||||
import android.database.Cursor;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.data.ExerciseSet;
|
||||
import org.secuso.aktivpause.database.data.ExerciseSet;
|
||||
|
||||
/**
|
||||
* Database columns and utility methods for exercise sets.
|
||||
|
|
@ -1,10 +1,10 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.database.data;
|
||||
package org.secuso.aktivpause.database.data;
|
||||
|
||||
|
||||
import android.content.Context;
|
||||
import android.support.annotation.DrawableRes;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.exercises.ExerciseSections;
|
||||
import org.secuso.aktivpause.exercises.ExerciseSections;
|
||||
|
||||
/**
|
||||
* Model for an exercise.
|
||||
|
|
@ -14,6 +14,7 @@ import org.secuso.privacyfriendlypausinghealthily.exercises.ExerciseSections;
|
|||
public class Exercise {
|
||||
private int id;
|
||||
private int localId;
|
||||
private String duration = "30";
|
||||
private String section = "";
|
||||
private String execution = "";
|
||||
private String description = "";
|
||||
|
|
@ -63,7 +64,7 @@ public class Exercise {
|
|||
|
||||
for(int i = 0; i < result.length; ++i) {
|
||||
result[i] = context.getResources().getIdentifier(
|
||||
"breakreminder_" + imageIDSplit[i],
|
||||
"image_" + imageIDSplit[i],
|
||||
"drawable",
|
||||
context.getPackageName());
|
||||
}
|
||||
|
|
@ -71,6 +72,21 @@ public class Exercise {
|
|||
return result;
|
||||
}
|
||||
|
||||
public String getDurationString() {
|
||||
return duration;
|
||||
}
|
||||
|
||||
public int[] getDurations() {
|
||||
String[] durationsSplit = this.duration.split(",");
|
||||
int[] result = new int[durationsSplit.length];
|
||||
|
||||
for(int i = 0; i < durationsSplit.length; i++) {
|
||||
result[i] = Integer.parseInt(durationsSplit[i]);
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public String getSection(Context context) {
|
||||
String section = this.section;
|
||||
|
||||
|
|
@ -102,7 +118,8 @@ public class Exercise {
|
|||
.append(description)
|
||||
.append(name)
|
||||
.append(imageID)
|
||||
.append(language);
|
||||
.append(language)
|
||||
.append(duration);
|
||||
|
||||
return sb.toString().hashCode();
|
||||
}
|
||||
|
|
@ -119,6 +136,11 @@ public class Exercise {
|
|||
&& this.description.equals(other.description)
|
||||
&& this.name.equals(other.name)
|
||||
&& this.imageID.equals(other.imageID)
|
||||
&& this.language.equals(other.language);
|
||||
&& this.language.equals(other.language)
|
||||
&& this.duration.equals(other.duration);
|
||||
}
|
||||
|
||||
public void setDuration(String duration) {
|
||||
this.duration = duration;
|
||||
}
|
||||
}
|
||||
|
|
@ -1,9 +1,6 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.database.data;
|
||||
package org.secuso.aktivpause.database.data;
|
||||
|
||||
import android.content.Context;
|
||||
import android.preference.PreferenceManager;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.tutorial.FirstLaunchManager;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
|
@ -79,10 +76,13 @@ public class ExerciseSet {
|
|||
|
||||
public long getExerciseSetTime(Context context) {
|
||||
int result = 0;
|
||||
|
||||
for(Exercise e : getExercises()) {
|
||||
result += e.getImageID().split(",").length;
|
||||
for (int duration : e.getDurations()) {
|
||||
result += duration;
|
||||
}
|
||||
}
|
||||
long exerciseDuration = Long.parseLong(PreferenceManager.getDefaultSharedPreferences(context).getString(FirstLaunchManager.EXERCISE_DURATION, "30"));
|
||||
return (result * exerciseDuration);
|
||||
|
||||
return (result);
|
||||
}
|
||||
}
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.dialog;
|
||||
package org.secuso.aktivpause.dialog;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
|
|
@ -10,8 +10,8 @@ import android.view.View;
|
|||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.R;
|
||||
import org.secuso.privacyfriendlypausinghealthily.database.data.Exercise;
|
||||
import org.secuso.aktivpause.R;
|
||||
import org.secuso.aktivpause.database.data.Exercise;
|
||||
|
||||
/**
|
||||
* @author Christopher Beckmann
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.exercises;
|
||||
package org.secuso.aktivpause.exercises;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashSet;
|
||||
|
|
@ -1,9 +1,9 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.exercises;
|
||||
package org.secuso.aktivpause.exercises;
|
||||
|
||||
import android.content.Context;
|
||||
import android.support.annotation.StringRes;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.R;
|
||||
import org.secuso.aktivpause.R;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.preferences;
|
||||
package org.secuso.aktivpause.preferences;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.res.TypedArray;
|
||||
|
|
@ -9,7 +9,7 @@ import android.util.AttributeSet;
|
|||
import android.view.View;
|
||||
import android.widget.TimePicker;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.R;
|
||||
import org.secuso.aktivpause.R;
|
||||
|
||||
import java.util.Calendar;
|
||||
|
||||
|
|
@ -1,11 +1,11 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.receivers;
|
||||
package org.secuso.aktivpause.receivers;
|
||||
|
||||
import android.app.NotificationManager;
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.service.TimerService;
|
||||
import org.secuso.aktivpause.service.TimerService;
|
||||
|
||||
/**
|
||||
* @author Christopher Beckmann
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.receivers;
|
||||
package org.secuso.aktivpause.receivers;
|
||||
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
|
|
@ -6,9 +6,9 @@ import android.content.Intent;
|
|||
import android.content.SharedPreferences;
|
||||
import android.preference.PreferenceManager;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.service.TimerService;
|
||||
import org.secuso.aktivpause.service.TimerService;
|
||||
|
||||
import static org.secuso.privacyfriendlypausinghealthily.activities.tutorial.FirstLaunchManager.PREF_EXERCISE_CONTINUOUS;
|
||||
import static org.secuso.aktivpause.activities.tutorial.FirstLaunchManager.PREF_EXERCISE_CONTINUOUS;
|
||||
|
||||
/**
|
||||
* @author Christopher Beckmann
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.receivers;
|
||||
package org.secuso.aktivpause.receivers;
|
||||
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.receivers;
|
||||
package org.secuso.aktivpause.receivers;
|
||||
|
||||
import android.app.AlarmManager;
|
||||
import android.app.PendingIntent;
|
||||
|
|
@ -13,18 +13,18 @@ import android.preference.PreferenceManager;
|
|||
import android.support.annotation.NonNull;
|
||||
import android.support.v4.content.WakefulBroadcastReceiver;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.service.TimerService;
|
||||
import org.secuso.aktivpause.service.TimerService;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Calendar;
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
import static org.secuso.privacyfriendlypausinghealthily.activities.tutorial.FirstLaunchManager.PREF_SCHEDULE_EXERCISE_DAYS;
|
||||
import static org.secuso.privacyfriendlypausinghealthily.activities.tutorial.FirstLaunchManager.PREF_SCHEDULE_EXERCISE_DAYS_ENABLED;
|
||||
import static org.secuso.privacyfriendlypausinghealthily.activities.tutorial.FirstLaunchManager.PREF_SCHEDULE_EXERCISE_ENABLED;
|
||||
import static org.secuso.privacyfriendlypausinghealthily.activities.tutorial.FirstLaunchManager.PREF_SCHEDULE_EXERCISE_TIME;
|
||||
import static org.secuso.privacyfriendlypausinghealthily.activities.tutorial.FirstLaunchManager.WORK_TIME;
|
||||
import static org.secuso.aktivpause.activities.tutorial.FirstLaunchManager.PREF_SCHEDULE_EXERCISE_DAYS;
|
||||
import static org.secuso.aktivpause.activities.tutorial.FirstLaunchManager.PREF_SCHEDULE_EXERCISE_DAYS_ENABLED;
|
||||
import static org.secuso.aktivpause.activities.tutorial.FirstLaunchManager.PREF_SCHEDULE_EXERCISE_ENABLED;
|
||||
import static org.secuso.aktivpause.activities.tutorial.FirstLaunchManager.PREF_SCHEDULE_EXERCISE_TIME;
|
||||
import static org.secuso.aktivpause.activities.tutorial.FirstLaunchManager.WORK_TIME;
|
||||
|
||||
/**
|
||||
* @author Christopher Beckmann
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily.service;
|
||||
package org.secuso.aktivpause.service;
|
||||
|
||||
import android.app.Notification;
|
||||
import android.app.NotificationManager;
|
||||
|
|
@ -17,21 +17,21 @@ import android.provider.Settings;
|
|||
import android.support.v4.app.NotificationCompat;
|
||||
import android.support.v4.content.ContextCompat;
|
||||
|
||||
import org.secuso.privacyfriendlypausinghealthily.R;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.ExerciseActivity;
|
||||
import org.secuso.privacyfriendlypausinghealthily.activities.TimerActivity;
|
||||
import org.secuso.privacyfriendlypausinghealthily.receivers.NotificationCancelReceiver;
|
||||
import org.secuso.privacyfriendlypausinghealthily.receivers.NotificationDeletedReceiver;
|
||||
import org.secuso.aktivpause.R;
|
||||
import org.secuso.aktivpause.activities.ExerciseActivity;
|
||||
import org.secuso.aktivpause.activities.TimerActivity;
|
||||
import org.secuso.aktivpause.receivers.NotificationCancelReceiver;
|
||||
import org.secuso.aktivpause.receivers.NotificationDeletedReceiver;
|
||||
|
||||
import java.util.Locale;
|
||||
|
||||
import static android.app.PendingIntent.FLAG_CANCEL_CURRENT;
|
||||
import static android.app.PendingIntent.FLAG_UPDATE_CURRENT;
|
||||
import static android.content.Intent.FLAG_ACTIVITY_CLEAR_TOP;
|
||||
import static org.secuso.privacyfriendlypausinghealthily.activities.tutorial.FirstLaunchManager.PREF_EXERCISE_CONTINUOUS;
|
||||
import static org.secuso.privacyfriendlypausinghealthily.activities.tutorial.FirstLaunchManager.WORK_TIME;
|
||||
import static org.secuso.privacyfriendlypausinghealthily.receivers.NotificationCancelReceiver.ACTION_NOTIFICATION_CANCELED;
|
||||
import static org.secuso.privacyfriendlypausinghealthily.receivers.NotificationDeletedReceiver.ACTION_NOTIFICATION_DELETED;
|
||||
import static org.secuso.aktivpause.activities.tutorial.FirstLaunchManager.PREF_EXERCISE_CONTINUOUS;
|
||||
import static org.secuso.aktivpause.activities.tutorial.FirstLaunchManager.WORK_TIME;
|
||||
import static org.secuso.aktivpause.receivers.NotificationCancelReceiver.ACTION_NOTIFICATION_CANCELED;
|
||||
import static org.secuso.aktivpause.receivers.NotificationDeletedReceiver.ACTION_NOTIFICATION_DELETED;
|
||||
|
||||
/**
|
||||
* The main timer service. It handles the work timer and sends updates to the notification and the {@link TimerActivity}.
|
||||
|
Before Width: | Height: | Size: 9.5 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 26 KiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 21 KiB |
|
Before Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 25 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 9.8 KiB |
|
Before Width: | Height: | Size: 28 KiB |
|
|
@ -4,7 +4,7 @@
|
|||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
tools:context="org.secuso.privacyfriendlypausinghealthily.activities.ChooseExerciseActivity">
|
||||
tools:context="org.secuso.aktivpause.activities.ChooseExerciseActivity">
|
||||
|
||||
<android.support.design.chip.ChipGroup
|
||||
android:id="@+id/layout_filter_buttons"
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
android:id="@+id/main_content"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
tools:context="org.secuso.privacyfriendlypausinghealthily.activities.ExerciseActivity">
|
||||
tools:context="org.secuso.aktivpause.activities.ExerciseActivity">
|
||||
|
||||
<ImageButton
|
||||
android:id="@+id/button_playPause"
|
||||
|
|
@ -177,7 +177,7 @@
|
|||
android:layout_marginRight="0dp"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:srcCompat="@drawable/breakreminder_0"
|
||||
app:srcCompat="@drawable/image_placeholder"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
android:layout_marginTop="0dp"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@
|
|||
android:id="@+id/coordinator_layout"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
tools:context="org.secuso.privacyfriendlypausinghealthily.activities.EditExerciseSetActivity">
|
||||
tools:context="org.secuso.aktivpause.activities.EditExerciseSetActivity">
|
||||
|
||||
<include layout="@layout/layout_toolbar"/>
|
||||
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
<android.support.design.widget.CoordinatorLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
tools:context="org.secuso.privacyfriendlypausinghealthily.activities.EditExerciseSetActivity">
|
||||
tools:context="org.secuso.aktivpause.activities.EditExerciseSetActivity">
|
||||
|
||||
<include layout="@layout/layout_toolbar"/>
|
||||
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@
|
|||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:fitsSystemWindows="true"
|
||||
tools:context="org.secuso.privacyfriendlypausinghealthily.activities.EditExerciseSetActivity">
|
||||
tools:context="org.secuso.aktivpause.activities.EditExerciseSetActivity">
|
||||
|
||||
<include layout="@layout/layout_toolbar"/>
|
||||
|
||||
|
|
@ -23,7 +23,7 @@
|
|||
android:layout_margin="0dp"
|
||||
android:padding="0dp"
|
||||
app:layout_behavior="@string/appbar_scrolling_view_behavior"
|
||||
tools:context="org.secuso.privacyfriendlypausinghealthily.activities.TimerActivity">
|
||||
tools:context="org.secuso.aktivpause.activities.TimerActivity">
|
||||
|
||||
<android.support.v7.widget.AppCompatSpinner
|
||||
android:id="@+id/spinner_choose_exercise_set"
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/execution"
|
||||
app:srcCompat="@drawable/breakreminder_0" />
|
||||
app:srcCompat="@drawable/image_placeholder" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/execution_title"
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
android:layout_width="48dp"
|
||||
android:layout_height="48dp"
|
||||
android:scaleType="fitCenter"
|
||||
app:srcCompat="@drawable/breakreminder_0" />
|
||||
app:srcCompat="@drawable/image_placeholder" />
|
||||
|
||||
<!-- </android.support.v7.widget.CardView> -->
|
||||
</LinearLayout>
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
<resources>
|
||||
|
||||
<!-- Base application theme. -->
|
||||
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
|
||||
<style name="AppTheme" parent="Theme.MaterialComponents.Light.DarkActionBar">
|
||||
<!-- Customize your theme here. -->
|
||||
<item name="colorPrimary">@color/colorPrimary</item>
|
||||
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
|
||||
|
|
@ -11,7 +11,7 @@
|
|||
<item name="android:timePickerStyle">@style/TimePickerDialogStyle</item>
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.Dialog" parent="Theme.AppCompat.Light.Dialog">
|
||||
<style name="AppTheme.Dialog" parent="Theme.MaterialComponents.Light.Dialog">
|
||||
<item name="colorPrimary">@color/colorPrimary</item>
|
||||
<item name="colorPrimaryDark">@color/colorPrimary</item>
|
||||
<item name="colorAccent">@color/colorAccent</item>
|
||||
|
|
|
|||
|
|
@ -3,12 +3,12 @@
|
|||
<!-- These settings headers are only used on tablets. -->
|
||||
|
||||
<header
|
||||
android:fragment="org.secuso.privacyfriendlypausinghealthily.activities.SettingsActivity$ExercisePreferenceFragment"
|
||||
android:fragment="org.secuso.aktivpause.activities.SettingsActivity$ExercisePreferenceFragment"
|
||||
android:icon="@drawable/ic_info_black"
|
||||
android:title="@string/pref_header_exercises" />
|
||||
|
||||
<header
|
||||
android:fragment="org.secuso.privacyfriendlypausinghealthily.activities.SettingsActivity$TimerSchedulePreferenceFragment"
|
||||
android:fragment="org.secuso.aktivpause.activities.SettingsActivity$TimerSchedulePreferenceFragment"
|
||||
android:icon="@drawable/ic_alarm_black"
|
||||
android:title="@string/pref_header_schedule" />
|
||||
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@
|
|||
android:key="pref_schedule_exercise_time"
|
||||
android:title="@string/pref_schedule_exercise_time"/> -->
|
||||
|
||||
<org.secuso.privacyfriendlypausinghealthily.preferences.TimePreference
|
||||
<org.secuso.aktivpause.preferences.TimePreference
|
||||
android:dependency="pref_schedule_exercise"
|
||||
android:defaultValue="32400000"
|
||||
android:key="pref_schedule_exercise_time"
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
package org.secuso.privacyfriendlypausinghealthily;
|
||||
package org.secuso.aktivpause;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
|
@ -9,7 +9,7 @@ buildscript {
|
|||
}
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:3.1.4'
|
||||
classpath 'com.android.tools.build:gradle:3.4.1'
|
||||
|
||||
// NOTE: Do not place your application dependencies here; they belong
|
||||
// in the individual module build.gradle files
|
||||
|
|
@ -19,6 +19,7 @@ buildscript {
|
|||
allprojects {
|
||||
repositories {
|
||||
jcenter()
|
||||
google()
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
5
gradle/wrapper/gradle-wrapper.properties
vendored
|
|
@ -1,7 +1,6 @@
|
|||
#Thu May 03 14:39:54 CEST 2018
|
||||
#Thu May 23 15:13:42 CEST 2019
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-4.10-all.zip
|
||||
distributionSha256Sum=fc049dcbcb245d5892bebae143bd515a78f6a5a93cec99d489b312dc0ce4aad9
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip
|
||||
|
|
|
|||