Simon Ser
f698d7a250
doc/url-params: document wildcard in nick param
2024-05-09 22:56:58 +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
Simon Ser and sitting33
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
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
1ea7c30744
lib/client: fix number of field check in RPL_WHOSPCRPL
...
The first field is the client.
2024-04-17 23:29:54 +02:00
Simon Ser and Alex McGrath
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
97b9efcc9f
Upgrade dependencies
2024-04-10 14:24:34 +02:00
Simon Ser
7ec9ae7faa
Upgrade preact to v10.20.2
2024-04-09 20:45:22 +02:00
Simon Ser
ebcb731e2f
components/buffer: fold NICK change chains
2024-03-29 16:08:04 +01:00
Simon Ser
23ceda5523
Revert "Upgrade preact to v10.20.0"
...
This reverts commit e843fe3ecb .
Unfortunately the fix doesn't seem to work for us…
2024-03-20 12:07:43 +01:00
Simon Ser
e843fe3ecb
Upgrade preact to v10.20.0
...
The upstream preact bug [1] has been fixed now!
[1]: https://github.com/preactjs/preact/issues/4221
2024-03-20 10:44:11 +01:00
Simon Ser
5171e0010d
doc/setup: use plaintext HTTP listener for soju
2024-03-19 14:27:44 +01:00
Simon Ser
3584c1eb10
lib/irc: fix whitespace RegExp test in isURIPrefix
2024-03-13 15:41:04 +01:00
Simon Ser
2fe2ce6912
lib/irc: fix assignment to undefined variable in isURIPrefix
2024-03-07 23:04:40 +01:00
Simon Ser
57f7b1c011
lib/irc: fix whitespace split in isURIPrefix
...
We want to get the last index of whitespace, not the first one.
2024-03-07 11:40:37 +01:00
Simon Ser
5d3738bc40
lib/irc: ignore highlights in URLs
2024-03-02 12:36:30 +01:00
Simon Ser
429b4595e7
lib/client: print raw messages in debug mode
...
Browser consoles aren't super helpful in general and just show
the command name, require extra clicks to see the params.
2024-03-01 15:03:09 +01:00
Simon Ser
038cc68ee4
components/buffer-list: show realname as tooltip
2024-02-20 22:50:09 +01:00
Simon Ser
15cc546876
components/buffer: show realname as tooltip
2024-02-20 22:48:03 +01:00
Simon Ser
a514104c55
commands: drop unvoice
...
We have devoice already, and that's the one defined in popular
clients such as WeeChat.
2024-02-15 16:40:41 +01:00
Simon Ser
7e5e94cda0
components/help: always show autocomplete keybind
2024-02-15 16:37:32 +01:00
Simon Ser
75d721c02d
components/help: add autocomplete
2024-02-15 16:34:16 +01:00
Simon Ser
141fc3e07c
Pin preact to v10.17.1
...
We can't upgrade due to this bug:
https://github.com/preactjs/preact/issues/4221
2024-01-10 20:30:29 +01:00
Simon Ser
b38777e92a
lib/linkify: add geo URI scheme
2024-01-10 11:38:23 +01:00
Simon Ser
0640ff8712
Upgrade linkifyjs to v4
2024-01-10 11:33:20 +01:00
Simon Ser
67b2b07506
Upgrade dependencies
...
Leave preact and linkifyjs alone because they cause breakage.
2024-01-10 10:50:30 +01:00
Simon Ser
15e451f7f8
doc/config-file: indicate where errors are logged
2024-01-07 22:16:56 +01:00
Simon Ser
617a3a7485
Downgrade preact to 10.17.1
...
References: https://github.com/preactjs/preact/issues/4221
2023-11-29 17:46:16 +01:00
Simon Ser
4f828db244
Downgrade preact to 10.18.2
...
References: https://github.com/preactjs/preact/issues/4221
2023-11-28 15:13:02 +01:00
Simon Ser
bc19829673
Upgrade dependencies
2023-11-26 18:22:32 +01:00
Simon Ser
5b8c886c91
components/app: throttle our focus PINGs
2023-11-26 16:43:42 +01:00
Simon Ser
c6a1513a07
doc/setup: add kimchi instructions
2023-11-12 10:22:00 +01:00
Simon Ser
3771b39979
doc/setup: improve gamja config instructions for webircgateway
2023-11-12 10:18:57 +01:00
Simon Ser
ca4b3575b1
Move docs to a separate directory
2023-11-12 10:09:50 +01:00
Simon Ser
68cb6c56c4
components/buffer: drop duplicate MONITOR events
2023-11-10 18:11:34 +01:00
Simon Ser
e0de4d1b36
Set targets.default.context in package.json
...
parcel doesn't auto-detect that field properly due to "engines".
Closes: https://todo.sr.ht/~emersion/gamja/158
2023-10-21 12:51:06 +02: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
97b5970acb
state: simplify MONITOR reply handling
2023-08-25 13:09:14 +02:00
Simon Ser
ffbbde7f28
Upgrade dependencies
2023-08-17 10:50:31 +02:00
Simon Ser
8f29f0c35d
lib/client: ensure server prefix is never null
...
Fixes a null deref in handleChatMessage, because incoming message
prefixes are populated with the server's if null.
2023-08-17 10:45:56 +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
3a95fd5ba4
components/switcher-form: match topics and realnames
2023-06-14 11:52:54 +02:00
Simon Ser
44a064274d
Add buffer switcher
2023-06-08 15:07:28 +02:00
Simon Ser
fe016807da
components/help: fix typo for Ctrl key bindings
2023-06-08 12:15:53 +02:00
Simon Ser
10d988b891
store: fix undefined Unread
2023-06-08 12:09:24 +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
2f627eecad
state: handle WHO replies in bulk
2023-04-19 13:04:58 +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
57f64e9cc2
lib/irc: add formatURL
2023-04-19 11:43:45 +02:00
Simon Ser
57809be989
Upgrade dependencies
2023-04-04 19:10:10 +02:00
Simon Ser
6c26ee2156
store: fix clearing buffers for a specific server
2023-04-04 17:00:05 +02:00
Simon Ser
5db0105dbd
store: protect against dup buffers
2023-04-04 16:51:23 +02:00
Simon Ser
c8fda8ed53
store: stop matching server URL and nick
...
This was supposed to accomodate for multi-server support, but to
be honest this is out of scope for gamja.
Closes: https://todo.sr.ht/~emersion/gamja/151
2023-04-04 16:46:58 +02:00
Simon Ser
fd63c169ed
lib/client: encode empty SASL response as "+"
2023-03-21 17:57:09 +01:00
Simon Ser
2c3fbdd605
readme: document default for server.url in config.json
2023-03-13 20:36:47 +01:00
Simon Ser
2883234ff6
Don't perform OAuth redirection after server meteadata error
2023-03-10 14:14:37 +01:00
Simon Ser
f7459704f6
components/composer: focus composer on keydown if a link is active
...
Fixes message not typed after clicking on a link.
2023-01-31 18:28:51 +01:00
Simon Ser
c6024e643a
Upgrade dependencies
2023-01-16 12:10:31 +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
dc5e64aaac
lib/client: unify checks for chathistory end
2022-11-30 10:17:50 +01:00
Simon Ser
2d27168529
Use ratified extended-monitor cap name
...
References: https://github.com/ircv3/ircv3-specifications/pull/508
2022-11-06 20:40:00 +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
bbc94c88c0
Upgrade dependencies
2022-09-18 20:08:13 +02:00
Simon Ser
84ca0a4408
components/connect-form: autofocus username field
2022-09-12 13:43:58 +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
a603b79e33
components/buffer-list: show buffers with errors in red
2022-09-05 14:00:52 +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
e6618c8a1f
Fix draft/read-marker cap not negotiated
...
Fixes: 1428ec4d49 ("Add support for draft/read-marker")
2022-09-03 14:40:54 +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
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
e2dc32c0d3
Update dependencies
2022-07-11 21:02:12 +02:00
Simon Ser
1bcd9d3607
ci: deploy to new server
2022-07-09 12:26:39 +02:00
Simon Ser
e4ebf5eb80
ci: fix deploy host
...
emersion.fr is now an alias for the new server. gamja hasn't been
migrated yet.
2022-07-08 21:24:09 +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
Simon Ser
d0064dd647
components/buffer: show disclaimer for +draft/channel-context messages
2022-06-28 15:55:35 +02:00
Simon Ser
f6ba40046f
components/buffer-header: fix duplicate settings button
2022-06-28 15:11:48 +02:00
Simon Ser
54453c5f44
Fix invalid relative import
...
Worked locally because it's served at the root…
2022-06-27 17:16:33 +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
505a6fd5ab
Workaround the sad state of base64 web APIs
...
This is necessary to make usernames/passwords with UTF-8 in them
work correctly.
2022-06-24 23:59:18 +02:00
Simon Ser
8e30806fec
Upgrade dependencies
2022-06-14 19:58:50 +02:00
Simon Ser
f0c398a10c
components/buffer-header: print bouncer network error if any
2022-06-09 15:54:29 +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