Extensions Dialogs
Steps for creating a new dialog
- If the dialog is called from code outside views, which most likely is, add
Show<Name>Dialog method to chrome/browser/ui/extensions/extensions_dialogs.h - Implement
Show<NameDialog in chrome/browser/ui/views/extensions:
- Method should receive all the information to display in the UI, and should not compute any extensions logic (e.g pass
extension_site_access value instead of computing the site access here). - Use
ui::DialogModel::Builder to create the dialog. See more information on ui/base/models/dialog_model.h - Show the dialog using a util method from
chrome/browser/ui/extensions/extension_dialog_utils.h
namespace extensions {
void Show<Name>Dialog(...) {
ui::DialogModel::Builder
.SetTitle(...)
// Set the dialog information. If necessary, use ui::DialogModelDelegate.
ShowDialog(...)
}
} // namespace
- Add interactive tests using Kombucha. See more information on
chrome/test/interaction/README.md