From 5dcce5ee7698ad2749186306627583e109e0f235 Mon Sep 17 00:00:00 2001 From: Andrea Diamantini Date: Tue, 25 May 2010 00:29:17 +0200 Subject: Properly take care of ampersands Ronny Scholz patch. Thanks ;) --- src/bookmarks/bookmarkcontextmenu.cpp | 10 ++++++---- src/bookmarks/bookmarksmanager.cpp | 4 +++- 2 files changed, 9 insertions(+), 5 deletions(-) (limited to 'src/bookmarks') diff --git a/src/bookmarks/bookmarkcontextmenu.cpp b/src/bookmarks/bookmarkcontextmenu.cpp index 47608710..c96fa7bf 100644 --- a/src/bookmarks/bookmarkcontextmenu.cpp +++ b/src/bookmarks/bookmarkcontextmenu.cpp @@ -213,11 +213,12 @@ void BookmarkContextMenu::deleteBookmark() { KBookmark bm = bookmark(); bool folder = bm.isGroup(); + QString name = QString(bm.text()).replace("&&", "&"); if (KMessageBox::warningContinueCancel( QApplication::activeWindow(), - folder ? i18n("Are you sure you wish to remove the bookmark folder\n\"%1\"?", bm.text()) - : i18n("Are you sure you wish to remove the bookmark\n\"%1\"?", bm.text()), + folder ? i18n("Are you sure you wish to remove the bookmark folder\n\"%1\"?", name) + : i18n("Are you sure you wish to remove the bookmark\n\"%1\"?", name), folder ? i18n("Bookmark Folder Deletion") : i18n("Bookmark Deletion"), KStandardGuiItem::del()) @@ -233,9 +234,10 @@ void BookmarkContextMenu::deleteBookmark() void BookmarkContextMenu::editBookmark() { KBookmark selected = bookmark(); - + selected.setFullText(selected.text().replace("&&", "&")); KBookmarkDialog *dialog = owner()->bookmarkDialog(manager(), QApplication::activeWindow()); dialog->editBookmark(selected); + selected.setFullText(selected.text().replace("&", "&&")); delete dialog; } @@ -317,7 +319,7 @@ void BookmarkContextMenu::bookmarkCurrentPage() if (selected.isGroup()) parent = selected.toGroup(); - KBookmark newBk = parent.addBookmark(owner()->currentTitle(), KUrl(owner()->currentUrl()), "text-html"); + KBookmark newBk = parent.addBookmark(owner()->currentTitle().replace("&", "&&"), KUrl(owner()->currentUrl()), "text-html"); parent.moveBookmark(newBk, selected.parentGroup().previous(selected)); } diff --git a/src/bookmarks/bookmarksmanager.cpp b/src/bookmarks/bookmarksmanager.cpp index 03146ea2..605b9630 100644 --- a/src/bookmarks/bookmarksmanager.cpp +++ b/src/bookmarks/bookmarksmanager.cpp @@ -409,7 +409,9 @@ void BookmarkProvider::fillBookmarkBar(KToolBar *toolBar) else { - toolBar->addAction(new KBookmarkAction(bookmark, m_owner, this)); + KBookmarkAction* a = new KBookmarkAction(bookmark, m_owner, this); + a->setIconText(a->iconText().replace("&", "&&")); + toolBar->addAction(a); } } } -- cgit v1.2.1