Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,13 @@ EXPORTS = \
-Wl,--export=output \
-Wl,--export=length \
-Wl,--export=measure \
-Wl,--export=graphics_size \
-Wl,--export=graphics_init \
-Wl,--export=image_begin \
-Wl,--export=image_commit \
-Wl,--export=image_remove \
-Wl,--export=graphics_capability \
-Wl,--export=graphics_resize_prepare \
-Wl,--export=Clay_SetPointerState \
-Wl,--export=pointer_over_count \
-Wl,--export=pointer_over_id_string_length \
Expand Down
12 changes: 11 additions & 1 deletion specs/renderer-spec.md
Original file line number Diff line number Diff line change
Expand Up @@ -906,7 +906,8 @@ This encoding has been extended incrementally (floating, clip, and scroll groups
were added after the initial protocol) but has never been restructured. It is
likely to remain stable in structure while continuing to grow. However, specific
opcode values, mask definitions, and field layouts are implementation details
and are not locked down by this specification.
and are not locked down by this specification. The image element added one more
opcode on the same extension pattern (Graphics Specification §6.1).

### 12.2 Directive property groups

Expand Down Expand Up @@ -985,6 +986,9 @@ The `text()` constructor accepts: `color`, `bg`, `fontSize`, `letterSpacing`,
`lineHeight`, and attribute flags (`bold`, `italic`, `underline`,
`strikethrough`).

The `img()` constructor accepts `image` (a pixel-surface registry id), `alt`,
`width`/`height` sizing axes, `variant`, and `bg` (Graphics Specification §6.1).

These property groups represent the current implementation surface. New groups
and fields have been added incrementally and more may follow.

Expand Down Expand Up @@ -1113,6 +1117,12 @@ the most recent `render()` call. Each error is a `ClayError` object with:
single cell than the cell can store. The excess marks are truncated (see
§13, Cell representation). Reported at most once per frame, on the first
truncation. The `message` SHOULD identify the per-cell limit.
- `"IMAGE_NOT_FOUND"` — An `img` directive referenced a registry id that is
not live; the element rendered at the alt tier (Graphics Specification §13).
- `"IMAGE_PLACEMENTS_EXCEEDED"` — More kitty placements were required in one
frame than the placements record holds (Graphics Specification §5.4, §13).
- `"IMAGE_PLACEMENT_COLLISION"` — Two elements in one frame derived the same
placement id (Graphics Specification §9.2.1, §13).
- `message`: a human-readable string describing the error in detail.

Errors are collected per-render; each call to `render()` returns only the errors
Expand Down
Loading
Loading