commit | 0257b4cff723de3f129cec2c80904582cc18fe89 | [log] [tgz] |
---|---|---|
author | Elly Fong-Jones <[email protected]> | Mon Oct 21 19:54:45 2019 |
committer | Commit Bot <[email protected]> | Mon Oct 21 19:54:45 2019 |
tree | 6af98099d19330cec32f550103f381775c39a34a | |
parent | b8c85f3fc8ca182f1373f46e4be0ccc2da6304ee [diff] |
cbui: fold ExternalProtocol delegates together This layer of delegation originally existed to allow for both Cocoa and Views versions of this dialog to share logic. Since the Cocoa versions are now gone, the remaining logic can be folded into the Views versions. This change: 1) Adds ExternalProtocolHandler::Delegate::OnSetBlockState, to allow tests to listen directly for block state changes; 2) Folds the body of ExternalProtocolDialogDelegate into ExternalProtocolDialog; 3) Removes ProtocolDialog (interface only) and ExternalProtocolDialog (interface & implementation) 4) Reworks the ExternalProtocolDialogDelegate browser tests to test "one layer up" - instead of using a test delegate for the dialog, they use the normal production behavior of the dialog, but hook into the ExternalProtocolHandler system at the ExternalProtocolHandler::Delegate layer. This provides better fidelity to the production behavior in the test and simplifies the tests considerably. Next steps here: As the ongoing DialogDelegate refactor proceeds (see https://crbug.com/1011446), ExternalProtocolDialog will shrink further until it contains only Accept and Cancel. Bug: None Change-Id: I90518f8086db4127d41776ad086210c6db9d7462 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1872411 Commit-Queue: Elly Fong-Jones <[email protected]> Reviewed-by: Mustafa Emre Acer <[email protected]> Cr-Commit-Position: refs/heads/master@{#707922}
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 .