Commit Graph

70 Commits (91ad4c416345b32e90c02b3f25581a1c41e00053)

Author SHA1 Message Date
June McEnroe b373a5c091 Rename cache{Prefix,Substr} to cache{Complete,Search} 2022-07-30 18:55:09 -04:00
June McEnroe 14a6486b9b Switch to cache interfaces 2022-07-30 18:47:26 -04:00
Christian Kellermann ee82e5d376 Always refresh the screen with ^L
This patch adds an explicit wrefresh call. Under some conditions
just flagging the window for redraw does not trigger a redraw and
the user has no other means to force redrawing of a window.

Without this patch resizing the window would sometimes result in
an empty chat window with no way to redraw it.

Tested under uxterm and st on OpenBSD.
2022-03-09 21:18:05 -05:00
June McEnroe 4e8ba236b6 Add missing unistd.h include in input.c 2022-02-23 12:50:31 -05:00
June McEnroe 78ff548b93 Save input buffer contents 2022-02-20 16:57:11 -05:00
June McEnroe da1b943fcc Share a cut buffer between all edit buffers 2022-02-20 16:20:33 -05:00
June McEnroe e39bba1a8a Move mbs out of struct Edit, use a global buffer
This saves 4K in the edit buffers, not to mention all the heap
allocations for the separate mbs buffers!

There might be a way to be more clever about capacities, but I don't
think it's worth it.
2022-02-20 15:42:24 -05:00
June McEnroe cca9688cca Clear edit buffer before running command
Otherwise a command that switches windows will update the status
line while the edit buffer still has input "pending", showing an
indicator.
2022-02-20 14:58:33 -05:00
June McEnroe a281bdc5e1 Show indicator in status when window has pending input 2022-02-20 14:49:17 -05:00
June McEnroe 012fd67539 Use separate edit buffers for each ID 2022-02-20 14:37:51 -05:00
June McEnroe 5c4ecb5a0f Reimplement tab complete 2022-02-19 22:02:49 -05:00
June McEnroe da8deff767 Handle errors from editFn, etc. 2022-02-19 20:44:36 -05:00
June McEnroe 143fa1b509 Reimplement text macros 2022-02-19 20:38:12 -05:00
June McEnroe 073cebec7a Factor out input handling to input.c 2022-02-19 20:20:19 -05:00
C. McEnroe 15ff2a470e Remove legacy code 2020-02-11 02:45:39 -05:00
Curtis McEnroe c5718dd82f
Add restricted mode 2019-09-16 16:57:50 -04:00
Curtis McEnroe 3d1f7d8065
Add /list 2019-07-02 22:12:07 -04:00
Curtis McEnroe fe38982b43
Clean up input parameter handling 2019-07-02 19:34:19 -04:00
Curtis McEnroe fdbc6f2fda
Split /raw and /quote
/quote is common in other IRC clients.
2019-07-02 18:57:57 -04:00
Curtis McEnroe 426be32b1d
Add optional key to /join 2019-07-02 18:33:45 -04:00
Curtis McEnroe d8cffb8ae7
Add /move command 2019-02-27 00:17:59 -05:00
Curtis McEnroe 4cda410b57
Move nick and tag coloring to color.c 2019-02-25 23:10:40 -05:00
Curtis McEnroe 6b97c59756
Add color to tags 2019-02-25 16:02:41 -05:00
Curtis McEnroe 35705c9eeb
Use first word of params in input commands
Prevents anything weird from happening when tab-completing, which
inserts a space.
2019-02-23 12:44:20 -05:00
Curtis McEnroe c06a457461
Add C-n and C-p key bindings to switch windows 2019-02-23 12:24:39 -05:00
Curtis McEnroe 8bdd1578c7
Add /znc command
Only because ZNC tells you to use it and expects it to work.
2019-02-22 16:07:32 -05:00
Curtis McEnroe 2c07d50415
Reorganize input.c 2019-02-22 15:49:55 -05:00
Curtis McEnroe e20c64d5d7
Reorganize UI code for the umpteenth time
It's actually in a good state now, I think.
2019-02-22 14:11:50 -05:00
Curtis McEnroe f3db938ded
Replace "view" with "window"
I think originally I didn't want to use the same word as curses WINDOW
but it's really much clearer for the user if they're just called
windows. UI code probably needs yet another rewrite though. Still feels
messy.
2019-02-21 23:17:40 -05:00
Curtis McEnroe e8063c35ec
Typedef function types, not pointers 2018-12-30 01:53:30 -05:00
Curtis McEnroe e84c36a0bd
Factor out ircQuit 2018-12-14 16:43:49 -05:00
Curtis McEnroe 9d7e0726c2
Add /raw command 2018-12-05 15:04:34 -05:00
Curtis McEnroe 0d165fadfa
Send input errors to the current tag 2018-12-05 14:53:16 -05:00
Curtis McEnroe 2797ac8abf
Rename verbose to raw
And change the format of the sticky tag names again.
2018-12-05 14:46:34 -05:00
Curtis McEnroe 638be4e775
Show error if disconnected unintentionally 2018-12-04 15:56:10 -05:00
Curtis McEnroe e01b03c963
Revert half-working reconnecting stuff 2018-12-04 14:58:14 -05:00
Curtis McEnroe 5c17393d2b
Crudely handle reconnecting after suspend 2018-12-01 22:05:37 -05:00
Curtis McEnroe d7659376d1
Add basic log replay 2018-11-29 18:20:24 -05:00
Curtis McEnroe e4eb97e512
Add /whois 2018-11-29 05:40:26 -05:00
Curtis McEnroe 85ea911b79
Rename project catgirl
This simplifies things.
2018-11-27 19:13:27 -05:00
Curtis McEnroe 36ec6cf258
Use const char *argv[] signatures
C is really weird about this stuff, but this makes more sense to me.
2018-10-28 02:14:22 -04:00
Curtis McEnroe ede343431f
Never send PRIVMSG to TagStatus or TagVerbose 2018-09-13 22:10:14 -04:00
Curtis McEnroe 3d9f808a60
Add /help equivalent to /man 2018-09-11 16:10:49 -04:00
Curtis McEnroe 068cff107e
Add urlOpenMatch 2018-09-11 14:36:30 -04:00
Curtis McEnroe 86e80edfcd
Add /man command 2018-09-10 19:18:26 -04:00
Curtis McEnroe 240f9ebf84
Use PascalCase for constants
Begone underscores.
2018-09-02 16:13:00 -04:00
Curtis McEnroe e3a344854f
Accept unique prefixes of commands 2018-08-18 20:17:08 -04:00
Curtis McEnroe c1e0128803
Fix /query error handling
Evidence this should be factored somehow else so the extra check is
unnecessary.
2018-08-18 20:14:05 -04:00
Curtis McEnroe e29f67dde5
Alias /n to /view n where n is a number 2018-08-18 18:31:51 -04:00
Curtis McEnroe 38fc42f03d
Add UI "heat" for status/messages/pings
Bring back the beeps! Allow pings from notices. Also factor out
dequoting of part/quit messages.
2018-08-17 14:00:08 -04:00