angular / angular/components

bug(Tooltip): Prevents touch scrolling

Offen
#25,566 7 Kommentare 8 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
area: material/tooltip P3
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

Beitragsleitfaden öffnen

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

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.