summaryrefslogtreecommitdiff
path: root/Libraries/LibHTML
AgeCommit message (Collapse)Author
2020-02-19WindowServer+LibGUI+LibHTML: Fix build with -std=c++2aAndreas Kling
2020-02-16LibGUI: Add forwarding headerAndreas Kling
This patch adds <LibGUI/Forward.h> and uses it a bunch. It also dragged various header dependency reduction changes into it.
2020-02-15LibGfx: Remove Utf8View.h dependency from Font.hAndreas Kling
2020-02-15LibGUI: Remove more header dependencies from Widget.hAndreas Kling
2020-02-15LibCore: Replace manual forward declarations with <LibCore/Forward.h>Andreas Kling
2020-02-15LibGfx: Replace manual forward declarations with <LibGfx/Forward.h>Andreas Kling
2020-02-14LibGfx: More work on header dependency reductionAndreas Kling
2020-02-14LibCore: Add a forward declaration headerAndreas Kling
This patch adds <LibCore/Forward.h> and uses it in various places to shrink the header dependency graph.
2020-02-14AK: Add a forward declaration headerAndreas Kling
You can now #include <AK/Forward.h> to get most of the AK types as forward declarations. Header dependency explosion is one of the main contributors to compile times at the moment, so this is a step towards smaller include graphs.
2020-02-13AK: Move escape_html_entities() from LibHTML to AKAndreas Kling
This sort of thing can be useful to things that don't want to link with all of LibHTML.
2020-02-06LibGUI: Remove leading G from filenamesAndreas Kling
2020-02-06LibCore: Remove leading C from filenamesAndreas Kling
2020-02-06LibGfx: Unpublish FloatPoint from the global namespaceAndreas Kling
2020-02-06LibGfx: Unpublish FloatSize from the global namespaceAndreas Kling
2020-02-06LibGfx: Unpublish FloatRect from the global namespaceAndreas Kling
2020-02-06LibGfx: Prefer using Gfx::Bitmap::load_from_file instead of load_png()Andreas Kling
Code that just wants to open a Gfx::Bitmap from a file should not be calling the PNG codec directly.
2020-02-06LibGfx: Unpublish Gfx::Rect from global namespaceAndreas Kling
2020-02-06LibGfx: Rename GraphicsBitmap.{cpp,h} => Bitmap.{cpp,h}Andreas Kling
2020-02-06LibGfx: Rename from LibDraw :^)Andreas Kling
2020-02-06LibDraw: Put all classes in the Gfx namespaceAndreas Kling
I started adding things to a Draw namespace, but it somehow felt really wrong seeing Draw::Rect and Draw::Bitmap, etc. So instead, let's rename the library to LibGfx. :^)
2020-02-05LibProtocol: Rename namespace LibProtocol => ProtocolAndreas Kling
2020-02-02LibGUI: Put all classes in the GUI namespace and remove the leading GAndreas Kling
This took me a moment. Welcome to the new world of GUI::Widget! :^)
2020-02-02LibCore: Put all classes in the Core namespace and remove the leading CAndreas Kling
I've been wanting to do this for a long time. It's time we start being consistent about how this stuff works. The new convention is: - "LibFoo" is a userspace library that provides the "Foo" namespace. That's it :^) This was pretty tedious to convert and I didn't even start on LibGUI yet. But it's coming up next.
2020-01-23AK: Let's call decrementing reference counts "unref" instead of "deref"Andreas Kling
It always bothered me that we're using the overloaded "dereference" term for this. Let's call it "unreference" instead. :^)
2020-01-18Meta: Add license header to source filesAndreas Kling
As suggested by Joshua, this commit adds the 2-clause BSD license as a comment block to the top of every source file. For the first pass, I've just added myself for simplicity. I encourage everyone to add themselves as copyright holders of any file they've added or modified in some significant way. If I've added myself in error somewhere, feel free to replace it with the appropriate copyright holder instead. Going forward, all new source files should include a license header.
2020-01-15Build: more IPCCompiler-generated dependenciesjoshua stein
2020-01-13LibDraw+LibHTML: Make link colors themeableAndreas Kling
Add "Link", "ActiveLink" and "VisitedLink" colors to the system theme definition, and implement support for them in LibHTML. Note that <body link="foo" alink="bar" vlink="baz"> takes precedence over the system colors. Author style also takes precedence, since we only fetch the system color in case the CSS color is -libhtml-link.
2020-01-05LibHTML: Fix broken build after Element::computed_style() changeAndreas Kling
2020-01-05LibHTML: Make the Element::computed_style() return NonnullRefPtrMatrix89
Because Element::computed_style() can never retrun null we can return NonnullRefPtr instead of RefPtr.
2020-01-05LibHTML: Add four missing border properties to the computed styleMatrix89
2020-01-05LibHTML: Replace StyleProperties::create(StyleProperties) with clone()Matrix89
2020-01-05Browser+LibHTML: Change the way computed styles are queriedMatrix89
2020-01-05Browser+LibHTML: Deduplicate inspector codeMatrix89
The `DOMElementStyleModel` and `DOMComputedElementStyleModel` classes were replaced by the `StylePropertiesModel`.
2020-01-05Browser+LibHTML: Add "Computed" styles to the DOM inspectorMatrix89
I though it would be nice to also show the style that the browser uses to display an element. In order to do that, in place of the styles table I've put a tab widget, with tabs for both element and computed element styles.
2020-01-05LibHTML: Respect the system themeSergey Bugaev
LibHTML will now use the palette colors for the default document background and the text. As always, a page can override this default styling with CSS if it really wants a specific color or style. Fixes https://github.com/SerenityOS/serenity/issues/963
2020-01-02Build: HOST_CXX -> USE_HOST_CXXjoshua stein
Allow HOST_CXX to be passed to make which will be the actual host C++ compiler used, such as 'make HOST_CXX=clang++'.
2020-01-02Browser+LibHTML: Add resolved element style to the DOM inspectorAndreas Kling
When selecting an element in the browser's DOM inspector, we now also show the resolved CSS properties (and their values) for that element. Since the inspector was growing a bit more complex, I moved it out of the "show inspector" action callback and into its own class. In the future, we will probably want to migrate the inspector down to LibHTML to make it accessible to other clients of the library, but for now we can keep working on it inside Browser. :^)
2020-01-02LibHTML: Include element attributes in the DOMTreeModelAndreas Kling
We simply expand the attributes inside the element item name, so they look like natural "tags" :^)
2020-01-02LibHTML: Have element keep a pointer to their resolved styleAndreas Kling
This will make it easy to implement a simple element style inspector.
2020-01-01AK: Move the userspace SharedBuffer from LibC to AKAndreas Kling
This always felt out-of-place in LibC.
2019-12-30LibHTML: Ignore all CSS rules starting with "@" for nowAndreas Kling
2019-12-29LibHTML: RenderingContext should keep the Palette aliveAndreas Kling
We were lugging around a reference to a temporary here.
2019-12-28LibHTML: Add missing flock to Makefile (thanks jcs)Andreas Kling
2019-12-28Build: Fix missing IPC dependency for LibHTMLStefano Cristiano
2019-12-28Build: wrap make invocations with flock(1)joshua stein
Lock each directory before entering it so when using -j, the same dependency isn't built more than once at a time. This doesn't get full -j parallelism though, since one make child will be sitting idle waiting for flock to receive its lock and continue making (which should then do nothing since it will have been built already). Unfortunately there's not much that can be done to fix that since it can't proceed until its dependency is built by another make process.
2019-12-26LibHTML: Remove fixed FIXMEShannon Booth
2019-12-25Build: support library and generator dependenciesjoshua stein
Instead of directly manipulating LDFLAGS, set LIB_DEPS in each subdirectory Makefile listing the libraries needed for building/linking such as "LIB_DEPS = Core GUI Draw IPC Core". This adds each library as an -L and -l argument in LDFLAGS, but also adds the library.a file as a link dependency on the current $(PROGRAM). This causes the given library to be (re)built before linking the current $(PROGRAM), but will also re-link any binaries depending on that library when it is modified, when running make from the root directory. Also turn generator tools like IPCCompiler into dependencies on the files they generate, so they are built on-demand when a particular directory needs them. This all allows the root Makefile to just list directories and not care about the order, as all of the dependency tracking will figure it out.
2019-12-24LibGUI+LibDraw: Add "Palette" concept for scoped color themingAndreas Kling
GApplication now has a palette. This palette contains all the system theme colors by default, and is inherited by a new top-level GWidget. New child widgets inherit their parents palette. It is possible to override the GApplication palette, and the palette of any GWidget. The Palette object contains a bunch of colors, each corresponding to a ColorRole. Each role has a convenience getter as well. Each GWidget now has a background_role() and foreground_role(), which are then looked up in their current palette when painting. This means that you no longer alter the background color of a widget by setting it directly, rather you alter either its background role, or the widget's palette.
2019-12-20Build: clean up build system, use one shared Makefilejoshua stein
Allow everything to be built from the top level directory with just 'make', cleaned with 'make clean', and installed with 'make install'. Also support these in any particular subdirectory. Specifying 'make VERBOSE=1' will print each ld/g++/etc. command as it runs. Kernel and early host tools (IPCCompiler, etc.) are built as object.host.o so that they don't conflict with other things built with the cross-compiler.
2019-12-18LibHTML: Ignore layout repaints outside the visible viewportAndreas Kling
Now that Frame knows the visible viewport rect, it can easily ignore repaint requests from e.g <blink> elements that are not currently scrolled into view. :^)