if (ws_gui_app->history_flag == TRUE)
{
- gtk_tree_model_get_iter_from_string
- (GTK_TREE_MODEL(
- ws_gui_app->ws_gui_w_list->ws_gui_model),
- &ws_gui_app->ws_gui_w_list->ws_gui_iter,
- g_array_index(ws_gui_app->ws_gui_history_iter,
- gchar*,
- ws_gui_app->ws_gui_history_cur_pos));
-
- gtk_tree_selection_select_iter(
+ if (gtk_tree_model_get_iter_from_string
+ (GTK_TREE_MODEL(
+ ws_gui_app->ws_gui_w_list->ws_gui_model),
+ &ws_gui_app->ws_gui_w_list->ws_gui_iter,
+ g_array_index(ws_gui_app->ws_gui_history_iter,
+ gchar*,
+ ws_gui_app->ws_gui_history_cur_pos)) == TRUE);
+ {
+
+ g_log(G_LOG_DOMAIN, G_LOG_LEVEL_INFO, "\n\nString from iter: %s", gtk_tree_model_get_string_from_iter(GTK_TREE_MODEL(
+ ws_gui_app->ws_gui_w_list->ws_gui_model), &ws_gui_app->ws_gui_w_list->ws_gui_iter));
+ g_log(G_LOG_DOMAIN, G_LOG_LEVEL_INFO, "GUI-TrePath: %s\n\n", gtk_tree_path_to_string(ws_gui_app->ws_gui_w_list->path));
+
+ gtk_tree_selection_select_iter(
ws_gui_app->ws_gui_w_list->ws_gui_selection,
&ws_gui_app->ws_gui_w_list->ws_gui_iter);
- ws_gui_app->history_flag = FALSE;
- ws_gui_fill_html(format_html(data.value.s, ws_gui_app), ws_gui_app);
- ws_gui_app->html_flag = TRUE;
+ ws_gui_app->history_flag = FALSE;
+ ws_gui_fill_html(format_html(data.value.s, ws_gui_app),
+ ws_gui_app);
+ ws_gui_app->html_flag = TRUE;
+ }
}
if (tmp->len == 0)
{
tmp_last_searched = g_strdup(ws_gui_app->last_searched_in_book);
}
+
g_array_append_val(ws_gui_app->ws_gui_history_list,
tmp_last_searched);
}
}
+
+ ws_gui_app->ws_gui_w_list->path = gtk_tree_model_get_path(GTK_TREE_MODEL(ws_gui_app->ws_gui_w_list->ws_gui_model), &ws_gui_app->ws_gui_w_list->ws_gui_iter);
ws_gui_check_history(ws_gui_app);
}
if(ws_gui_app->ws_gui_history->len >= 0)
{
- ws_gui_app->ws_gui_history = g_array_remove_range(
- ws_gui_app->ws_gui_history,
- 0,
- ws_gui_app->ws_gui_history->len);
- ws_gui_app->ws_gui_history_list = g_array_remove_range(
- ws_gui_app->ws_gui_history_list,
- 0,
- ws_gui_app->ws_gui_history_list->len);
- ws_gui_app->ws_gui_history_iter = g_array_remove_range(
- ws_gui_app->ws_gui_history_iter,
- 0,
- ws_gui_app->ws_gui_history_iter->len);
-
+ ws_gui_clear_array(ws_gui_app->ws_gui_history);
+ ws_gui_clear_array(ws_gui_app->ws_gui_history_list);
+ ws_gui_clear_array(ws_gui_app->ws_gui_history_iter);
ws_gui_app->ws_gui_history_cur_pos = -1;
}
-
ws_gui_check_history(ws_gui_app);
ws_gui_fill_html(" ", ws_gui_app);
if(ws_gui_app->ws_gui_history->len >= 0)
{
- ws_gui_app->ws_gui_history = g_array_remove_range(
- ws_gui_app->ws_gui_history, 0, ws_gui_app->ws_gui_history->len);
- ws_gui_app->ws_gui_history_list = g_array_remove_range(
- ws_gui_app->ws_gui_history_list,
- 0,
- ws_gui_app->ws_gui_history_list->len);
- ws_gui_app->ws_gui_history_iter = g_array_remove_range(
- ws_gui_app->ws_gui_history_iter,
- 0,
- ws_gui_app->ws_gui_history_iter->len);
-
+ ws_gui_clear_array(ws_gui_app->ws_gui_history);
+ ws_gui_clear_array(ws_gui_app->ws_gui_history_list);
+ ws_gui_clear_array(ws_gui_app->ws_gui_history_iter);
ws_gui_app->ws_gui_history_cur_pos = -1;
}
ws_gui_check_history(ws_gui_app);
GCONF_PATH,
NULL);
}
+
+void ws_gui_clear_array(GArray *history)
+{
+ if(history->len >= 0)
+ {
+ history = g_array_remove_range(history, 0, history->len);
+ }
+}
ws_dbus_notify(ws_gui_app->dbus_data,
WS_DBUS_INFO_CONFIG_CHANGED);
- if(ws_gui_app->ws_gui_history->len > 0)
+ if(ws_gui_app->ws_gui_history->len >= 0)
{
- ws_gui_app->ws_gui_history = g_array_remove_range (ws_gui_app->ws_gui_history, 0, ws_gui_app->ws_gui_history->len);
- ws_gui_app->ws_gui_history_list = g_array_remove_range (ws_gui_app->ws_gui_history_list, 0, ws_gui_app->ws_gui_history_list->len);
- ws_gui_app->ws_gui_history_iter = g_array_remove_range (ws_gui_app->ws_gui_history_iter, 0, ws_gui_app->ws_gui_history_iter->len);
+ ws_gui_clear_array(ws_gui_app->ws_gui_history);
+ ws_gui_clear_array(ws_gui_app->ws_gui_history_list);
+ ws_gui_clear_array(ws_gui_app->ws_gui_history_iter);
ws_gui_app->ws_gui_history_cur_pos = -1;
}
ws_gui_check_history(ws_gui_app);
}
gtk_widget_destroy (dialog2);
+ if(ws_gui_app->ws_gui_history->len >= 0)
+ {
+ ws_gui_clear_array(ws_gui_app->ws_gui_history);
+ ws_gui_clear_array(ws_gui_app->ws_gui_history_list);
+ ws_gui_clear_array(ws_gui_app->ws_gui_history_iter);
+ ws_gui_app->ws_gui_history_cur_pos = -1;
+ }
+ ws_gui_check_history(ws_gui_app);
+
ws_dbus_notify(ws_gui_app->dbus_data,
WS_DBUS_INFO_CONFIG_CHANGED);
gtk_infoprint(GTK_WINDOW(
}
}
+ if(ws_gui_app->ws_gui_history->len >= 0)
+ {
+ ws_gui_clear_array(ws_gui_app->ws_gui_history);
+ ws_gui_clear_array(ws_gui_app->ws_gui_history_list);
+ ws_gui_clear_array(ws_gui_app->ws_gui_history_iter);
+ ws_gui_app->ws_gui_history_cur_pos = -1;
+ }
+ ws_gui_check_history(ws_gui_app);
+
ws_dbus_notify(ws_gui_app->dbus_data,
WS_DBUS_INFO_CONFIG_CHANGED);
gtk_infoprint(GTK_WINDOW(