diff --git a/CMakeLists.txt b/CMakeLists.txt index 5c548c117..cc2e418f3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -48,11 +48,6 @@ endif() set(QUOTIENT_FORCE_NAMESPACED_INCLUDES TRUE) -set(RECOMMENDED_SPACE_ID "" CACHE STRING "The matrix ID of a space that will be recommended to the user. Only relevant to distros") -set(RECOMMENDED_SPACE_DISPLAYNAME "" CACHE STRING "The displayname of a space that will be recommended to the user. Only relevant to distros") -set(RECOMMENDED_SPACE_AVATAR "" CACHE STRING "mxc url of a space that will be recommended to the user. Only relevant to distros") -set(RECOMMENDED_SPACE_DESCRIPTION "" CACHE STRING "Description of a space that will be recommended to the user. Only relevant to distros") - ecm_setup_version(${PROJECT_VERSION} VARIABLE_PREFIX NEOCHAT VERSION_HEADER ${CMAKE_CURRENT_BINARY_DIR}/neochat-version.h diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index e9ab6a518..d6c72e62e 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -307,17 +307,11 @@ qt_add_qml_module(neochat URI org.kde.neochat NO_PLUGIN qml/ServerComboBox.qml qml/UserSearchPage.qml qml/ManualUserDialog.qml - qml/RecommendedSpaceDialog.qml RESOURCES qml/confetti.png qml/glowdot.png ) -target_compile_definitions(neochat PRIVATE "RECOMMENDED_SPACE_ID=\"${RECOMMENDED_SPACE_ID}\"") -target_compile_definitions(neochat PRIVATE "RECOMMENDED_SPACE_AVATAR=\"${RECOMMENDED_SPACE_AVATAR}\"") -target_compile_definitions(neochat PRIVATE "RECOMMENDED_SPACE_DESCRIPTION=\"${RECOMMENDED_SPACE_DESCRIPTION}\"") -target_compile_definitions(neochat PRIVATE "RECOMMENDED_SPACE_DISPLAYNAME=\"${RECOMMENDED_SPACE_DISPLAYNAME}\"") - configure_file(config-neochat.h.in ${CMAKE_CURRENT_BINARY_DIR}/config-neochat.h) if(WIN32) diff --git a/src/qml/RecommendedSpaceDialog.qml b/src/qml/RecommendedSpaceDialog.qml deleted file mode 100644 index c95570a4e..000000000 --- a/src/qml/RecommendedSpaceDialog.qml +++ /dev/null @@ -1,62 +0,0 @@ -// SPDX-FileCopyrightText: 2024 Tobias Fella -// SPDX-License-Identifier: GPL-2.0-or-later - -import QtQuick -import QtQuick.Controls as QQC2 -import QtQuick.Layouts -import org.kde.kirigami as Kirigami -import org.kde.kirigamiaddons.formcard as FormCard -import org.kde.kirigamiaddons.components - -import org.kde.neochat - -FormCard.FormCardPage { - id: root - - property var connection - - title: i18nc("@title Join ", "Join %1", SpaceHierarchyCache.recommendedSpaceDisplayName) - - FormCard.FormHeader { - title: i18nc("@title", "Your distro recommends you join this space") - } - FormCard.FormCard { - FormCard.AbstractFormDelegate { - background: null - contentItem: RowLayout { - spacing: Kirigami.Units.largeSpacing * 4 - Avatar { - source: root.connection.makeMediaUrl(SpaceHierarchyCache.recommendedSpaceAvatar) - } - ColumnLayout { - Layout.fillWidth: true - Kirigami.Heading { - Layout.fillWidth: true - text: SpaceHierarchyCache.recommendedSpaceDisplayName - } - QQC2.Label { - Layout.fillWidth: true - text: SpaceHierarchyCache.recommendedSpaceDescription - } - } - } - - } - FormCard.FormDelegateSeparator {} - FormCard.FormButtonDelegate { - text: i18nc("@action:button", "Join") - onClicked: { - SpaceHierarchyCache.recommendedSpaceHidden = true - RoomManager.resolveResource(SpaceHierarchyCache.recommendedSpaceId, "join") - root.closeDialog() - } - } - FormCard.FormButtonDelegate { - text: i18nc("@action:button", "Ignore") - onClicked: { - SpaceHierarchyCache.recommendedSpaceHidden = true - root.closeDialog() - } - } - } -} diff --git a/src/qml/SpaceDrawer.qml b/src/qml/SpaceDrawer.qml index 39eea7f57..8c23aa786 100644 --- a/src/qml/SpaceDrawer.qml +++ b/src/qml/SpaceDrawer.qml @@ -176,41 +176,6 @@ QQC2.Control { } } - AvatarTabButton { - id: recommendedSpaceButton - Layout.fillWidth: true - Layout.preferredHeight: width - Kirigami.Units.smallSpacing - Layout.maximumHeight: width - Kirigami.Units.smallSpacing - - visible: SpaceHierarchyCache.recommendedSpaceId.length > 0 && !root.connection.room(SpaceHierarchyCache.recommendedSpaceId) && !SpaceHierarchyCache.recommendedSpaceHidden - - text: i18nc("Join ", "Join %1", SpaceHierarchyCache.recommendedSpaceDisplayName) - source: root.connection.makeMediaUrl(SpaceHierarchyCache.recommendedSpaceAvatar) - onClicked: { - let dialog = pageStack.pushDialogLayer(Qt.resolvedUrl("qrc:/org/kde/neochat/qml/RecommendedSpaceDialog.qml"), { - connection: root.connection - }, { - title: i18nc("@title Join ", "Join %1", SpaceHierarchyCache.recommendedSpaceDisplayName) - }); - } - Rectangle { - color: Kirigami.Theme.backgroundColor - width: Kirigami.Units.gridUnit * 1.5 - height: width - anchors.bottom: parent.bottom - anchors.bottomMargin: Kirigami.Units.smallSpacing - anchors.rightMargin: Kirigami.Units.smallSpacing * 2 - anchors.right: parent.right - radius: width / 2 - z: parent.z + 1 - Kirigami.Icon { - anchors.fill: parent - z: parent + 1 - source: "list-add" - } - } - } - Kirigami.Separator { Layout.fillWidth: true Layout.topMargin: Kirigami.Units.smallSpacing / 2 diff --git a/src/spacehierarchycache.cpp b/src/spacehierarchycache.cpp index 44e955cca..db8331745 100644 --- a/src/spacehierarchycache.cpp +++ b/src/spacehierarchycache.cpp @@ -6,9 +6,6 @@ #include #include -#include -#include - #include "neochatroom.h" using namespace Quotient; @@ -114,38 +111,4 @@ void SpaceHierarchyCache::setConnection(NeoChatConnection *connection) connect(connection, &Connection::aboutToDeleteRoom, this, &SpaceHierarchyCache::removeSpaceFromHierarchy); } -QString SpaceHierarchyCache::recommendedSpaceId() const -{ - return QStringLiteral(RECOMMENDED_SPACE_ID); -} - -QString SpaceHierarchyCache::recommendedSpaceAvatar() const -{ - return QStringLiteral(RECOMMENDED_SPACE_AVATAR); -} - -QString SpaceHierarchyCache::recommendedSpaceDisplayName() const -{ - return QStringLiteral(RECOMMENDED_SPACE_DISPLAYNAME); -} - -QString SpaceHierarchyCache::recommendedSpaceDescription() const -{ - return QStringLiteral(RECOMMENDED_SPACE_DESCRIPTION); -} - -bool SpaceHierarchyCache::recommendedSpaceHidden() const -{ - KConfigGroup group(KSharedConfig::openStateConfig(), QStringLiteral("recommendedSpace")); - return group.readEntry(QStringLiteral("hidden"), false); -} - -void SpaceHierarchyCache::setRecommendedSpaceHidden(bool hidden) -{ - KConfigGroup group(KSharedConfig::openStateConfig(), QStringLiteral("recommendedSpace")); - group.writeEntry(QStringLiteral("hidden"), hidden); - group.sync(); - Q_EMIT recommendedSpaceHiddenChanged(); -} - #include "moc_spacehierarchycache.cpp" diff --git a/src/spacehierarchycache.h b/src/spacehierarchycache.h index 0809fd410..17b8e5314 100644 --- a/src/spacehierarchycache.h +++ b/src/spacehierarchycache.h @@ -31,11 +31,6 @@ class SpaceHierarchyCache : public QObject QML_SINGLETON Q_PROPERTY(NeoChatConnection *connection READ connection WRITE setConnection NOTIFY connectionChanged) - Q_PROPERTY(QString recommendedSpaceId READ recommendedSpaceId CONSTANT) - Q_PROPERTY(QString recommendedSpaceAvatar READ recommendedSpaceAvatar CONSTANT) - Q_PROPERTY(QString recommendedSpaceDisplayName READ recommendedSpaceDisplayName CONSTANT) - Q_PROPERTY(QString recommendedSpaceDescription READ recommendedSpaceDescription CONSTANT) - Q_PROPERTY(bool recommendedSpaceHidden READ recommendedSpaceHidden WRITE setRecommendedSpaceHidden NOTIFY recommendedSpaceHiddenChanged) public: static SpaceHierarchyCache &instance() @@ -62,18 +57,9 @@ public: NeoChatConnection *connection() const; void setConnection(NeoChatConnection *connection); - QString recommendedSpaceId() const; - QString recommendedSpaceAvatar() const; - QString recommendedSpaceDisplayName() const; - QString recommendedSpaceDescription() const; - - bool recommendedSpaceHidden() const; - void setRecommendedSpaceHidden(bool hidden); - Q_SIGNALS: void spaceHierarchyChanged(); void connectionChanged(); - void recommendedSpaceHiddenChanged(); private Q_SLOTS: void addSpaceToHierarchy(Quotient::Room *room);