Make VimR tab colors match 1:1 with colorscheme. #1072
Merged
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.
Background:
See issue #1069 - Themes with Hi groups using "links" to other Hi groups do not propagate colors to SwiftUI properly.
Description:
This pull requests further expands upon my previous PR, more closely setting the VimR tab colors to match the colors specified by the vim colors scheme.
Not only does it pull in the
Tabline
color definition, but it also pulls inTablineFill
for the tabbar background, andTablineSel
to highlight the current selected tab.I've also tweaked the default colors selected when VimR is not set to use vim's color scheme, and have tested in both light and dark mode.
Please look over my PR and let me know if there are any mistakes that could lead to stability problems. So far
Additional Change:
I noticed a TODO: regarding the default color scheme when VimR is set to use the native Coacoa colors, and added a call to NSColor.Name() to select the user's chosen accent color from system settings.
One limitation of this change is that the VimR tab UI does not pick up on changes between Dark Mode and Light Mode. I considered polling the plist settings, but I would like to implement that with an event listener to prevent slow polling threads in the background. I am still doing research on how to do this.
For now, use either the Vim color scheme, or re-open the VimR window when changing the system them.