#include <KActionCollection>
#include <KFileItemActions>
#include <KFileItemListProperties>
+#include <KHamburgerMenu>
#include <KIO/EmptyTrashJob>
#include <KIO/JobUiDelegate>
#include <KIO/Paste>
#include <KLocalizedString>
#include <KNewFileMenu>
#include <KPluginMetaData>
-#include <KService>
#include <KStandardAction>
#include <KToolBar>
const DolphinView* view = m_mainWindow->activeViewContainer()->view();
m_selectedItems = view->selectedItems();
- installEventFilter(this);
+ QApplication::instance()->installEventFilter(this);
+
+ static_cast<KHamburgerMenu *>(m_mainWindow->actionCollection()->
+ action(QStringLiteral("hamburger_menu")))->addToMenu(this);
}
DolphinContextMenu::~DolphinContextMenu()
return m_command;
}
-void DolphinContextMenu::childEvent(QChildEvent* event)
+bool DolphinContextMenu::eventFilter(QObject* object, QEvent* event)
{
- if(event->added()) {
- event->child()->installEventFilter(this);
- }
- QMenu::childEvent(event);
-}
+ Q_UNUSED(object)
-bool DolphinContextMenu::eventFilter(QObject* dest, QEvent* event)
-{
if(event->type() == QEvent::KeyPress || event->type() == QEvent::KeyRelease) {
QKeyEvent* keyEvent = static_cast<QKeyEvent*>(event);
- if(m_removeAction && keyEvent->key() == Qt::Key_Shift) {
- if(event->type() == QEvent::KeyPress) {
+
+ if (m_removeAction && keyEvent->key() == Qt::Key_Shift) {
+ if (event->type() == QEvent::KeyPress) {
m_removeAction->update(DolphinRemoveAction::ShiftState::Pressed);
} else {
m_removeAction->update(DolphinRemoveAction::ShiftState::Released);
}
- return true;
}
}
- return QMenu::eventFilter(dest, event);
+
+ return false;
}
void DolphinContextMenu::openTrashContextMenu()
QAction* propertiesAction = m_mainWindow->actionCollection()->action(QStringLiteral("properties"));
addAction(propertiesAction);
- addShowMenuBarAction();
-
if (exec(m_pos) == emptyTrashAction) {
Trash::empty(m_mainWindow);
}
QMenu* menu = newFileMenu->menu();
menu->setTitle(i18nc("@title:menu Create new folder, file, link, etc.", "Create New"));
- menu->setIcon(QIcon::fromTheme(QStringLiteral("document-new")));
+ menu->setIcon(QIcon::fromTheme(QStringLiteral("list-add")));
addMenu(menu);
addSeparator();
QAction* propertiesAction = m_mainWindow->actionCollection()->action(QStringLiteral("properties"));
addAction(propertiesAction);
- addShowMenuBarAction();
-
exec(m_pos);
}
}
}
-void DolphinContextMenu::addShowMenuBarAction()
-{
- const KActionCollection* ac = m_mainWindow->actionCollection();
- QAction* showMenuBar = ac->action(KStandardAction::name(KStandardAction::ShowMenubar));
- if (!m_mainWindow->menuBar()->isVisible() && !m_mainWindow->toolBar()->isVisible()) {
- addSeparator();
- addAction(showMenuBar);
- }
-}
-
bool DolphinContextMenu::placeExists(const QUrl& url) const
{
const KFilePlacesModel* placesModel = DolphinPlacesModelSingleton::instance().placesModel();