Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adjust colors of AvalonEdit built-in highlightings for dark themes #3138

Merged

Conversation

ltrzesniewski
Copy link
Contributor

Fixes #3137

Problem

Built-in highlightings of AvalonEdit are meant to be used on a white background, and look wrong on a dark one.

Solution

  • Any comments on the approach taken, its consistency with surrounding code, etc.

    This PR changes the colors provided by a highlighting, unless that highlighting comes from ILSpy itself.

    The color is tweaked in the HSL color space, inverting the luminosity and desaturating the color a bit (as recommended by Material Design). A few coefficients are applied, I chose them after trying various solutions, as I couldn't find a known algorithm for switching a color for use in dark mode anywhere.

  • Which part of this PR is most in need of attention/improvement?

    I basically made up the color adjustment function out of nowhere. If you know something better, I'd like to know.

  • At least one test covering the code changed

    This only contains UI changes.

Here are a few examples:

PowerShell:

image

image

JSON:

image

Turns out, HTML is handled by ILSpy's highlighting for XML.

@siegfriedpammer siegfriedpammer merged commit b629cdb into icsharpcode:master Feb 26, 2024
5 checks passed
@siegfriedpammer
Copy link
Member

Thank you for fixing this!

@ltrzesniewski ltrzesniewski deleted the dark-theme-highlighting branch February 26, 2024 18:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

pwsh scripts hard to see in dark theme
2 participants