1
0
mirror of https://invent.kde.org/system/dolphin synced 2024-07-07 10:51:45 +00:00

Allow compiling Dolphin with KF5

This does not work properly yet, there are probably quite a few bad signal/
slot connections due to KUrl -> QUrl. However dolphin starts without
crashing.

Accessibility is not ported since that changed quite a lot from Qt4 -> Qt5
and I have no idea how it is supposed to be used.

This is the first commit for review 117395
This commit is contained in:
Alex Richardson 2014-04-06 03:32:55 +02:00
parent c2887688f1
commit 2f045c6010
54 changed files with 243 additions and 174 deletions

View File

@ -1,2 +1,2 @@
add_definitions(-Wno-deprecated-declarations)
add_subdirectory(src) add_subdirectory(src)

View File

@ -1,17 +1,17 @@
macro_optional_find_package(Baloo) find_package(Baloo)
set_package_properties(Baloo PROPERTIES DESCRIPTION "Baloo Core libraries" set_package_properties(Baloo PROPERTIES DESCRIPTION "Baloo Core libraries"
URL "http://www.kde.org" URL "http://www.kde.org"
TYPE OPTIONAL TYPE OPTIONAL
PURPOSE "For adding desktop-wide search and tagging support to dolphin" PURPOSE "For adding desktop-wide search and tagging support to dolphin"
) )
macro_optional_find_package(BalooWidgets) find_package(BalooWidgets)
set_package_properties(BalooWidgets PROPERTIES DESCRIPTION "Baloos Widgets" set_package_properties(BalooWidgets PROPERTIES DESCRIPTION "Baloos Widgets"
URL "http://www.kde.org" URL "http://www.kde.org"
TYPE OPTIONAL TYPE OPTIONAL
) )
macro_optional_find_package(KFileMetaData) find_package(KFileMetaData)
set_package_properties(KFileMetaData PROPERTIES set_package_properties(KFileMetaData PROPERTIES
URL "https://projects.kde.org/kfilemetadata" URL "https://projects.kde.org/kfilemetadata"
TYPE OPTIONAL TYPE OPTIONAL
@ -22,6 +22,10 @@ if (Baloo_FOUND AND BalooWidgets_FOUND AND KFileMetaData_FOUND)
set(HAVE_BALOO TRUE) set(HAVE_BALOO TRUE)
endif() endif()
find_package(KF5NewStuff CONFIG REQUIRED)
find_package(KF5KCMUtils CONFIG REQUIRED)
find_package(Phonon4Qt5 CONFIG REQUIRED)
configure_file(config-baloo.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-baloo.h ) configure_file(config-baloo.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-baloo.h )
macro_bool_to_01(X11_Xrender_FOUND HAVE_XRENDER) macro_bool_to_01(X11_Xrender_FOUND HAVE_XRENDER)
@ -49,7 +53,7 @@ set(dolphinprivate_LIB_SRCS
kitemviews/kitemlistselectionmanager.cpp kitemviews/kitemlistselectionmanager.cpp
kitemviews/kitemliststyleoption.cpp kitemviews/kitemliststyleoption.cpp
kitemviews/kitemlistview.cpp kitemviews/kitemlistview.cpp
kitemviews/kitemlistviewaccessible.cpp # kitemviews/kitemlistviewaccessible.cpp
kitemviews/kitemlistwidget.cpp kitemviews/kitemlistwidget.cpp
kitemviews/kitemmodelbase.cpp kitemviews/kitemmodelbase.cpp
kitemviews/kitemset.cpp kitemviews/kitemset.cpp
@ -117,9 +121,9 @@ kde4_add_library(dolphinprivate SHARED ${dolphinprivate_LIB_SRCS})
target_link_libraries( target_link_libraries(
dolphinprivate dolphinprivate
${KDE4_KFILE_LIBS}
konq konq
${KDE4_KNEWSTUFF3_LIBS} KF5::NewStuff
KF5::KDE4Support
) )
if(HAVE_BALOO) if(HAVE_BALOO)
@ -144,15 +148,9 @@ install(TARGETS dolphinprivate ${INSTALL_TARGETS_DEFAULT_ARGS})
set(dolphinpart_SRCS set(dolphinpart_SRCS
dolphinpart.cpp dolphinpart.cpp
dolphinpart_ext.cpp
) )
# Add dolphinpart_ext.cpp conditionally, only with KDE > 4.9.1.
if (${KDE_VERSION} VERSION_GREATER "4.9.1")
set(dolphinpart_SRCS
${dolphinpart_SRCS}
dolphinpart_ext.cpp)
endif (${KDE_VERSION} VERSION_GREATER "4.9.1")
kde4_add_plugin(dolphinpart ${dolphinpart_SRCS}) kde4_add_plugin(dolphinpart ${dolphinpart_SRCS})
target_link_libraries(dolphinpart dolphinprivate konq ${KDE4_KPARTS_LIBS} ${KDE4_KFILE_LIBS}) target_link_libraries(dolphinpart dolphinprivate konq ${KDE4_KPARTS_LIBS} ${KDE4_KFILE_LIBS})
@ -235,16 +233,17 @@ kde4_add_app_icon(dolphin_SRCS "${KDE4_ICON_INSTALL_DIR}/oxygen/*/apps/system-fi
kde4_add_kdeinit_executable(dolphin ${dolphin_SRCS}) kde4_add_kdeinit_executable(dolphin ${dolphin_SRCS})
target_include_directories(kdeinit_dolphin PRIVATE ${PHONON_INCLUDES})
target_link_libraries(kdeinit_dolphin target_link_libraries(kdeinit_dolphin
${KDE4_KDEPRINT_LIBS}
${KDE4_KFILE_LIBS}
${KDE4_KPARTS_LIBS}
${KDE4_KCMUTILS_LIBRARY}
konq konq
dolphinprivate dolphinprivate
knewstuff3 KF5::NewStuff
${KDE4_SOLID_LIBS} KF5::Parts
${KDE4_PHONON_LIBS} KF5::KCMUtils
KF5::Solid
Phonon::phonon4qt5
KF5::KDE4Support
) )
if(HAVE_BALOO) if(HAVE_BALOO)

View File

@ -26,6 +26,7 @@
#include <KDebug> #include <KDebug>
#include <KRun> #include <KRun>
#include <KUrl> #include <KUrl>
#include <KGlobal>
DolphinApplication::DolphinApplication() : DolphinApplication::DolphinApplication() :
m_mainWindow(0) m_mainWindow(0)

View File

@ -39,6 +39,7 @@
#include <KMenuBar> #include <KMenuBar>
#include <KMessageBox> #include <KMessageBox>
#include <KMimeTypeTrader> #include <KMimeTypeTrader>
#include <KMimeType>
#include <KNewFileMenu> #include <KNewFileMenu>
#include <konqmimedata.h> #include <konqmimedata.h>
#include <konq_operations.h> #include <konq_operations.h>
@ -205,7 +206,7 @@ void DolphinContextMenu::openItemContextMenu()
connect(newFileMenu, SIGNAL(fileCreated(KUrl)), newFileMenu, SLOT(deleteLater())); connect(newFileMenu, SIGNAL(fileCreated(KUrl)), newFileMenu, SLOT(deleteLater()));
connect(newFileMenu, SIGNAL(directoryCreated(KUrl)), newFileMenu, SLOT(deleteLater())); connect(newFileMenu, SIGNAL(directoryCreated(KUrl)), newFileMenu, SLOT(deleteLater()));
KMenu* menu = newFileMenu->menu(); QMenu* menu = newFileMenu->menu();
menu->setTitle(i18nc("@title:menu Create new folder, file, link, etc.", "Create New")); menu->setTitle(i18nc("@title:menu Create new folder, file, link, etc.", "Create New"));
menu->setIcon(KIcon("document-new")); menu->setIcon(KIcon("document-new"));
addMenu(menu); addMenu(menu);
@ -490,7 +491,7 @@ void DolphinContextMenu::addFileItemPluginActions()
const KConfig config("kservicemenurc", KConfig::NoGlobals); const KConfig config("kservicemenurc", KConfig::NoGlobals);
const KConfigGroup showGroup = config.group("Show"); const KConfigGroup showGroup = config.group("Show");
foreach (const KSharedPtr<KService>& service, pluginServices) { foreach (const KService::Ptr& service, pluginServices) {
if (!showGroup.readEntry(service->desktopEntryName(), true)) { if (!showGroup.readEntry(service->desktopEntryName(), true)) {
// The plugin has been disabled // The plugin has been disabled
continue; continue;

View File

@ -53,6 +53,9 @@
#include <kdualaction.h> #include <kdualaction.h>
#include <KFileDialog> #include <KFileDialog>
#include <KGlobal> #include <KGlobal>
#include <KDialog>
#include <KJobWidgets>
#include <KMimeType>
#include <KLineEdit> #include <KLineEdit>
#include <KToolBar> #include <KToolBar>
#include <KIcon> #include <KIcon>
@ -86,6 +89,8 @@
#include <QClipboard> #include <QClipboard>
#include <QToolButton> #include <QToolButton>
#include <QSplitter> #include <QSplitter>
#include <QTimer>
#include <QPushButton>
namespace { namespace {
// Used for GeneralSettings::version() to determine whether // Used for GeneralSettings::version() to determine whether
@ -550,7 +555,7 @@ void DolphinMainWindow::openInNewWindow()
} }
if (!newWindowUrl.isEmpty()) { if (!newWindowUrl.isEmpty()) {
KRun::run("dolphin %u", KUrl::List() << newWindowUrl, this); KRun::run("dolphin %u", QList<QUrl>() << newWindowUrl, this);
} }
} }
@ -593,18 +598,19 @@ void DolphinMainWindow::closeEvent(QCloseEvent* event)
// KDialog::Yes -> Quit // KDialog::Yes -> Quit
// KDialog::No -> Close only the current tab // KDialog::No -> Close only the current tab
// KDialog::Cancel -> do nothing // KDialog::Cancel -> do nothing
KDialog *dialog = new KDialog(this, Qt::Dialog); QDialog *dialog = new QDialog(this, Qt::Dialog);
dialog->setCaption(i18nc("@title:window", "Confirmation")); dialog->setWindowTitle(i18nc("@title:window", "Confirmation"));
dialog->setButtons(KDialog::Yes | KDialog::No | KDialog::Cancel);
dialog->setModal(true); dialog->setModal(true);
dialog->setButtonGuiItem(KDialog::Yes, KStandardGuiItem::quit()); QDialogButtonBox* buttons = new QDialogButtonBox(QDialogButtonBox::Yes | QDialogButtonBox::No | QDialogButtonBox::Cancel);
dialog->setButtonGuiItem(KDialog::No, KGuiItem(i18n("C&lose Current Tab"), KIcon("tab-close"))); KGuiItem::assign(buttons->button(QDialogButtonBox::Yes), KStandardGuiItem::quit());
dialog->setButtonGuiItem(KDialog::Cancel, KStandardGuiItem::cancel()); KGuiItem::assign(buttons->button(QDialogButtonBox::No), KGuiItem(i18n("C&lose Current Tab"), KIcon("tab-close")));
dialog->setDefaultButton(KDialog::Yes); KGuiItem::assign(buttons->button(QDialogButtonBox::Cancel), KStandardGuiItem::cancel());
buttons->button(QDialogButtonBox::Yes)->setDefault(true);
bool doNotAskAgainCheckboxResult = false; bool doNotAskAgainCheckboxResult = false;
const int result = KMessageBox::createKMessageBox(dialog, const int result = KMessageBox::createKMessageBox(dialog,
buttons,
QMessageBox::Warning, QMessageBox::Warning,
i18n("You have multiple tabs open in this window, are you sure you want to quit?"), i18n("You have multiple tabs open in this window, are you sure you want to quit?"),
QStringList(), QStringList(),
@ -1232,7 +1238,7 @@ void DolphinMainWindow::handleUrl(const KUrl& url)
// stat the URL to see if it is a dir or not // stat the URL to see if it is a dir or not
m_lastHandleUrlStatJob = KIO::stat(url, KIO::HideProgressInfo); m_lastHandleUrlStatJob = KIO::stat(url, KIO::HideProgressInfo);
if (m_lastHandleUrlStatJob->ui()) { if (m_lastHandleUrlStatJob->ui()) {
m_lastHandleUrlStatJob->ui()->setWindow(this); KJobWidgets::setWindow(m_lastHandleUrlStatJob, this);
} }
connect(m_lastHandleUrlStatJob, SIGNAL(result(KJob*)), connect(m_lastHandleUrlStatJob, SIGNAL(result(KJob*)),
this, SLOT(slotHandleUrlStatFinished(KJob*))); this, SLOT(slotHandleUrlStatFinished(KJob*)));
@ -1285,12 +1291,13 @@ void DolphinMainWindow::openContextMenu(const QPoint& pos,
switch (command) { switch (command) {
case DolphinContextMenu::OpenParentFolderInNewWindow: { case DolphinContextMenu::OpenParentFolderInNewWindow: {
KRun::run("dolphin %u", KUrl::List() << item.url().upUrl(), this);
KRun::run("dolphin %u", QList<QUrl>() << KIO::upUrl(item.url()), this);
break; break;
} }
case DolphinContextMenu::OpenParentFolderInNewTab: case DolphinContextMenu::OpenParentFolderInNewTab:
openNewTab(item.url().upUrl()); openNewTab(KIO::upUrl(item.url()));
break; break;
case DolphinContextMenu::None: case DolphinContextMenu::None:
@ -1480,26 +1487,26 @@ void DolphinMainWindow::setupActions()
{ {
// setup 'File' menu // setup 'File' menu
m_newFileMenu = new DolphinNewFileMenu(actionCollection(), this); m_newFileMenu = new DolphinNewFileMenu(actionCollection(), this);
KMenu* menu = m_newFileMenu->menu(); QMenu* menu = m_newFileMenu->menu();
menu->setTitle(i18nc("@title:menu Create new folder, file, link, etc.", "Create New")); menu->setTitle(i18nc("@title:menu Create new folder, file, link, etc.", "Create New"));
menu->setIcon(KIcon("document-new")); menu->setIcon(KIcon("document-new"));
m_newFileMenu->setDelayed(false); m_newFileMenu->setDelayed(false);
connect(menu, SIGNAL(aboutToShow()), connect(menu, SIGNAL(aboutToShow()),
this, SLOT(updateNewMenu())); this, SLOT(updateNewMenu()));
KAction* newWindow = actionCollection()->addAction("new_window"); QAction* newWindow = actionCollection()->addAction("new_window");
newWindow->setIcon(KIcon("window-new")); newWindow->setIcon(KIcon("window-new"));
newWindow->setText(i18nc("@action:inmenu File", "New &Window")); newWindow->setText(i18nc("@action:inmenu File", "New &Window"));
newWindow->setShortcut(Qt::CTRL | Qt::Key_N); newWindow->setShortcut(Qt::CTRL | Qt::Key_N);
connect(newWindow, SIGNAL(triggered()), this, SLOT(openNewMainWindow())); connect(newWindow, SIGNAL(triggered()), this, SLOT(openNewMainWindow()));
KAction* newTab = actionCollection()->addAction("new_tab"); QAction* newTab = actionCollection()->addAction("new_tab");
newTab->setIcon(KIcon("tab-new")); newTab->setIcon(KIcon("tab-new"));
newTab->setText(i18nc("@action:inmenu File", "New Tab")); newTab->setText(i18nc("@action:inmenu File", "New Tab"));
newTab->setShortcut(KShortcut(Qt::CTRL | Qt::Key_T, Qt::CTRL | Qt::SHIFT | Qt::Key_N)); newTab->setShortcuts(QList<QKeySequence>() << QKeySequence(Qt::CTRL | Qt::Key_T) << QKeySequence(Qt::CTRL | Qt::SHIFT | Qt::Key_N));
connect(newTab, SIGNAL(triggered()), this, SLOT(openNewTab())); connect(newTab, SIGNAL(triggered()), this, SLOT(openNewTab()));
KAction* closeTab = actionCollection()->addAction("close_tab"); QAction* closeTab = actionCollection()->addAction("close_tab");
closeTab->setIcon(KIcon("tab-close")); closeTab->setIcon(KIcon("tab-close"));
closeTab->setText(i18nc("@action:inmenu File", "Close Tab")); closeTab->setText(i18nc("@action:inmenu File", "Close Tab"));
closeTab->setShortcut(Qt::CTRL | Qt::Key_W); closeTab->setShortcut(Qt::CTRL | Qt::Key_W);
@ -1515,12 +1522,12 @@ void DolphinMainWindow::setupActions()
// need to remove shift+del from cut action, else the shortcut for deletejob // need to remove shift+del from cut action, else the shortcut for deletejob
// doesn't work // doesn't work
KAction* cut = KStandardAction::cut(this, SLOT(cut()), actionCollection()); QAction* cut = KStandardAction::cut(this, SLOT(cut()), actionCollection());
KShortcut cutShortcut = cut->shortcut(); auto cutShortcuts = cut->shortcuts();
cutShortcut.remove(Qt::SHIFT | Qt::Key_Delete, KShortcut::KeepEmpty); cutShortcuts.removeAll(QKeySequence(Qt::SHIFT | Qt::Key_Delete));
cut->setShortcut(cutShortcut); cut->setShortcuts(cutShortcuts);
KStandardAction::copy(this, SLOT(copy()), actionCollection()); KStandardAction::copy(this, SLOT(copy()), actionCollection());
KAction* paste = KStandardAction::paste(this, SLOT(paste()), actionCollection()); QAction* paste = KStandardAction::paste(this, SLOT(paste()), actionCollection());
// The text of the paste-action is modified dynamically by Dolphin // The text of the paste-action is modified dynamically by Dolphin
// (e. g. to "Paste One Folder"). To prevent that the size of the toolbar changes // (e. g. to "Paste One Folder"). To prevent that the size of the toolbar changes
// due to the long text, the text "Paste" is used: // due to the long text, the text "Paste" is used:
@ -1528,12 +1535,12 @@ void DolphinMainWindow::setupActions()
KStandardAction::find(this, SLOT(find()), actionCollection()); KStandardAction::find(this, SLOT(find()), actionCollection());
KAction* selectAll = actionCollection()->addAction("select_all"); QAction* selectAll = actionCollection()->addAction("select_all");
selectAll->setText(i18nc("@action:inmenu Edit", "Select All")); selectAll->setText(i18nc("@action:inmenu Edit", "Select All"));
selectAll->setShortcut(Qt::CTRL | Qt::Key_A); selectAll->setShortcut(Qt::CTRL | Qt::Key_A);
connect(selectAll, SIGNAL(triggered()), this, SLOT(selectAll())); connect(selectAll, SIGNAL(triggered()), this, SLOT(selectAll()));
KAction* invertSelection = actionCollection()->addAction("invert_selection"); QAction* invertSelection = actionCollection()->addAction("invert_selection");
invertSelection->setText(i18nc("@action:inmenu Edit", "Invert Selection")); invertSelection->setText(i18nc("@action:inmenu Edit", "Invert Selection"));
invertSelection->setShortcut(Qt::CTRL | Qt::SHIFT | Qt::Key_A); invertSelection->setShortcut(Qt::CTRL | Qt::SHIFT | Qt::Key_A);
connect(invertSelection, SIGNAL(triggered()), this, SLOT(invertSelection())); connect(invertSelection, SIGNAL(triggered()), this, SLOT(invertSelection()));
@ -1541,18 +1548,18 @@ void DolphinMainWindow::setupActions()
// setup 'View' menu // setup 'View' menu
// (note that most of it is set up in DolphinViewActionHandler) // (note that most of it is set up in DolphinViewActionHandler)
KAction* split = actionCollection()->addAction("split_view"); QAction* split = actionCollection()->addAction("split_view");
split->setShortcut(Qt::Key_F3); split->setShortcut(Qt::Key_F3);
updateSplitAction(); updateSplitAction();
connect(split, SIGNAL(triggered()), this, SLOT(toggleSplitView())); connect(split, SIGNAL(triggered()), this, SLOT(toggleSplitView()));
KAction* reload = actionCollection()->addAction("reload"); QAction* reload = actionCollection()->addAction("reload");
reload->setText(i18nc("@action:inmenu View", "Reload")); reload->setText(i18nc("@action:inmenu View", "Reload"));
reload->setShortcut(Qt::Key_F5); reload->setShortcut(Qt::Key_F5);
reload->setIcon(KIcon("view-refresh")); reload->setIcon(KIcon("view-refresh"));
connect(reload, SIGNAL(triggered()), this, SLOT(reloadView())); connect(reload, SIGNAL(triggered()), this, SLOT(reloadView()));
KAction* stop = actionCollection()->addAction("stop"); QAction* stop = actionCollection()->addAction("stop");
stop->setText(i18nc("@action:inmenu View", "Stop")); stop->setText(i18nc("@action:inmenu View", "Stop"));
stop->setToolTip(i18nc("@info", "Stop loading")); stop->setToolTip(i18nc("@info", "Stop loading"));
stop->setIcon(KIcon("process-stop")); stop->setIcon(KIcon("process-stop"));
@ -1563,17 +1570,17 @@ void DolphinMainWindow::setupActions()
editableLocation->setShortcut(Qt::Key_F6); editableLocation->setShortcut(Qt::Key_F6);
connect(editableLocation, SIGNAL(triggered()), this, SLOT(toggleEditLocation())); connect(editableLocation, SIGNAL(triggered()), this, SLOT(toggleEditLocation()));
KAction* replaceLocation = actionCollection()->addAction("replace_location"); QAction* replaceLocation = actionCollection()->addAction("replace_location");
replaceLocation->setText(i18nc("@action:inmenu Navigation Bar", "Replace Location")); replaceLocation->setText(i18nc("@action:inmenu Navigation Bar", "Replace Location"));
replaceLocation->setShortcut(Qt::CTRL | Qt::Key_L); replaceLocation->setShortcut(Qt::CTRL | Qt::Key_L);
connect(replaceLocation, SIGNAL(triggered()), this, SLOT(replaceLocation())); connect(replaceLocation, SIGNAL(triggered()), this, SLOT(replaceLocation()));
// setup 'Go' menu // setup 'Go' menu
KAction* backAction = KStandardAction::back(this, SLOT(goBack()), actionCollection()); QAction* backAction = KStandardAction::back(this, SLOT(goBack()), actionCollection());
connect(backAction, SIGNAL(triggered(Qt::MouseButtons,Qt::KeyboardModifiers)), this, SLOT(goBack(Qt::MouseButtons))); connect(backAction, SIGNAL(triggered(Qt::MouseButtons,Qt::KeyboardModifiers)), this, SLOT(goBack(Qt::MouseButtons)));
KShortcut backShortcut = backAction->shortcut(); auto backShortcuts = backAction->shortcuts();
backShortcut.setAlternate(Qt::Key_Backspace); backShortcuts.append(QKeySequence(Qt::Key_Backspace));
backAction->setShortcut(backShortcut); backAction->setShortcuts(backShortcuts);
m_recentTabsMenu = new KActionMenu(i18n("Recently Closed Tabs"), this); m_recentTabsMenu = new KActionMenu(i18n("Recently Closed Tabs"), this);
m_recentTabsMenu->setIcon(KIcon("edit-undo")); m_recentTabsMenu->setIcon(KIcon("edit-undo"));
@ -1589,29 +1596,29 @@ void DolphinMainWindow::setupActions()
m_recentTabsMenu->addSeparator(); m_recentTabsMenu->addSeparator();
m_recentTabsMenu->setEnabled(false); m_recentTabsMenu->setEnabled(false);
KAction* forwardAction = KStandardAction::forward(this, SLOT(goForward()), actionCollection()); QAction* forwardAction = KStandardAction::forward(this, SLOT(goForward()), actionCollection());
connect(forwardAction, SIGNAL(triggered(Qt::MouseButtons,Qt::KeyboardModifiers)), this, SLOT(goForward(Qt::MouseButtons))); connect(forwardAction, SIGNAL(triggered(Qt::MouseButtons,Qt::KeyboardModifiers)), this, SLOT(goForward(Qt::MouseButtons)));
KAction* upAction = KStandardAction::up(this, SLOT(goUp()), actionCollection()); QAction* upAction = KStandardAction::up(this, SLOT(goUp()), actionCollection());
connect(upAction, SIGNAL(triggered(Qt::MouseButtons,Qt::KeyboardModifiers)), this, SLOT(goUp(Qt::MouseButtons))); connect(upAction, SIGNAL(triggered(Qt::MouseButtons,Qt::KeyboardModifiers)), this, SLOT(goUp(Qt::MouseButtons)));
KAction* homeAction = KStandardAction::home(this, SLOT(goHome()), actionCollection()); QAction* homeAction = KStandardAction::home(this, SLOT(goHome()), actionCollection());
connect(homeAction, SIGNAL(triggered(Qt::MouseButtons,Qt::KeyboardModifiers)), this, SLOT(goHome(Qt::MouseButtons))); connect(homeAction, SIGNAL(triggered(Qt::MouseButtons,Qt::KeyboardModifiers)), this, SLOT(goHome(Qt::MouseButtons)));
// setup 'Tools' menu // setup 'Tools' menu
KAction* showFilterBar = actionCollection()->addAction("show_filter_bar"); QAction* showFilterBar = actionCollection()->addAction("show_filter_bar");
showFilterBar->setText(i18nc("@action:inmenu Tools", "Show Filter Bar")); showFilterBar->setText(i18nc("@action:inmenu Tools", "Show Filter Bar"));
showFilterBar->setIcon(KIcon("view-filter")); showFilterBar->setIcon(KIcon("view-filter"));
showFilterBar->setShortcut(Qt::CTRL | Qt::Key_I); showFilterBar->setShortcut(Qt::CTRL | Qt::Key_I);
connect(showFilterBar, SIGNAL(triggered()), this, SLOT(showFilterBar())); connect(showFilterBar, SIGNAL(triggered()), this, SLOT(showFilterBar()));
KAction* compareFiles = actionCollection()->addAction("compare_files"); QAction* compareFiles = actionCollection()->addAction("compare_files");
compareFiles->setText(i18nc("@action:inmenu Tools", "Compare Files")); compareFiles->setText(i18nc("@action:inmenu Tools", "Compare Files"));
compareFiles->setIcon(KIcon("kompare")); compareFiles->setIcon(KIcon("kompare"));
compareFiles->setEnabled(false); compareFiles->setEnabled(false);
connect(compareFiles, SIGNAL(triggered()), this, SLOT(compareFiles())); connect(compareFiles, SIGNAL(triggered()), this, SLOT(compareFiles()));
KAction* openTerminal = actionCollection()->addAction("open_terminal"); QAction* openTerminal = actionCollection()->addAction("open_terminal");
openTerminal->setText(i18nc("@action:inmenu Tools", "Open Terminal")); openTerminal->setText(i18nc("@action:inmenu Tools", "Open Terminal"));
openTerminal->setIcon(KIcon("utilities-terminal")); openTerminal->setIcon(KIcon("utilities-terminal"));
openTerminal->setShortcut(Qt::SHIFT | Qt::Key_F4); openTerminal->setShortcut(Qt::SHIFT | Qt::Key_F4);
@ -1625,35 +1632,35 @@ void DolphinMainWindow::setupActions()
// not in menu actions // not in menu actions
QList<QKeySequence> nextTabKeys; QList<QKeySequence> nextTabKeys;
nextTabKeys.append(KStandardShortcut::tabNext().primary()); nextTabKeys.append(KStandardShortcut::tabNext().first()); //TODO: is this correct
nextTabKeys.append(QKeySequence(Qt::CTRL | Qt::Key_Tab)); nextTabKeys.append(QKeySequence(Qt::CTRL | Qt::Key_Tab));
QList<QKeySequence> prevTabKeys; QList<QKeySequence> prevTabKeys;
prevTabKeys.append(KStandardShortcut::tabPrev().primary()); prevTabKeys.append(KStandardShortcut::tabPrev().first()); //TODO: is this correct
prevTabKeys.append(QKeySequence(Qt::CTRL | Qt::SHIFT | Qt::Key_Tab)); prevTabKeys.append(QKeySequence(Qt::CTRL | Qt::SHIFT | Qt::Key_Tab));
KAction* activateNextTab = actionCollection()->addAction("activate_next_tab"); QAction* activateNextTab = actionCollection()->addAction("activate_next_tab");
activateNextTab->setText(i18nc("@action:inmenu", "Activate Next Tab")); activateNextTab->setText(i18nc("@action:inmenu", "Activate Next Tab"));
connect(activateNextTab, SIGNAL(triggered()), SLOT(activateNextTab())); connect(activateNextTab, SIGNAL(triggered()), SLOT(activateNextTab()));
activateNextTab->setShortcuts(QApplication::isRightToLeft() ? prevTabKeys : nextTabKeys); activateNextTab->setShortcuts(QApplication::isRightToLeft() ? prevTabKeys : nextTabKeys);
KAction* activatePrevTab = actionCollection()->addAction("activate_prev_tab"); QAction* activatePrevTab = actionCollection()->addAction("activate_prev_tab");
activatePrevTab->setText(i18nc("@action:inmenu", "Activate Previous Tab")); activatePrevTab->setText(i18nc("@action:inmenu", "Activate Previous Tab"));
connect(activatePrevTab, SIGNAL(triggered()), SLOT(activatePrevTab())); connect(activatePrevTab, SIGNAL(triggered()), SLOT(activatePrevTab()));
activatePrevTab->setShortcuts(QApplication::isRightToLeft() ? nextTabKeys : prevTabKeys); activatePrevTab->setShortcuts(QApplication::isRightToLeft() ? nextTabKeys : prevTabKeys);
// for context menu // for context menu
KAction* openInNewTab = actionCollection()->addAction("open_in_new_tab"); QAction* openInNewTab = actionCollection()->addAction("open_in_new_tab");
openInNewTab->setText(i18nc("@action:inmenu", "Open in New Tab")); openInNewTab->setText(i18nc("@action:inmenu", "Open in New Tab"));
openInNewTab->setIcon(KIcon("tab-new")); openInNewTab->setIcon(KIcon("tab-new"));
connect(openInNewTab, SIGNAL(triggered()), this, SLOT(openInNewTab())); connect(openInNewTab, SIGNAL(triggered()), this, SLOT(openInNewTab()));
KAction* openInNewTabs = actionCollection()->addAction("open_in_new_tabs"); QAction* openInNewTabs = actionCollection()->addAction("open_in_new_tabs");
openInNewTabs->setText(i18nc("@action:inmenu", "Open in New Tabs")); openInNewTabs->setText(i18nc("@action:inmenu", "Open in New Tabs"));
openInNewTabs->setIcon(KIcon("tab-new")); openInNewTabs->setIcon(KIcon("tab-new"));
connect(openInNewTabs, SIGNAL(triggered()), this, SLOT(openInNewTab())); connect(openInNewTabs, SIGNAL(triggered()), this, SLOT(openInNewTab()));
KAction* openInNewWindow = actionCollection()->addAction("open_in_new_window"); QAction* openInNewWindow = actionCollection()->addAction("open_in_new_window");
openInNewWindow->setText(i18nc("@action:inmenu", "Open in New Window")); openInNewWindow->setText(i18nc("@action:inmenu", "Open in New Window"));
openInNewWindow->setIcon(KIcon("window-new")); openInNewWindow->setIcon(KIcon("window-new"));
connect(openInNewWindow, SIGNAL(triggered()), this, SLOT(openInNewWindow())); connect(openInNewWindow, SIGNAL(triggered()), this, SLOT(openInNewWindow()));
@ -1895,7 +1902,7 @@ bool DolphinMainWindow::addActionToMenu(QAction* action, KMenu* menu)
void DolphinMainWindow::rememberClosedTab(int index) void DolphinMainWindow::rememberClosedTab(int index)
{ {
KMenu* tabsMenu = m_recentTabsMenu->menu(); QMenu* tabsMenu = m_recentTabsMenu->menu();
const QString primaryPath = m_viewTab[index].primaryView->url().path(); const QString primaryPath = m_viewTab[index].primaryView->url().path();
const QString iconName = KMimeType::iconNameForUrl(primaryPath); const QString iconName = KMimeType::iconNameForUrl(primaryPath);
@ -2115,7 +2122,7 @@ void DolphinMainWindow::createPanelAction(const KIcon& icon,
QAction* dockAction, QAction* dockAction,
const QString& actionName) const QString& actionName)
{ {
KAction* panelAction = actionCollection()->addAction(actionName); QAction* panelAction = actionCollection()->addAction(actionName);
panelAction->setCheckable(true); panelAction->setCheckable(true);
panelAction->setChecked(dockAction->isChecked()); panelAction->setChecked(dockAction->isChecked());
panelAction->setText(dockAction->text()); panelAction->setText(dockAction->text());

View File

@ -34,6 +34,7 @@
#include <KPluginFactory> #include <KPluginFactory>
#include <KRun> #include <KRun>
#include <KToggleAction> #include <KToggleAction>
#include <KGlobal>
#include <KIO/NetAccess> #include <KIO/NetAccess>
#include <KToolInvocation> #include <KToolInvocation>
#include <kauthorized.h> #include <kauthorized.h>
@ -42,9 +43,7 @@
#include <KProtocolInfo> #include <KProtocolInfo>
#include <kdeversion.h> #include <kdeversion.h>
#if KDE_IS_VERSION(4, 9, 2)
#include "dolphinpart_ext.h" #include "dolphinpart_ext.h"
#endif
#include "dolphinnewfilemenu.h" #include "dolphinnewfilemenu.h"
#include "views/dolphinview.h" #include "views/dolphinview.h"
@ -69,7 +68,8 @@ DolphinPart::DolphinPart(QWidget* parentWidget, QObject* parent, const QVariantL
,m_removeAction(0) ,m_removeAction(0)
{ {
Q_UNUSED(args) Q_UNUSED(args)
setComponentData(DolphinPartFactory::componentData(), false); #pragma message("TODO: port to KF5")
//setComponentData(DolphinPartFactory::componentData(), false);
m_extension = new DolphinPartBrowserExtension(this); m_extension = new DolphinPartBrowserExtension(this);
// make sure that other apps using this part find Dolphin's view-file-columns icons // make sure that other apps using this part find Dolphin's view-file-columns icons
@ -134,7 +134,6 @@ DolphinPart::DolphinPart(QWidget* parentWidget, QObject* parent, const QVariantL
// NOTE: Listing filter needs to be instantiated after the creation of the view. // NOTE: Listing filter needs to be instantiated after the creation of the view.
new DolphinPartFileInfoExtension(this); new DolphinPartFileInfoExtension(this);
#if KDE_IS_VERSION(4, 9, 2)
new DolphinPartListingFilterExtension(this); new DolphinPartListingFilterExtension(this);
KDirLister* lister = m_view->m_model->m_dirLister; KDirLister* lister = m_view->m_model->m_dirLister;
@ -145,7 +144,6 @@ DolphinPart::DolphinPart(QWidget* parentWidget, QObject* parent, const QVariantL
} else { } else {
kWarning() << "NULL KDirLister object! KParts::ListingNotificationExtension will NOT be supported"; kWarning() << "NULL KDirLister object! KParts::ListingNotificationExtension will NOT be supported";
} }
#endif
createActions(); createActions();
m_actionHandler->updateViewActions(); m_actionHandler->updateViewActions();
@ -174,26 +172,26 @@ void DolphinPart::createActions()
connect(m_newFileMenu->menu(), SIGNAL(aboutToShow()), connect(m_newFileMenu->menu(), SIGNAL(aboutToShow()),
this, SLOT(updateNewMenu())); this, SLOT(updateNewMenu()));
KAction *editMimeTypeAction = actionCollection()->addAction( "editMimeType" ); QAction *editMimeTypeAction = actionCollection()->addAction( "editMimeType" );
editMimeTypeAction->setText( i18nc("@action:inmenu Edit", "&Edit File Type..." ) ); editMimeTypeAction->setText( i18nc("@action:inmenu Edit", "&Edit File Type..." ) );
connect(editMimeTypeAction, SIGNAL(triggered()), SLOT(slotEditMimeType())); connect(editMimeTypeAction, SIGNAL(triggered()), SLOT(slotEditMimeType()));
KAction* selectItemsMatching = actionCollection()->addAction("select_items_matching"); QAction* selectItemsMatching = actionCollection()->addAction("select_items_matching");
selectItemsMatching->setText(i18nc("@action:inmenu Edit", "Select Items Matching...")); selectItemsMatching->setText(i18nc("@action:inmenu Edit", "Select Items Matching..."));
selectItemsMatching->setShortcut(Qt::CTRL | Qt::Key_S); selectItemsMatching->setShortcut(Qt::CTRL | Qt::Key_S);
connect(selectItemsMatching, SIGNAL(triggered()), this, SLOT(slotSelectItemsMatchingPattern())); connect(selectItemsMatching, SIGNAL(triggered()), this, SLOT(slotSelectItemsMatchingPattern()));
KAction* unselectItemsMatching = actionCollection()->addAction("unselect_items_matching"); QAction* unselectItemsMatching = actionCollection()->addAction("unselect_items_matching");
unselectItemsMatching->setText(i18nc("@action:inmenu Edit", "Unselect Items Matching...")); unselectItemsMatching->setText(i18nc("@action:inmenu Edit", "Unselect Items Matching..."));
connect(unselectItemsMatching, SIGNAL(triggered()), this, SLOT(slotUnselectItemsMatchingPattern())); connect(unselectItemsMatching, SIGNAL(triggered()), this, SLOT(slotUnselectItemsMatchingPattern()));
actionCollection()->addAction(KStandardAction::SelectAll, "select_all", m_view, SLOT(selectAll())); actionCollection()->addAction(KStandardAction::SelectAll, "select_all", m_view, SLOT(selectAll()));
KAction* unselectAll = actionCollection()->addAction("unselect_all"); QAction* unselectAll = actionCollection()->addAction("unselect_all");
unselectAll->setText(i18nc("@action:inmenu Edit", "Unselect All")); unselectAll->setText(i18nc("@action:inmenu Edit", "Unselect All"));
connect(unselectAll, SIGNAL(triggered()), m_view, SLOT(clearSelection())); connect(unselectAll, SIGNAL(triggered()), m_view, SLOT(clearSelection()));
KAction* invertSelection = actionCollection()->addAction("invert_selection"); QAction* invertSelection = actionCollection()->addAction("invert_selection");
invertSelection->setText(i18nc("@action:inmenu Edit", "Invert Selection")); invertSelection->setText(i18nc("@action:inmenu Edit", "Invert Selection"));
invertSelection->setShortcut(Qt::CTRL | Qt::SHIFT | Qt::Key_A); invertSelection->setShortcut(Qt::CTRL | Qt::SHIFT | Qt::Key_A);
connect(invertSelection, SIGNAL(triggered()), m_view, SLOT(invertSelection())); connect(invertSelection, SIGNAL(triggered()), m_view, SLOT(invertSelection()));
@ -219,19 +217,19 @@ void DolphinPart::createActions()
i18nc("@action:inmenu Go", "Trash"), QString("trash:/"), i18nc("@action:inmenu Go", "Trash"), QString("trash:/"),
goActionGroup); goActionGroup);
createGoAction("go_autostart", "", createGoAction("go_autostart", "",
i18nc("@action:inmenu Go", "Autostart"), KGlobalSettings::autostartPath(), i18nc("@action:inmenu Go", "Autostart"), QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation) + "/autostart",
goActionGroup); goActionGroup);
// Tools menu // Tools menu
m_findFileAction = actionCollection()->addAction("find_file"); m_findFileAction = actionCollection()->addAction("find_file");
m_findFileAction->setText(i18nc("@action:inmenu Tools", "Find File...")); m_findFileAction->setText(i18nc("@action:inmenu Tools", "Find File..."));
m_findFileAction->setShortcut(Qt::CTRL | Qt::Key_F); m_findFileAction->setShortcut(Qt::CTRL | Qt::Key_F);
m_findFileAction->setIcon(KIcon("edit-find")); m_findFileAction->setIcon(QIcon::fromTheme("edit-find"));
connect(m_findFileAction, SIGNAL(triggered()), this, SLOT(slotFindFile())); connect(m_findFileAction, SIGNAL(triggered()), this, SLOT(slotFindFile()));
if (KAuthorized::authorizeKAction("shell_access")) { if (KAuthorized::authorizeKAction("shell_access")) {
m_openTerminalAction = actionCollection()->addAction("open_terminal"); m_openTerminalAction = actionCollection()->addAction("open_terminal");
m_openTerminalAction->setIcon(KIcon("utilities-terminal")); m_openTerminalAction->setIcon(QIcon::fromTheme("utilities-terminal"));
m_openTerminalAction->setText(i18nc("@action:inmenu Tools", "Open &Terminal")); m_openTerminalAction->setText(i18nc("@action:inmenu Tools", "Open &Terminal"));
connect(m_openTerminalAction, SIGNAL(triggered()), SLOT(slotOpenTerminal())); connect(m_openTerminalAction, SIGNAL(triggered()), SLOT(slotOpenTerminal()));
m_openTerminalAction->setShortcut(Qt::Key_F4); m_openTerminalAction->setShortcut(Qt::Key_F4);
@ -242,8 +240,8 @@ void DolphinPart::createGoAction(const char* name, const char* iconName,
const QString& text, const QString& url, const QString& text, const QString& url,
QActionGroup* actionGroup) QActionGroup* actionGroup)
{ {
KAction* action = actionCollection()->addAction(name); QAction* action = actionCollection()->addAction(name);
action->setIcon(KIcon(iconName)); action->setIcon(QIcon::fromTheme(iconName));
action->setText(text); action->setText(text);
action->setData(url); action->setData(url);
action->setActionGroup(actionGroup); action->setActionGroup(actionGroup);
@ -301,7 +299,7 @@ void DolphinPart::updatePasteAction()
KAboutData* DolphinPart::createAboutData() KAboutData* DolphinPart::createAboutData()
{ {
return new KAboutData("dolphinpart", "dolphin", ki18nc("@title", "Dolphin Part"), "0.1"); return new KAboutData("dolphinpart", "dolphin", i18nc("@title", "Dolphin Part"), "0.1");
} }
bool DolphinPart::openUrl(const KUrl& url) bool DolphinPart::openUrl(const KUrl& url)
@ -559,7 +557,7 @@ void DolphinPart::slotOpenTerminal()
void DolphinPart::slotFindFile() void DolphinPart::slotFindFile()
{ {
KRun::run("kfind", url(), widget()); KRun::run("kfind", QList<QUrl>() << url(), widget());
} }
void DolphinPart::updateNewMenu() void DolphinPart::updateNewMenu()

View File

@ -20,14 +20,14 @@
#ifndef DOLPHINPART_H #ifndef DOLPHINPART_H
#define DOLPHINPART_H #define DOLPHINPART_H
#include <kparts/part.h> #include <KParts/ReadOnlyPart>
#include <KUrl>
#include <QItemSelectionModel> #include <QItemSelectionModel>
class DolphinNewFileMenu; class DolphinNewFileMenu;
class DolphinViewActionHandler; class DolphinViewActionHandler;
class QActionGroup; class QActionGroup;
class KAction;
class KFileItemList; class KFileItemList;
class KFileItem; class KFileItem;
class DolphinPartBrowserExtension; class DolphinPartBrowserExtension;
@ -243,8 +243,8 @@ private:
DolphinRemoteEncoding* m_remoteEncoding; DolphinRemoteEncoding* m_remoteEncoding;
DolphinPartBrowserExtension* m_extension; DolphinPartBrowserExtension* m_extension;
DolphinNewFileMenu* m_newFileMenu; DolphinNewFileMenu* m_newFileMenu;
KAction* m_findFileAction; QAction* m_findFileAction;
KAction* m_openTerminalAction; QAction* m_openTerminalAction;
QString m_nameFilter; QString m_nameFilter;
DolphinRemoveAction* m_removeAction; DolphinRemoveAction* m_removeAction;
Q_DISABLE_COPY(DolphinPart) Q_DISABLE_COPY(DolphinPart)

View File

@ -23,6 +23,7 @@
#include <kparts/browserextension.h> #include <kparts/browserextension.h>
#include <kparts/fileinfoextension.h> #include <kparts/fileinfoextension.h>
#include <kparts/listingextension.h> #include <kparts/listingextension.h>
#include <KUrl>
class DolphinPart; class DolphinPart;

View File

@ -26,6 +26,7 @@
#include <QBoxLayout> #include <QBoxLayout>
#include <QTimer> #include <QTimer>
#include <QScrollBar> #include <QScrollBar>
#include <QMimeData>
#include <KDesktopFile> #include <KDesktopFile>
#include <KFileItemDelegate> #include <KFileItemDelegate>
@ -86,15 +87,15 @@ DolphinViewContainer::DolphinViewContainer(const KUrl& url, QWidget* parent) :
this, SLOT(dropUrls(KUrl,QDropEvent*))); this, SLOT(dropUrls(KUrl,QDropEvent*)));
connect(m_urlNavigator, SIGNAL(activated()), connect(m_urlNavigator, SIGNAL(activated()),
this, SLOT(activate())); this, SLOT(activate()));
connect(m_urlNavigator->editor(), SIGNAL(completionModeChanged(KGlobalSettings::Completion)), connect(m_urlNavigator->editor(), SIGNAL(completionModeChanged(KCompletion::CompletionMode)),
this, SLOT(saveUrlCompletionMode(KGlobalSettings::Completion))); this, SLOT(saveUrlCompletionMode(KCompletion::CompletionMode)));
const GeneralSettings* settings = GeneralSettings::self(); const GeneralSettings* settings = GeneralSettings::self();
m_urlNavigator->setUrlEditable(settings->editableUrl()); m_urlNavigator->setUrlEditable(settings->editableUrl());
m_urlNavigator->setShowFullPath(settings->showFullPath()); m_urlNavigator->setShowFullPath(settings->showFullPath());
m_urlNavigator->setHomeUrl(KUrl(settings->homeUrl())); m_urlNavigator->setHomeUrl(KUrl(settings->homeUrl()));
KUrlComboBox* editor = m_urlNavigator->editor(); KUrlComboBox* editor = m_urlNavigator->editor();
editor->setCompletionMode(KGlobalSettings::Completion(settings->urlCompletionMode())); editor->setCompletionMode(KCompletion::CompletionMode(settings->urlCompletionMode()));
m_searchBox = new DolphinSearchBox(this); m_searchBox = new DolphinSearchBox(this);
m_searchBox->hide(); m_searchBox->hide();
@ -492,7 +493,7 @@ void DolphinViewContainer::slotItemActivated(const KFileItem& item)
return; return;
} }
item.run(); new KRun(item.targetUrl(), this);
} }
void DolphinViewContainer::slotItemsActivated(const KFileItemList& items) void DolphinViewContainer::slotItemsActivated(const KFileItemList& items)
@ -654,7 +655,7 @@ void DolphinViewContainer::requestFocus()
m_view->setFocus(); m_view->setFocus();
} }
void DolphinViewContainer::saveUrlCompletionMode(KGlobalSettings::Completion completion) void DolphinViewContainer::saveUrlCompletionMode(KCompletion::CompletionMode completion)
{ {
GeneralSettings::setUrlCompletionMode(completion); GeneralSettings::setUrlCompletionMode(completion);
} }

View File

@ -22,7 +22,7 @@
#include <KFileItem> #include <KFileItem>
#include <KFileItemDelegate> #include <KFileItemDelegate>
#include <KGlobalSettings> #include <KCompletion>
#include <KIO/Job> #include <KIO/Job>
#include <KUrlNavigator> #include <KUrlNavigator>
@ -290,7 +290,7 @@ private slots:
* Saves the currently used URL completion mode of * Saves the currently used URL completion mode of
* the URL navigator. * the URL navigator.
*/ */
void saveUrlCompletionMode(KGlobalSettings::Completion completion); void saveUrlCompletionMode(KCompletion::CompletionMode completion);
void slotHistoryChanged(); void slotHistoryChanged();

View File

@ -29,6 +29,8 @@
#include <KDebug> #include <KDebug>
#include <KIcon> #include <KIcon>
#include <KTextEdit> #include <KTextEdit>
#include <KIconLoader>
#include <KDateTime>
#include <QPainter> #include <QPainter>
#include <QTextLine> #include <QTextLine>

View File

@ -25,6 +25,7 @@
#include <KLocale> #include <KLocale>
#include <KStringHandler> #include <KStringHandler>
#include <KDebug> #include <KDebug>
#include <kstringhandler_deprecated.h> //TODO: port to QCollator
#include "private/kfileitemmodelsortalgorithm.h" #include "private/kfileitemmodelsortalgorithm.h"
#include "private/kfileitemmodeldirlister.h" #include "private/kfileitemmodeldirlister.h"
@ -363,7 +364,7 @@ KFileItem KFileItemModel::fileItem(const KUrl& url) const
int KFileItemModel::index(const KFileItem& item) const int KFileItemModel::index(const KFileItem& item) const
{ {
return index(item.url()); return index(KUrl(item.url()));
} }
int KFileItemModel::index(const KUrl& url) const int KFileItemModel::index(const KUrl& url) const
@ -866,7 +867,7 @@ void KFileItemModel::slotItemsAdded(const KUrl& directoryUrl, const KFileItemLis
// might result in emitting the same items twice due to the Keep-parameter. // might result in emitting the same items twice due to the Keep-parameter.
// This case happens if an item gets expanded, collapsed and expanded again // This case happens if an item gets expanded, collapsed and expanded again
// before the items could be loaded for the first expansion. // before the items could be loaded for the first expansion.
if (index(items.first().url()) >= 0) { if (index(KUrl(items.first().url())) >= 0) {
// The items are already part of the model. // The items are already part of the model.
return; return;
} }
@ -1461,8 +1462,8 @@ QHash<QByteArray, QVariant> KFileItemModel::retrieveData(const KFileItem& item,
// Don't use KFileItem::timeString() as this is too expensive when // Don't use KFileItem::timeString() as this is too expensive when
// having several thousands of items. Instead the formatting of the // having several thousands of items. Instead the formatting of the
// date-time will be done on-demand by the view when the date will be shown. // date-time will be done on-demand by the view when the date will be shown.
const KDateTime dateTime = item.time(KFileItem::ModificationTime); const QDateTime dateTime = item.time(KFileItem::ModificationTime);
data.insert(sharedValue("date"), dateTime.dateTime()); data.insert(sharedValue("date"), dateTime);
} }
if (m_requestRole[PermissionsRole]) { if (m_requestRole[PermissionsRole]) {
@ -1487,7 +1488,7 @@ QHash<QByteArray, QVariant> KFileItemModel::retrieveData(const KFileItem& item,
if (m_requestRole[PathRole]) { if (m_requestRole[PathRole]) {
QString path; QString path;
if (item.url().protocol() == QLatin1String("trash")) { if (item.url().scheme() == QLatin1String("trash")) {
path = item.entry().stringValue(KIO::UDSEntry::UDS_EXTRA); path = item.entry().stringValue(KIO::UDSEntry::UDS_EXTRA);
} else { } else {
// For performance reasons cache the home-path in a static QString // For performance reasons cache the home-path in a static QString
@ -1666,8 +1667,8 @@ int KFileItemModel::sortRoleCompare(const ItemData* a, const ItemData* b) const
} }
case DateRole: { case DateRole: {
const KDateTime dateTimeA = itemA.time(KFileItem::ModificationTime); const QDateTime dateTimeA = itemA.time(KFileItem::ModificationTime);
const KDateTime dateTimeB = itemB.time(KFileItem::ModificationTime); const QDateTime dateTimeB = itemB.time(KFileItem::ModificationTime);
if (dateTimeA < dateTimeB) { if (dateTimeA < dateTimeB) {
result = -1; result = -1;
} else if (dateTimeA > dateTimeB) { } else if (dateTimeA > dateTimeB) {
@ -1859,7 +1860,7 @@ QList<QPair<int, QVariant> > KFileItemModel::dateRoleGroups() const
const int maxIndex = count() - 1; const int maxIndex = count() - 1;
QList<QPair<int, QVariant> > groups; QList<QPair<int, QVariant> > groups;
const QDate currentDate = KDateTime::currentLocalDateTime().date(); const QDate currentDate = QDate::currentDate();
QDate previousModifiedDate; QDate previousModifiedDate;
QString groupValue; QString groupValue;
@ -1868,7 +1869,7 @@ QList<QPair<int, QVariant> > KFileItemModel::dateRoleGroups() const
continue; continue;
} }
const KDateTime modifiedTime = m_itemData.at(i)->item.time(KFileItem::ModificationTime); const QDateTime modifiedTime = m_itemData.at(i)->item.time(KFileItem::ModificationTime);
const QDate modifiedDate = modifiedTime.date(); const QDate modifiedDate = modifiedTime.date();
if (modifiedDate == previousModifiedDate) { if (modifiedDate == previousModifiedDate) {
// The current item is in the same group as the previous item // The current item is in the same group as the previous item
@ -1955,7 +1956,7 @@ QList<QPair<int, QVariant> > KFileItemModel::permissionRoleGroups() const
} }
permissionsString = newPermissionsString; permissionsString = newPermissionsString;
const QFileInfo info(itemData->item.url().pathOrUrl()); const QFileInfo info(itemData->item.url().toLocalFile());
// Set user string // Set user string
QString user; QString user;

View File

@ -26,6 +26,8 @@
#include <KDebug> #include <KDebug>
#include <KFileItem> #include <KFileItem>
#include <KGlobal> #include <KGlobal>
#include <KIconLoader>
#include <KJobWidgets>
#include <KIO/JobUiDelegate> #include <KIO/JobUiDelegate>
#include <KIO/PreviewJob> #include <KIO/PreviewJob>
@ -897,7 +899,7 @@ void KFileItemModelRolesUpdater::startPreviewJob()
job->setIgnoreMaximumSize(itemSubSet.first().isLocalFile()); job->setIgnoreMaximumSize(itemSubSet.first().isLocalFile());
if (job->ui()) { if (job->ui()) {
job->ui()->setWindow(qApp->activeWindow()); KJobWidgets::setWindow(job, qApp->activeWindow());
} }
connect(job, SIGNAL(gotPreview(KFileItem,QPixmap)), connect(job, SIGNAL(gotPreview(KFileItem,QPixmap)),

View File

@ -46,7 +46,13 @@
#include <algorithm> #include <algorithm>
#if 0
#include "kitemlistviewaccessible.h" #include "kitemlistviewaccessible.h"
#else
#include <QAccessible>
#define QT_NO_ACCESSIBILITY 1
#pragma message("TODO: port accessibility to Qt5")
#endif
namespace { namespace {
// Time in ms until reaching the autoscroll margin triggers // Time in ms until reaching the autoscroll margin triggers

View File

@ -22,6 +22,7 @@
#include <libdolphin_export.h> #include <libdolphin_export.h>
#include <KDirLister> #include <KDirLister>
#include <KUrl>
/** /**
* @brief Extends the class KDirLister by emitting a signal when an * @brief Extends the class KDirLister by emitting a signal when an

View File

@ -23,6 +23,7 @@
#define KFILEITEMMODELSORTALGORITHM_H #define KFILEITEMMODELSORTALGORITHM_H
#include <QtCore> #include <QtCore>
#include <QtConcurrent/QtConcurrent>
#include <algorithm> #include <algorithm>

View File

@ -22,20 +22,22 @@
#include "dolphinmainwindow.h" #include "dolphinmainwindow.h"
#include <KAboutData> #include <k4aboutdata.h>
#include <KCmdLineArgs> #include <KCmdLineArgs>
#include <KLocale> #include <KLocale>
#include <kmainwindow.h> #include <kmainwindow.h>
#include <kdemacros.h>
#include <kdeversion.h>
#include <KDebug> #include <KDebug>
extern "C" extern "C"
KDE_EXPORT int kdemain(int argc, char **argv) KDE_EXPORT int kdemain(int argc, char **argv)
{ {
KAboutData about("dolphin", 0, K4AboutData about("dolphin", 0,
ki18nc("@title", "Dolphin"), ki18nc("@title", "Dolphin"),
KDE_VERSION_STRING, KDE_VERSION_STRING,
ki18nc("@title", "File Manager"), ki18nc("@title", "File Manager"),
KAboutData::License_GPL, K4AboutData::License_GPL,
ki18nc("@info:credit", "(C) 2006-2014 Peter Penz and Frank Reininghaus")); ki18nc("@info:credit", "(C) 2006-2014 Peter Penz and Frank Reininghaus"));
about.setHomepage("http://dolphin.kde.org"); about.setHomepage("http://dolphin.kde.org");
about.addAuthor(ki18nc("@info:credit", "Frank Reininghaus"), about.addAuthor(ki18nc("@info:credit", "Frank Reininghaus"),

View File

@ -24,6 +24,9 @@
#include <KIconLoader> #include <KIconLoader>
#include <KIO/DeleteJob> #include <KIO/DeleteJob>
#include <KMenu> #include <KMenu>
#include <KIcon>
#include <KSharedConfig>
#include <KConfigGroup>
#include <konqmimedata.h> #include <konqmimedata.h>
#include <KFileItemListProperties> #include <KFileItemListProperties>
#include <konq_operations.h> #include <konq_operations.h>
@ -34,6 +37,7 @@
#include <QApplication> #include <QApplication>
#include <QClipboard> #include <QClipboard>
#include <QMimeData>
TreeViewContextMenu::TreeViewContextMenu(FoldersPanel* parent, TreeViewContextMenu::TreeViewContextMenu(FoldersPanel* parent,
const KFileItem& fileInfo) : const KFileItem& fileInfo) :
@ -192,12 +196,12 @@ void TreeViewContextMenu::rename()
void TreeViewContextMenu::moveToTrash() void TreeViewContextMenu::moveToTrash()
{ {
KonqOperations::del(m_parent, KonqOperations::TRASH, m_fileItem.url()); KonqOperations::del(m_parent, KonqOperations::TRASH, KUrl::List() << m_fileItem.url());
} }
void TreeViewContextMenu::deleteItem() void TreeViewContextMenu::deleteItem()
{ {
KonqOperations::del(m_parent, KonqOperations::DEL, m_fileItem.url()); KonqOperations::del(m_parent, KonqOperations::DEL, KUrl::List() << m_fileItem.url());
} }
void TreeViewContextMenu::showProperties() void TreeViewContextMenu::showProperties()

View File

@ -23,6 +23,7 @@
#include <QObject> #include <QObject>
#include <KFileItem> #include <KFileItem>
class QMimeData;
class FoldersPanel; class FoldersPanel;
/** /**

View File

@ -22,10 +22,12 @@
#include "informationpanelcontent.h" #include "informationpanelcontent.h"
#include <KIO/Job> #include <KIO/Job>
#include <KIO/JobUiDelegate> #include <KIO/JobUiDelegate>
#include <KJobWidgets>
#include <KDirNotify> #include <KDirNotify>
#include <QApplication> #include <QApplication>
#include <QShowEvent> #include <QShowEvent>
#include <QVBoxLayout> #include <QVBoxLayout>
#include <QTimer>
InformationPanel::InformationPanel(QWidget* parent) : InformationPanel::InformationPanel(QWidget* parent) :
Panel(parent), Panel(parent),
@ -184,7 +186,7 @@ void InformationPanel::showItemInfo()
// an item for the currently shown directory. // an item for the currently shown directory.
m_folderStatJob = KIO::stat(url(), KIO::HideProgressInfo); m_folderStatJob = KIO::stat(url(), KIO::HideProgressInfo);
if (m_folderStatJob->ui()) { if (m_folderStatJob->ui()) {
m_folderStatJob->ui()->setWindow(this); KJobWidgets::setWindow(m_folderStatJob, this);
} }
connect(m_folderStatJob, SIGNAL(result(KJob*)), connect(m_folderStatJob, SIGNAL(result(KJob*)),
this, SLOT(slotFolderStatFinished(KJob*))); this, SLOT(slotFolderStatFinished(KJob*)));

View File

@ -24,8 +24,10 @@
#include <KGlobalSettings> #include <KGlobalSettings>
#include <KIO/JobUiDelegate> #include <KIO/JobUiDelegate>
#include <KIO/PreviewJob> #include <KIO/PreviewJob>
#include <KJobWidgets>
#include <KIconEffect> #include <KIconEffect>
#include <KIconLoader> #include <KIconLoader>
#include <KIcon>
#include <KLocale> #include <KLocale>
#include <KMenu> #include <KMenu>
#include <kseparator.h> #include <kseparator.h>
@ -193,7 +195,7 @@ void InformationPanelContent::showItem(const KFileItem& item)
m_previewJob->setScaleType(KIO::PreviewJob::Unscaled); m_previewJob->setScaleType(KIO::PreviewJob::Unscaled);
m_previewJob->setIgnoreMaximumSize(item.isLocalFile()); m_previewJob->setIgnoreMaximumSize(item.isLocalFile());
if (m_previewJob->ui()) { if (m_previewJob->ui()) {
m_previewJob->ui()->setWindow(this); KJobWidgets::setWindow(m_previewJob, this);
} }
connect(m_previewJob, SIGNAL(gotPreview(KFileItem,QPixmap)), connect(m_previewJob, SIGNAL(gotPreview(KFileItem,QPixmap)),
@ -283,7 +285,7 @@ void InformationPanelContent::configureSettings(const QList<QAction*>& customCon
KMenu popup(this); KMenu popup(this);
QAction* previewAction = popup.addAction(i18nc("@action:inmenu", "Preview")); QAction* previewAction = popup.addAction(i18nc("@action:inmenu", "Preview"));
previewAction->setIcon(KIcon("view-preview")); previewAction->setIcon(QIcon::fromTheme("view-preview"));
previewAction->setCheckable(true); previewAction->setCheckable(true);
previewAction->setChecked(InformationPanelSettings::previewsShown()); previewAction->setChecked(InformationPanelSettings::previewsShown());

View File

@ -33,6 +33,7 @@
#include <KDialog> #include <KDialog>
#include <KIcon> #include <KIcon>
#include <KIconLoader>
#include <KUrl> #include <KUrl>
#include <KLocale> #include <KLocale>

View File

@ -24,9 +24,11 @@
#include "placesitemeditdialog.h" #include "placesitemeditdialog.h"
#include <KAboutData> #include <KAboutData>
#include <k4aboutdata.h>
#include <KComponentData> #include <KComponentData>
#include <KDebug> #include <KDebug>
#include <KFile> #include <KFile>
#include <KGlobal>
#include <KIconButton> #include <KIconButton>
#include <KLineEdit> #include <KLineEdit>
#include <KLocale> #include <KLocale>

View File

@ -35,6 +35,7 @@
#include <KLocale> #include <KLocale>
#include <KStandardDirs> #include <KStandardDirs>
#include <KUser> #include <KUser>
#include <KGlobal>
#include "placesitem.h" #include "placesitem.h"
#include <QAction> #include <QAction>
#include <QDate> #include <QDate>

View File

@ -30,7 +30,9 @@
#include <KIcon> #include <KIcon>
#include <KIO/Job> #include <KIO/Job>
#include <KIO/JobUiDelegate> #include <KIO/JobUiDelegate>
#include <KJobWidgets>
#include <KLocale> #include <KLocale>
#include <KIconLoader>
#include <kitemviews/kitemlistcontainer.h> #include <kitemviews/kitemlistcontainer.h>
#include <kitemviews/kitemlistcontroller.h> #include <kitemviews/kitemlistcontroller.h>
#include <kitemviews/kitemlistselectionmanager.h> #include <kitemviews/kitemlistselectionmanager.h>
@ -48,6 +50,7 @@
#include <QGraphicsSceneDragDropEvent> #include <QGraphicsSceneDragDropEvent>
#include <QVBoxLayout> #include <QVBoxLayout>
#include <QShowEvent> #include <QShowEvent>
#include <QMimeData>
PlacesPanel::PlacesPanel(QWidget* parent) : PlacesPanel::PlacesPanel(QWidget* parent) :
Panel(parent), Panel(parent),
@ -422,7 +425,7 @@ void PlacesPanel::slotTrashUpdated(KJob* job)
if (job->error()) { if (job->error()) {
emit errorMessage(job->errorString()); emit errorMessage(job->errorString());
} }
org::kde::KDirNotify::emitFilesAdded("trash:/"); org::kde::KDirNotify::emitFilesAdded(QUrl("trash:/"));
} }
void PlacesPanel::slotStorageSetupDone(int index, bool success) void PlacesPanel::slotStorageSetupDone(int index, bool success)
@ -459,7 +462,7 @@ void PlacesPanel::emptyTrash()
stream << int(1); stream << int(1);
KIO::Job *job = KIO::special(KUrl("trash:/"), packedArgs); KIO::Job *job = KIO::special(KUrl("trash:/"), packedArgs);
KNotification::event("Trash: emptied", QString() , QPixmap() , 0, KNotification::DefaultEvent); KNotification::event("Trash: emptied", QString() , QPixmap() , 0, KNotification::DefaultEvent);
job->ui()->setWindow(parentWidget()); KJobWidgets::setWindow(job, parentWidget());
connect(job, SIGNAL(result(KJob*)), SLOT(slotTrashUpdated(KJob*))); connect(job, SIGNAL(result(KJob*)), SLOT(slotTrashUpdated(KJob*)));
} }
} }

View File

@ -24,11 +24,12 @@
#include <KPluginLoader> #include <KPluginLoader>
#include <KPluginFactory> #include <KPluginFactory>
#include <KService> #include <KService>
#include <kde_terminal_interface_v2.h> #include <kde_terminal_interface.h>
#include <KParts/Part> #include <KParts/Part>
#include <KShell> #include <KShell>
#include <KIO/Job> #include <KIO/Job>
#include <KIO/JobUiDelegate> #include <KIO/JobUiDelegate>
#include <KJobWidgets>
#include <QBoxLayout> #include <QBoxLayout>
#include <QDir> #include <QDir>
@ -112,7 +113,7 @@ void TerminalPanel::showEvent(QShowEvent* event)
connect(m_konsolePart, SIGNAL(destroyed(QObject*)), this, SLOT(terminalExited())); connect(m_konsolePart, SIGNAL(destroyed(QObject*)), this, SLOT(terminalExited()));
m_terminalWidget = m_konsolePart->widget(); m_terminalWidget = m_konsolePart->widget();
m_layout->addWidget(m_terminalWidget); m_layout->addWidget(m_terminalWidget);
m_terminal = qobject_cast<TerminalInterfaceV2 *>(m_konsolePart); m_terminal = qobject_cast<TerminalInterface*>(m_konsolePart);
} }
} }
if (m_terminal) { if (m_terminal) {
@ -136,7 +137,7 @@ void TerminalPanel::changeDir(const KUrl& url)
} else { } else {
m_mostLocalUrlJob = KIO::mostLocalUrl(url, KIO::HideProgressInfo); m_mostLocalUrlJob = KIO::mostLocalUrl(url, KIO::HideProgressInfo);
if (m_mostLocalUrlJob->ui()) { if (m_mostLocalUrlJob->ui()) {
m_mostLocalUrlJob->ui()->setWindow(this); KJobWidgets::setWindow(m_mostLocalUrlJob, this);
} }
connect(m_mostLocalUrlJob, SIGNAL(result(KJob*)), this, SLOT(slotMostLocalUrlResult(KJob*))); connect(m_mostLocalUrlJob, SIGNAL(result(KJob*)), this, SLOT(slotMostLocalUrlResult(KJob*)));
} }

View File

@ -22,7 +22,7 @@
#include <panels/panel.h> #include <panels/panel.h>
class TerminalInterfaceV2; class TerminalInterface;
class QVBoxLayout; class QVBoxLayout;
class QWidget; class QWidget;
@ -78,7 +78,7 @@ private:
KIO::StatJob* m_mostLocalUrlJob; KIO::StatJob* m_mostLocalUrlJob;
QVBoxLayout* m_layout; QVBoxLayout* m_layout;
TerminalInterfaceV2* m_terminal; TerminalInterface* m_terminal;
QWidget* m_terminalWidget; QWidget* m_terminalWidget;
KParts::ReadOnlyPart* m_konsolePart; KParts::ReadOnlyPart* m_konsolePart;
QString m_konsolePartCurrentDirectory; QString m_konsolePartCurrentDirectory;

View File

@ -26,6 +26,7 @@
#include <KLineEdit> #include <KLineEdit>
#include <KLocale> #include <KLocale>
#include <KSeparator> #include <KSeparator>
#include <KGlobalSettings>
#include <QButtonGroup> #include <QButtonGroup>
#include <QDir> #include <QDir>

View File

@ -25,6 +25,7 @@
#include <KIO/NetAccess> #include <KIO/NetAccess>
#include <KIO/Job> #include <KIO/Job>
#include <KUrl> #include <KUrl>
#include <kdemacros.h>
#include <ktemporaryfile.h> #include <ktemporaryfile.h>
#include <QCoreApplication> #include <QCoreApplication>

View File

@ -34,6 +34,9 @@
#include <KMessageBox> #include <KMessageBox>
#include <KIcon> #include <KIcon>
#include <QPushButton>
#include <QDialogButtonBox>
DolphinSettingsDialog::DolphinSettingsDialog(const KUrl& url, QWidget* parent) : DolphinSettingsDialog::DolphinSettingsDialog(const KUrl& url, QWidget* parent) :
KPageDialog(parent), KPageDialog(parent),
m_pages() m_pages()
@ -43,10 +46,12 @@ DolphinSettingsDialog::DolphinSettingsDialog(const KUrl& url, QWidget* parent) :
setMinimumSize(QSize(512, minSize.height())); setMinimumSize(QSize(512, minSize.height()));
setFaceType(List); setFaceType(List);
setCaption(i18nc("@title:window", "Dolphin Preferences")); setWindowTitle(i18nc("@title:window", "Dolphin Preferences"));
setButtons(Ok | Apply | Cancel | Default); QDialogButtonBox* box = new QDialogButtonBox(QDialogButtonBox::Ok
enableButtonApply(false); | QDialogButtonBox::Apply | QDialogButtonBox::Cancel | QDialogButtonBox::RestoreDefaults);
setDefaultButton(Ok); box->button(QDialogButtonBox::Apply)->setEnabled(false);
box->button(QDialogButtonBox::Ok)->setDefault(true);
setButtonBox(box);
// Startup // Startup
StartupSettingsPage* startupSettingsPage = new StartupSettingsPage(url, this); StartupSettingsPage* startupSettingsPage = new StartupSettingsPage(url, this);
@ -91,7 +96,8 @@ DolphinSettingsDialog::DolphinSettingsDialog(const KUrl& url, QWidget* parent) :
connect(generalSettingsPage, SIGNAL(changed()), this, SLOT(enableApply())); connect(generalSettingsPage, SIGNAL(changed()), this, SLOT(enableApply()));
const KConfigGroup dialogConfig(KSharedConfig::openConfig("dolphinrc"), "SettingsDialog"); const KConfigGroup dialogConfig(KSharedConfig::openConfig("dolphinrc"), "SettingsDialog");
restoreDialogSize(dialogConfig); #pragma message("TODO: port")
//restoreDialogSize(dialogConfig);
m_pages.append(startupSettingsPage); m_pages.append(startupSettingsPage);
m_pages.append(viewSettingsPage); m_pages.append(viewSettingsPage);
@ -104,23 +110,25 @@ DolphinSettingsDialog::DolphinSettingsDialog(const KUrl& url, QWidget* parent) :
DolphinSettingsDialog::~DolphinSettingsDialog() DolphinSettingsDialog::~DolphinSettingsDialog()
{ {
KConfigGroup dialogConfig(KSharedConfig::openConfig("dolphinrc"), "SettingsDialog"); KConfigGroup dialogConfig(KSharedConfig::openConfig("dolphinrc"), "SettingsDialog");
saveDialogSize(dialogConfig); #pragma message("TODO: port")
//saveDialogSize(dialogConfig);
} }
void DolphinSettingsDialog::slotButtonClicked(int button) void DolphinSettingsDialog::slotButtonClicked(int button)
{ {
if ((button == Ok) || (button == Apply)) { if ((button == QDialogButtonBox::Ok) || (button == QDialogButtonBox::Apply)) {
applySettings(); applySettings();
} else if (button == Default) { } else if (button == QDialogButtonBox::RestoreDefaults) {
restoreDefaults(); restoreDefaults();
} }
KPageDialog::slotButtonClicked(button); #pragma message("TODO: port")
//KPageDialog::slotButtonClicked(button);
} }
void DolphinSettingsDialog::enableApply() void DolphinSettingsDialog::enableApply()
{ {
enableButtonApply(true); buttonBox()->button(QDialogButtonBox::Apply)->setEnabled(true);
} }
void DolphinSettingsDialog::applySettings() void DolphinSettingsDialog::applySettings()
@ -138,8 +146,7 @@ void DolphinSettingsDialog::applySettings()
settings->setModifiedStartupSettings(false); settings->setModifiedStartupSettings(false);
settings->writeConfig(); settings->writeConfig();
} }
buttonBox()->button(QDialogButtonBox::Apply)->setEnabled(false);
enableButtonApply(false);
} }
void DolphinSettingsDialog::restoreDefaults() void DolphinSettingsDialog::restoreDefaults()

View File

@ -115,7 +115,7 @@ void BehaviorSettingsPage::applySettings()
const bool naturalSorting = m_naturalSorting->isChecked(); const bool naturalSorting = m_naturalSorting->isChecked();
if (KGlobalSettings::naturalSorting() != naturalSorting) { if (KGlobalSettings::naturalSorting() != naturalSorting) {
KConfigGroup group(KGlobal::config(), "KDE"); KConfigGroup group(KSharedConfig::openConfig(), "KDE");
group.writeEntry("NaturalSorting", naturalSorting, KConfig::Persistent | KConfig::Global); group.writeEntry("NaturalSorting", naturalSorting, KConfig::Persistent | KConfig::Global);
KGlobalSettings::emitChange(KGlobalSettings::NaturalSortingChanged); KGlobalSettings::emitChange(KGlobalSettings::NaturalSortingChanged);
} }

View File

@ -27,6 +27,7 @@
#include <QApplication> #include <QApplication>
#include <QDir> #include <QDir>
#include <QVBoxLayout> #include <QVBoxLayout>
#include <QUrl>
ConfigurePreviewPluginDialog::ConfigurePreviewPluginDialog(const QString& pluginName, ConfigurePreviewPluginDialog::ConfigurePreviewPluginDialog(const QString& pluginName,
const QString& desktopEntryName, const QString& desktopEntryName,
@ -73,7 +74,7 @@ void ConfigurePreviewPluginDialog::slotOk()
// for a specific MIME-type should be regenerated. As this is not available yet we // for a specific MIME-type should be regenerated. As this is not available yet we
// delete the whole thumbnails directory. // delete the whole thumbnails directory.
QApplication::changeOverrideCursor(Qt::BusyCursor); QApplication::changeOverrideCursor(Qt::BusyCursor);
KIO::NetAccess::del(QString(QDir::homePath() + "/.thumbnails/"), this); KIO::NetAccess::del(QUrl::fromLocalFile(QDir::homePath() + "/.thumbnails/"), this);
QApplication::restoreOverrideCursor(); QApplication::restoreOverrideCursor();
} }

View File

@ -159,7 +159,7 @@ void PreviewsSettingsPage::loadPreviewPlugins()
QAbstractItemModel* model = m_listView->model(); QAbstractItemModel* model = m_listView->model();
const KService::List plugins = KServiceTypeTrader::self()->query(QLatin1String("ThumbCreator")); const KService::List plugins = KServiceTypeTrader::self()->query(QLatin1String("ThumbCreator"));
foreach (const KSharedPtr<KService>& service, plugins) { foreach (const KService::Ptr& service, plugins) {
const bool configurable = service->property("Configurable", QVariant::Bool).toBool(); const bool configurable = service->property("Configurable", QVariant::Bool).toBool();
const bool show = m_enabledPreviewPlugins.contains(service->desktopEntryName()); const bool show = m_enabledPreviewPlugins.contains(service->desktopEntryName());

View File

@ -24,6 +24,7 @@
#include <KLocale> #include <KLocale>
#include <KPluginFactory> #include <KPluginFactory>
#include <KPluginLoader> #include <KPluginLoader>
#include <KGlobal>
#include <settings/general/behaviorsettingspage.h> #include <settings/general/behaviorsettingspage.h>
#include <settings/general/previewssettingspage.h> #include <settings/general/previewssettingspage.h>
@ -36,7 +37,7 @@ K_PLUGIN_FACTORY(KCMDolphinGeneralConfigFactory, registerPlugin<DolphinGeneralCo
K_EXPORT_PLUGIN(KCMDolphinGeneralConfigFactory("kcmdolphingeneral")) K_EXPORT_PLUGIN(KCMDolphinGeneralConfigFactory("kcmdolphingeneral"))
DolphinGeneralConfigModule::DolphinGeneralConfigModule(QWidget* parent, const QVariantList& args) : DolphinGeneralConfigModule::DolphinGeneralConfigModule(QWidget* parent, const QVariantList& args) :
KCModule(KCMDolphinGeneralConfigFactory::componentData(), parent), KCModule(parent),
m_pages() m_pages()
{ {
Q_UNUSED(args); Q_UNUSED(args);

View File

@ -24,6 +24,7 @@
#include <KLocale> #include <KLocale>
#include <KPluginFactory> #include <KPluginFactory>
#include <KPluginLoader> #include <KPluginLoader>
#include <KGlobal>
#include <settings/navigation/navigationsettingspage.h> #include <settings/navigation/navigationsettingspage.h>
@ -33,7 +34,7 @@ K_PLUGIN_FACTORY(KCMDolphinNavigationConfigFactory, registerPlugin<DolphinNaviga
K_EXPORT_PLUGIN(KCMDolphinNavigationConfigFactory("kcmdolphinnavigation")) K_EXPORT_PLUGIN(KCMDolphinNavigationConfigFactory("kcmdolphinnavigation"))
DolphinNavigationConfigModule::DolphinNavigationConfigModule(QWidget* parent, const QVariantList& args) : DolphinNavigationConfigModule::DolphinNavigationConfigModule(QWidget* parent, const QVariantList& args) :
KCModule(KCMDolphinNavigationConfigFactory::componentData(), parent), KCModule(parent),
m_navigation(0) m_navigation(0)
{ {
Q_UNUSED(args); Q_UNUSED(args);

View File

@ -24,6 +24,7 @@
#include <KLocale> #include <KLocale>
#include <KPluginFactory> #include <KPluginFactory>
#include <KPluginLoader> #include <KPluginLoader>
#include <KGlobal>
#include <settings/services/servicessettingspage.h> #include <settings/services/servicessettingspage.h>
@ -33,7 +34,7 @@ K_PLUGIN_FACTORY(KCMDolphinServicesConfigFactory, registerPlugin<DolphinServices
K_EXPORT_PLUGIN(KCMDolphinServicesConfigFactory("kcmdolphinservices")) K_EXPORT_PLUGIN(KCMDolphinServicesConfigFactory("kcmdolphinservices"))
DolphinServicesConfigModule::DolphinServicesConfigModule(QWidget* parent, const QVariantList& args) : DolphinServicesConfigModule::DolphinServicesConfigModule(QWidget* parent, const QVariantList& args) :
KCModule(KCMDolphinServicesConfigFactory::componentData(), parent), KCModule(parent),
m_services(0) m_services(0)
{ {
Q_UNUSED(args); Q_UNUSED(args);

View File

@ -25,6 +25,7 @@
#include <KPluginFactory> #include <KPluginFactory>
#include <KPluginLoader> #include <KPluginLoader>
#include <KIcon> #include <KIcon>
#include <KGlobal>
#include <settings/viewmodes/viewsettingstab.h> #include <settings/viewmodes/viewsettingstab.h>
@ -38,7 +39,7 @@ K_PLUGIN_FACTORY(KCMDolphinViewModesConfigFactory, registerPlugin<DolphinViewMod
K_EXPORT_PLUGIN(KCMDolphinViewModesConfigFactory("kcmdolphinviewmodes")) K_EXPORT_PLUGIN(KCMDolphinViewModesConfigFactory("kcmdolphinviewmodes"))
DolphinViewModesConfigModule::DolphinViewModesConfigModule(QWidget* parent, const QVariantList& args) : DolphinViewModesConfigModule::DolphinViewModesConfigModule(QWidget* parent, const QVariantList& args) :
KCModule(KCMDolphinViewModesConfigFactory::componentData(), parent), KCModule(parent),
m_tabs() m_tabs()
{ {
Q_UNUSED(args); Q_UNUSED(args);

View File

@ -66,7 +66,7 @@ void ServiceItemDelegate::paint(QPainter* painter, const QStyleOptionViewItem& o
painter->restore(); painter->restore();
} }
QList<QWidget*> ServiceItemDelegate::createItemWidgets() const QList<QWidget*> ServiceItemDelegate::createItemWidgets(const QModelIndex&) const
{ {
QCheckBox* checkBox = new QCheckBox(); QCheckBox* checkBox = new QCheckBox();
QPalette palette = checkBox->palette(); QPalette palette = checkBox->palette();

View File

@ -42,7 +42,7 @@ public:
virtual void paint(QPainter* painter, const QStyleOptionViewItem& option, virtual void paint(QPainter* painter, const QStyleOptionViewItem& option,
const QModelIndex& index) const; const QModelIndex& index) const;
virtual QList<QWidget*> createItemWidgets() const; virtual QList<QWidget*> createItemWidgets(const QModelIndex&) const Q_DECL_OVERRIDE;
virtual void updateItemWidgets(const QList<QWidget*> widgets, virtual void updateItemWidgets(const QList<QWidget*> widgets,
const QStyleOptionViewItem& option, const QStyleOptionViewItem& option,

View File

@ -29,7 +29,7 @@
#include <KIcon> #include <KIcon>
#include <KLocale> #include <KLocale>
#include <KMessageBox> #include <KMessageBox>
#include <knewstuff3/knewstuffbutton.h> #include <KNS3/Button>
#include <KService> #include <KService>
#include <KServiceTypeTrader> #include <KServiceTypeTrader>
#include <KStandardDirs> #include <KStandardDirs>
@ -194,7 +194,7 @@ void ServicesSettingsPage::loadServices()
// Load generic services // Load generic services
const KService::List entries = KServiceTypeTrader::self()->query("KonqPopupMenu/Plugin"); const KService::List entries = KServiceTypeTrader::self()->query("KonqPopupMenu/Plugin");
foreach (const KSharedPtr<KService>& service, entries) { foreach (const KService::Ptr& service, entries) {
const QString file = KStandardDirs::locate("services", service->entryPath()); const QString file = KStandardDirs::locate("services", service->entryPath());
const QList<KServiceAction> serviceActions = const QList<KServiceAction> serviceActions =
KDesktopFileActions::userDefinedServices(file, true); KDesktopFileActions::userDefinedServices(file, true);
@ -220,7 +220,7 @@ void ServicesSettingsPage::loadServices()
// Load service plugins that implement the KFileItemActionPlugin interface // Load service plugins that implement the KFileItemActionPlugin interface
const KService::List pluginServices = KServiceTypeTrader::self()->query("KFileItemAction/Plugin"); const KService::List pluginServices = KServiceTypeTrader::self()->query("KFileItemAction/Plugin");
foreach (const KSharedPtr<KService>& service, pluginServices) { foreach (const KService::Ptr& service, pluginServices) {
const QString desktopEntryName = service->desktopEntryName(); const QString desktopEntryName = service->desktopEntryName();
if (!isInServicesList(desktopEntryName)) { if (!isInServicesList(desktopEntryName)) {
const bool checked = showGroup.readEntry(desktopEntryName, true); const bool checked = showGroup.readEntry(desktopEntryName, true);

View File

@ -42,17 +42,17 @@ ViewSettingsPage::ViewSettingsPage(QWidget* parent) :
// Initialize 'Icons' tab // Initialize 'Icons' tab
ViewSettingsTab* iconsTab = new ViewSettingsTab(ViewSettingsTab::IconsMode, tabWidget); ViewSettingsTab* iconsTab = new ViewSettingsTab(ViewSettingsTab::IconsMode, tabWidget);
tabWidget->addTab(iconsTab, KIcon("view-list-icons"), i18nc("@title:tab", "Icons")); tabWidget->addTab(iconsTab, QIcon::fromTheme("view-list-icons"), i18nc("@title:tab", "Icons"));
connect(iconsTab, SIGNAL(changed()), this, SIGNAL(changed())); connect(iconsTab, SIGNAL(changed()), this, SIGNAL(changed()));
// Initialize 'Compact' tab // Initialize 'Compact' tab
ViewSettingsTab* compactTab = new ViewSettingsTab(ViewSettingsTab::CompactMode, tabWidget); ViewSettingsTab* compactTab = new ViewSettingsTab(ViewSettingsTab::CompactMode, tabWidget);
tabWidget->addTab(compactTab, KIcon("view-list-details"), i18nc("@title:tab", "Compact")); tabWidget->addTab(compactTab, QIcon::fromTheme("view-list-details"), i18nc("@title:tab", "Compact"));
connect(compactTab, SIGNAL(changed()), this, SIGNAL(changed())); connect(compactTab, SIGNAL(changed()), this, SIGNAL(changed()));
// Initialize 'Details' tab // Initialize 'Details' tab
ViewSettingsTab* detailsTab = new ViewSettingsTab(ViewSettingsTab::DetailsMode, tabWidget); ViewSettingsTab* detailsTab = new ViewSettingsTab(ViewSettingsTab::DetailsMode, tabWidget);
tabWidget->addTab(detailsTab, KIcon("view-list-tree"), i18nc("@title:tab", "Details")); tabWidget->addTab(detailsTab, QIcon::fromTheme("view-list-tree"), i18nc("@title:tab", "Details"));
connect(detailsTab, SIGNAL(changed()), this, SIGNAL(changed())); connect(detailsTab, SIGNAL(changed()), this, SIGNAL(changed()));
m_tabs.append(iconsTab); m_tabs.append(iconsTab);

View File

@ -92,9 +92,9 @@ ViewPropertiesDialog::ViewPropertiesDialog(DolphinView* dolphinView) :
QLabel* viewModeLabel = new QLabel(i18nc("@label:listbox", "View mode:"), propsGrid); QLabel* viewModeLabel = new QLabel(i18nc("@label:listbox", "View mode:"), propsGrid);
m_viewMode = new KComboBox(propsGrid); m_viewMode = new KComboBox(propsGrid);
m_viewMode->addItem(KIcon("view-list-icons"), i18nc("@item:inlistbox", "Icons"), DolphinView::IconsView); m_viewMode->addItem(QIcon::fromTheme("view-list-icons"), i18nc("@item:inlistbox", "Icons"), DolphinView::IconsView);
m_viewMode->addItem(KIcon("view-list-details"), i18nc("@item:inlistbox", "Compact"), DolphinView::CompactView); m_viewMode->addItem(QIcon::fromTheme("view-list-details"), i18nc("@item:inlistbox", "Compact"), DolphinView::CompactView);
m_viewMode->addItem(KIcon("view-list-tree"), i18nc("@item:inlistbox", "Details"), DolphinView::DetailsView); m_viewMode->addItem(QIcon::fromTheme("view-list-tree"), i18nc("@item:inlistbox", "Details"), DolphinView::DetailsView);
QLabel* sortingLabel = new QLabel(i18nc("@label:listbox", "Sorting:"), propsGrid); QLabel* sortingLabel = new QLabel(i18nc("@label:listbox", "Sorting:"), propsGrid);
QWidget* sortingBox = new QWidget(propsGrid); QWidget* sortingBox = new QWidget(propsGrid);

View File

@ -31,6 +31,7 @@
#include <kitemviews/kitemliststyleoption.h> #include <kitemviews/kitemliststyleoption.h>
#include <KGlobalSettings> #include <KGlobalSettings>
#include <KGlobal>
#include <views/viewmodecontroller.h> #include <views/viewmodecontroller.h>

View File

@ -101,7 +101,7 @@ void DolphinRemoteEncoding::slotAboutToOpenUrl()
void DolphinRemoteEncoding::fillMenu() void DolphinRemoteEncoding::fillMenu()
{ {
KMenu* menu = m_menu->menu(); QMenu* menu = m_menu->menu();
menu->clear(); menu->clear();

View File

@ -32,6 +32,8 @@
#include <QItemSelection> #include <QItemSelection>
#include <QTimer> #include <QTimer>
#include <QScrollBar> #include <QScrollBar>
#include <QPointer>
#include <QMenu>
#include <KDesktopFile> #include <KDesktopFile>
#include <KProtocolManager> #include <KProtocolManager>
@ -55,7 +57,9 @@
#include <KIO/PreviewJob> #include <KIO/PreviewJob>
#include <KJob> #include <KJob>
#include <KMenu> #include <KMenu>
#include <KGlobal>
#include <KMessageBox> #include <KMessageBox>
#include <KJobWidgets>
#include <konq_fileitemcapabilities.h> #include <konq_fileitemcapabilities.h>
#include <konq_operations.h> #include <konq_operations.h>
#include <konqmimedata.h> #include <konqmimedata.h>
@ -295,7 +299,7 @@ void DolphinView::setHiddenFilesShown(bool show)
const KFileItemList itemList = selectedItems(); const KFileItemList itemList = selectedItems();
m_selectedUrls.clear(); m_selectedUrls.clear();
m_selectedUrls = itemList.urlList(); m_selectedUrls = KUrl::List(itemList.urlList());
ViewProperties props(viewPropertiesUrl()); ViewProperties props(viewPropertiesUrl());
props.setHiddenFilesShown(show); props.setHiddenFilesShown(show);
@ -472,7 +476,7 @@ void DolphinView::reload()
const KFileItemList itemList = selectedItems(); const KFileItemList itemList = selectedItems();
m_selectedUrls.clear(); m_selectedUrls.clear();
m_selectedUrls = itemList.urlList(); m_selectedUrls = KUrl::List(itemList.urlList());
setUrl(url()); setUrl(url());
loadDirectory(url(), true); loadDirectory(url(), true);
@ -684,7 +688,7 @@ void DolphinView::deleteSelectedItems()
if (del) { if (del) {
KIO::Job* job = KIO::del(list); KIO::Job* job = KIO::del(list);
if (job->ui()) { if (job->ui()) {
job->ui()->setWindow(this); KJobWidgets::setWindow(job, this);
} }
connect(job, SIGNAL(result(KJob*)), connect(job, SIGNAL(result(KJob*)),
this, SLOT(slotDeleteFileFinished(KJob*))); this, SLOT(slotDeleteFileFinished(KJob*)));
@ -1091,7 +1095,7 @@ void DolphinView::slotAboutToCreate(const KUrl::List& urls)
markUrlAsCurrent(urls.first()); markUrlAsCurrent(urls.first());
m_markFirstNewlySelectedItemAsCurrent = false; m_markFirstNewlySelectedItemAsCurrent = false;
} }
m_selectedUrls << KDirModel::simplifiedUrlList(urls); m_selectedUrls << KUrl::List(KDirModel::simplifiedUrlList(urls));
} }
} }

View File

@ -30,6 +30,7 @@
#include <KFileItemDelegate> #include <KFileItemDelegate>
#include <kio/fileundomanager.h> #include <kio/fileundomanager.h>
#include <KIO/Job> #include <KIO/Job>
#include <KUrl>
#include <QBoxLayout> #include <QBoxLayout>
#include <QKeyEvent> #include <QKeyEvent>

View File

@ -27,6 +27,8 @@
#include "views/zoomlevelinfo.h" #include "views/zoomlevelinfo.h"
#include <konq_operations.h> #include <konq_operations.h>
#include <QPointer>
#include <KAction> #include <KAction>
#include <KActionCollection> #include <KActionCollection>
#include <KActionMenu> #include <KActionMenu>
@ -97,7 +99,7 @@ void DolphinViewActionHandler::createActions()
{ {
// This action doesn't appear in the GUI, it's for the shortcut only. // This action doesn't appear in the GUI, it's for the shortcut only.
// KNewFileMenu takes care of the GUI stuff. // KNewFileMenu takes care of the GUI stuff.
KAction* newDirAction = m_actionCollection->addAction("create_dir"); QAction* newDirAction = m_actionCollection->addAction("create_dir");
newDirAction->setText(i18nc("@action", "Create Folder...")); newDirAction->setText(i18nc("@action", "Create Folder..."));
newDirAction->setShortcut(Qt::Key_F10); newDirAction->setShortcut(Qt::Key_F10);
newDirAction->setIcon(KIcon("folder-new")); newDirAction->setIcon(KIcon("folder-new"));
@ -106,20 +108,20 @@ void DolphinViewActionHandler::createActions()
// File menu // File menu
KAction* rename = m_actionCollection->addAction("rename"); QAction* rename = m_actionCollection->addAction("rename");
rename->setText(i18nc("@action:inmenu File", "Rename...")); rename->setText(i18nc("@action:inmenu File", "Rename..."));
rename->setShortcut(Qt::Key_F2); rename->setShortcut(Qt::Key_F2);
rename->setIcon(KIcon("edit-rename")); rename->setIcon(KIcon("edit-rename"));
connect(rename, SIGNAL(triggered()), this, SLOT(slotRename())); connect(rename, SIGNAL(triggered()), this, SLOT(slotRename()));
KAction* moveToTrash = m_actionCollection->addAction("move_to_trash"); QAction* moveToTrash = m_actionCollection->addAction("move_to_trash");
moveToTrash->setText(i18nc("@action:inmenu File", "Move to Trash")); moveToTrash->setText(i18nc("@action:inmenu File", "Move to Trash"));
moveToTrash->setIcon(KIcon("user-trash")); moveToTrash->setIcon(KIcon("user-trash"));
moveToTrash->setShortcut(QKeySequence::Delete); moveToTrash->setShortcut(QKeySequence::Delete);
connect(moveToTrash, SIGNAL(triggered(Qt::MouseButtons,Qt::KeyboardModifiers)), connect(moveToTrash, SIGNAL(triggered(Qt::MouseButtons,Qt::KeyboardModifiers)),
this, SLOT(slotTrashActivated(Qt::MouseButtons,Qt::KeyboardModifiers))); this, SLOT(slotTrashActivated(Qt::MouseButtons,Qt::KeyboardModifiers)));
KAction* deleteAction = m_actionCollection->addAction("delete"); QAction* deleteAction = m_actionCollection->addAction("delete");
deleteAction->setIcon(KIcon("edit-delete")); deleteAction->setIcon(KIcon("edit-delete"));
deleteAction->setText(i18nc("@action:inmenu File", "Delete")); deleteAction->setText(i18nc("@action:inmenu File", "Delete"));
deleteAction->setShortcut(Qt::SHIFT | Qt::Key_Delete); deleteAction->setShortcut(Qt::SHIFT | Qt::Key_Delete);
@ -129,14 +131,14 @@ void DolphinViewActionHandler::createActions()
// disabled and "delete" is enabled (e.g. non-local files), so that Key_Del // disabled and "delete" is enabled (e.g. non-local files), so that Key_Del
// can be used for deleting the file (#76016). It needs to be a separate action // can be used for deleting the file (#76016). It needs to be a separate action
// so that the Edit menu isn't affected. // so that the Edit menu isn't affected.
KAction* deleteWithTrashShortcut = m_actionCollection->addAction("delete_shortcut"); QAction* deleteWithTrashShortcut = m_actionCollection->addAction("delete_shortcut");
// The descriptive text is just for the shortcuts editor. // The descriptive text is just for the shortcuts editor.
deleteWithTrashShortcut->setText(i18nc("@action \"Move to Trash\" for non-local files, etc.", "Delete (using shortcut for Trash)")); deleteWithTrashShortcut->setText(i18nc("@action \"Move to Trash\" for non-local files, etc.", "Delete (using shortcut for Trash)"));
deleteWithTrashShortcut->setShortcut(QKeySequence::Delete); deleteWithTrashShortcut->setShortcut(QKeySequence::Delete);
deleteWithTrashShortcut->setEnabled(false); deleteWithTrashShortcut->setEnabled(false);
connect(deleteWithTrashShortcut, SIGNAL(triggered()), this, SLOT(slotDeleteItems())); connect(deleteWithTrashShortcut, SIGNAL(triggered()), this, SLOT(slotDeleteItems()));
KAction *propertiesAction = m_actionCollection->addAction( "properties" ); QAction *propertiesAction = m_actionCollection->addAction( "properties" );
// Well, it's the File menu in dolphinmainwindow and the Edit menu in dolphinpart... :) // Well, it's the File menu in dolphinmainwindow and the Edit menu in dolphinpart... :)
propertiesAction->setText( i18nc("@action:inmenu File", "Properties") ); propertiesAction->setText( i18nc("@action:inmenu File", "Properties") );
propertiesAction->setIcon(KIcon("document-properties")); propertiesAction->setIcon(KIcon("document-properties"));
@ -213,7 +215,7 @@ void DolphinViewActionHandler::createActions()
showHiddenFiles->setShortcuts(QList<QKeySequence>() << Qt::ALT + Qt::Key_Period << Qt::Key_F8); showHiddenFiles->setShortcuts(QList<QKeySequence>() << Qt::ALT + Qt::Key_Period << Qt::Key_F8);
connect(showHiddenFiles, SIGNAL(triggered(bool)), this, SLOT(toggleShowHiddenFiles(bool))); connect(showHiddenFiles, SIGNAL(triggered(bool)), this, SLOT(toggleShowHiddenFiles(bool)));
KAction* adjustViewProps = m_actionCollection->addAction("view_properties"); QAction* adjustViewProps = m_actionCollection->addAction("view_properties");
adjustViewProps->setText(i18nc("@action:inmenu View", "Adjust View Properties...")); adjustViewProps->setText(i18nc("@action:inmenu View", "Adjust View Properties..."));
connect(adjustViewProps, SIGNAL(triggered()), this, SLOT(slotAdjustViewProperties())); connect(adjustViewProps, SIGNAL(triggered()), this, SLOT(slotAdjustViewProperties()));
} }

View File

@ -23,6 +23,7 @@
#include <KLocale> #include <KLocale>
#include <konq_operations.h> #include <konq_operations.h>
#include <KStringHandler> #include <KStringHandler>
#include <kstringhandler_deprecated.h> //TODO port to QCollator
#include <knuminput.h> #include <knuminput.h>
#include <kmimetype.h> #include <kmimetype.h>
@ -87,7 +88,7 @@ RenameDialog::RenameDialog(QWidget *parent, const KFileItemList& items) :
int selectionLength = m_newName.length(); int selectionLength = m_newName.length();
if (m_renameOneItem) { if (m_renameOneItem) {
const QString fileName = items.first().url().prettyUrl(); const QString fileName = items.first().url().toDisplayString();
const QString extension = KMimeType::extractKnownExtension(fileName.toLower()); const QString extension = KMimeType::extractKnownExtension(fileName.toLower());
// If the current item is a directory, select the whole file name. // If the current item is a directory, select the whole file name.
@ -110,7 +111,7 @@ RenameDialog::RenameDialog(QWidget *parent, const KFileItemList& items) :
if (!m_renameOneItem) { if (!m_renameOneItem) {
QSet<QString> extensions; QSet<QString> extensions;
foreach (const KFileItem& item, m_items) { foreach (const KFileItem& item, m_items) {
const QString extension = KMimeType::extractKnownExtension(item.url().prettyUrl().toLower()); const QString extension = KMimeType::extractKnownExtension(item.url().toDisplayString().toLower());
if (extensions.contains(extension)) { if (extensions.contains(extension)) {
m_allExtensionsDifferent = false; m_allExtensionsDifferent = false;

View File

@ -24,6 +24,8 @@
#include <KColorScheme> #include <KColorScheme>
#include <KSeparator> #include <KSeparator>
#include <KWindowSystem> #include <KWindowSystem>
// For the blurred tooltip background
#include <KWindowEffects>
#include <KStringHandler> #include <KStringHandler>
#include <QLabel> #include <QLabel>
@ -40,9 +42,6 @@
#include <baloo/filemetadatawidget.h> #include <baloo/filemetadatawidget.h>
#endif #endif
// For the blurred tooltip background
#include <plasma/windoweffects.h>
FileMetaDataToolTip::FileMetaDataToolTip(QWidget* parent) : FileMetaDataToolTip::FileMetaDataToolTip(QWidget* parent) :
QWidget(parent), QWidget(parent),
m_preview(0), m_preview(0),
@ -174,8 +173,9 @@ void FileMetaDataToolTip::paintEvent(QPaintEvent* event)
void FileMetaDataToolTip::showEvent(QShowEvent *) void FileMetaDataToolTip::showEvent(QShowEvent *)
{ {
Plasma::WindowEffects::overrideShadow(winId(), true); #pragma message("TODO: port Plasma::WindowEffects::overrideShadow")
Plasma::WindowEffects::enableBlurBehind(winId(), true, mask()); //Plasma::WindowEffects::overrideShadow(winId(), true);
KWindowEffects::enableBlurBehind(winId(), true, mask());
} }
#include "filemetadatatooltip.moc" #include "filemetadatatooltip.moc"

View File

@ -23,6 +23,7 @@
#include <KIcon> #include <KIcon>
#include <KIO/JobUiDelegate> #include <KIO/JobUiDelegate>
#include <KIO/PreviewJob> #include <KIO/PreviewJob>
#include <KJobWidgets>
#include <QApplication> #include <QApplication>
#include <QDesktopWidget> #include <QDesktopWidget>
@ -132,7 +133,7 @@ void ToolTipManager::startContentRetrieval()
KIO::PreviewJob* job = new KIO::PreviewJob(KFileItemList() << m_item, QSize(256, 256)); KIO::PreviewJob* job = new KIO::PreviewJob(KFileItemList() << m_item, QSize(256, 256));
job->setIgnoreMaximumSize(m_item.isLocalFile()); job->setIgnoreMaximumSize(m_item.isLocalFile());
if (job->ui()) { if (job->ui()) {
job->ui()->setWindow(qApp->activeWindow()); KJobWidgets::setWindow(job, qApp->activeWindow());
} }
connect(job, SIGNAL(gotPreview(KFileItem,QPixmap)), connect(job, SIGNAL(gotPreview(KFileItem,QPixmap)),

View File

@ -20,6 +20,7 @@
#include "updateitemstatesthread.h" #include "updateitemstatesthread.h"
#include <kversioncontrolplugin2.h> #include <kversioncontrolplugin2.h>
#include <QVector>
#include <QMutexLocker> #include <QMutexLocker>

View File

@ -23,6 +23,7 @@
#include <KLocale> #include <KLocale>
#include <KService> #include <KService>
#include <KDebug>
#include <KServiceTypeTrader> #include <KServiceTypeTrader>
#include <kitemviews/kfileitemmodel.h> #include <kitemviews/kfileitemmodel.h>
#include <kversioncontrolplugin2.h> #include <kversioncontrolplugin2.h>
@ -116,7 +117,7 @@ QList<QAction*> VersionControlObserver::actions(const KFileItemList& items) cons
if (items.count() == 1) { if (items.count() == 1) {
const KFileItem rootItem = m_model->rootItem(); const KFileItem rootItem = m_model->rootItem();
if (!rootItem.isNull() && items.first().url() == rootItem.url()) { if (!rootItem.isNull() && items.first().url() == rootItem.url()) {
directory = rootItem.url().path(KUrl::AddTrailingSlash); directory = rootItem.url().path();
} }
} }

View File

@ -23,6 +23,7 @@
#include <libdolphin_export.h> #include <libdolphin_export.h>
#include <KFileItem> #include <KFileItem>
#include <KUrl>
#include <kversioncontrolplugin2.h> #include <kversioncontrolplugin2.h>
#include <QList> #include <QList>
#include <QMutex> #include <QMutex>

View File

@ -27,6 +27,8 @@
#include <KLocale> #include <KLocale>
#include <KStandardDirs> #include <KStandardDirs>
#include <KUrl> #include <KUrl>
#include <KDebug>
#include <KGlobal>
#include <QCryptographicHash> #include <QCryptographicHash>
#include <QDate> #include <QDate>