From 6e25bf115524f7e657ac1786f7fbe99d3e92a7fe Mon Sep 17 00:00:00 2001 From: Christopher Beckmann Date: Wed, 25 Oct 2017 16:59:23 +0200 Subject: [PATCH] Performance increase. (now caching images) Minor bugfixes. --- .../main/assets/databases/exercises.sqlite | Bin 240640 -> 240640 bytes .../activities/ExerciseActivity.java | 4 ++-- .../adapter/ExerciseSetAdapter.java | 2 +- .../adapter/ExerciseSetListAdapter.java | 5 ++++- .../adapter/ExerciseSetSpinnerAdapter.java | 4 +++- .../activities/old/BreakActivity.java | 2 +- .../database/columns/ExerciseColumns.java | 13 ------------- .../database/data/Exercise.java | 10 +++++++++- .../dialog/ExerciseDialog.java | 2 +- .../res/layout/activity_edit_exercise_set.xml | 2 +- app/src/main/res/layout/activity_exercise.xml | 2 +- app/src/main/res/layout/dialog_exercise.xml | 2 +- .../layout/layout_round_exercise_image.xml | 8 ++++---- app/src/main/res/values-de/strings.xml | 1 + app/src/main/res/values/strings.xml | 2 +- 15 files changed, 30 insertions(+), 29 deletions(-) diff --git a/app/src/main/assets/databases/exercises.sqlite b/app/src/main/assets/databases/exercises.sqlite index 18f7578d83d1178f51fea0b5f6cde057b75e543f..974576cf12668471bcf6f2cb1dff7deca03e46e6 100644 GIT binary patch delta 437 zcmZp;!PjtuZ-O-Ak%=uEG`6csN5Zo-r zvyWK_C?(3s#15qR7@63B6#M39{Bj&ZEX+?Cn13;UW`4u`l=&zKZWfc+&MX2{Apum+ d0i*?h8bBI3njcEHKa^$!Vy5j6rJ3a?000%Nb2$J2 delta 274 zcmZp;!PjtuZ-O-Ap@}lijE6QR9A_5hW_r(bnQ1%IY^EBf1SS_I4JMw+RxC4_nEN(g zWie-Dl9HVKkxzof*hoqO!Z4H)hcFDJ#DEM*W=mPo$%=du>_+A~Mix>cU@V`6^E!2EqP7snfBg>-gCW(HBmqTFI$1_lNW=CcgU zznQ->zh{2Q{D}EB^OenFJo}i1SUH#(8JXBw*+CQ=D;qQ8=4bqJ96}t-M;VxZF@I)$ v!~B%_F7s99vzx^vwlj;cvoM0xb3kY|b`ahCP`dr0G$Rl*ZGR}uEI$DNDxybe diff --git a/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/ExerciseActivity.java b/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/ExerciseActivity.java index d3087d5..147d206 100644 --- a/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/ExerciseActivity.java +++ b/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/ExerciseActivity.java @@ -479,7 +479,7 @@ public class ExerciseActivity extends AppCompatActivity implements android.suppo private boolean nextExercisePart() { if(set != null) { - if(set.size() != 0) { + if(set.size() != 0 && currentExercise < set.size()) { int[] images = set.get(currentExercise).getImageResIds(this); currentExercisePart = (currentExercisePart + 1); @@ -518,7 +518,7 @@ public class ExerciseActivity extends AppCompatActivity implements android.suppo executionText.setText(e.getExecution()); descriptionText.setText(e.getDescription()); - sectionText.setText(e.getSection()); + sectionText.setText(e.getSection(this)); exerciseImage.setImageResource(e.getImageResIds(this)[image]); exerciseImage.setOnClickListener(infoClickListener); exerciseInfoButton.setOnClickListener(infoClickListener); diff --git a/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/adapter/ExerciseSetAdapter.java b/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/adapter/ExerciseSetAdapter.java index 3c78bde..4294d65 100644 --- a/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/adapter/ExerciseSetAdapter.java +++ b/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/adapter/ExerciseSetAdapter.java @@ -46,7 +46,7 @@ public class ExerciseSetAdapter extends RecyclerView.Adapter { vh.image.setImageResource(exercise.getImageResIds(mContext)[0]); vh.executionText.setText(exercise.getExecution()); vh.descriptionText.setText(exercise.getDescription()); - vh.section.setText(exercise.getSection()); + vh.section.setText(exercise.getSection(mContext)); } @Override diff --git a/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/adapter/ExerciseSetListAdapter.java b/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/adapter/ExerciseSetListAdapter.java index fe85a5e..e4aa079 100644 --- a/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/adapter/ExerciseSetListAdapter.java +++ b/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/adapter/ExerciseSetListAdapter.java @@ -12,6 +12,8 @@ import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; +import com.bumptech.glide.Glide; + import org.secuso.privacyfriendlybreakreminder.R; import org.secuso.privacyfriendlybreakreminder.activities.EditExerciseSetActivity; import org.secuso.privacyfriendlybreakreminder.activities.ManageExerciseSetsActivity; @@ -123,7 +125,8 @@ public class ExerciseSetListAdapter extends RecyclerView.Adapter { View view = LayoutInflater.from(getContext()).inflate(R.layout.layout_round_exercise_image, null, false); ImageView image = (ImageView) view.findViewById(R.id.exercise_image); - image.setImageResource(set.get(i).getImageResIds(getContext())[0]); + Glide.with(getContext()).load(set.get(i).getImageResIds(getContext())[0]).into(image); exerciseList.addView(view); } diff --git a/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/old/BreakActivity.java b/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/old/BreakActivity.java index 28f73e8..31dab96 100644 --- a/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/old/BreakActivity.java +++ b/app/src/main/java/org/secuso/privacyfriendlybreakreminder/activities/old/BreakActivity.java @@ -287,7 +287,7 @@ public class BreakActivity extends AppCompatActivity implements View.OnClickList side_repetition.setText(R.string.exercise_break); break_exercise_type = (TextView) findViewById(R.id.break_exercise_type); - break_exercise_type.setText(exerciseList.get(currentExercise).getSection()); + break_exercise_type.setText(exerciseList.get(currentExercise).getSection(this)); setExerciseImage(); } diff --git a/app/src/main/java/org/secuso/privacyfriendlybreakreminder/database/columns/ExerciseColumns.java b/app/src/main/java/org/secuso/privacyfriendlybreakreminder/database/columns/ExerciseColumns.java index ce5a19d..c11c056 100644 --- a/app/src/main/java/org/secuso/privacyfriendlybreakreminder/database/columns/ExerciseColumns.java +++ b/app/src/main/java/org/secuso/privacyfriendlybreakreminder/database/columns/ExerciseColumns.java @@ -34,18 +34,5 @@ public final class ExerciseColumns { return e; } - public static ContentValues getValues(Exercise record) { - ContentValues values = new ContentValues(); - if(record.getId() != -1) { - values.put(ExerciseColumns._ID, record.getId()); - } - values.put(ExerciseColumns.SECTION, record.getSection()); - values.put(ExerciseColumns.IMAGE_ID, record.getImageID()); - - values.putAll(ExerciseLocalColumns.getValues(record)); - - return values; - } - private ExerciseColumns() {} } diff --git a/app/src/main/java/org/secuso/privacyfriendlybreakreminder/database/data/Exercise.java b/app/src/main/java/org/secuso/privacyfriendlybreakreminder/database/data/Exercise.java index 504929f..774d4ee 100644 --- a/app/src/main/java/org/secuso/privacyfriendlybreakreminder/database/data/Exercise.java +++ b/app/src/main/java/org/secuso/privacyfriendlybreakreminder/database/data/Exercise.java @@ -5,6 +5,8 @@ import android.content.Context; import android.support.annotation.DrawableRes; import android.support.annotation.IdRes; +import org.secuso.privacyfriendlybreakreminder.exercises.ExerciseSections; + public class Exercise { private int id; private int localId; @@ -65,7 +67,13 @@ public class Exercise { return result; } - public String getSection() { + public String getSection(Context context) { + String section = this.section; + + for(ExerciseSections es : ExerciseSections.getSectionList()) { + section = section.replaceAll(es.name(), es.getLocalName(context)); + } + return section; } public void setSection(String section) { diff --git a/app/src/main/java/org/secuso/privacyfriendlybreakreminder/dialog/ExerciseDialog.java b/app/src/main/java/org/secuso/privacyfriendlybreakreminder/dialog/ExerciseDialog.java index f7e6eac..9535d94 100644 --- a/app/src/main/java/org/secuso/privacyfriendlybreakreminder/dialog/ExerciseDialog.java +++ b/app/src/main/java/org/secuso/privacyfriendlybreakreminder/dialog/ExerciseDialog.java @@ -41,7 +41,7 @@ public final class ExerciseDialog { if(descriptionText != null) descriptionText.setText(e.getDescription()); if(sectionText != null) - sectionText.setText(e.getSection()); + sectionText.setText(e.getSection(context)); if(exerciseImage != null) { exerciseImage.setOnClickListener(new View.OnClickListener() { int currentlyShownExercise = 0; diff --git a/app/src/main/res/layout/activity_edit_exercise_set.xml b/app/src/main/res/layout/activity_edit_exercise_set.xml index ba7acdd..16bc613 100644 --- a/app/src/main/res/layout/activity_edit_exercise_set.xml +++ b/app/src/main/res/layout/activity_edit_exercise_set.xml @@ -94,7 +94,7 @@ android:onClick="onClick" app:fabSize="normal" app:layout_anchor="@id/constraintLayout2" - app:layout_anchorGravity="bottom|right|end" + app:layout_anchorGravity="bottom|end" app:srcCompat="@drawable/ic_edit_white_24dp" /> \ No newline at end of file diff --git a/app/src/main/res/layout/activity_exercise.xml b/app/src/main/res/layout/activity_exercise.xml index 2ba4dbc..748ac14 100644 --- a/app/src/main/res/layout/activity_exercise.xml +++ b/app/src/main/res/layout/activity_exercise.xml @@ -286,7 +286,7 @@ android:id="@+id/progressBarBig" style="?android:attr/progressBarStyleHorizontal" android:layout_width="0dp" - android:layout_height="16dp" + android:layout_height="0dp" android:layout_centerHorizontal="true" android:max="100" android:onClick="onClick" diff --git a/app/src/main/res/layout/dialog_exercise.xml b/app/src/main/res/layout/dialog_exercise.xml index e4bdecd..19d24d1 100644 --- a/app/src/main/res/layout/dialog_exercise.xml +++ b/app/src/main/res/layout/dialog_exercise.xml @@ -20,7 +20,7 @@ app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toBottomOf="@+id/execution" - app:srcCompat="@drawable/exercise_0" /> + app:srcCompat="@drawable/breakreminder_0" /> - + app:cardElevation="0dp"> --> + app:srcCompat="@drawable/breakreminder_0" /> - + \ No newline at end of file diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 017b43c..fa284f6 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -57,6 +57,7 @@ Speichern Derzeitiger Wert ist $1 Wählen Sie ihre Arbeitszeit aus + Neues Übungsset hinzufügen Wählen Sie ihre Pausenzeit aus Die Änderungen konnten nicht gespeichert werden, da das dieser Profilname bereits existiert! Die Änderungen konnten nicht gespeichert werden, da das Feld für den Profilnamen leer ist! diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 00642bc..501a431 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -232,7 +232,7 @@ This set contains no exercises. Take a break now! Click here to do your chosen exercises. - %02d + %02d Exercise time (in Seconds) Keep screen on during exercise