Age | Commit message (Collapse) | Author |
|
|
|
|
|
This means the units are defined in a single place instead of two.
Also removed the verify that we didn't produce a bogus % dimension token
in the Tokenizer, since this has never happened and the parser is not a
tokenizer test suite. :^)
|
|
This corresponds to `<time>` in the grammar.
|
|
This corresponds to `<resolution>` in the grammar.
|
|
This corresponds to `<frequency>` in the grammar.
|
|
This corresponds to `<angle>` in the grammar.
|
|
We were ignoring this in a couple of places.
|
|
|
|
We no longer support this device, so just remove it from the kernel
features list in README.md file.
|
|
This driver is not tested and probably not used on any modern hardware
machine, because it is plugged into the ISA bus and not the PCI bus.
Also, the run script doesn't utilize this device anymore, making it more
hard to test this driver and to ensure it doesn't rot.
|
|
Use an opaque color for SyntaxError in
Syntax Highlighter to avoid transparent errors.
|
|
These will require some tweaking here and elsewhere in LibGUI, to handle
both rendering of the emojis as single glyphs consistently, and faking
key events with multiple code points after selecting one.
|
|
This was getting way too crowded again. Let's just fix the FIXME. :^)
|
|
AQ, AT, CH, DE, DK, EU, FI, FR, GB, GR, HU, IL, IR, NL, NO, PL, RU, SE,
TR, UA, UN, US.
Picked by the location of various fellow Serenity contributors, and some
random ones.
|
|
Rainbow flag, Transgender flag, Pirate flag.
|
|
I'm sure there's a spec for this somewhere, but this is a first working
approximation.
Closes #3315.
|
|
This necessitates switching from passing a single code point to the
callback to passing a non-const Utf8CodePointIterator instead.
Note that the text selection mechanisms in LibGUI and LibWeb don't
handle this properly yet; they still assume that each code point
renders as one glyph. Similarly, width calculations for text widths
don't either, so a single such an emoji will require space for more
than one glyph.
It also doesn't work in LibVT's TerminalWidget, where each code point
is handled and rendered separately, so LibGfx never gets a chance to
check if subsequent code points could result in a combined emoji.
|
|
In the common case of text rendering rather than getting the emoji
bitmap for a fixed number of code points, we don't know how many code
points make one emoji. As far as I can tell, the longest ones are up to
ten code points, so we try to consume all of them and do a lookup during
each iteration, and return the emoji for the longest chain of code
points. Quite basic and definitely room for improvement, but it works!
|
|
Not all emojis are just one code point, so the existing API is not
sufficient: Emoji::emoji_for_code_point(u32).
The file name for such emojis is simply each U+XXXX separated by an
underscore.
|
|
|
|
Allow specifying a custom format string that's being used for each item
instead of hardcoding "{}".
|
|
|
|
Add some fancy stuff like semantic tags, styling and the ladyball to
the default web server pages :^).
|
|
Different thread highlights between widgets lead to different
visual weights between splitters, even when they have the same
width or height. This means some splitters look best at odd
sizes while others even. This sets the default spacing to the
most commonly used, depending on orientation, and adjusts
spacing for a few apps based on the new paint rect.
The most consistent look across apps requires some manual
tweaking occassionally. Knurlheads, use your discretion!
|
|
Splitters could be resized in such an order that all their remaining
children were fixed size, leading to unfillable gaps on resize events.
HackStudio and TextEditor already had logic to handle this edge case,
so this patch factors it into a general solution for all Splitters.
At least one widget is now guaranteed to be resizeable after a child
is removed.
|
|
This gives Splitters more versatility when the right resizee is
intended to remain fixed or be toggled on and off.
|
|
Previously, the rect began on the edge of the first widget instead of
immediately after, causing an overpaint visible on hover.
|
|
1D475, 1D4A6, 1D4A9, 1D4AA, 1D4AB, 1D4AC, 1D4AE, 1D4AF, 1D4B1, 1D4B3,
1D4B4, 1D4B5, 1D4B6, 1D538, 1D539, 1D53B, 1D53C, 1D53D, 1D53E, 1D540,
1D541, 1D542, 1D543, 1D544, 1D546, 1D54A, 1D54B, 1D54C, 1D54D, 1D54E,
1D54F, 1D550, 1D552, 1D553, 1D554, 1D555, 1D556, 1D557, 1D558, 1D559,
1D55A, 1D55B, 1D55C, 1D55D, 1D55E, 1D55F, 1D560, 1D561, 1D562, 1D563,
1D564, 1D565, 1D566, 1D569, 1D56A, 1D56B, 1D56F, 1D58B, 1D58D, 1D58E,
1D58F, 1D590, 1D591, 1D592, 1D594, 1D597, 1D670, 1D671, 1D672, 1D673,
1D674, 1D675, 1D676, 1D677, 1D678, 1D679, 1D67A, 1D67B, 1D67C, 1D67D,
1D67E, 1D67F, 1D680, 1D681, 1D682, 1D683, 1D684, 1D685, 1D686, 1D687,
1D688, 1D689, 1D68A, 1D68B, 1D68C, 1D68D, 1D68E, 1D68F, 1D690, 1D691,
1D692, 1D693, 1D694, 1D695, 1D696, 1D697, 1D698, 1D699, 1D69A, 1D69B,
1D69C, 1D69D, 1D69E, 1D69F, 1D6A0, 1D6A1, 1D6A2, 1D6A3, 1D7D8, 1D7D9,
1D7DA, 1D7DB, 1D7DC, 1D7DD, 1D7DE, 1D7DF, 1D7E0, 1D7E1
https://www.unicode.org/charts/PDF/U1D400.pdf
|
|
1F850, 1F851, 1F852, 1F853, 1F854, 1F855, 1F856, 1F857, 1F858, 1F859,
1F860, 1F861, 1F862, 1F863, 1F864, 1F865, 1F866, 1F867, 1F894, 1F895,
1F896, 1F897, 1F8A0, 1F8A1, 1F8A2, 1F8A3, 1F8A4, 1F8A5, 1F8A6, 1F8A7
https://www.unicode.org/charts/PDF/U1F800.pdf
|
|
1D97, 1E00, 1E02, 1E03, 1E04, 1E05, 1E06, 1E07, 1E38, 1E39,
1E3A, 1E3B, 1E59, 1E5B, 1E61, 1E63, 1E69, 1E6A, 1E6C, 1E6D,
1E6E, 1E6F, 1E8B, 1E8D, 1EFA
https://www.unicode.org/charts/PDF/U1E00.pdf
|
|
|
|
Changed to be 1px smaller
|
|
|
|
Katica10's numbers 0-9 were originally monospaced but became
proportional at some point. Tabular numbers greatly reduce the
jitteriness of widgets that update often like status bars and the
geometry overlay and of course line up properly in apps like
Spreadsheet.
|
|
|
|
This will verify that the signature of the ephemeral key used in the
DHE and ECDHE key exchanges is actually generated by the server.
This verification is done using the first certificate provided by the
server, however the validity of this certificate is not checked here.
Instead this code expects the validity to be checked earlier by
`TLSv12::handle_certificate`.
|
|
This add an implementation for the EMSA-PKCS1-V1_5-ENCODE function from
RFC8017 section 9.2. The verification of this encoding is implemented by
simply encoding the message to be verified, and then comparing the two
encoded string.
The digest info for the different hash function is from RFC8017 section
9.2 notes 1. These byte sequences are actually ASN.1 encoded data,
however these are always constant for a specific hash function and can
be treated as opaque byte sequences.
|
|
NotUnderstood will generate a TLS alert with an InternalError instead of
crashing the RequestServer.
|
|
|
|
|
|
Previously the target result was only a partial completion.
|
|
Previously, the names of declarations where stored as a simple
StringView.
Because of that, we couldn't parse out-of-line function definitions,
which have qualified names.
For example, we couldn't parse the following snippet:
```
void MyClass::foo(){}
```
To fix this, we now store the name of a declaration with a
ASTNode::Name node, which represents a qualified named.
|
|
|
|
This would throw some really weird linker errors, so let's prevent it
from happening instead!
|
|
We were erroneously setting the projection matrix when `GL_MODELVIEW`
was supplied.
|
|
Do not convert to float too early. Additionally, handle some error
cases for the input parameters.
|
|
|
|
Our API still specifies it as a double, but internally we communicate a
float to the rasterizer. Additionally, clamp the value to 0..1 as
described in the spec.
|
|
Our implementation keeps the top-most item on the matrix stacks in a
member variable, so we can always use that instead of considering the
actual stack.
Additionally, the current matrix mode should not influence retrieving
the projection or model view matrix.
|