rename tab elements namespace

This commit is contained in:
yggverse 2024-08-15 18:52:11 +03:00
parent 4e733d8997
commit 2986a475c1
29 changed files with 181 additions and 181 deletions

View file

@ -0,0 +1,94 @@
#include "request.hpp"
using namespace app::browser::main::tab::page::navbar;
using namespace std;
// Construct
Request::Request()
{
// Init entry
set_placeholder_text(
_("URL or search term...")
);
set_hexpand(
true
);
// Connect events
signal_changed().connect(
[this]
{
parse();
activate_action(
"navbar.refresh"
);
}
);
signal_activate().connect(
[this]
{
parse();
activate_action(
"page.update"
);
}
);
}
Request::~Request() = default;
// Getters
string Request::get_scheme()
{
return scheme;
}
string Request::get_host()
{
return host;
}
string Request::get_path()
{
return path;
}
string Request::get_query()
{
return path;
}
int Request::get_port()
{
return stoi(
port
);
}
// Private helpers
void Request::parse()
{
string subject = get_text();
smatch results;
static const regex pattern( // @TODO user:password@#fragment?
R"regex(^((\w+)?:\/\/)?([^:\/]+)?(:(\d+)?)?([^\?$]+)?(\?(.*)?)?)regex"
);
regex_search(
subject,
results,
pattern
);
scheme = results[2];
host = results[3];
port = results[5];
path = results[6];
query = results[8];
}