summary refs log tree commit diff
path: root/ui.c
AgeCommit message (Collapse)Author
2019-02-23Add C-n and C-p key bindings to switch windowsCurtis McEnroe
2019-02-23Call def_prog_mode after termNoFlowCurtis McEnroe
So that the settings get restored after /url or /man.
2019-02-22Move IRC formatting reset to C-sCurtis McEnroe
Opens C-n for window switching.
2019-02-22Disable terminal flow controlCurtis McEnroe
This opens up C-o, C-q and C-s for key bindings without C-v.
2019-02-22Bind up and down arrows to scrollCurtis McEnroe
Honestly it's kind of weird that IRC clients usually use these for input history.
2019-02-22Remove topic TODOCurtis McEnroe
I played around with it and it doesn't look right unless there is only one channel listed in the status.
2019-02-22Update status line after scrolling and term eventsCurtis 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.
2019-02-21Remove ROT13Curtis McEnroe
It's just not convenient when it can only do the whole line...
2019-01-25Avoid unused variable warnings with getyxCurtis McEnroe
2018-12-16Add M-? to apply ROT13Curtis McEnroe
2018-12-15Underline own nickCurtis McEnroe
2018-12-08Add uint typedefCurtis McEnroe
2018-12-05Rename verbose to rawCurtis McEnroe
And change the format of the sticky tag names again.
2018-12-04Revert half-working reconnecting stuffCurtis McEnroe
2018-12-03Call uiShow at init so that TermFocus gets setCurtis McEnroe
2018-12-02Fix UI resume on /urlCurtis McEnroe
2018-12-01Crudely handle reconnecting after suspendCurtis McEnroe
2018-11-29Show unread count in term titleCurtis McEnroe
Also render status line with just spaces. Looks much cleaner this way.
2018-11-27Add M-m key to insert a blank lineCurtis McEnroe
For manually marking the log.
2018-10-28Add notification with notify-sendCurtis McEnroe
2018-10-22Rework status lineCurtis McEnroe
2018-09-14Factor out uiPrompt to call on nick changeCurtis McEnroe
2018-09-14Check width of entire next word including codesCurtis McEnroe
This results in a tiny bit of premature wrapping for color codes, but that isn't a problem.
2018-09-14Remove word handling from formatParseCurtis McEnroe
2018-09-13Preview with nick in input windowCurtis McEnroe
2018-09-13Avoid uninitialized x in uiReadCurtis McEnroe
2018-09-13Add IRCDefault to colors enumCurtis 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-12Use formatParse split to position input cursorCurtis McEnroe
2018-09-12Factor out IRC formatting parsingCurtis McEnroe
2018-09-05Preserve scroll position when new lines appearCurtis McEnroe
2018-09-02Use PascalCase for constantsCurtis McEnroe
Begone underscores.
2018-09-02Add status indicatorsCurtis McEnroe
2018-09-02Mark views when they are createdCurtis McEnroe
2018-08-20Avoid unportable iswascii(3)Curtis McEnroe
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-13Set title to tag nameCurtis 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-12Avoid setting mark if switching to the same viewCurtis McEnroe
2018-08-12Disable focus tracking in uiHideCurtis McEnroe
Most significantly so that the sequences don't end up on screen during a /url.
2018-08-11Add shift-{left,right} for single-line scrollingCurtis McEnroe
2018-08-11Leave room for topic when creating viewCurtis McEnroe
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-10Become multi-channelCurtis McEnroe
There's a lot of UI missing for it, but it technically works.
2018-08-09Add URL detection, listing and openingCurtis McEnroe
Might also add /copy, like /open.
2018-08-08Use blank line as unread markerCurtis McEnroe
2018-08-08Add markers as lines to the logCurtis McEnroe
2018-08-08Factor out line editing to edit.cCurtis McEnroe