Simon Ser
d934491674
Add support for IRCv3 WebSocket subprotocol
...
References: https://github.com/ircv3/ircv3-specifications/pull/342
2021-09-06 17:26:36 +02:00
Simon Ser
76f097e8a8
lib/client: error out on unsupported WebSocket data type
2021-09-06 17:15:52 +02:00
Simon Ser
beef13d273
lib/client: remove WebSocket error event handler
...
The error event handler is useless, because the error event is never
emitted without a close event, and doesn't give any details about
the error.
2021-09-06 17:11:28 +02:00
Simon Ser
ed41f08ba4
Get rid of a wild var keyword
2021-09-06 16:53:25 +02:00
Simon Ser
0137a95268
Add support for chghost
...
See https://ircv3.net/specs/extensions/chghost
2021-09-06 11:20:33 +02:00
Simon Ser
a51be5037d
lib/irc: only add colon to trailing arg when necessary
...
This mirrors go-irc's behavior:
7ba1a1858f/parser.go (L374)
Closes: https://todo.sr.ht/~emersion/gamja/103
2021-09-06 10:52:06 +02:00
Simon Ser
c428e504fe
Don't show unread marker for outgoing messages
...
Closes: https://todo.sr.ht/~emersion/gamja/100
2021-08-30 10:27:24 +02:00
Simon Ser
c65ecd66eb
Avoid sending empty MONITOR command on startup
...
Closes: https://todo.sr.ht/~emersion/gamja/102
2021-08-30 10:14:05 +02:00
Simon Ser
73a2bcab94
Update buffer store when marking all buffers as read
2021-08-25 08:47:35 +02:00
Simon Ser
77683937d7
Narrow down syncBufferUnread call to self-JOIN
2021-08-25 08:46:37 +02:00
Simon Ser
4278265c65
Open new buffer on self-message
...
Closes: https://todo.sr.ht/~emersion/gamja/96
2021-08-24 14:46:51 +02:00
Simon Ser
8a5e52ed9a
Rename buffer lastReadReceipt to prevReadReceipt
...
This field is intentionally behind the latest read receipt. Let's
rename it to make that clearer.
2021-08-24 14:01:57 +02:00
Simon Ser
6e59a77672
Don't drop unread marker in addMessage
...
Closes: https://todo.sr.ht/~emersion/gamja/76
2021-08-24 13:59:33 +02:00
Simon Ser
b14cddc0d0
Ignore server buffer in latestReceipt
...
When we've received RPL_WELCOME, latestReceipt will return the
current time if we don't filter out the server buffer.
2021-08-24 13:49:25 +02:00
Simon Ser
e283d9c7ab
Add support for MONITOR
2021-08-24 12:53:46 +02:00
Simon Ser
dd67e0789e
Auto-complete channel names
...
Closes: https://todo.sr.ht/~emersion/gamja/84
2021-08-23 15:21:24 +02:00
Simon Ser
aa9ce73d5a
Restore channel unread status from local storage
...
Closes: https://todo.sr.ht/~emersion/gamja/75
Closes: https://todo.sr.ht/~emersion/gamja/89
2021-08-23 14:17:58 +02:00
Simon Ser
c470c9f2c0
Fix typo
2021-08-23 12:31:11 +02:00
Simon Ser
c47af780f6
Restore user query buffer unread status
2021-08-23 12:25:43 +02:00
Simon Ser
016ca27f2d
Restore opened user query buffers
...
Closes: https://todo.sr.ht/~emersion/gamja/93
2021-08-23 12:02:36 +02:00
Simon Ser
4dd1fac002
Hide buffer focus outline
2021-08-18 08:55:23 +02:00
Simon Ser
2fb4393f24
store: remove dead code
2021-07-30 18:01:42 +02:00
Simon Ser
d18cbbafb0
composer: focus on paste
2021-07-21 19:48:09 +02:00
Simon Ser
c98ad539d5
Add message arg to /query
...
Closes: https://todo.sr.ht/~emersion/gamja/94
2021-07-21 15:21:58 +02:00
Simon Ser
51883292f9
lib/client: fix caps with equal sign in value
...
CAP=a=b wouldn't parse correctly.
2021-07-04 22:26:31 +02:00
Simon Ser
5b53fb6fe9
connect-form: improve HTML indentation
2021-07-04 21:51:42 +02:00
Simon Ser
a1d79cda4b
Drop ConnectForm key
2021-07-04 21:43:47 +02:00
Simon Ser
52ddda4e82
Unify dialog data in App.state
2021-07-04 21:41:36 +02:00
Simon Ser
af1e2e144a
Hide everything while loading config.json
2021-07-04 21:29:15 +02:00
Simon Ser
dee9e06b2f
connect-form: focus nickname input
2021-07-04 21:28:45 +02:00
Simon Ser
7b11b10955
Add /whowas command
2021-07-03 19:24:20 +02:00
Simon Ser
00eebc9859
composer: cycle through auto-completions
...
Closes: https://todo.sr.ht/~emersion/gamja/42
2021-06-30 22:20:40 +02:00
Simon Ser
08aefc9dc5
composer: add smart suffix after auto-completion
...
Append a space after a command name, so that arguments can be typed
directly. Append a colon after a nickname.
2021-06-30 21:56:45 +02:00
Simon Ser
856dd021e2
composer: auto-complete word at carret position
2021-06-30 21:50:55 +02:00
Simon Ser
b289fd10b7
Always mark own messages as read
2021-06-24 18:04:26 +02:00
Simon Ser
429450e060
Handle RPL_INVITING
2021-06-24 18:01:24 +02:00
Simon Ser
0fa6381c07
Preserve white space sequences in log lines
...
This allows e.g. the MOTD to have properly-formatted ASCII art.
2021-06-24 10:41:48 +02:00
Simon Ser
bc05fd5c11
Treat server broadcasts as highlights
2021-06-23 19:52:45 +02:00
Simon Ser
095006e961
Don't focus composer on key press if modifier is also pressed
2021-06-22 17:25:24 +02:00
Simon Ser
0d36e8a3fc
Turn dialog close button into a <button>
...
This is semantically more correct.
2021-06-22 16:02:55 +02:00
Simon Ser
1ea3180f5b
Use semantically more correct elements for error bubble
2021-06-22 15:48:42 +02:00
Simon Ser
724d7318cf
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
buffer.
Closes: https://todo.sr.ht/~emersion/gamja/64
2021-06-22 14:47:39 +02:00
Simon Ser
dc8f95c74d
Improve composer form indentation
2021-06-22 13:38:05 +02:00
Simon Ser
7d15525c7d
Allow resetting nick and auto-join with query params
2021-06-22 10:44:20 +02:00
Simon Ser
ca8649c506
Add web app manifest
...
We'll need this to register protocol handlers.
2021-06-22 10:42:16 +02:00
Simon Ser
c187eac3c8
lib/client: reject Client.roundtrip promise on disconnect
2021-06-21 00:18:17 +02:00
delthas
edbf294380
component/app: Automatically prepend wss to server URL if unspecified
2021-06-20 21:08:02 +02:00
Simon Ser
f8060c9be2
Allow resetting server URL with query param
2021-06-20 13:00:40 +02:00
delthas
42e0c939f3
lib/linkify: stop using RegExp indices
...
Co-authored-by: Simon Ser <contact@emersion.fr>
Closes: https://todo.sr.ht/~emersion/gamja/90
2021-06-20 12:54:20 +02:00
Simon Ser
2203553519
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.
Closes: https://todo.sr.ht/~emersion/gamja/81
2021-06-11 14:46:45 +02:00