Skip to content

fix: android attachment picker timing coordination#3539

Merged
isekovanic merged 2 commits intodevelopfrom
fix/android-attachment-picker-timing
Apr 8, 2026
Merged

fix: android attachment picker timing coordination#3539
isekovanic merged 2 commits intodevelopfrom
fix/android-attachment-picker-timing

Conversation

@isekovanic
Copy link
Copy Markdown
Contributor

🎯 Goal

This PR stabilizes attachment picker and keyboard behavior on both Android and iOS by simplifying the picker open/close flow and removing timing based workarounds.

The main changes are:

  • removed the delayed keyboard close/open coordination path
  • removed forceClose() and the extra delayed close() fallback
  • kept picker state changes aligned with bottom sheet state
  • added a small handoff lock to prevent rapid picker/keyboard toggles from desynchronizing the composer and picker

Net result: picker/keyboard transitions are more reliable, the Android flicker/stuck states are resolved, and rapid toggling no longer leaves the composer and attachment picker out of sync.

This is now finally stable and correct on Android.

🛠 Implementation details

🎨 UI Changes

iOS
Before After
Android
Before After

🧪 Testing

☑️ Checklist

  • I have signed the Stream CLA (required)
  • PR targets the develop branch
  • Documentation is updated
  • New code is tested in main example apps, including all possible scenarios
    • SampleApp iOS and Android
    • Expo iOS and Android

@isekovanic isekovanic requested a review from oliverlaz April 8, 2026 06:04
@Stream-SDK-Bot
Copy link
Copy Markdown
Contributor

SDK Size

title develop branch diff status
js_bundle_size 351 KB 351 KB -242 B 🚀

@isekovanic isekovanic merged commit db99dc7 into develop Apr 8, 2026
4 of 5 checks passed
@isekovanic isekovanic deleted the fix/android-attachment-picker-timing branch April 8, 2026 06:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants