summaryrefslogtreecommitdiff
path: root/ui/styles/forms.css
Commit message (Collapse)AuthorAge
* Use browser-native methods to hide elements, not CSS alone.Owen Jacobson2025-05-22
| | | | The hidden `textarea` used to attach the form value to the DOM was being included in the ARIA accessibility tree, at least in testing (I didn't check in a browser). While we could suppress this iwth `aria-role="hidden"`, the WHATWG recommendation is to Not Do That, and to find another way to hide the element, instead. Marking the element as hidden accomplishes that goal, _and_ gets rid of a style rule.
* Move placeholder-related CSS into `textarea.css`.Owen Jacobson2025-05-15
|
* Restore the placeholder when the editable input is emptied out after ↵Owen Jacobson2025-05-13
| | | | | | modification. This also avoids using `placeholder` on elements where it's nonstandard, like `<div>`s.
* Make the resulting form more amenable to normal DOM operations.Owen Jacobson2025-05-13
| | | | | | | | | | | | | | This is purely an aesthetic choice: * The DOM `reset()` function can be used to clear the form, but can't be used to clear editable DIVs. Binding the editable div to a (hidden) form field allows `reset()` to clear both. * We can find the target `form` element out of the event, but the API needed to do so differs between events dispatched to form controls and events dispatched to random DOM nodes. Using `closest('form')` works for both kinds of event target. In practice, there is little need to make sure the message input form uses "normal" DOM APIs for functional reasons. Everything inside `MessageInput` is controllable through the component's script. This change isn't based on a functional need, but rather in the hopes that integrating with the DOM APIs makes it easier for _code we don't control_ - screen readers, password managers, saved-form support in browsers, &c - to integrate with Pilcrow. It is purely speculative. (This also used to be necessary because Firefox didn't support `contenteditable="plaintext-only"`, but [support was added in March][ff-pto] [ff-pto]: https://www.mozilla.org/en-US/firefox/136.0/releasenotes/#:~:text=The%20value%20plaintext%2Donly%20can%20now%20be%20specified%20for%20the%20contenteditable%20attribute%2C%20making%20the%20raw%20text%20of%20an%20element%20editable%20but%20without%20supporting%20rich%20text%20formatting.
* Implement the disabled state:Owen Jacobson2025-05-13
| | | | | * Suppress input (including paste) while the input is disabled. * Style the input to make it visible that it's not accepting input.
* Dim out placeholder text.Owen Jacobson2025-05-13
| | | | | | It's not much, but it makes it a bit easier to see that the placeholder text _is_ a placeholder. Not sure what to do about it vanishing permanently once the element is edited, until the element is formally `reset()`, though.
* Provide fallback generic fonts for our custom fontsOwen Jacobson2025-02-21
|
* npm formatOwen Jacobson2025-02-15
|
* Style form placeholders and buttonsKit La Touche2025-01-19
|
* Make small tweaks for mobile devicesKit La Touche2025-01-19
|
* A bit more stylingKit La Touche2025-01-05
|
* Stylize more betterKit La Touche2025-01-05
|
* Style /me routeKit La Touche2025-01-04