summaryrefslogtreecommitdiffstats
path: root/filewidget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'filewidget.cpp')
-rw-r--r--filewidget.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/filewidget.cpp b/filewidget.cpp
index 737b107..decedd9 100644
--- a/filewidget.cpp
+++ b/filewidget.cpp
@@ -85,6 +85,7 @@ void FileWidget::setupGui(){
mMimeFilters = new QComboBox;
populateMimeFilters();
connect(mMimeFilters, QOverload<const QString &>::of(&QComboBox::activated), [this](const QString &text) { filter(MimeColumn, text); });
+ connect(mMimeFilters, &QComboBox::currentTextChanged, [this](const QString &text) { filter(MimeColumn, text); });
QGridLayout *topL = new QGridLayout;
topL->addWidget(new QLabel(tr("Directory")), 0, 0);
@@ -139,6 +140,10 @@ void FileWidget::setupGui(){
mMimeData = new QMimeData;
mFileView->setFocus();
mCopyProgress->setVisible(false);
+
+ QSettings s;
+ QString startMimeFilter = s.value("currentmimefilter").toString();
+ mMimeFilters->setCurrentText(startMimeFilter);
}
void FileWidget::createActions(){
@@ -386,6 +391,7 @@ void FileWidget::readSettings(){
void FileWidget::writeSettings(){
QSettings s;
s.setValue("video/searchdir", mDir->text());
+ s.setValue("currentmimefilter", mMimeFilters->currentText());
}
void FileWidget::readCache(){
@@ -480,11 +486,18 @@ void FileWidget::populateFavDirs(){
void FileWidget::populateMimeFilters(){
QSettings s;
+ QString current = mMimeFilters->currentText();
QStringList mimeFilters = s.value("mimefilters").toStringList();
mimeFilters.sort();
mimeFilters.prepend(tr("<all>"));
mMimeFilters->clear();
mMimeFilters->addItems(mimeFilters);
+ int cbidx = mMimeFilters->findText(current);
+ if(cbidx > -1){
+ mMimeFilters->blockSignals(true);
+ mMimeFilters->setCurrentIndex(cbidx);
+ mMimeFilters->blockSignals(false);
+ }
}
QList<QStandardItem*> FileWidget::constructRow(CachedFileData *fd) const{