Issue metadata
Sign in to add a comment
|
SVG stroke-dasharray does not work on Android with <meta name="viewport" content="width=device-width, minimum-scale=1.0">
Reported by
nekr.fab...@gmail.com,
Mar 2 2016
|
||||||||||||||||||||||
Issue descriptionUserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.116 Safari/537.36 Example URL: https://m.oumy.com Steps to reproduce the problem: 1. Go to https://m.oumy.com in Chrome Beta (tested only on Android) 2. See loading spinner which is complete circle What is the expected behavior? It should be Material Design animation spinner. SVG + CSS animation What went wrong? It seems like it doesn't perform SVG animation, dash-array by some reason is not animating. Does it occur on multiple sites: N/A Is it a problem with a plugin? No Did this work before? Yes 48, stable channel Does this work in other browsers? Yes Chrome version: 48.0.2564.116 Channel: beta OS Version: OS X 10.11.3 Flash Version: Shockwave Flash 20.0 r0 This works in Stable and in Dev on Android, but is broken in Beta.
,
Mar 2 2016
,
Mar 2 2016
,
Mar 2 2016
Yes, I actually meant that CSS animation of SVG's stroke-dasharray is not working. Sorry for misleading.
,
Mar 2 2016
Can you provide a minimal test case that illustrates the problem? This would make it easier to reproduce. (Extra data point: I could not repro on Linux desktop.)
,
Mar 2 2016
Try this: https://m.oumy.com/#/test Also here is couple of screenshots, first is Chrome Beta, second is Chrome Stable.
,
Mar 2 2016
Do you reproduce the problem with http://codepen.io/mrrocks/pen/EiplA ? This is an example that I found through Google and is closer to what I meant by minimal test case (although it's still not very minimal).
,
Mar 2 2016
No, it's not reproducible there. I tested on other examples before posting here. It's only broken on m.oumy.com. There cannot be more minimal example than that. If I will extract loading implementation from project it may work as those demos on codepen. So it's better test where it doesn't work. Here is staging env without minification of JS and CSS, if this will help: https://html5.oumy.com:8080/#/test
,
Mar 2 2016
OK, thanks.
,
Mar 2 2016
Okay, here is "minimal" demo and it works for me in Beta http://codepen.io/anon/pen/PNqJKe Do not know what is going on when it's inside m.oumy.com. But works in stable.
,
Mar 2 2016
Whoops, made a mistake on the labels. Passing this issue over to the test team for confirmation.
,
Mar 3 2016
Able to repro using Android Chrome 50 (dev). This does not require animations to repro, this is some weird interaction between <meta name="viewport" content="width=device-width, minimum-scale=1.0"> and SVG layout/paint. Please bisect on Android using attached minimal test case.
,
Mar 3 2016
As far as I know, that <meta> tag enables "GPU Rasterization", so might be it.
,
Mar 3 2016
,
Mar 3 2016
Looks like the dasharray is not being applied at all. Could be a bug with a circle/oval fast-path.
,
Mar 10 2016
Just to know.. Is there a chance to have it fixed in Next Android Stable release?
,
Mar 10 2016
Chrome/WebView/etc are no longer tied to android releases, so that shouldn't be a problem like it was in the past. Sadly, I don't think it's possible to guarantee a specific fix timeframe. As a workaround, it sounds like you can tweak the meta viewport tag though (just remove minimum-scale). @Cary, would you be able to look at this? It looka like a Ganesh bug.
,
Mar 10 2016
Oh, I actually meant "before next Chrome Stable release on Android". Yeah, I understand that it will help, just trying to figure out if I need to do it or not.
,
Mar 10 2016
,
Mar 10 2016
,
Mar 12 2016
You are probably looking for a change made after 361277 (known good), but no later than 361299 (first known bad). CHANGELOG URL: https://chromium.googlesource.com/chromium/src/+log/79e75dc188e82f80fbf053694ccf4a0d2ef5ef4b..07ece06c99c9b15c5d2ea779239f856e066c97da Most likely https://chromium.googlesource.com/skia.git/+/512e437e1e07159a258dd3c5b907576bd1aefc1e. Brian landed a Ganesh workaround which fixes the issue: https://skia.googlesource.com/skia/+/6266dca7a7a991634d144cbc3a2c6cffefd67454 It would normally ship out in M51, but since it's a regression and the workaround is reasonable we should consider it for merging.
,
Mar 12 2016
Btw, maybe it's good idea to have tests for it? I do not know how you do them, but if you gave them for painting then test for this issue should there, I think.
,
Mar 12 2016
We have coverage for dashing in Blink's layout tests, but 1) only a subset of the layout tests are run with GPU rasterization enabled 2) this particular issue only manifests itself with distance-field path rendering, which I'm not sure whether is enabled/supported for all GL impls (so even if dashing tests are run against the GPU backend, chances are the Mesa-based test bots would not catch it) Skia OTOH has more specialized GPU test bots, so it's a good idea to add a regression test to its suite.
,
Mar 13 2016
Your change meets the bar and is auto-approved for M50 (branch: 2661)
,
Mar 13 2016
Great news, thanks for fixing it. @#23 I see, thanks for explanation. Hope that Skia will have more such tests :-)
,
Mar 14 2016
Please try to merge your change to M50 branch 2661 ASAP if you think it is a safe merge as we're close to M50 Beta candidate cut for next week. Thank you.
,
Mar 15 2016
The following revision refers to this bug: https://skia.googlesource.com/skia.git/+/dde87ad6d5278661aac6a8eda9e8f43deb255fe2 commit dde87ad6d5278661aac6a8eda9e8f43deb255fe2 Author: fmalita <fmalita@chromium.org> Date: Tue Mar 15 03:20:11 2016 [M50] Reject dashes from GrAADFR Cherry-pick of 6266dca7a7a991634d144cbc3a2c6cffefd67454 into chrome/m50. BUG= chromium:591424 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1784493004 Review URL: https://codereview.chromium.org/1784493004 NOTREECHECKS=true NOTRY=true NOPRESUBMIT=true TBR=bsalomon@google.com Review URL: https://codereview.chromium.org/1802863002 [modify] https://crrev.com/dde87ad6d5278661aac6a8eda9e8f43deb255fe2/src/gpu/batches/GrAADistanceFieldPathRenderer.cpp
,
Mar 15 2016
As per Comment #27, this is already merged to M50. So removing "Merge-Approved-50" label.
,
Mar 18 2016
This also affects the Google homepage, internal bug at go/591424. I found a workaround is to use shape-rendering: crispEdges (this avoids the same ganesh codepath as the fix that landed).
,
Jun 4 2018
|
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by rsesek@chromium.org
, Mar 2 2016Labels: -OS-Mac OS-Android