You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40 lines
1.5 KiB
40 lines
1.5 KiB
/**
|
|
* @license
|
|
* Copyright Google LLC All Rights Reserved.
|
|
*
|
|
* Use of this source code is governed by an MIT-style license that can be
|
|
* found in the LICENSE file at https://angular.io/license
|
|
*/
|
|
import { NgZone } from '@angular/core';
|
|
import { ScrollStrategy } from './scroll-strategy';
|
|
import { OverlayReference } from '../overlay-reference';
|
|
import { ScrollDispatcher, ViewportRuler } from '@angular/cdk/scrolling';
|
|
/**
|
|
* Config options for the CloseScrollStrategy.
|
|
*/
|
|
export interface CloseScrollStrategyConfig {
|
|
/** Amount of pixels the user has to scroll before the overlay is closed. */
|
|
threshold?: number;
|
|
}
|
|
/**
|
|
* Strategy that will close the overlay as soon as the user starts scrolling.
|
|
*/
|
|
export declare class CloseScrollStrategy implements ScrollStrategy {
|
|
private _scrollDispatcher;
|
|
private _ngZone;
|
|
private _viewportRuler;
|
|
private _config?;
|
|
private _scrollSubscription;
|
|
private _overlayRef;
|
|
private _initialScrollPosition;
|
|
constructor(_scrollDispatcher: ScrollDispatcher, _ngZone: NgZone, _viewportRuler: ViewportRuler, _config?: CloseScrollStrategyConfig | undefined);
|
|
/** Attaches this scroll strategy to an overlay. */
|
|
attach(overlayRef: OverlayReference): void;
|
|
/** Enables the closing of the attached overlay on scroll. */
|
|
enable(): void;
|
|
/** Disables the closing the attached overlay on scroll. */
|
|
disable(): void;
|
|
detach(): void;
|
|
/** Detaches the overlay ref and disables the scroll strategy. */
|
|
private _detach;
|
|
}
|