Skip to main content

Module composer

Module composer 

Expand description

Which key sends, in every conversation.

One rule, in both apps: Enter sends, Shift+Enter breaks the line, and Escape lets the draft go. A field that submits on Mod+Enter is for a comment inside a document, not for a conversation — a messenger where Return adds a newline is a messenger where nothing is ever sent.

The rule is a pure function of the rule, the key and the modifiers held, so a test can pin it and both apps can apply it to whatever receives their keystrokes: a plain TextInput (configured with with_enter_submits, which implements the same rule) or a rich composer.

Enums§

ComposerIntent
What a keystroke means to a composer.
ComposerRule
How a composer’s field ends a message.