mirror of
https://github.com/RGBCube/serenity
synced 2025-07-26 00:27:43 +00:00
Ladybird: Use AK::Url rather than prefix list to check if URL is valid
If a URL is not valid we try navigating to https:// + the url. It's better to ask AK::Url if it thinks the url is valid than put a big list of prefixes here, with this obscure protocols like Gemini are now recognised and with `--enable-lagom-networking` can be viewed in Ladybird (thanks to #2218).
This commit is contained in:
parent
6ea4be36b5
commit
abd53a8719
1 changed files with 7 additions and 6 deletions
|
@ -516,14 +516,15 @@ void Tab::focus_location_editor()
|
|||
m_location_edit->selectAll();
|
||||
}
|
||||
|
||||
void Tab::navigate(QString url, LoadType load_type)
|
||||
void Tab::navigate(QString url_qstring, LoadType load_type)
|
||||
{
|
||||
if (url.startsWith("/"))
|
||||
url = "file://" + url;
|
||||
else if (!url.startsWith("http://", Qt::CaseInsensitive) && !url.startsWith("https://", Qt::CaseInsensitive) && !url.startsWith("file://", Qt::CaseInsensitive) && !url.startsWith("about:", Qt::CaseInsensitive) && !url.startsWith("data:", Qt::CaseInsensitive))
|
||||
url = "https://" + url;
|
||||
auto url_string = ak_deprecated_string_from_qstring(url_qstring);
|
||||
if (url_string.starts_with('/'))
|
||||
url_string = DeprecatedString::formatted("file://{}", url_string);
|
||||
else if (URL url = url_string; !url.is_valid())
|
||||
url_string = DeprecatedString::formatted("https://{}", url_string);
|
||||
m_is_history_navigation = (load_type == LoadType::HistoryNavigation);
|
||||
view().load(ak_deprecated_string_from_qstring(url));
|
||||
view().load(url_string);
|
||||
}
|
||||
|
||||
void Tab::back()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue