Simplify inheritance around FormGroup::GetInfo. Preexisting state: there were 3 methods 2xGetInfo, GetInfoImpl, GetRawInfo. In general they were calling one another in set order but there were quirks: GetRawInfo was pure virtual, GetInfoImpl had default implementation that was overridden sometimes and GetInfo was never overridden. In addition, GetInfo didn't do anything other than calling GetInfoImpl. This made the excecution flow hard to understand when reading. With this CL: both GetInfo methods were made pure virtual, GetInfoImpl was removed altogether. Now the code should be easier to read as a situation when implementation is sometimes in base class and sometimes in derived was eliminated, perhaps other refactors are possible. A downside is that we now have 2 boilerplate implementations of GetInfo everywhere (until we get rid of AutofillType version altogether) but IMO it's acceptable tradeoff. Low-Coverage-Reason: LARGE_SCALE_REFACTOR Bug: 389018075 Change-Id: Ib3860dfd5c3fff6914a1936d555382f67f3e1690 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6177740 Commit-Queue: Piotr Domaradzki <doland@google.com> Reviewed-by: Florian Leimgruber <fleimgruber@google.com> Reviewed-by: Karol Sygiet <sygiet@google.com> Cr-Commit-Position: refs/heads/main@{#1408953}
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.
To check out the source code locally, don't use git clone! Instead, follow the instructions on how to get the code.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure.
For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.
If you found a bug, please file it at https://crbug.com/new.