Issue metadata
Sign in to add a comment
|
WebView rendered page for entering credit card details is broken
Reported by
porkyh...@gmail.com,
Jun 8 2016
|
||||||||||||||||||||||
Issue descriptionTHIS TEMPLATE IS FOR FILING BUGS ON THE ANDROID SYSTEM WEBVIEW. GENERAL WEB BUGS SHOULD BE FILED USING A DIFFERENT TEMPLATE! Device name: All devices Android version: All versions WebView version (from system settings -> Apps -> Android System WebView): 51.0.2704.81 Application: dk.danskebank.mobilepay Application version: Any URLs (if applicable): Steps to reproduce: NOTE: I've created a mock version of the app in order for you to reproduce without needing to provide Danish phone no, name, CPR etc. Get it here: https://onedrive.live.com/redir?resid=4FD353D900D811A2!61231&authkey=!AJkfJOawYuUDepE&ithint=file%2capk (1) Press "Log på (eksiterende bruger) (2) Select Trifork Mock in the spinner/drop down (3) Fill out with random digits to the right of +45 (4) Fill out with random password (5) On next page fill out random number below "Indtast aktiveringskode" (6) In burger menu select "Kort" (7) Press + (8) A buggy page for entering card details in now shown in WebView. It should look like the attached file, but that's not the case with the latest version of WebView. Expected result: WebView shows like the image attached Actual result: A buggy page for entering card details; not keyboard shown and edit text fields are messed up
,
Jun 8 2016
Your page relies on "display: -webkit-box;" and related CSS rules, which is the very old draft flexbox spec from 2009. It looks like this has been removed in 51, or at least broken?
You need to update your content to use the final spec ("display: flex" - you may also have to make other changes to the CSS as it's not just the names that are different, but some of the meanings).
,
Jun 8 2016
Adding flexbox component - can anyone confirm whether this was intentionally removed/changed in M51, or if this is actually a bug we should fix? I don't think we should block the M51 rollout on this, though, so updating your app to use the current flexbox spec is the best plan, rather than relying on us changing anything here.
,
Jun 8 2016
,
Jun 8 2016
We didn't really intentionally change anything in -webkit-box, and broadly speaking it should work as it used to (we do have some layout tests). But it is not actively maintained and I'd really rather not fix bugs in it. (removing from the Flexbox component, because it's -webkit-box instead)
,
Jun 8 2016
I'm happy to investigate this further though -- could you provide the rendered HTML? Maybe we can reproduce in desktop chrome and bisect it.
,
Jun 8 2016
I get no repro on Nexus 6 with the given WebView version. Here's the HTML and CSS from inside the app, anyway.
,
Jun 8 2016
Yes, I can't reproduce either on my Nexus 6 with that webview version. I also can't reproduce on Windows 7 with 53.0.2756.0 dev-m using the provided files.
,
Jun 8 2016
Good to hear because the guys responsible for the css/html/javascript have deployed some changes today to fix the error (based on your feedback). So thanks for your help. Consider this as fixed :)
,
Jun 8 2016
,
Jun 8 2016
Can you get us a copy of the original, pre-fix HTML/CSS? We'd like to verify what the actual issue is here, in case it may affect other pages/apps.
,
Jun 9 2016
This CSS rule is the one that broke the view: -webkit-user-modify: read-write-plaintext-only; Until further we will not limit the input fields, but to me it looks like it's a bug? It's hard to describe what it does, but a lot of padding and other css rules looks affected.
,
Jun 9 2016
,
Jun 9 2016
Please can you give us a copy of the original content that reproduces the bug, not just speculation on a specific rule?
,
Jun 9 2016
,
Jun 9 2016
The content is provided by a third party vendor. I will ask them to provide the original content.
,
Jun 10 2016
I was not able reproduce this issue on Moto X Pure Edition/ M51.0.2704.81(webview). Note:- -But I do notice 4 seconds delay in opening the compose active screen when (+) is clicked from "Kort" screen.
,
Jun 13 2016
Dheenu, you won't be able to reproduce this as the server is now sending different content that doesn't have the bug, see c#9. We're just waiting for a copy of the old content so we can debug this.
,
Jun 13 2016
Heres the old source code: https://onedrive.live.com/redir?resid=4FD353D900D811A2!61232&authkey=!AHHuPu15tk94mrA&ithint=file%2czip Only adjustment to get it working with new webview was to remove line 60 in style.css.
,
Jun 13 2016
Line 60 is: > -webkit-user-modify: read-write-plaintext-only; You're saying removing that line changed the *layout* of the page?
,
Jun 13 2016
Yes, that's what I was told by the developers...
,
Jun 15 2016
I edited that line of CSS *into* the current version of the page in the app and it does indeed completely change the layout, though it doesn't quite reproduce the original bug - the z ordering appears to be different and so some of the page elements are still visible, but some are missing, and a lot of the boxes have moved back to the incorrect locations that I observed them as when originally debugging the broken page, so that does appear to be the cause of the issue. I took the source code from the archive (which isn't quite directly loadable as it's PHP) and mangled it until I got to this not-really-minimal but single-file repro case (attached). If you load it, it has a broken layout, and using devtools to disable the "-webkit-user-modify: read-write-plaintext-only" rule fixes the layout. This repros fine on desktop and is not android specific :) Any idea what's going on here, Blink folks? Is this even related to old flexbox at all?
,
Jun 21 2016
Hmm that does not sound flexbox related. Could be due to this: https://cs.chromium.org/chromium/src/third_party/WebKit/Source/core/css/resolver/StyleAdjuster.cpp?sq=package:chromium&rcl=1466493474&l=250 Looks like tkent touched this code: https://chromium.googlesource.com/chromium/src/+/73a59b847f8b048bf26d7806bafa403c8f3f95d6%5E%21/third_party/WebKit/Source/core/css/resolver/StyleAdjuster.cpp
,
Jun 21 2016
,
Jun 21 2016
I made some changes about read-write-plaintext-only for M51. read-write-plaintext-only really supports only plaintext now. In the affected HTML code, read-write-plain-text-only elements contain HTML elements. It's completely invalid.
,
Jun 22 2016
tkent: That seems like a significant change, was there an intent to ship or at least a chromestatus entry for that? I don't see one right now...
,
Jun 23 2016
I didn't think intent-to-ship was necessary because it's just a bug fix. I should have made a chromestatus entry. Will do now.
,
Jun 23 2016
,
Jun 23 2016
Thanks! |
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by porkyh...@gmail.com
, Jun 8 201688.9 KB
88.9 KB View Download