86 Commits

Author SHA1 Message Date
7ba17a0161
Make the relay acknowledge all received commands
All checks were successful
Alpine 3.21 Success
Arch Linux AUR Success
OpenBSD 7.6 Success
To that effect, bump liberty and the xC relay protocol version.
Relay events have been reordered to improve forward compatibility.

Also prevent use-after-free when serialization fails.

xP now slightly throttles activity notifications,
and indicates when there are unacknowledged commands.
2025-05-10 12:08:51 +02:00
b3e545e0bb
xP: bump copyright years
All checks were successful
Alpine 3.20 Success
Arch Linux AUR Success
OpenBSD 7.5 Success
2024-11-14 16:27:56 +01:00
841bc00c51
xP: cleanup
I had forgotten about the auto-redraw system.
2024-07-28 13:42:28 +02:00
12fc3c228a
xP: reset highlight state once reaching buffer end
All checks were successful
Alpine 3.20 Success
Arch Linux AUR Success
OpenBSD 7.5 Success
2024-07-28 03:44:37 +02:00
175533a5e9
xP: don't interrupt IME composition
All checks were successful
Alpine 3.20 Success
Arch Linux AUR Success
OpenBSD 7.5 Success
On Vivaldi/macOS, pressing Enter would send the input and still keep
editing it as it was.
2024-07-04 20:06:59 +02:00
d450c6cc5f
xP: do not send the Referrer header 2024-03-04 16:15:22 +01:00
ef257cd575
xP: avoid expensive updates/refreshes 2024-01-06 23:44:11 +01:00
69eccc7065
xP: don't let buffers grow indefinitely
Primarily for performance reasons.
2024-01-06 21:17:18 +01:00
34521e61c1
xP/xW: fix buffer rename handling
Maintaining string pointers to the current/last buffer
means that renames invalidate them.
2023-08-25 22:48:31 +02:00
c157d3369f
xP: make Page Up/Down in editor scroll the buffer
Just like in xW recently.  It is unlikely that the user would want
to use these keys to move the cursor.  Ctrl+Home/End still work,
as does holding Up/Down arrows.

Also stop using the deprecated and somewhat cryptic keyCode.
2023-07-23 00:20:32 +02:00
9932b35a10
xP: highlight hovered buffer list items
To make it apparent which one would be closed by a middle click.
2023-04-14 10:58:19 +02:00
af5f209c53
xP: make middle click close buffers
As if they were tabs, to save pointless typing.
2023-04-13 04:26:40 +02:00
6bfe577f1b
xP: make the buffer list selectable by Vimium 2023-04-05 23:10:41 +02:00
1079189381
xP: render date changes as they happen 2023-01-25 00:31:57 +01:00
4b7258cba0
xP: fix ESC H detection on Macintosh systems 2022-10-04 20:17:31 +02:00
c4707e2803
xC/xP: send buffer input history during sync
This transfer is currenly quite simplistic,
but it paves the way for further extensions.
2022-09-30 17:36:29 +02:00
941ee2f10c
xP: fix automatic scrolling down
Showing channel logs cancelled the AbortController forever.
Thus store it within vnodes.
2022-09-28 21:29:08 +02:00
5b57e9b41b
xC/xP: fix unseen message counting
xC: advance unread message counters even with leaked messages,
and don't unnecessarily set the highlighted flag.  Plus clean up.

xP: make leaked non-unimportant messages advance the counter
for unimportant messages, so that the buffer doesn't get emboldened.
2022-09-28 21:20:59 +02:00
e15c9cba43
xP: use a dotted border for button focus
It's visible enough.
2022-09-25 11:08:50 +02:00
2c54f5a5dd
xP: make the overlay actually overlay 2022-09-23 19:00:31 +02:00
f2d8de3ab9
xP: support adding formatting from keyboard
Just like in xC, only with some indication.
2022-09-23 09:42:24 +02:00
67d52a2d89
xP: fix up link detection
Allow balanced parantheses at the end of a link.
2022-09-23 09:42:23 +02:00
ef3d1cc409
xP: add formatting buttons
And fix autoscroll autoenabler, as well as toolbar padding.

Only add the basic toggles, which should be well supported.
2022-09-23 09:41:29 +02:00
e6bf88673f
xP: produce a custom font for IRC formatting
Given that the generated file needs a manual adjustment,
its small size, and the dependencies involved,
it will be checked in to the repository.
2022-09-22 20:18:55 +02:00
d3628928b9
xC/xP: relay and render channel modes 2022-09-21 16:32:35 +02:00
1f0e0b1ce4
xP: only care about RPC results if requested
This prevents "No response" errors from firing for most commands.
2022-09-21 14:31:16 +02:00
919b12510b
xC/xP: relay and render channel topics 2022-09-21 12:15:27 +02:00
414859d309
xP: improve paging 2022-09-21 07:34:17 +02:00
5a7f2d16df
xP: clean up DOM attributes 2022-09-21 06:23:59 +02:00
9327333813
xC/xP: show own user's info in frontends 2022-09-20 17:24:30 +02:00
00184811ea
xP: make the prompt look more xC-like 2022-09-19 03:18:31 +02:00
ec20fdef7b
xP: show all completion options 2022-09-18 05:54:23 +02:00
ff243c1d11
xP: implement Readline's M-l, M-u, M-c 2022-09-18 01:59:11 +02:00
e2ef7d668c
xP: implement Readline's M-b and M-f 2022-09-18 01:10:03 +02:00
b979257c3a
xP: implement Readline's M-< and M-> 2022-09-18 01:10:03 +02:00
430968e5d5
xP: make non-connected states more apparent 2022-09-16 03:19:48 +02:00
d5153fe354
xC/xP: implement M-H in the web frontend 2022-09-16 02:52:16 +02:00
6f39aa6615
xP: use the binary protocol for incoming events
And batch event messages together as much as possible.

JSON has proven itself to be really slow
(for example, encoding/json.Marshaler is a slow interface),
and browsers have significant overhead per WS message.

Commands are still sent as JSON, sending them in binary
would be a laborious rewrite without measurable merits.

The xP server now only prints debug output when requested,
because that was another source of major slowdowns.
2022-09-16 00:51:11 +02:00
9cf44aa4dd
xP: speed up log decoding 2022-09-15 02:32:58 +02:00
f89f21a47f
xP: pass all events through one handler
This is a mild clean up.
2022-09-14 06:56:36 +02:00
b2b3093e0e
xP: remove debugging protocol logs from JS 2022-09-14 01:01:10 +02:00
a551e911ab
xP: adjust buffer list iteration and styling
M-a and M-! should iterate, rather than keep jumping back
to the same buffers.

The current item wasn't visible enough,
and it jumped around in my 1.5-scale Firefox.
2022-09-13 03:21:41 +02:00
a61789637a
xP: deal with macOS/Blink for good 2022-09-12 16:45:29 +02:00
8968100a28
xP: improve favicon behaviour
Make it black when disconnected, and orange when the document
is hidden but the current tab is highlighted.
2022-09-12 03:49:29 +02:00
b4ee523628
xP: bind buffer iteration to M-PageUp/PageDown 2022-09-11 21:50:09 +02:00
c3a52b9e4c
xP: indicate hidden buffer lines 2022-09-11 21:50:09 +02:00
96fc12bc4c
xC/xP: send buffer type and server state
Also make PM highlighting behaviour consistent.
2022-09-11 21:50:08 +02:00
36f77e74fb
xP: change the favicon when highlighted 2022-09-11 19:10:41 +02:00
23deca45c9
xP: fix non-ASCII text completion 2022-09-11 19:10:40 +02:00
62773acaa0
xP: beep on highlight
800 Hz seems like it could match a POST beep.
2022-09-11 03:42:08 +02:00