X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/0c44dfe2b1c143fae323b9ff4bd415cdd69c1086..7df627a7d6da944c89279495cf50cc4b52ec68e2:/src/CMakeLists.txt diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 147f18c00..97bc770d7 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,14 +1,6 @@ include(ECMAddAppIcon) -configure_file(config-baloo.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-baloo.h) - -configure_file(config-kactivities.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-kactivities.h) - -configure_file(config-packagekit.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-packagekit.h) - -configure_file(config-terminal.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-terminal.h) - -configure_file(config-kuserfeedback.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-kuserfeedback.h) +configure_file(config-dolphin.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-dolphin.h) add_definitions( -DTRANSLATION_DOMAIN=\"dolphin\" @@ -31,7 +23,7 @@ generate_export_header(dolphinvcs BASE_NAME dolphinvcs) target_link_libraries( dolphinvcs PUBLIC - Qt5::Widgets + Qt${QT_MAJOR_VERSION}::Widgets ) set_target_properties(dolphinvcs PROPERTIES @@ -50,7 +42,6 @@ ecm_generate_headers(dolphinvcs_LIB_HEADERS install(TARGETS dolphinvcs EXPORT DolphinVcsTargets ${KDE_INSTALL_TARGETS_DEFAULT_ARGS}) -install(FILES views/versioncontrol/fileviewversioncontrolplugin.desktop DESTINATION ${KDE_INSTALL_KSERVICETYPES5DIR}) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/dolphinvcs_export.h DESTINATION ${KDE_INSTALL_INCLUDEDIR} COMPONENT Devel) install(FILES ${dolphinvcs_LIB_HEADERS} DESTINATION "${KDE_INSTALL_INCLUDEDIR}/Dolphin" COMPONENT Devel) @@ -61,6 +52,7 @@ add_library(dolphinprivate SHARED) target_sources(dolphinprivate PRIVATE kitemviews/kfileitemlistview.cpp kitemviews/kfileitemlistwidget.cpp + kitemviews/kfileitemlisttostring.cpp kitemviews/kfileitemmodel.cpp kitemviews/kfileitemmodelrolesupdater.cpp kitemviews/kitemlistcontainer.cpp @@ -74,11 +66,9 @@ target_sources(dolphinprivate PRIVATE kitemviews/kitemlistwidget.cpp kitemviews/kitemmodelbase.cpp kitemviews/kitemset.cpp - kitemviews/kstandarditem.cpp kitemviews/kstandarditemlistgroupheader.cpp kitemviews/kstandarditemlistwidget.cpp kitemviews/kstandarditemlistview.cpp - kitemviews/kstandarditemmodel.cpp kitemviews/private/kdirectorycontentscounter.cpp kitemviews/private/kdirectorycontentscounterworker.cpp kitemviews/private/kfileitemclipboard.cpp @@ -93,12 +83,11 @@ target_sources(dolphinprivate PRIVATE kitemviews/private/kitemlistviewanimation.cpp kitemviews/private/kitemlistviewlayouter.cpp kitemviews/private/kpixmapmodifier.cpp - kitemviews/private/ktwofingerswipe.cpp - kitemviews/private/ktwofingertap.cpp settings/applyviewpropsjob.cpp settings/viewmodes/viewmodesettings.cpp settings/viewpropertiesdialog.cpp settings/viewpropsprogressinfo.cpp + selectionmode/actiontexthelper.cpp views/dolphinfileitemlistwidget.cpp views/dolphinitemlistview.cpp views/dolphinnewfilemenuobserver.cpp @@ -114,6 +103,60 @@ target_sources(dolphinprivate PRIVATE dolphinremoveaction.cpp middleclickactioneventfilter.cpp dolphinnewfilemenu.cpp + + kitemviews/kfileitemlistview.h + kitemviews/kfileitemlistwidget.h + kitemviews/kfileitemlisttostring.h + kitemviews/kfileitemmodel.h + kitemviews/kfileitemmodelrolesupdater.h + kitemviews/kitemlistcontainer.h + kitemviews/kitemlistcontroller.h + kitemviews/kitemlistgroupheader.h + kitemviews/kitemlistheader.h + kitemviews/kitemlistselectionmanager.h + kitemviews/kitemliststyleoption.h + kitemviews/kitemlistview.h + kitemviews/kitemlistviewaccessible.h + kitemviews/kitemlistwidget.h + kitemviews/kitemmodelbase.h + kitemviews/kitemset.h + kitemviews/kstandarditemlistgroupheader.h + kitemviews/kstandarditemlistwidget.h + kitemviews/kstandarditemlistview.h + kitemviews/private/kdirectorycontentscounter.h + kitemviews/private/kdirectorycontentscounterworker.h + kitemviews/private/kfileitemclipboard.h + kitemviews/private/kfileitemmodelfilter.h + kitemviews/private/kitemlistheaderwidget.h + kitemviews/private/kitemlistkeyboardsearchmanager.h + kitemviews/private/kitemlistroleeditor.h + kitemviews/private/kitemlistrubberband.h + kitemviews/private/kitemlistselectiontoggle.h + kitemviews/private/kitemlistsizehintresolver.h + kitemviews/private/kitemlistsmoothscroller.h + kitemviews/private/kitemlistviewanimation.h + kitemviews/private/kitemlistviewlayouter.h + kitemviews/private/kpixmapmodifier.h + settings/applyviewpropsjob.h + settings/viewmodes/viewmodesettings.h + settings/viewpropertiesdialog.h + settings/viewpropsprogressinfo.h + selectionmode/actiontexthelper.h + views/dolphinfileitemlistwidget.h + views/dolphinitemlistview.h + views/dolphinnewfilemenuobserver.h + views/dolphinremoteencoding.h + views/dolphinview.h + views/dolphinviewactionhandler.h + views/draganddrophelper.h + views/versioncontrol/updateitemstatesthread.h + views/versioncontrol/versioncontrolobserver.h + views/viewmodecontroller.h + views/viewproperties.h + views/zoomlevelinfo.h + dolphinremoveaction.h + middleclickactioneventfilter.h + dolphinnewfilemenu.h ) ecm_qt_declare_logging_category(dolphinprivate @@ -129,6 +172,9 @@ if(HAVE_BALOO) views/tooltips/dolphinfilemetadatawidget.cpp views/tooltips/tooltipmanager.cpp kitemviews/private/kbaloorolesprovider.cpp + views/tooltips/dolphinfilemetadatawidget.h + views/tooltips/tooltipmanager.h + kitemviews/private/kbaloorolesprovider.h ) endif() @@ -147,8 +193,8 @@ generate_export_header(dolphinprivate BASE_NAME dolphin) target_link_libraries( dolphinprivate PUBLIC dolphinvcs - Qt5::Concurrent - Qt5::Gui + Qt${QT_MAJOR_VERSION}::Concurrent + Qt${QT_MAJOR_VERSION}::Gui KF5::I18n KF5::IconThemes KF5::KIOCore @@ -158,8 +204,11 @@ target_link_libraries( KF5::TextWidgets KF5::ConfigCore KF5::NewStuff + KF5::NewStuffWidgets # KNSWidgets::Button KF5::Parts KF5::WindowSystem + KF5::WidgetsAddons + KF5::Codecs ) if(HAVE_BALOO) @@ -180,7 +229,7 @@ install(TARGETS dolphinprivate ${KDE_INSTALL_TARGETS_DEFAULT_ARGS} LIBRARY NAMEL install(FILES ${CMAKE_CURRENT_BINARY_DIR}/dolphin_export.h DESTINATION ${KDE_INSTALL_INCLUDEDIR} COMPONENT Devel) ########################################## -configure_file(dolphinpart.desktop.in ${CMAKE_CURRENT_BINARY_DIR}/dolphinpart.desktop @ONLY) +configure_file(dolphinpart.json.in ${CMAKE_CURRENT_BINARY_DIR}/dolphinpart.json @ONLY) add_library(dolphinpart MODULE) @@ -188,19 +237,19 @@ target_sources(dolphinpart PRIVATE dolphinpart.cpp dolphinpart_ext.cpp dolphindebug.cpp + dolphinpart.h + dolphinpart_ext.h + dolphindebug.h dolphinpart.qrc ) -kcoreaddons_desktop_to_json(dolphinpart ${CMAKE_CURRENT_BINARY_DIR}/dolphinpart.desktop) - target_link_libraries(dolphinpart dolphinprivate ) -install(TARGETS dolphinpart DESTINATION ${KDE_INSTALL_PLUGINDIR}/kf5/parts) - -install(FILES ${CMAKE_CURRENT_BINARY_DIR}/dolphinpart.desktop DESTINATION ${KDE_INSTALL_KSERVICES5DIR}) +install(TARGETS dolphinpart DESTINATION ${KDE_INSTALL_PLUGINDIR}/kf${QT_MAJOR_VERSION}/parts) +install(FILES dolphinpartactions.desktop DESTINATION "${KDE_INSTALL_DATADIR}/dolphin/") ########################################## @@ -222,13 +271,8 @@ target_sources(dolphinstatic PRIVATE dolphinurlnavigatorscontroller.cpp trash/dolphintrash.cpp filterbar/filterbar.cpp + kitemviews/kfileitemlisttostring.cpp panels/places/placespanel.cpp - panels/places/placesitem.cpp - panels/places/placesitemlistgroupheader.cpp - panels/places/placesitemlistwidget.cpp - panels/places/placesitemmodel.cpp - panels/places/placesitemsignalhandler.cpp - panels/places/placesview.cpp panels/panel.cpp panels/folders/foldersitemlistwidget.cpp panels/folders/treeviewcontextmenu.cpp @@ -237,6 +281,12 @@ target_sources(dolphinstatic PRIVATE search/dolphinfacetswidget.cpp search/dolphinquery.cpp search/dolphinsearchbox.cpp + selectionmode/actiontexthelper.cpp + selectionmode/actionwithwidget.cpp + selectionmode/backgroundcolorhelper.cpp + selectionmode/bottombar.cpp + selectionmode/bottombarcontentscontainer.cpp + selectionmode/topbar.cpp settings/general/behaviorsettingspage.cpp settings/general/configurepreviewplugindialog.cpp settings/general/confirmationssettingspage.cpp @@ -264,6 +314,64 @@ target_sources(dolphinstatic PRIVATE dolphindebug.cpp global.cpp dolphin.qrc + + dolphinbookmarkhandler.h + dolphindockwidget.h + dolphinmainwindow.h + dolphinviewcontainer.h + dolphincontextmenu.h + dolphinnavigatorswidgetaction.h + dolphintabbar.h + dolphinplacesmodelsingleton.h + dolphinrecenttabsmenu.h + dolphintabpage.h + dolphintabwidget.h + dolphinurlnavigator.h + dolphinurlnavigatorscontroller.h + trash/dolphintrash.h + filterbar/filterbar.h + kitemviews/kfileitemlisttostring.h + panels/places/placespanel.h + panels/panel.h + panels/folders/foldersitemlistwidget.h + panels/folders/treeviewcontextmenu.h + panels/folders/folderspanel.h + panels/terminal/terminalpanel.h + search/dolphinfacetswidget.h + search/dolphinquery.h + search/dolphinsearchbox.h + selectionmode/actiontexthelper.h + selectionmode/actionwithwidget.h + selectionmode/backgroundcolorhelper.h + selectionmode/bottombar.h + selectionmode/bottombarcontentscontainer.h + selectionmode/topbar.h + settings/general/behaviorsettingspage.h + settings/general/configurepreviewplugindialog.h + settings/general/confirmationssettingspage.h + settings/general/generalsettingspage.h + settings/general/previewssettingspage.h + settings/general/statusbarsettingspage.h + settings/dolphinsettingsdialog.h + settings/navigation/navigationsettingspage.h + settings/contextmenu/contextmenusettingspage.h + settings/settingspagebase.h + settings/serviceitemdelegate.h + settings/servicemodel.h + settings/startup/startupsettingspage.h + settings/trash/trashsettingspage.h + settings/viewmodes/dolphinfontrequester.h + settings/viewmodes/viewsettingspage.h + settings/viewmodes/viewmodesettings.h + settings/viewmodes/viewsettingstab.h + statusbar/dolphinstatusbar.h + statusbar/mountpointobserver.h + statusbar/mountpointobservercache.h + statusbar/spaceinfoobserver.h + statusbar/statusbarspaceinfo.h + views/zoomlevelinfo.h + dolphindebug.h + global.h ) if(HAVE_BALOO) @@ -272,6 +380,10 @@ if(HAVE_BALOO) panels/information/informationpanelcontent.cpp panels/information/pixmapviewer.cpp panels/information/phononwidget.cpp + panels/information/informationpanel.h + panels/information/informationpanelcontent.h + panels/information/pixmapviewer.h + panels/information/phononwidget.h ) endif() @@ -281,6 +393,10 @@ if(HAVE_KUSERFEEDBACK) userfeedback/settingsdatasource.cpp userfeedback/placesdatasource.cpp settings/userfeedback/userfeedbacksettingspage.cpp + userfeedback/dolphinfeedbackprovider.h + userfeedback/settingsdatasource.h + userfeedback/placesdatasource.h + settings/userfeedback/userfeedbacksettingspage.h ) endif() @@ -299,10 +415,10 @@ kconfig_add_kcfg_files(dolphinstatic GENERATE_MOC settings/dolphin_generalsettings.kcfgc ) -qt5_generate_dbus_interface(${CMAKE_CURRENT_SOURCE_DIR}/dolphinmainwindow.h org.kde.DolphinMainWindow.xml) -qt5_add_dbus_adaptor(dolphin_dbus_SRCS ${CMAKE_CURRENT_BINARY_DIR}/org.kde.DolphinMainWindow.xml dolphinmainwindow.h DolphinMainWindow) -qt5_add_dbus_interface(dolphin_dbus_SRCS ${CMAKE_CURRENT_BINARY_DIR}/org.kde.DolphinMainWindow.xml dolphinmainwindowinterface) -qt5_add_dbus_interface(dolphin_dbus_SRCS panels/terminal/org.kde.KIOFuse.VFS.xml kiofuse_interface) +qt_generate_dbus_interface(${CMAKE_CURRENT_SOURCE_DIR}/dolphinmainwindow.h org.kde.DolphinMainWindow.xml) +qt_add_dbus_adaptor(dolphin_dbus_SRCS ${CMAKE_CURRENT_BINARY_DIR}/org.kde.DolphinMainWindow.xml dolphinmainwindow.h DolphinMainWindow) +qt_add_dbus_interface(dolphin_dbus_SRCS ${CMAKE_CURRENT_BINARY_DIR}/org.kde.DolphinMainWindow.xml dolphinmainwindowinterface) +qt_add_dbus_interface(dolphin_dbus_SRCS panels/terminal/org.kde.KIOFuse.VFS.xml kiofuse_interface) target_sources(dolphinstatic PRIVATE ${dolphin_dbus_SRCS} @@ -315,7 +431,7 @@ target_link_libraries(dolphinstatic KF5::KCMUtils KF5::DBusAddons KF5::Notifications - Phonon::phonon4qt5 + Phonon::phonon4qt${QT_MAJOR_VERSION} ) if (HAVE_KACTIVITIES) @@ -337,16 +453,17 @@ add_executable(dolphin) target_sources(dolphin PRIVATE dbusinterface.cpp + dbusinterface.h main.cpp ) +if(FLATPAK) + target_compile_definitions(dolphin PRIVATE FLATPAK) +endif() + # Sets the icon on Windows and OSX file(GLOB ICONS_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/icons/*system-file-manager.png") -ecm_add_app_icon(dolphin_APPICON_SRCS ICONS ${ICONS_SRCS}) -# ecm_add_app_icon 5.83 will take target as arg, use that once it is min req. -target_sources(dolphin PRIVATE - ${dolphin_APPICON_SRCS} -) +ecm_add_app_icon(dolphin ICONS ${ICONS_SRCS}) target_link_libraries(dolphin PRIVATE @@ -355,6 +472,14 @@ target_link_libraries(dolphin KF5::Crash ) +if (HAVE_X11) + if (QT_MAJOR_VERSION STREQUAL "5") + target_link_libraries(dolphin PRIVATE Qt5::X11Extras) + else() + target_link_libraries(dolphin PRIVATE Qt::GuiPrivate) + endif() +endif() + include(DbusInterfaceMacros) generate_and_install_dbus_interface( @@ -379,12 +504,21 @@ if(NOT WIN32) settings/viewmodes/dolphinfontrequester.cpp settings/viewmodes/viewmodesettings.cpp settings/viewmodes/viewsettingstab.cpp - views/zoomlevelinfo.cpp) + views/zoomlevelinfo.cpp + settings/kcm/kcmdolphinviewmodes.h + settings/viewmodes/dolphinfontrequester.h + settings/viewmodes/viewmodesettings.h + settings/viewmodes/viewsettingstab.h + views/zoomlevelinfo.h) target_sources(kcm_dolphinnavigation PRIVATE settings/kcm/kcmdolphinnavigation.cpp settings/navigation/navigationsettingspage.cpp - settings/settingspagebase.cpp) + settings/settingspagebase.cpp + settings/kcm/kcmdolphinnavigation.h + settings/navigation/navigationsettingspage.h + settings/settingspagebase.h + ) target_sources(kcm_dolphingeneral PRIVATE settings/kcm/kcmdolphingeneral.cpp @@ -394,7 +528,16 @@ if(NOT WIN32) settings/general/confirmationssettingspage.cpp settings/settingspagebase.cpp settings/serviceitemdelegate.cpp - settings/servicemodel.cpp) + settings/servicemodel.cpp + settings/kcm/kcmdolphingeneral.h + settings/general/behaviorsettingspage.h + settings/general/previewssettingspage.h + settings/general/configurepreviewplugindialog.h + settings/general/confirmationssettingspage.h + settings/settingspagebase.h + settings/serviceitemdelegate.h + settings/servicemodel.h + ) kconfig_add_kcfg_files(kcm_dolphinviewmodes settings/dolphin_compactmodesettings.kcfgc @@ -416,13 +559,10 @@ if(NOT WIN32) target_link_libraries(kcm_dolphingeneral dolphinprivate) install( FILES org.kde.dolphin.appdata.xml DESTINATION ${KDE_INSTALL_METAINFODIR} ) - install( FILES settings/kcm/kcmdolphinviewmodes.desktop DESTINATION ${KDE_INSTALL_KSERVICES5DIR} ) - install( FILES settings/kcm/kcmdolphinnavigation.desktop DESTINATION ${KDE_INSTALL_KSERVICES5DIR} ) - install( FILES settings/kcm/kcmdolphingeneral.desktop DESTINATION ${KDE_INSTALL_KSERVICES5DIR} ) - install(TARGETS kcm_dolphinviewmodes DESTINATION ${KDE_INSTALL_PLUGINDIR} ) - install(TARGETS kcm_dolphinnavigation DESTINATION ${KDE_INSTALL_PLUGINDIR} ) - install(TARGETS kcm_dolphingeneral DESTINATION ${KDE_INSTALL_PLUGINDIR} ) + install(TARGETS kcm_dolphinviewmodes DESTINATION ${KDE_INSTALL_PLUGINDIR}/dolphin/kcms ) + install(TARGETS kcm_dolphinnavigation DESTINATION ${KDE_INSTALL_PLUGINDIR}/dolphin/kcms ) + install(TARGETS kcm_dolphingeneral DESTINATION ${KDE_INSTALL_PLUGINDIR}/dolphin/kcms ) endif() if(NOT WIN32) @@ -449,7 +589,9 @@ install( FILES settings/dolphin_directoryviewpropertysettings.kcfg settings/dolphin_versioncontrolsettings.kcfg DESTINATION ${KDE_INSTALL_KCFGDIR} ) +install( FILES settings/dolphin_detailsmodesettings.upd + DESTINATION ${KDE_INSTALL_KCONFUPDATEDIR} ) + if(BUILD_TESTING) - find_package(Qt5Test ${QT_MIN_VERSION} CONFIG REQUIRED) add_subdirectory(tests) endif()