Bug 257023

Summary: REGRESSION (Safari 16.5): Element left in blurred state after animation
Product: WebKit Reporter: Matt Sephton <matt.sephton>
Component: AnimationsAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: dino, graouts, graouts, matt.sephton, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: Safari 16   
Hardware: Mac (Apple Silicon)   
OS: macOS 13   
Attachments:
Description Flags
screen recording of the issue, with workaround
none
screenshot of the element in blurred state after animation
none
Safari TP 170 (Safari 16.4, WebKit 17616.1.14.5) on macOS 12.6.6 none

Description Matt Sephton 2023-05-19 06:24:29 PDT
Created attachment 466414 [details]
screen recording of the issue, with workaround

I am seeing a CSS element animate in but it is left in a blurry state.

However, if I do certain things that cause the page to redraw then it finally appears as it should.

I can move the mouse a certain way, scroll the page, or use the web inspector.

If I apply `animation: none !important` to the element `#polyglot__panel` then the issue goes away.

The CSS is inside the Polyglot App Extension https://apps.apple.com/gb/app/polyglot/id1471801525?mt=12
- install and run the app
- check "instant translation" box
- go to safari
- activate extension
- goto page https://github.com/uetchy/Polyglot/issues/128
- select some text by double clicking
- do not move the mouse afterwards 
- translation popup panel will appear, blurred
- scroll page, panel will unblur

Attached is a screen recording.

Related:
- https://bugs.webkit.org/show_bug.cgi?id=254585
- https://bugs.webkit.org/show_bug.cgi?id=254665
Comment 1 Matt Sephton 2023-05-19 06:26:14 PDT
Created attachment 466415 [details]
screenshot of the element in blurred state after animation
Comment 2 Matt Sephton 2023-05-19 06:29:06 PDT
visible with
- Safari 16.5 on macOS 13.4 Ventura
- Safari 16.5 on macOS 12.6.6 Monterey
- Safari Tech Preview 170 on macOS 12.6.6 Monterey

it was not visible in
- Safari 16.4 on macOS 12.6.6 Monterey
Comment 3 Antoine Quint 2023-05-22 01:18:48 PDT
Retitling as a Safari 16.5 regression per latest comment by Matt.
Comment 4 Radar WebKit Bug Importer 2023-05-22 10:32:34 PDT
<rdar://problem/109666580>
Comment 5 Antoine Quint 2023-05-23 08:04:58 PDT
I'm not managing to get the popover to appear at all on the macOS 13.5 beta. I do see the panel added to the DOM, but it's not visible. If I comment out the `transform: scale(0) !important;` then I see the panel appear and animate without issue, with no blurring.
Comment 6 Matt Sephton 2023-05-23 09:30:21 PDT
Yes, that's the result of a recent bug fix in WebKit. See #254585

You'll need to install the workaround below. Apologies for not mentioning that.

This is not included in the extension (author is suspected to have died) so needs to be added through Safari > Advanced > Style sheet

```
div#polyglot__panel {
	transform: scale(1) !important; /* for Safari 16.4 issue */
}
```
Comment 7 Antoine Quint 2023-05-23 11:53:55 PDT
(In reply to Matt Sephton from comment #6)
> Yes, that's the result of a recent bug fix in WebKit. See #254585
> 
> You'll need to install the workaround below. Apologies for not mentioning
> that.
> 
> This is not included in the extension (author is suspected to have died) so
> needs to be added through Safari > Advanced > Style sheet
> 
> ```
> div#polyglot__panel {
> 	transform: scale(1) !important; /* for Safari 16.4 issue */
> }
> ```

With that additional stylesheet, I get what I assume is the expected behavior and not seeing any blur anywhere.
Comment 8 Antoine Quint 2023-05-23 11:54:27 PDT
(In reply to Antoine Quint from comment #7)
> With that additional stylesheet, I get what I assume is the expected
> behavior and not seeing any blur anywhere.

With both Safari in macOS 13.5 beta and STP 170.
Comment 9 Matt Sephton 2023-05-24 06:28:28 PDT
You can see me repro it in my screen recording.

But, yes, it only happens sometimes and I'm not sure what is triggering the faulty state.

I'll see if I can find other reproduce steps.
Comment 10 Matt Sephton 2023-05-24 06:34:54 PDT
I'm away from my macOS 13 install.

But I get it immediately using Safari TP 170 on macOS 12.6.6.

Attaching new screen recording.
Comment 11 Matt Sephton 2023-05-24 06:38:33 PDT
Created attachment 466479 [details]
Safari TP 170 (Safari 16.4, WebKit 17616.1.14.5) on macOS 12.6.6
Comment 12 Matt Sephton 2023-05-24 06:40:02 PDT
One of the other effects of this is that on the upload attachment page, the process seemed to have not finished because the page did not update. 

But I could see the upload had finished thanks to my network traffic.

As soon as I scrolled the page the display refreshed at this page.
Comment 13 Matt Sephton 2023-06-01 11:45:45 PDT
Safari TP Release 171 (Safari 16.4, WebKit 17616.1.15) on macOS 12.6.6 (21G646)
- still happening


To aid reproduction as detailed in my initial report, please make sure you are accessing the page inquisition as there it reproduces first time every time (other pages may take more effort to trigger)