mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-22 15:40:19 +00:00
Ladybird: Accept file paths, domains, and URLs as an argument
This makes opening test files much more ergonomic :^)
This commit is contained in:
parent
52a7282c64
commit
775332e179
Notes:
sideshowbarker
2024-07-17 06:29:49 +09:00
Author: https://github.com/IdanHo Commit: https://github.com/SerenityOS/serenity/commit/775332e179 Pull-request: https://github.com/SerenityOS/serenity/pull/16583 Reviewed-by: https://github.com/ADKaster Reviewed-by: https://github.com/awesomekling ✅ Reviewed-by: https://github.com/linusg
1 changed files with 10 additions and 4 deletions
|
@ -9,6 +9,7 @@
|
|||
#include "Utilities.h"
|
||||
#include <LibCore/ArgsParser.h>
|
||||
#include <LibCore/EventLoop.h>
|
||||
#include <LibCore/File.h>
|
||||
#include <LibGfx/Font/FontDatabase.h>
|
||||
#include <LibMain/Main.h>
|
||||
#include <QApplication>
|
||||
|
@ -29,10 +30,10 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
|||
Gfx::FontDatabase::set_default_font_query("Katica 10 400 0");
|
||||
Gfx::FontDatabase::set_fixed_width_font_query("Csilla 10 400 0");
|
||||
|
||||
String url;
|
||||
StringView raw_url;
|
||||
Core::ArgsParser args_parser;
|
||||
args_parser.set_general_help("The Ladybird web browser :^)");
|
||||
args_parser.add_positional_argument(url, "URL to open", "url", Core::ArgsParser::Required::No);
|
||||
args_parser.add_positional_argument(raw_url, "URL to open", "url", Core::ArgsParser::Required::No);
|
||||
args_parser.parse(arguments);
|
||||
|
||||
BrowserWindow window;
|
||||
|
@ -41,9 +42,14 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
|||
window.resize(800, 600);
|
||||
window.show();
|
||||
|
||||
if (!url.is_empty()) {
|
||||
URL url = raw_url;
|
||||
if (Core::File::exists(raw_url))
|
||||
url = URL::create_with_file_scheme(Core::File::real_path_for(raw_url));
|
||||
else if (!url.is_valid())
|
||||
url = String::formatted("http://{}", raw_url);
|
||||
|
||||
if (url.is_valid())
|
||||
window.view().load(url);
|
||||
}
|
||||
|
||||
return app.exec();
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue