Commit Graph

882 Commits

Author SHA1 Message Date
Roland Geider
325cc93865 Refresh the whole routine after modifying further objects.
This makes sure that all the structures are present and have the correct
content (dayData, etc.). Also, add more feedback to the user for some operations
that take a bit longer due to loading the whole routine.
2025-03-11 20:36:38 +01:00
Roland Geider
3abfd43be0 Rename variable to make it clearer what it does 2025-03-11 14:27:15 +01:00
Roland Geider
929acc7938 Refresh the whole routine after modifying a day
This makes sure that all the structures are present and have the correct
content (dayData, etc.)
2025-03-11 14:06:09 +01:00
Roland Geider
9c68a5abf4 Show button to edit the routine if it is empty 2025-03-11 13:51:47 +01:00
Roland Geider
1f647b5033 Correctly navigate to new routine after creating it 2025-03-11 13:50:13 +01:00
Roland Geider
883490ecd4 Juggle with the widgets so the routine form doesn't cause overflow errors
Seems this is the only form to make it work within the SingleChildScrollView
2025-03-11 13:25:30 +01:00
Roland Geider
2f975b1fd3 Correctly handle the state
The problem was that some of the previous changes were asynchronous and would
not always represent the actual current state. This solution works, but is
a bit verbose and perhaps overly complicated?
2025-02-22 23:09:59 +01:00
Roland Geider
eecaa6fcf0 Merge branch 'feature/flexible-routines' into Jackpkn-fix/gym-provider-navigation 2025-02-21 22:16:25 +01:00
Roland Geider
f25e9867a2 Cleanup 2025-02-21 22:05:29 +01:00
Roland Geider
4f94a6a41e Make the repetition and weight units nullable as per the backend 2025-02-21 16:37:16 +01:00
Roland Geider
2498183094 Rename further instances of "reps" to "repetitions" 2025-02-01 19:24:15 +01:00
Roland Geider
323b18320f Rename key to be more consistent 2025-02-01 15:34:00 +01:00
Roland Geider
110c98ffbd Merge branch 'feature/flexible-routines' into Jackpkn-fix/gym-provider-navigation 2025-01-31 21:33:57 +01:00
Roland Geider
5e389664b7 Make LogChartWidgetFl work again 2025-01-31 18:11:35 +01:00
Roland Geider
2e62fdee83 Cleanup 2025-01-31 16:25:03 +01:00
Roland Geider
5058498c4f Allow passing all parameters to the WorkoutSession constructor 2025-01-31 16:24:56 +01:00
Roland Geider
ef4db2c772 Pass the routine ID to the RoutineScreen widget 2025-01-31 16:24:21 +01:00
Roland Geider
7c6fbebdf5 Show workout session information 2025-01-26 20:11:21 +01:00
Roland Geider
51ed2ef428 Format numeric log values 2025-01-26 19:33:20 +01:00
Roland Geider
b4f8a59a70 Add the newly created session to the routine 2025-01-26 15:07:37 +01:00
Roland Geider
c0935506ed Load the session data from the new API as well
Also, edit or add a session in the gym mode
2025-01-25 21:50:30 +01:00
Roland Geider
13998ec3c0 Don't load the routine every time the log page are accessed 2025-01-25 20:07:19 +01:00
Roland Geider
69ffdcfbc9 Don't overflow the set representation 2025-01-25 20:06:40 +01:00
Roland Geider
202349c5bc Make workout log charts work again 2025-01-25 15:39:51 +01:00
Roland Geider
4d55f8c901 Add some more tests 2025-01-24 20:22:22 +01:00
Roland Geider
b4ff0b74aa Some cleanup, renaming, reformating 2025-01-24 17:01:27 +01:00
Roland Geider
079db5d5e0 Recreate generated files 2025-01-24 15:07:51 +01:00
Roland Geider
eff176f035 Merge branch 'master' into feature/flexible-routines
# Conflicts:
#	lib/main.dart
#	lib/models/exercises/exercise.dart
#	lib/models/exercises/exercise_api.freezed.dart
#	lib/models/workouts/day.g.dart
#	lib/models/workouts/session.g.dart
#	lib/models/workouts/workout_plan.g.dart
#	lib/providers/exercises.dart
#	lib/widgets/core/settings.dart
#	pubspec.lock
#	test/auth/auth_screen_test.mocks.dart
#	test/core/settings_test.mocks.dart
#	test/exercises/contribute_exercise_test.mocks.dart
#	test/gallery/gallery_form_test.mocks.dart
#	test/gallery/gallery_screen_test.mocks.dart
#	test/measurements/measurement_categories_screen_test.mocks.dart
#	test/measurements/measurement_provider_test.mocks.dart
#	test/nutrition/nutritional_meal_form_test.mocks.dart
#	test/nutrition/nutritional_plan_form_test.mocks.dart
#	test/nutrition/nutritional_plan_screen_test.mocks.dart
#	test/nutrition/nutritional_plans_screen_test.mocks.dart
#	test/other/base_provider_test.mocks.dart
#	test/user/provider_test.mocks.dart
#	test/weight/weight_provider_test.mocks.dart
#	test/weight/weight_screen_test.mocks.dart
#	test/workout/gym_mode_screen_test.mocks.dart
#	test/workout/repetition_unit_form_widget_test.mocks.dart
#	test/workout/routine_screen_test.mocks.dart
#	test/workout/routines_provider_test.mocks.dart
#	test/workout/routines_screen_test.mocks.dart
#	test/workout/weight_unit_form_widget_test.mocks.dart
#	test/workout/workout_day_form_test.mocks.dart
#	test/workout/workout_form_test.mocks.dart
#	test/workout/workout_set_form_test.mocks.dart
2025-01-24 15:05:28 +01:00
Roland Geider
86f8b7ae35 Add a third option to the theme mode
This allows the user to use the system settings as well, and not always force
light or dark mode in the app. Also move the logic to the UserProvider and
do some light refactoring.
2025-01-23 23:22:50 +01:00
Roland Geider
f2d72d126d Add smoke test for the routine edit form 2025-01-21 21:18:11 +01:00
Roland Geider
a770c97573 Add smoke test for the routine edit form 2025-01-21 20:58:57 +01:00
Jackpkn
2b68e5740f Fix navigation and state reset for different days in GymMode 2025-01-19 23:42:15 +05:30
Roland Geider
9ab55a6c83 Save iteration and slot entry id to the logs 2025-01-18 16:46:08 +01:00
Roland Geider
9bb3567835 Add day id to the gym state provider 2025-01-18 15:15:42 +01:00
Roland Geider
f5ab51fd5b Repetitions are not integers anymore 2025-01-18 13:55:42 +01:00
Roland Geider
392dc695ef Merge branch 'fork/Jackpkn/fix/gym-mode-state-persistence-riverpod' into feature/flexible-routines
# Conflicts:
#	lib/widgets/routines/forms.dart
#	lib/widgets/routines/gym_mode.dart
2025-01-18 12:28:02 +01:00
sangharshdeveloper
06ca72e0f8 #687 enhancement theme-customization 2025-01-17 22:19:54 +05:30
Roland Geider
5d542c51d9 Use updated name of repetition in API response
Also use the same name locally for more consistency
2025-01-14 20:41:40 +01:00
sangharshdeveloper
ced268660b #687 enhancement theme-customization 2025-01-12 20:48:31 +05:30
Roland Geider
5a39c6c229 Rename some functions, a bit of cleanup 2025-01-10 15:52:26 +01:00
Roland Geider
6e7284e104 Update the routine test data 2025-01-07 21:42:26 +01:00
Roland Geider
6bfcb3ebe9 Round the value of the slider
This prevents float values from being sent to the server
2025-01-07 21:02:22 +01:00
Roland Geider
462cc95979 Fix test 2025-01-06 22:01:33 +01:00
Roland Geider
5f89ab4b6f Add missing max fields to the slot entry form 2025-01-06 20:28:14 +01:00
Jackpkn
fd1ee4295c fix: improve Gym Mode navigation and state persistence 2025-01-06 21:38:33 +05:30
Roland Geider
1ad59486c2 Start implementing the expanded mode on the slot entry form 2025-01-05 22:49:00 +01:00
Roland Geider
ca6c682483 Remove more unused code 2025-01-05 20:17:26 +01:00
Roland Geider
b66aa7444d Some polishing, adding missing fields and other QoL 2025-01-05 19:45:02 +01:00
Roland Geider
ad5d1be306 Pass the necessary IDs to the gym mode and load the rest of the data 2025-01-05 16:35:16 +01:00
Roland Geider
ae4d2230b9 WIP: Make gym mode display the exercises 2025-01-05 14:49:34 +01:00