X-Git-Url: https://git.wpitchoune.net/gitweb/?p=prss.git;a=blobdiff_plain;f=src%2Fmain.c;fp=src%2Fmain.c;h=b9e6860cfcae20bd155603579cd5f4ed4a86edcc;hp=20b9b14a8b10ee65153791778278cbd742066d07;hb=24fbad1fafb0e7c0cd65afb199a29a8676db5b5e;hpb=b182d98e4534d7b84a4d99c08b0f343e80d64ee4 diff --git a/src/main.c b/src/main.c index 20b9b14..b9e6860 100644 --- a/src/main.c +++ b/src/main.c @@ -32,6 +32,7 @@ #include #include "http.h" #include +#include #include "ttrss.h" #include "ttrss_ws.h" #include "webbrowser.h" @@ -282,12 +283,25 @@ static struct headline *get_selected_headline(GtkTreeIter *iter) return NULL; } +static char *headline_to_markup(struct headline *h) +{ + return strrepg(h->title, "&", "&"); +} + static char *headline_get_formated_headline(struct headline *h) { + char *tmp, *res; + + tmp = headline_to_markup(h); + if (h->unread) - return g_strdup_printf("%s", h->title); + res = g_strdup_printf("%s", tmp); else - return strdup(h->title); + res = strdup(tmp); + + free(tmp); + + return res; } static char *headline_get_date(struct headline *h) @@ -367,7 +381,7 @@ int headline_cursor_changed_cbk(GtkTreeView *treeview, gpointer data) GtkTreeIter iter; GtkTreeModel *model; struct headline *headline; - char *str, *date; + char *str, *date, *title; log_debug("headline_cursor_changed_cbk()"); @@ -377,7 +391,9 @@ int headline_cursor_changed_cbk(GtkTreeView *treeview, gpointer data) headline = get_selected_headline(&iter); if (headline) { - gtk_label_set_text(w_headline_title, headline->title); + title = headline_to_markup(headline); + gtk_label_set_markup(w_headline_title, title); + gtk_label_set_text(w_headline_date, ctime(&headline->date)); str = ttrss_get_headline_content(headline); @@ -398,11 +414,12 @@ int headline_cursor_changed_cbk(GtkTreeView *treeview, gpointer data) date = headline_get_date(headline); gtk_list_store_set(GTK_LIST_STORE(model), &iter, - COL_HEADLINE_TITLE, headline->title, + COL_HEADLINE_TITLE, title, COL_HEADLINE_DATE, date, COL_HEADLINE_EPOCH_TIME, headline->date, -1); free(date); + free(title); } else { log_debug("headline not found"); }