-/***************************************************************************
- * Copyright (C) 2019 by David Hallas <david@davidhallas.dk> *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU General Public License *
- * along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA *
- ***************************************************************************/
+/*
+ * SPDX-FileCopyrightText: 2019 David Hallas <david@davidhallas.dk>
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
#include "dolphinbookmarkhandler.h"
#include "dolphinmainwindow.h"
#include "global.h"
#include <KActionCollection>
#include <KBookmarkMenu>
-#include <KIO/Global>
#include <QDebug>
#include <QDir>
#include <QStandardPaths>
-DolphinBookmarkHandler::DolphinBookmarkHandler(DolphinMainWindow *mainWindow,
- KActionCollection* collection,
- QMenu* menu,
- QObject* parent) :
- QObject(parent),
- m_mainWindow(mainWindow)
+DolphinBookmarkHandler::DolphinBookmarkHandler(DolphinMainWindow *mainWindow, KActionCollection *collection, QMenu *menu, QObject *parent)
+ : QObject(parent)
+ , m_mainWindow(mainWindow)
{
- QString bookmarksFile = QStandardPaths::locate(QStandardPaths::GenericDataLocation,
- QStringLiteral("kfile/bookmarks.xml"));
+ QString bookmarksFile = QStandardPaths::locate(QStandardPaths::GenericDataLocation, QStringLiteral("kfile/bookmarks.xml"));
if (bookmarksFile.isEmpty()) {
QString genericDataLocation = QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation);
if (genericDataLocation.isEmpty()) {
QDir().mkpath(bookmarksFile);
bookmarksFile += QLatin1String("/bookmarks.xml");
}
- m_bookmarkManager = KBookmarkManager::managerForFile(bookmarksFile, QStringLiteral("dolphin"));
- m_bookmarkManager->setUpdate(true);
- m_bookmarkMenu.reset(new KBookmarkMenu(m_bookmarkManager, this, menu));
+ m_bookmarkManager = std::make_unique<KBookmarkManager>(bookmarksFile);
+ m_bookmarkMenu.reset(new KBookmarkMenu(m_bookmarkManager.get(), this, menu));
collection->addAction(QStringLiteral("add_bookmark"), m_bookmarkMenu->addBookmarkAction());
collection->addAction(QStringLiteral("edit_bookmarks"), m_bookmarkMenu->editBookmarksAction());
bool DolphinBookmarkHandler::enableOption(KBookmarkOwner::BookmarkOption option) const
{
switch (option) {
- case BookmarkOption::ShowAddBookmark: return true;
- case BookmarkOption::ShowEditBookmark: return true;
+ case BookmarkOption::ShowAddBookmark:
+ return true;
+ case BookmarkOption::ShowEditBookmark:
+ return true;
}
return false;
}
-void DolphinBookmarkHandler::openBookmark(const KBookmark& bookmark, Qt::MouseButtons, Qt::KeyboardModifiers)
+void DolphinBookmarkHandler::openBookmark(const KBookmark &bookmark, Qt::MouseButtons, Qt::KeyboardModifiers)
{
m_mainWindow->changeUrl(bookmark.url());
}
-void DolphinBookmarkHandler::openFolderinTabs(const KBookmarkGroup& bookmarkGroup)
+void DolphinBookmarkHandler::openFolderinTabs(const KBookmarkGroup &bookmarkGroup)
{
m_mainWindow->openDirectories(bookmarkGroup.groupUrlList(), false);
}
-void DolphinBookmarkHandler::openInNewTab(const KBookmark& bookmark)
+void DolphinBookmarkHandler::openInNewTab(const KBookmark &bookmark)
{
- m_mainWindow->openNewTabAfterCurrentTab(bookmark.url());
+ m_mainWindow->openNewTab(bookmark.url());
}
-void DolphinBookmarkHandler::openInNewWindow(const KBookmark& bookmark)
+void DolphinBookmarkHandler::openInNewWindow(const KBookmark &bookmark)
{
Dolphin::openNewWindow({bookmark.url()}, m_mainWindow);
}
-QString DolphinBookmarkHandler::title(DolphinViewContainer* viewContainer)
+QString DolphinBookmarkHandler::title(DolphinViewContainer *viewContainer)
{
return viewContainer->caption();
}
-QUrl DolphinBookmarkHandler::url(DolphinViewContainer* viewContainer)
+QUrl DolphinBookmarkHandler::url(DolphinViewContainer *viewContainer)
{
return viewContainer->url();
}
-QString DolphinBookmarkHandler::icon(DolphinViewContainer* viewContainer)
+QString DolphinBookmarkHandler::icon(DolphinViewContainer *viewContainer)
{
return KIO::iconNameForUrl(viewContainer->url());
}
+
+#include "moc_dolphinbookmarkhandler.cpp"