Idan Horowitz
ad8e2f481d
LibWeb: Expose the MouseEvent::{clientX, clientY} attributes
...
These provide the cursor coordinate within the viewport at which the
event occurred (as opposed to the page relative coordinates exposed via
offsetX, offsetY).
2021-04-15 20:22:08 +02:00
Idan Horowitz
815934a95d
LibWeb: Expose the HTMLElement::{offsetLeft, offsetTop} attributes
...
These describe the border box of an element relative to their parent.
2021-04-15 20:22:08 +02:00
Idan Horowitz
c5769a7033
LibWeb: Check radius sign in CanvasRenderingContext2D::{arc, ellipse}
...
As required by the specification: 'If either radiusX or radiusY are
negative, then throw an "IndexSizeError" DOMException.'
2021-04-15 20:22:08 +02:00
Idan Horowitz
00114ab01d
LibWeb: Add a naive implemention of CanvasRenderingContext2D::fill_text
...
This doesnt actually account for several unimplemented attributes
(like ltr/rtl, alignment, etc) yet, so this should be expanded in
the future.
2021-04-15 20:22:08 +02:00
Idan Horowitz
a257ef0f35
LibWeb: Add support for optional double arguments with no default value
...
This is implemented by emitting AK::Optional, similar to optional
boolean arguments.
2021-04-15 20:22:08 +02:00
Idan Horowitz
0072581693
LibWeb: Emit optional boolean variable definition in WrapperGenerator
...
The removed if in this commit was inside the else branch of an if with
the same condition, making it a no-op, as well as breaking optional
booleans.
2021-04-15 20:22:08 +02:00
AnotherTest
dbc5b05b7a
LibM: Use fptan/fpatan instead of approximating atan2/tan
...
The previous versions were very inaccurate, and sometimes wrong.
2021-04-15 17:50:16 +02:00
AnotherTest
801daf47f0
LibGfx+LibWeb: Wire up CanvasRenderingContext2D.ellipse()
...
Note that this is *extremely* naive, and not very good at being correct.
2021-04-15 17:50:16 +02:00
AnotherTest
6c05d6d370
LibGfx: Add a Path::arc_to() helper
...
...That just uses elliptical_arc_to().
2021-04-15 17:50:16 +02:00
AnotherTest
598a6d46c7
LibGfxDemo: Add an elliptic arc next to the Bezier curves
...
Because why not.
2021-04-15 17:50:16 +02:00
AnotherTest
1ea466661f
LibGfx+LibWeb: Move out the EllipticArcTo() logic into Path
...
At its previous state, the interface allowed invalid "ellipses" to be
specified, instead of doing that, simply use the parameters that SVG
uses :^)
2021-04-15 17:50:16 +02:00
AnotherTest
cb04a441cf
LibGfx: Un-recursive-ify the Bezier and Elliptic curve implementations
2021-04-15 17:50:16 +02:00
Liav A
ea1b71af69
Documentation: Describe how to use the iPXE bootloader for network boot
...
This method seems useful for bare-metal debugging.
2021-04-15 17:49:40 +02:00
Brian Gianforcaro
265e155181
Meta: Use basename for serenity.sh help message
...
I have this symlinked into ~/bin, when looking at the help/usage
it would previously print the fully qualified path to the script
making the help very difficult to read.
2021-04-15 17:47:09 +02:00
Gunnar Beutner
e932129e5a
Ports: Use HTTPS when accessing ftpmirror.gnu.org
...
Unlike what the name might suggest ftpmirror.gnu.org isn't
accessible via FTP.
2021-04-15 17:06:59 +02:00
Gunnar Beutner
46d8104012
Ports: Fix download URL for libiconv
2021-04-15 17:06:47 +02:00
Tom
d10b95622b
WindowServer: Fix window shadow rendering glitch
...
Some small window shadows were missing a small section of the top/bottom
and/or left/right center shadow.
2021-04-15 10:22:04 +02:00
Nicholas-Baron
7b502d113b
Everywhere: Add "free" warnings
...
The following warnings do not occur anywhere in the codebase and so
enabling them is effectivly free:
* `-Wcast-align`
* `-Wduplicated-cond`
* `-Wformat=2`
* `-Wlogical-op`
* `-Wmisleading-indentation`
* `-Wunused`
These are taken as a strict subset of the list in #5487 .
2021-04-15 10:21:45 +02:00
Timothy Flynn
0f47a23e8e
LibWeb: Set Cookie header on remaining resource requests
2021-04-15 09:46:49 +02:00
Timothy Flynn
0cacc52990
LibWeb: Set Cookie header on <img> and <object> resource requests
...
This required passing a reference to the owning HTML*Element to
ImageLoader, the same way that CSSLoader has a reference to its owner.
2021-04-15 09:46:49 +02:00
Timothy Flynn
347838a240
LibWeb: Set Cookie header on <script> resource requests
...
This required changing the load_sync API to take a LoadRequest instead
of just a URL. Since HTMLScriptElement was the only (non-test) user of
this API, it didn't seem useful to instead add an overload of load_sync
for this.
2021-04-15 09:46:49 +02:00
Timothy Flynn
3cc5286565
LibWeb: Helper for creating load requests with a Cookie header
...
Instead of all interested parties needing to write out the code to get
the cookie value for a load request, add a static helper to do it in
one location.
2021-04-15 09:46:49 +02:00
Timothy Flynn
5c6aa408ed
Browser: Implement spec-compliant cookie retrieval
...
https://tools.ietf.org/html/rfc6265#section-5.4
2021-04-15 09:46:49 +02:00
Timothy Flynn
82c53178fa
Base: Update cookie test page to include unretrievable cookies
...
"Unretrievable" meaning from JavaScript via document.cookie. They are
settable though and may be viewed with the Dump Cookies command in the
Browser.
2021-04-15 09:46:49 +02:00
Linus Groh
726d631527
LibJS: Use references in CallExpression::compute_this_and_callee()
...
This has the nice side effect of giving us a decent error message for
something like undefined.foo() - another useless "ToObject on null or
undefined" gone. :^)
Also turn the various ternary operators into two separate if branches,
they don't really share that much.
2021-04-15 09:45:20 +02:00
Gunnar Beutner
94bc886593
Ports: Make sure we're building libvorbis before SDL2_mixer
2021-04-15 09:41:32 +02:00
Idan Horowitz
01e1466682
Meta: Include queued checks in the discord notification's checks filter
...
The previous filter would filter out queued checks as well, which would
result in erroneous build success notifications going out if github
started the discord notifications workflow before all other workflows.
2021-04-15 09:40:46 +02:00
Gunnar Beutner
b3eb55ec9a
LibPthread: Implement sem_getvalue()
2021-04-15 09:31:49 +02:00
Gunnar Beutner
a44ddc4793
LibPthread: Don't hold sem->mtx after sem_wait()/sem_trywait()
...
Semaphores with values greater than one didn't work because whoever
called sem_wait() first held the semaphore's mutex until a matching
sem_post() call.
Other callers then wouldn't be able to acquire the semaphore even
if the semaphore's value was still greater than zero at that point.
2021-04-15 09:31:49 +02:00
Gunnar Beutner
32794e00a1
LibPthread: Improve error handling for the semaphore functions
...
This patch makes sure we're propagating errors to the caller.
2021-04-15 09:31:49 +02:00
Gunnar Beutner
98403eccb0
LibPthread: Ensure we're not overflowing the semaphore's value
2021-04-15 09:31:49 +02:00
Brendan Coles
62ced35346
Ports: Use ftpmirror.gnu.org mirror server for GNU ports
2021-04-15 09:30:42 +02:00
Nicholas-Baron
b2c952a6fa
Base: Add documentation for get_process_name
...
`set_process_name` has a getter pair (which it links to); lets document it.
Solves #6007 .
2021-04-15 09:01:11 +02:00
Timothy Flynn
b6093ae2e3
LibJS: Implement String.prototype.substr according to the spec
...
Fixes #6325
The JavaScript on the HTML Spec site that caused the crash is:
window.location.hash.substr(1)
Of course, window.location.hash can be the empty string. The spec allows
for calling substr(1) on an empty string, but our partial implementation
wasn't handling it properly.
2021-04-15 08:38:19 +02:00
Idan Horowitz
bc9cd55da4
Browser+LibWeb: Add support for spoofing the browser user agent
...
This is helpful when testing certain sites like twitter.com which
display differently based on the user agent.
2021-04-14 23:06:32 +02:00
Idan Horowitz
aab99d5945
LibWeb: Implement the CanvasRenderingContext2D::rect path method
...
This method adds a rectangle to the current 2D path.
2021-04-14 23:01:23 +02:00
Idan Horowitz
4c0937225e
LibWeb: Make CanvasRenderingContext2D::fill's fillRule argument optional
...
As defined by the specification (and used by the website i am testing):
interface mixin CanvasDrawPath {
undefined fill(optional CanvasFillRule fillRule = "nonzero");
}
2021-04-14 23:01:23 +02:00
Idan Horowitz
0a580ef891
LibWeb: Request repaint on canvas path finalizaiton via fill/stroke
...
Since these were not requesting a repaint the drawn path was not being
rendered until a repaint was forced in some other way (window resize).
2021-04-14 23:01:23 +02:00
Idan Horowitz
b7c3f046f7
LibGfx: initialize winding number to 1 for NonZero winding rules
...
Since we first check the winding number and only then update it, fills
for "Rectangle-like" (made up of 2 parallel segments) paths would draw
nothing when filled by NonZero winding rules. (Fix by alimpfard)
2021-04-14 23:01:23 +02:00
Gunnar Beutner
d96354f58e
Ports: Remove obsolete patch for the oksh port
...
The patch is not necessary anymore and breaks the build
now that LibC has isblank.
2021-04-14 22:43:53 +02:00
Gunnar Beutner
f62f6c2b37
Ports: Add missing dependency for the gnupg port
2021-04-14 22:43:27 +02:00
Gunnar Beutner
2ef7e757ad
Ports: Enable audio for the Super-Mario port
...
According to @Baitinq the original port crashed with audio enabled.
I suspect that this was because the SDL2 headers didn't match between
the host and target system. Now that we properly use target's headers
this is no longer an issue so I enabled audio:
https://www.youtube.com/watch?v=ZTFvrcpZjY8
2021-04-14 22:43:13 +02:00
Linus Groh
51a5427419
LibJS: Improve Reference::get() TypeError message for nullish base
...
"ToObject on null or undefined" is useless.
"Cannot get property 'foo' of undefined" isn't.
2021-04-14 22:37:12 +02:00
Linus Groh
73a92c79b8
LibJS: Use reference in MemberExpression::execute()
...
This was basically duplicated code.
2021-04-14 22:37:12 +02:00
daniel eliad
b96c205c98
Tests: fixed test-crypto wrong argument order that failed -
...
run-tests-and-shutdown.sh
2021-04-14 22:33:50 +02:00
Brian Gianforcaro
a973b22359
Kernel: Suppress maybe-uninitialized' warning s_syscall_table in gcc-10.3.0
2021-04-14 21:49:54 +02:00
Brian Gianforcaro
8d70bead20
Build: Update toolchain include path to gcc 10.3.0
2021-04-14 21:49:54 +02:00
Brian Gianforcaro
73fab93ef5
Toolchain: Update to the latest gcc release 10.3.0
...
10.3.0 is a bugfix release, with 178 bugs fixed.
See: https://gcc.gnu.org/bugzilla/buglist.cgi?bug_status=RESOLVED&resolution=FIXED&target_milestone=10.3
2021-04-14 21:49:54 +02:00
Brian Gianforcaro
5d59affc18
Toolchain: Update binutils to version to latest 2.36.1 release
...
This updates binutils to the latest release. It looks like some
lines where shuffled around, so I had to fixup out patch to
apply cleanly again.
2021-04-14 21:49:54 +02:00
Brendan Coles
d65e74bffa
Ports: Add emu2 DOS emulator
2021-04-14 21:48:55 +02:00