Every kind of display MAIDR drives; the first is in use until the reader connects another
ReadonlyonFires whenever the connection state of the display in use changes.
ReadonlyonFires when a write to the display in use was refused.
ReadonlyonFires when a key on the display in use is pressed.
Connection state of the display in use.
True when the display in use is connected and ready for output.
Layout of the display in use, or null.
True when the display in use can contract its text line.
True when the display in use breaks its text line between words.
True when this browser can reach any kind of display MAIDR drives.
Reports whether the browser can reach a display over one transport.
The connection to test
Fetches what connecting to a device would otherwise wait on.
The device the reader picked, or null when none yet
Opens the browser's device picker for one transport and connects to the chosen display, which becomes the one in use.
Must be reached synchronously from the reader's click: nothing is awaited before the driver opens its picker.
Which way to look for the device
The connection state once the attempt settles
Takes up a display the page was already granted, quietly.
The kind the reader chose in Settings is asked first, then the rest: a page may have been granted more than one, and the reader's choice is the one they are reading with.
True when a display was taken up
Closes the connection to the display in use.
Translates text for the display in use's text line.
The text to translate
Hex braille cells, or null when the caller should fall back
Sends a whole graphic frame to the display in use.
The frame, packed as DotPack.graphic packs it
Sends one row of cells of the graphic area to the display in use.
Zero-based cell row
The row, packed as DotPack.graphicRow packs it
Sends the braille text line to the display in use.
The line's cells, bit 0 being dot 1
Buzzes the display in use.
OptionalonFailure: () => voidCalled when the device refused after the request was queued
False when the display cannot vibrate
The tactile display the reader is using, whichever kind it is.
Each kind of display has a driver of its own, and the reader uses one at a time. This is the one the tactile service draws through and the Settings dialog connects through: it passes everything to the driver in use and passes on only that driver's events, so neither of them has to know which device is on the desk.
The driver in use is the one the reader last connected, or the one that last came up on its own. A display that comes up replaces any other that was connected: two would be drawn on at once, and only one of them is under the reader's hands.