diff options
author | Chocobozzz <me@florianbigard.com> | 2021-10-08 15:59:05 +0200 |
---|---|---|
committer | Chocobozzz <me@florianbigard.com> | 2021-10-11 09:37:27 +0200 |
commit | 0af2a8c5d62bc1764fc296caa67c33195a7d5174 (patch) | |
tree | fef575d42e970bf6aeb2bb17463ad2c460c799c0 /client/src/app/shared | |
parent | 9db2330e4a32a3bb0fe821abec1b061e4edb65b5 (diff) | |
download | PeerTube-0af2a8c5d62bc1764fc296caa67c33195a7d5174.tar.gz PeerTube-0af2a8c5d62bc1764fc296caa67c33195a7d5174.tar.zst PeerTube-0af2a8c5d62bc1764fc296caa67c33195a7d5174.zip |
Correctly disable infinite scroll for reuse
Diffstat (limited to 'client/src/app/shared')
3 files changed, 6 insertions, 3 deletions
diff --git a/client/src/app/shared/shared-main/angular/infinite-scroller.directive.ts b/client/src/app/shared/shared-main/angular/infinite-scroller.directive.ts index bebc6efa7..c247cfde2 100644 --- a/client/src/app/shared/shared-main/angular/infinite-scroller.directive.ts +++ b/client/src/app/shared/shared-main/angular/infinite-scroller.directive.ts | |||
@@ -13,6 +13,7 @@ export class InfiniteScrollerDirective implements OnInit, OnDestroy, AfterViewCh | |||
13 | 13 | ||
14 | // Add angular state in query params to reuse the routed component | 14 | // Add angular state in query params to reuse the routed component |
15 | @Input() setAngularState: boolean | 15 | @Input() setAngularState: boolean |
16 | @Input() parentDisabled = false | ||
16 | 17 | ||
17 | @Output() nearOfBottom = new EventEmitter<void>() | 18 | @Output() nearOfBottom = new EventEmitter<void>() |
18 | 19 | ||
@@ -74,7 +75,7 @@ export class InfiniteScrollerDirective implements OnInit, OnDestroy, AfterViewCh | |||
74 | filter(({ current, maximumScroll }) => (current / maximumScroll) > this.decimalLimit) | 75 | filter(({ current, maximumScroll }) => (current / maximumScroll) > this.decimalLimit) |
75 | ) | 76 | ) |
76 | .subscribe(() => { | 77 | .subscribe(() => { |
77 | if (this.setAngularState) this.setScrollRouteParams() | 78 | if (this.setAngularState && !this.parentDisabled) this.setScrollRouteParams() |
78 | 79 | ||
79 | this.nearOfBottom.emit() | 80 | this.nearOfBottom.emit() |
80 | }) | 81 | }) |
diff --git a/client/src/app/shared/shared-video-miniature/videos-list.component.html b/client/src/app/shared/shared-video-miniature/videos-list.component.html index 67933f177..2b554517f 100644 --- a/client/src/app/shared/shared-video-miniature/videos-list.component.html +++ b/client/src/app/shared/shared-video-miniature/videos-list.component.html | |||
@@ -40,7 +40,8 @@ | |||
40 | 40 | ||
41 | <div class="no-results" i18n *ngIf="hasDoneFirstQuery && videos.length === 0">No results.</div> | 41 | <div class="no-results" i18n *ngIf="hasDoneFirstQuery && videos.length === 0">No results.</div> |
42 | <div | 42 | <div |
43 | myInfiniteScroller (nearOfBottom)="onNearOfBottom()" [dataObservable]="onDataSubject.asObservable()" [setAngularState]="true" | 43 | myInfiniteScroller (nearOfBottom)="onNearOfBottom()" [dataObservable]="onDataSubject.asObservable()" |
44 | [setAngularState]="true" [parentDisabled]="disabled" | ||
44 | class="videos" [ngClass]="{ 'display-as-row': displayAsRow }" | 45 | class="videos" [ngClass]="{ 'display-as-row': displayAsRow }" |
45 | > | 46 | > |
46 | <ng-container *ngFor="let video of videos; trackBy: videoById;"> | 47 | <ng-container *ngFor="let video of videos; trackBy: videoById;"> |
diff --git a/client/src/app/shared/shared-video-miniature/videos-selection.component.html b/client/src/app/shared/shared-video-miniature/videos-selection.component.html index f2af874dd..6ea2661e4 100644 --- a/client/src/app/shared/shared-video-miniature/videos-selection.component.html +++ b/client/src/app/shared/shared-video-miniature/videos-selection.component.html | |||
@@ -2,7 +2,8 @@ | |||
2 | 2 | ||
3 | <div | 3 | <div |
4 | class="videos" | 4 | class="videos" |
5 | myInfiniteScroller (nearOfBottom)="onNearOfBottom()" [dataObservable]="onDataSubject.asObservable()" [setAngularState]="true" | 5 | myInfiniteScroller (nearOfBottom)="onNearOfBottom()" [dataObservable]="onDataSubject.asObservable()" |
6 | [parentDisabled]="disabled" [setAngularState]="true" | ||
6 | > | 7 | > |
7 | <div class="video" *ngFor="let video of videos; let i = index; trackBy: videoById"> | 8 | <div class="video" *ngFor="let video of videos; let i = index; trackBy: videoById"> |
8 | 9 | ||