primefaces / primeng

The Most Complete Angular UI Component Library
https://primeng.org
Other
10.19k stars 4.55k forks source link

p-accordion: svg icon doesn't register click to open or close panels #16001

Open ryann3588 opened 2 months ago

ryann3588 commented 2 months ago

Describe the bug

The <chevrondownicon> element blocks the click event from being registered against the accordion tabs. This seems to be easily fixed by adding "pointer-events: none" to the .p-accordion-toggle-icon class. This is reproduceable in the prime demo of v16 also https://www.primefaces.org/primeng-v16-lts/accordion.

Environment

prime v16

Reproducer

No response

Angular version

16.2.12

PrimeNG version

16.9.11-LTS

Build / Runtime

Angular CLI App

Language

TypeScript

Node version (for AoT issues node --version)

18.20.2

Browser(s)

Chrome 126.0.6478.127

Steps to reproduce the behavior

No response

Expected behavior

The svg toggle icon shouldn't block the click event on the accordion tab.

charlesfouquet commented 1 month ago

I also confirm this happens with the <chevronrighticon> and custom template headers with PrimeNG v17.18.1 / Angular 17, only when clicking outside of this icon or the custom headers does it open the accordion. When upgrading to Angular 18 and PrimeNG v17.18.8, it works, so something must be off with the support of PrimeNG 17 by Angular 16 or 17 👍🏻

Edit: joined a Stackblitz forked from the official PrimeNG (which used Angular 18 and PrimeNG v17.18.8) which uses Angular 17 and PrimeNG v17.18.1, and replicates the issue https://stackblitz.com/edit/r5eaxh?file=package.json

charlesfouquet commented 1 month ago

PrimeNG must be the sole culprit here, as when upgrading only PrimeNG to v17.18.8 and keeping Angular 17, it solves the issue. So the unexpected behaviour must come from previous versions of PrimeNG ranging from at least 16.9.11-LTS to 17.18.1 and maybe all the way up to 17.18.7