]> cloud.milkyroute.net Git - dolphin.git/commitdiff
Get rid of search "More Options" toggle button
authorIsmael Asensio <isma.af@gmail.com>
Sun, 3 Nov 2019 22:00:36 +0000 (23:00 +0100)
committerElvis Angelaccio <elvis.angelaccio@kde.org>
Sun, 3 Nov 2019 22:00:36 +0000 (23:00 +0100)
Summary:
With the new compact search filters (type/date/rating) it makes sense to show these options whenever available, and save some horizontal space on the main bar (specially for verbose languages).
These options will be hidden nevertheless if the search is non-indexed or Baloo is disabled.
For some nicer aesthetics D25029 should be also applied.

CCBUG: 386754

Test Plan:
Current: {F7681182}
After: {F7687380}
Along with D25029: {F7687385}

Reviewers: elvisangelaccio, ngraham, #dolphin, #vdg

Reviewed By: ngraham, #vdg

Subscribers: kfm-devel

Tags: #dolphin

Differential Revision: https://phabricator.kde.org/D25057

src/search/dolphin_searchsettings.kcfg
src/search/dolphinsearchbox.cpp
src/search/dolphinsearchbox.h

index 81190d29e109c075c31553b87a6a1c41aa1ff708..1acebf8749bce149b57c6587dced758269dff4cb 100644 (file)
@@ -14,9 +14,5 @@
             <label>What</label>
             <default>FileName</default>
         </entry>
-        <entry name="ShowFacetsWidget" type="Bool">
-            <label>Show facets widget</label>
-            <default>false</default>
-        </entry>
     </group>
 </kcfg>
index 1b791c60aad1c671be93440454a72ea40b3a3e1d..f31d739b42d38493477162907383e8b74124fea6 100644 (file)
@@ -57,7 +57,6 @@ DolphinSearchBox::DolphinSearchBox(QWidget* parent) :
     m_separator(nullptr),
     m_fromHereButton(nullptr),
     m_everywhereButton(nullptr),
-    m_facetsToggleButton(nullptr),
     m_facetsWidget(nullptr),
     m_searchPath(),
     m_startSearchTimer(nullptr)
@@ -158,7 +157,7 @@ void DolphinSearchBox::fromSearchUrl(const QUrl& url)
         setSearchPath(url);
     }
 
-    setFacetsVisible(SearchSettings::showFacetsWidget());
+    updateFacetsVisible();
 }
 
 void DolphinSearchBox::selectAll()
@@ -196,7 +195,6 @@ void DolphinSearchBox::showEvent(QShowEvent* event)
         m_searchInput->setFocus();
         m_startedSearching = false;
     }
-    updateFacetsToggleButton();
 }
 
 void DolphinSearchBox::hideEvent(QHideEvent* event)
@@ -283,11 +281,6 @@ void DolphinSearchBox::slotReturnPressed()
     emit returnPressed();
 }
 
-void DolphinSearchBox::slotFacetsButtonToggled()
-{
-    setFacetsVisible(m_facetsToggleButton->isChecked());
-}
-
 void DolphinSearchBox::slotFacetChanged()
 {
     m_startedSearching = true;
@@ -330,16 +323,13 @@ void DolphinSearchBox::loadSettings()
         m_fileNameButton->setChecked(true);
     }
 
-    setFacetsVisible(SearchSettings::showFacetsWidget());
+    updateFacetsVisible();
 }
 
 void DolphinSearchBox::saveSettings()
 {
     SearchSettings::setLocation(m_fromHereButton->isChecked() ? QStringLiteral("FromHere") : QStringLiteral("Everywhere"));
     SearchSettings::setWhat(m_fileNameButton->isChecked() ? QStringLiteral("FileName") : QStringLiteral("Content"));
-    if (isIndexingEnabled()) {
-        SearchSettings::setShowFacetsWidget(m_facetsToggleButton->isChecked());
-    }
     SearchSettings::self()->save();
 }
 
@@ -423,12 +413,7 @@ void DolphinSearchBox::init()
         m_menuFactory->fillMenuFromGroupingNames(moreSearchToolsButton->menu(), { "files-find" }, this->m_searchPath);
     } );
 
-    // Create "Facets" widgets
-    m_facetsToggleButton = new QToolButton(this);
-    m_facetsToggleButton->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
-    initButton(m_facetsToggleButton);
-    connect(m_facetsToggleButton, &QToolButton::clicked, this, &DolphinSearchBox::slotFacetsButtonToggled);
-
+    // Create "Facets" widget
     m_facetsWidget = new DolphinFacetsWidget(this);
     m_facetsWidget->installEventFilter(this);
     m_facetsWidget->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Maximum);
@@ -443,7 +428,6 @@ void DolphinSearchBox::init()
     optionsLayout->addWidget(m_fromHereButton);
     optionsLayout->addWidget(m_everywhereButton);
     optionsLayout->addWidget(new KSeparator(Qt::Vertical, this));
-    optionsLayout->addWidget(m_facetsToggleButton);
     optionsLayout->addWidget(moreSearchToolsButton);
     optionsLayout->addStretch(1);
 
@@ -552,44 +536,11 @@ void DolphinSearchBox::fromBalooSearchUrl(const QUrl& url)
 #endif
 }
 
-void DolphinSearchBox::setFacetsVisible(bool visible)
+void DolphinSearchBox::updateFacetsVisible()
 {
     const bool indexingEnabled = isIndexingEnabled();
     m_facetsWidget->setEnabled(indexingEnabled);
-    m_facetsWidget->setVisible(indexingEnabled && visible);
-    updateFacetsToggleButton();
-}
-
-void DolphinSearchBox::updateFacetsToggleButton()
-{
-    const bool facetsEnabled = m_facetsWidget->isEnabled();
-    const bool facetsVisible = m_facetsWidget->isVisible();
-
-    m_facetsToggleButton->setEnabled(facetsEnabled);
-    m_facetsToggleButton->setChecked(facetsVisible);
-
-    m_facetsToggleButton->setIcon(QIcon::fromTheme(
-           facetsVisible ? QStringLiteral("arrow-up-double") :
-                           QStringLiteral("arrow-down-double")));
-
-    m_facetsToggleButton->setText(
-           facetsVisible ? i18nc("@action:button", "Fewer Options") :
-                           i18nc("@action:button", "More Options"));
-
-    if (facetsEnabled) {
-        m_facetsToggleButton->setToolTip(QString());
-    } else {
-#ifdef HAVE_BALOO
-        const Baloo::IndexerConfig searchInfo;
-        if (!searchInfo.fileIndexingEnabled()) {
-            m_facetsToggleButton->setToolTip(i18nc("@info:tooltip", "Advanced search options are not available because the file indexing service is disabled."));
-        } else {
-            m_facetsToggleButton->setToolTip(i18nc("@info:tooltip", "Advanced search options are not available because this location is not indexed."));
-        }
-#else
-        m_facetsToggleButton->setToolTip(i18nc("@info:tooltip", "Advanced search options are not available because this version of Dolphin does not support the Baloo file indexer."));
-#endif
-    }
+    m_facetsWidget->setVisible(indexingEnabled);
 }
 
 bool DolphinSearchBox::isIndexingEnabled() const
index 35b422631e76999200e24a07ef5caf83301b3295..241dc40c12c5d4b34c27f26ce7d18513ec820347 100644 (file)
@@ -137,7 +137,6 @@ private slots:
     void slotConfigurationChanged();
     void slotSearchTextChanged(const QString& text);
     void slotReturnPressed();
-    void slotFacetsButtonToggled();
     void slotFacetChanged();
     void slotSearchSaved();
 
@@ -158,8 +157,7 @@ private:
      */
     void fromBalooSearchUrl(const QUrl& url);
 
-    void setFacetsVisible(bool visible);
-    void updateFacetsToggleButton();
+    void updateFacetsVisible();
 
     bool isIndexingEnabled() const;
 
@@ -177,7 +175,6 @@ private:
     KSeparator* m_separator;
     QToolButton* m_fromHereButton;
     QToolButton* m_everywhereButton;
-    QToolButton* m_facetsToggleButton;
     DolphinFacetsWidget* m_facetsWidget;
 
     QUrl m_searchPath;