Deduplicate unproto frames and theme support#43
Open
elafargue wants to merge 6 commits intomfncooper:mainfrom
Open
Deduplicate unproto frames and theme support#43elafargue wants to merge 6 commits intomfncooper:mainfrom
elafargue wants to merge 6 commits intomfncooper:mainfrom
Conversation
a different color. Allow aborting a connection when connecting instead of just timing out.
Example themes are included in `themes`
This supports ANSI 16 color and 24bit colors, and overrides the default inbound text colors (obviously) when color codes are present. As far as I can tell the only way to do this is to do manual parsing of the color codes because the underlying library doesn't support this natively. The end result is not so bad imho.
at the end, the last incoming line was not displayed. This commit fixes that behavior.
display the data as early as possible without waiting for a newline (CR, LF, etc). This is especially needed in case color escape sequence are broken across frames.
that if one instance is heard as repeated (with a "*"), we don't accidentally set all the instances as repeated, only the correct ones.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR implements two features: deduplication of unproto "UI" frames, and themeing support:
Deduplication
This adds an option to avoid printing out identical frames coming in from different repeaters/nodes, but show the repeated nodes in a different color so that the user can easily tell there were multiple frames. This is configurable in "Setup".
The new behavior, when enabled, works like this:
This makes UI "chat" a lot more pleasant, and does not lose any information - you actually get a much better visual indication of the nodes or repeaters you heard directly.
Note that this only works entirely on recent (1.8) versions of Direwolf where there is a proper indication of path with "" next to node callsigns as they repeat the frame. Older versions will work fine but won't be able to colorize the "heard" repeaters because Direwolf didn't add the "" until recently.
Themes
A simple change to enable theming the UI, along with a couple of examples of how to use it (as well a documentation update).
Color support
The last addition is support for color output whenever a BBS is sending terminal color codes.
Other
Also smaller change: allow pressing "Disconnect" while a connection is in progress.
This is all tested and working.