Make sure that the changes made to folders are propagated to the subfolder model in FolderContentView

This commit is contained in:
Luis Ángel San Martín
2022-10-13 19:28:55 +02:00
parent 23deb889b9
commit 00f7d92c9a
3 changed files with 22 additions and 7 deletions

View File

@ -1831,6 +1831,8 @@ void LibraryWindow::showGridFoldersContextMenu(QPoint point, Folder folder)
else
menu.addAction(setFolderAsMangaAction);
auto subfolderModel = comicsViewsManager->folderContentView->currentFolderModel();
// TODO update the subfolder model loaded in folderContentView
connect(openContainingFolderAction, &QAction::triggered, this, [=]() {
QDesktopServices::openUrl(QUrl("file:///" + QDir::cleanPath(currentPath() + "/" + folder.path), QUrl::TolerantMode));
@ -1840,21 +1842,27 @@ void LibraryWindow::showGridFoldersContextMenu(QPoint point, Folder folder)
});
connect(setFolderAsNotCompletedAction, &QAction::triggered, this, [=]() {
foldersModel->updateFolderCompletedStatus(QModelIndexList() << foldersModel->getIndexFromFolder(folder), false);
subfolderModel->updateFolderCompletedStatus(QModelIndexList() << subfolderModel->getIndexFromFolder(folder), false);
});
connect(setFolderAsCompletedAction, &QAction::triggered, this, [=]() {
foldersModel->updateFolderCompletedStatus(QModelIndexList() << foldersModel->getIndexFromFolder(folder), true);
subfolderModel->updateFolderCompletedStatus(QModelIndexList() << subfolderModel->getIndexFromFolder(folder), true);
});
connect(setFolderAsReadAction, &QAction::triggered, this, [=]() {
foldersModel->updateFolderFinishedStatus(QModelIndexList() << foldersModel->getIndexFromFolder(folder), true);
subfolderModel->updateFolderFinishedStatus(QModelIndexList() << subfolderModel->getIndexFromFolder(folder), true);
});
connect(setFolderAsUnreadAction, &QAction::triggered, this, [=]() {
foldersModel->updateFolderFinishedStatus(QModelIndexList() << foldersModel->getIndexFromFolder(folder), false);
subfolderModel->updateFolderFinishedStatus(QModelIndexList() << subfolderModel->getIndexFromFolder(folder), false);
});
connect(setFolderAsMangaAction, &QAction::triggered, this, [=]() {
foldersModel->updateFolderManga(QModelIndexList() << foldersModel->getIndexFromFolder(folder), true);
subfolderModel->updateFolderManga(QModelIndexList() << subfolderModel->getIndexFromFolder(folder), true);
});
connect(setFolderAsNormalAction, &QAction::triggered, this, [=]() {
foldersModel->updateFolderManga(QModelIndexList() << foldersModel->getIndexFromFolder(folder), false);
subfolderModel->updateFolderManga(QModelIndexList() << subfolderModel->getIndexFromFolder(folder), false);
});
menu.exec(comicsViewsManager->folderContentView->mapToGlobal(point));