Skip to content

fix(ripple): not fading out on touch devices #12488

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged

Conversation

devversion
Copy link
Member

@devversion devversion commented Aug 2, 2018

  • Makes the ripple animations no longer dependent on setTimeout that does not always fire properly / or within the specified duration. (related chrome issue: https://bugs.chromium.org/p/chromium/issues/detail?id=567800)
  • Fix indentation of a few ripple tests and that the speed factor tests are basically not checking anything (even though they will be removed in the future; they need to pass right now)

Fixes #12470

@devversion devversion added the target: patch This PR is targeted for the next patch release label Aug 2, 2018
@googlebot googlebot added the cla: yes PR author has agreed to Google's Contributor License Agreement label Aug 2, 2018
@jelbourn
Copy link
Member

jelbourn commented Aug 2, 2018

From that issue, it makes it sound like this only happens if you're constantly tapping, no?

If that's the case, wouldn't it be simpler just to cap the number of ripples that could appear?

@devversion
Copy link
Member Author

devversion commented Aug 2, 2018

It also happens if you just scroll constantly around and accidentally touch an elements that have ripples registered.

Capping the number of ripples that can appear, would be another possible solution, but I guess that kind of limits how the ripples work. Each ripple target has its own RippleRenderer and making them communicate globally in between feels wrong.

Each ripple should work independently from other ripples. e.g. there can be people who touch multiple elements at the same time (I have no specific example), or there are ripples manually being launched for a tutorial on a page. Also I've wanted to switch away from timeouts a long time because by using transitionend we don't need any timeout, compared to having two.

This should not only fix the issue, but also give us a small performance improvement for the ripples.

@devversion devversion force-pushed the fix/ripple-not-fading-out-touchmove branch from 091c448 to 4e93368 Compare August 2, 2018 16:31
Copy link
Member

@jelbourn jelbourn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@jelbourn jelbourn added pr: lgtm action: merge The PR is ready for merge by the caretaker labels Aug 2, 2018
@devversion devversion force-pushed the fix/ripple-not-fading-out-touchmove branch from e7efe4c to eafe877 Compare August 19, 2018 11:46
@ngbot
Copy link

ngbot bot commented Aug 21, 2018

Hi @devversion! This PR has merge conflicts due to recent upstream merges.
Please help to unblock it by resolving these conflicts. Thanks!

@devversion devversion force-pushed the fix/ripple-not-fading-out-touchmove branch from eafe877 to e9c5d2b Compare August 22, 2018 15:06
@devversion
Copy link
Member Author

@jelbourn Rebased.

@devversion devversion force-pushed the fix/ripple-not-fading-out-touchmove branch 2 times, most recently from 97a26fa to 64ccbfd Compare August 31, 2018 06:46
@ngbot
Copy link

ngbot bot commented Sep 11, 2018

Hi @devversion! This PR has merge conflicts due to recent upstream merges.
Please help to unblock it by resolving these conflicts. Thanks!

@ngbot
Copy link

ngbot bot commented Sep 19, 2018

Hi @devversion! This PR has merge conflicts due to recent upstream merges.
Please help to unblock it by resolving these conflicts. Thanks!

@devversion devversion added pr: needs rebase and removed action: merge The PR is ready for merge by the caretaker labels Oct 2, 2018
@devversion devversion force-pushed the fix/ripple-not-fading-out-touchmove branch 2 times, most recently from d00ffa7 to 5edee00 Compare October 4, 2018 15:42
@devversion devversion added the action: merge The PR is ready for merge by the caretaker label Oct 4, 2018
@devversion devversion force-pushed the fix/ripple-not-fading-out-touchmove branch from 2615e48 to 532f8c9 Compare September 11, 2020 10:17
@devversion devversion force-pushed the fix/ripple-not-fading-out-touchmove branch from 532f8c9 to 7d9ef8b Compare September 11, 2020 10:22
@devversion
Copy link
Member Author

I've rebased this one again. Could we get another presubmit on it? cc. @andrewseguin @mmalerba

I see in the caretaking notes that ripples persisted unexpectedly. I assume this happened in tests? Hopefully not too many apps test the ripple timing.

@devversion devversion force-pushed the fix/ripple-not-fading-out-touchmove branch 2 times, most recently from 4ffbb33 to 0c7325c Compare August 17, 2021 11:37
@devversion
Copy link
Member Author

@jelbourn I've rebased this one again. I think we should still merge this as it improves overall performance of the ripples, and fixes a bug that results in ripples persisting while the user scrolls on mobile. Can we have another presubmit for this? I assume this this fix is still relevant since our MDC-based components also use our ripple. cc. @wagnermaciel

@devversion devversion force-pushed the fix/ripple-not-fading-out-touchmove branch 2 times, most recently from a2fe2e9 to ef82a87 Compare August 17, 2021 11:59
@andrewseguin andrewseguin added needs rebase and removed cla: yes PR author has agreed to Google's Contributor License Agreement labels Dec 29, 2021
@devversion devversion force-pushed the fix/ripple-not-fading-out-touchmove branch from ef82a87 to 95e0b8a Compare January 31, 2022 13:24
@devversion devversion added the dev-app preview When applied, previews of the dev-app are deployed to Firebase label Feb 22, 2022
@github-actions
Copy link

github-actions bot commented Feb 22, 2022

@devversion devversion force-pushed the fix/ripple-not-fading-out-touchmove branch 2 times, most recently from 0562bb9 to 54595ac Compare February 22, 2022 21:37
@devversion devversion requested a review from a team as a code owner February 22, 2022 21:37
@devversion devversion force-pushed the fix/ripple-not-fading-out-touchmove branch from 54595ac to 88170e9 Compare February 22, 2022 21:48
…lling

* Makes the ripple animations no longer dependent on `setTimeout` that does not always fire properly / or within the specified duration. (related chrome issue: https://bugs.chromium.org/p/chromium/issues/detail?id=567800)
* Fix indentation of a few ripple tests
* Fixes that the speed factor tests are basically not checking anything (even though they will be removed in the future; they need to pass right now)

Fixes angular#12470
…en scrolling

Backwards compatibility change for g3 tests using just transition: none without the noopanimations module
@devversion devversion force-pushed the fix/ripple-not-fading-out-touchmove branch from 6f67dbf to cbc5f7c Compare February 23, 2022 14:17
@andrewseguin andrewseguin added target: minor This PR is targeted for the next minor release and removed target: patch This PR is targeted for the next patch release labels Feb 23, 2022
@andrewseguin andrewseguin merged commit 65fb5f4 into angular:master Feb 23, 2022
andrewseguin added a commit to andrewseguin/components that referenced this pull request Feb 24, 2022
@angular-automatic-lock-bot
Copy link

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.

@angular-automatic-lock-bot angular-automatic-lock-bot bot locked and limited conversation to collaborators Mar 26, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
action: merge The PR is ready for merge by the caretaker dev-app preview When applied, previews of the dev-app are deployed to Firebase P3 An issue that is relevant to core functions, but does not impede progress. Important, but not urgent target: minor This PR is targeted for the next minor release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Ripple effects of list items are stacking on scrolling in mobile
7 participants