Impact
Medium
Problem / Motivation
URI allow-list exists, but no public pre-navigation callback to inspect/cancel specific requests.
Current behavior
Relevant primitives exist in the files listed above, but this backlog item does not have a complete, explicit InfiniFrame contract with dedicated coverage.
Expected behavior
Add navigation-starting event API exposing URL, user-initiation, redirect flag, and cancel token across supported engines.
Proposed solution
Implement this incrementally:
- Define/adjust the managed public API in
InfiniFrame.Shared.
- Wire implementation in
InfiniFrame and InfiniFrame.Native where required.
- Add focused tests (
tests/InfiniFrameTests*) and docs updates (docs/docs/guides/*, docs/docs/migration/*).
Alternatives considered
- Keep as unsupported and document migration limitation.
- Provide a workaround-only approach without first-class API.
Use case
Applications migrating from Photino expect this behavior and currently need custom handling for "Intercept navigation events".
Technical proposal
Scope implementation to: core managed runtime (src/InfiniFrame/*, src/InfiniFrame.Shared/*, src/InfiniFrame.Js/*). Keep behavior deterministic across Windows/Linux/macOS and document platform-specific limitations explicitly.
Additional context
Photino reference: tryphotino/photino.NET#139
Checklist
Impact
Medium
Problem / Motivation
URI allow-list exists, but no public pre-navigation callback to inspect/cancel specific requests.
Current behavior
Relevant primitives exist in the files listed above, but this backlog item does not have a complete, explicit InfiniFrame contract with dedicated coverage.
Expected behavior
Add navigation-starting event API exposing URL, user-initiation, redirect flag, and cancel token across supported engines.
Proposed solution
Implement this incrementally:
InfiniFrame.Shared.InfiniFrameandInfiniFrame.Nativewhere required.tests/InfiniFrameTests*) and docs updates (docs/docs/guides/*,docs/docs/migration/*).Alternatives considered
Use case
Applications migrating from Photino expect this behavior and currently need custom handling for "Intercept navigation events".
Technical proposal
Scope implementation to: core managed runtime (
src/InfiniFrame/*,src/InfiniFrame.Shared/*,src/InfiniFrame.Js/*). Keep behavior deterministic across Windows/Linux/macOS and document platform-specific limitations explicitly.Additional context
Photino reference: tryphotino/photino.NET#139
Checklist