question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Icon buttons can accrue excessive ripple effects

See original GitHub issue

Bug, feature request, or proposal:

Bug

What is the expected behavior?

Clicking or touching an icon button should show one ripple that disappears promptly

What is the current behavior?

Multiple rapid clicks can create stacked ripple effects that dissipate slowly

What are the steps to reproduce?

Open the button docs and rapidly click one of the icon buttons. Observe that the ripple effect grows very dark as multiple mat-ripple-element elements are created and attached to the mat-button-ripple. In a poor performance situation (slow system, patchy browser animation support, lots of background activity) this can be especially noticeable as each ripple takes multiple seconds to remove itself.

Which versions of Angular, Material, OS, TypeScript, browsers are affected?

Impacts docs page as of today, so I think that’s 5.0.0-rc3? It seems to me that the fade out animation is choppier in Firefox than Chromium (and thus the stacking effect is more apparent).

Is there anything else we should know?

Just having the ripples stack isn’t such a big deal, but I have a page that’s doing intensive background work and it can easily see one or more ripples stick around for over 5 seconds, which is pretty confusing for the user. I think probably it makes sense to limit each button to a single ripple, but I don’t have a cite from the spec to back me up.

Issue Analytics

  • State:closed
  • Created 6 years ago
  • Comments:12 (6 by maintainers)

github_iconTop GitHub Comments

1reaction
thw0rtedcommented, Dec 6, 2017

This example shows a mat-icon-button that triggers a mat-menu (while graphically-intensive stuff is happening out of frame).

Menu example

As you can see, I’m opening and closing the menu multiple times consecutively, which hopefully the user wouldn’t do, but it highlights the stacking effect. Note that the GIF shows the ripples finally going away in real time – it’s a good 2 or 3 seconds after I close the menu for the last time before the last ripple disappears in the video, and it can be even worse that that sometimes in browser.

0reactions
angular-automatic-lock-bot[bot]commented, Sep 8, 2019

This issue has been automatically locked due to inactivity. Please file a new issue if you are encountering a similar or related problem.

Read more about our automatic conversation locking policy.

This action has been performed automatically by a bot.

Read more comments on GitHub >

github_iconTop Results From Across the Web

flutter - How to add splash color or ripple effects to IconButtons ...
I had noticed random behaviors with my elevated buttons in other screens, sometimes we see the ripple effects, sometimes we don't. Is there ......
Read more >
How to create ripple effect on button in Android studio - Quora
Check this : traex/RippleEffect RippleEffect ExpandableLayout provides an easy way to create a view called header with an expandable view.
Read more >
Latest Posts | Page 6 | National Equity Atlas
This tutorial describes how you can create a $15/hour fact sheet for your community using Atlas data and Tableau. All you will need...
Read more >
Erasing tech debt: A leader's guide to getting in the black
That point is critical to stress, because the blame game often follows discussions of technical debt, which can be incredibly toxic to a...
Read more >
How Will the Clean Power Plan Affect ABL Lenders? - Article | ABL ...
Lenders with disproportionate collateral investments in heavy ... defend its interests against the unintended consequences that will accrue from the plan.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found