From f04e6a5e0f787132234cd8ae9de9bbd8cc158a79 Mon Sep 17 00:00:00 2001 From: Chris Cochrun Date: Sun, 27 Jul 2025 07:18:31 -0500 Subject: [PATCH 1/4] make class name just lumina I don't care for the reverse dns naming thing right now. maybe later --- src/main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main.cpp b/src/main.cpp index 4914492..026278e 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -77,7 +77,7 @@ int main(int argc, char *argv[]) // set the application metadata // KAboutData::setApplicationData(about); QCoreApplication::setOrganizationName(QStringLiteral("lumina")); - QCoreApplication::setOrganizationDomain(QStringLiteral("tfcconnection.org")); + // QCoreApplication::setOrganizationDomain(QStringLiteral("c.org")); QCoreApplication::setApplicationName(QStringLiteral("lumina")); qSetMessagePattern(QString::fromUtf8("%{category}: %{time h:m:s ap} %{type} %{function}: %{message}\n %{file}")); From a4b7b42cfee58df2c65f8887428d46175a92c111 Mon Sep 17 00:00:00 2001 From: Chris Cochrun Date: Sun, 27 Jul 2025 07:18:59 -0500 Subject: [PATCH 2/4] fix icon not lining up --- src/qml/presenter/LibraryItem.qml | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/src/qml/presenter/LibraryItem.qml b/src/qml/presenter/LibraryItem.qml index 0ad7ffa..e682149 100644 --- a/src/qml/presenter/LibraryItem.qml +++ b/src/qml/presenter/LibraryItem.qml @@ -222,7 +222,7 @@ ColumnLayout { Component { id: libraryDelegate Item { - implicitWidth: ListView.view.width + implicitWidth: libraryList.width height: selectedLibrary == libraryType ? 50 : 0 property bool rightMenu: false property bool selected: selectionModel.hasSelection && selectionModel.currentIndex == innerModel.index(index, 0) @@ -250,12 +250,13 @@ ColumnLayout { implicitWidth: libraryList.width height: selectedLibrary == libraryType ? 50 : 0 + spacing: Kirigami.Unit.gridUnit * 2.0 Controls.Label { id: itemTitle anchors.top: parent.top anchors.topMargin: Kirigami.Units.smallSpacing anchors.left: parent.left - anchors.leftMargin: Kirigami.Units.gridUnit * 1.7 + anchors.leftMargin: Kirigami.Units.gridUnit * 0.7 width: parent.width - Kirigami.Units.gridUnit * 3.5 text: title @@ -284,7 +285,7 @@ ColumnLayout { anchors.top: itemTitle.bottom anchors.topMargin: Kirigami.Units.smallSpacing anchors.left: parent.left - anchors.leftMargin: Kirigami.Units.gridUnit * 1.7 + anchors.leftMargin: Kirigami.Units.gridUnit * 0.7 width: parent.width - Kirigami.Units.gridUnit * 3.5 font.pointSize: 9 text: { @@ -315,10 +316,25 @@ ColumnLayout { } } - icon.source: itemIcon - icon.width: Kirigami.Units.gridUnit - icon.height: Kirigami.Units.gridUnit - /* supportsMouseEvents: false */ + Kirigami.Icon { + id: trailing + anchors.right: parent.right + anchors.verticalCenter: parent.verticalCenter + anchors.rightMargin: 28 + implicitWidth: Kirigami.Units.gridUnit + source: itemIcon + + Binding on color { + when: dragHandler.containsMouse || + (selectionModel.hasSelection && + selectionModel.isSelected(proxyModel.idx(index))) + value: Kirigami.Theme.highlightedTextColor + } + } + /* icon.source: itemIcon */ + /* icon.width: Kirigami.Units.gridUnit */ + /* icon.height: Kirigami.Units.gridUnit */ + /* /\* supportsMouseEvents: false *\/ */ Behavior on height { NumberAnimation { From 0c6dd01aedeb546268a9af86eae7669eeb8c0b98 Mon Sep 17 00:00:00 2001 From: Chris Cochrun Date: Sun, 27 Jul 2025 07:19:14 -0500 Subject: [PATCH 3/4] trying to build with only cargo in my test bed --- smdview/blah/CMakeLists.txt | 24 ++++++++++++++++++++++++ smdview/blah/build.rs | 1 + 2 files changed, 25 insertions(+) create mode 100644 smdview/blah/CMakeLists.txt diff --git a/smdview/blah/CMakeLists.txt b/smdview/blah/CMakeLists.txt new file mode 100644 index 0000000..d55bc52 --- /dev/null +++ b/smdview/blah/CMakeLists.txt @@ -0,0 +1,24 @@ +cmake_minimum_required(VERSION 3.28) + +project(kirigami_rust) + +find_package(ECM 6.0 REQUIRED NO_MODULE) +set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH}) +include(KDEInstallDirs) +include(ECMUninstallTarget) + +include(ECMFindQmlModule) +ecm_find_qmlmodule(org.kde.kirigami REQUIRED) +find_package(KF6 REQUIRED COMPONENTS QQC2DesktopStyle) + +add_custom_target(kirigami_rust + ALL + COMMAND cargo build --target-dir ${CMAKE_CURRENT_BINARY_DIR} +) + +install( + PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/debug/kirigami_hello + DESTINATION ${KDE_INSTALL_BINDIR} +) + +install(FILES org.kde.kirigami_rust.desktop DESTINATION ${KDE_INSTALL_APPDIR}) diff --git a/smdview/blah/build.rs b/smdview/blah/build.rs index c67706d..73fb35e 100644 --- a/smdview/blah/build.rs +++ b/smdview/blah/build.rs @@ -2,6 +2,7 @@ use cxx_qt_build::{CxxQtBuilder, QmlModule}; fn main() { CxxQtBuilder::new() + .qt_module("Network") .qml_module(QmlModule { uri: "org.kde.simplemdviewer", qml_files: &["src/qml/Main.qml"], From eef1903557c018496c16090e34192eaae665929b Mon Sep 17 00:00:00 2001 From: Chris Cochrun Date: Sun, 27 Jul 2025 07:19:26 -0500 Subject: [PATCH 4/4] trying to find out why I can't build with only cargo --- flake.nix | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/flake.nix b/flake.nix index 954cbdc..8c30dfc 100644 --- a/flake.nix +++ b/flake.nix @@ -32,6 +32,7 @@ "rustfmt" ]) rust-analyzer + qt6.wrapQtAppsHook ]; bi = with pkgs; [ @@ -43,7 +44,6 @@ cmake kdePackages.extra-cmake-modules pkg-config - qt6.wrapQtAppsHook makeWrapper openssl.dev @@ -56,7 +56,7 @@ # clang-format qt6.full qt6.qttools - qt6.qtbase + # qt6.qtbase # qt6.qtquickcontrols2 # qt6.qtx11extras qt6.qtmultimedia @@ -106,8 +106,8 @@ CMAKE_C_COMPILER = "${pkgs.gcc}/bin/gcc"; CMAKE_CXX_COMPILER = "${pkgs.gcc}/bin/g++"; CARGO_PROFILE_RELEASE_BUILD_OVERRIDE_DEBUG = true; - # KDE_INCLUDEDIR = "${pkgs.kdePackages.kirigami.dev}/include"; - # KDE_QMLDIR = "${pkgs.kdePackages.kirigami.dev}/lib/qt-6/qml/org/kde/kirigami/"; + # KDE_INCLUDEDIR = "${pkgs.kdePackages.kirigami}/include"; + # KDE_QMLDIR = "${pkgs.kdePackages.kirigami}/lib/qt-6/qml/"; # This creates the proper qt env so that plugins are found right. shellHook = '' @@ -117,6 +117,12 @@ sed "/^exec/d" -i "$setQtEnvironment" source "$setQtEnvironment" ''; + # shellHook = '' + # export CMAKE_PREFIX_PATH="${pkgs.qt6.full}/lib/cmake/Qt6:$CMAKE_PREFIX_PATH" + # bashdir=$(mktemp -d) + # makeWrapper "$(type -p bash)" "$bashdir/bash" "''${qtWrapperArgs[@]}" + # exec "$bashdir/bash" + # ''; DATABASE_URL = "sqlite:///home/chris/.local/share/lumina/library-db.sqlite3"; };