summaryrefslogtreecommitdiff
path: root/Ladybird
AgeCommit message (Collapse)Author
2023-01-12Ladybird: Implement zoom :^)Linus Groh
2023-01-12Ladybird: Set 'device pixels per CSS pixel' to device pixel ratio :^)Linus Groh
2023-01-11Ladybird: Use standard font paths in FontPluginQtLinus Groh
This makes vector fonts load on macOS, where /usr/share/fonts doesn't exist and Ladybird would only load the bitmap fonts from ./res/fonts in the SerenityOS resource root directory. Additionally, fonts in {/usr/share/local,~/.local}/fonts are now loaded on Linux.
2023-01-09Ladybird: Port to Core::Stream::FileKarol Kosek
2023-01-09Ladybird: Let Qt pick the reload shortcutAndreas Kling
This fixes an issue on platforms where Ctrl+R is the preferred native shortcut, and we were effectively trying to set it twice.
2023-01-08Ladybird: Add Qt's standard refresh key (F5) to reload shortcutsKarol Kosek
2023-01-07LibWebView+WebContent: Expose the Accessibility Tree to Other ProcessesJonah
This patch also stubs out notify_server_did_get_accessiblity_tree in ladybird since ViewImplementation now has it. However, this feature is still immature, so just stubbing out in ladybird for now. Once we have more robust support in Serenity (namely ARIA properties/state and accessible names and descriptions) we can port this functionality over.
2023-01-03Ladybird: Install SQLServer binaryDavide Cavalca
Install the SQLServer binary added in 2cb3ae1 so that it's actually available on the target system when doing a standalone build of Ladybird.
2023-01-03Ladybird: Remove separate LICENSE filenetworkException
Since ladybird is part of the serenity monorepo now there's no need to keep a separate LICENSE file around :^)
2022-12-30Ladybird: Tell Qt that we manually handle the Cookie headerLuke Wilde
In some cases, Qt would silently drop the Cookie header and start causing Cookie authenticated requests to start failing.
2022-12-30Ladybird: Fix typosNico Weber
2022-12-25Ladybird: Close inspector and JS console when tab closesMacDue
Keeping these around can lead to use-after-frees and crashes.
2022-12-25Ladybird: Add the node properties tabs to the inspectorMacDue
This now allows you to view the computed and resolved style values, along with the CSS variables of a node.
2022-12-25Ladybird: Reimplement the DOM inspector :^)MacDue
This has been broken since the switch to the multiprocess architecture (and even before then was very limited). This restores the previous functionally and also implements the ability to inspect individual elements (by selecting them in the tree view). The inspector also now correctly updates when navigating between pages.
2022-12-25Ladybird: Allow replacing underlying model of ModelTranslatorMacDue
2022-12-25Documentation: Move Ladybird BuildInstructions to DocumentationAndrew Kaster
Update Ladybird/README.md at the same time to reflect its new monorepo status.
2022-12-25Ladybird: Support building Ladybird as a non-top-level projectAndrew Kaster
The implementation assumes that Lagom is either the top level project, or included before Ladybird is.
2022-12-25Ladybird/WebDriver: Retrieve process environment in an OS-dependent wayTimothy Flynn
2022-12-25Ladybird/WebDriver: Move to using local socket files for WebDriver IPCTimothy Flynn
This allows us to use standard Serenity IPC infrastructure rather than manually creating FD-passing sockets. This also lets us use Serenity's WebDriver Session class, removing the copy previously used in Ladybird. This ensures any changes to Session in the future will be picked up by Ladybird for free.
2022-12-25Ladybird: Fix build after Gfx::load_system_theme() return type changeAndreas Kling
2022-12-25Ladybird: Migrate SQLServer to be launched as a singleton processTimothy Flynn
Rather than manually launching the SQLServer process, use SQLClient's new functionality to launch the server just once for all Ladybird instances. Quit the SQLServer process when it no longer has any connected clients.
2022-12-25Ladybird: Quit SQLServer when its connected client exitsTimothy Flynn
When Ladybird exits, SQLServer can get stuck spinning at 100% CPU after the socket connection is closed. This changes the client to quit the event loop when that disconnect happens to ensure that SQLServer is properly destroyed.
2022-12-25Ladybird: Fix build after ConsoleGlobalEnvironmentExtensions renameAndreas Kling
2022-12-25Ladybird: Implement SQLServer for Ladybird :^)Timothy Flynn
This adds a SQLServer binary for Ladybird to make use of Serenity's SQL implementation. This has to use the same IPC socket handling that was used to make WebContent and WebDriver work out-of-process. Unlike Serenity, Ladybird creates a new SQLServer instance for each Ladybird instance. In the future, we should try to make sure there is only one SQLServer instance at a time, and allow multiple Ladybird instances to communicate with it.
2022-12-25Ladybird: Do not domain match on cookie updatesTimothy Flynn
This matches a corresponding change to Serenity's Browser.
2022-12-25Ladybird/Documentation: Add cmake to macOS dependenciesThitat Auareesuksakul
2022-12-25Ladybird: Pass Gfx::IntPoint by valueMacDue
2022-12-25Ladybird: Pass Gfx::IntSize by valueMacDue
2022-12-25Ladybird: Fix build with JS::MarkupGenerator's new string type usageAliaksandr Kalenik
Fix to build after JS::MarkupGenerator got converted to use new string type: https://github.com/SerenityOS/serenity/commit/112b3f73429eff7a3b6947c7fb45c62a0e5c0727
2022-12-25Ladybird: Update for AK::{String => DeprecatedString} renameLinus Groh
2022-12-25Ladybird: Replace history entry if loading URL because of a redirectBaitinq
We now replace the current history entry if the page-load has been caused because of a redirect. This makes it able to traverse the history if one of the entries redirects you, which previously caused an infinite history traversion loop. Depends on https://github.com/SerenityOS/serenity/pull/16004
2022-12-25Ladybird: Add stub for notify_server_did_finish_handling_input_eventSam Atkins
This doesn't need to do anything yet, but will do once we start passing events to web content *before* they're passed to our GUI.
2022-12-25Ladybird/WebDriver: Support running headless WebDriver sessionsTimothy Flynn
This adds a dependency from WebDriver to Lagom's headless-browser to be used if the client's required capabilities indicate to do so.
2022-12-25Ladybird: Update stored URL when a page starts/finishes loadingTimothy Flynn
Similar to https://github.com/SerenityOS/serenity/commit/9782660. Unlike Serenity's browser, this doesn't affect reloading the page, as Ladybird refers to the History object for reloading (which is updated already on page load). However, this URL is used for e.g. crash reporting, so let's update it here as well.
2022-12-25Ladybird: Implement updated alert/confirm/prompt IPC methodsTimothy Flynn
WebContent now needs to interact with these dialogs asynchronously. This updates WebContentView to hold a pointer to whatever dialog is open, and implements the methods to interact with that dialog.
2022-12-25Ladybird: Add block pop-ups checkbox to debug menuIdan Horowitz
2022-12-25Ladybird/WebDriver: Implement the cookie endpoints for LadybirdTimothy Flynn
2022-12-25Ladybird: Implement WebDriver for Ladybird :^)Timothy Flynn
This adds a WebDriver binary for Ladybird to make use of Serenity's WebDriver implementation. This has to use the same IPC socket handling that was used to make WebContent work out-of-process. Besides that, we are able to reuse almost everything from Serenity.
2022-12-25Ladybird: Implement WebDriver's navigation and window control endpointsTimothy Flynn
2022-12-25Ladybird: Construct a WebDriverConnection when instructed to do soTimothy Flynn
The WebDriver will pass the --webdriver-fd-passing-socket command line option when it launches Ladybird. Forward this flag onto the WebContent process, where it will create the WebDriverConnection for IPC.
2022-12-25Ladybird: Foward the WebContent passing socket FD by command lineTimothy Flynn
Rather than needing to set another environment variable for WebDriver's passing socket, let's forward these FDs by command line. This also moves the creation of the WebContent connection to a helper function so that the WebDriver connection can re-use it.
2022-12-25Ladybird: Give the WebContent socket a descriptive nameTimothy Flynn
WebContent's main() will soon take over multiple sockets. Give the existing WebContent socket a descriptive name to avoid confusion.
2022-12-25Ladybird/Misc: Add ladybird.nix for nix-shell supportBaitinq
2022-12-25Ladybird: Stub out notify_server_did_request_fullscreen_windowMarco Cutecchia
2022-12-25Ladybird: Stub out history navigation WebView::ViewImplementation APIsTimothy Flynn
These were added for WebDriver, which doesn't have a Ladybird implementation yet.
2022-12-25Ladybird: Stub out new cookie WebView::ViewImplementation APIsTimothy Flynn
These were added for WebDriver, which doesn't have a Ladybird implementation yet.
2022-12-25Ladybird: Fix reloading functionalityBaitinq
Previously, reloading went back to the first page loaded by WebView::load() or WebView::load_html(), as they are the only methods that modify m_url, which is what the reload loaded. Now we handle reloads in Tab.cpp by simply loading the last entry in the m_history.
2022-12-25Ladybird: Stub out new WebView::ViewImplementation APIsTimothy Flynn
These were added for WebDriver, which doesn't have a Ladybird implementation yet.
2022-12-25Ladybird: Don't add initial about:blank load to historyBaitinq
The hackish initial loading of about:blank was previously added to the history, so you could go back to it (which wasn't very ergonomic). Now we set the m_is_history_navigation flag before loading it so it doesn't get added to the history.
2022-12-25Ladybird: Add new WebContent source file for WebDriver endpointsTimothy Flynn