summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarlos Garcia Campos <cgarcia@igalia.com>2012-08-30 12:57:37 +0200
committerDavid King <amigadave@amigadave.com>2015-02-16 20:00:55 +0000
commit300a2c81610be6755205d2fb63fd231c5187888a (patch)
treea4e3b605f4812df04e424ba449a84065d925d53a
parent98a032693f71fae64deb2cfe415d874529974614 (diff)
downloadyelp-300a2c81610be6755205d2fb63fd231c5187888a.tar.gz
yelp-document: Use xref: uris for search results
-rw-r--r--libyelp/yelp-document.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/libyelp/yelp-document.c b/libyelp/yelp-document.c
index 04f98fba..2ead58df 100644
--- a/libyelp/yelp-document.c
+++ b/libyelp/yelp-document.c
@@ -1039,12 +1039,19 @@ document_read_contents (YelpDocument *document,
}
else {
while (g_variant_iter_loop (iter, "(&s&s&s&s)", &url, &title, &desc, &icon)) {
+ gchar *xref_uri = NULL;
+
+ if (g_str_has_prefix (url, document->priv->doc_uri))
+ xref_uri = g_strdup_printf ("xref:%s", url + strlen (document->priv->doc_uri) + 1);
+
tmp = g_markup_printf_escaped ("<div><a class='linkdiv' href='%s'><div class='linkdiv'>"
"<div class='title'>%s</div>"
"<div class='desc'>%s</div>"
"</div></a></div>",
- url, title, desc);
+ xref_uri && xref_uri[0] != '\0' ? xref_uri : url,
+ title, desc);
g_string_append (ret, tmp);
+ g_free (xref_uri);
g_free (tmp);
}
}