Conversation
…d Podfile.lock with dependencies
- Updated `fake_async` from version 1.3.2 to 1.3.3 - Updated `leak_tracker` from version 10.0.8 to 11.0.1 - Updated `leak_tracker_flutter_testing` from version 3.0.9 to 3.0.10 - Updated `leak_tracker_testing` from version 3.0.1 to 3.0.2 - Updated `test_api` from version 0.7.4 to 0.7.6 - Updated `vector_math` from version 2.1.4 to 2.2.0 - Updated Dart SDK constraint from ">=3.7.2 <4.0.0" to ">=3.8.0-0 <4.0.0" - Added new logo asset located at `assets/logo.png`
…cluding API integration and shared preferences for token storage
…ons; refactor MainApp to use NotificationProvider
…er; adjust NotificationProvider alignment in the notification service
…r user feedback instead of SnackBar
…vent state updates after disposal, improve toast positioning, and add scaling animation for better user experience.
…ns and improve base URL handling with debug logging.
…les, AndroidManifest, and resource files for app setup.
- Added SharedPreferences to manage user authentication state. - Modified main function to check for an existing auth token and navigate to the HomeScreen if present. - Updated MainApp to conditionally render HomeScreen or LoginScreen based on authentication status. - Enhanced API service to normalize base URL and path when constructing request URIs, improving robustness. - Added debug logging for API requests to include base URL and path information.
…r chat management
…t; add CryptoService for end-to-end encryption handling; implement DeviceService for device ID storage and retrieval.
…e handling; refactor HKDF usage in CryptoService for better clarity and performance
…hatId to WebSocketMessage interface
…sture handling; refactor ChatScreen to utilize TapGestureHandler for touch interactions
…message loading logic for improved user experience
…user interaction in ChatScreen
…Screen for safe area insets and improved scrolling behavior
…StopTyping method
…e to include username
…ging in WebSocketService
…n' commands; add .gitignore for IDE files
- Created modules.xml to define project modules - Added vcs.xml to configure version control system as Git
Added the GNU General Public License version 3 to the project.
|
This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation. |
|
Summary
Testing
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| this.ws.onmessage = (event) => { | ||
| try { | ||
| const message: WebSocketMessage = JSON.parse(event.data); | ||
| this.handleMessage(message); | ||
|
|
||
| // Notify message listeners | ||
| this.messageListeners.forEach(listener => listener(message)); |
There was a problem hiding this comment.
Avoid double-dispatching WebSocket messages
ws.onmessage calls handleMessage(message) and then immediately iterates messageListeners again. handleMessage already forwards all non typing events to the same listeners, so most messages are emitted twice and handlers like chat UI updates will run twice per server event. Drop one of these dispatches so every message is delivered exactly once.
Useful? React with 👍 / 👎.
No description provided.