Fix passwords filling on iOS.
When filling forms, Chrome identifies fields by FormFieldData::id on iOS and FormFieldData::name on other platforms. The new FormData->PasswordForm parser failed to use 'id' on iOS. This CL fixes that by introducing platform-dependent identifier selector, which returns 'id' on iOS and 'name' elsewhere. The alternative solution of switching the iOS code to use 'name' (or the rest to use 'id') is not good for various reasons: - non-iOS code will ultimately migrate to using FormFieldData::unique_renderer_id, which is superior to both but not supported on iOS - iOS code contains significant improvements which ensure that FormFieldData::id is actually unique; this has been neither done outside of iOS, nor for FormFieldData::name - the amount of code needing change would be large and the benefit virtually null (compared to the solution from this CL). Bug: 831123 Change-Id: I24960064bb3f792ef4e0ebe6fbf769509481bad1 Reviewed-on: https://chromium-review.googlesource.com/1142151 Commit-Queue: Vadym Doroshenko <dvadym@chromium.org> Reviewed-by:Vaclav Brozek <vabr@chromium.org> Cr-Commit-Position: refs/heads/master@{#576489}
Showing
Please register or sign in to comment