Andreas Kling
f855cbac92
LibWeb: Add simple ad-hoc version of window.postMessage()
...
This allows us to use the wpt.live copy of the ACID3 test, which is kept
updated, unlike the acidtests.org version.
2022-02-26 17:21:40 +01:00
Andreas Kling
fc5e414596
LibWeb: Reorganize window.parent so it looks a bit more like the spec
2022-02-26 16:03:06 +01:00
Arne Elster
835ffbb365
Base: Update audio subsystem documentation
2022-02-26 16:01:26 +01:00
Arne Elster
3cc66b9726
Base: Associate mp3 files with SoundPlayer
...
Also give them the sound icon.
2022-02-26 16:01:26 +01:00
Arne Elster
7223b593cb
LibAudio: Add basic MP3 Decoder
...
This is a basic MPEG-1 layer 3 audio decoder. It supports all
sample rates and stereo modes except for freeformat.
2022-02-26 16:01:26 +01:00
Arne Elster
6a64aabce8
LibDSP: Add IMDCT
...
This implements a generic IMDCT to be used by the MP3 decoder.
2022-02-26 16:01:26 +01:00
Arne Elster
82afbd6593
LibAudio: Add decoding tables for MPEG-1 layer 3 audio
...
All data is taken straight from ISO/IEC 11172-3. These are tables
necessary for decoding MP3.
2022-02-26 16:01:26 +01:00
Arne Elster
a4ba781f23
LibAudio: Add huffman tables for MPEG-1 layer 3 audio
...
The data is taken straight from the ISO/IEC 11172-3 standard. For
decoding efficiency the tables are transformed into trees at compile
time using a constexpr approach. That way no runtime initialization is
necessary and decoding can be faster than searching through tables.
2022-02-26 16:01:26 +01:00
Arne Elster
b7110c2a34
AK: Add constructor to create Span from Array
...
It's a convenience constructor. But it also seems more consistent
to allow a Span being made from both raw and managed arrays.
2022-02-26 16:01:26 +01:00
Arne Elster
6a0cac7cdb
AK: Array can tell its inner type
...
Array should be able to tell the type of the elements it contains.
2022-02-26 16:01:26 +01:00
Karol Kosek
107872db8e
Base: Make U+0126, U+0132, U+0152 and U+0153 wider in Katica Bold 10
...
A follow-up to commit 4cab5bbead
.
2022-02-26 15:32:38 +01:00
electrikmilk
a2704b7cda
Base: Tweak Source Bold
...
Tweak Source Bold to be more consistent with Source Regular.
2022-02-26 15:30:48 +01:00
electrikmilk
a639b635b5
Base: Tweak Source Regular
...
Tweak '&' in Source Regular and add final character of
Latin Extended-A.
2022-02-26 15:30:48 +01:00
electrikmilk
7a5c4e7a1c
Base: Add WASM file type icon
...
Adds 16x16 and 32x32 filetype icons for Web Assembly files.
2022-02-26 15:30:29 +01:00
Sam Atkins
a57128467a
LibWeb: Implement :nth-of-type and :nth-last-of-type selectors :^)
2022-02-26 15:30:24 +01:00
Sam Atkins
2e23cce557
Base: Add :nth-of-type and :nth-last-of-type test pages
2022-02-26 15:30:24 +01:00
Luke Wilde
ad5fb1fd7e
LibWeb: Implement Range.comparePoint
2022-02-26 12:53:32 +01:00
Luke Wilde
62b76e0658
LibWeb: Implement Range.isPointInRange
2022-02-26 12:53:32 +01:00
Luke Wilde
386ee5ab17
LibWeb: Implement Range.intersectsNode
2022-02-26 12:53:32 +01:00
Luke Wilde
4c08757ff9
LibWeb: Add Range.detach
2022-02-26 12:53:32 +01:00
Luke Wilde
8a755726ad
LibWeb: Implement Range.selectNodeContents
2022-02-26 12:53:32 +01:00
Luke Wilde
2b2dbdc74f
LibWeb: Implement Range.collapse
2022-02-26 12:53:32 +01:00
Luke Wilde
dfdc2ddb9e
LibWeb: Implement Range.selectNode
2022-02-26 12:53:32 +01:00
Luke Wilde
a26f1b2ff9
LibWeb: Implement Range.compareBoundaryPoints
2022-02-26 12:53:32 +01:00
Luke Wilde
d73fb7e10f
LibWeb: Implement Range.set{Start,End}{Before,After}
2022-02-26 12:53:32 +01:00
Luke Wilde
46ce50f74e
LibWeb: Make Range.setStart and Range.setEnd spec compliant
...
These functions are way more involved than simply setting their
respective boundary points :^)
2022-02-26 12:53:32 +01:00
Luke Wilde
af3c866898
LibWeb: Make TreeNode::child_count return size_t instead of int
...
The primary benefit of this is that it's unsigned, as you can't have a
negative amount of children. Plus, all the users of child_count expect
it to be size_t.
2022-02-26 12:53:32 +01:00
Luke Wilde
3d44118595
LibWeb: Implement StaticRange
2022-02-26 12:53:32 +01:00
Luke Wilde
a2acda5669
LibWeb: Abstract Range's members into AbstractRange
...
Range's member variables are stored in AbstractRange as per the spec,
as they are also shared with StaticRange.
2022-02-26 12:53:32 +01:00
Luke Wilde
ed76b4238c
LibWeb: Implement the legacy Audio factory function
...
This creates an Audio element with preload="auto" and the given src
attribute.
Required by Cookie Clicker.
2022-02-26 12:18:56 +01:00
Andreas Kling
79ea30bc96
LibWeb: Add HTMLTableSectionElement.rows and HTMLTableRowElement.cells
...
1% progression on ACID3. :^)
2022-02-26 12:18:39 +01:00
Andreas Kling
647576ec13
LibWeb: Fix LibWeb build with Clang
...
Clang doesn't like unused lambda captures.
2022-02-26 12:18:39 +01:00
Filiph Sandström
3c01ef1c23
Spreadsheet: Disable cut/copy if no cell is selected
...
This resolves #12766 which occurred when the user tried to
use either the cut or copy action before selecting a cell.
2022-02-26 10:36:27 +01:00
Andreas Kling
fe67fe3791
LibWeb: Check for valid names in Document.createElement() & friends
...
We now validate that the provided tag names are valid XML tag names,
and otherwise throw an "invalid character" DOM exception.
2% progression on ACID3. :^)
2022-02-26 10:03:07 +01:00
Andreas Kling
8daf603f46
LibWeb: Paint full bitmap font glyphs, even if there's overlap
...
Since we now honor the CSS font-size values when deciding line box
metrics, we sometimes find ourselves needing to paint text with a bitmap
font into a box that isn't large enough for the glyphs.
As it turns out, it looks a bit better if we just grow the paint rect to
fit the glyphs (instead of painting chopped-off glyphs.) So let's just
do that for now.
2022-02-26 09:32:52 +01:00
Andreas Kling
00146005bb
LibWeb: Very basic support for CSS vertical-align: <length>
...
If vertical-align is a length value, we lift each line box fragment that
far from the baseline of the line box.
This is rather messy, and we'll have to improve factoring as we add
support for more alignment types.
2022-02-26 09:30:17 +01:00
Andreas Kling
c8892f64f5
LibWeb: Make InlineLevelIterator not enter into inline-block boxes
...
The purpose of "entering" a box is to collect box model metrics that
apply to content fragments within the box. However, inline-blocks are
special, in that their inner content does not directly participate in
the inline formatting context outside it.
2022-02-26 09:27:20 +01:00
Andreas Kling
3ca26c7a7a
LibWeb: Fix InlineLevelIterator not exiting box model metric nodes
...
We were neglecting to pop nodes from the box model stack. The metrics
were already being zeroed out when used, but let's not grow the stack
needlessly.
2022-02-26 09:25:24 +01:00
Andreas Kling
797f51e122
LibWeb: Add border box top/bottom metrics to line box fragments
...
This will allow us to support more kinds of vertical alignment.
2022-02-26 09:24:40 +01:00
Andreas Kling
8b369bf7bd
LibWeb: Remove unused LineBox::ends_with_forced_line_break()
2022-02-26 08:33:45 +01:00
Andreas Kling
784dbdef8e
LibWeb: Make DOM inspector overlay rects a little nicer
...
Instead of just the outline, fill them with some semi-transparent color.
Also add tag name, ID, classes and coordinates to the little tooltip.
Finally, use the border box instead of the context box for metrics,
same as other browsers.
2022-02-26 08:25:46 +01:00
Andreas Kling
c59ab7cc8b
LibWeb: Make StyleValue absolutization non-destructive
...
Instead of awkwardly visiting and mutating lengths inside StyleValues,
we now simply create a new StyleValue instead.
This fixes an issue where inherited relative lengths could get
absolutized using a parent as reference, and then not having the correct
values when used in a child context.
2022-02-26 01:35:25 +01:00
Andreas Kling
1cdbd377e7
LibWeb: Add vertical-align to ComputedValues
2022-02-26 01:35:06 +01:00
Andreas Kling
c9f4759329
LibWeb: Use CSS font-size when computing text fragment content height
2022-02-26 01:10:43 +01:00
Itamar
72ba072768
LibDesktop: Rename LaunchServerConnection=>ConnectionToLaunchServer
...
This was done with CLion's automatic rename feature.
2022-02-25 22:35:12 +01:00
Itamar
2f61d32f99
LibGUI: Rename ClipboardServerConnection=>ConnectionToClipboardServer
...
This was done with CLion's automatic rename feature.
2022-02-25 22:35:12 +01:00
Itamar
2bc8e32af0
LibGUI: Rename NotificationServerConnection
...
Rename NotificationServerConnection=>ConnectionToNotificationServer.
This was done with CLion's automatic rename feature.
2022-02-25 22:35:12 +01:00
Itamar
493f604dba
SpiceAgent: Rename ClipboardServerConnection
...
Rename ClipboardServerConnection=>ConnectionToClipboardServer.
This was done with CLion's automatic rename feature.
2022-02-25 22:35:12 +01:00
Itamar
75ee77f8a1
HackStudio: Rename HackStudio::ServerConnection=>ConnectionToServer
...
Also renames ServerConnectionWrapper=>ConnectionToServerWrapper
and ServerConnectionInstances=>ConnectionToServerInstances
This was done with CLion's automatic rename feature.
2022-02-25 22:35:12 +01:00
Itamar
935d023967
Userland: Rename WindowServerConnection=>ConnectionToWindowServer
...
This was done with CLion's automatic rename feature.
2022-02-25 22:35:12 +01:00