Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improvement: Redesign exercise screen & adjustments #295

Merged
merged 22 commits into from
Jan 27, 2025

Conversation

julian-wls
Copy link
Contributor

@julian-wls julian-wls commented Jan 12, 2025

Problem Description

Currently, the exercise view is quite unstructured compared to the iOS app. Points and build information are not as visible, and when holding the phone in landscape mode, scrolling through the web view becomes nearly impossible.

Changes

This PR introduces the following changes:

  • The exercise information always shows the due date even if there is none
  • the badge for dates have been removed and replaced with more accurate information
  • the webview adjusts its height to the height of the content displayed making the whole view scrollable, not just the webview
  • the participation not possible message has been moved outside the ExerciseActionButtons
  • a link to the channel of the exercise has been added
  • the ExerciseActionButton has been moved to always be next to the score information
  • the result now shows the correct information
  • many fixes and adjustments

Steps for testing

  • browse through the exercise list (also check landscape mode) and verify the exercise list items are displayed as before
  • click on different exercise and compare the score information and other available information with the web app, make sure it is identical
  • check the result for a exercise that has one and verify it matches the one of the web app
  • rotate the phone and make sure the view adjusts to landscape mode
  • click on the channel link and verify that the destination is correct

Screenshots

Known issues

  • in very rare cases the webview does not adjust to the correct height on the first try, but on the second try.
  • after navigating to a channel using the link the back button does not work as expected.

The changes have been verified to work on tablets and foldables.

@julian-wls julian-wls self-assigned this Jan 12, 2025
@julian-wls julian-wls added the ready for review This PR can be reviewed label Jan 15, 2025
@julian-wls julian-wls marked this pull request as ready for review January 15, 2025 08:37
Copy link
Collaborator

@FelberMartin FelberMartin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested the functionality and both works and looks awesome. Especially the height adjusted webview improves usability by a lot!

Don't be frightened by the large number of code comments, most of them are just minor code style suggestions and refactoring oppportunities I found :)

Copy link
Contributor

@eylulnc eylulnc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks really good! 😊 Test cases ✅, and Martin's annotations already address everything. Once his requests are applied, it’s good to go for me.

Copy link
Collaborator

@FelberMartin FelberMartin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lgtm now!

@FelberMartin FelberMartin added ready to merge This PR can be merged and removed ready for review This PR can be reviewed labels Jan 27, 2025
@FelberMartin FelberMartin merged commit 920c17f into develop Jan 27, 2025
5 checks passed
@FelberMartin FelberMartin deleted the general/redesign-exercise-screen branch January 27, 2025 15:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ready to merge This PR can be merged
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants