Back to API Reference
Class
TextChangeReason
static
Hierarchical reason string carried by DocumentChanged. Integrators switch on these to react differently to user typing vs paste vs programmatic mutation. Format is dotted-prefix so consumers can match by prefix: input.* is exclusively user-originated (so reason.StartsWith("input.") means "the user did this"), program.* is integrator code, sync.* is network / collaborative sync. Narrower prefixes refine further — e.g. reason.StartsWith("input.type") covers Type and TypeCompose.
