paper: make all source lines have the same minimum height
Empty source lines in paper and coal themes used to have smaller height than
every other line (because of the way line numbers are shown and because they
are using smaller font). This wasn't very noticeable before the follow lines
functionality was added, but after that just using the follow-lines button to
select a block of code with empty lines would demonstrate the fact that empty
lines didn't have enough height - there were white "gaps" in the selection
block.
Since this problem occurs when lines don't have any content inside, let's
create a pseudo-element (it's unselectable because of that) which still doesn't
have any content, but fills up empty lines to 100% of their height because of
display: inline-block. This is the most natural way to solve this annoyance
that I've found so far.
Hardcoding height isn't useful because we can have wrapped lines, in which case
multiple lines of text need to fit into a single <span>.
Setting min-height or line-height doesn't remove the gaps when viewed in
Chromium.
--- a/mercurial/templates/static/style-paper.css Sun Apr 08 20:53:07 2018 +0800
+++ b/mercurial/templates/static/style-paper.css Wed Apr 04 13:14:48 2018 +0800
@@ -308,6 +308,11 @@
float: left;
}
+.sourcelines > span:after {
+ content: '';
+ display: inline-block;
+}
+
.sourcelines > span:target, tr:target td {
background-color: #bfdfff;
}