Skip to content
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

[Bug Report] v-list-item ripple effect gets triggered when you click on v-list-item-action #7988

Closed
Assignees
Labels
D: ripple P: low The issue is of low importance T: bug Functionality that does not work as intended/expected T: regression Something that used to work but we broke
Milestone

Comments

@AssetKid
Copy link

Environment

Vuetify Version: 2.0.0
Last working version: 1.5.16
Vue Version: 2.6.10
Browsers: Mozilla Firefox, Google Chrome
OS: Windows, Mac OSX

Steps to reproduce

Click v-list-item-action on the demos linked below

1.5.16 - https://codepen.io/anon/pen/YmWWWb
2.0 - https://codepen.io/anon/pen/EqyyyR

Expected Behavior

Ripple effect should only be on v-list-item-action

https://codepen.io/anon/pen/YmWWWb

Actual Behavior

Ripple effect is triggered for both v-list-item and v-list-item-action

Reproduction Link

https://codepen.io/anon/pen/EqyyyR

Other comments

This is a regression from 1.5.x. Not sure if it is a feature or bug.

@ghost ghost added the S: triage label Jul 24, 2019
@johnleider johnleider added T: bug Functionality that does not work as intended/expected T: regression Something that used to work but we broke and removed S: triage labels Jul 24, 2019
@johnleider
Copy link
Member

Not really sure how we can efficiently fix this. v-list-item supports ripple now by default. If the same would have been the case for v1.5, it would have been experienced there as well.

https://codepen.io/johnjleider/pen/bXweXq

@johnleider johnleider added the P: low The issue is of low importance label Jul 25, 2019
@WIStudent
Copy link

For anyone looking for a workaround, I fixed this issue by stopping the propagation of the mousedown and touchstart event inside the action:

<v-list-item :to="someRoute">
  <v-list-item-content>
      <v-list-item-title>Title</v-list-item-title>
  </v-list-item-content>

  <v-list-item-action>
    <v-btn icon @click.prevent="delete" @mousedown.stop @touchstart.native.stop>
      <v-icon>delete</v-icon>
    </v-btn>
  </v-list-item-action>
</v-list-item>

@click.prevent prevents the v-list-item from routing to someRoute when clicking on the button inside the action.

@KaelWD KaelWD self-assigned this Mar 6, 2021
@KaelWD KaelWD added this to the v2.4.x milestone Mar 6, 2021
@KaelWD KaelWD closed this as completed in 364fb8e Mar 6, 2021
@seankenny
Copy link

I think this may have caused an IE11 bug Out of stack space. Pretty straightforward to repro assuming you have access to IE11 - open in IE11 and click any component with a ripple directive and you will see the issue immediately in the console.

Screenshot 2021-03-22 at 18 23 32
Screenshot 2021-03-22 at 18 23 15

@johnleider
Copy link
Member

We kindly ask users to not comment on closed/resolved issues. If you believe that this issue has not been correctly resolved, please create a new issue showing the regression.

If you have any additional questions, please reach out to us in our Discord community.

@vuetifyjs vuetifyjs locked as resolved and limited conversation to collaborators Mar 23, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.