Commit graph

22 commits

Author SHA1 Message Date
xse
2f6efb56de components/composer: handle drag and drop file upload 2024-09-29 15:21:56 +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
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
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
3dc98ec797 Convert remaining simple quotes to double quotes 2022-02-26 09:54:31 +01:00
Noelle Leigh
0b59cf92b9 Display persistant command input on server buffer
This commit changes the composer to not be read-only on the server
buffer, which tells the user that they can send commands from that view.

On the server buffer, the placeholder is changed to
"Type a command (see /help)", which indicates to the user that this buffer
only accepts commands, and gives them a hint for how to learn what
commands are available.

Implements: https://todo.sr.ht/~emersion/gamja/38
2021-12-21 10:44:24 +01:00
Simon Ser
d18cbbafb0 composer: focus on paste 2021-07-21 19:48:09 +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
095006e961 Don't focus composer on key press if modifier is also pressed 2021-06-22 17:25:24 +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
8972130252 s/var/let/ 2021-06-10 18:11:11 +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
958b6bf120 Set enterkeyhint in composer 2021-05-31 18:16:49 +02:00
Drew DeVault
6491f7e915 composer: turn off browser autocomplete 2021-05-28 08:53:37 +02:00
Simon Ser
80e0175d36 Make all resource paths relative
Closes: https://todo.sr.ht/~emersion/gamja/17
2021-03-02 22:46:48 +01:00
Simon Ser
2941dc0076
Fix TypeError in Composer.focus
Uncaught (in promise) TypeError: this.textInput.current is null
2020-07-13 09:45:30 +02:00
Simon Ser
20be67503b
Add basic autocompletion 2020-06-29 12:36:17 +02:00
Simon Ser
1b0ac4339f
Listen to input evbent in composer
Avoids having the pending text removed when re-rendering the component.
2020-06-26 14:57:34 +02:00
Simon Ser
b449ace4b4
Switch to react
Under the hood, preact is used to reduce dependency size. We still don't
have a build stage, so htm is used instead of JSX.
2020-06-24 14:37:49 +02:00