diff options
| author | Peter Penz <[email protected]> | 2010-11-07 14:55:33 +0000 |
|---|---|---|
| committer | Peter Penz <[email protected]> | 2010-11-07 14:55:33 +0000 |
| commit | 456d529295b7e9ee2a776480dce3a7151528b0dd (patch) | |
| tree | 3b148b94223b1c06b8afc80e5a8b6879574f67e5 /src | |
| parent | 4fa931ae25eda718ab3a1666f385f9db6228d3a6 (diff) | |
Make the filter-behavior similar to applications like Kate, where activating the filter lets focus it again.
BUG: 256160
FIXED-IN: 4.6.0
svn path=/trunk/KDE/kdebase/apps/; revision=1193912
Diffstat (limited to 'src')
| -rw-r--r-- | src/dolphinmainwindow.cpp | 8 | ||||
| -rw-r--r-- | src/dolphinmainwindow.h | 5 | ||||
| -rw-r--r-- | src/dolphinviewcontainer.cpp | 1 | ||||
| -rw-r--r-- | src/dolphinviewcontainer.h | 2 | ||||
| -rw-r--r-- | src/filterbar/filterbar.cpp | 1 |
5 files changed, 9 insertions, 8 deletions
diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index 8017e9c82..8bba990c7 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -841,9 +841,9 @@ void DolphinMainWindow::disableStopAction() actionCollection()->action("stop")->setEnabled(false); } -void DolphinMainWindow::toggleFilterBarVisibility(bool show) +void DolphinMainWindow::showFilterBar() { - m_activeViewContainer->setFilterBarVisible(show); + m_activeViewContainer->setFilterBarVisible(true); } void DolphinMainWindow::toggleEditLocation() @@ -1517,11 +1517,11 @@ void DolphinMainWindow::setupActions() KStandardAction::home(this, SLOT(goHome()), actionCollection()); // setup 'Tools' menu - KToggleAction* showFilterBar = actionCollection()->add<KToggleAction>("show_filter_bar"); + KAction* showFilterBar = actionCollection()->addAction("show_filter_bar"); showFilterBar->setText(i18nc("@action:inmenu Tools", "Show Filter Bar")); showFilterBar->setIcon(KIcon("view-filter")); showFilterBar->setShortcut(Qt::CTRL | Qt::Key_I); - connect(showFilterBar, SIGNAL(triggered(bool)), this, SLOT(toggleFilterBarVisibility(bool))); + connect(showFilterBar, SIGNAL(triggered()), this, SLOT(showFilterBar())); KAction* compareFiles = actionCollection()->addAction("compare_files"); compareFiles->setText(i18nc("@action:inmenu Tools", "Compare Files")); diff --git a/src/dolphinmainwindow.h b/src/dolphinmainwindow.h index 4a747ac5a..fdfa93144 100644 --- a/src/dolphinmainwindow.h +++ b/src/dolphinmainwindow.h @@ -250,10 +250,7 @@ private slots: void enableStopAction(); void disableStopAction(); - /** - * Toggles between showing and hiding of the filter bar - */ - void toggleFilterBarVisibility(bool show); + void showFilterBar(); /** * Toggles between edit and browse mode of the navigation bar. diff --git a/src/dolphinviewcontainer.cpp b/src/dolphinviewcontainer.cpp index 7fd0cfa29..9e927ee98 100644 --- a/src/dolphinviewcontainer.cpp +++ b/src/dolphinviewcontainer.cpp @@ -303,6 +303,7 @@ void DolphinViewContainer::setFilterBarVisible(bool visible) Q_ASSERT(m_filterBar != 0); if (visible) { m_filterBar->show(); + m_filterBar->setFocus(); } else { closeFilterBar(); } diff --git a/src/dolphinviewcontainer.h b/src/dolphinviewcontainer.h index 6abeab4b0..44f5dd906 100644 --- a/src/dolphinviewcontainer.h +++ b/src/dolphinviewcontainer.h @@ -111,6 +111,8 @@ public slots: /** * Popups the filter bar above the status bar if \a visible is true. + * It \a visible is true, it is assured that the filter bar gains + * the keyboard focus. */ void setFilterBarVisible(bool visible); diff --git a/src/filterbar/filterbar.cpp b/src/filterbar/filterbar.cpp index b108570ce..c5dd99d78 100644 --- a/src/filterbar/filterbar.cpp +++ b/src/filterbar/filterbar.cpp @@ -48,6 +48,7 @@ FilterBar::FilterBar(QWidget* parent) : m_filterInput->setClearButtonShown(true); connect(m_filterInput, SIGNAL(textChanged(const QString&)), this, SIGNAL(filterChanged(const QString&))); + setFocusProxy(m_filterInput); // Apply layout QHBoxLayout* hLayout = new QHBoxLayout(this); |
