diff --git a/CMakeLists.txt b/CMakeLists.txt index 589be0ab3..d8a9a1d65 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,7 +8,7 @@ cmake_minimum_required(VERSION 3.1) project(NeoChat) -set(KF5_MIN_VERSION "5.84.0") +set(KF5_MIN_VERSION "5.86.0") set(QT_MIN_VERSION "5.15.0") find_package(ECM ${KF5_MIN_VERSION} REQUIRED NO_MODULE) @@ -18,6 +18,8 @@ set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${CMAKE_SOURCE_DIR}/cmake) set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) +set(KDE_COMPILERSETTINGS_LEVEL 5.84) + include(FeatureSummary) include(ECMSetupVersion) include(KDEInstallDirs) @@ -70,7 +72,7 @@ if(ANDROID) ) else() find_package(Qt5 ${QT_MIN_VERSION} COMPONENTS Widgets) - find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS QQC2DesktopStyle ConfigWidgets KIO WindowSystem Sonnet) + find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS QQC2DesktopStyle ConfigWidgets KIO WindowSystem Sonnet SyntaxHighlighting) set_package_properties(KF5QQC2DesktopStyle PROPERTIES TYPE RUNTIME ) diff --git a/imports/NeoChat/Menu/Timeline/MessageSourceSheet.qml b/imports/NeoChat/Menu/Timeline/MessageSourceSheet.qml index e73816e25..2277acfa6 100644 --- a/imports/NeoChat/Menu/Timeline/MessageSourceSheet.qml +++ b/imports/NeoChat/Menu/Timeline/MessageSourceSheet.qml @@ -5,6 +5,7 @@ import QtQuick 2.15 import QtQuick.Controls 2.15 +import org.kde.syntaxhighlighting 1.0 import org.kde.kirigami 2.15 as Kirigami Kirigami.OverlaySheet { @@ -16,9 +17,16 @@ Kirigami.OverlaySheet { } TextArea { + id: sourceTextArea text: sourceText readOnly: true wrapMode: Text.WordWrap + + SyntaxHighlighter { + textEdit: sourceTextArea + repository: Repository + definition: "JSON" + } } } diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index b88b757e5..8774c8b26 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -60,7 +60,7 @@ if(NOT ANDROID) endif() target_include_directories(neochat PRIVATE ${CMAKE_BINARY_DIR}) -target_link_libraries(neochat PRIVATE Qt::Quick Qt::Qml Qt::Gui Qt::Network Qt::QuickControls2 KF5::I18n KF5::Kirigami2 KF5::Notifications KF5::ConfigCore KF5::ConfigGui KF5::CoreAddons Quotient cmark::cmark ${QTKEYCHAIN_LIBRARIES}) +target_link_libraries(neochat PRIVATE Qt::Quick Qt::Qml Qt::Gui Qt::Network Qt::QuickControls2 KF5::I18n KF5::Kirigami2 KF5::Notifications KF5::ConfigCore KF5::ConfigGui KF5::CoreAddons KF5::SyntaxHighlighting Quotient cmark::cmark ${QTKEYCHAIN_LIBRARIES}) kconfig_add_kcfg_files(neochat GENERATE_MOC neochatconfig.kcfgc) if(NEOCHAT_FLATPAK)