hsbijarniya / image_editor_plus

Flutter Image Editor Plugin with simple, easy support for image editing using Paints, Text, Filters, Emoji and Sticker like stories.
MIT License
103 stars 103 forks source link

Image Editor getting stuck on loading screen after editing is complete on Web platform #74

Closed ShreyashKore closed 3 weeks ago

ShreyashKore commented 6 months ago

Issue

On web; ImageEditor won't pop back with the result when check button on top-right is pressed.

Version

Issue is present in 1.0.0+ While older version 0.2.6 and below do not have this issue.

While I couldn't check the behavior for IOS; on Android; it is working correctly.

Error Logs

Error: Expected a value of type 'Function', but got one of type 'Null'
dart-sdk/lib/internal/js_dev_runtime/private/ddc_runtime/errors.dart 294:3       throw
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 127:3       castError
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 818:12  cast
dart-sdk/lib/_internal/js_dev_runtime/patch/core_patch.dart 143:17                as
dart-sdk/lib/_internal/js_shared/lib/js_util_patch.dart 81:5                      getProperty
packages/flutter_image_compress_web/src/pica.dart 42:25                           resizeWithList
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 84:54                runBody
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 127:5                _async
packages/flutter_image_compress_web/src/pica.dart 34:33                           resizeWithList
packages/flutter_image_compress_web/flutter_image_compress_web.dart 83:12         compressWithList
packages/flutter_image_compress/flutter_image_compress.dart 51:22                 compressWithList
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 84:54                runBody
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 127:5                _async
packages/flutter_image_compress/flutter_image_compress.dart 40:55                 compressWithList
packages/image_editor_plus/utils.dart 25:47                                       convert
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 84:54                runBody
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 127:5                _async
packages/image_editor_plus/utils.dart 5:35                                        convert
packages/image_editor_plus/image_editor_plus.dart 646:32                          getMergedImage
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 84:54                runBody
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 127:5                _async
packages/image_editor_plus/image_editor_plus.dart 624:36                          getMergedImage
packages/image_editor_plus/image_editor_plus.dart 581:29                          <fn>
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 84:54                runBody
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 127:5                _async
packages/image_editor_plus/image_editor_plus.dart 557:26                          <fn>
packages/flutter/src/material/ink_well.dart 1183:21                               handleTap
packages/flutter/src/gestures/recognizer.dart 275:24                              invokeCallback
packages/flutter/src/gestures/tap.dart 652:11                                     handleTapUp
packages/flutter/src/gestures/tap.dart 309:5                                      [_checkUp]
packages/flutter/src/gestures/tap.dart 242:7                                      handlePrimaryPointer
packages/flutter/src/gestures/recognizer.dart 630:9                               handleEvent
packages/flutter/src/gestures/pointer_router.dart 98:7                            [_dispatch]
packages/flutter/src/gestures/pointer_router.dart 143:9                           <fn>
dart-sdk/lib/_internal/js_dev_runtime/private/linked_hash_map.dart 21:7           forEach
packages/flutter/src/gestures/pointer_router.dart 141:17                          [_dispatchEventToRoutes]
packages/flutter/src/gestures/pointer_router.dart 127:7                           route
packages/flutter/src/gestures/binding.dart 488:5                                  handleEvent
packages/flutter/src/gestures/binding.dart 468:14                                 dispatchEvent
packages/flutter/src/rendering/binding.dart 439:11                                dispatchEvent
packages/flutter/src/gestures/binding.dart 413:7                                  [_handlePointerEventImmediately]
packages/flutter/src/gestures/binding.dart 376:5                                  handlePointerEvent
packages/flutter/src/gestures/binding.dart 323:7                                  [_flushPointerEventQueue]
packages/flutter/src/gestures/binding.dart 292:9                                  [_handlePointerDataPacket]
lib/_engine/engine/platform_dispatcher.dart 1289:5                                invoke1
lib/_engine/engine/platform_dispatcher.dart 273:5                                 invokeOnPointerDataPacket
lib/_engine/engine/pointer_binding.dart 168:30                                    [_onPointerData]
lib/_engine/engine/pointer_binding.dart 791:20                                    <fn>
lib/_engine/engine/pointer_binding.dart 720:7                                     <fn>
lib/_engine/engine/pointer_binding.dart 317:9                                     loggedHandler
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 574:37  _checkAndCall
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 579:39  dcall
shinpeiyamagiwa commented 6 months ago

I too get this problem.

Himani2803 commented 6 months ago

Issue

On web; ImageEditor won't pop back with the result when check button on top-right is pressed.

Version

Issue is present in 1.0.0+ While older version 0.2.6 and below do not have this issue.

While I couldn't check the behavior for IOS; on Android; it is working correctly.

Error Logs

Error: Expected a value of type 'Function', but got one of type 'Null'
dart-sdk/lib/internal/js_dev_runtime/private/ddc_runtime/errors.dart 294:3       throw
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 127:3       castError
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 818:12  cast
dart-sdk/lib/_internal/js_dev_runtime/patch/core_patch.dart 143:17                as
dart-sdk/lib/_internal/js_shared/lib/js_util_patch.dart 81:5                      getProperty
packages/flutter_image_compress_web/src/pica.dart 42:25                           resizeWithList
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 84:54                runBody
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 127:5                _async
packages/flutter_image_compress_web/src/pica.dart 34:33                           resizeWithList
packages/flutter_image_compress_web/flutter_image_compress_web.dart 83:12         compressWithList
packages/flutter_image_compress/flutter_image_compress.dart 51:22                 compressWithList
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 84:54                runBody
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 127:5                _async
packages/flutter_image_compress/flutter_image_compress.dart 40:55                 compressWithList
packages/image_editor_plus/utils.dart 25:47                                       convert
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 84:54                runBody
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 127:5                _async
packages/image_editor_plus/utils.dart 5:35                                        convert
packages/image_editor_plus/image_editor_plus.dart 646:32                          getMergedImage
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 84:54                runBody
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 127:5                _async
packages/image_editor_plus/image_editor_plus.dart 624:36                          getMergedImage
packages/image_editor_plus/image_editor_plus.dart 581:29                          <fn>
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 84:54                runBody
dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 127:5                _async
packages/image_editor_plus/image_editor_plus.dart 557:26                          <fn>
packages/flutter/src/material/ink_well.dart 1183:21                               handleTap
packages/flutter/src/gestures/recognizer.dart 275:24                              invokeCallback
packages/flutter/src/gestures/tap.dart 652:11                                     handleTapUp
packages/flutter/src/gestures/tap.dart 309:5                                      [_checkUp]
packages/flutter/src/gestures/tap.dart 242:7                                      handlePrimaryPointer
packages/flutter/src/gestures/recognizer.dart 630:9                               handleEvent
packages/flutter/src/gestures/pointer_router.dart 98:7                            [_dispatch]
packages/flutter/src/gestures/pointer_router.dart 143:9                           <fn>
dart-sdk/lib/_internal/js_dev_runtime/private/linked_hash_map.dart 21:7           forEach
packages/flutter/src/gestures/pointer_router.dart 141:17                          [_dispatchEventToRoutes]
packages/flutter/src/gestures/pointer_router.dart 127:7                           route
packages/flutter/src/gestures/binding.dart 488:5                                  handleEvent
packages/flutter/src/gestures/binding.dart 468:14                                 dispatchEvent
packages/flutter/src/rendering/binding.dart 439:11                                dispatchEvent
packages/flutter/src/gestures/binding.dart 413:7                                  [_handlePointerEventImmediately]
packages/flutter/src/gestures/binding.dart 376:5                                  handlePointerEvent
packages/flutter/src/gestures/binding.dart 323:7                                  [_flushPointerEventQueue]
packages/flutter/src/gestures/binding.dart 292:9                                  [_handlePointerDataPacket]
lib/_engine/engine/platform_dispatcher.dart 1289:5                                invoke1
lib/_engine/engine/platform_dispatcher.dart 273:5                                 invokeOnPointerDataPacket
lib/_engine/engine/pointer_binding.dart 168:30                                    [_onPointerData]
lib/_engine/engine/pointer_binding.dart 791:20                                    <fn>
lib/_engine/engine/pointer_binding.dart 720:7                                     <fn>
lib/_engine/engine/pointer_binding.dart 317:9                                     loggedHandler
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 574:37  _checkAndCall
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 579:39  dcall

Try this Add this in index.html file

ShreyashKore commented 3 weeks ago

This fixed the issue. Thanks @Himani2803!