Repository navigation
K2GO-376 feat(contentexchange): wireless Share sender + invite QR - #695
Merged
Merged
Conversation
Open a scoped share session on the local cx-core over the selection, show the invite QR, and hold the hotspot and gate open via a foreground service that closes the gate and stops a self-started hotspot on teardown. Adds the cx-core share calls (create/complete/delete, X-Share-Token) and the shared QR schema + validator. The receiver pulls; the sender copies no bytes.
Use SnackbarDuration.millisForText instead of fixed LENGTH_LONG; null the held selection when the hotspot permission is declined; call startForeground in the duplicate-start branch so a startForegroundService start is honored.
Move the 19 k2go_cx_share_* strings from strings_untranslated.xml into strings.xml and translate them across all 33 locales. Tracker now empty. Machine translations, flagged for human review.
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.
What
Add the sender half of granular wireless Share (K2GO-376): over the content
manager selection, open a scoped share session on the local cx-core /v1/share
gate and show a two-section invite QR (join the hotspot, then scan to receive).
A foreground service holds the hotspot and the gate open with CPU and Wi-Fi
locks, and closes both on teardown. The device copies no bytes: cx-core streams
to the receiver that pulls over the hotspot.
Why
Share is the network twin of the merged disk Export: same bundle, manifest and
import, only the carrier changes. This slice is the sender plus the frozen QR
invite contract that the receiver fork reuses.
Scope
ShareHandshake, ShareInviteValidator, ShareTransport. CxCoreDataSource gains
POST /v1/share create and the X-Share-Token header path.
/ HotspotPermissions), QrSection, and the Export/Delete foreground-service and
progress-fragment patterns.
a K2Go device cannot consume the invite until the receiver fork lands.
UI changes
New user-facing strings (English; machine-translated to 33 locales, flagged for
human review). All new, no before/after:
hotspot... | Finding the hotspot address...
to receive the content.
The hotspot permission is needed to share. | Could not start sharing. | Keep
this screen open until the other phone finishes.
sharing
Light and dark: PENDING on-device verification (see below).
Note: pt rendered as European Portuguese; swap to pt-BR if targeted.
Verification
assembleStandardDebug + lintStandardDebug green, 0 MissingTranslation. +13 JVM
unit tests (ShareInviteValidator, ShareHandshake). Two-pass code review: 5
findings, 3 fixed, 2 deferred as follow-ups.