bug(Tooltip): Prevents touch scrolling
- Vorherrschende Sprache
- TypeScript
- Sterne
- 25k
- Forks
- 6.8k
- Ø Merge
- 1 T. 8 Std.
- Gemergte PRs (30 T.)
- 91
Beschreibung
### Is this a regression?
- [ ] Yes, this behavior used to work in the previous version
### The previous version in which this bug was not present was
_No response_
### Description
Duplicate of (closed) https://github.com/angular/components/issues/4892
`MatTooltip` triggers with `matTooltipTouchGestures` set to `auto` (default) or `on` break page scrolling on touch devices. When set to either of these values the directive sets `touch-action: none` on the trigger, which breaks native page scrolling.
On a page with many tooltip triggers (e.g. dense links) it can be difficult to scroll the page at all.
Setting `matTooltipTouchGestures` to `off` fixes scrolling, but makes tooltips inaccessible on touch devices.
### Reproduction
Reproduction taken from https://github.com/angular/components/issues/4892#issuecomment-832516128
Steps to reproduce:
1. Open https://stackblitz.com/edit/angular-ylctyk on a touch device (phone, touch laptop) in Chrome
2. Scroll the page by initiating a touch on the white background
3. Attempt to scroll the page by initiating a touch on the black box
### Expected Behavior
Page scrolls
### Actual Behavior
Page does not scroll
### Environment
- Angular: Latest Google-internal version
- CDK/Material: Latest Google-internal version
- Browser(s): Chrome 104
- Operating System (e.g. Windows, macOS, Ubuntu): Android
Beitragsleitfaden
Rechercherichtung
Beginnen Sie mit der MatTooltip-Direktive und reproduzieren Sie das Problem anhand des verlinkten StackBlitz-Beispiels auf einem Android-Touchgerät in Chrome 104. Die Behebung ist abgeschlossen, wenn die Seite durch eine Berührung eines Tooltip-Auslösers gescrollt wird und Touch-Tooltips weiterhin verfügbar bleiben; überprüfen Sie sowohl die Einstellung default oder auto als auch on.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- angular, typescript
- Bereich
- frontend
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 42/100