summaryrefslogtreecommitdiff
path: root/docs/migrating.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/migrating.md')
-rw-r--r--docs/migrating.md15
1 files changed, 14 insertions, 1 deletions
diff --git a/docs/migrating.md b/docs/migrating.md
index da4e591..395072e 100644
--- a/docs/migrating.md
+++ b/docs/migrating.md
@@ -1,9 +1,22 @@
# Migrating pre-release applications
YASL 0.1 has no stable source or binary compatibility promise. Rebuild all
-consumers against the matching installed headers and library after updating.
+consumers against matching public headers and the library after updating.
See the [application guide](guide.md) for the full window and input workflow.
+## Application callbacks
+
+All examples now use `<yasl/app.h>` and `yasl_run()`. Move window creation to
+`yasl_app_desc.init`, input handling to `.event`, and drawing to `.frame`.
+Replace manual dispatch/poll/flush loops with the runner and request redraws with
+`yasl_surface_request_frame()`. Present the frame context with
+`yasl_frame_present_cpu()`; the runner destroys remaining surfaces on exit.
+
+Unified pointer button and motion events retain `device` and tablet axes.
+Handle `YASL_EVENT_INPUT_RESET` by clearing held input and active strokes, just
+as for the core API's `YASL_INPUT_RESET`. Window state remains a `YASL_STATE_*`
+bitmask; `YASL_STATE_TILED` is reported for tiled Wayland toplevels.
+
## Window creation
Rename `struct yasl_surface_spec` to `struct yasl_window_spec` and