Enable changing the containing folder of bookmarks
This commit is contained in:
parent
d9bdaf0f8c
commit
69aa3bfdd9
1 changed files with 13 additions and 6 deletions
|
@ -607,8 +607,9 @@ midori_browser_edit_bookmark_dialog_new (MidoriBrowser* browser,
|
||||||
}
|
}
|
||||||
|
|
||||||
combo_folder = NULL;
|
combo_folder = NULL;
|
||||||
if (new_bookmark)
|
if (1)
|
||||||
{
|
{
|
||||||
|
KatzeItem* item;
|
||||||
guint i, n;
|
guint i, n;
|
||||||
|
|
||||||
hbox = gtk_hbox_new (FALSE, 8);
|
hbox = gtk_hbox_new (FALSE, 8);
|
||||||
|
@ -620,17 +621,21 @@ midori_browser_edit_bookmark_dialog_new (MidoriBrowser* browser,
|
||||||
gtk_combo_box_append_text (GTK_COMBO_BOX (combo_folder),
|
gtk_combo_box_append_text (GTK_COMBO_BOX (combo_folder),
|
||||||
_("Toplevel folder"));
|
_("Toplevel folder"));
|
||||||
gtk_combo_box_set_active (GTK_COMBO_BOX (combo_folder), 0);
|
gtk_combo_box_set_active (GTK_COMBO_BOX (combo_folder), 0);
|
||||||
if ((n = katze_array_get_length (browser->bookmarks)))
|
|
||||||
for (i = 0; i < n; i++)
|
i = 0;
|
||||||
|
n = 1;
|
||||||
|
while ((item = katze_array_get_nth_item (browser->bookmarks, i++)))
|
||||||
{
|
{
|
||||||
KatzeItem* item = katze_array_get_nth_item (browser->bookmarks, i);
|
|
||||||
if (KATZE_IS_ARRAY (item))
|
if (KATZE_IS_ARRAY (item))
|
||||||
{
|
{
|
||||||
const gchar* name = katze_item_get_name (item);
|
const gchar* name = katze_item_get_name (item);
|
||||||
gtk_combo_box_append_text (GTK_COMBO_BOX (combo_folder), name);
|
gtk_combo_box_append_text (GTK_COMBO_BOX (combo_folder), name);
|
||||||
|
if (katze_item_get_parent (bookmark) == item)
|
||||||
|
gtk_combo_box_set_active (GTK_COMBO_BOX (combo_folder), n);
|
||||||
|
n++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
if (!i)
|
||||||
gtk_widget_set_sensitive (combo_folder, FALSE);
|
gtk_widget_set_sensitive (combo_folder, FALSE);
|
||||||
gtk_box_pack_start (GTK_BOX (hbox), combo_folder, TRUE, TRUE, 0);
|
gtk_box_pack_start (GTK_BOX (hbox), combo_folder, TRUE, TRUE, 0);
|
||||||
gtk_container_add (GTK_CONTAINER (GTK_DIALOG (dialog)->vbox), hbox);
|
gtk_container_add (GTK_CONTAINER (GTK_DIALOG (dialog)->vbox), hbox);
|
||||||
|
@ -652,7 +657,7 @@ midori_browser_edit_bookmark_dialog_new (MidoriBrowser* browser,
|
||||||
gtk_entry_get_text (GTK_ENTRY (entry_uri)));
|
gtk_entry_get_text (GTK_ENTRY (entry_uri)));
|
||||||
|
|
||||||
folder = browser->bookmarks;
|
folder = browser->bookmarks;
|
||||||
if (new_bookmark)
|
if (1)
|
||||||
{
|
{
|
||||||
selected = gtk_combo_box_get_active_text (GTK_COMBO_BOX (combo_folder));
|
selected = gtk_combo_box_get_active_text (GTK_COMBO_BOX (combo_folder));
|
||||||
if (g_strcmp0 (selected, _("Toplevel folder")))
|
if (g_strcmp0 (selected, _("Toplevel folder")))
|
||||||
|
@ -672,6 +677,8 @@ midori_browser_edit_bookmark_dialog_new (MidoriBrowser* browser,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
g_free (selected);
|
g_free (selected);
|
||||||
|
if (!new_bookmark)
|
||||||
|
katze_array_remove_item (katze_item_get_parent (bookmark), bookmark);
|
||||||
katze_array_add_item (folder, bookmark);
|
katze_array_add_item (folder, bookmark);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue