#34 [Usability] Make it clear that workout comments can be edited

This commit is contained in:
jannis 2020-01-07 16:52:36 +01:00
parent 3455702375
commit 59c1781dd4
6 changed files with 16 additions and 9 deletions

View File

@ -114,7 +114,7 @@ public class ListWorkoutsActivity extends Activity implements WorkoutAdapter.Wor
} }
@Override @Override
public void onItemClick(Workout workout) { public void onItemClick(int pos, Workout workout) {
ShowWorkoutActivity.selectedWorkout= workout; ShowWorkoutActivity.selectedWorkout= workout;
startActivity(new Intent(this, ShowWorkoutActivity.class)); startActivity(new Intent(this, ShowWorkoutActivity.class));
} }

View File

@ -56,6 +56,7 @@ import oauth.signpost.OAuthConsumer;
public class ShowWorkoutActivity extends WorkoutActivity implements DialogUtils.WorkoutDeleter { public class ShowWorkoutActivity extends WorkoutActivity implements DialogUtils.WorkoutDeleter {
TextView commentView;
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
@ -68,10 +69,8 @@ public class ShowWorkoutActivity extends WorkoutActivity implements DialogUtils.
initAfterContent(); initAfterContent();
addText(getString(R.string.comment) + ": " + workout.comment).setOnClickListener(v -> { commentView = addText(getString(R.string.comment) + ": " + workout.comment);
TextView textView= (TextView)v; commentView.setOnClickListener(v -> openEditCommentDialog());
openEditCommentDialog(textView);
});
addTitle(getString(R.string.workoutTime)); addTitle(getString(R.string.workoutTime));
addKeyValue(getString(R.string.workoutDate), getDate()); addKeyValue(getString(R.string.workoutDate), getDate());
@ -120,13 +119,13 @@ public class ShowWorkoutActivity extends WorkoutActivity implements DialogUtils.
} }
private void openEditCommentDialog(final TextView change) { private void openEditCommentDialog() {
final EditText editText= new EditText(this); final EditText editText= new EditText(this);
editText.setText(workout.comment); editText.setText(workout.comment);
editText.setSingleLine(true); editText.setSingleLine(true);
new AlertDialog.Builder(this) new AlertDialog.Builder(this)
.setTitle(R.string.enterComment) .setTitle(R.string.enterComment)
.setPositiveButton(R.string.okay, (dialog, which) -> changeComment(editText.getText().toString(), change)) .setPositiveButton(R.string.okay, (dialog, which) -> changeComment(editText.getText().toString(), commentView))
.setView(editText).create().show(); .setView(editText).create().show();
} }
@ -287,6 +286,9 @@ public class ShowWorkoutActivity extends WorkoutActivity implements DialogUtils.
case R.id.actionUploadOSM: case R.id.actionUploadOSM:
prepareUpload(); prepareUpload();
return true; return true;
case R.id.actionEditComment:
openEditCommentDialog();
return true;
} }
return super.onOptionsItemSelected(item); return super.onOptionsItemSelected(item);
} }

View File

@ -90,7 +90,7 @@ public class WorkoutAdapter extends RecyclerView.Adapter<WorkoutAdapter.WorkoutV
} }
holder.lengthText.setText(UnitUtils.getDistance(workout.length)); holder.lengthText.setText(UnitUtils.getDistance(workout.length));
holder.timeText.setText(UnitUtils.getHourMinuteTime(workout.duration)); holder.timeText.setText(UnitUtils.getHourMinuteTime(workout.duration));
holder.root.setOnClickListener(v -> listener.onItemClick(workout)); holder.root.setOnClickListener(v -> listener.onItemClick(position, workout));
holder.root.setOnLongClickListener(v -> { holder.root.setOnLongClickListener(v -> {
listener.onItemLongClick(position, workout); listener.onItemLongClick(position, workout);
return true; return true;
@ -104,7 +104,7 @@ public class WorkoutAdapter extends RecyclerView.Adapter<WorkoutAdapter.WorkoutV
} }
public interface WorkoutAdapterListener{ public interface WorkoutAdapterListener{
void onItemClick(Workout workout); void onItemClick(int pos, Workout workout);
void onItemLongClick(int pos, Workout workout); void onItemLongClick(int pos, Workout workout);
} }

View File

@ -19,6 +19,9 @@
<menu xmlns:android="http://schemas.android.com/apk/res/android"> <menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/actionEditComment"
android:title="@string/action_edit_comment" />
<item <item
android:id="@+id/actionExportGpx" android:id="@+id/actionExportGpx"
android:title="@string/exportAsGpxFile" /> android:title="@string/exportAsGpxFile" />

View File

@ -123,4 +123,5 @@
<string name="timeMinutePlural">Minuten</string> <string name="timeMinutePlural">Minuten</string>
<string name="timeMinuteSingular">Minute</string> <string name="timeMinuteSingular">Minute</string>
<string name="voiceAnnouncementsTitle">Sprachansagen</string> <string name="voiceAnnouncementsTitle">Sprachansagen</string>
<string name="action_edit_comment">Kommentar bearbeiten</string>
</resources> </resources>

View File

@ -148,4 +148,5 @@
<string name="trackVisibilityPref">Track Visibility</string> <string name="trackVisibilityPref">Track Visibility</string>
<string name="description">Description</string> <string name="description">Description</string>
<string name="ttsNotAvailable">TextToSpeech is not available</string> <string name="ttsNotAvailable">TextToSpeech is not available</string>
<string name="action_edit_comment">Edit Comment</string>
</resources> </resources>