25 Commits

Author SHA1 Message Date
e3bc40fdf3 chore: Migration to Dart 3.8 (#6668)
* Migration to Dart 3.8

* New GA

* Fix dartdoc
2025-06-23 18:14:17 +02:00
dda75e283e feat: Flutter 3.32 (#6665)
* Migration to Flutter 3.32

* Temporary ignore dart formatter issues
2025-06-23 09:56:00 +02:00
4db7eaa9ed Minor onboarding improvements (#6126) 2025-01-06 20:21:44 +01:00
af215e8390 Change the onboarding for the AppStore + fix (#6003) 2024-12-05 10:56:02 +01:00
61610ea7d5 Onboarding: the main button should be selected first by the accessibility (#5287) 2024-05-25 19:01:01 +02:00
346c6e30c4 fix: 1815 - around context.mounted (#4768)
* fix: 1815 - around context.mounted

The PR is about two related topics:
* Removing all the `ignore: use_build_context_synchronously`
* Replacing all the `State<StatefulWidget> widget` by `BuildContext context`, now that it's possible in flutter

* Update packages/smooth_app/lib/pages/onboarding/permissions_page.dart

* format fix
2023-11-15 11:50:00 +01:00
78884a6ad2 feat: App review in the "scan card" (#4450)
* App review in the "scan card"

* Add a keep alive to prevent many requests

* Add a missing call to super (for the KeepAlive mixin)

* Don't really understand what happened with this file 🤨
2023-08-05 17:27:59 +02:00
b03f60b085 feat: Better support RTL languages (#4310) 2023-07-16 20:29:51 +02:00
75dd24e6e9 feat: Some updates to make the app work again on macOS (#4309) 2023-07-15 08:07:46 +02:00
fb164cbce2 feat: 3835 - country selector similar to language selector (#3936)
Impacted files:
* `consent_analytics_page.dart`: minor refactoring
* `country_selector.dart`: now using the preferences for initial country code; same UI as language selector
* `main.dart`: minor refactoring
* `next_button.dart`: minor refactoring
* `onboarding_flow_navigator.dart`: refactoring around `OnboardingPage`
* `permissions_page.dart`: minor refactoring
* `product_query.dart`: minor refactoring
* `user_preferences.dart`: minor refactoring
* `user_preferences_dev_mode.dart`: minor refactoring
* `user_preferences_page.dart`: minor UI fix (app bar title on 2 lines)
* `user_preferences_settings.dart`: added the "selected language" parameter; minor refactoring
* `welcome_page.dart`: fixed a visual overflow bug
2023-05-07 08:04:51 +02:00
cc1cc4a8e1 Onboarding: ensure the bottom padding is consistent across screens on iOS (#3192) 2022-10-22 22:47:55 +02:00
e798376f1c fix: screenshot - different Key for different screens (#2798)
Impacted files:
* `app_test.dart`: added the "reinvention" page; set different "next" keys; handled tooltip on KP pages
* `knowledge_panel_page_template.dart`: specific "next" keys; added "tooltip" key
* `next_button.dart`: new `nextKey` parameter
* `onboarding_bottom_bar.dart`: added `nextKey` parameter used during screenshot generation
* `preferences_page.dart`: specific "next" key
* `reinvention_page.dart`: specific "next" key
* `sample_eco_card_page.dart`: specific "next" key
* `sample_health_card_page.dart`: specific "next" key
* `scan_example.dart`: specific "next" key
* `welcome_page.dart`: specific "next" key
2022-08-18 09:29:45 +02:00
41ad027f9b feat: #2001 - consistency for left/right button positions during onboarding (#2235)
New file:
* `onboarding_bottom_bar.dart`: `Widget`s for onboarding bottom bar (bar, button, icon)

Impacted file:
* `consent_analytics_page.dart`: refactored around `onboarding_bottom_bar.dart`
* `next_button.dart`: changed the left/right button positions; refactored around `onboarding_bottom_bar.dart`
2022-06-15 07:21:04 +02:00
9d102949e4 feat: #2081 - reinvention onboarding page (#2116)
New files:
* `birthday-cake.svg`
* `reinvention.svg`
* `reinvention-page.dart`: Onboarding page: "reinvention"

Impacted files:
* `app_en.arb`: 2 new labels for reinvention page
* `app_fr.arb`: 2 new labels for reinvention page
* `next_button.dart`: added a "transparent background" mode
* `onboarding_flow_navigator.dart`: added "reinvention" case
* `onboarding_loader.dart`: added "reinvention" case
2022-06-01 13:27:14 +02:00
b214d23545 feat: #2001 - matched the figma mocks for the 6 onboarding pages (#2017)
* feat: #1918 #1934 - simplified user preferences food

Deleted file:
* `abstract_collapsible_user_preferences.dart`: not really relevant anymore and source of confusion - the code was refactored to its only child, `UserPreferencesAttributeGroup`

Impacted files:
* `abstract_user_preferences.dart`: refactored without the "collapsed" option
* `Podfile.lock`: wtf
* `preferences_page.dart`: simplified the display (that was Scaffold^2)
* `project.pbxproj`: wtf
* `pubspec.lock`: wtf
* `user_preferences.dart`: added a setter/getter about the unique active attribute group
* `user_preferences_attribute_group.dart`: refactored around the unique active attribute group - no action and no icon for the only expanded group
* `user_preferences_food.dart`: removed doubled description and refresh button from onboarding
* `user_preferences_profile.dart`: unrelated minor refactoring

* feat/#1918 - changed collapsed/expanded arrows for attribute groups

Deleted file:
* `smooth_animated_collapse_arrow.dart`

Impacted file:
* `user_preferences_attribute_group.dart`: changed collapsed/expanded arrows

* Update packages/smooth_app/ios/Podfile.lock

Co-authored-by: Pierre Slamich <pierre.slamich@gmail.com>

* feat: #2001 - matched the figma mocks for the first 5 onboarding pages

Deleted file:
* `scan_example.svg`

New files:
* `eco.svg`
* `globe.svg`
* `health.svg`
* `preferences.svg`
* `scan.svg`
* `title.svg`

Impacted files:
* `knowledge_panel_page_template.dart`: matched the figma mock; new parameters - svg asset and background color
* `next_button.dart`: matched the figma mock
* `onboarding_flow_navigator.dart`: added background color
* `preferences_page.dart`: matched the figma mock
* `sample_eco_card_page.dart`: new parameters - svg asset and background color
* `sample_health_card_page.dart`: new parameters - svg asset and background color
* `scan_example.dart`: matched the figma mock
* `welcome_page.dart`: matched the figma mock

* feat: #2001 - matched the figma mocks for the 6th onboarding page

New file:
* `analytics.svg`

Impacted files:
* `consent_analytics_page.dart`: matched the figma mock
* `onboarding_flow_navigator.dart`: minor refactoring

* github mess

* github mess

* Update packages/smooth_app/lib/pages/onboarding/consent_analytics_page.dart

Co-authored-by: Marvin M <39344769+M123-dev@users.noreply.github.com>

* Update packages/smooth_app/lib/pages/onboarding/next_button.dart

Co-authored-by: Marvin M <39344769+M123-dev@users.noreply.github.com>

* github mess

Co-authored-by: Pierre Slamich <pierre.slamich@gmail.com>
Co-authored-by: Marvin M <39344769+M123-dev@users.noreply.github.com>
2022-05-27 11:37:17 +02:00
b32506e573 Onboarding: remove the purple inkwell (#1940) 2022-05-23 11:29:51 +02:00
c3b44aced2 fix: Flutter 3.0 fixes (#1814)
* fix: Flutter 3.0 fixes

* Workflows

* Update gradle

* Automated fixes

* Manual async gap fixes

* Fix merge conflict reverts

* Format

* qr_code_scanner fixes
2022-05-12 16:07:22 +02:00
e23117de31 feat: #217 - onboarding screenshot generation. (#1529)
New files:
* `app_test.dart`: Onboarding screenshots.
* `screenshot_driver.dart`: Screenshot driver.

Impacted files:
* `analytics_helper.dart`: added a special case for screenshot init.
* `main.dart`: refactored for screenshots, and more specifically moved init code to be run before calling the app.
* `next_button.dart`: added a `Key` for test/screenshots
* `Podfile.lock`: wtf
* `pubspec.lock`: impacted by `pubspec.yaml`
* `pubspec.yaml`: added integration_test and flutter_driver to dev_dependencies; upgraded the version numbers.
2022-04-11 14:38:05 +02:00
6f00d8889b fix: no visual feedback on next button (#1460) 2022-04-03 18:39:19 +02:00
809e2efada feat: Auto detect dark theme (#1276)
* made changes for getting theme from shared pref

* constants and methods added

* ui changes for the selecting themeMode

* check dark theme with platform brightness

* removed unnessary fields and imports

* used conext wherever nessacry

* temp fix for showing systemDefault on ui

* formatted the code

* ran flutter format .

* removed unused dark theme prefs

* pulled the changes

* removed  themeprovider from wherever un-necessary

* solve merge conflicts

* create single utility method to check Darktheme

* formatted the code

* added todo for translation

* used isDarkMode function throughout the code

* deleted scrshots from test/pages/failures

* call provider to get theme data

* fix: Mock data for screenshot tests

* Update next_button.dart

* Update next_button.dart

Co-authored-by: M123-dev <marvinmoel05@gmail.com>
Co-authored-by: Marvin M <39344769+M123-dev@users.noreply.github.com>
2022-03-30 18:52:07 +02:00
f9052ac3d7 fix: On boarding dark mode fix (#1402)
* changed hardcoded color to theme headline color

* button color chaned to theme color

* made consent analytics page honor dark theme

* Revert "made consent analytics page honor dark theme"

This reverts commit 22a1a9516aa80159c3e578dad920add7d0acfc5d.

* container color accoriding to theme
2022-03-30 08:18:22 +02:00
0d61134375 General radius throughout the app (#1179)
* Added design const

* ROUNDED_RADIUS

* General radius throughout the app

* Update smooth_main_button.dart

* .all instead of .circular
2022-03-03 21:25:46 +01:00
e874bbeea0 refactor: Package merge (#981) 2022-01-26 16:50:13 +01:00
954449e437 feat: #935 - now we display localized (downloaded) data during onboarding (#986)
Deleted files:
* `sample_eco_knowledge_panels.json`: replaced by new file `sample_knowledge_panels.json`
* `sample_health_knowledge_panels.json`: replaced by new file `sample_knowledge_panels.json`

New files:
* `abstract_onboarding_data.dart`: Abstraction of data we download, store and reuse at onboarding.
* `dao_string.dart`: Where we store strings.
* `loading_dialog.dart`: Dialog with a stop button, while a future is running.
* `onboarding_data_knowledge_panels.dart`: Helper around knowledge panels we download, store and reuse at onboarding.
* `onboarding_data_product.dart`: Helper around a product we download, store and reuse at onboarding.
* `onboarding_loader.dart`: Helper around data we download, store and reuse at onboarding.
* `sample_knowledge_panels.json`: json data downloaded today for en_US, cf. onboarding_data_knowledge_panels.dart
* `tmp.dart`: Fixes to off-dart.

Impacted files:
* `knowledge_panel_page_template.dart`: added parameters to 1. use the database (and downloaded data) and 2. limit the display to a given panel
* `knowlegde_panel_builder.dart`: added a method to display only one panel
* `local_database.dart`: added new dao `DaoString`
* `new_product_page.dart`: refactored
* `next_button.dart`: added an optional call to async methods at "next" time - e.g. data download
* `nutrition_page_loaded.dart`: now uses the new `LoadingDialog`
* `onboarding_flow_navigator.dart`: now using the database to get more relevant (previoulsy downloaded) data
* `preferences_page.dart`: now using previously downloaded data instead of assets
* `product_dialog_helper.dart`: now uses the new `LoadingDialog`
* `question_card.dart`: unrelated minor refactoring
* `sample_eco_card_page.dart`: now using previously downloaded data instead of assets, and displaying only the environment card
* `sample_health_card_page.dart`: now using previously downloaded data instead of assets, and displaying only the health card
* `sample_product_json.dart`: json data downloaded today for en_US, cf. onboarding_data_product.dart
* `sign_up_page.dart`: now uses the new `LoadingDialog`
2022-01-20 20:28:07 +01:00
cfdaa4c635 feat: Second onboarding page + navigation capability between pages (#772) 2021-12-28 18:07:13 +01:00