Initialize the repo for the OpenBeam application#1
Merged
Conversation
- Switch themes from Material2 (MaterialComponents) to Material3 to fix crash: Widget.Material3.Button.TextButton requires Theme.Material3 parent; setContentView was throwing IllegalArgumentException before any UI appeared. - Defer NFC foreground dispatch to onResume: NfcAdapter. enableForegroundDispatch() throws IllegalStateException when called before the activity is resumed. shareViaNfc() now stores the pending NdefMessage and onResume() enables dispatch. Already-resumed calls (e.g. post-QR scan) start NFC immediately via lifecycle.currentState.isAtLeast(RESUMED) check. - Add runtime permission handling for Wi-Fi Direct: discoverPeers() requires ACCESS_FINE_LOCATION (API <33) or NEARBY_WIFI_DEVICES (API >=33). Show rationale in dialog, request via ActivityCompat.requestPermissions, resume transfer on grant. - Add diagnostics: Log.d/e throughout (filter: adb logcat -s OpenBeam). On any error state show 'Copy debug info' button that copies device/version/NFC state and last error to clipboard. - Add strings: status_permission_needed/denied, hint_permission_wifi/denied, btn_copy_debug, debug_info_copied across EN/ES/CA locales.
Copilot
AI
changed the title
[WIP] Initialize the repo for the OpenBeam application
fix: show share dialog UI and handle runtime permissions
Jul 5, 2026
Copilot
AI
changed the title
fix: show share dialog UI and handle runtime permissions
fix: remove double title, suppress NFC tap sound, block HCE during sharing
Jul 5, 2026
Copilot
AI
changed the title
fix: remove double title, suppress NFC tap sound, block HCE during sharing
fix: remove double title and suppress rogue NFC reads during sharing
Jul 5, 2026
|
✅ Debug APK artifact is ready for commit cba5f1e . |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Three UX/NFC bugs in the sharing flow:
Theme.Material3.DayNight.Dialogrenders its own window title slot above the dialog box, duplicating thetv_app_nameinside it.enableForegroundDispatchlets the OS play its default tap sound whenever any NFC tag (e.g. a payment card) is detected, even if we do nothing with it.Changes
ShareActivity: callsupportRequestWindowFeature(Window.FEATURE_NO_TITLE)beforesuper.onCreate()to remove the window title slot before the Dialog window is created. (supportActionBar?.hide()doesn't reach this; it only affects the AppCompat action bar layer.)NfcShareHelper: replaceenableForegroundDispatch/disableForegroundDispatchwithenableReaderMode/disableReaderMode:FLAG_READER_NO_PLATFORM_SOUNDS— suppresses the OS tap sound for all detected tags.Ndef.get(tag)andNdefFormatable.get(tag)both returnnullfor them.pendingMessage/onResultmarked@Volatile.ShareActivity:SoundManager.playBeammoved fromonNewIntent(now a no-op) to theNfcShareState.Writingbranch — plays only when writing actually begins on a capable tag.Original prompt