summaryrefslogtreecommitdiff
path: root/Userland/Libraries
AgeCommit message (Collapse)Author
2023-03-17LibGfx/OpenType: Add some initial support for GPOS glyph positioningAndreas Kling
This patch parses enough of GPOS tables to be able to support the kerning information embedded in Inter. Since that specific font only applies positioning offsets to the first glyph in each pair, I was able to get away with not changing our API. Once we start adding support for more sophisticated positioning, we'll need to be able to communicate more than a simple "kerning offset" to the clients of this code.
2023-03-17LibWeb: Fix is<HTML::HTMLProgressElement>() checkMacDue
Previously HTMLProgressElement implemented is_html_input_element() not is_html_progress_element(), so is_html_progress_element() defaulted to always returning false. This broke is<HTML::HTMLProgressElement>().
2023-03-16LibWeb: Remove remaining WebAssemblyObject data to the namespace fileTimothy Flynn
2023-03-16LibWeb: Port the WebAssembly namespace to IDLTimothy Flynn
2023-03-16LibIDL: Partially implement distinguishing between interface-like typesTimothy Flynn
This is needed for WebAssembly, where we need to distinguish between a BufferSource and a WebAssembly.Module.
2023-03-16LibWeb+WebContent+WebDriver: Add WebDriver endpoint to open new windowAliaksandr Kalenik
2023-03-16LibWeb: Create new tab if a new top level BC is requestedAliaksandr Kalenik
With current process architecture where every top level browsing context lives in a separate WebContent process we need to request a browser to spawn new WebContent process if new top level BC is requested.
2023-03-16LibWeb: Introduce RemoteBrowsingContextAliaksandr Kalenik
Remote browsing context represents top level browsing context that lives in another WebContent process.
2023-03-16LibWeb: Inherit BrowsingContext from AbstractBrowsingContextAliaksandr Kalenik
2023-03-16LibWeb: Introduce AbstractBrowsingContextAliaksandr Kalenik
Introducing class for abstract browsing context is going to make it possible to have separate implementations for: 1) Local browsing context (Top level BC of current page and iframes) 2) Remote browsing context (BC of a page that lives in another WebContent process)
2023-03-16LibWeb+LibWebView+WebContent+Ladybird: Add IPC call that opens new tabAliaksandr Kalenik
2023-03-16LibWebView: Generate window handle during client creationAliaksandr Kalenik
Generate handle UUID for top-level context that is going to run in created WebContent process and sent it over IPC. Co-authored-by: Timothy Flynn <trflynn89@pm.me>
2023-03-16LibWebView: Add window handle in `ClientState` in `ViewImplementation`Aliaksandr Kalenik
Add field for a handle that is going to be used by WebDriver to identify top-level browsing contexts. It is supposed to be populated by WebContent client during creation. Co-authored-by: Timothy Flynn <trflynn89@pm.me>
2023-03-16WebContent: Add IPC call to set window handle from WebContent clientAliaksandr Kalenik
2023-03-16LibWeb: Add `handle` member in BrowsingContextAliaksandr Kalenik
`handle` is uuid that is going to be used in WebDriver to identify browsing context.
2023-03-16LibWeb: Move code that generates uuid into separate functionAliaksandr Kalenik
Make possible to generate uuid without having crypto class instance.
2023-03-16LibTLS+Base: Rework default system certificate parserFabian Dellwing
Change the default system certificate parser from our arbitrary INI format to well-known PEM format.
2023-03-16Meta: Download cacert.pem at build timeFabian Dellwing
2023-03-16LibCrypto: Add multiple PEM parserFabian Dellwing
This adds a function to parse multiple PEMs out of a single input. This allows us to load certificates from a cacert.pem file without need for preprocessing.
2023-03-16WebContent+LibWebView: Consolidate the way browsers connect to WebDriverTimothy Flynn
Currently, on Serenity, we connect to WebDriver from the browser-side of the WebContent connection for both Browser and headless-browser. On Lagom, we connect from within the WebContent process itself, signaled by a command line flag. This patch changes Lagom browsers to connect to WebDriver the same way that Serenity browsers do. This will ensure we can do other initializers in the same order across all platforms and browsers.
2023-03-16LibGfx: Remove stray space character in a commentNico Weber
2023-03-16LibWeb: Port WebAssembly.Table to IDLTimothy Flynn
2023-03-16LibWeb: Port WebAssembly.Memory to IDLTimothy Flynn
2023-03-16LibWeb: Port WebAssembly.Instance to IDLTimothy Flynn
2023-03-16LibWeb: Port WebAssembly.Module to IDLTimothy Flynn
2023-03-16LibWeb: Define WebAssembly namespace and import it in web bindingsTimothy Flynn
This will contain concrete definitions of WebAssembly objects used by generated WebAssembly IDL.
2023-03-16LibIDL+LibWeb: Begin supporting the LegacyNamespace extended attributeTimothy Flynn
This is used by WebAssembly IDL files. For now, we mostly use this for error messages and cache keys (to ensure compatibility with existing code as WebAssembly is ported to IDL).
2023-03-16LibIDL: Allow extended attributes on non-required IDL dictionary membersTimothy Flynn
For example, WebAssembly.Memory will have: [EnforceRange] unsigned long maximum;
2023-03-16LibGUI+Userland: Port TabWidget set_tab_title to new stringKarol Kosek
2023-03-16LibGUI: Store Tab titles using the new string classKarol Kosek
2023-03-16LibGUI+Applications: Port SettingsWindow::add_tab() to the new stringKarol Kosek
2023-03-16LibGUI+Userland: Make TabWidget::*add_tab() take title using new stringKarol Kosek
2023-03-16LibGUI+HackStudio+PixelPaint: Port Widget title to the new StringKarol Kosek
I had to add a set_title(String) helper function for ImageEditor because TabWidget requires it. This is a temporary fix and will be handled in subsequent commit.
2023-03-16LibCore: Add new REGISTER_STRING_PROPERTY macroKarol Kosek
2023-03-16LibCore+Userland: Add DEPRECATED infix to REGISTER_STRING_PROPERTY macroKarol Kosek
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-16LibGUI: Don't invoke non-visible shortcutsTim Ledbetter
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-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-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