Treat server broadcasts as highlights
Don't focus composer on key press if modifier is also pressed
Turn dialog close button into a <button>
This is semantically more correct.
Use semantically more correct elements for error bubble
Focus buffer scrollview instead of composer
Instead of focusing the composer, focus the buffer scrollview when
switching to a buffer. This allows keyboard navigation to work as
expected, with arrow up/down and page up/down scrolling the buffer
instead of doing nothing.
Focus back the composer when a KeyboardEvent produces text. This
allows users to start typing a message right after switching to a
Improve composer form indentation
Allow resetting nick and auto-join with query params
Add web app manifest
We'll need this to register protocol handlers.
lib/client: reject Client.roundtrip promise on disconnect
component/app: Automatically prepend wss to server URL if unspecified
Allow resetting server URL with query param
lib/linkify: stop using RegExp indices
Co-authored-by: Simon Ser <email@example.com>
Use cursor pointer for buttons
I'm usually not a fan of changing the default browser styles for
things like the cursor image, but here it actually improves
accessibility: it's clearer for the user what can be clicked on.
Add irc.forEachChannelModeUpdate helper
Move MODE state updates outof App
Add STATUSMSG indicator
Move message key generation to State.addMessage
We used to be bare-bones, we're a little bit more than that now.
Don't try to reconnect if the network is down