mirror of
https://github.com/YACReader/yacreader
synced 2025-05-28 03:10:27 -04:00
Extract YACReaderNavigationController::exitSearchMode()
This commit is contained in:
parent
3a60d89f06
commit
40ca07f8f8
@ -2726,3 +2726,12 @@ void LibraryWindow::updateComicsView(quint64 libraryId, const ComicDB &comic)
|
|||||||
comicsViewsManager->updateCurrentComicView();
|
comicsViewsManager->updateCurrentComicView();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool LibraryWindow::exitSearchMode()
|
||||||
|
{
|
||||||
|
if (status != LibraryWindow::Searching)
|
||||||
|
return false;
|
||||||
|
searchEdit->clearText();
|
||||||
|
clearSearchFilter();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
@ -424,6 +424,10 @@ public slots:
|
|||||||
void afterLaunchTasks();
|
void afterLaunchTasks();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
//! @brief Exits search mode if it is active.
|
||||||
|
//! @return true If the search mode was active when this function was called.
|
||||||
|
bool exitSearchMode();
|
||||||
|
|
||||||
// fullscreen mode in Windows for preventing this bug: QTBUG-41309 https://bugreports.qt.io/browse/QTBUG-41309
|
// fullscreen mode in Windows for preventing this bug: QTBUG-41309 https://bugreports.qt.io/browse/QTBUG-41309
|
||||||
Qt::WindowFlags previousWindowFlags;
|
Qt::WindowFlags previousWindowFlags;
|
||||||
QPoint previousPos;
|
QPoint previousPos;
|
||||||
|
@ -34,10 +34,8 @@ void YACReaderNavigationController::selectedFolder(const QModelIndex &mi)
|
|||||||
// update history
|
// update history
|
||||||
libraryWindow->historyController->updateHistory(YACReaderLibrarySourceContainer(modelIndex, YACReaderLibrarySourceContainer::Folder));
|
libraryWindow->historyController->updateHistory(YACReaderLibrarySourceContainer(modelIndex, YACReaderLibrarySourceContainer::Folder));
|
||||||
|
|
||||||
if (libraryWindow->status == LibraryWindow::Searching) {
|
// when a folder is selected the search mode has to be reset
|
||||||
// when a folder is selected the search mode has to be reset
|
if (libraryWindow->exitSearchMode()) {
|
||||||
libraryWindow->searchEdit->clearText();
|
|
||||||
libraryWindow->clearSearchFilter();
|
|
||||||
libraryWindow->foldersView->scrollTo(mi, QAbstractItemView::PositionAtTop);
|
libraryWindow->foldersView->scrollTo(mi, QAbstractItemView::PositionAtTop);
|
||||||
libraryWindow->foldersView->setCurrentIndex(mi);
|
libraryWindow->foldersView->setCurrentIndex(mi);
|
||||||
}
|
}
|
||||||
@ -182,10 +180,9 @@ void YACReaderNavigationController::selectedList(const QModelIndex &mi)
|
|||||||
// update history
|
// update history
|
||||||
libraryWindow->historyController->updateHistory(YACReaderLibrarySourceContainer(modelIndex, YACReaderLibrarySourceContainer::List));
|
libraryWindow->historyController->updateHistory(YACReaderLibrarySourceContainer(modelIndex, YACReaderLibrarySourceContainer::List));
|
||||||
|
|
||||||
if (libraryWindow->status == LibraryWindow::Searching) {
|
// when a list is selected the search mode has to be reset
|
||||||
// when a list is selected the search mode has to be reset
|
if (libraryWindow->exitSearchMode()) {
|
||||||
libraryWindow->searchEdit->clearText();
|
|
||||||
libraryWindow->clearSearchFilter();
|
|
||||||
libraryWindow->listsView->scrollTo(mi, QAbstractItemView::PositionAtTop);
|
libraryWindow->listsView->scrollTo(mi, QAbstractItemView::PositionAtTop);
|
||||||
libraryWindow->listsView->setCurrentIndex(mi);
|
libraryWindow->listsView->setCurrentIndex(mi);
|
||||||
}
|
}
|
||||||
@ -212,12 +209,8 @@ void YACReaderNavigationController::reselectCurrentSource()
|
|||||||
void YACReaderNavigationController::selectedIndexFromHistory(const YACReaderLibrarySourceContainer &sourceContainer)
|
void YACReaderNavigationController::selectedIndexFromHistory(const YACReaderLibrarySourceContainer &sourceContainer)
|
||||||
{
|
{
|
||||||
// TODO NO searching allowed, just disable backward/forward actions in searching mode
|
// TODO NO searching allowed, just disable backward/forward actions in searching mode
|
||||||
if (libraryWindow->status == LibraryWindow::Searching) {
|
// when a folder or a list is selected the search mode has to be reset
|
||||||
// when a folder is selected the search mode has to be reset
|
libraryWindow->exitSearchMode();
|
||||||
libraryWindow->searchEdit->clearText();
|
|
||||||
libraryWindow->clearSearchFilter();
|
|
||||||
}
|
|
||||||
|
|
||||||
loadIndexFromHistory(sourceContainer);
|
loadIndexFromHistory(sourceContainer);
|
||||||
libraryWindow->setToolbarTitle(sourceContainer.getSourceModelIndex());
|
libraryWindow->setToolbarTitle(sourceContainer.getSourceModelIndex());
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user