Commit Graph

45085 Commits

Author SHA1 Message Date
kleines Filmröllchen
a9fe80550d LibManual: Add SubsectionNode 2023-01-02 06:15:13 -07:00
kleines Filmröllchen
2aa374eba1 Help+LibManual: Move URL handling to LibManual 2023-01-02 06:15:13 -07:00
kleines Filmröllchen
a676cf658b Utilities: Resolve manpage paths more robustly in markdown-check
The path is now relative to the Serenity source directory, and later
parts of the URL path are not simply discarded. This allows links into
subsection man pages to be checked correctly.
2023-01-02 06:15:13 -07:00
kleines Filmröllchen
44e4a38535 LibManual: Allow overriding a Node's path calculation
This is necessary for subclassing SectionNode, but generally allows more
code to rely on path() virtual dispatch always finding the correct path
regardless of the static type.
2023-01-02 06:15:13 -07:00
kleines Filmröllchen
aa5e574872 Help+LibManual: Make the children accessor fallible
This is convenient for the section node which might compute children
on the fly.
2023-01-02 06:15:13 -07:00
kleines Filmröllchen
437d3ca0ea Help: Use array size instead of sizeof to determine number of sections
This was a relict when the sections were still a help-internal array.
2023-01-02 06:15:13 -07:00
kleines Filmröllchen
1ec0548158 Help: Only toggle open/close for SectionNodes
The responsible code was actually casting everything to a SectionNode
pointer, violating type safety all over the place and leading to
frequent crashes. I'm surprised this was not exhibited before; I guess
my recent changes made this bug surface.
2023-01-02 06:15:13 -07:00
Liav A
cf3b75e2e6 Kernel: Propagate properly errors from PCI IDE Controller initialization 2023-01-02 04:59:23 -07:00
Liav A
735aa01b58 Kernel: Remove stale detect_disks method from PCI IDE controller class 2023-01-02 04:59:23 -07:00
kleines Filmröllchen
b8e4e473e8 Base: Add 8 new emoji and improve consistency on one more
- 👐 U+1F450 Open Hands
- 🙌 U+1F64C Raising Hands is modified to match 👐 and other hand emoji.
-  U+270A Raised Fist
- ✴️ U+2734 Eight-Pointed Star
- ❇️ U+2747 Sparkle
-  U+274E Cross Mark Button
- ❤️‍🔥 U+2764 U+200D U+1F525 Heart on Fire
- 〰️ U+3030 Wavy Dash
2023-01-01 18:42:29 -05:00
Jelle Raaijmakers
ee4039caf8 LibGL: Stop unnecessarily casting to float
If the `GLContext`'s internal state uses a `float`, it makes no sense
casting to and from `double`s.
2023-01-01 23:33:50 +01:00
Jelle Raaijmakers
474f9e9c69 LibGL: Implement GL_TEXTURE_ENV_COLOR
This sets a constant color in the texture's environment for the fixed
function pipeline.
2023-01-01 23:33:26 +01:00
networkException
9b50d74df2 LibGUI: Fix wrong copyright header email for recent OpacitySlider change
This patch fixes the wrong email domain being used for the copyright
header change in f828bf6479
2023-01-01 19:03:03 +01:00
martinfalisse
20313ae8a8 LibWeb: Use TextTop and TextBottom property for VerticalAlign
If text-top or text-bottom are given as values for the vertical-align
property, actually use them and calculate the respective position of
the element.

The actual calculations done (using the font_size, descent, etc.) are
not exactly how I imagined them when reading the spec, but the results
seem acceptable when compared to other browsers.
2023-01-01 18:38:01 +01:00
martinfalisse
d3b4a5fbdb LibWeb: Allow use of calculated property for line-height
Previously, calculated properties for line-heights were not being
calculated and were simply ignored.
2023-01-01 18:38:01 +01:00
Andreas Kling
7d863174b3 LibWeb: Use a JS::NonnullGCPtr for DOMTokenList::m_associated_element
Both Element and DOMTokenList are GC-allocated objects so they can just
mark each other instead of using the old strong/weak pattern we use in
ref-counting ownership models.
2023-01-01 17:51:51 +01:00
Sam Atkins
59d9d1d07a ThemeEditor: Make GUI initialization fallible
To do this, all GUI logic is moved into try_create() factory functions.
2023-01-01 09:55:05 -05:00
Sam Atkins
fa98034ff7 LibGUI+Userland: Make GML unregistered_child_handler fallible 2023-01-01 09:55:05 -05:00
Sam Atkins
2069a5a2a0 Snake: Make initialization from GML fallible
Replace the C_OBJECT factory functions with a custom try_create() which
loads the various bitmaps. Any failures there are now propagated.
2023-01-01 09:55:05 -05:00
Sam Atkins
b32f5dbcff LibCore+LibGUI: Add fallible versions of Widget::load_from_gml()
The existing `load_from_gml()` methods look the same as before from the
outside. Inside though, they now forward to `try_load_from_gml()` which
returns Error when things go wrong. It also now calls the `try_create()`
factory method for Objects instead of the `construct()` one.
2023-01-01 09:55:05 -05:00
Andreas Kling
e58fe1cdd7 Tests/Kernel: Add missing mode parameter to open() calls in inode tests 2023-01-01 15:15:25 +01:00
Andreas Kling
1b4baaed56 Kernel/x86_64: *Restore* interrupt flag in page fault handler
If a page fault occurs while interrupts are disabled, we were wrongly
enabling interrupts right away in the page fault handler.

Instead, we should only do this if interrupts were enabled when the
page fault occurred.
2023-01-01 15:14:35 +01:00
Andreas Kling
e3b9f78eb9 MouseSettings: Tweak "Natural scrolling" checkbox size
The old size wasn't wide enough to accommodate a focus rect, and we
ended up clipping the right edge of it.
2023-01-01 13:48:29 +01:00
Andreas Kling
16793d1c3d Base: Remove /etc/motd
This was not used for anything.
2023-01-01 13:24:48 +01:00
Victor Song
9724797da7 Utilities: Print arbitrary bytes in ls
Currently, `ls` crashes when printing certain byte sequences.
This is likely due to an out-of-bounds error when iterating
through the `StringView` representing the file name to be printed.
We switch to using an index-based for loop to a range-based
for loop. This fixes #16678.
2023-01-01 11:03:29 +00:00
Timothy Flynn
41e0e4cdd7 LibSQL: Add parsing and evaluation of BOOLEAN type literals
This allows you to enter TRUE or FALSE in a SQL statement for BOOLEAN
types. Note that this differs from SQLite, which requires entering 1 or
0 for BOOLEANs; having explicit keywords feels a bit more natural.
2023-01-01 10:16:55 +00:00
networkException
c67c7dd1f2 Meta: Update the year range in LICENSE :^) 2023-01-01 09:38:07 +00:00
networkException
c8f9bfe026 LibGUI: Make color picker opacity sliders react to the chosen color 2023-01-01 09:38:07 +00:00
networkException
f828bf6479 LibGUI: Add base color to OpacitySlider
This patch adds a base color to OpacitySlider which will be used to
render the alpha gradient.
2023-01-01 09:38:07 +00:00
Andreas Kling
16f934474f Kernel+Tests: Allow deleting someone else's file in my sticky directory
This should be allowed according to Dr. POSIX. :^)
2023-01-01 10:09:02 +01:00
Andreas Kling
47b9e8e651 Kernel: Annotate VirtualFileSystem::rmdir() errors with spec comments 2023-01-01 10:09:02 +01:00
Andreas Kling
8619f2c6f3 Kernel+Tests: Remove inaccurate FIXME in sys$rmdir()
We were already handling the rmdir("..") case by refusing to remove
directories that were not empty.

This patch removes a FIXME from January 2019 and adds a test. :^)
2023-01-01 10:09:02 +01:00
Andreas Kling
8d781d0216 Kernel+Tests: Make sys$rmdir() fail with EINVAL if basename is "."
Dr. POSIX says that we should reject attempts to rmdir() the file named
"." so this patch does exactly that. We also add a test.

This solves a FIXME from January 2019. :^)
2023-01-01 10:09:02 +01:00
Luke Wilde
42b011b571 LibWeb: Mark the border-style properties as layout affecting
`border-style: none` and `border-style: hidden` remove the border
entirely during layout, causing boxes to shift around.
2022-12-31 23:22:02 +01:00
Luke Wilde
7bd6a5b868 LibWeb: Treat border-style: hidden the same as border-style: none
The only difference between these two values is that `hidden` has
different behaviour for border conflict resolution for border-collapsed
tables in table layout, which we don't have yet.

This gets rid of the main border around the repository information on
the GitHub repository page.
2022-12-31 23:22:02 +01:00
Ben Wiederhake
0aed7f1c8e LibCrypto: Don't crash in ASN1::parse_generalized_time on missing 'Z' 2022-12-31 23:21:17 +01:00
Ben Wiederhake
0ca41d2813 LibCrypto: Don't crash in ASN1::parse_utc_time on missing 'Z'
The underlying reason is an unconditional call to consume(), even if
there is no reason to expect that the string continues.

This crash was discovered by OSS-Fuzz:
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=42354
This bug exists since the code was first written in April 2021:
13abbc5ea8
2022-12-31 23:21:17 +01:00
Ben Wiederhake
29261809ef LibCrypto+Tests: Test and demonstrate broken ASN1::parse_utc_time 2022-12-31 23:21:17 +01:00
Ben Wiederhake
e8ce0f0eba LibCore: Make DateTime more easily debuggable
In particular, implement operator== and AK::Formatter.
2022-12-31 23:21:17 +01:00
Andrew Kaster
44ab11fdab Tests: Skip legacy exploit reproducer test on aarch64
This old symbolication exploit proof of concept doesn't link on aarch64
with the Clang toolchain. We should revisit these as as whole to see if
they're worth keeping around in general.
2022-12-31 23:21:06 +01:00
Andrew Kaster
21622880cd LibC: Include aarch64 regs.h for AK_ARCH_AARCH64
Looks like this got mangled in the i686 removal.
2022-12-31 23:21:06 +01:00
Nico Weber
25171e310b AK: Prefer VERIFY_NOT_REACHED in ByteBuffer 2022-12-31 23:20:37 +01:00
Nico Weber
47f29170b3 LibGfx+icc: Add profile connection space printing
This is a bit messy: The spec says that PCSXYZ and PCSLAB are the only
valid profile connection spaces -- except for DeviceLink profles, where
all data color spaces are valid.

So this uses the existing ColorSpace enum for profile connection spaces
instead of adding a dedicated enum, to not duplicate all the color space
parsing and printing code.  That matches what the spec does, too.
This saves about 100 lines of code, at the expense of less type
safety -- but further down the line we probably want to be able to
compare data color spaces and profile connection spaces, so the type
safety would likely get in the way then. (But if not, we can change
things around once we get to that point.)
2022-12-31 23:18:35 +01:00
Nico Weber
0b46e572b5 LibGfx+icc: Print profile flags
These flags are always 0 in practice in all profiles I've seen so far,
but hey, probably nice to dump them anyways.
2022-12-31 23:17:48 +01:00
Timothy Flynn
88d5fd4b73 LibWeb: Paint repeating background images over entire paint box
We were previously missing the bottom- and right-most pixels. This fixes
the errant red line showing on the Acid2 forehead.
2022-12-31 20:16:59 +01:00
Ben Wiederhake
b272b45137 Meta: Fix link to relocated intel.com webpage
Using archive.org, it appears that this page has moved at some point
between May 14, 2021, and December 22, 2022, for no discernible reason.
2022-12-31 13:00:13 -05:00
Ben Wiederhake
21b7c32af0 Meta: Fix link to wrong version of commit in Mitigations.md
The old commit seems to be the one from the PR, hence it is not in the
master branch.
2022-12-31 13:00:13 -05:00
Nico Weber
b1e977e18a LibGfx: Use VERIFY_NOT_REACHED() for impossible states in ICC code
The `parse_` functions reject invalid values, so we know the default is
unreachable.
2022-12-31 12:59:22 -05:00
Nico Weber
a8ee5dd9cd LibGfx: Make ICC name converters return StringView 2022-12-31 12:59:22 -05:00
Itamar
a802fb2023 LibWeb: Support MouseEvent.{pageX,pageY}
Unlike client{X,Y} which is relative to the current viewport, these
offsets are relative to the left edge of the document (i.e they take
scroll offset into account).
2022-12-31 16:17:48 +01:00