πποΈ GitHub device flow login #17
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request includes several changes to improve the GitHub OAuth login process and enhance error logging. The most important changes include the introduction of new methods to handle the login process, better error handling, and improvements to the lifecycle management of the login button widget.
Enhancements to GitHub OAuth login process:
lib/utility/github_oauth_handler.dart: IntroducedstartLoginProcess,pollForToken,resetHandler, and_retrieveDataFromResponsemethods to handle the login process more effectively and added detailed logging for errors. [1] [2] [3]Lifecycle management improvements:
lib/widgets/login.dart: AddedWidgetsBindingObservertoLoginButtonto manage the app lifecycle state changes and ensure the login process continues when the app is resumed. [1] [2]Error logging enhancements:
lib/utility/github_oauth_handler.dart: Addeddart:developerfor logging errors and important events during the OAuth process. [1] [2]lib/widgets/login.dart: Addeddart:developerfor logging app lifecycle state changes.Minor improvements:
lib/views/home_view.dart: Added a check formountedbefore navigating to ensure the widget is still in the widget tree.test/widget_test.dart: Removed unused imports to clean up the test file.