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