Simon Ser
cf54beacc2
lint: turn on @stylistic/js/arrow-parens
2024-09-29 11:54:21 +02:00
Simon Ser
78bfd16f25
Remove two remaining single quote strings
2024-09-29 11:45:13 +02:00
Simon Ser
97920ff7f6
Prefix unused variables with an underscore
2024-09-28 21:44:23 +02:00
Simon Ser
6693cc0c78
Remove unused variables
2024-09-28 21:43:23 +02:00
Simon Ser
6747c03a75
components/app: add missing break
2024-09-28 21:36:35 +02:00
Simon Ser
d9f7faad88
components/app: warn when username is missing for OAuth introspection
...
Makes things easier to debug.
2024-06-25 17:54:48 +02:00
Simon Ser
0f273b9699
components/app: fix STATUSMSG NOTICE when target buffer is closed
2024-04-30 11:22:22 +02:00
Simon Ser
3d03c0dbcf
components/app: update prevReadReceipt only when switching buffer
...
We don't want the unread separator to move around when the tab gets
focus, for instance.
2024-04-25 19:32:10 +02:00
sitting33
0b7726819d
Show number of highlights in window title
...
Co-authored-by: Simon Ser <contact@emersion.fr>
Closes: https://todo.sr.ht/~emersion/gamja/134
2024-04-25 16:49:19 +02:00
Simon Ser
8faff95631
components/app: include bouncer network name in window title
...
Co-authored-by: sitting33 <me@sit.sh>
2024-04-25 16:34:05 +02:00
Simon Ser
4d6f14ab0b
components/app: introduce updateDocumentTitle()
...
The logic in here will get more involved once we add unread counts
and such.
2024-04-25 16:23:23 +02:00
sitting33
9924f08794
Don't mark messages as read when window is not in focus
2024-04-25 16:07:41 +02:00
sitting33
f79b6bfaa1
components/app: split switchBuffer() and markBufferAsRead()
...
We'll want to mark as read independently in response to focus events.
2024-04-25 15:59:47 +02:00
Simon Ser
269e034581
Hide replies to our own internal WHO commands
...
References: https://todo.sr.ht/~emersion/gamja/88
2024-04-17 23:45:44 +02:00
Simon Ser
87e88cccca
Add support for soju.im/filehost
...
For now, only handle paste events containing files.
Co-authored-by: Alex McGrath <amk@amk.ie>
2024-04-16 13:22:24 +02:00
Simon Ser
5b8c886c91
components/app: throttle our focus PINGs
2023-11-26 16:43:42 +01:00
Simon Ser
06f7cf9565
Fix ReferenceError when adding new bouncer network
...
Fixes the following:
ReferenceError: can't access lexical declaration 'client' before initialization
handleNetworkSubmit app.js:1868
2023-10-03 11:43:00 +02:00
Simon Ser
5e33919cce
Show MONITOR online/offline notifications in user buffers
...
We were only showing QUIT, which was weird because it wouldn't
say when the user becomes online again. Use MONITOR instead.
2023-08-25 13:10:05 +02:00
Simon Ser
3b383308d4
Send PING on window focus
...
References: https://todo.sr.ht/~emersion/gamja/148
2023-06-23 16:05:45 +02:00
Simon Ser
44a064274d
Add buffer switcher
2023-06-08 15:07:28 +02:00
Simon Ser
a0ed50a8e2
Keep closed buffers in store
...
This retains their delivery receipts.
Closes: https://todo.sr.ht/~emersion/gamja/154
2023-06-08 11:54:16 +02:00
Simon Ser
2d651ef901
components/app: prevent multiple WHO channel commands in parallel
...
References: https://todo.sr.ht/~emersion/gamja/152
2023-04-19 12:56:12 +02:00
Simon Ser
535bdb2f52
Migrate to async/await
2023-04-19 12:51:13 +02:00
Simon Ser
2883234ff6
Don't perform OAuth redirection after server meteadata error
2023-03-10 14:14:37 +01:00
Giorgi Taba Kobakhidze
4f350ae223
components/app: ensure msg.tags is initialized
...
Fixes the following error when sending a message on a server
without echo-message:
Uncaught TypeError: t.tags is undefined
prepareChatMessage app.js:602
handleChatMessage app.js:616
privmsg app.js:1514
handleComposerSubmit app.js:1535
handleSubmit composer.js:30
Preact 15
handleMessage app.js:1013
connect app.js:791
handleMessage client.js:448
reconnect client.js:176
reconnect client.js:174
Yt client.js:151
connect app.js:754
handleConnectSubmit app.js:1279
handleSubmit connect-form.js:74
Preact 16
handleConfig app.js:382
<anonymous> app.js:238
promise callback* app.js:237
Preact 4
<anonymous> main.js:4
2023-02-17 23:36:46 +01:00
Simon Ser
3f059567c5
Skip regular chat message handling for infinite scroll
...
Infinite scroll is special: it shouldn't trigger notifications.
Additionally we need to avoid sending on MARKREAD command per
message in the chathistory batch.
Split chat message handling into separate functions.
2022-11-30 12:23:12 +01:00
Simon Ser
4b306305bf
Move msg.tags fallback to client
2022-11-30 11:30:46 +01:00
Simon Ser
a172c810e9
Make first server check more robust when disconnecting
...
A disconnect/reconnect cycle will bump the server ID.
2022-11-30 11:21:54 +01:00
Simon Ser
ab3569e104
Close settings dialog when disconnecting
2022-11-30 11:18:23 +01:00
Simon Ser
24ba3f5189
Remove unnecessary whoChannelBuffer() call
...
switchBuffer() will do that already, no need to do it manually here.
We risk sending two duplicate WHO commands.
2022-10-23 20:21:27 +02:00
Simon Ser
90a2c91651
Load initial members state via WHO when channel is selected
...
Closes: https://todo.sr.ht/~emersion/gamja/13
2022-10-23 20:18:33 +02:00
Simon Ser
e815295503
Add support for OAuth 2.0 authentication
2022-10-14 10:52:44 +02:00
Simon Ser
84b68308b9
components/app: switch off loading state atomically
...
Set connectParams together with loading, to avoid intermediate
state where loading = false but connectParams isn't set yet.
2022-09-12 13:42:44 +02:00
Simon Ser
4964782c30
Display error in loading state
2022-09-12 13:41:23 +02:00
Simon Ser
54e1fc93d9
Add config option to generate random nickname
...
Closes: https://todo.sr.ht/~emersion/gamja/136
2022-09-12 13:04:59 +02:00
Simon Ser
34d3bd6df9
Remove unnecessary if in App.handleConfig
...
config.json is merged with baseConfig. The latter is guaranteed
to contain a "server" field.
2022-09-12 09:54:38 +02:00
Simon Ser
a13f74d466
Disallow server.{autoconnect,auth} mismatch in config.json
...
This combination doesn't make sense.
2022-09-12 09:48:49 +02:00
Simon Ser
a2d2a11d44
Drop support for soju.im/read
...
It's been superseded by draft/read-marker.
2022-09-03 14:41:53 +02:00
Simon Ser
aa9aa78d71
Fix ignored MARKREAD messages
...
The prefix is a remnant of the soju extension. The IRCv3 one
doesn't have it.
Fixes: 1428ec4d49
("Add support for draft/read-marker")
2022-09-03 14:40:46 +02:00
Simon Ser
4780b9c709
Fetch read marker before backlog for user targets
2022-09-03 14:31:56 +02:00
Simon Ser
e7b69cec9a
Limit composer length
...
Often times IRC servers will truncate messages which are too big.
2022-08-28 19:16:41 +02:00
xse
cfbd91d257
Make use of destBuffers when fetching history.
...
Fixes an issue where messages intended to go on the server's buffer end up on their own
2022-08-22 12:46:03 +02:00
Simon Ser
7138e43710
Ignore RPL_CHANNEL_URL
2022-08-22 10:35:50 +02:00
Simon Ser
89647472ae
components/app: don't open buffer for CTCP messages
...
These are usually completely uninteresting messages, e.g. CTCP
VERSION or whatever.
2022-08-22 10:30:56 +02:00
Simon Ser
1428ec4d49
Add support for draft/read-marker
...
References: https://github.com/ircv3/ircv3-specifications/pull/489
2022-07-01 13:35:27 +02:00
delthas
b9693d53ec
Support @+draft/channel-context
...
See: https://github.com/ircv3/ircv3-specifications/pull/498
2022-06-28 15:33:38 +02:00
Simon Ser
fa80a56516
Add button to enable protocol handler in settings
2022-06-27 17:01:15 +02:00
Simon Ser
7cabb6f85b
Add a setting for seconds in timestamps
2022-06-27 16:34:41 +02:00
Simon Ser
baaf576d82
Add a settings dialog
...
Add an option to hide chat events or always expand them.
Closes: https://todo.sr.ht/~emersion/gamja/73
2022-06-08 16:57:16 +02:00
Simon Ser
e3c2d85a94
Fix ping config lost in ConnectForm
...
Reported-by: xse <xse@riseup.net>
References: https://lists.sr.ht/~emersion/public-inbox/patches/32126
2022-06-08 15:14:06 +02:00