mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2026-03-13 10:22:08 +08:00
feat(ripple-effect): add option to disable ripple-effect (#16393)
fixes #16379
This commit is contained in:
@@ -7,6 +7,12 @@ export interface IonicConfig {
|
||||
*/
|
||||
animated?: boolean;
|
||||
|
||||
/**
|
||||
* When it's set to `false`, it disables all material-design ripple-effects across the app.
|
||||
* Defaults to `true`.
|
||||
*/
|
||||
rippleEffect?: boolean;
|
||||
|
||||
/**
|
||||
* The mode determines which platform styles to use for the whole application.
|
||||
*/
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
import { Config } from '../interface';
|
||||
|
||||
import { now, pointerCoord } from './helpers';
|
||||
|
||||
export function startTapClick(doc: Document) {
|
||||
export function startTapClick(doc: Document, config: Config) {
|
||||
let lastTouch = -MOUSE_WAIT * 10;
|
||||
let lastActivated = 0;
|
||||
let cancelled = false;
|
||||
@@ -11,6 +12,7 @@ export function startTapClick(doc: Document) {
|
||||
let activeRipple: Promise<() => void> | undefined;
|
||||
let activeDefer: any;
|
||||
|
||||
const useRippleEffect = config.getBoolean('animated', true) && config.getBoolean('rippleEffect', true);
|
||||
const clearDefers = new WeakMap<HTMLElement, any>();
|
||||
|
||||
function onBodyClick(ev: Event) {
|
||||
@@ -116,7 +118,7 @@ export function startTapClick(doc: Document) {
|
||||
lastActivated = Date.now();
|
||||
el.classList.add(ACTIVATED);
|
||||
|
||||
const rippleEffect = getRippleEffect(el);
|
||||
const rippleEffect = useRippleEffect && getRippleEffect(el);
|
||||
if (rippleEffect && rippleEffect.addRipple) {
|
||||
activeRipple = rippleEffect.addRipple(x, y);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user