mirror of
https://github.com/adityachandelgit/BookLore.git
synced 2026-01-06 03:09:49 -06:00
Fix: update read status correctly when multiple items are selected in table view (#1382)
This commit is contained in:
@@ -257,16 +257,16 @@
|
||||
<div
|
||||
class="virtual-scroller-item relative"
|
||||
[ngStyle]="{width: currentCardSize.width + 'px', height: currentCardSize.height + 'px'}">
|
||||
<app-book-card
|
||||
[index]="books.indexOf(book)"
|
||||
[book]="book"
|
||||
[isCheckboxEnabled]="true"
|
||||
[readButtonHidden]="!!book.seriesCount"
|
||||
[onBookSelect]="handleBookSelect.bind(this)"
|
||||
[isSeriesCollapsed]="seriesCollapseFilter.isSeriesCollapsed"
|
||||
(checkboxClick)="onCheckboxClicked($event)"
|
||||
[isSelected]="selectedBooks.has(book.id)">
|
||||
</app-book-card>
|
||||
<app-book-card
|
||||
[index]="books.indexOf(book)"
|
||||
[book]="book"
|
||||
[isCheckboxEnabled]="true"
|
||||
[readButtonHidden]="!!book.seriesCount"
|
||||
[onBookSelect]="handleBookSelect.bind(this)"
|
||||
[isSeriesCollapsed]="seriesCollapseFilter.isSeriesCollapsed"
|
||||
(checkboxClick)="onCheckboxClicked($event)"
|
||||
[isSelected]="selectedBooks.has(book.id)">
|
||||
</app-book-card>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
@@ -384,7 +384,6 @@
|
||||
}
|
||||
</div>
|
||||
|
||||
|
||||
@if (this.showFilter) {
|
||||
<div
|
||||
class="mobile-filter-mask"
|
||||
@@ -402,5 +401,4 @@
|
||||
</app-book-filter>
|
||||
}
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
@@ -404,6 +404,7 @@ export class BookBrowserComponent implements OnInit {
|
||||
}
|
||||
}
|
||||
}
|
||||
this.tieredMenuItems = this.bookMenuService.getTieredMenuItems(this.selectedBooks);
|
||||
}
|
||||
|
||||
handleBookSelect(bookId: number, selected: boolean): void {
|
||||
@@ -413,11 +414,13 @@ export class BookBrowserComponent implements OnInit {
|
||||
this.selectedBooks.delete(bookId);
|
||||
}
|
||||
this.isDrawerVisible = this.selectedBooks.size > 0;
|
||||
this.tieredMenuItems = this.bookMenuService.getTieredMenuItems(this.selectedBooks);
|
||||
}
|
||||
|
||||
onSelectedBooksChange(selectedBookIds: Set<number>): void {
|
||||
this.selectedBooks = new Set(selectedBookIds);
|
||||
this.isDrawerVisible = this.selectedBooks.size > 0;
|
||||
this.tieredMenuItems = this.bookMenuService.getTieredMenuItems(this.selectedBooks);
|
||||
}
|
||||
|
||||
selectAllBooks(): void {
|
||||
@@ -428,6 +431,7 @@ export class BookBrowserComponent implements OnInit {
|
||||
if (this.bookTableComponent) {
|
||||
this.bookTableComponent.selectAllBooks();
|
||||
}
|
||||
this.tieredMenuItems = this.bookMenuService.getTieredMenuItems(this.selectedBooks);
|
||||
}
|
||||
|
||||
deselectAllBooks(): void {
|
||||
@@ -436,6 +440,7 @@ export class BookBrowserComponent implements OnInit {
|
||||
if (this.bookTableComponent) {
|
||||
this.bookTableComponent.clearSelectedBooks();
|
||||
}
|
||||
this.tieredMenuItems = this.bookMenuService.getTieredMenuItems(this.selectedBooks);
|
||||
}
|
||||
|
||||
confirmDeleteBooks(): void {
|
||||
|
||||
Reference in New Issue
Block a user