Complete remove the toggle search action.

This commit is contained in:
Akinori MUSHA 2014-11-19 11:46:38 +09:00
parent b1c3814972
commit dd79105baa
5 changed files with 11 additions and 44 deletions

View File

@ -718,24 +718,6 @@ void DatabaseWidget::openSearch()
} }
} }
void DatabaseWidget::toggleSearch()
{
if (isInSearchMode()) {
if (m_searchUi->searchEdit->hasFocus()) {
closeSearch();
}
else {
m_searchUi->searchEdit->selectAll();
m_searchUi->searchEdit->setFocus();
// make sure the search action is checked again
emitCurrentModeChanged();
}
}
else {
showSearch();
}
}
void DatabaseWidget::closeSearch() void DatabaseWidget::closeSearch()
{ {
Q_ASSERT(m_lastGroup); Q_ASSERT(m_lastGroup);

View File

@ -118,7 +118,6 @@ public Q_SLOTS:
void switchToOpenDatabase(const QString& fileName, const QString& password, const QString& keyFile); void switchToOpenDatabase(const QString& fileName, const QString& password, const QString& keyFile);
void switchToImportKeepass1(const QString& fileName); void switchToImportKeepass1(const QString& fileName);
void openSearch(); void openSearch();
void toggleSearch();
private Q_SLOTS: private Q_SLOTS:
void entryActivationSignalReceived(Entry* entry, EntryModel::ModelColumn column); void entryActivationSignalReceived(Entry* entry, EntryModel::ModelColumn column);

View File

@ -119,7 +119,7 @@ MainWindow::MainWindow()
m_ui->actionAbout->setIcon(filePath()->icon("actions", "help-about")); m_ui->actionAbout->setIcon(filePath()->icon("actions", "help-about"));
m_ui->actionToggleSearch->setIcon(filePath()->icon("actions", "system-search")); m_ui->actionSearch->setIcon(filePath()->icon("actions", "system-search"));
m_actionMultiplexer.connect(SIGNAL(currentModeChanged(DatabaseWidget::Mode)), m_actionMultiplexer.connect(SIGNAL(currentModeChanged(DatabaseWidget::Mode)),
this, SLOT(setMenuActionState(DatabaseWidget::Mode))); this, SLOT(setMenuActionState(DatabaseWidget::Mode)));
@ -200,8 +200,6 @@ MainWindow::MainWindow()
connect(m_ui->actionAbout, SIGNAL(triggered()), SLOT(showAboutDialog())); connect(m_ui->actionAbout, SIGNAL(triggered()), SLOT(showAboutDialog()));
m_actionMultiplexer.connect(m_ui->actionToggleSearch, SIGNAL(triggered()),
SLOT(toggleSearch()));
m_actionMultiplexer.connect(m_ui->actionSearch, SIGNAL(triggered()), m_actionMultiplexer.connect(m_ui->actionSearch, SIGNAL(triggered()),
SLOT(openSearch())); SLOT(openSearch()));
@ -299,8 +297,6 @@ void MainWindow::setMenuActionState(DatabaseWidget::Mode mode)
m_ui->actionGroupDelete->setEnabled(groupSelected && dbWidget->canDeleteCurrentGroup()); m_ui->actionGroupDelete->setEnabled(groupSelected && dbWidget->canDeleteCurrentGroup());
// TODO: get checked state from db widget // TODO: get checked state from db widget
m_ui->actionSearch->setEnabled(true); m_ui->actionSearch->setEnabled(true);
m_ui->actionToggleSearch->setEnabled(true);
m_ui->actionToggleSearch->setChecked(inSearch);
m_ui->actionChangeMasterKey->setEnabled(true); m_ui->actionChangeMasterKey->setEnabled(true);
m_ui->actionChangeDatabaseSettings->setEnabled(true); m_ui->actionChangeDatabaseSettings->setEnabled(true);
m_ui->actionDatabaseSave->setEnabled(true); m_ui->actionDatabaseSave->setEnabled(true);
@ -324,7 +320,6 @@ void MainWindow::setMenuActionState(DatabaseWidget::Mode mode)
m_ui->menuEntryCopyAttribute->setEnabled(false); m_ui->menuEntryCopyAttribute->setEnabled(false);
m_ui->actionSearch->setEnabled(false); m_ui->actionSearch->setEnabled(false);
m_ui->actionToggleSearch->setEnabled(false);
m_ui->actionChangeMasterKey->setEnabled(false); m_ui->actionChangeMasterKey->setEnabled(false);
m_ui->actionChangeDatabaseSettings->setEnabled(false); m_ui->actionChangeDatabaseSettings->setEnabled(false);
m_ui->actionDatabaseSave->setEnabled(false); m_ui->actionDatabaseSave->setEnabled(false);
@ -351,7 +346,6 @@ void MainWindow::setMenuActionState(DatabaseWidget::Mode mode)
m_ui->menuEntryCopyAttribute->setEnabled(false); m_ui->menuEntryCopyAttribute->setEnabled(false);
m_ui->actionSearch->setEnabled(false); m_ui->actionSearch->setEnabled(false);
m_ui->actionToggleSearch->setEnabled(false);
m_ui->actionChangeMasterKey->setEnabled(false); m_ui->actionChangeMasterKey->setEnabled(false);
m_ui->actionChangeDatabaseSettings->setEnabled(false); m_ui->actionChangeDatabaseSettings->setEnabled(false);
m_ui->actionDatabaseSave->setEnabled(false); m_ui->actionDatabaseSave->setEnabled(false);

View File

@ -177,7 +177,7 @@
<addaction name="actionEntryCopyPassword"/> <addaction name="actionEntryCopyPassword"/>
<addaction name="separator"/> <addaction name="separator"/>
<addaction name="actionLockDatabases"/> <addaction name="actionLockDatabases"/>
<addaction name="actionToggleSearch"/> <addaction name="actionSearch"/>
</widget> </widget>
<action name="actionQuit"> <action name="actionQuit">
<property name="text"> <property name="text">
@ -304,14 +304,6 @@
</property> </property>
</action> </action>
<action name="actionSearch"> <action name="actionSearch">
<property name="text">
<string>Find</string>
</property>
</action>
<action name="actionToggleSearch">
<property name="checkable">
<bool>true</bool>
</property>
<property name="enabled"> <property name="enabled">
<bool>false</bool> <bool>false</bool>
</property> </property>

View File

@ -166,18 +166,18 @@ void TestGui::testAddEntry()
void TestGui::testSearch() void TestGui::testSearch()
{ {
QAction* toggleSearchAction = m_mainWindow->findChild<QAction*>("actionToggleSearch"); QAction* searchAction = m_mainWindow->findChild<QAction*>("actionSearch");
QVERIFY(toggleSearchAction->isEnabled()); QVERIFY(searchAction->isEnabled());
QToolBar* toolBar = m_mainWindow->findChild<QToolBar*>("toolBar"); QToolBar* toolBar = m_mainWindow->findChild<QToolBar*>("toolBar");
QWidget* toggleSearchActionWidget = toolBar->widgetForAction(toggleSearchAction); QWidget* searchActionWidget = toolBar->widgetForAction(searchAction);
EntryView* entryView = m_dbWidget->findChild<EntryView*>("entryView"); EntryView* entryView = m_dbWidget->findChild<EntryView*>("entryView");
QLineEdit* searchEdit = m_dbWidget->findChild<QLineEdit*>("searchEdit"); QLineEdit* searchEdit = m_dbWidget->findChild<QLineEdit*>("searchEdit");
QToolButton* clearSearch = m_dbWidget->findChild<QToolButton*>("clearButton"); QToolButton* clearSearch = m_dbWidget->findChild<QToolButton*>("clearButton");
QVERIFY(!searchEdit->hasFocus()); QVERIFY(!searchEdit->hasFocus());
// Toggle // Enter search
QTest::mouseClick(toggleSearchActionWidget, Qt::LeftButton); QTest::mouseClick(searchActionWidget, Qt::LeftButton);
QTRY_VERIFY(searchEdit->hasFocus()); QTRY_VERIFY(searchEdit->hasFocus());
// Search for "ZZZ" // Search for "ZZZ"
QTest::keyClicks(searchEdit, "ZZZ"); QTest::keyClicks(searchEdit, "ZZZ");
@ -185,17 +185,17 @@ void TestGui::testSearch()
// Escape // Escape
QTest::keyClick(m_mainWindow, Qt::Key_Escape); QTest::keyClick(m_mainWindow, Qt::Key_Escape);
QTRY_VERIFY(!searchEdit->hasFocus()); QTRY_VERIFY(!searchEdit->hasFocus());
// Toggle again // Enter search again
QTest::mouseClick(toggleSearchActionWidget, Qt::LeftButton); QTest::mouseClick(searchActionWidget, Qt::LeftButton);
QTRY_VERIFY(searchEdit->hasFocus()); QTRY_VERIFY(searchEdit->hasFocus());
// Input and clear // Input and clear
QTest::keyClicks(searchEdit, "ZZZ"); QTest::keyClicks(searchEdit, "ZZZ");
QTRY_COMPARE(searchEdit->text(), QString("ZZZ")); QTRY_COMPARE(searchEdit->text(), QString("ZZZ"));
QTest::mouseClick(clearSearch, Qt::LeftButton); QTest::mouseClick(clearSearch, Qt::LeftButton);
QTRY_COMPARE(searchEdit->text(), QString("")); QTRY_COMPARE(searchEdit->text(), QString(""));
// Ctrl+F should select the current text // Triggering search should select the existing text
QTest::keyClicks(searchEdit, "ZZZ"); QTest::keyClicks(searchEdit, "ZZZ");
QTest::keyClick(m_mainWindow, Qt::Key_F, Qt::ControlModifier); QTest::mouseClick(searchActionWidget, Qt::LeftButton);
QTRY_VERIFY(searchEdit->hasFocus()); QTRY_VERIFY(searchEdit->hasFocus());
// Search for "some" // Search for "some"
QTest::keyClicks(searchEdit, "some"); QTest::keyClicks(searchEdit, "some");