commit | 7a43a7ae271a49768bbcaa9a8f28c5afd2ce5976 | [log] [tgz] |
---|---|---|
author | Kent Tamura <tkent@chromium.org> | Wed Jan 16 02:50:22 2019 |
committer | Commit Bot <commit-bot@chromium.org> | Wed Jan 16 02:50:22 2019 |
tree | 5dc35d9ff6011e4a1cc1eda463454a12cfa7083c | |
parent | 4587a2b16f13908391be5c397e951a2220d4b582 [diff] |
blink::DocumentState doesn't use DoublyLinkedList for form_controls_. Stop using DoublyLinkedList for form_controls_, and stop applying DoublyLinkedListNode to HTMLFormControlElementWithState. Instead, DocumentState creates a list of HTMLFormControlElementWithState on demand, and caches it. This CL is a preparation to support state restoring for form-associated custom elements, which are not HTMLFormControlElementWithState. * DocumentState stores a Document pointer, which is a starting point of the traversal. - Pass Document& to DocumentState constructor and FormController constructor. Also, remove unnecessary static Create() for them. * Replace AddControl() and RemoveControl() of DocumentState with InvalidateControlList() * Replace RegisterStatefulFormControl() and UnregisterStatefulFormControl() of FormController with InvalidateStatefulFormControlList(). Bug: 905922 Change-Id: Ie0ad788042bfca533a2efdff5adc07ce9adf395c Reviewed-on: https://chromium-review.googlesource.com/c/1411972 Reviewed-by: Yoshifumi Inoue <yosin@chromium.org> Commit-Queue: Kent Tamura <tkent@chromium.org> Cr-Commit-Position: refs/heads/master@{#623068}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .