Skip to content

[Swift/Kotlin] Change default link open behaviour to in-app browser by default - #232

Open
markmur wants to merge 2 commits into
mainfrom
change-link-open-behaviour
Open

[Swift/Kotlin] Change default link open behaviour to in-app browser by default#232
markmur wants to merge 2 commits into
mainfrom
change-link-open-behaviour

Conversation

@markmur

@markmur markmur commented May 28, 2026

Copy link
Copy Markdown
Contributor

Delegated web links (window.open and similar) previously bounced buyers out to the platform's external browser, which breaks flow for things like terms/policy pages opened mid-checkout. This flips the default so HTTPS links open in an in-app surface — SFSafariViewController on iOS, Custom Tabs on Android — while mailto:, tel:, and custom schemes continue routing through UIApplication.open / Intent.ACTION_VIEW. Merchants who want the old behavior can still register a CheckoutProtocol.windowOpen handler.

Try the sample apps and tap a delegated link in checkout (e.g. a policy link); it should stay in-app. The settings screen lets you toggle the alternative "External app" handler to verify the override path.

@markmur markmur self-assigned this May 28, 2026
@markmur markmur changed the title Change link open behaviour to open in-app by default [Protocol] Change default link open behaviour to in-app browser by default May 28, 2026
@github-actions

github-actions Bot commented May 28, 2026

Copy link
Copy Markdown

React Native — Coverage Report

Lines Statements Branches Functions
Coverage: 92%
91.85% (327/356) 87.98% (183/208) 100% (86/86)

@markmur markmur changed the title [Protocol] Change default link open behaviour to in-app browser by default [Prototype] Change default link open behaviour to in-app browser by default May 28, 2026
@markmur
markmur force-pushed the change-link-open-behaviour branch from 59568ed to 9931f99 Compare May 28, 2026 14:58
@markmur markmur closed this Jun 17, 2026
@markmur markmur reopened this Jun 22, 2026
@markmur
markmur force-pushed the change-link-open-behaviour branch from 9931f99 to 1d6e09a Compare June 26, 2026 14:22
@markmur markmur changed the title [Prototype] Change default link open behaviour to in-app browser by default Change default link open behaviour to in-app browser by default Jun 26, 2026
@markmur
markmur marked this pull request as ready for review June 26, 2026 14:24
@markmur
markmur requested a review from a team as a code owner June 26, 2026 14:24
@markmur
markmur force-pushed the change-link-open-behaviour branch from 1d6e09a to d76f6dd Compare June 26, 2026 15:25
@github-actions

github-actions Bot commented Jun 26, 2026

Copy link
Copy Markdown

Package Size

Platform Artifact Base Head Delta
Android release AAR 246.5 KiB 247.1 KiB +627 B
Android file breakdown
File Base Head Delta
classes.jar 260.7 KiB 261.3 KiB +607 B
res/layout/checkout_view_content.xml 2.2 KiB 2.2 KiB 0 B
res/layout/checkout_sheet_content.xml 2.0 KiB 2.0 KiB 0 B
res/values/values.xml 1.2 KiB 1.2 KiB 0 B
R.txt 1.1 KiB 1.1 KiB 0 B
proguard.txt 798 B 798 B 0 B
AndroidManifest.xml 578 B 578 B 0 B
res/drawable/close.xml 431 B 431 B 0 B
res/menu/checkout_menu.xml 354 B 354 B 0 B
META-INF/com/android/build/gradle/aar-metadata.properties 157 B 157 B 0 B

Measured from the PR base SHA and PR head SHA. The file breakdown shows uncompressed sizes within each package artifact, so individual files do not sum to the compressed artifact total. This comment reports package artifact sizes only; it is not a final app binary-size report.

@markmur markmur changed the title Change default link open behaviour to in-app browser by default [Swift/Kotlin] Change default link open behaviour to in-app browser by default Jun 26, 2026
@markmur
markmur force-pushed the change-link-open-behaviour branch from 6484430 to b896fb4 Compare July 7, 2026 10:35
@markmur
markmur force-pushed the change-link-open-behaviour branch from b896fb4 to 158768e Compare July 27, 2026 15:36
@bitrise

bitrise Bot commented Jul 27, 2026

Copy link
Copy Markdown

Install this build

Open Tophat, select your target device, then click Install. Links open on the Mac running Tophat.

SDK Install
Swift Install with Tophat
Kotlin Install with Tophat

Checkout Kit E2E results

Status Suite Target Platform OS version tag Device
tests/shared/launch-smoke.yaml kotlin android latest Google Pixel 9
Android 17.0
tests/shared/launch-smoke.yaml swift ios latest iPhone 15
iOS 27 Beta

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.

1 participant