about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorbptato <nincsnevem662@gmail.com>2024-03-26 01:49:13 +0100
committerbptato <nincsnevem662@gmail.com>2024-03-26 01:49:13 +0100
commit7a04d25fea9720bba9812d6912e8258c06ae2f80 (patch)
treeaab04156982ef5e7cd2f92b85fecd7c953194e2f /src
parent62491fab5e6034f97b8ce71f1eb8454fd2adca29 (diff)
downloadchawan-7a04d25fea9720bba9812d6912e8258c06ae2f80.tar.gz
layout: also round line height for painting backgrounds
it's pointless to do otherwise, and results in inconsistencies between
line positioning and background coloring.
Diffstat (limited to 'src')
-rw-r--r--src/layout/engine.nim5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/layout/engine.nim b/src/layout/engine.nim
index 8a56f110..48284408 100644
--- a/src/layout/engine.nim
+++ b/src/layout/engine.nim
@@ -436,9 +436,6 @@ proc verticalAlignLine(ictx: var InlineContext) =
     ictx.currentLine.minHeight = max(ictx.currentLine.minHeight,
       atom.offset.y - offsety + atom.size.h)
 
-  # Set the line height that will be used for painting to new top edge + old
-  # bottom edge, and set the baseline.
-  ictx.currentLine.line.height = max(bottomEdge + marginTop, lineheight)
   ictx.currentLine.baseline = baseline
   #TODO this does not really work with rounding :/
   ictx.currentLine.baseline += ictx.currentLine.paddingTop
@@ -453,6 +450,8 @@ proc verticalAlignLine(ictx: var InlineContext) =
   # we would swallow hard line breaks with <br>.)
   if lineheight >= ch and ictx.currentLine.size.h < ch:
     ictx.currentLine.size.h = ch
+  # Set the line height to size.h.
+  ictx.currentLine.line.height = ictx.currentLine.size.h
 
 proc putAtom(state: var LineBoxState; atom: InlineAtom;
     iastate: InlineAtomState; fragment: InlineFragment) =
ss='oid'>8b59083 ^
b9da4b0 ^
3aad922 ^
c47da14 ^




b9da4b0 ^
439e15d ^
3399650 ^
1076f2b

439e15d ^
1076f2b

8b59083 ^







650a1fb ^
8b59083 ^








1076f2b
da2bbd3 ^

3399650 ^
a05beb6 ^
896f08d ^
a05beb6 ^
2e836ec ^

a05beb6 ^
66da153 ^
1076f2b
1076f2b
1076f2b
efa7e51 ^
1076f2b

3aad922 ^



66da153 ^
3aad922 ^

366d81e ^


c47da14 ^

366d81e ^

1076f2b
9cd686c ^
3399650 ^
1076f2b
da2bbd3 ^
66da153 ^

1076f2b
9cd686c ^

39677ec ^
650a1fb ^
efa7e51 ^
39677ec ^
9cd686c ^

6458d72 ^
9cd686c ^
439e15d ^
0053620 ^
3399650 ^



d6e0e6e ^
7fe717c ^
a05beb6 ^
2a0fc84 ^
8b59083 ^
dfd84f9 ^
c47da14 ^





66da153 ^

efa7e51 ^

2e836ec ^
3399650 ^
d7e1708 ^
9cd686c ^
9e8b325 ^




d7e1708 ^
3399650 ^
dfd84f9 ^
439e15d ^
44f2e8b ^
d7e1708 ^
16c67f3 ^
b9da4b0 ^


9e8b325 ^



c47da14 ^
9e8b325 ^
8b59083 ^
d7e1708 ^
8b59083 ^



c47da14 ^
8b59083 ^
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162