DomRange

data class DomRange(val start: DomRange.Point, val end: DomRange.Point? = null) : JSONable, Parcelable

This construct enables a serializable representation of a DOM Range.

In a DOM Range object, the startContainer + startOffset tuple represents the start boundary point. Similarly, the the endContainer + endOffset tuple represents the end boundary point. In both cases, the start/endContainer property is a pointer to either a DOM text node, or a DOM element (this typically depends on the mechanism from which the DOM Range instance originates, for example when obtaining the currently-selected document fragment using the window.selection API). In the case of a DOM text node, the start/endOffset corresponds to a position within the character data. In the case of a DOM element node, the start/endOffset corresponds to a position that designates a child text node.

Note that end field is optional. When only the start field is specified, the domRange object represents a "collapsed" range that has identical start and end boundary points.

https://github.com/readium/architecture/blob/master/models/locators/extensions/html.md#the-domrange-object

Parameters

start

A serializable representation of the "start" boundary point of the DOM Range.

end

A serializable representation of the "end" boundary point of the DOM Range.

Constructors

Link copied to clipboard
constructor(start: DomRange.Point, end: DomRange.Point? = null)

Types

Link copied to clipboard
object Companion
Link copied to clipboard
data class Point(val cssSelector: String, val textNodeIndex: Int, val charOffset: Int? = null) : JSONable, Parcelable

A serializable representation of a boundary point in a DOM Range.

Properties

Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
abstract fun describeContents(): Int
Link copied to clipboard
open override fun toJSON(): JSONObject

Serializes the object to its JSON representation.

Link copied to clipboard
abstract fun writeToParcel(p0: Parcel, p1: Int)