rito_flutter_native library

Low-level Native Assets bindings and isolate gateway APIs for embedders.

Classes

RitoAdjacentAvailability
RitoAdjacentDirection
RitoAdjacentRequest
RitoArtifact
RitoArtifactDecoder
RitoArtifactRequest
RitoBackgroundAdvance
RitoBackgroundHandoff
RitoBackgroundHandoffAck
RitoBackgroundRequest
RitoDisplayListPayload
The artifact's paint: its display commands lowered to the host's device grid, carried as the RITODL1 format-2 primitive list.
RitoDynamicLibrarySource
RitoFontGateway
Gateways that expose an open session's fonts: the catalog a host builds its font choices from, the names a font-family list would skip, and host faces added or removed while the session is open.
RitoFontRef
RitoForegroundHandoff
RitoForegroundHandoffAck
RitoHitEntry
RitoLayoutRequest
RitoLocator
RitoNativeBindings
Blocking C ABI binding. Applications should normally use RitoNativeGateway, which drives a session's protocol over it.
RitoNativeGateway
Runs EPUB parsing, CSS, layout, resource access, release and disposal on the isolate that holds the gateway, Flutter's UI isolate in an app: each call into the engine answers before it returns, so the frame that asks for a layout can draw it. A session's own background work (the whole book behind the page shown) runs in small steps between frames.
RitoNavigation
RitoPage
A page an artifact shows: its index and size. What it holds for a host — its targets, outline and text — is read when the host first needs it (RitoReaderSession.readPage).
RitoPageRecords
What one page of a live artifact holds for a host: its interaction targets, its semantic outline, its text and where each text run sits in that text, in the artifact's display-list space.
RitoPendingAdjacentDriver
Advances one retained adjacent intent by one quantum per asynchronous host turn. Only the dedicated adjacent-pending status is retryable.
RitoPinnedFontFace
One face the host supplies to the engine. Layout shapes with these bytes (plus the publication's own embedded faces), and paint draws every run with the exact face that shaped it, so the session registers each face with Flutter under its familyAlias.
RitoPinnedFontPolicy
The host faces a session opens with.
RitoPublication
RitoPublicationMetadata
RitoPublicationShard
One content shard as the host's server delivered it.
RitoPublicationSpineItem
RitoPublicationTocEntry
RitoPublicationTocExternalTarget
RitoPublicationTocLocatorTarget
RitoPublicationTocTarget
RitoPublicationTocUnresolvedTarget
RitoReaderGateway
RitoRect
RitoResource
RitoResourceDecoder
RitoResourceRef
RitoResumableAdjacentGateway
Marker contract for gateways that consume strictly newer native request IDs while cooperatively resolving one retained adjacent intent.
RitoResumableExactSeekGateway
Marker contract for gateways that may send an exact open or seek under a strictly newer native request ID than the caller's. The gateway substitutes one when the caller's ID was already consumed on the native side (an adjacent continuation the session has not learned about yet consumes IDs), so the returned artifact carries the substituted ID and the session adopts it as its new request baseline.
RitoSemanticNode
RitoShardedPublicationGateway
Gateways that can open a publication from its skeleton shard and supply content shards whenever a call waits on them.
RitoSourcePoint
RitoSourceRange
RitoSpreadRequest
One spread of the revision behind an artifact, addressed by its position in that revision's layout.
RitoTextRunOffset

Enums

RitoBackgroundState
RitoDynamicLibraryKind
RitoHitKind
What a hit is, as the engine classifies it: a note reference first (its definition indexed, or not yet), then a link, an image, text.
RitoLocatorMatch
RitoPinnedFontGenericRole
The generic CSS family a host face serves.
RitoResourceKind
RitoSemanticRole
RitoSpreadMode
RitoTextProfile

Typedefs

RitoIsolateGateway = RitoNativeGateway
The previous name of RitoNativeGateway, from when the engine ran on an isolate of its own.
RitoShardLoader = Future<List<RitoPublicationShard>> Function(List<int> shardIds)
Loads content shards of a publication opened from shards (see @ritojs/pack). Called with the ids the engine named the first time a call needed them; a thrown error fails only that call.

Exceptions / Errors

RitoNativeException
RitoNativeSessionInvalidatedException
The native session was invalidated because ownership cleanup failed.
RitoNativeWorkerTerminatedException
Raised when the native worker terminated before acknowledging an operation. The engine runs on the calling isolate now and nothing raises it.
RitoNavigationSupersededException
A navigation request that was replaced by newer intent.
RitoPendingAdjacentLimitException