53 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
663a125740 Allow to retake a picture (#6228) 2025-01-19 12:13:35 +01:00
85c13502d2 Migration to Flutter 3.27 (#6076)
Co-authored-by: Pierre Slamich <pierre@openfoodfacts.org>
2024-12-29 15:20:05 +01:00
b44a5f546c feat: Many improvements for the photo gallery (#5895)
* Improvements for the photo gallery (and many many other changes)

* Make the indicator white (temporary?)

---------

Co-authored-by: Edouard Marquez <edouard@marquez.cool>
2024-11-23 12:45:50 +01:00
2bffec147e Photo gallery with tabs (#5872) 2024-11-18 13:24:40 +01:00
449ae5a928 feat: 5326 - users can now select proof from gallery in "add price" page (#5679)
Impacted files:
* `image_crop_page.dart`: now we can force the image source
* `price_model.dart`: now we can set a proof after init time
* `price_proof_card.dart`: now we can select the proof image among "camera", "gallery" and "my proofs"; minor refactoring
* `prices_proofs_page.dart`: added a "select proof?" parameter to pop the selected proof if needed
* `user_preferences_account.dart`: minor refactoring
2024-10-09 14:30:10 +02:00
899cb0f4ac feat: 5643 - edit of products of any product type (#5661)
Impacted files:
* `add_basic_details_page.dart`: added product type
* `add_new_product_page.dart`: added a "set product type page" for new products; added product type; minor refactoring
* `add_other_details_page.dart`: added product type
* `app_en.arb`: added 1 label per product type, and 4 labels for product type input
* `background_task_barcode.dart`: added product type
* `background_task_crop.dart`: added product type
* `background_task_details.dart`: added product type
* `background_task_hunger_games.dart`: added product type
* `background_task_image.dart`: added product type
* `background_task_refresh_later.dart`: added product type
* `background_task_unselect.dart`: added product type
* `background_task_upload.dart`: added product type
* `edit_new_packagings.dart`: added product type
* `edit_ocr_page.dart`: added product type
* `image_crop_page.dart`: added product type
* `nutrition_page_loaded.dart`: added product type
* `product_crop_helper.dart`: added product type
* `product_dialog_helper.dart`: removed irrelevant nutriscore and ecoscore logos for new found products, as we cannot say already if it's food
* `product_image_button.dart`: added product type
* `product_image_carousel_item.dart`: added product type
* `product_image_crop_button.dart`: added product type
* `product_image_gallery_view.dart`: added product type
* `product_image_local_button.dart`: added product type
* `product_image_unselect_button.dart`: added product type
* `product_image_viewer.dart`: added product type
* `product_query.dart`: localized labels for product type
* `simple_input_page.dart`: added product type
* `simple_input_page_helpers.dart`: added product type
* `up_to_date_changes.dart`: added product type
* `uploaded_image_gallery.dart`: added product type
2024-10-02 17:53:19 +02:00
1573d32949 feat: Country selector redesign (#5483)
* Redesign of the country selector

* CW

* Search filter

* Fix Lint warning

* Small improvements
2024-07-20 23:17:45 +02:00
d2ac037b74 Revert "chore: Revert Flutter bump to 3.22 (#5463)" (#5468)
This reverts commit 1a9091c09d0ad4addf46e85b90bc9075749ce153.
2024-07-04 15:28:58 +02:00
1a9091c09d chore: Revert Flutter bump to 3.22 (#5463)
This reverts commit 9e211ca29c5caf33c5ca7401ab92235ccb81cb27.
2024-07-04 10:33:23 +02:00
9e211ca29c chore: Bump Flutter version to 3.22 (#5458)
* Bump Flutter version to 3.22

* Migrate Material properties
2024-07-04 09:10:34 +02:00
529fe8f5e1 feat: 5301 - price proofs can be cropped and will be displayed (#5305)
* feat: 5301 - price proofs can be cropped and will be displayed

New files:
* `crop_helper.dart`: Crop Helper for images in crop page: process to run when cropping an image.
* `crop_parameters.dart`: Parameters of the crop operation.
* `product_crop_helper.dart`: Crop Helpers for product images.
* `proof_crop_helper.dart`: Crop Helper for proof images.

Impacted files
* `add_new_product_page.dart`: minor refactoring
* `background_task.dart`: new method `isDeduplicable`
* `background_task_add_price.dart`:
* `background_task_image.dart`: made some methods `static` and public to be reused
* `background_task_manager.dart`: now using new method `isDeduplicable`
* `background_task_upload.dart`: new method `isDeduplicable`
* `crop_page.dart`: refactored using `CropHelper`
* `image_crop_page.dart`: minor refactoring
* `may_exit_page_helper.dart`: minor refactoring
* `price_model.dart`: minor refactoring
* `price_proof_card.dart`: now we may crop the image and we also display the result
* `product_image_crop_button.dart`: refactored using `CropHelper`
* `uploaded_image_gallery.dart`: minor refactoring

* feat: 5301 - fixed WillPopScope2

Impacted files
* `crop_page.dart`: fixed `WillPopScope2`
* `product_price_add_page.dart`: added a `TODO`
* `price_proof_card.dart`: minor refactoring

* Unrelated - fixed `getUrl` bug (was always PROD, never TEST)

New file:
* `signalconso.png`: new asset

Impacted files
* `product_cards_helper.dart`: fixed `getUrl` bug (was always PROD, never TEST)
* `product_image_crop_button.dart`: fixed `getUrl` bug (was always PROD, never TEST)
* `product_image_gallery_other_view.dart`: fixed `getUrl` bug (was always PROD, never TEST)
* `product_image_other_page.dart`: fixed `getUrl` bug (was always PROD, never TEST)
* `uploaded_image_gallery.dart`: fixed `getUrl` bug (was always PROD, never TEST)
2024-05-30 14:34:35 +02:00
db223b5db5 feat: 5195 - new "add one product price" page with background task (#5292)
* feat: 5195 - new "add one product price" page with background task

New files:
* `background_task_add_price.dart`: Background task about adding a product price.
* `currency_selector_helper.dart`: Helper for currency selection.
* `price_amount_card.dart`: Card that displays the amounts (discounted or not) for price adding.
* `price_amount_field.dart`: Text field that displays a single amount for price adding.
* `price_currency_card.dart`: Card that displays the currency for price adding.
* `price_currency_selector.dart`: Button that displays the currency for price adding.
* `price_date_card.dart`: Card that displays the date for price adding.
* `price_location_card.dart`: Card that displays the location for price adding.
* `price_model.dart`: Price Model (checks and background task call) for price adding.
* `price_proof_card.dart`: Card that displays the proof for price adding.
* `product_price_add_page.dart`: Single page that displays all the elements of price adding.

Impacted files:
* `app_en.arb`: added labels related to price adding
* `app_fr.arb`: added labels related to price adding
* `background_task_crop.dart`: minor refactoring
* `background_task_image.dart`: minor refactoring
* `background_task_upload.dart`: minor refactoring
* `currency_selector.dart`: refactored with new class `CurrencySelectorHelper`
* `dao_osm_location.dart`: minor refactoring
* `image_crop_page.dart`: minor refactoring
* `location_list_supplier.dart`: minor refactoring
* `location_map_page.dart`: added action buttons for location description and location confirmation
* `operation_type.dart`: added data for new class `BackgroundTaskAddPrice`
* `prices_card.dart`: now opening new page `ProductPriceAddPage`
* `product_price_item.dart`: minor improvement
* `product_prices_page.dart`: minor improvement
* `pubspec.lock`: wtf
* `pubspec.yaml`: upgraded `openfoodfacts` to `3.10.0`
* `search_location_preloaded_item.dart`: now enabling the map page to confirm a location

* fine-tuning

Impacted files:
* `app_en.arb`: added labels related to prices
* `app_fr.arb`: added labels related to prices
* `edit_product_page.dart`: added a link to "Add product price" page
* `prices_card.dart`: refactoring
* `product_price_add_page.dart`: fixed the FAB label; refactored the access using a static method
* `product_price_item.dart`: now displaying the not discounted price; refactored
* `product_prices_list.dart`: localized
* `product_prices_page.dart`: added a FAB to "Add product price" page
2024-05-25 19:38:00 +02:00
40f4c0ed36 chore: upgraded app_settings to 5.1.1 (#4816) 2023-11-22 08:58:03 +01: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
75683db4af feat: 3919 - select languages for new product images (#4255)
* feat: 3919 - select languages for new product images

New file:
* `add_new_product_helper.dart`: Helper classes for `AddNewProductPage` that was getting too big.

Impacted files:
* `add_basic_details_page.dart`: minor refactoring
* `add_new_product_page.dart`: moved code to new file `add_new_product_helper.dart`; refactored the trackers with new class `AnalyticsProductTracker`; refactored the access to image edit
* `add_simple_input_button.dart`: minor refactoring
* `crop_page.dart`: minor refactoring
* `edit_new_packagings.dart`: minor refactoring
* `edit_ocr_page.dart`: minor refactoring
* `edit_product_page.dart`: minor refactoring
* `image_crop_page.dart`: minor refactoring
* `image_field_extension.dart`: minor refactoring
* `nutrition_page_loaded.dart`: minor refactoring
* `product_cards_helper.dart`: minor refactoring
* `product_field_editor.dart`: minor refactoring
* `product_image_carousel.dart`: minor refactoring
* `product_image_carousel_item.dart`: renamed from `image_upload_card.dart`
* `product_image_gallery_view.dart`: minor refactoring
* `product_image_local_button.dart`: minor refactoring
* `product_image_server_button.dart`: minor refactoring
* `product_image_swipeable_view.dart`: minor refactoring
* `product_image_viewer.dart`: minor refactoring
* `product_refresher.dart`: minor refactoring
* `uploaded_image_gallery.dart`: minor refactoring

* feat: 3919 - merge conflict fixes

* feat: 3919 - conflict fix

---------

Co-authored-by: Pierre Slamich <pierre@openfoodfacts.org>
2023-08-24 09:20:36 +02:00
6e1556844b If the access to the user gallery is denied, an error message is now shown (#4464) 2023-08-08 15:12:16 +02: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
8928d0c523 Force the checkbox color (#4398) 2023-07-29 19:16:00 +02:00
ef15cab269 feat: Settings now use Modal Sheets 🤩 (#4307) 2023-07-22 17:31:15 +02:00
a5fb0e1a4f feat: Input Source picker in a bottom sheet (#4281) 2023-07-12 16:41:12 +02:00
2115b8b652 feat: 3765 - now using the "crop_image" package (#3926)
* feat: 3765 - now using the "crop_image" package

Deleted files:
* `crop_grid.dart`
* `rotated_crop_controller.dart`
* `rotated_crop_image.dart`
* `rotation.dart`

Impacted files:
* `background_task_image.dart`: minor refactoring
* `crop_page.dart`: renamed and moved; now using the `crop_image` package
* `image_compute_container.dart`: renamed and moved; refactored
* `image_crop_page.dart`: minor refactoring
* `product_image_viewer.dart`: minor refactoring
* `pubspec.lock`: wtf
* `pubspec.yaml`: added `crop_image`, upgraded `image` and related packages
* `uploaded_image_gallery.dart`: minor refactoring

* feat: 3765 - now using the CropController.getCroppedBitmap method

Impacted files:
* `background_task_image.dart`: minor refactoring
* `image_compute_container.dart`: removed code that is now in `CropController`
* `pubspec.lock`: wtf
* `pubspec.yaml`: upgraded `crop_image`
2023-05-02 07:29:04 +02:00
a8366fd49f feat: 3897 - no language selector for gallery, only for swipeable page (#3924)
* feat: 3897 - no language selector for gallery, only for swipeable page

Main changes:
* `app_en.arb`: added 2 translations ("no image" / "no image for that language")
* `app_fr.arb`: added 2 translations ("no image" / "no image for that language")
* `nutrition_page_loaded.dart`: removed an implicit `language` parameter
* `product_cards_helper.dart`: refactoring
* `product_image_gallery_view.dart`: removed the language selector
* `product_image_swipeable_view.dart`: removed the language parameter; now we always start with the app language
* `product_image_viewer.dart`: now always displays the (non) image for the specified language, with additional labels; added explicit `language` parameters
* `transient_file.dart`: new method `getImageLanguages`

Added explicit `language` parameters for:
* `add_new_product_page.dart`: added an explicit `language` parameter
* `background_task_crop.dart`: added an explicit `language` parameter
* `background_task_image.dart`: added an explicit `language` parameter
* `background_task_unselect.dart`: added an explicit `language` parameter
* `edit_ingredients_page.dart`: added an explicit `language` parameter
* `edit_new_packagings.dart`: added an explicit `language` parameter
* `image_crop_page.dart`: added an explicit `language` parameter
* `image_upload_card.dart`: added an explicit `language` parameter
* `new_crop_page.dart`: added an explicit `language` parameter
* `product_image_local_button.dart`: added an explicit `language` parameter
* `product_image_server_button.dart`: added an explicit `language` parameter
* `uploaded_image_gallery.dart`: added an explicit `language` parameter

* feat: 3897 - slightly related refactoring around ImageFieldSmoothieExtension

* feat: 3897 - minor fix for TEST env
2023-04-30 18:34:35 +02:00
1ae50c625f fix: checkBox (#3725) 2023-02-21 17:24:49 +01:00
c9935da9b6 feat: 3656 - privacy compliance for cropped new images (#3673)
* feat: 3656 - privacy compliance for cropped new images

Impacted files:
* `background_task_image.dart`: now we crop here the image before sending it
* `new_crop_page.dart`: now we either let the server crop (old image) or let the background task crop (brand new image)
* `rotated_crop_controller.dart`: refactored adding a static method `getCroppedBitmap`

* feat: 3656 - bug fix - server gallery images should be considered as new images

Impacted files:
* `image_crop_page.dart`: minor refactoring
* `new_crop_page.dart`: minor refactoring
* `product_image_viewer.dart`: minor refactoring
* `uploaded_image_gallery.dart`: bug fix - we should consider that it's a new image
2023-02-05 17:36:22 +01:00
ad7ac7732a refactor: Flutter v3.7.0 (#3642) 2023-01-31 22:39:07 +01:00
7121b0e78e feat: 2424 - new "select existing images" button (#3641)
* feat: 2424 - new "select existing image" button

New files:
* `background_task_crop.dart`: Background task about product image crop from existing file.
* `uploaded_image_gallery.dart`: Gallery of all images already uploaded, about a given product.

Delete file:
* `smooth_images_sliver_grid.dart`

Impacted files:
* `abstract_background_task.dart`: added reference to "crop" task
* `app_en.arb`: added 4 labels about "existing images" (button, page title, downloading, nothing found)
* `image_crop_page.dart`: refactored moving code here from `ProductImageViewer`
* `new_crop_page.dart`: now we can handle "already existing" images, in addition to the current choice for e.g. NUTRITION_FR
* `operation_type.dart`: added reference to new "crop" task
* `product_image_swipeable_view.dart`: unrelated fix - the title of the first reached page was always the title of the first page to the left
* `product_image_viewer.dart`: added a "select existing image" button; moved code to `image_crop_page.dart`
* `pubspec.lock`: wtf
* `pubspec.yaml`: upgraded off-dart in order to user new methods

* feat: 2424 - upgraded to off-dart 2.2.0

Impacted files:
* `pubspec.lock`: wtf
* `pubspec.yaml`: upgraded off-dart in order to user new methods
2023-01-27 06:36:08 +01:00
fac9afe715 fix: 3490 - now accepting not cropped new pictures (#3524)
Impacted files:
* `image_crop_page.dart`: told the `CropPage` we're dealing with a brand new picture
* `new_crop_page.dart`: new `bool` parameter `brandNewPicture` used when saving the picture; refactored the debug lines
* `product_image_viewer.dart`: told the `CropPage` we're dealing with an already existing picture
2023-01-05 13:53:59 +01:00
d3aea55ce2 feat: 3332 - refactored the new crop page UI and added a camera (#3402)
* feat: 3332 - refactor the new crop page UI and added a camera

New file:
* `may_exit_page_helper.dart`: Helper class about the "You're leaving the page with unsaved changes" case.

Impacted files:
* `image_crop_page.dart`: made method `pickImageFile` public
* `new_crop_image.dart`: added "camera" button to app bar, moved "rotate" button on app bar, moved "ok" button as FAB, added "exit without saving" dialog feature
* `simple_input_page.dart`: now using new class `MayExitPageHelper`

* feat: 3332 - after review

Impacted file:
* `new_crop_image.dart`: moved "camera" button to bottom center, moved "rotate" button to top right, removed "ok" button

* feat: 3332 - refactored the new crop tool UI; removed the old crop tool

Impacted files:
* `crop_helper.dart`: removed the old crop tool
* `image_crop_page.dart`: removed the old crop tool
* `new_crop_page.dart`: added a "rotate left" button; added a "confirm" button; refactored
* `Podfile.lock`: wtf
* `pubspec.lock`: wtf
* `pubspec.yaml`: removed the old crop tool
* `rotated_crop_controller.dart`: added a "rotate left" method
* `rotation.dart`: added a "rotate left" method
* `user_preferences_dev_mode.dart`: removed the choice of "old crop tool"

* feat: 3332 - simplified the image edit process removing one step

Deleted files:
* `confirm_and_upload_picture.dart`
* `crop_helper.dart`

Impacted files:
* `image_crop_page.dart`: simplified with fewer steps
* `new_crop_page.dart`: now uploads
* `product_image_viewer.dart`: minor refactoring - going directly to `CropPage`
2022-12-08 19:09:37 +01:00
8831337a21 feat: 3332 - crop page title now reflects image field (#3366)
* feat: 3332 - crop page title now reflects image field

Impacted files:
* `confirm_and_upload_picture.dart`: minor refactoring
* `crop_helper.dart`: added a `pageTitle` parameter
* `edit_ingredients_page.dart`: minor refactoring
* `image_crop_page.dart`: added `imageField` parameters, so that we can compute the correct label on crop page
* `image_upload_card.dart`: now we explicitly use `getProductImageButtonText` as label
* `new_crop_page.dart`: added a page title parameter
* `product_cards_helper.dart`: new label method `getImagePageTitle`; minor refactoring
* `product_image_carousel.dart`: minor refactoring
* `product_image_data.dart`: removed label fields - now we have more flexibility, computing labels from `imageField` with `product_cards_helper.dart` methods
* `product_image_gallery_view.dart`: minor refactoring
* `product_image_swipeable_view.dart`: now we explicitly use `getImagePageTitle` as label
* `product_image_viewer.dart`: minor refactoring
* `smooth_images_sliver_list.dart`: now we explicitly use `getProductImageTitle` as label
* `smooth_product_image.dart`: minor refactoring

* feat: 3332 - 2 lines for the title

Impacted files:
* `new_crop_page.dart`: 2 lines for the title

Co-authored-by: Aman Raj <57723319+AshAman999@users.noreply.github.com>
2022-11-28 20:39:22 +01:00
fba2851809 fix: 3018 - instant upload of images (#3329)
New files:
* `ocr_widget.dart`: Widget dedicated to OCR, with 3 actions: upload image, extract data, save. Used to be in `edit_ingredients_page.dart`
* `transient_file.dart`: Helper class about transient files (= not fully uploaded yet).

Impacted files:
* `add_basic_details_page.dart`: minor refactoring
* `add_new_product_page.dart`: refactored around the class image repository
* `app_en.arb`: added 1 label when OCR fails
* `app_fr.arb`: added 1 label when OCR fails
* `background_task_details.dart`: minor refactoring
* `background_task_image.dart`: immediate execution with just one try
* `confirm_and_upload_picture.dart`: minor refactoring with new private class `_OutlinedButton`
* `edit_ingredients_page.dart`: moved `OcrWidget` code to dedicated new dart file; fixed the extract button - that cannot be reached if the image is not uploaded yet
* `image_crop_page.dart`: refactored with more explicit method names
* `image_upload_card.dart`: refactored with `TransientFile`
* `new_product_page.dart`: minor refactoring
* `product_cards_helper.dart`: minor refactoring
* `product_image_carousel.dart`: minor refactoring
* `product_image_gallery_view.dart`: refactored with new method `confirmAndUploadNewPicture` and new class `TransientFile`
* `product_image_viewer.dart`: refactored with new class `TransientFile`
* `question_card.dart`: minor refactoring
* `smooth_product_image.dart`: refactored with new class `TransientFile`
2022-11-19 14:45:50 +01:00
3d944bbed1 fix: 3018 - now there's only one place where we upload pictures from (#3323)
Deleted file:
* `picture_capture_helper.dart`: moved code to `ConfirmAndUploadPicture`, that is now the only place where we upload images

Impacted files:
* `add_new_product_page.dart`: minor refactoring
* `background_task_details.dart`: minor refactoring
* `background_task_image.dart`: minor refactoring
* `confirm_and_upload_picture.dart`: minor refactoring; moved here code from `picture_capture_helper.dart`
* `edit_ingredients_page.dart`: replaced `uploadCapturedPicture` with a call to page `ConfirmAndUploadPicture`
* `image_crop_page.dart`: refactored into a single `startImageCropping` method
* `image_upload_page.dart`: replaced `uploadCapturedPicture` with a call to page `ConfirmAndUploadPicture`
* `new_crop_page.dart`: minor refactoring
* `product_image_gallery_view.dart`: replaced `uploadCapturedPicture` with a call to page `ConfirmAndUploadPicture`; refactoring around refresh
* `product_image_viewer.dart`: minor refactoring
* `up_to_date_product_provider.dart: removed old-fashioned code
2022-11-15 11:33:19 +01:00
cd288cdf80 feat: #3237 - improved gallery/camera choice (#3239)
Impacted files:
* `app_en.arb`: added 2 related labels
* `app_fr.arb`: added 2 related labels
* `add_new_product_page.dart`: refactored the call to `startImageCropping`
* `confirm_and_upload_picture.dart`: refactored the call to `startImageCropping`; removed the code that also asked for the gallery/camera choice
* `edit_ingredients_page.dart`: refactored the call to `startImageCropping`
* `image_crop_page.dart`: simplified and upgraded methods `pickImageFile` and `startImageCropping`; added a method to select the best picture source
* `image_upload_card.dart`: refactored the call to `startImageCropping`
* `product_image_gallery_view.dart`: refactored the call to `startImageCropping`
* `user_preferences.dart`: added `enum`, getter, setter for the picture source
* `user_preferences_settings.dart`: added a choice for camera/gallery/select; fixed a possible overflow with "dark mode"
2022-10-31 08:56:54 +01:00
535cddc2a9 fix: #1538 - new crop tool (cf. dev mode) (#2872)
New files:
* `crop_grid.dart`: heavily inspired from package `crop_image` - ideally we should put it back there.
* `crop_helper.dart`: Crop Helper - which crop tool do we use, and the method to use it.
* `new_crop_page.dart`: Page dedicated to image cropping. Pops the resulting file path if relevant.
* `rotated_crop_controller.dart`: heavily inspired from package `crop_image` BUT with the rotation feature - ideally we should put it back there.
* `rotated_crop_image.dart`: heavily inspired from package `crop_image` BUT with the rotation feature - ideally we should put it back there.
* `rotation.dart`: 90 degree rotations - ideally we should put it back in package `crop_image`

Impacted files:
* `image_crop_page.dart`: now relying on new class `CropHelper` in order to get the appropriate crop tool (e.g. old or new)
* `pubspec.lock`: wtf
* `pubspec.yaml`: added package `image` for good performances regarding image encoding
* `user_preferences_dev_mode.dart`: added a "Use new crop tool" switch (default is `false`)
2022-09-07 19:49:05 +02:00
394cf4cf18 fix: #1538 - refactoring of image cropper (#2858)
* fix: #1538 - refactoring of image cropper

Impacted files:
* `confirm_and_upload_picture.dart`: minor refactoring.
* `image_crop_page.dart`: rather heavy refactoring needed to move forward.

* fix: #1538 - refactoring of image cropper

Impacted files:
* `confirm_and_upload_picture.dart`: minor refactoring.
* `image_crop_page.dart`: rather heavy refactoring needed to move forward.

* fix: #1538 - refactoring of image cropper

Impacted files:
* `confirm_and_upload_picture.dart`: minor refactoring.
* `image_crop_page.dart`: rather heavy refactoring needed to move forward.

* fix: #1538 - refactoring of image cropper

Impacted files:
* `image_crop_page.dart`: vertical buttons for gallery/camera dialog
* `smooth_alert_dialog.dart`: fixed comment
2022-08-30 11:03:20 +02:00
241c65fc8e fix infinte loading while image upload (#2808) 2022-08-20 14:06:05 +02:00
0692cba2ce Between the screen to take a picture and to crop it, a loading screen is now displayed (#2752) 2022-08-11 13:05:47 +02:00
875f016b9a fix: People have issues with cropping (#2500)
* Make the product page action row top aligned solved

* fix: image not croped

* fix: Sign up form: different font styles

* flutter formet

Co-authored-by: Macbook Pro <mac@macbooks-mbp.home>
Co-authored-by: Macbook Pro <mac@Macbooks-MacBook-Pro.local>
2022-07-07 10:43:06 +02:00
1b70a91dfb fix: Pick image from file too (#2290)
* take images from camera as well + translations

* overflow fix on alert dialog buttons

* hide dialog for selection where already more

* translation and alignment

* formatted the code

* Removed comment

* Update pubspec.lock

* Missing import

Co-authored-by: Marvin Möltgen <39344769+M123-dev@users.noreply.github.com>
2022-06-19 13:40:55 +02:00
6fb61c17e4 feat: Update to new color scheme (#2028)
* feat: Update to new color scheme

* Update goldens

* Update packages/smooth_app/lib/themes/smooth_theme.dart

Co-authored-by: monsieurtanuki <fabrice_fontaine@hotmail.com>

* Updated to new smaller color scheme

* Updated Goldens

* Some minor fixes

* Update pubspec.lock

* Update goldens

* Next fixes

* fix login page

* More fixes

* Even more fixes

* latest fixes with pierre

Co-authored-by: monsieurtanuki <fabrice_fontaine@hotmail.com>
2022-06-02 19:02:08 +02:00
1843f23796 fix: confirm and upload fix (#2043)
* handle errors in cropper

* retaken photo delete after it's work is done

* ran flutter format

* handle errors in cropper

* retaken photo delete after it's work is done

* ran flutter format
2022-05-28 15:13:03 +02:00
42de060663 feat: Enabled photo editing from product_image_gallery_view (#1765)
* feat: Enabled photo editing from product_image_gallery_view

* fixed formatting

* Update packages/smooth_app/lib/pages/image_crop_page.dart

* Update pubspec.yaml

* Update pubspec.yaml

* try to fix indent

* Fixed PR comments and merging errors

* Changed FAB icon

* Update image_crop_page.dart

* Update packages/smooth_app/lib/pages/image_crop_page.dart

* Update packages/smooth_app/lib/pages/image_crop_page.dart

* Fix dart analysis warnings

Co-authored-by: Pierre Slamich <pierre@openfoodfacts.org>
Co-authored-by: Pierre Slamich <pierre.slamich@gmail.com>
Co-authored-by: Marvin M <39344769+M123-dev@users.noreply.github.com>
Co-authored-by: Edouard Marquez <g123k@users.noreply.github.com>
2022-05-19 15:28:05 +02:00
04d5b42305 fix: #1826 Changed text color according to mode (#1845)
* changed colors

* formatted
2022-05-14 22:08:54 +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
223050fa37 Removed fixed white color (#1800) 2022-05-10 19:41:35 +02:00
89d440ebc6 fix: Fix image_cropper import (#1772)
* Fix unused import

* Upgrade image_cropper to 2.0.2
2022-05-06 20:49:10 +02:00
bd10bbbac8 fix: update image cropper to 2.0.0 #1672 (#1695)
* updated image cropper to 2.0.0

* remove ignore type
2022-04-29 18:04:34 +02:00
852ae7be02 fix: Translate hardcoded sentences (#1473)
* Translate hardcoded sentences

* Extract all AppLocalizations.of(context) into variables
2022-04-03 18:28:11 +02:00
d82020030a fix: old crop utility brought back (#1422)
* added image_cropper package to depencency

* added the required changes to manifest.xml file

* working new cropper added

* styled the crop tool with the theme

* fine tune dark theme on crop tool

* removed unused dependencies

Co-authored-by: Marvin M <39344769+M123-dev@users.noreply.github.com>
2022-04-01 18:15:22 +02:00