FALSE);
gtk_list_store_clear(ws_gui_app->ws_gui_w_list->ws_gui_store);
+
ws_gui_app->ws_gui_w_list->ws_gui_model =
create_and_fill_model(tmp, ws_gui_app);
guint i = 0;
gchar *tmp = g_strdup(g_array_index(words_list, gchar*, i));
- gboolean valid;
+ gboolean valid;
valid = gtk_tree_model_get_iter_first(
GTK_TREE_MODEL(ws_gui_app->ws_gui_w_list->ws_gui_store),
&ws_gui_app->ws_gui_w_list->ws_gui_iter);
tmp = g_strdup(g_array_index(words_list, gchar*, 0));
- if (tmp != NULL && ws_gui_app->history_flag == FALSE)
+ if (ws_gui_app->last_word == NULL)
+ {
+ ws_gui_app->last_word = g_strdup("\0");
+ }
+
+ if (tmp != NULL &&
+ ws_gui_app->history_flag == FALSE &&
+ (0 != strcmp(ws_gui_app->last_word, tmp)))
{
+
+
ws_dbus_client_find_translation(ws_gui_app->dbus_data, tmp);
ws_gui_history_add(tmp, ws_gui_app);
g_free(ws_gui_app->last_word);
WSGuiApp* ws_gui_app=(WSGuiApp*)user_data;
gchar *string;
ws_gui_app->ws_gui_w_list->ws_gui_selection = selection;
+
+ g_log(G_LOG_DOMAIN, G_LOG_LEVEL_INFO, ":::GUI:: CALLBACK Z SELECTION!!!");
if (gtk_tree_selection_get_selected(selection,
&ws_gui_app->ws_gui_w_list->ws_gui_model,
&string,
-1);
+ if (ws_gui_app->last_word == NULL)
+ {
+ ws_gui_app->last_word = g_strdup("\0");
+ }
+
+ if (string != NULL && (0 != strcmp(string, ws_gui_app->last_word)))
+ {
ws_dbus_client_find_translation(ws_gui_app->dbus_data, string);
+
g_free(ws_gui_app->last_word);
ws_gui_app->last_word = NULL;
ws_gui_app->last_word = g_strdup (string);
-
+ }
if (string != NULL && ws_gui_app->history_flag == FALSE)
{
- ws_gui_history_add(string, ws_gui_app);
+ ws_gui_history_add(string, ws_gui_app);
}
g_free (string);
}
ws_gui_app->raw_translation = g_string_new(" ");
ws_gui_app->last_searched = NULL;
ws_gui_app->last_searched_in_book = NULL;
+ ws_gui_app->last_word = NULL;
ws_gui_app->ws_gui_banner_flag = FALSE;
ws_gui_app->ws_gui_full_screen_flag = FALSE;
ws_gui_app->ws_gui_hildon_window),
_("ws_ni_dictionary_added"));
}
+ else if (g_str_has_suffix(name, ".bz2"))
+ {
+ GtkWidget *dialog_optimize;
+ GtkWidget *dialog_activate;
+ gboolean optimize;
+ gboolean activate;
+
+ dialog_activate = gtk_message_dialog_new(GTK_WINDOW(
+ ws_gui_app->ws_gui_hildon_window),
+ GTK_DIALOG_DESTROY_WITH_PARENT,
+ GTK_MESSAGE_QUESTION,
+ GTK_BUTTONS_YES_NO,
+ _("ws_ni_dictionaries_activation_question"));
+
+
+ if (gtk_dialog_run (GTK_DIALOG (dialog_activate))
+ == GTK_RESPONSE_YES)
+ {
+ activate = TRUE;
+ gtk_widget_destroy (dialog_activate);
+ }
+ else
+ {
+ activate = FALSE;
+ gtk_widget_destroy (dialog_activate);
+ }
+
+ dialog_optimize = gtk_message_dialog_new(GTK_WINDOW(
+ ws_gui_app->ws_gui_hildon_window),
+ GTK_DIALOG_DESTROY_WITH_PARENT,
+ GTK_MESSAGE_QUESTION,
+ GTK_BUTTONS_YES_NO,
+ _("ws_ni_dictionaries_optimalization_question"));
+
+
+ if (gtk_dialog_run (GTK_DIALOG (dialog_optimize))
+ == GTK_RESPONSE_YES)
+ {
+ optimize = TRUE;
+ gtk_widget_destroy (dialog_optimize);
+ }
+ else
+ {
+ optimize = FALSE;
+ gtk_widget_destroy (dialog_optimize);
+ }
+
+ }
else
{
gtk_widget_destroy (dialog2);