summary refs log tree commit diff
path: root/handle.c
AgeCommit message (Collapse)Author
2019-02-25Move nick and tag coloring to color.cCurtis McEnroe
2019-02-25Add color to tagsCurtis McEnroe
2019-02-22Reorganize UI code for the umpteenth timeCurtis McEnroe
It's actually in a good state now, I think.
2019-02-21Replace "view" with "window"Curtis McEnroe
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.
2018-12-30Typedef function types, not pointersCurtis McEnroe
2018-12-16Move base64 to string.cCurtis McEnroe
2018-12-15Underline own nickCurtis McEnroe
2018-12-04Implement SASL PLAIN authenticationCurtis McEnroe
2018-12-04Show error if disconnected unintentionallyCurtis McEnroe
2018-12-04Revert half-working reconnecting stuffCurtis McEnroe
2018-12-03Check nick to determine if is selfCurtis McEnroe
I forgot that usernames aren't unique for a minute there.
2018-12-03Ignore ~ username prefixesCurtis McEnroe
This simplifies a lot.
2018-12-02Send automated messages to TagStatus with UIColdCurtis McEnroe
2018-11-29Add basic log replayCurtis McEnroe
2018-11-29Handle no such nick errorCurtis McEnroe
2018-11-29Add /whoisCurtis McEnroe
2018-09-14Factor out uiPrompt to call on nick changeCurtis McEnroe
2018-09-13Move color selection to format.cCurtis McEnroe
2018-09-13Rewrite UI againCurtis McEnroe
The persistent topic is gone and the status line is now at the top. The status formatting still needs to be reworked. I also want to try showing the nick in the input window so it really looks like your next message.
2018-09-11Don't render every PM as a pingCurtis McEnroe
2018-09-02Use PascalCase for constantsCurtis McEnroe
Begone underscores.
2018-09-02Treat all direct messages as pingsCurtis McEnroe
2018-09-02Simplify invalid nick messagesCurtis McEnroe
2018-08-20Remove FIXME for tracking tags in WHO handlingCurtis McEnroe
I don't think it'll ever be a problem.
2018-08-20Don't clobber tab order on /whoCurtis McEnroe
2018-08-20Fix missing stdint.h includeCurtis McEnroe
2018-08-17Add loggingCurtis McEnroe
The reason logFmt takes a timestamp as a parameter is to support IRCv3 server-time in the future to accurately log the znc buffer. Hopefully.
2018-08-17Add UI "heat" for status/messages/pingsCurtis McEnroe
Bring back the beeps! Allow pings from notices. Also factor out dequoting of part/quit messages.
2018-08-14Detect pings in ACTIONsCurtis McEnroe
2018-08-14Keep hashing '\0' until color is not blackCurtis McEnroe
Actually uses the rest of the hash state this way.
2018-08-13Don't ping selfCurtis McEnroe
2018-08-13Detect pings anywhere in messageCurtis McEnroe
2018-08-13Add /query, /part and /closeCurtis McEnroe
Closing a channel before parting it is a bit weird, but if I send a PART on /close, it would get reopened again to show the part message.
2018-08-11Rework UI code for multi-channelCurtis McEnroe
Tags are now permanently assigned (and I'm betting on never needing more than 256 of them) and the UI maps tags to a linked list of views for easy reordering and removal. Currently, views can only be added. Views don't have a topic window until they need one. All UI code wants to be functional reactive. Beeping is temporarily removed until message priorities (status, message, ping) can be added to the UI. At that point spawning notify-send should also be possible. Priorities will also help with unnecessary markers, which will not appear for status messages. The tab system is now used to send QUIT and NICK messages to all the relevant tags. Verbose output now goes to its own tag, and sending to it sends raw IRC. IRC colors are now listed in chat.h and handler functions for numeric replies have real names. The color algorithm now uses a real hash function for hopefully better results. QUIT, PART and KICK messages are scanned for URLs.
2018-08-11Fix isSelf user checkingCurtis McEnroe
Other users with the same username are not self. The fun effect of this was that I could tab-complete "june_" but not "june".
2018-08-10Become multi-channelCurtis McEnroe
There's a lot of UI missing for it, but it technically works.
2018-08-10Remove unnecessary va_endCurtis McEnroe
va_end must be called before the function returns, but errx is noreturn.
2018-08-10Rename chan to joinCurtis McEnroe
In preparation for multi-channel?
2018-08-09Color brackets around nicksCurtis McEnroe
Also switch self-brackets to () since [] can appear in nicks.
2018-08-09Fix 432 handler paramsCurtis McEnroe
2018-08-09Replace shift with a great variadic functionCurtis McEnroe
I am disappointed in the lack of compiler attributes for type-checking variadic functions.
2018-08-09Only tabTouch nick if not selfCurtis McEnroe
2018-08-09Add URL detection, listing and openingCurtis McEnroe
Might also add /copy, like /open.
2018-08-08Distinguish self with square bracketsCurtis McEnroe
2018-08-08Color own messages 15Curtis McEnroe
My own settings have "white" slightly darker than the default color, so this helps to distinguish my own messages.
2018-08-07Highlight and beep pingsCurtis McEnroe
2018-08-07Populate tab-complete listCurtis McEnroe
2018-08-07Fix /me formatting side-effectsCurtis McEnroe
NEVER pass side-effects to a macro.
2018-08-07Hack clang into checking uiFmt format stringsCurtis McEnroe
2018-08-07Handle PART and QUIT without messagesCurtis McEnroe