Browse Source

LibHTML: Make "white-space: pre" kinda work

This is not ideal, as refusing to break lines will easily overflow the
containing block, and we have no way of dealing with overflow yet.
But as long as you provide enough width, it does look nice. :^)
Andreas Kling 5 years ago
parent
commit
f908a2718a
1 changed files with 6 additions and 2 deletions
  1. 6 2
      Libraries/LibHTML/Layout/LayoutText.cpp

+ 6 - 2
Libraries/LibHTML/Layout/LayoutText.cpp

@@ -157,10 +157,14 @@ void LayoutText::for_each_source_line(Callback callback) const
     };
 
     for (auto it = view.begin(); it != view.end();) {
-        if (*it == '\n')
+        bool did_commit = false;
+        if (*it == '\n') {
             commit_line(it);
+            did_commit = true;
+        }
         ++it;
-        start_of_line = it;
+        if (did_commit)
+            start_of_line = it;
     }
     if (start_of_line != view.end())
         commit_line(view.end());