Repository navigation
fix(home/toast): revert animation changes and remember toast to prevent recomp - #45
Merged
Merged
Conversation
…nt recomp additionally set toast to null _after_ animation runs Signed-off-by: Brandon McAnsh <git@bmcreations.dev>
bmc08gt
added a commit
that referenced
this pull request
Oct 9, 2026
…arries a secret https://flipcash.com/ showed no preview because every non-card link on a Flipcash host was kept as plain text. Links on flipcash.com and www.flipcash.com now fall through to a web card. A first path segment of login, verify, c or cash never does: the router matches those paths on any host, so flipcash.com/login/e=<seed> would otherwise be fetched with the seed in its path. Neither does a link with a fragment. The app hosts are unchanged. link_detection.json is synced from orchestrator #45 (b9627fe).
bmc08gt
added a commit
that referenced
this pull request
Oct 9, 2026
…arries a secret https://flipcash.com/ showed no preview because every non-card link on a Flipcash host was kept as plain text. Links on flipcash.com and www.flipcash.com now fall through to a web card. A first path segment of login, verify, c or cash never does: the router matches those paths on any host, so flipcash.com/login/e=<seed> would otherwise be fetched with the seed in its path. Neither does a link with a fragment. The app hosts are unchanged. link_detection.json is synced from orchestrator #45 (b9627fe).
bmc08gt
added a commit
that referenced
this pull request
Oct 9, 2026
* test(messenger): sync link fixtures and retire aheadOfFixture link_detection.json and link_metadata.json come from orchestrator c7ba7f4. The classifier fails on the five web vectors until LinkCard.Web lands. The detection vector test now lists every failing vector, not the first. * fix(chat): drop a closing format marker from a wrapped link *example.com/foo* underlined the closing * as part of the link. A trailing *, _ or ~ is now dropped once when the same marker directly precedes the link. Patterns.WEB_URL also backed off before a * or ~ that was followed by a space, which NSDataDetector keeps, so a path is extended over them first. All link_detection.json vectors pass. * chore(libs): delete unused opengraph module Nothing depends on it, and web link previews use their own fetcher held to the Phase 2 fetch rules instead of its jsoup one. * feat(messenger): LinkCard.Web and web host rules * feat(messenger): classify outside https links as web cards * feat(messenger): web page head scanner held to link_metadata.json * fix(messenger): give a percent-escaped host no web card HttpUrl decodes https://ex%61mple.com/ to example.com and would fetch it, while iOS keeps the escape. Both apps now refuse such a host. * feat(messenger): web link lookup with public-only dns and fetch caps * fix(messenger): keep link preview fetches off the system proxy * feat(messenger): give a non-443 port no web card * feat(messenger): refuse dotted, numeric and NAT64 private hosts * feat(messenger): refuse special-use address ranges * fix(messenger): check a redirect's escaped host after resolving it * fix(messenger): reject conflicting or encoded repeated headers * feat(messenger): bound a link preview lookup by one deadline * feat(messenger): resolve and persist web link cards * feat(chat): prefetch web links only for the open chat's members * fix(messenger): expire remembered web cards by their ttl * feat(messenger): fetch link preview images under the page rules * feat(chat): render web link cards under message text * feat(chat): show no web card while web link previews are off * fix(messenger): drop a page image the fetch rules refuse * feat(chat): draw the web card as a panel with a filled chip * feat(chat): draw a link-only message's web card without a bubble A message whose text is only its web link, once the card resolves, draws as the card alone in the bubble's corners for its place in the run. The link text is hidden and the panel fill is the surface. Loading, empty, failed and tap-to-load states keep the text bubble, and a held answer that expires and comes back empty returns to it. "Only the link" shares splitAroundLinkCard's rule through LinkCard.isAloneIn. The Edited marker follows the bare Flipcash card placement. * fix(chat): let a cash card's claim pill act on the first tap The whole cash card was one combinedClickable with a double-tap handler, so the Claim pill waited out the double-tap window like the card body. The pill is now its own click target that does what the card tap does for a claimable voucher; the rest of the card keeps the double-tap reaction. * test(messenger): take the D14 address ranges from the shared fixture Copies link_metadata.json from orchestrator test/web-address-ranges (7cb34f0), which adds 13 address rows for the D14 ranges. The local range tests now keep only the block edges and Java's mapped-address forms that the fixture rows leave out. * fix(messenger): end a web card's loading when its lookup fails * feat(chat): hold a link-only message's place with a card placeholder while it loads * feat(chat): outline a bare web card so its edge shows over a dark image nhl.com's preview image is opaque and almost the chat's own colour, so a bare card's top half read as part of the chat. A bare web card and its placeholder now draw the bare group card's outline (1dp, white at 10%) over the image. A card inside a bubble keeps the bubble as its edge and draws none. * test(chat): guard that a cached preview image draws on the card's first frame * feat(messenger): keep link preview images on disk with their rows * feat(messenger): load saved link previews at app start and before a chat's first draw * chore(messenger): sync link_metadata fixture and raise the page body cap to 1 MiB * feat(messenger): stop reading a page once its head has ended * feat(messenger): fall back to the home page when a link has no card of its own * test(messenger): sync link_metadata fixture from orchestrator #44 and drop the redirects-shared-4 override The fixture now caches only the original key when the shared redirect budget runs out during the home-page fallback, which is what the lookup already does. * feat(messenger): give flipcash.com pages a web card unless the link carries a secret https://flipcash.com/ showed no preview because every non-card link on a Flipcash host was kept as plain text. Links on flipcash.com and www.flipcash.com now fall through to a web card. A first path segment of login, verify, c or cash never does: the router matches those paths on any host, so flipcash.com/login/e=<seed> would otherwise be fetched with the seed in its path. Neither does a link with a fragment. The app hosts are unchanged. link_detection.json is synced from orchestrator #45 (b9627fe). * chore(chat-ui): drop the pending-review notes on the preview chip copy * test(chat-ui): pass the invite's resolved state to OpenGroup
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.
additionally set toast to null after animation runs