kleines Filmröllchen
4ec599aae5
AK: Make DisjointChunks support FixedArray
...
This extracts the shatter_chunk logic, because it needs to be different
for FixedArray.
2022-02-27 00:11:14 +03:30
kleines Filmröllchen
ee9eef1fa8
AK: Make DisjointChunk::append move the new chunk
...
Previously, although we were taking a moved chunk, we still copied it
into our chunk list. This makes DisjointChunk compatible with containers
that don't have a copy constructor but a move constructor.
2022-02-27 00:11:14 +03:30
kleines Filmröllchen
6e5bf7ac6f
AK: Export DisjointSpans into the global namespace
...
I think we just forgot when we added it.
2022-02-27 00:11:14 +03:30
kleines Filmröllchen
75eb5e7984
AK: Add at() indexing methods to FixedArray
2022-02-27 00:11:14 +03:30
kleines Filmröllchen
09df8f812a
AK: Allow creating a FixedArray from an initializer list
2022-02-27 00:11:14 +03:30
kleines Filmröllchen
65f34504e9
AK: Add FixedArray::is_empty()
...
This also exists on Vector, and although it's less needed here, it's
perfectly reasonable to have.
2022-02-27 00:11:14 +03:30
Jelle Raaijmakers
8bf0e04c16
Kernel: Allow setting AC'97 sample rate during playback
...
The Qemu AC'97 device stops its PCM channel's DMA engine when it is
running and the sample rate is changed. We now make sure the DMA engine
is restarted after changing the sample rate, allowing you to e.g. run
`asctl set r 22050` during `aplay` playback.
2022-02-26 20:23:15 +01:00
Jelle Raaijmakers
e2891e9aa4
Kernel: Clean up AC'97 driver code style
...
* Remove braces from single-line conditionals
* Use aggregate initialization style for member variables
2022-02-26 20:23:15 +01:00
electrikmilk
ee64279958
Base: Add various flag emojis
...
Adds flags for Bahamas, England, Romania, Bangladesh, Estonia,
Scotland, Belgium, Gabon, South Africa, Benin, Guinea,
South Korea, India, Spain, Brazil, Ireland, Thailand,
Bulgaria, Japan, Triangular, Canada, Latvia, Turkey, Chad,
Lithuania, Venezuela, Luxembourg, Wales, Chile, Monaco, China,
Nigeria, Yemen, Czechia, North Korea, Egypt, and Peru.
Adds black, white, and checkered flags.
Improved Norway and Germany flags.
2022-02-26 20:22:41 +01:00
kleines Filmröllchen
084347becc
Utilities+Meta: Check icons in markdown-check
...
We use the environment variable SERENITY_SOURCE_DIR to resolve and check
icon links. This is a bit inconvenient as SERENITY_SOURCE_DIR needs to
be set correctly before invoking the markdown checker, but as we use it
through the check-markdown script anyways, I think it's not a problem.
2022-02-26 20:05:06 +02:00
kleines Filmröllchen
4ef1bedc38
Utilities: Check help:// manpage links in markdown-check
2022-02-26 20:05:06 +02:00
kleines Filmröllchen
7399520e9a
Utilities: Perform most markdown-check link checking with URLs
...
This should be much more robust against weirdly-formatted links that are
still valid URLs, additionally, future URL checkers can immediately
take advantage of the already-existing URL object.
Note that not all markdown links are valid URLs or paths, and that that
is intentional (e.g. only fragments, relative links etc.). We don't just
fail when something is not a URL.
2022-02-26 20:05:06 +02:00
kleines Filmröllchen
9902e71f99
Utilities: Allow link checking in markdown-check to fail during visit
...
With a special flag, we can now invalidate the links early on.
2022-02-26 20:05:06 +02:00
kleines Filmröllchen
112642a262
Utilities: Partially revert 9ec2b37
...
This removed checks for missing manpages, which we now need again as the
manpages are checked again.
2022-02-26 20:05:06 +02:00
Lenny Maiorani
4e6898c5cc
LibMain: Update header includes
2022-02-26 17:49:58 +00:00
Lenny Maiorani
6bd880c404
LibCrypto: Simplify and move CRC32 table to cpp file
...
CRC32 table is generated at compile-time and put into a static
variable in the header file. This can be moved to be a function
instead of a class, be moved to the `.cpp` file` and generated as an
array instead of a class which only implements `operator[]`.
2022-02-26 17:49:47 +00:00
Luke Wilde
0568229d81
Lagom/Fuzzers: Add MP3 fuzzer
2022-02-26 19:31:16 +02:00
kleines Filmröllchen
50dc9a7be7
LibAudio: Add an array conversion transitional API to Buffer
...
Of course, Buffer is going to be removed very soon, but much of the
WavLoader behavior still depends on it. Therefore, this intermediary
API will allow adopting the Loader infrastructure without digging too
deep into the WavLoader legacy code. That's for later :^)
2022-02-26 17:57:55 +01:00
kleines Filmröllchen
63d9ec8e94
LibAudio: Allow resampling from any array-like type
2022-02-26 17:57:55 +01:00
kleines Filmröllchen
5d01db3493
LibAudio: Split Buffer.{h, cpp} into three files
...
The Buffer files had contained both the ResampleHelper and the
sample format utilities. Because the Buffer class (and its file) is
going to be deleted soon, this commit separates those two things into
their own files.
2022-02-26 17:57:55 +01:00
Andreas Kling
262488ea33
LibWeb: Validate the qualified name in createDocumentType()
...
1% progression on ACID3. :^)
2022-02-26 17:26:37 +01:00
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