Skip to content

Stylus drawing input

Summary

Pressure-sensitive stylus input routed through explicit pen routing to the Drawing activity. Supports vector strokes and raster layer painting with pressure-based width/opacity.

Motivation

Drawing on a canvas surface needed stylus-aware input handling distinct from mouse/keyboard. Pressure sensitivity, tilt, and explicit pen routing (avoiding accidental touch input during drawing) were required.

Design

  • Explicit pen routing: Stylus events are routed to the drawing surface only; touch events are suppressed in drawing mode
  • Pressure-sensitive strokes: Vector strokes vary width/opacity with pen pressure
  • Raster layer: Separate raster backend for brush-based painting (documented in Drawing Raster Implementation)
  • Layer model: Vector and raster layers coexist in the same drawing document

Tasks

  • [x] Stylus input routing with pressure/tilt
  • [x] Vector stroke rendering
  • [x] Raster layer brush painting
  • [x] Explicit pen routing (touch suppression)