resolve relative links

This commit is contained in:
yggverse 2024-09-14 14:20:22 +03:00
parent e8e46a6217
commit 1c5a8d58f0
9 changed files with 28 additions and 23 deletions

View file

@ -4,6 +4,7 @@
using namespace app::browser::main::tab::page::content::text;
Gemini::Gemini(
const Glib::ustring & REQUEST,
const Glib::ustring & GEMTEXT,
Glib::ustring & title
) : Gtk::Viewport( // add scrolled window features to childs
@ -17,6 +18,7 @@ Gemini::Gemini(
set_child(
* Gtk::make_managed<gemini::Reader>(
REQUEST,
GEMTEXT,
title
)

View file

@ -14,6 +14,7 @@ namespace app::browser::main::tab::page::content::text
public:
Gemini(
const Glib::ustring & REQUEST,
const Glib::ustring & GEMTEXT,
Glib::ustring & title
);

View file

@ -3,6 +3,7 @@
using namespace app::browser::main::tab::page::content::text::gemini;
Reader::Reader(
const Glib::ustring & REQUEST,
const Glib::ustring & GEMTEXT,
Glib::ustring & title
) {
@ -47,6 +48,7 @@ Reader::Reader(
{
markup.append(
Make::link(
REQUEST,
address,
date,
alt
@ -245,6 +247,7 @@ Glib::ustring Reader::Make::header(
}
Glib::ustring Reader::Make::link(
const Glib::ustring & BASE,
const Glib::ustring & ADDRESS,
const Glib::ustring & DATE,
const Glib::ustring & ALT
@ -265,25 +268,15 @@ Glib::ustring Reader::Make::link(
);
}
/* @TODO
GError * error;
g_uri_resolve_relative(
get_text().c_str(),
get_text().c_str(),
G_URI_FLAGS_NONE,
&error
);
if (NULL)
*/
return Glib::ustring::sprintf(
"<a href=\"%s\" title=\"%s\">%s</a>\n",
Glib::Markup::escape_text(
ADDRESS // @TODO to absolute
g_uri_resolve_relative(
BASE.c_str(),
ADDRESS.c_str(),
G_URI_FLAGS_NONE,
NULL // GError * @TODO
)
),
Glib::Markup::escape_text(
ADDRESS

View file

@ -48,6 +48,7 @@ namespace app::browser::main::tab::page::content::text::gemini
);
static Glib::ustring link(
const Glib::ustring & REQUEST,
const Glib::ustring & ADDRESS,
const Glib::ustring & DATE,
const Glib::ustring & ALT
@ -68,6 +69,7 @@ namespace app::browser::main::tab::page::content::text::gemini
public:
Reader(
const Glib::ustring & REQUEST,
const Glib::ustring & GEMTEXT,
Glib::ustring & title
);