1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-10 05:17:34 +00:00
Commit graph

11025 commits

Author SHA1 Message Date
Linus Groh
30328d74d0 LibJS: Use MaximumTemporalDurationRoundingIncrement in two more places
This is an editorial change in the Temporal spec.

See: de582e2
2022-06-15 17:49:20 +01:00
Linus Groh
6c82c9df79 LibJS: Fix GetIterator capitalization in Calendar.prototype.fields
This is an editorial change in the Temporal spec.

See: 8538970
2022-06-15 17:49:20 +01:00
Linus Groh
9d2377ff60 LibJS: Only call CanonicalizeTimeZoneName on valid time zone IDs
This is an editorial change in the Temporal spec.

See: 30122e6
2022-06-15 17:49:20 +01:00
Linus Groh
cf61d01140 LibJS: Add a named alias for parseResult.[[Name]] in ToTemporalTimeZone
This is an editorial change in the Temporal spec.

See: 8ddcb07
2022-06-15 17:49:20 +01:00
Linus Groh
71a519831d LibJS: Update to the latest ECMA-402 GetOption and move it into ECMA-262
This is an editorial change in the Temporal spec.

See: 4e79b69
2022-06-15 17:49:20 +01:00
Linus Groh
46d2ac6da4 LibJS: Align Temporal GetOption AO with ECMA-402
This is an editorial change in the Temporal spec.

See: 7b6a264
2022-06-15 17:49:20 +01:00
Linus Groh
c8d84f33b0 LibJS: Remove unused GetStringOrNumberOption operation
This is an editorial change in the Temporal spec.

See: d8b3423
2022-06-15 17:49:20 +01:00
Linus Groh
d1b71cba25 LibJS: Explicitly handle "auto" vs. number fractionalSecondDigits
This is an editorial change in the Temporal spec.

See:
- 4dd6713
- 4c2476b
- f1a839b
- c775ebe
- 0409774

(Changes across multiple commits, that ended up being reverted.)
2022-06-15 17:49:20 +01:00
Linus Groh
cbc4cf057d LibJS: Improve an alias name in ToSecondsStringPrecision
This is an editorial change in the Temporal spec.

See: b75bd9e
2022-06-15 17:49:20 +01:00
Linus Groh
4494be8cf2 LibJS: Inline call to AddISODate in ZonedDateTime.prototype.hoursInDay
This is an editorial change in the Temporal spec.

See: f034239
2022-06-15 17:49:20 +01:00
Linus Groh
810e9e32c9 LibJS: Remove RegulateISODate after BalanceISODate in AddISODate
This is an editorial change in the Temporal spec.

See: 32b22b1
2022-06-15 17:49:20 +01:00
Linus Groh
e96df3b7a7 LibJS: Leverage PrepareTemporalFields in ToTemporalTimeRecord
This is an editorial change in the Temporal spec.

See: b5ba981
2022-06-15 17:49:20 +01:00
Linus Groh
6cc69bbd8e LibJS: Rename ToPartialDuration to ToTemporalPartialDurationRecord
This is an editorial change in the Temporal spec.

See: 0509d41
2022-06-15 17:49:20 +01:00
Linus Groh
6982e53113 LibJS: Leverage ToPartialDuration in ToTemporalDurationRecord
This is an editorial change in the Temporal spec.

See: c3efde0
2022-06-15 17:49:20 +01:00
Linus Groh
9bcd88828f LibJS: Fold ToPartialTime into ToTemporalTimeRecord
This is an editorial change in the Temporal spec.

See: 58e476d
2022-06-15 17:49:20 +01:00
Linus Groh
3e6561c75f LibJS: Fold PreparePartialTemporalFields into PrepareTemporalFields
This is an editorial change in the Temporal spec.

See: 6ed1835
2022-06-15 17:49:20 +01:00
Linus Groh
631f270ac1 LibJS: Add missing conversion to integer values in Calendar AOs
This is an editorial change in the Temporal spec.

See: bfeb523
2022-06-15 17:49:20 +01:00
Linus Groh
03f48056d5 LibJS: Mark various uses of CreateTemporalTime as infallible
These are editorial changes in the Temporal spec.

See:
- dd35d5e
- 1ec6673
- 8c04e3b
- df7a802
- 5fc71ae
- ca305c6
2022-06-15 17:49:20 +01:00
Hediadyoin1
527fed1391 LibGfx: Purge doubles from Painter and use more of AK::Math
The added precision of doubles is most likely not needed here and floats
are usually cheaper than doubles, so lets always stick to them.

This also simplifies some calls to sin+cos to AK:sincos and a call to
atan(1/x) to atan2(1,x) to avoid a division.
2022-06-14 23:00:52 +02:00
Hediadyoin1
9fe0def69b LibGfx: Use less allocations in highdpi_icon_[path,string] creation
Also make it fallible.
2022-06-14 23:00:52 +02:00
Hediadyoin1
69aece9279 LibCore+LibGfx: Pass file-path as StringView 2022-06-14 23:00:52 +02:00
Ferhat Geçdoğan
1fa976722a LibCpp: Support "FIXME" for comments 2022-06-14 19:07:00 +01:00
MacDue
c9b363de56 LibWeb: Fix regression in painting the 'caret' icon on GitHub
This commit reimplements the (normally) 45 degree (depends on
the widths) connection between to adjacent borders. Which is
needed to paint the 'caret' icon seen in a few buttons on GitHub.

The issue of overlapping pixels while painting this has also
been solved for the 45 degree case (the the most likely case,
the other cases only occur of mixed-with borders).
2022-06-14 14:13:18 +01:00
Obinna Ikeh
3d99e83a86 LibJS: Update order of parameters in our is_less_than implementation
This change updates the parameter order of the is_less_than function
signature and calls to match accordingly with the spec
(https://tc39.es/ecma262/#sec-islessthan)
2022-06-13 17:37:11 -07:00
MacDue
9e71fa9aa7 LibWeb: Bring border painting much closer to the spec/other browsers
This commit adds some much nicer border painting, which now supports:

 - Elliptical corners
 - Blending between different border thicknesses, with rounded corners
 - Anti-aliasing

There are some little TODOs left to tackle:

 - Painting the corners with line styles other than solid
 - Blending between colors on the corners (see comments)

The painting requires allocating a small bitmap, that only fits the
corners (so in most cases this is very small).

This bitmap is then cached so for all paints but the first there will
be no further allocations.
2022-06-14 00:25:12 +01:00
MacDue
411a815c3b LibGfx: Add .as_rect() to AntiAliasingPainter::CornerRadius 2022-06-14 00:25:12 +01:00
MacDue
c1798620d9 LibGfx: Support AlphaSubtract blend mode for AA rounded rectangle 2022-06-14 00:25:12 +01:00
Luke Wilde
0805911a93 LibWeb/WebGL: Implement WebGLRenderingContextBase.depthRange() 2022-06-13 21:45:27 +01:00
Luke Wilde
d9ef228c76 LibWeb/WebGL: Implement WebGLRenderingContextBase.lineWidth() 2022-06-13 21:45:27 +01:00
Luke Wilde
a6617e1096 LibWeb/WebGL: Implement error handling and getError() 2022-06-13 21:45:27 +01:00
Luke Wilde
528c7bea03 LibWeb/WebGL: Add WebGLRenderingContextBase.isContextLost() 2022-06-13 21:45:27 +01:00
Luke Wilde
39a212b54f LibWeb/WebGL: Add a bunch of simple forwarding functions
This collection of functions simply check if the context is still
alive, then forward the call to the GL context.
2022-06-13 21:45:27 +01:00
Luke Wilde
aa77c26b60 LibWeb/WebGL: Add extensions APIs to WebGLRenderingContextBase
These currently return nothing, as we don't currently support any WebGL
extensions.
2022-06-13 21:45:27 +01:00
Luke Wilde
076c9772a4 LibWeb: Add ability to present LibGL framebuffer and add clearing 2022-06-13 21:45:27 +01:00
Luke Wilde
68d9d4e247 LibGL: Add ability to retrieve current clear values from GLContext
This allows WebGL to preserve the clear values as it performs an
implicit clear to certain values.
2022-06-13 21:45:27 +01:00
Luke Wilde
58f882200c LibWeb: Add the ability to retrieve a WebGL context from getContext 2022-06-13 21:45:27 +01:00
Luke Wilde
b0c2aee2e4 LibWeb: Introduce the WebGL namespace and add WebGLContextEvent 2022-06-13 21:45:27 +01:00
Luke Wilde
7d1fcb0cb3 LibGPU: Do not load LibSoftGPU via symlink inside Serenity
For unknown reasons, unveil() does not work on symlinks. This prevents
it from being used in an unveil environment such as WebContent.
2022-06-13 21:45:27 +01:00
Linus Groh
698062b831 LibJS: Implement Array.prototype.with() 2022-06-13 20:26:54 +01:00
Linus Groh
ae81793f20 LibJS: Implement Array.prototype.toSpliced() 2022-06-13 20:26:54 +01:00
Linus Groh
ce17c868c0 LibJS: Implement Array.prototype.toSorted() 2022-06-13 20:26:54 +01:00
Linus Groh
e4370b7d82 LibJS: Implement Array.prototype.toReversed() 2022-06-13 20:26:54 +01:00
Linus Groh
e2a5a27302 LibJS: Implement the SortIndexedProperties AO
Also use it in array_merge_sort() instead of inlining the algorithm.
2022-06-13 20:26:54 +01:00
Linus Groh
5ddf0b0c99 LibJS: Implement the CompareArrayElements AO 2022-06-13 20:26:54 +01:00
Linus Groh
aa5d5bf1c8 LibJS: Remove redundant VM& parameter from array_merge_sort()
This is covered by GlobalObject& just fine.
2022-06-13 20:26:54 +01:00
Linus Groh
105c516a78 LibJS: Make array_merge_sort() public 2022-06-13 20:26:54 +01:00
Linus Groh
a4d0a6e1c1 LibJS: Update Array.prototype.group{,ToMap} spec URLs
This is an editorial change in the Array Grouping spec.

See: c51cac5
2022-06-13 20:15:56 +01:00
Linus Groh
013e2df858 LibJS: Rename Array.prototype.groupBy{,ToMap} => group{,ToMap}
This is a normative change in the Array Grouping spec.

See: 0cf4077
2022-06-13 20:05:24 +01:00
Matthias Zimmerman
c10d48b72c AK/ByteBuffer+Everywhere: Handle errors in ByteBuffer::slice() 2022-06-13 15:38:51 +01:00
MacDue
c0486f93d4 LibGfx: Optimize rounded rectangle with all radii 50% to single ellipse
It's a common pattern on the web to draw a circle/ellipse by setting
the border-radius to 50%. Previously the painter would do a lot of
extra work painting and clipping each corner, this now detects that
case and replaces it with a single call to fill_ellipse().
2022-06-13 12:00:39 +01:00