Age | Commit message (Collapse) | Author |
|
This API is only used by userland and it uses infallible Strings, so
let's just ifdef it out of the Kernel.
|
|
This let's us propagate allocation errors from this API.
|
|
These are only used by userland, and are implemented using infallible
Strings, so let's just ifdef them out of the Kernel.
|
|
This API is only used by userland, and it uses infallible Strings, so
let's just ifdef it out of the Kernel.
|
|
These APIs return Strings, which are OOM-infallibe, and as such, not
appropriate for Kernel use. Since these APIs are only used by userland
at the moment, we can just ifdef them out of the Kernel.
|
|
This also let's us use a KString instead of a string when we're in the
Kernel, which opens the path for OOM-failure propagation.
|
|
This also let's us use a KString instead of a string when we're in the
Kernel, which opens the path for OOM-failure propagation.
|
|
This will allow us to eventually propagate allocation failure.
|
|
These are only used by Userland and contain infallible String
allocations, so let's just ifdef them out of the Kernel.
|
|
These use infallible Strings and are not actually used in the Kernel,
so let's just ifdef them out for now.
|
|
|
|
This let's us avoid heap allocations.
|
|
This let's us avoid the infallible String allocations.
|
|
We can completely avoid the string allocation by using string_view().
|
|
This lets us safely handle allocation failure.
|
|
UUID::to_string() always returns a string of length 36, so this check
can't fail.
|
|
This lets us safely handle allocation failure.
|
|
This lets us safely handle allocation failure.
|
|
This check does not seem to provide a lot of value, and it is pretty
annoying, so let's just disable it for now.
|
|
This had me confused for a while, but I am not smart enough today to
actually fix it properly. :^)
|
|
When converting this code to use Optional, I accidentally left in the
initialization, so it *always* had a value, and always created a Length
from it. Oops.
|
|
Everything functions fine without it. :^)
|
|
This fixes hit testing on SVG elements, with no obvious downsides.
|
|
This makes the selected-in-the-inspector outline appear in the right
place. We take the stroke-width into account when producing the
bounding box, which makes the fit nice and snug. :^)
|
|
This replaces the unused width() and height() methods. The size now
defaults to 100% by 100% as in the spec.
|
|
|
|
|
|
We no longer include all the things, so each generated IDL file only
depends on the things it actually needs now.
A possible downside is that all IDL files have to explicitly import
their dependencies.
Note that non-IDL dependencies still remain and are injected into all
generated files, this can be resolved later if desired by allowing IDL
files to import headers.
|
|
|
|
We were doing a number of things wrong:
- Switching to the parent context in the else meant that we couldn't
break out of the else section anymore
- We were not validating the resulting values, and so the stack was
in a relatively unknown state after 'else'
This commit fixes these issues :^)
|
|
This makes us capable of loading non-utf8 content via XHR.
|
|
We had a very basic implementation of TextEncoder, let's add a
TextDecoder next to that :^)
|
|
|
|
|
|
...instead of silently ignoring the failure in the constructor.
|
|
Object.get() does not return empty values, this was causing the
constructed memory object to have a maximum of 0, which failed silently
in the constructor.
|
|
|
|
|
|
This enables, for example, clicking on the check box, dragging the mouse
over to the label, releasing the mouse to act as a click on the check
box.
This was implemented for labels / labelable nodes with the "for"
attribute already. This implements the same for labelable nodes that are
inside the label.
|
|
This should prevent a build issue caused by a potential
conflicting zstd installation on M1 Mac.
This was manifested in a linker error when building
the GNU toolchain:
```
Undefined symbols for architecture arm64:
[gcc/build] "_ZSTD_compress", referenced from:
```
|
|
|
|
`Request::stream_into_impl` would call `stream.write_or_error` with a
zero length buffer when EOF was reached. However, the
`Core::Stream::Stream::write_or_error` implementation verifies that the
buffer lenght is non-zero, resulting in a crash. With this change the
zero length buffer is never written to the stream.
|
|
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."
|
|
2400-2426 https://www.unicode.org/charts/PDF/U2400.pdf
|
|
|
|
|
|
There isn't too much of an effective difference here other than that the
BCP 47 data contains some aliases we would otherwise not handle.
|
|
BCP 47 will be the single source of truth for known calendar and number
system keywords, and their aliases (e.g. "gregory" is an alias for
"gregorian"). Move the generation of available keywords to where we
parse the BCP 47 data, so that hard-coded aliases may be removed from
other generators.
|
|
We have a fair amount of hard-coded keywords / aliases that can now be
replaced with real data from BCP 47. As a result, the also changes the
awkward way we were previously generating keys. Before, we were more or
less generating keywords as a CSV list of keys, e.g. for the "nu" key,
we'd generate "latn,arab,grek" (ordered by locale preference). Then at
runtime, we'd split on the comma. We now just generate spans of keywords
directly.
|
|
This package was originally meant to be included in CLDR version 40, but
was missed in their release scripts. This has been resolved:
https://unicode-org.atlassian.net/browse/CLDR-15158
Unfortunately, the CLDR was re-released with the same version number. So
to bust the build's CLDR cache, change the "version" used to detect that
we need to redownload the CLDR.
|