From 84bf4caa6814238b3c07f350810658beced5fc8b Mon Sep 17 00:00:00 2001 From: Simon Quigley Date: Sat, 11 Jun 2022 14:06:35 -0400 Subject: [PATCH] Add upstream feature patch. --- debian/changelog | 3 + debian/patches/series | 1 + .../support-adding-pattern-lists.patch | 124 ++++++++++++++++++ 3 files changed, 128 insertions(+) create mode 100644 debian/patches/support-adding-pattern-lists.patch diff --git a/debian/changelog b/debian/changelog index 0932057..51ff16d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -4,6 +4,9 @@ libfm-qt (1.1.0-0ubuntu6) UNRELEASED; urgency=medium - Fixed crash with empty URI scheme of folder path + https://github.com/lxqt/libfm-qt/commit/472128 + https://github.com/lxqt/libfm-qt/pull/808 + - Support adding of pattern lists to entries of search dialog + + https://github.com/lxqt/libfm-qt/commit/f66aa2 + + https://github.com/lxqt/libfm-qt/pull/806 -- Simon Quigley Sat, 11 Jun 2022 14:02:20 -0400 diff --git a/debian/patches/series b/debian/patches/series index 34b5009..fe65c43 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,2 +1,3 @@ fix-metadata-for-trusting-executables.patch fix-uri-scheme-crash.patch +support-adding-pattern-lists.patch diff --git a/debian/patches/support-adding-pattern-lists.patch b/debian/patches/support-adding-pattern-lists.patch new file mode 100644 index 0000000..df58b39 --- /dev/null +++ b/debian/patches/support-adding-pattern-lists.patch @@ -0,0 +1,124 @@ +From f66aa205c48a60378abcf0dac3d21b83d47aa2c5 Mon Sep 17 00:00:00 2001 +From: tsujan +Date: Sat, 14 May 2022 01:17:14 +0430 +Subject: [PATCH] Support adding of pattern lists to entries of search dialog + (#806) + +Such lists will be used later for adding search history to `pcmanfm-qt`. +--- + src/filesearch.ui | 13 ++++++++++--- + src/filesearchdialog.cpp | 28 ++++++++++++++++++++++++++-- + src/filesearchdialog.h | 6 ++++++ + 3 files changed, 42 insertions(+), 5 deletions(-) + +diff --git a/src/filesearch.ui b/src/filesearch.ui +index 85e57556..a90456a5 100644 +--- a/src/filesearch.ui ++++ b/src/filesearch.ui +@@ -36,8 +36,11 @@ + + + +- +- ++ ++ ++ true ++ ++ + * + + +@@ -218,7 +221,11 @@ + + + +- ++ ++ ++ true ++ ++ + + + +diff --git a/src/filesearchdialog.cpp b/src/filesearchdialog.cpp +index 0216687f..267cc4c7 100644 +--- a/src/filesearchdialog.cpp ++++ b/src/filesearchdialog.cpp +@@ -23,6 +23,7 @@ + #include "ui_filesearch.h" + #include + #include ++#include + #include + + namespace Fm { +@@ -43,6 +44,10 @@ FileSearchDialog::FileSearchDialog(QStringList paths, QWidget* parent, Qt::Windo + connect(ui->addPath, &QPushButton::clicked, this, &FileSearchDialog::onAddPath); + connect(ui->removePath, &QPushButton::clicked, this, &FileSearchDialog::onRemovePath); + ++ // the default completer is case-insensitive ++ ui->namePatterns->completer()->setCaseSensitivity(Qt::CaseSensitive); ++ ui->contentPattern->completer()->setCaseSensitivity(Qt::CaseSensitive); ++ + ui->namePatterns->setFocus(); + } + +@@ -50,6 +55,25 @@ FileSearchDialog::~FileSearchDialog() { + delete ui; + } + ++QString FileSearchDialog::namePattern() const { ++ return ui->namePatterns->currentText(); ++} ++ ++QString FileSearchDialog::contentPattern() const { ++ return ui->contentPattern->currentText(); ++} ++ ++void FileSearchDialog::addNamePatterns(const QStringList& patterns) { ++ ui->namePatterns->addItems(patterns); ++ ui->namePatterns->setCurrentIndex(-1); ++ ui->namePatterns->setCurrentText(QLatin1String("*")); ++} ++ ++void FileSearchDialog::addContentPatterns(const QStringList& patterns) { ++ ui->contentPattern->addItems(patterns); ++ ui->contentPattern->setCurrentIndex(-1); ++} ++ + void FileSearchDialog::accept() { + // build the search:/// uri + int n = ui->listView->count(); +@@ -62,11 +86,11 @@ void FileSearchDialog::accept() { + + fm_search_set_recursive(search, ui->recursiveSearch->isChecked()); + fm_search_set_show_hidden(search, ui->searchHidden->isChecked()); +- fm_search_set_name_patterns(search, ui->namePatterns->text().toUtf8().constData()); ++ fm_search_set_name_patterns(search, ui->namePatterns->currentText().toUtf8().constData()); + fm_search_set_name_ci(search, !ui->nameCaseSensitive->isChecked()); + fm_search_set_name_regex(search, ui->nameRegExp->isChecked()); + +- fm_search_set_content_pattern(search, ui->contentPattern->text().toUtf8().constData()); ++ fm_search_set_content_pattern(search, ui->contentPattern->currentText().toUtf8().constData()); + fm_search_set_content_ci(search, !ui->contentCaseSensitive->isChecked()); + fm_search_set_content_regex(search, ui->contentRegExp->isChecked()); + +diff --git a/src/filesearchdialog.h b/src/filesearchdialog.h +index 504c1ed0..2aee1b57 100644 +--- a/src/filesearchdialog.h ++++ b/src/filesearchdialog.h +@@ -59,6 +59,12 @@ class LIBFM_QT_API FileSearchDialog : public QDialog { + bool searchhHidden() const; + void setSearchhHidden(bool hidden); + ++ QString namePattern() const; ++ QString contentPattern() const; ++ ++ void addNamePatterns(const QStringList& patterns); ++ void addContentPatterns(const QStringList& patterns); ++ + private Q_SLOTS: + void onAddPath(); + void onRemovePath();