1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 17:47:36 +00:00
Commit graph

36228 commits

Author SHA1 Message Date
Lenny Maiorani
dd05934539 Shell: Use default constructors/destructors
https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#cother-other-default-operation-rules

"The compiler is more likely to get the default semantics right and
you cannot implement these functions better than the compiler."
2022-03-24 20:09:26 -07:00
Lenny Maiorani
0b7baa7e5a Services: Use default constructors/destructors
https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#cother-other-default-operation-rules

"The compiler is more likely to get the default semantics right and
you cannot implement these functions better than the compiler."
2022-03-24 20:09:26 -07:00
Daniel Bertalan
5550905c00 Toolchain: Update gdb to 11.2 2022-03-24 20:08:08 -07:00
Ben Wiederhake
d13283f952 LibVT: Fix tooltip condition, properly reset when tooltip not available 2022-03-25 02:33:23 +01:00
Lady Gegga
16e4f9d9da Base: Add Supplemental Arrows-C glyphs to font tengchaH Regular 12
1F800-1F807, 1F810-1F813, 1F820-1F823, 1F850-1F859, 1F860-1F867,
1F880-1F887
https://www.unicode.org/charts/PDF/U1F800.pdf
2022-03-24 23:38:00 +00:00
Lady Gegga
14b5db2864 Base: Add Transport and Map Symbols to font tengchaH Regular 12
1F6C8 https://www.unicode.org/charts/PDF/U1F680.pdf
2022-03-24 23:38:00 +00:00
Lady Gegga
d71dab4cd4 Base: Add Miscellaneous Symbols and Pictographs to font tengchaH
1F5DA, 1F5DB, 1F4A3, 1F4A4
https://www.unicode.org/charts/PDF/U1F300.pdf
2022-03-24 23:38:00 +00:00
Lady Gegga
8919d5c7db Base: Add Dingbats to font tengchaH Regular 12
2700, 2702, 2710-2712, 2714, 2716, 275B-2761, 2772, 2773
https://www.unicode.org/charts/PDF/U2700.pdf
2022-03-24 23:38:00 +00:00
Lady Gegga
a015d538ea Base: Add Control Pictures to font tengchaH Regular 12
2400-2426 https://www.unicode.org/charts/PDF/U2400.pdf
2022-03-24 23:38:00 +00:00
Lady Gegga
2ee4ea84db Base: Add General Punctuation characters to font tengchaH Regular 12
2012-2015, 2018-201F, 2030, 2031, 203C, 203D, 2042, 2045-2049, 2051,
204B-204F, 2055
https://www.unicode.org/charts/PDF/U2000.pdf
2022-03-24 23:38:00 +00:00
Lady Gegga
935816d17b Base: Add Georgian characters to font tengchaH Regular 12
10B2-10BE https://www.unicode.org/charts/PDF/U10A0.pdf
2022-03-24 23:38:00 +00:00
Lady Gegga
bd697a24b7 Base: Add Latin Extended-A characters to font tengchaH Regular 12
0100-0101, 010C, 010D, 0126, 0132, 0133, 0141-0144, 0160, 0161,
0179, 017B, 017D, 017F
https://www.unicode.org/charts/PDF/U0100.pdf
2022-03-24 23:38:00 +00:00
Lady Gegga
82e6c2d43c Base: Add C1 Controls and Latin-1 Supplement chars to font tengchaH
00B5, 00B6, 00B8, 00BC-00BE, 00C7, 00CA-00CF, 00D1-00D5, 00D9-00E3,
00E7-00EA, 00EC-00EF, 00F0-00F5, 00F8-00FB, 00FE
https://www.unicode.org/charts/PDF/U0080.pdf
2022-03-24 23:38:00 +00:00
Idan Horowitz
45c5fcf5cb Meta: Disable KASLR when debugging the kernel with GDB
This lets GDB resolve the kernel symbols correctly.
2022-03-24 23:36:56 +00:00
Idan Horowitz
f9c6f37bac Kernel: Add a 'disable_kaslr' kernel command line parameter
This parameter can be used to disable the KASLR mechanism.
2022-03-24 23:36:56 +00:00
Idan Horowitz
54a12d34eb Kernel: Move {strnlen, strcmp, memcmp, strncmp, strstr} to MiniStdLib
This lets the Prekernel also use these simple (and standalone)
C functions.
2022-03-24 23:36:56 +00:00
Andreas Kling
c02e6f991a LibWeb: Improve vertical margin collapse between adjacent blocks
Collect all the preceding block-level siblings whose vertical margins
are collapsible. Both margin-top and margin-bottom now (previously,
we only considered the margin-bottom of siblings.)

Use the right margin in part-negative and all-negative situations.
2022-03-25 00:10:09 +01:00
circl
aac4382cd1 Ports: Add icon to The Powder Toy port 2022-03-24 22:31:02 +00:00
circl
f1c28ea3e0 Ports: Add required Meson cross-files to The Powder Toy port
Previously the port would not build, as these files were mistakenly
ignored by Git.
2022-03-24 22:31:02 +00:00
Andreas Kling
c2d7ef057d WebContent: Remove accidentally committed unveil() call 2022-03-24 23:17:49 +01:00
Andreas Kling
6cffabef03 LibWeb: Support CSS vertical-align values "top" and "bottom" 2022-03-24 22:57:01 +01:00
Andreas Kling
195ef5e26f LibWeb: Bring CSS line-height implementation closer to spec
We now distribute the line-height evenly between the space above and
below inline-level boxes. This noticeably improves our baseline
alignment in many cases.

Note that the "vertical-align: <length>" case is quite awkward, as the
extra height added by the offset baseline must count towards the line
box height.

There's a lot of room for improvement here, but this makes the buckets
container on Acid3 show up in the right place, with the right size.
2022-03-24 22:52:44 +01:00
Timothy Flynn
430559ea51 LibWeb: Weakly store a reference to the Window object in timer tasks
This prevents a crash when refreshing or navigating away from the Acid3
test page while it is actively running.
2022-03-24 21:37:58 +01:00
Idan Horowitz
02004b7055 LibWeb: Handle XML MIME types in HTMLObjectElement 2022-03-24 21:37:49 +01:00
Idan Horowitz
215432c3e8 LibWeb: Discard ObjectElement's nested browsing context on image load 2022-03-24 21:37:49 +01:00
Idan Horowitz
f82d4d001d LibWeb: Implement getSVGDocument() for BrowsingContextContainer
Specifically HTMLIFrameElement and HTMLObjectElement. HTMLEmbedElement
will gain it automatically once it's also converted to inherit from
BrowsingContextContainer.
2022-03-24 21:37:49 +01:00
Idan Horowitz
fed11e625e LibWeb: Expose contentDocument on HTMLObjectElement 2022-03-24 21:37:49 +01:00
Idan Horowitz
5626e1b324 LibWeb: Rename PARSER_DEBUG => HTML_PARSER_DEBUG
Since this macro was created we gained a couple more parsers in the
system :^)
2022-03-24 21:37:49 +01:00
Sam Atkins
1499d2421e LibWeb: Align text shadows the same way we align text
This makes the shadow line-up correctly on Acid3. :^)
2022-03-24 20:30:26 +01:00
Sahan Fernando
05f9146af8 3DFileViewer: Enable smooth shading in viewer + teapot model 2022-03-24 19:22:27 +01:00
Andreas Kling
ed1576eea8 LibWeb: Align baseline of inline-block with non-zero top border/padding
We were not adjusting the fragment baseline for inline-blocks that had
some border and/or padding size up top.
2022-03-24 18:30:56 +01:00
Andreas Kling
54ffe79d70 LibWeb: Fix missing line-height & font-size on some anonymous blocks
Make sure we use the create_anonymous_wrapper() helper function whenever
wrapping inline content in anonymous wrapper blocks. We were forgetting
to do this in one case, which led to some wrapper blocks having 0px
font-size and line-height.
2022-03-24 18:30:56 +01:00
Andreas Kling
d5aca1c6c4 LibWeb: Treate SVG paintable coordinates as relative to <svg> element
Normally, paintable coordinates are relative to the nearest containing
block, but in the SVG case, since <svg> doesn't form a containing block,
we have to specialize the computation of SVGPaintable::absolute_rect().
2022-03-24 18:14:01 +01:00
Andreas Kling
88aca4c996 LibWeb: Add fast-path for absolute lengths in Length::to_px()
Absolute lengths can be resolved immediately without looking up the
viewport size, etc.
2022-03-24 18:14:01 +01:00
Andreas Kling
30b1772eeb LibWeb: Rename "specified_style" to "computed_style" in Layout::Node
The specified style was turned into computed style long before it
arrived here (StyleComputer took care of that.)
2022-03-24 18:14:01 +01:00
Andreas Kling
40af665a49 LibWeb: Add margin box helpers to Layout::FormattingState 2022-03-24 18:14:01 +01:00
Andreas Kling
329f06d59a LibWeb: Add Layout::Node::line_height()
This allows you to call line_height() on any layout node, even if it's a
text node (in which case we'll ask the parent node for its line-height.)
2022-03-24 18:14:01 +01:00
Sam Atkins
c914e732d2 LibWeb+Base: Fix An+B of foo parsing
When I wrote the An+B parser, it was guaranteed to have no
non-whitespace tokens after it. This is no longer true with the `of
foo` syntax, so this patch corrects the logic when there is no `+B`
segment.

This makes this case shown on Twitter work correctly. :^)
https://twitter.com/simevidas/status/1506657566012678151
2022-03-24 18:08:45 +01:00
Sam Atkins
5aad32b504 LibWeb: Implement text-shadow painting
We don't yet take the spread-distance parameter into account, since we
don't have a way to "inflate" the text shadow.

Also, I'm not sure if we need to inflate the shadow slightly anyway.
Blurred shadows of our pixel fonts seem very faint. Part of this is
that a blur of < 3px does nothing, see #13231, but even so we might
want to inflate it a little.
2022-03-24 18:08:34 +01:00
Sam Atkins
03daa4653f LibWeb: Parse and compute text-shadow property 2022-03-24 18:08:34 +01:00
Sam Atkins
4d8789b173 Base: Add a text-shadow test page 2022-03-24 18:08:34 +01:00
Sam Atkins
f078bb8294 LibWeb: Implement disallowing inset when parsing shadows
`text-shadow` does not support this, so this way we can still use the
same parsing code.

It's OK that we still assign a ShadowPlacement value to the
ShadowStyleValue, since it will just get ignored when painting
text-shadows, but if it appears in the property value then that is a
syntax error.
2022-03-24 18:08:34 +01:00
Sam Atkins
1094654adc LbWeb: Rename BoxShadowFoo => ShadowFoo
The `text-shadow` property is almost identical to `box-shadow`:
> Values are interpreted as for box-shadow [CSS-BACKGROUNDS-3].
> (But note that the inset keyword are not allowed.)

So, let's use the same data structures and parsing code for both. :^)
2022-03-24 18:08:34 +01:00
Timothy Flynn
f9367a5fdb LibWeb: Ignore application objects until we can support them
The HTMLObjectElement spec is set up to ignore application/octet-stream
MIME types only. For this to work, we need to implement the MIME type
sniffing algorithm so that all unknown MIME types become mapped to the
application/octet-stream type. Until then, ignore all application/ MIME
types as we won't be able to display them anyways.
2022-03-24 16:56:38 +01:00
Timothy Flynn
d744f04a03 LibWeb: Discard an object's nested browsing contexts when falling back 2022-03-24 16:56:38 +01:00
Timothy Flynn
23915d0977 LibWeb: Implement falling back early to an object's child representation 2022-03-24 16:56:38 +01:00
Timothy Flynn
a002c8156b LibWeb: Conditionally update an object's children when its state changes
We should only update the object children of an object when the parent's
representation changes to/from falling back to its children.
2022-03-24 16:56:38 +01:00
Timothy Flynn
f11d6e137c LibWeb: Correctly handle unknown MIME types in HTMLObjectElement
We were using the literal string "unknown" as the unknown MIME type,
which caused us to treat the object as a nested browsing context (as
"unknown" does not start with "image/"). Use an Optional instead to
prevent this mishap.
2022-03-24 16:56:38 +01:00
Jelle Raaijmakers
c0513999d6 LibGfx: TrueTypeFont cleanup
No functional changes.
2022-03-24 16:53:21 +01:00
Jelle Raaijmakers
b17fb76ace LibGfx: Implement TTF kerning tables
If a TTF font contains kern tables, we now read through all of them and
apply any kerning values to character rendering.
2022-03-24 16:53:21 +01:00