diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 1948cbbe8..2a461aa27 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -207,16 +207,10 @@ qt_add_qml_module(neochat URI org.kde.neochat NO_PLUGIN qml/TypingPane.qml qml/QuickSwitcher.qml qml/HoverActions.qml - qml/ChatBar.qml qml/AttachmentPane.qml - qml/ReplyPane.qml - qml/CompletionMenu.qml - qml/PieProgressBar.qml qml/QuickFormatBar.qml - qml/EmojiPicker.qml qml/UserDetailDialog.qml qml/CreateRoomDialog.qml - qml/EmojiDialog.qml qml/OpenFileDialog.qml qml/KeyVerificationDialog.qml qml/ConfirmLogoutDialog.qml @@ -236,9 +230,6 @@ qt_add_qml_module(neochat URI org.kde.neochat NO_PLUGIN qml/ConfirmEncryptionDialog.qml qml/RemoveSheet.qml qml/BanSheet.qml - qml/EmojiTonesPicker.qml - qml/EmojiDelegate.qml - qml/EmojiGrid.qml qml/RoomSearchPage.qml qml/LocationChooser.qml qml/TimelineView.qml @@ -262,7 +253,6 @@ qt_add_qml_module(neochat URI org.kde.neochat NO_PLUGIN qml/SelectParentDialog.qml qml/QrCodeMaximizeComponent.qml qml/SelectSpacesDialog.qml - qml/AttachDialog.qml qml/NotificationsView.qml qml/SearchPage.qml qml/ServerComboBox.qml @@ -286,6 +276,7 @@ add_subdirectory(settings) add_subdirectory(timeline) add_subdirectory(devtools) add_subdirectory(login) +add_subdirectory(chatbar) if(UNIX) qt_target_qml_sources(neochat QML_FILES qml/ShareAction.qml) @@ -377,7 +368,7 @@ if (NOT ANDROID AND NOT WIN32 AND NOT APPLE) endif() target_include_directories(neochat PRIVATE ${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/models ${CMAKE_CURRENT_SOURCE_DIR}/enums) -target_link_libraries(neochat PRIVATE settingsplugin timelineplugin devtoolsplugin loginplugin) +target_link_libraries(neochat PRIVATE settingsplugin timelineplugin devtoolsplugin loginplugin chatbarplugin) target_link_libraries(neochat PUBLIC Qt::Core Qt::Quick diff --git a/src/qml/AttachDialog.qml b/src/chatbar/AttachDialog.qml similarity index 100% rename from src/qml/AttachDialog.qml rename to src/chatbar/AttachDialog.qml diff --git a/src/chatbar/CMakeLists.txt b/src/chatbar/CMakeLists.txt new file mode 100644 index 000000000..d49a9bb9d --- /dev/null +++ b/src/chatbar/CMakeLists.txt @@ -0,0 +1,19 @@ +# SPDX-FileCopyrightText: 2024 Tobias Fella +# SPDX-License-Identifier: BSD-2-Clause + +qt_add_library(chatbar STATIC) +qt_add_qml_module(chatbar + URI org.kde.neochat.chatbar + OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/src/org/kde/neochat/chatbar + QML_FILES + AttachDialog.qml + ChatBar.qml + CompletionMenu.qml + EmojiDelegate.qml + EmojiGrid.qml + ReplyPane.qml + PieProgressBar.qml + EmojiPicker.qml + EmojiDialog.qml + EmojiTonesPicker.qml +) diff --git a/src/qml/ChatBar.qml b/src/chatbar/ChatBar.qml similarity index 100% rename from src/qml/ChatBar.qml rename to src/chatbar/ChatBar.qml diff --git a/src/qml/CompletionMenu.qml b/src/chatbar/CompletionMenu.qml similarity index 100% rename from src/qml/CompletionMenu.qml rename to src/chatbar/CompletionMenu.qml diff --git a/src/qml/EmojiDelegate.qml b/src/chatbar/EmojiDelegate.qml similarity index 100% rename from src/qml/EmojiDelegate.qml rename to src/chatbar/EmojiDelegate.qml diff --git a/src/qml/EmojiDialog.qml b/src/chatbar/EmojiDialog.qml similarity index 100% rename from src/qml/EmojiDialog.qml rename to src/chatbar/EmojiDialog.qml diff --git a/src/qml/EmojiGrid.qml b/src/chatbar/EmojiGrid.qml similarity index 100% rename from src/qml/EmojiGrid.qml rename to src/chatbar/EmojiGrid.qml diff --git a/src/qml/EmojiPicker.qml b/src/chatbar/EmojiPicker.qml similarity index 100% rename from src/qml/EmojiPicker.qml rename to src/chatbar/EmojiPicker.qml diff --git a/src/qml/EmojiTonesPicker.qml b/src/chatbar/EmojiTonesPicker.qml similarity index 100% rename from src/qml/EmojiTonesPicker.qml rename to src/chatbar/EmojiTonesPicker.qml diff --git a/src/qml/PieProgressBar.qml b/src/chatbar/PieProgressBar.qml similarity index 100% rename from src/qml/PieProgressBar.qml rename to src/chatbar/PieProgressBar.qml diff --git a/src/qml/ReplyPane.qml b/src/chatbar/ReplyPane.qml similarity index 100% rename from src/qml/ReplyPane.qml rename to src/chatbar/ReplyPane.qml diff --git a/src/main.cpp b/src/main.cpp index 292c9e20c..e9818165a 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -236,6 +236,7 @@ int main(int argc, char *argv[]) Q_IMPORT_QML_PLUGIN(org_kde_neochat_timelinePlugin) Q_IMPORT_QML_PLUGIN(org_kde_neochat_devtoolsPlugin) Q_IMPORT_QML_PLUGIN(org_kde_neochat_loginPlugin) + Q_IMPORT_QML_PLUGIN(org_kde_neochat_chatbarPlugin) qml_register_types_org_kde_neochat(); diff --git a/src/qml/HoverActions.qml b/src/qml/HoverActions.qml index fb840ebdd..a2445f3e6 100644 --- a/src/qml/HoverActions.qml +++ b/src/qml/HoverActions.qml @@ -6,7 +6,9 @@ import QtQuick.Controls as QQC2 import QtQuick.Layouts import org.kde.kirigami as Kirigami + import org.kde.neochat +import org.kde.neochat.chatbar /** * @brief A component that provides a set of actions when a message is hovered in the timeline. diff --git a/src/qml/RoomPage.qml b/src/qml/RoomPage.qml index 85634acf5..b0f8bba59 100644 --- a/src/qml/RoomPage.qml +++ b/src/qml/RoomPage.qml @@ -12,6 +12,7 @@ import org.kde.kirigami as Kirigami import org.kde.kitemmodels import org.kde.neochat +import org.kde.neochat.chatbar Kirigami.Page { id: root diff --git a/src/timeline/MessageEditComponent.qml b/src/timeline/MessageEditComponent.qml index 2cc2c8417..7d0efbd85 100644 --- a/src/timeline/MessageEditComponent.qml +++ b/src/timeline/MessageEditComponent.qml @@ -8,6 +8,7 @@ import QtQuick.Layouts import org.kde.kirigami as Kirigami import org.kde.neochat +import org.kde.neochat.chatbar /** * @brief A component to show an edit text field for a text message being edited.