summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-10-25Userland: Let applications make use of make_command_palette_action()demostanis
2022-10-25LibGUI: Don't show the command palette action in the command palettedemostanis
2022-10-25LibGUI: Remove Window::set_blocks_command_palette()demostanis
Since the logic to open the command palette is now in the form of an action, its keybinding is only bound when the window active. Thus, when a combo box or the emoji input dialog is active, the window isn't, and the command palette doesn't show up, without requiring special checks.
2022-10-25LibGUI: Add CommonActions::make_command_palette_action()demostanis
2022-10-25LibLocale+LibJS: Update to CLDR version 42.0.0Timothy Flynn
There were some notable changes to the CLDR JSON format and data in this release. The patterns for a date at a specific time, i.e. "{date} at {time}", now appear under the "atTime" attribute of the "dateTimeFormats" object. Locale specific changes that affected test-js: All locales: * In many patterns, the code points U+00A0 (NO-BREAK SPACE) and U+202F (NARROW NO-BREAK SPACE) are now used in place of an ASCII space. For example, before the "dayPeriod" fields AM and PM. * Separators such as U+2013 (EN DASH) are now surrounded by U+2009 (THIN SPACE) in place of an ASCII space character. Locale "en": * Narrow localizations of time formats are even more narrow. For example, the abbreviation "wk." for "week" is now just "wk". Locale "ar": * The code point U+060C (ARABIC COMMA) is now used in place of an ASCII comma. * The code point U+200F (RIGHT-TO-LEFT MARK) now appears at the beginning of many localizations. * When the "latn" numbering system is used for currency formatting, the currency symbol more consistently is placed at the end of the pattern. Locale "he": * The "many" plural rules category has been removed. Locales "zh" and "es-419": * Several display-name localizations were changed.
2022-10-25LibVideo: Add CICP parsing to MatroskaReaderZaggy1024
This will allow correct independent code points to be selected from VP9 in WebM, since the VP9 bitstream does not specify them independently.
2022-10-25LibVideo: Implement CICP color space conversionZaggy1024
This adds a struct called CodingIndependentCodePoints and related enums that are used by video codecs to define its color space that frames must be converted from when displaying a video. Pre-multiplied matrices and lookup tables are stored to avoid most of the floating point division and exponentiation in the conversion.
2022-10-25LibGfx: Make Matrix and VectorN more constexpr-friendlyZaggy1024
This allows the copy constructor of Matrix to be called constexpr, which should allow more values to be compile-time calculated. Likewise, VectorN.data() is now constexpr so that it can be compile-time evaluated.
2022-10-25Ports: Fix return statuses with new buildstepsPeter Elliott
previously every buildstep would return a success error code. As a result, all the steps would run even if previous steps failed. I've also added a red status message when this happens.
2022-10-24Kernel/FileSystem: Remove hardcoded unveil path of /usr/lib/Loader.soLiav A
If a program needs to execute a dynamic executable program, then it should unveil /usr/lib/Loader.so by itself and not rely on the Kernel to allow using this binary without any sense of respect to unveil promises being made by the running parent program.
2022-10-24Userland: Unveil /usr/lib/Loader.so when using 'x' permissions on unveilLiav A
We should not rely on the Kernel to unveil this for us, so if a program needs to execute another program it should unveil the dynamic loader too to prevent crashing. To do this, we check if the user program tried to unveil a binary with at least using the 'x' permission, so we will try to also unveil the dynamic loader too.
2022-10-24Inspector: Reopen picker UI after selecting Inspectorcrpz1
2022-10-24mv: Support the '--no-clobber' optionEli Youngs
2022-10-24PixelPaint: Limit editing tools to selectionTimothy Slater
This effectively creates a double-buffer for tools to use when modifying the layer's bitmap (content or mask). Once the changes have been made the tool reports to the layer that it has made changes along with a Rect of the changed region. The layer will then merge the changes from the scratch image to the real bitmap. This merge is done as follows: If a given pixel is inside the selected region, the pixel from the scratch bitmap is copied to the real bitmap. If the pixel is not inside the selected region, the pixel from the real bitmap is copied to the scratch bitmap. As an optimization, when there is no selection active, the new method for getting the scratch bitmap will return the real bitmap and no merging will need to take place.
2022-10-24AK: Add SplitBehavior::KeepTrailingSeparator with testsdemostanis
2022-10-24AK+Everywhere: Turn bool keep_empty to an enum in split* functionsdemostanis
2022-10-24LibGfx: Make Rect::set_{bottom,right}_without_resize() work for non-intSam Atkins
2022-10-24GMLPlayground: Restrict filesystem access using `unveil()`Karol Kosek
2022-10-24GMLPlayground: Open and save files using FileSystemAccessClientKarol Kosek
2022-10-24LibWeb: Implement recent changes to module script fetchingnetworkException
This patch implements all changes to the specification touching the subset of module script fetching we support. Notably it adds parts of the specification for supporting import maps. With this we are also able to get rid of a non standard workaround for a spec issue we discovered while initially implementing module scripts :^)
2022-10-24LibWeb: Add disallow further import maps steps to ESOnetworkException
2022-10-24LibWeb: Expose an import map and import maps allowed on WindownetworkException
2022-10-24LibWeb: Add the ImportMap structnetworkException
2022-10-24LibWeb: Add is_code_unit_prefix() functionnetworkException
2022-10-24LibJS: Accept calendar names case-insensitivelyYedaya Katsman
This is a normative change in the Temporal spec See tc39/proposal-temporal@03101c6
2022-10-24LibWeb: Teach MainThreadVM about module scriptsLinus Groh
2022-10-24LibWeb: Use getters instead of direct member access in Response methodsLinus Groh
This fixes the behavior of those methods for FilteredResponse subclasses as those only override the getter methods, not their private members.
2022-10-24LibWeb: Also make non-const Response getters virtualLinus Groh
We wouldn't want a filtered response to bypass the overridden methods based on constness.
2022-10-24LibWeb: Handle filtered response in Response::clone()Linus Groh
2022-10-24LibWeb: Move url_origin() to URL/URL.{cpp,h}Linus Groh
2022-10-24LibWeb: Add virtual destructor to EnvironmentLinus Groh
This makes it polymorphic and allows checking the subclass of an Environment with is<T>(). We also need to change the inheritance order so JS::Cell comes first for this to work. Unfortunately, I have no idea why that is. Co-Authored-By: Andreas Kling <kling@serenityos.org>
2022-10-24LibWeb: Add non-const variants of Request::{current_,}url()Linus Groh
2022-10-24LibWeb: Add referrer policy to PolicyContainerLinus Groh
2022-10-24LibWeb: Add policy container to {Window,Worker}EnvironmentSettingsObjectLinus Groh
2022-10-24LibWeb: Layout inner floats/abspos boxes after laying out the top floatLuke Wilde
Calling parent_context_did_dimension_child_root_box immediately after laying out the inside of the floating box is not correct, as we haven't worked out the dimensions of the floating box yet. In particular, this caused the icons in the top bar of Cookie Clicker to not hug the top of the viewport. This is because the icons are absolutely positioned elements inside a floating element which has padding applied to it. Since we laid out the abspos element before the floating element, it got padding values of 0 from the parent, the default value, meaning it didn't take away the padding of it's floating parent. This follows how abspos boxes layout their inside boxes as well.
2022-10-24LibJS: Only use 1 bit for Cell boolean flagAndreas Kling
2022-10-24LibWeb: Implement XMLHttpRequest.requestType setter according to specAndreas Kling
2022-10-24LibWeb: Protect XMLHttpRequest from GC in special circumstancesAndreas Kling
The XHR gives us a set of conditions where XHR objects must survive garbage collection, even when there are no pointers to them on the heap. This patch implements those conditions using the new cell self-protection mechanism in LibJS.
2022-10-24LibWeb: Add EventTarget::has_event_listener(FlyString type)Andreas Kling
This returns true if the EventTarget has one or more registered listeners for a given even type.
2022-10-24LibJS: Add Cell::must_survive_garbage_collection() mechanismAndreas Kling
This allows cells to prevent themselves from being garbage collected, even when there are no references to them.
2022-10-24LibWeb: Establish stacking context when backdrop-filter is not 'none'Luke Wilde
2022-10-24wasm: Map the entire input wasm file instead of using Core::FileAli Mohammad Pur
This is a 30x (!) speedup in parsing time as we don't lose time to Core::File's silly memmove()-into-provided-buffer stuff anymore.
2022-10-24LibWasm: Allow vectors of up to 500M entriesAli Mohammad Pur
This usually shows up in custom sections, containing plain bytes.
2022-10-24LibWasm: Calculate the max data segment size correctlyAli Mohammad Pur
This is given in pages, we need to first convert to bytes before comparing with bytes.
2022-10-24LibCore: Link against LibSystemTim Schumacher
Depending on what OS LibCore is being built for (either SerenityOS or not-SerenityOS), the library does not just wrap functions from LibC, but it also implements syscalls itself. Therefore, it needs to link against LibSystem, as that is the only library that is allowed to do syscalls. When cross-compiling the OS this is currently not an issue because LibC links against LibSystem, and CMake passes that dependency through transitively by accident. However, on Lagom, LibC is just a dummy INTERFACE library, so the LibSystem dependency is never pulled in, resulting in undefined symbols whenever we build LibCore on SerenityOS as a part of Lagom.
2022-10-24Meta: Default to the SDL QEMU frontend on SerenityOSTim Schumacher
We don't yet have anything else than SDL, and certainly not GTK.
2022-10-24Meta: Also set CC/CXX when selecting the host toolchainTim Schumacher
This ensures that the toolchain building scripts will use the host toolchain that has been found manually, and that they won't fall back to `cc` (which in the worst case may not even be installed).
2022-10-24Lagom: Link the system's LibSystem on SerenityOSTim Schumacher
2022-10-24Ports: Add port for the Boost C++ librariesGunnar Beutner
This currently requires GCC.
2022-10-24Kernel: Add definitions for SO_SNDLOWAT and SO_RCVLOWATGunnar Beutner