summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/bookmarks/bookmarksmanager.cpp27
1 files changed, 14 insertions, 13 deletions
diff --git a/src/bookmarks/bookmarksmanager.cpp b/src/bookmarks/bookmarksmanager.cpp
index d50e9e77..c9a79fa8 100644
--- a/src/bookmarks/bookmarksmanager.cpp
+++ b/src/bookmarks/bookmarksmanager.cpp
@@ -79,21 +79,22 @@ void BookmarkOwner::openBookmark(const KBookmark & bookmark,
void BookmarkOwner::bookmarkPage(KBookmark &position)
{
BookmarkOwner *owner = Application::bookmarkProvider()->bookmarkOwner();
- KBookmarkGroup parent = Application::bookmarkProvider()->rootGroup();
+
+ KBookmarkGroup parent;
if (!position.isNull())
{
- parent = position.parentGroup();
-
if (position.isGroup())
parent = position.toGroup();
+ else
+ parent = position.parentGroup();
KBookmark newBk = parent.addBookmark(owner->currentTitle().replace('&', "&&"), KUrl(owner->currentUrl()));
parent.moveBookmark(newBk, position.parentGroup().previous(position));
}
-
else
{
+ parent = Application::bookmarkProvider()->rootGroup();
parent.addBookmark(owner->currentTitle(), KUrl(owner->currentUrl()));
}
@@ -107,18 +108,17 @@ void BookmarkOwner::newBookmarkFolder(KBookmark &position)
KBookmarkManager *manager = Application::bookmarkProvider()->bookmarkManager();
KBookmarkDialog *dialog = owner->bookmarkDialog(manager, QApplication::activeWindow());
+ QString folderName = i18n("New folder");
if (!position.isNull())
{
if (position.isGroup())
{
- dialog->createNewFolder("New folder", position);
+ dialog->createNewFolder(folderName, position);
}
-
else
{
- KBookmark newBk;
- newBk = dialog->createNewFolder("New folder", position.parentGroup());
+ KBookmark newBk = dialog->createNewFolder(folderName, position.parentGroup());
if (!newBk.isNull())
{
position.parentGroup().moveBookmark(newBk, position);
@@ -128,7 +128,7 @@ void BookmarkOwner::newBookmarkFolder(KBookmark &position)
}
else
{
- dialog->createNewFolder("New folder");
+ dialog->createNewFolder(folderName);
}
delete dialog;
@@ -146,20 +146,18 @@ void BookmarkOwner::newSeparator(KBookmark &position)
else
newBk = position.parentGroup().createNewSeparator();
}
-
else
{
newBk = Application::bookmarkProvider()->rootGroup().createNewSeparator();
}
KBookmarkGroup parent = newBk.parentGroup();
- newBk.setIcon(("edit-clear"));
- parent.addBookmark(newBk);
+ newBk.setIcon("edit-clear");
if (!position.isNull())
parent.moveBookmark(newBk, position);
- Application::bookmarkProvider()->bookmarkManager()->emitChanged(newBk.parentGroup());
+ Application::bookmarkProvider()->bookmarkManager()->emitChanged(parent);
}
@@ -167,10 +165,13 @@ void BookmarkOwner::editBookmark(KBookmark &bookmark)
{
BookmarkOwner *owner = Application::bookmarkProvider()->bookmarkOwner();
KBookmarkManager *manager = Application::bookmarkProvider()->bookmarkManager();
+
bookmark.setFullText(bookmark.fullText().replace("&&", "&"));
KBookmarkDialog *dialog = owner->bookmarkDialog(manager, QApplication::activeWindow());
+
dialog->editBookmark(bookmark);
bookmark.setFullText(bookmark.fullText().replace('&', "&&"));
+
delete dialog;
}