summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-03-16LibWeb: Don't drop single <br/> linesMathis Wiehl
Previously, when having inline contexts consisting of just a `<br/>` tag, we would not create a line box. Ensure that there is always a line box when a line is explicitly being broken and also ensure it won't be trimmed due to being empty. This will a fix a number of sites that use `<br>` tags for layouts between block elements (even though the spec says they shouldn't).
2023-03-16LibGUI: Store correct address in TreeViewModel's ModelIndicesTim Ledbetter
After `8a48246` m_nodes[row] amd m_child_nodes[row] return a NonnullRefPtr<Node>, so we were putting the wrong address into the ModelIndex's data.
2023-03-15CI: Bump Android NDK version used in CI to 25.2.9519653Andrew Kaster
The previous version is no longer able to compile Lagom Clang version 14.0.1 in NDK 24.0.8215888 crashes trying to build Core::Process
2023-03-16SpaceAnalyzer: Make "Open in File Manager" shortcut behave correctlyTim Ledbetter
Previously, the incorrect action would be invoked when using the Open in File Manager keyboard shortcut, while a directory was selected.
2023-03-16LibGUI: Don't invoke non-visible shortcutsTim Ledbetter
2023-03-15PixelPaint: Make the clone tool brush size consistent with other toolsTim Ledbetter
Other brush tools treat the brush size as a radius, not diameter. The clone tool now does the same.
2023-03-15PixelPaint: Scale the clone tool sample marker size with zoom levelTim Ledbetter
2023-03-15PixelPaint: Repaint clone tool sample marker on size changeTim Ledbetter
2023-03-15PixelPaint: Minimize clone tool sample marker repaintsTim Ledbetter
This removes 2 FIXMEs :^)
2023-03-15Ladybird: Get the system's current color theme settings from QtAndreas Kling
There isn't a 1:1 equivalent for all ColorRoles between Qt and LibGfx, but we can at least make an effort to translate the various QPalette preferred colors. This makes text selection look a lot more "native" in Ladybird. :^)
2023-03-15LibGfx: Make the Palette constructor take NNRP<PaletteImpl>Andreas Kling
2023-03-15LibWeb: Scale the font when painting the text on buttonsAndreas Kling
Button text was staying the same size at all zoom levels. :^)
2023-03-15LibWeb: Don't treat erroring subresource loads as successAndreas Kling
If a subresource fails to load, we don't care that we got some custom 404 page. The subresource should still be considered failed. This is an ad-hoc solution that unbreaks Acid2. This code will eventually be replaced by fetch mechanisms.
2023-03-15AK: Clear OrderedHashTable previous/next pointers on removalJelle Raaijmakers
With Clang, the previous/next pointers in buckets of an `OrderedHashTable` are not cleared when a bucket is being shifted up as a result of a removed bucket. As a result, an unfortunate pointer mixup could lead to an infinite loop in the `HashTable` iterator, which was exposed in `HashMap::keys()`. Co-authored-by: Luke Wilde <lukew@serenityos.org>
2023-03-15Kernel: Merge {get,set}_process_name syscalls to the prctl syscallLiav A
It makes much more sense to have these actions being performed via the prctl syscall, as they both require 2 plain arguments to be passed to the syscall layer, and in contrast to most syscalls, we don't get in these removed syscalls an automatic representation of Userspace<T>, but two FlatPtr(s) to perform casting on them in the prctl syscall which is suited to what has been done in the removed syscalls. Also, it makes sense to have these actions in the prctl syscall, because they are strongly related to the process control concept of the prctl syscall.
2023-03-15Meta: Make sure directories for pci.ids and usb.ids existSam Atkins
`file(COPY_FILE ...)` fails if the target directory does not already exist, whereas `install(FILES ... DESTINATION ...)` happily creates all the required directories.
2023-03-15LibUnicode: Remove now-unused dir-iterator helper functionsSam Atkins
2023-03-15LibLocale: Migrate code generators to Directory::for_each_entry()Sam Atkins
2023-03-15LibUnicode: Migrate GenerateEmojiData to Directory::for_each_entry()Sam Atkins
2023-03-15LibUnicode: Read emoji file title from LexicalPath directlySam Atkins
... rather than taking the whole file name, and then manually trimming the extension off.
2023-03-15LibWeb: Port the CSS namespace to IDLTimothy Flynn
2023-03-15LibWeb: Support generating IDL namespacesTimothy Flynn
These are similar to prototypes and constructors in that they will now be lazily instantiated when they are first requested.
2023-03-15LibIDL: Begin parsing IDL namespacesTimothy Flynn
For example, the CSS namespace is defined via IDL, but we currently have a manual implementation.
2023-03-15LibSyntax+Libraries: Replace TextStyle with Gfx::TextAttributesSam Atkins
Rather than creating a TextStyle struct, and then copying its fields over to a TextAttributes, let's just create a TextAttributes to start with. This also simplifies the syntax highlighting code by letting us define underlines along with the other text styling.
2023-03-15LibGfx+Userland: Make TextAttributes::underline_style optionalSam Atkins
Rather than having a style AND a field saying whether to use the style, just make the style Optional.
2023-03-15LibGfx: Make a comment in BMPWriter more preciseNico Weber
2023-03-15LibGfx: Let decode_bmp_v5_dib() skip reserved fieldNico Weber
This has no effect in practice: decode_bmp_v5_dib() is the last thing called with the streamer object (...the streamer is passed to set_dib_bitmasks(), but that doesn't read anything off it except for DIBType::Info bitmaps, which v5 bitmaps aren't). But dib_size is 16 larger for v5 than for v4, so we should read 16 bytes. This is also useful for a hypothetical person who might look at the reading code to figure out how the writing code should look like.
2023-03-15LibGfx: Make BMPWriter code a tiny bit shorterNico Weber
2023-03-15image: Preserve ICC profiles in BMP outputNico Weber
2023-03-15LibGfx: Let BMPWriter optionally embed an ICC profileNico Weber
2023-03-15LibGfx: Allow BMPWriter to write v5 bmps and make that the defaultNico Weber
2023-03-15LibGfx: VERIFY correct type length in PNGChunk ctorNico Weber
2023-03-15LibGfx: Make PNGChunk::m_type a String instead of a DeprecatedStringNico Weber
It's always 4 bytes, so the data fits in a String's inline buffer. (Else I would've used a StringView.)
2023-03-15LibGfx: Use * a b s t r a c t i o n * in PNGChunk::store_type()Nico Weber
2023-03-15LibGfx: Remove reckless PNGChunk::add(T) methodNico Weber
This method added function using host byte order, which is never what we want. In practice, it was fine because it was only called from add_u8() (which is just 1 byte large) and add_as_big_endian() (since that did endian swapping before calling the method). But the method doesn't really help any and is dangerous, so remove it. No behavior change.
2023-03-15LibGfx: Remove unused PNGChunk::add_as_little_endian() methodNico Weber
PNG uses big-endian data internally.
2023-03-15image: Make the ppm writing code a tiny bit shorterNico Weber
2023-03-15image: Preserve ICC profiles in PNG outputNico Weber
This probably does strange things for CMYK jpegs, since JPEGLoader converts those from CMYK to RGB but the ICC profile is still an CMYK profile. The Right Fix for that is probably for JPEGLoader to consume the profile when it does CMYK->RGB conversion and then not hand out the profile data. (Or we could add a CMYK bitmap type.) But most of the time, this is a progression :^)
2023-03-15LibGfx: Let PNGWriter optionally embed an ICC profileNico Weber
2023-03-15LibGfx: Add PNGChunk::compress_and_add APINico Weber
2023-03-15LibGfx: Use ReadonlyBytes in PNGChunk APINico Weber
2023-03-15Tests/LibWeb: Add ACID1 as a layout testAndreas Kling
This will help us catch any future regressions immediately.
2023-03-15LibWeb: Don't truncate font sizes before scaling them to device pixelsAndreas Kling
This fixes an issue where fonts would often paint at the wrong sizes with device pixel ratios other than 1.0.
2023-03-15LibGfx: Add Font::point_size()Andreas Kling
This returns the font size in pt instead of px.
2023-03-15LibWeb: Make sure `float: left` boxes get pushed down if they can't fitAndreas Kling
2023-03-15PartitionEditor: Add missing unveilsMacDue
These were somewhat found by trial and error, but it seems like this is now the required set to launch this without error.
2023-03-15Meta: Download pci.ids and usb.ids to Build/cachesTimothy Flynn
This ensures we only need to download these files once for all build configurations. We similarly download the UCD, CLDR, and TZDB to this cache directory as well.
2023-03-15Kernel/Ramdisk: Propagate error during Ramdisk initializePankaj Raghav
Use the same pattern for Ramdisk similar to other storage devices during device initialization. This will propagate errors if the Ramdisk fails to initialize.
2023-03-15Kernel/Storage: Use NonnullRefPtr for storage controllersPankaj Raghav
Storage controllers are initialized during init and are never modified. NonnullRefPtr can be safely used instead of the NonnullLockRefPtr. This also fixes one of the UB issue that was there when using an NVMe device because of NonnullLockRefPtr. We can add proper locking when we need to modify the storage controllers after init.
2023-03-15Ports: Add taskwarrior portSeal Sealy