firebase / FirebaseUI-Flutter

Apache License 2.0
107 stars 100 forks source link

🐛 GoogleProvider.provider.current_user is not updated on desktop #381

Open plammens opened 2 months ago

plammens commented 2 months ago

Is there an existing issue for this?

What plugin is this bug for?

Firebase UI OAuth Google

What platform(s) does this bug affect?

Web

List of dependencies used.

flutter pub deps -s list
Dart SDK 3.6.0-146.0.dev
Flutter SDK 3.24.0-1.0.pre.592
commitments_app 0.13.2

dependencies:
- flutter 0.0.0
  - characters 1.3.0
  - collection 1.19.0
  - material_color_utilities 0.11.1
  - meta 1.15.0
  - vector_math 2.1.4
  - sky_engine any
- cupertino_icons 1.0.8
- flutter_speed_dial 6.2.0
  - flutter any
- url_launcher 6.3.0
  - flutter any
  - url_launcher_android ^6.3.0
  - url_launcher_ios ^6.2.4
  - url_launcher_linux ^3.1.0
  - url_launcher_macos ^3.1.0
  - url_launcher_platform_interface ^2.3.0
  - url_launcher_web ^2.2.0
  - url_launcher_windows ^3.1.0
- date_time_picker 2.1.0
  - flutter any
  - intl ^0.19.0
- intl 0.19.0
  - clock ^1.1.0
  - meta ^1.0.2
  - path ^1.8.0
- flutter_riverpod 2.5.1
  - collection ^1.15.0
  - flutter any
  - meta ^1.4.0
  - riverpod 2.5.1
  - state_notifier >=0.7.2 <2.0.0
- firebase_core 3.3.0
  - firebase_core_platform_interface ^5.2.0
  - firebase_core_web ^2.17.4
  - flutter any
  - meta ^1.8.0
- cloud_firestore 5.2.1
  - cloud_firestore_platform_interface ^6.3.1
  - cloud_firestore_web ^4.1.1
  - collection ^1.0.0
  - firebase_core ^3.3.0
  - firebase_core_platform_interface ^5.2.0
  - flutter any
  - meta ^1.8.0
- collection 1.19.0
- firebase_auth 5.1.4
  - firebase_auth_platform_interface ^7.4.3
  - firebase_auth_web ^5.12.5
  - firebase_core ^3.3.0
  - firebase_core_platform_interface ^5.2.0
  - flutter any
  - meta ^1.8.0
- firebase_ui_auth 1.15.0
  - email_validator ^2.1.17
  - firebase_auth ^5.0.0
  - firebase_core ^3.0.0
  - firebase_dynamic_links ^6.0.0
  - firebase_ui_localizations ^1.12.0
  - firebase_ui_oauth ^1.5.3
  - firebase_ui_shared ^1.4.1
  - flutter any
  - flutter_localizations any
  - meta ^1.10.0
- firebase_ui_oauth_google 1.3.3
  - firebase_auth ^5.0.0
  - firebase_ui_oauth ^1.5.3
  - flutter any
  - google_sign_in ^6.2.1
- google_sign_in 6.2.1
  - flutter any
  - google_sign_in_android ^6.1.0
  - google_sign_in_ios ^5.7.0
  - google_sign_in_platform_interface ^2.4.0
  - google_sign_in_web ^0.12.0
- modal_bottom_sheet 3.0.0
  - flutter any
- built_collection 5.1.1
- equatable 2.0.5
  - collection ^1.15.0
  - meta ^1.3.0
- rrule 0.2.16
  - collection ^1.15.0
  - intl >=0.17.0 <0.20.0
  - meta ^1.3.0
  - time ^2.1.1
- rrule_generator 0.5.6
  - flutter any
  - intl >=0.17.0 <0.20.0
- intersperse 2.0.0
- quiver 3.2.1
  - matcher ^0.12.10
- timezone 0.9.4
  - path ^1.8.0
- flutter_local_notifications 17.2.2
  - clock ^1.1.0
  - flutter any
  - flutter_local_notifications_linux ^4.0.1
  - flutter_local_notifications_platform_interface ^7.2.0
  - timezone ^0.9.0
- stream_transform 2.1.0
- flutter_timezone 2.1.0
  - flutter any
  - flutter_web_plugins any
- flutter_localizations 0.0.0
  - flutter any
  - intl 0.19.0
  - characters 1.3.0
  - clock 1.1.1
  - collection 1.19.0
  - material_color_utilities 0.11.1
  - meta 1.15.0
  - path 1.9.0
  - vector_math 2.1.4
- meta 1.15.0
- flutter_fancy_tree_view 1.6.0
  - flutter any
- skeletonizer 1.4.2
  - collection ^1.18.0
  - flutter any
- package_info_plus 8.0.2
  - ffi ^2.0.1
  - flutter any
  - flutter_web_plugins any
  - http >=0.13.5 <2.0.0
  - meta ^1.8.0
  - path ^1.8.2
  - package_info_plus_platform_interface ^3.0.1
  - web >=0.5.0 <2.0.0
  - win32 >=4.0.0 <6.0.0
  - clock ^1.1.1
- easy_debounce 2.0.3
- sliver_tools 0.2.12
  - flutter any
- googleapis_auth 1.6.0
  - args ^2.3.1
  - crypto ^3.0.0
  - google_identity_services_web ^0.3.0
  - http ^1.0.0
  - http_parser ^4.0.0
- googleapis 13.2.0
  - _discoveryapis_commons ^1.0.0
  - http ^1.0.0
- extension_google_sign_in_as_googleapis_auth 2.0.12
  - flutter any
  - google_sign_in >=5.0.0 <7.0.0
  - googleapis_auth ^1.1.0
  - http >=0.13.0 <2.0.0
  - meta ^1.3.0
- uuid 4.4.2
  - crypto ^3.0.0
  - sprintf ^7.0.0
  - meta ^1.10.0
  - fixnum ^1.1.0

dev dependencies:
- flutter_test 0.0.0
  - flutter any
  - test_api 0.7.3
  - matcher 0.12.16+1
  - path 1.9.0
  - fake_async 1.3.1
  - clock 1.1.1
  - stack_trace 1.11.1
  - vector_math 2.1.4
  - leak_tracker_flutter_testing 3.0.5
  - async 2.11.0
  - boolean_selector 2.1.1
  - characters 1.3.0
  - collection 1.19.0
  - leak_tracker 10.0.5
  - leak_tracker_testing 3.0.1
  - material_color_utilities 0.11.1
  - meta 1.15.0
  - source_span 1.10.0
  - stream_channel 2.1.2
  - string_scanner 1.3.0
  - term_glyph 1.2.1
  - vm_service 14.2.4
- flutter_lints 2.0.3
  - lints ^2.0.0
- flutter_launcher_icons 0.13.1
  - args ^2.3.2
  - checked_yaml ^2.0.2
  - cli_util ^0.4.0
  - image ^4.0.15
  - json_annotation ^4.8.0
  - path ^1.8.2
  - yaml ^3.1.1
- test 1.25.8
  - analyzer >=5.12.0 <7.0.0
  - async ^2.5.0
  - boolean_selector ^2.1.0
  - collection ^1.15.0
  - coverage ^1.0.1
  - http_multi_server ^3.0.0
  - io ^1.0.0
  - js >=0.6.4 <0.8.0
  - matcher >=0.12.16 <0.12.17
  - node_preamble ^2.0.0
  - package_config ^2.0.0
  - path ^1.8.0
  - pool ^1.5.0
  - shelf ^1.0.0
  - shelf_packages_handler ^3.0.0
  - shelf_static ^1.0.0
  - shelf_web_socket >=1.0.0 <3.0.0
  - source_span ^1.8.0
  - stack_trace ^1.10.0
  - stream_channel ^2.1.0
  - test_api 0.7.3
  - test_core 0.6.5
  - typed_data ^1.3.0
  - web_socket_channel >=2.0.0 <4.0.0
  - webkit_inspection_protocol ^1.0.0
  - yaml ^3.0.0
- custom_lint 0.6.5
  - analyzer ^6.6.0
  - analyzer_plugin ^0.11.0
  - args ^2.3.1
  - async ^2.9.0
  - ci ^0.1.0
  - cli_util ^0.4.0
  - collection ^1.16.0
  - custom_lint_core 0.6.5
  - freezed_annotation ^2.2.0
  - json_annotation ^4.7.0
  - meta ^1.7.0
  - package_config ^2.0.2
  - path ^1.8.0
  - pub_semver ^2.1.1
  - pubspec_parse ^1.2.0
  - rxdart ^0.28.0
  - uuid >=3.0.6 <5.0.0
  - yaml ^3.1.1
- riverpod_lint 2.3.12
  - analyzer ^6.5.0
  - analyzer_plugin ^0.11.2
  - collection ^1.16.0
  - custom_lint_builder ^0.6.0
  - meta ^1.7.0
  - path ^1.8.1
  - riverpod ^2.5.1
  - riverpod_analyzer_utils ^0.5.3
  - source_span ^1.8.0
  - yaml ^3.1.1

dependency overrides:
- intl 0.19.0
  - clock ^1.1.0
  - meta ^1.0.2
  - path ^1.8.0

transitive dependencies:
- _discoveryapis_commons 1.0.7
  - http ^1.0.0
  - http_parser ^4.0.0
  - meta ^1.3.0
- _fe_analyzer_shared 73.0.0
  - meta ^1.9.0
- _flutterfire_internals 1.3.40
  - collection ^1.0.0
  - firebase_core ^3.3.0
  - firebase_core_platform_interface ^5.2.0
  - flutter any
  - meta ^1.8.0
- _macros 0.3.2
- analyzer 6.8.0
  - _fe_analyzer_shared ^73.0.0
  - collection ^1.19.0
  - convert ^3.0.0
  - crypto ^3.0.0
  - glob ^2.0.0
  - macros >=0.1.2-main.3 <0.1.3
  - meta ^1.15.0
  - package_config ^2.0.0
  - path ^1.9.0
  - pub_semver ^2.1.4
  - source_span ^1.8.0
  - watcher ^1.1.0
  - yaml ^3.0.0
- analyzer_plugin 0.11.3
  - analyzer ^6.0.0
  - collection ^1.15.0
  - dart_style ^2.2.1
  - pub_semver ^2.1.0
  - yaml ^3.1.0
- archive 3.6.1
  - crypto ^3.0.3
  - path ^1.8.0
- args 2.5.0
- async 2.11.0
  - collection ^1.15.0
  - meta ^1.1.7
- boolean_selector 2.1.1
  - source_span ^1.8.0
  - string_scanner ^1.1.0
- characters 1.3.0
- checked_yaml 2.0.3
  - json_annotation ^4.3.0
  - source_span ^1.8.0
  - yaml ^3.0.0
- ci 0.1.0
- cli_util 0.4.1
  - meta ^1.3.0
  - path ^1.8.0
- clock 1.1.1
- cloud_firestore_platform_interface 6.3.1
  - _flutterfire_internals ^1.3.40
  - collection ^1.15.0
  - firebase_core ^3.3.0
  - flutter any
  - meta ^1.8.0
  - plugin_platform_interface ^2.1.3
- cloud_firestore_web 4.1.1
  - _flutterfire_internals ^1.3.40
  - cloud_firestore_platform_interface ^6.3.1
  - collection ^1.0.0
  - firebase_core ^3.3.0
  - firebase_core_web ^2.17.4
  - flutter any
  - flutter_web_plugins any
- convert 3.1.1
  - typed_data ^1.3.0
- coverage 1.9.0
  - args ^2.0.0
  - glob ^2.1.2
  - logging ^1.0.0
  - package_config ^2.0.0
  - path ^1.8.0
  - source_maps ^0.10.10
  - stack_trace ^1.10.0
  - vm_service >=12.0.0 <15.0.0
- crypto 3.0.5
  - typed_data ^1.3.0
- custom_lint_builder 0.6.5
  - analyzer ^6.6.0
  - analyzer_plugin ^0.11.0
  - collection ^1.16.0
  - custom_lint 0.6.5
  - custom_lint_core 0.6.5
  - glob ^2.1.1
  - hotreloader >=3.0.5 <5.0.0
  - meta ^1.7.0
  - package_config ^2.1.0
  - path ^1.8.0
  - pubspec_parse ^1.2.0
  - rxdart ^0.28.0
- custom_lint_core 0.6.5
  - analyzer ^6.6.0
  - analyzer_plugin ^0.11.0
  - collection ^1.16.0
  - glob ^2.1.2
  - matcher ^0.12.0
  - meta ^1.7.0
  - package_config ^2.1.0
  - path ^1.8.0
  - pubspec_parse ^1.2.2
  - source_span ^1.8.0
  - yaml ^3.1.1
- dart_style 2.3.6
  - analyzer ^6.2.0
  - args >=1.0.0 <3.0.0
  - collection ^1.17.0
  - path ^1.0.0
  - pub_semver >=1.4.4 <3.0.0
  - source_span ^1.4.0
- dbus 0.7.10
  - args ^2.0.0
  - ffi ^2.0.0
  - meta ^1.3.0
  - xml ^6.1.0
- desktop_webview_auth 0.0.15
  - crypto ^3.0.3
  - flutter any
  - http ^1.0.0
  - flutter_web_plugins any
  - plugin_platform_interface ^2.1.4
- email_validator 2.1.17
- fake_async 1.3.1
  - clock ^1.1.0
  - collection ^1.15.0
- ffi 2.1.3
- file 7.0.0
  - meta ^1.9.1
  - path ^1.8.3
- firebase_auth_platform_interface 7.4.3
  - _flutterfire_internals ^1.3.40
  - collection ^1.16.0
  - firebase_core ^3.3.0
  - flutter any
  - meta ^1.8.0
  - plugin_platform_interface ^2.1.3
- firebase_auth_web 5.12.5
  - firebase_auth_platform_interface ^7.4.3
  - firebase_core ^3.3.0
  - firebase_core_web ^2.17.4
  - flutter any
  - flutter_web_plugins any
  - http_parser ^4.0.0
  - meta ^1.8.0
  - web ^0.5.1
- firebase_core_platform_interface 5.2.0
  - collection ^1.0.0
  - flutter any
  - flutter_test any
  - meta ^1.8.0
  - plugin_platform_interface ^2.1.3
- firebase_core_web 2.17.4
  - firebase_core_platform_interface ^5.2.0
  - flutter any
  - flutter_web_plugins any
  - meta ^1.8.0
  - web ^0.5.1
- firebase_dynamic_links 6.0.4
  - firebase_core ^3.3.0
  - firebase_core_platform_interface ^5.2.0
  - firebase_dynamic_links_platform_interface ^0.2.6+40
  - flutter any
  - meta ^1.8.0
  - plugin_platform_interface ^2.1.3
- firebase_dynamic_links_platform_interface 0.2.6+40
  - _flutterfire_internals ^1.3.40
  - firebase_core ^3.3.0
  - flutter any
  - meta ^1.8.0
  - plugin_platform_interface ^2.1.3
- firebase_ui_localizations 1.12.0
  - flutter any
  - flutter_localizations any
  - path ^1.8.3
- firebase_ui_oauth 1.5.3
  - desktop_webview_auth ^0.0.14
  - firebase_auth ^5.0.0
  - firebase_ui_auth ^1.15.0
  - firebase_ui_shared ^1.4.1
  - flutter_svg ^2.0.9
  - flutter any
- firebase_ui_shared 1.4.1
  - flutter any
- fixnum 1.1.0
- flutter_local_notifications_linux 4.0.1
  - dbus ^0.7.8
  - ffi ^2.0.1
  - flutter any
  - flutter_local_notifications_platform_interface ^7.0.0
  - path ^1.8.0
  - xdg_directories >=0.2.0+1 <2.0.0
- flutter_local_notifications_platform_interface 7.2.0
  - flutter any
  - plugin_platform_interface ^2.0.0
- flutter_svg 2.0.10+1
  - flutter any
  - http ^1.0.0
  - vector_graphics ^1.1.11
  - vector_graphics_codec ^1.1.11
  - vector_graphics_compiler ^1.1.11
- flutter_web_plugins 0.0.0
  - flutter any
  - characters 1.3.0
  - collection 1.19.0
  - material_color_utilities 0.11.1
  - meta 1.15.0
  - vector_math 2.1.4
- freezed_annotation 2.4.4
  - collection ^1.15.0
  - json_annotation ^4.8.0
  - meta ^1.7.0
- frontend_server_client 4.0.0
  - async ^2.5.0
  - path ^1.8.0
- glob 2.1.2
  - async ^2.5.0
  - collection ^1.15.0
  - file >=6.1.3 <8.0.0
  - path ^1.8.0
  - string_scanner ^1.1.0
- google_identity_services_web 0.3.1+4
  - meta ^1.3.0
  - web >=0.5.1 <2.0.0
- google_sign_in_android 6.1.28
  - flutter any
  - google_sign_in_platform_interface ^2.2.0
- google_sign_in_ios 5.7.6
  - flutter any
  - google_sign_in_platform_interface ^2.2.0
- google_sign_in_platform_interface 2.4.5
  - flutter any
  - plugin_platform_interface ^2.1.7
- google_sign_in_web 0.12.4+2
  - flutter any
  - flutter_web_plugins any
  - google_identity_services_web ^0.3.1
  - google_sign_in_platform_interface ^2.4.0
  - http >=0.13.0 <2.0.0
  - web >=0.5.1 <2.0.0
- hotreloader 4.2.0
  - collection ^1.15.0
  - logging ^1.0.0
  - path ^1.8.0
  - stream_transform ^2.0.0
  - vm_service >=6.0.1 <15.0.0
  - watcher ^1.1.0
- http 1.2.2
  - async ^2.5.0
  - http_parser ^4.0.0
  - meta ^1.3.0
  - web >=0.5.0 <2.0.0
- http_multi_server 3.2.1
  - async ^2.5.0
- http_parser 4.1.0
  - collection ^1.19.0
  - source_span ^1.8.0
  - string_scanner ^1.1.0
  - typed_data ^1.3.0
- image 4.2.0
  - archive ^3.4.0
  - meta ^1.3.0
  - xml ^6.0.1
- io 1.0.4
  - meta ^1.3.0
  - path ^1.8.0
  - string_scanner ^1.1.0
- js 0.6.7
  - meta ^1.7.0
- json_annotation 4.9.0
  - meta ^1.4.0
- leak_tracker 10.0.5
  - clock ^1.1.1
  - collection ^1.15.0
  - meta ^1.8.0
  - path ^1.8.3
  - vm_service >=11.10.0 <15.0.0
- leak_tracker_flutter_testing 3.0.5
  - flutter any
  - leak_tracker >=10.0.5 <11.0.0
  - leak_tracker_testing >=3.0.1 <4.0.0
  - matcher ^0.12.16
  - meta ^1.8.0
- leak_tracker_testing 3.0.1
  - leak_tracker >=9.0.0 <11.0.0
  - matcher ^0.12.16
  - meta ^1.11.0
- lints 2.1.1
- logging 1.2.0
- macros 0.1.2-main.4
  - _macros 0.3.2
- matcher 0.12.16+1
  - async ^2.10.0
  - meta ^1.8.0
  - stack_trace ^1.10.0
  - term_glyph ^1.2.0
  - test_api >=0.5.0 <0.8.0
- material_color_utilities 0.11.1
  - collection ^1.15.0
- mime 1.0.5
- node_preamble 2.0.2
- package_config 2.1.0
  - path ^1.8.0
- package_info_plus_platform_interface 3.0.1
  - flutter any
  - meta ^1.8.0
  - plugin_platform_interface ^2.1.4
- path 1.9.0
- path_parsing 1.0.1
  - vector_math ^2.1.0
  - meta ^1.3.0
- petitparser 6.0.2
  - meta ^1.9.0
- plugin_platform_interface 2.1.8
  - meta ^1.3.0
- pool 1.5.1
  - async ^2.5.0
  - stack_trace ^1.10.0
- pub_semver 2.1.4
  - collection ^1.15.0
  - meta ^1.3.0
- pubspec_parse 1.3.0
  - checked_yaml ^2.0.1
  - collection ^1.15.0
  - json_annotation ^4.8.0
  - pub_semver ^2.0.0
  - yaml ^3.0.0
- riverpod 2.5.1
  - collection ^1.18.0
  - meta ^1.9.0
  - stack_trace ^1.10.0
  - state_notifier >=0.7.2 <2.0.0
- riverpod_analyzer_utils 0.5.3
  - analyzer ^6.5.0
  - collection ^1.16.0
  - crypto ^3.0.2
  - custom_lint_core ^0.6.0
  - freezed_annotation ^2.2.0
  - meta ^1.7.0
  - path ^1.8.0
  - source_span ^1.8.0
- rxdart 0.28.0
- shelf 1.4.2
  - async ^2.5.0
  - collection ^1.15.0
  - http_parser ^4.1.0
  - path ^1.8.0
  - stack_trace ^1.10.0
  - stream_channel ^2.1.0
- shelf_packages_handler 3.0.2
  - path ^1.8.0
  - shelf ^1.0.0
  - shelf_static ^1.0.0
- shelf_static 1.1.2
  - convert ^3.0.0
  - http_parser ^4.0.0
  - mime ^1.0.0
  - path ^1.8.0
  - shelf ^1.1.2
- shelf_web_socket 2.0.0
  - shelf ^1.1.0
  - stream_channel ^2.1.0
  - web_socket_channel >=2.0.0 <4.0.0
- sky_engine 0.0.99
- source_map_stack_trace 2.1.1
  - path ^1.8.0
  - source_maps ^0.10.10
  - stack_trace ^1.10.0
- source_maps 0.10.12
  - source_span ^1.8.0
- source_span 1.10.0
  - collection ^1.15.0
  - path ^1.8.0
  - term_glyph ^1.2.0
- sprintf 7.0.0
- stack_trace 1.11.1
  - path ^1.8.0
- state_notifier 1.0.0
  - meta ^1.1.8
- stream_channel 2.1.2
  - async ^2.5.0
- string_scanner 1.3.0
  - source_span ^1.8.0
- term_glyph 1.2.1
- test_api 0.7.3
  - async ^2.5.0
  - boolean_selector ^2.1.0
  - collection ^1.15.0
  - meta ^1.14.0
  - source_span ^1.8.0
  - stack_trace ^1.10.0
  - stream_channel ^2.1.0
  - string_scanner ^1.1.0
  - term_glyph ^1.2.0
- test_core 0.6.5
  - analyzer >=3.3.0 <7.0.0
  - args ^2.0.0
  - async ^2.5.0
  - boolean_selector ^2.1.0
  - collection ^1.15.0
  - coverage ^1.0.0
  - frontend_server_client >=3.2.0 <5.0.0
  - glob ^2.0.0
  - io ^1.0.0
  - meta ^1.3.0
  - package_config ^2.0.0
  - path ^1.8.0
  - pool ^1.5.0
  - source_map_stack_trace ^2.1.0
  - source_maps ^0.10.10
  - source_span ^1.8.0
  - stack_trace ^1.10.0
  - stream_channel ^2.1.0
  - test_api 0.7.3
  - vm_service >=6.0.0 <15.0.0
  - yaml ^3.0.0
- time 2.1.4
  - clock ^1.1.1
- typed_data 1.3.2
  - collection ^1.15.0
- url_launcher_android 6.3.9
  - flutter any
  - url_launcher_platform_interface ^2.3.1
- url_launcher_ios 6.3.1
  - flutter any
  - url_launcher_platform_interface ^2.2.0
- url_launcher_linux 3.2.0
  - flutter any
  - url_launcher_platform_interface ^2.2.0
- url_launcher_macos 3.2.0
  - flutter any
  - url_launcher_platform_interface ^2.2.0
- url_launcher_platform_interface 2.3.2
  - flutter any
  - plugin_platform_interface ^2.1.7
- url_launcher_web 2.3.3
  - flutter any
  - flutter_web_plugins any
  - url_launcher_platform_interface ^2.2.0
  - web >=0.5.1 <2.0.0
- url_launcher_windows 3.1.2
  - flutter any
  - url_launcher_platform_interface ^2.2.0
- vector_graphics 1.1.11+1
  - flutter any
  - http ^1.0.0
  - vector_graphics_codec 1.1.11+1
- vector_graphics_codec 1.1.11+1
- vector_graphics_compiler 1.1.11+1
  - args ^2.3.0
  - meta ^1.7.0
  - path_parsing ^1.0.1
  - xml ^6.3.0
  - vector_graphics_codec 1.1.11+1
  - path ^1.8.0
- vector_math 2.1.4
- vm_service 14.2.4
- watcher 1.1.0
  - async ^2.5.0
  - path ^1.8.0
- web 0.5.1
- web_socket 0.1.6
  - web >=0.5.0 <2.0.0
- web_socket_channel 3.0.1
  - async ^2.5.0
  - crypto ^3.0.0
  - stream_channel ^2.1.0
  - web >=0.5.0 <2.0.0
  - web_socket ^0.1.5
- webkit_inspection_protocol 1.2.1
  - logging ^1.0.0
- win32 5.5.4
  - ffi ^2.1.2
- xdg_directories 1.0.4
  - meta ^1.3.0
  - path ^1.8.0
- xml 6.5.0
  - collection ^1.18.0
  - meta ^1.9.0
  - petitparser ^6.0.0
- yaml 3.1.2
  - collection ^1.15.0
  - source_span ^1.8.0
  - string_scanner ^1.1.0

Steps to reproduce

Configure a GoogleProvider:

final googleAuth = GoogleProvider(clientId: ...);

void main() async {  
  FirebaseUIAuth.configureProviders([
    googleAuth,
  ]);

  runApp(const SignInScreen());
}

Watch the Google user somewhere in the code:

googleAuth.provider.onCurrentUserChanged.map(print)

Run with Flutter on web.

Sign in with a Google account.

Expected Behavior

The value of googleAuth.provider.current_user is updated with the signed in user. (This works on mobile.)

Actual Behavior

The googleAuth.provider.current_user is not updated and remains null.

Additional Information

I want to have access to an instance of GoogleSignIn with the current_user updated to the current Google user signed in through the UI auth package. I need this to connect to the Google Calendar API, because I don't want to make the user sign in with Google again if they have already signed in with Google as an authentication method for the whole app.

plammens commented 2 months ago

Note: this seems to be because while mobileSignIn uses provider.signIn() directly,

https://github.com/firebase/FirebaseUI-Flutter/blob/c696842e110b6645bebf006f95e2da50d5d16ac3/packages/firebase_ui_oauth_google/lib/src/provider.dart#L74-L76

instead desktopSignIn delegates to the super implementation, which is generic, from firebase_ui_oauth, and doesn't seem to interact with GoogleSignIn at any time:

https://github.com/firebase/FirebaseUI-Flutter/blob/c696842e110b6645bebf006f95e2da50d5d16ac3/packages/firebase_ui_oauth_google/lib/src/provider.dart#L91-L99

https://github.com/firebase/FirebaseUI-Flutter/blob/c696842e110b6645bebf006f95e2da50d5d16ac3/packages/firebase_ui_oauth/lib/src/platform_oauth_sign_in.dart#L38-L53