mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-09-19 17:27:51 +03:00
Help: Use LibWeb to open files via RequestServer
This commit is contained in:
parent
662711fa26
commit
0c2dc6be66
Notes:
sideshowbarker
2024-07-17 10:05:47 +09:00
Author: https://github.com/LucasChollet Commit: https://github.com/SerenityOS/serenity/commit/0c2dc6be66 Pull-request: https://github.com/SerenityOS/serenity/pull/13870 Issue: https://github.com/SerenityOS/serenity/issues/5259 Reviewed-by: https://github.com/Dexesttp Reviewed-by: https://github.com/linusg Reviewed-by: https://github.com/petelliott
@ -267,22 +267,7 @@ ErrorOr<void> MainWidget::initialize_fallibles(GUI::Window& window)
|
||||
void MainWidget::open_url(URL const& url)
|
||||
{
|
||||
if (url.protocol() == "file") {
|
||||
auto path = url.path();
|
||||
auto source_result = m_manual_model->page_view(path);
|
||||
if (source_result.is_error()) {
|
||||
GUI::MessageBox::show(window(), String::formatted("{}", source_result.error()), "Failed to open man page", GUI::MessageBox::Type::Error);
|
||||
return;
|
||||
}
|
||||
|
||||
auto source = source_result.value();
|
||||
String html;
|
||||
{
|
||||
auto md_document = Markdown::Document::parse(source);
|
||||
VERIFY(md_document);
|
||||
html = md_document->render_to_html();
|
||||
}
|
||||
|
||||
m_web_view->load_html(html, url);
|
||||
m_web_view->load(url);
|
||||
m_web_view->scroll_to_top();
|
||||
|
||||
GUI::Application::the()->deferred_invoke([&, path = url.path()] {
|
||||
|
@ -33,6 +33,7 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||
|
||||
TRY(Core::System::unveil("/res", "r"));
|
||||
TRY(Core::System::unveil("/usr/share/man", "r"));
|
||||
TRY(Core::System::unveil("/tmp/portal/filesystemaccess", "rw"));
|
||||
TRY(Core::System::unveil("/tmp/portal/launch", "rw"));
|
||||
TRY(Core::System::unveil("/tmp/portal/webcontent", "rw"));
|
||||
TRY(Core::System::unveil(nullptr, nullptr));
|
||||
|
Loading…
Reference in New Issue
Block a user