# You should have received a copy of the GNU General Public License
# along with Privacy Browser PC. If not, see <http://www.gnu.org/licenses/>.
-
# Create the executable and add the resources.
-add_executable(privacybrowser resources.qrc)
+add_executable(privacy-browser resources.qrc)
# List the sources to include in the executable.
-target_sources(privacybrowser PRIVATE
+target_sources(privacy-browser PRIVATE
main.cpp
- mainwindow.cpp
- privacybrowserpcview.cpp
+ MouseEventFilter.cpp
)
-# Add the Qt logging category.
-ecm_qt_declare_logging_category(privacybrowser
- HEADER privacybrowserdebug.h
+# Add the Qt logging category. This will create the `debug.h` header file.
+ecm_qt_declare_logging_category(privacy-browser
+ HEADER debug.h
IDENTIFIER PRIVACYBROWSER
CATEGORY_NAME "privacybrowser"
)
# Include the KConfig controller file.
-kconfig_add_kcfg_files(privacybrowser settings.kcfgc)
+kconfig_add_kcfg_files(privacy-browser Settings.kcfgc)
# Use KDE Frameworks to handle internationalization of the following UI files.
-ki18n_wrap_ui(privacybrowser
- privacybrowserpcview.ui
- settings.ui
+ki18n_wrap_ui(privacy-browser
+ BrowserView.ui
+ DomainSettingsDialog.ui
+ SettingsGeneral.ui
+ SettingsPrivacy.ui
)
-
-target_link_libraries(privacybrowser
+# Link the following libraries.
+target_link_libraries(privacy-browser
+ Qt5::Core
+ Qt5::Gui
+ Qt5::Sql
+ Qt5::Widgets
+ Qt5::WebEngineCore
+ Qt5::WebEngineWidgets
+ KF5::Completion
+ KF5::ConfigWidgets
KF5::CoreAddons
+ KF5::Crash
+ KF5::DBusAddons
+ KF5::DocTools
KF5::I18n
KF5::XmlGui
- KF5::ConfigWidgets
- KF5::DBusAddons
- KF5::Crash
- Qt5::Widgets
)
-install(TARGETS privacybrowser ${KDE_INSTALL_TARGETS_DEFAULT_ARGS})
-install(PROGRAMS com.stoutner.privacybrowser DESTINATION ${KDE_INSTALL_APPDIR})
-install(FILES com.stounter.privacybrowser.appdata.xml DESTINATION ${KDE_INSTALL_METAINFODIR})
-install(FILES privacybrowserpcui.rc DESTINATION ${KDE_INSTALL_KXMLGUI5DIR}/privacybrowser) # TODO
+# Add the subdirectories.
+add_subdirectory(dialogs)
+add_subdirectory(helpers)
+add_subdirectory(interceptors)
+add_subdirectory(ui.rc)
+add_subdirectory(views)
+add_subdirectory(windows)
+
+# Install Privacy Browser using the default KDE arguments.
+install(TARGETS privacy-browser ${KDE_INSTALL_TARGETS_DEFAULT_ARGS})
+
+# Install Privacy Browser according to the instructions in the desktop file, specifying the permissions.
+install(PROGRAMS com.stoutner.privacybrowser.desktop DESTINATION ${KDE_INSTALL_APPDIR} PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ)
+
+# Install Privacy Browser's metadata file.
+install(FILES com.stoutner.privacybrowser.appdata.xml DESTINATION ${KDE_INSTALL_METAINFODIR})
+
+# Install Privacy Browser's icon.
+ecm_install_icons(ICONS icons/sc-apps-privacy-browser.svg DESTINATION ${KDE_INSTALL_ICONDIR})