Make WebView stylesheets more maintainable and consistent #1290
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.
The primary goal of this PR is to leverage the
@import
feature in CSS (available from API 21 WebView) to greatly reduce duplication in stylesheets used in WebViews.With these changes, the dark and print variants of the stylesheets will derive from the light variant using
@import
, and then override only the parts that differ. This will make maintainance a lot easier and helps keep the styles consistent: in fact, before this PR prettify (code preview) stylesheets had several differences between dark and light themes, but now no more:While I was at it, I've also taken the opportunity to fix #1274 (here's how repro looks like after the fix) and tweak code background colors in Markdown CSS to make it more similar to the one rendered in TextViews.
Last but not least, I've found a neat CSS trick to make Markdown tables horizontally scrollable and prevent them from overflowing.