Lagrange [release]
SidebarWidget: Editing folder names
[1mdiff --git a/src/ui/sidebarwidget.c b/src/ui/sidebarwidget.c[m
[1mindex 72205912..aaa6e9e9 100644[m
[1m--- a/src/ui/sidebarwidget.c[m
[1m+++ b/src/ui/sidebarwidget.c[m
[36m@@ -994,22 +994,24 @@[m [miBool handleBookmarkEditorCommands_SidebarWidget_(iWidget *editor, const char *c[m
iAssert(item); /* hover item cannot have been changed */[m
iBookmark *bm = get_Bookmarks(bookmarks_App(), item->id);[m
set_String(&bm->title, title);[m
[31m- set_String(&bm->url, url);[m
[31m- set_String(&bm->tags, tags);[m
[31m- if (isEmpty_String(icon)) {[m
[31m- removeTag_Bookmark(bm, userIcon_BookmarkTag);[m
[31m- bm->icon = 0;[m
[31m- }[m
[31m- else {[m
[31m- addTagIfMissing_Bookmark(bm, userIcon_BookmarkTag);[m
[31m- bm->icon = first_String(icon);[m
[31m- }[m
[31m- addOrRemoveTag_Bookmark(bm, homepage_BookmarkTag,[m
[31m- isSelected_Widget(findChild_Widget(editor, "bmed.tag.home")));[m
[31m- addOrRemoveTag_Bookmark(bm, remoteSource_BookmarkTag,[m
[31m- isSelected_Widget(findChild_Widget(editor, "bmed.tag.remote")));[m
[31m- addOrRemoveTag_Bookmark(bm, linkSplit_BookmarkTag,[m
[31m- isSelected_Widget(findChild_Widget(editor, "bmed.tag.linksplit")));[m
[32m+[m[32m if (!isFolder_Bookmark(bm)) {[m
[32m+[m[32m set_String(&bm->url, url);[m
[32m+[m[32m set_String(&bm->tags, tags);[m
[32m+[m[32m if (isEmpty_String(icon)) {[m
[32m+[m[32m removeTag_Bookmark(bm, userIcon_BookmarkTag);[m
[32m+[m[32m bm->icon = 0;[m
[32m+[m[32m }[m
[32m+[m[32m else {[m
[32m+[m[32m addTagIfMissing_Bookmark(bm, userIcon_BookmarkTag);[m
[32m+[m[32m bm->icon = first_String(icon);[m
[32m+[m[32m }[m
[32m+[m[32m addOrRemoveTag_Bookmark(bm, homepage_BookmarkTag,[m
[32m+[m[32m isSelected_Widget(findChild_Widget(editor, "bmed.tag.home")));[m
[32m+[m[32m addOrRemoveTag_Bookmark(bm, remoteSource_BookmarkTag,[m
[32m+[m[32m isSelected_Widget(findChild_Widget(editor, "bmed.tag.remote")));[m
[32m+[m[32m addOrRemoveTag_Bookmark(bm, linkSplit_BookmarkTag,[m
[32m+[m[32m isSelected_Widget(findChild_Widget(editor, "bmed.tag.linksplit")));[m
[32m+[m[32m }[m[41m [m
postCommand_App("bookmarks.changed");[m
}[m
setupSheetTransition_Mobile(editor, iFalse);[m
[36m@@ -1280,18 +1282,32 @@[m [mstatic iBool processEvent_SidebarWidget_(iSidebarWidget *d, const SDL_Event *ev)[m
setId_Widget(dlg, format_CStr("bmed.%s", cstr_String(id_Widget(w))));[m
iBookmark *bm = get_Bookmarks(bookmarks_App(), item->id);[m
setText_InputWidget(findChild_Widget(dlg, "bmed.title"), &bm->title);[m
[31m- setText_InputWidget(findChild_Widget(dlg, "bmed.url"), &bm->url);[m
[31m- setText_InputWidget(findChild_Widget(dlg, "bmed.tags"), &bm->tags);[m
[31m- if (hasTag_Bookmark(bm, userIcon_BookmarkTag)) {[m
[31m- setText_InputWidget(findChild_Widget(dlg, "bmed.icon"),[m
[31m- collect_String(newUnicodeN_String(&bm->icon, 1)));[m
[32m+[m[32m iInputWidget *urlInput = findChild_Widget(dlg, "bmed.url");[m
[32m+[m[32m iInputWidget *tagsInput = findChild_Widget(dlg, "bmed.tags");[m
[32m+[m[32m iInputWidget *iconInput = findChild_Widget(dlg, "bmed.icon");[m
[32m+[m[32m iWidget * homeTag = findChild_Widget(dlg, "bmed.tag.home");[m
[32m+[m[32m iWidget * remoteSourceTag = findChild_Widget(dlg, "bmed.tag.remote");[m
[32m+[m[32m iWidget * linkSplitTag = findChild_Widget(dlg, "bmed.tag.linksplit");[m
[32m+[m[32m if (!isFolder_Bookmark(bm)) {[m
[32m+[m[32m setText_InputWidget(urlInput, &bm->url);[m
[32m+[m[32m setText_InputWidget(tagsInput, &bm->tags);[m
[32m+[m[32m if (hasTag_Bookmark(bm, userIcon_BookmarkTag)) {[m
[32m+[m[32m setText_InputWidget(iconInput,[m
[32m+[m[32m collect_String(newUnicodeN_String(&bm->icon, 1)));[m
[32m+[m[32m }[m
[32m+[m[32m setToggle_Widget(homeTag, hasTag_Bookmark(bm, homepage_BookmarkTag));[m
[32m+[m[32m setToggle_Widget(remoteSourceTag, hasTag_Bookmark(bm, remoteSource_BookmarkTag));[m
[32m+[m[32m setToggle_Widget(linkSplitTag, hasTag_Bookmark(bm, linkSplit_BookmarkTag));[m
[32m+[m[32m }[m
[32m+[m[32m else {[m
[32m+[m[32m setFlags_Widget(findChild_Widget(dlg, "bmed.special"),[m
[32m+[m[32m hidden_WidgetFlag | disabled_WidgetFlag,[m
[32m+[m[32m iTrue);[m
[32m+[m[32m iAnyObject *notNeeded[] = { urlInput, tagsInput, iconInput, NULL };[m
[32m+[m[32m iForIndices(i, notNeeded) {[m
[32m+[m[32m setFlags_Widget(notNeeded[i], disabled_WidgetFlag, iTrue);[m
[32m+[m[32m }[m
}[m
[31m- setToggle_Widget(findChild_Widget(dlg, "bmed.tag.home"),[m
[31m- hasTag_Bookmark(bm, homepage_BookmarkTag));[m
[31m- setToggle_Widget(findChild_Widget(dlg, "bmed.tag.remote"),[m
[31m- hasTag_Bookmark(bm, remoteSource_BookmarkTag));[m
[31m- setToggle_Widget(findChild_Widget(dlg, "bmed.tag.linksplit"),[m
[31m- hasTag_Bookmark(bm, linkSplit_BookmarkTag));[m
setCommandHandler_Widget(dlg, handleBookmarkEditorCommands_SidebarWidget_);[m
setFocus_Widget(findChild_Widget(dlg, "bmed.title"));[m
}[m
[1mdiff --git a/src/ui/util.c b/src/ui/util.c[m
[1mindex adee2ee5..80bd5d44 100644[m
[1m--- a/src/ui/util.c[m
[1m+++ b/src/ui/util.c[m
[36m@@ -2655,7 +2655,9 @@[m [miWidget *makeBookmarkEditor_Widget(void) {[m
addDialogInputWithHeading_(headings, values, "${dlg.bookmark.icon}", "bmed.icon", iClob(inputs[3] = new_InputWidget(1)));[m
/* Buttons for special tags. */[m
addChild_Widget(dlg, iClob(makePadding_Widget(gap_UI)));[m
[31m- addChild_Widget(dlg, iClob(makeTwoColumns_Widget(&headings, &values)));[m
[32m+[m[32m iWidget *special = addChild_Widget(dlg, iClob(makeTwoColumns_Widget(&headings, &values)));[m
[32m+[m[32m setFlags_Widget(special, collapse_WidgetFlag, iTrue);[m
[32m+[m[32m setId_Widget(special, "bmed.special");[m
makeTwoColumnHeading_("${heading.bookmark.tags}", headings, values);[m
addDialogToggle_(headings, values, "${bookmark.tag.home}", "bmed.tag.home");[m
addDialogToggle_(headings, values, "${bookmark.tag.remote}", "bmed.tag.remote");[m