Luke
ed2689c00a
LibWeb: Use standardized encoding names, add encoding attribute to document
2020-11-14 10:14:03 +01:00
Luke
3ec54448f5
LibWeb: Add contentType attribute to Document
2020-11-13 09:51:07 +01:00
Andreas Kling
81add73955
LibWeb: Make Frame point weakly to Page
...
This patch makes Page weakable and allows page-less frames to exist.
Page is single-owner, and Frame is multiple-owner, so it's not sound
for Frame to assume its containing Page will stick around for its own
entire lifetime.
Fixes #3976 .
2020-11-12 18:29:55 +01:00
Brendan Coles
a0130b55d4
LibWeb: Load favicon.ico only for http/https URLs
2020-11-07 10:05:35 +01:00
Andreas Kling
46c15276e9
LibWeb: Fix Document construction mishap in <template> element
...
Ref-counted objects must not be stack allocated. Make DOM::Document's
constructor private to avoid this issue. (I wish we could mark classes
as heap-only..)
2020-10-23 08:33:16 +02:00
Luke
e8a9e8aed5
LibWeb: Add namespace to Element
2020-10-22 15:24:42 +02:00
Linus Groh
216ccaf805
LibWeb: Handle PageClient::page_did_change_title() in Frame::set_document()
2020-10-08 23:20:52 +02:00
Linus Groh
a2a603d38a
LibWeb: Add FrameLoader::load_html()
...
This moves responsibility for parsing and loading the document
from InProcessWebView to FrameLoader, so can be re-used easily.
2020-10-08 23:20:52 +02:00
Andreas Kling
c6c0a9abcb
LibWeb: Fix build after GEMINI_DEBUG oopsie
2020-10-06 17:48:42 +02:00
Nico Weber
fa5217ff4f
LibWeb: Add debug toggle for dumping gemini documents
2020-10-06 17:16:16 +02:00
Nico Weber
c8322719c6
LibWeb: Fix variable name for gemini documents
2020-10-06 17:16:16 +02:00
Andreas Kling
2946a684ef
ProtocolServer+LibWeb: Support more detailed HTTP requests
...
This patch adds the ability for ProtocolServer clients to specify which
HTTP method to use, and also to include an optional HTTP request body.
2020-09-28 11:55:26 +02:00
Andreas Kling
618dcbe405
LibWeb: Dispatch DOM "load" event on <iframe> elements
2020-09-22 20:10:20 +02:00
Simon Danner
05be6481b7
LibWeb: make it possible to directly load .svg files
...
Make LibWeb load svg files by guessing the svg mime type from the file
extension and parsing it with the HTML parser.
2020-09-08 13:57:18 +02:00
AnotherTest
1df9293ea4
LibWeb: Complete the redirect URL before loading it
...
the "Location" header is allowed to be a relative URL (as is the case in
our very own WebServer!)
2020-07-30 16:56:15 +02:00
Andreas Kling
ef711f501e
LibWeb: Move the Page/Frame/EventHandler classes into Page/
2020-07-28 19:28:29 +02:00
Andreas Kling
cc4109c03b
LibWeb: Move the HTML parser into HTML/Parser/
2020-07-28 19:23:18 +02:00
Andreas Kling
c46439f240
LibWeb: Move HTML classes into the Web::HTML namespace
2020-07-28 18:55:48 +02:00
Andreas Kling
11ff9d0f17
LibWeb: Move DOM classes into the Web::DOM namespace
...
LibWeb keeps growing and the Web namespace is filling up fast.
Let's put DOM stuff into Web::DOM, just like we already started doing
with SVG stuff in Web::SVG.
2020-07-26 20:05:15 +02:00
Kevin Meyer
a5b8cc2d0b
LibWeb: Add type for FrameLoader::load
...
This should enable to destinguish between IFrame, Reload and Navigation
motivated loads in order to call the appropriate hooks.
This change is motivated as loading the IFrame test page causes the
IFrame url to be added to the history and shows up as the current
browser location bar.
2020-07-08 23:45:12 +02:00
Andreas Kling
6293d1a13c
LibWeb+Browser: Remove old HTML parser :^)
...
The new parser is now used everywhere and it's working pretty well!
2020-06-26 00:53:25 +02:00
Andreas Kling
07d976716f
LibWeb: Remove most uses of the old HTML parser
...
The only remaining client of the old parser is the fragment parser used
by the Element.innerHTML setter. We'll need to implement a bit more
stuff in the new parser before we can switch that over.
2020-06-21 22:29:05 +02:00
Andreas Kling
883dc9260d
LibWeb: Unbreak favicon notifications after Page refactoring
...
Favicon updates now get plumbed from FrameLoader to the PageClient.
2020-06-08 21:35:31 +02:00
Andreas Kling
e04d68a03a
LibWeb: Remove unnecessary on_foo hooks from Frame
...
Frame can just call through the PageClient instead of using hooks.
2020-06-08 21:31:53 +02:00
Andreas Kling
896db187e5
LibWeb: Move Frame.{cpp,h} into a new Frame/ directory
2020-06-07 10:14:41 +02:00
Andreas Kling
71da52482c
LibWeb: Show error page if we can't handle a frame's main resource
...
If we can't figure out how to make a Document for the main resource
in a Frame, just show an error page.
2020-06-06 14:14:43 +02:00
Andreas Kling
f88146c7c9
LibWeb: Let Resource figure out its own encoding and MIME type
...
Also, if the request URL is a data: URL, use the MIME type from the URL
itself if available. This makes it possible to load arbitrary MIME type
data: URLs in the browser :^)
2020-06-06 14:14:43 +02:00
Andreas Kling
de6028dfa7
LibWeb: Turn FrameLoader into a ResourceClient
...
We now use the new resource-based loader for the main resource in each
Frame. This gives us access to caching and sharing. :^)
2020-06-06 14:14:43 +02:00
Andreas Kling
075bd75859
LibWeb: Add a FrameLoader class and move PageView's loading logic there
...
Each Frame now has a FrameLoader which will be responsible for handling
loading inside that frame.
2020-06-06 14:14:43 +02:00