Commit graph

233 commits

Author SHA1 Message Date
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
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
Simon Ser
37cff435a3 Move MODE state updates outof App 2021-06-11 12:44:14 +02:00
Simon Ser
ef50e62498 Add STATUSMSG indicator
Closes: https://todo.sr.ht/~emersion/gamja/65
2021-06-11 11:18:29 +02:00
Simon Ser
d19f127952 Move message key generation to State.addMessage 2021-06-11 10:58:09 +02:00
Simon Ser
56c18e3810 Make "Remove network" button red 2021-06-11 00:33:22 +02:00
Simon Ser
4249da4ba8 Add /quiet and /unquiet 2021-06-11 00:27:19 +02:00
Simon Ser
61e35dd68a Bump direct message unread priority 2021-06-10 18:57:57 +02:00
Simon Ser
e56deb35c9 Ensure config has a server object
Simplifies code accessing the config.
2021-06-10 18:34:34 +02:00
Simon Ser
77030931cb Reset config.server.auth when using custom server URL 2021-06-10 18:28:01 +02:00
Simon Ser
4df9328be8 Move auto-join field out of advanced options if pre-filled
Closes: https://todo.sr.ht/~emersion/gamja/82
2021-06-10 18:21:18 +02:00
Simon Ser
8972130252 s/var/let/ 2021-06-10 18:11:11 +02:00
Simon Ser
4db845a4b1 Show again connect form when last server is closed 2021-06-10 18:06:45 +02:00
Drew DeVault
eef2093c88 Add "auth" parameter to tune connect form 2021-06-10 17:59:49 +02:00
Simon Ser
6039e13411 Add notification tags
This makes it so multiple messages from the same user will only
produce a single notification.
2021-06-10 17:11:21 +02:00
Simon Ser
63773f99ee Add Notification workaround for Chrome on Android
Closes: https://todo.sr.ht/~emersion/gamja/78
2021-06-10 17:08:24 +02:00
Simon Ser
20f20b18df Linkify MOTD 2021-06-10 12:09:07 +02:00
Simon Ser
02800dd21b Don't open a new buffer on NOTICE 2021-06-10 12:07:17 +02:00
Simon Ser
dd8eca1cfe Switch to server buffer on server name click
Closes: https://todo.sr.ht/~emersion/gamja/68
2021-06-10 12:03:50 +02:00
Simon Ser
e28769216a Remove callback arg from App.createBuffer 2021-06-10 10:56:18 +02:00
Simon Ser
bf76eaa669 Add State.createServer 2021-06-10 10:54:33 +02:00
Simon Ser
2546d31af0 Blur the composer when hiding it
This should make toggling the composer in a server buffer more
reliable.
2021-06-07 15:18:15 +02:00
Simon Ser
a9c1abb064 Route channel mode and invite/except list to channel buffer 2021-06-07 14:13:00 +02:00
Simon Ser
5b7ab2652b Improve buffer header layout on mobile
Put buffer title above buffer description.
2021-06-06 17:27:05 +02:00
Simon Ser
403d7ec7f7 Add case-mapping support to irc.isHighlight
Closes: https://todo.sr.ht/~emersion/gamja/77
2021-06-06 15:52:58 +02:00
Simon Ser
6b75985f96 Make <summary> easier to click on Firefox Mobile
Add role=button to mark the element as a touch target.

Closes: https://todo.sr.ht/~emersion/gamja/80
2021-06-06 12:05:57 +02:00
Simon Ser
41c113be9a Show connect form during connection
This improves UX when the connection parameters (server URL,
username, password, and so on) are incorrect.
2021-06-06 11:33:00 +02:00
Simon Ser
0dfb7623db Add support for labeled-response
It's just used to avoid mixing up messages coming from the server
so far.
2021-06-04 20:38:01 +02:00
Simon Ser
34078d5da7 Add support for draft/event-playback 2021-06-04 19:45:51 +02:00
Simon Ser
db7aa337cb Remove App.isChannel
Replace all remaining usage with Client.isChannel. Client will be
able to use the ISUPPORT tokens to check if a name is a channel.
2021-06-04 19:13:59 +02:00
Simon Ser
87588abf27 Add State.addMessage 2021-06-04 19:07:14 +02:00
Simon Ser
04362644bf Handle TOPIC in State.handleMessage 2021-06-04 18:57:02 +02:00
Simon Ser
30a345298f Handle JOIN/PART in State.handleMessage 2021-06-04 18:53:06 +02:00
Simon Ser
2af58f8d0b Move createBuffer to State 2021-06-04 18:37:34 +02:00
Simon Ser
2c1bb4ce6a Introduce State.handleMessage
Takes an IRC message, updates the state.

Doesn't yet handle all messages, this will be a step-by-step process.
2021-06-04 18:27:21 +02:00
Simon Ser
4d988cafeb Move some state utilities to state.js 2021-06-04 18:03:03 +02:00
Simon Ser
791b742684 Allow config.server.ping to be a String
Workaround for existing config files in the wild.
2021-06-04 17:50:49 +02:00
Simon Ser
6e20ad872e Add support for STATUSMSG
Closes: https://todo.sr.ht/~emersion/gamja/65
2021-06-03 13:31:43 +02:00
Simon Ser
3b5b693403 Use bufName in addMessage, fix missing Client.isMyNick() 2021-06-03 13:29:32 +02:00
Simon Ser
283f8af4b1 lib/irc: rename IRC prefix utilities 2021-06-03 13:18:28 +02:00
Simon Ser
04c9f0211a Fix undefined server variable in BufferHeader 2021-06-03 13:10:44 +02:00
Simon Ser
fe9c483570 s/network/server/
Closes: https://todo.sr.ht/~emersion/gamja/46
2021-06-03 11:46:50 +02:00
Simon Ser
63a71e5f5d Add support for incoming INVITE messages 2021-06-03 11:04:32 +02:00
Simon Ser
a4294975a2 Add support for /ban without argument 2021-06-03 10:19:09 +02:00
Simon Ser
5004f6c89c components/help: document that / allows to start writing a command 2021-06-02 22:53:28 +02:00