Explicitly specify NATIVE_WIDGET_OWNS_WIDGET in //ash (3 of 8)
We are refactoring Views code with an eye towards changing the default ownership model of widgets from NATIVE_WIDGET_OWNS_WIDGET to CLIENT_OWNS_WIDGET. One of the first steps in that is to specify the ownership explicitly in existing uses of the Widget InitParams struct, so that we can then change the default without breaking existing uses. This CL changes the uses in //ash/ambient, //ash/app_list, //ash/app_menu, //ash/assistant, and //ash/booting. There should be no functional changes. Bug: 339619005 Change-Id: I9501e660b92140b9956d0273ba820aa9fbf24a81 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5547786 Reviewed-by: James Cook <jamescook@chromium.org> Code-Coverage: findit-for-me@appspot.gserviceaccount.com <findit-for-me@appspot.gserviceaccount.com> Commit-Queue: Dirk Pranke <dpranke@google.com> Cr-Commit-Position: refs/heads/main@{#1304122}
This commit is contained in:

committed by
Chromium LUCI CQ

parent
f87cb32cee
commit
4f01896d99
@ -1158,12 +1158,12 @@ std::unique_ptr<views::Widget> AmbientController::CreateWidget(
|
||||
auto* widget_delegate = new AmbientWidgetDelegate();
|
||||
widget_delegate->SetInitiallyFocusedView(container_view.get());
|
||||
|
||||
views::Widget::InitParams params;
|
||||
params.type = views::Widget::InitParams::TYPE_WINDOW_FRAMELESS;
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET,
|
||||
views::Widget::InitParams::TYPE_WINDOW_FRAMELESS);
|
||||
params.name = GetWidgetName();
|
||||
params.show_state = ui::SHOW_STATE_FULLSCREEN;
|
||||
params.parent = container;
|
||||
params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET;
|
||||
params.delegate = widget_delegate;
|
||||
params.visible_on_all_workspaces = true;
|
||||
|
||||
|
@ -148,6 +148,7 @@ gfx::Rect ComputeBubbleBounds(aura::Window* root_window,
|
||||
views::Widget* CreateBubbleWidget(aura::Window* root_window) {
|
||||
views::Widget* widget = new views::Widget();
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::NATIVE_WIDGET_OWNS_WIDGET,
|
||||
views::Widget::InitParams::TYPE_WINDOW_FRAMELESS);
|
||||
params.name = "AppListBubble";
|
||||
params.parent =
|
||||
|
@ -258,6 +258,7 @@ void AppListView::InitContents() {
|
||||
void AppListView::InitWidget(gfx::NativeView parent) {
|
||||
DCHECK(!GetWidget());
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::NATIVE_WIDGET_OWNS_WIDGET,
|
||||
views::Widget::InitParams::TYPE_WINDOW_FRAMELESS);
|
||||
params.name = "AppList";
|
||||
params.parent = parent;
|
||||
|
@ -37,12 +37,12 @@ SearchResultPageAnchoredDialog::SearchResultPageAnchoredDialog(
|
||||
views::Widget* const parent = host_view_->GetWidget();
|
||||
|
||||
widget_ = new views::Widget();
|
||||
views::Widget::InitParams params;
|
||||
|
||||
params.type = views::Widget::InitParams::TYPE_WINDOW_FRAMELESS;
|
||||
params.layer_type = ui::LAYER_NOT_DRAWN;
|
||||
params.parent = parent->GetNativeWindow();
|
||||
params.delegate = dialog.release();
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::NATIVE_WIDGET_OWNS_WIDGET,
|
||||
views::Widget::InitParams::TYPE_WINDOW_FRAMELESS);
|
||||
params.layer_type = ui::LAYER_NOT_DRAWN;
|
||||
params.parent = parent->GetNativeWindow();
|
||||
params.delegate = dialog.release();
|
||||
|
||||
widget_->Init(std::move(params));
|
||||
|
||||
|
@ -112,9 +112,8 @@ class NotificationMenuViewTest : public views::ViewsTestBase {
|
||||
|
||||
widget_ = std::make_unique<views::Widget>();
|
||||
views::Widget::InitParams init_params(
|
||||
CreateParams(views::Widget::InitParams::TYPE_POPUP));
|
||||
init_params.ownership =
|
||||
views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET;
|
||||
CreateParams(views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET,
|
||||
views::Widget::InitParams::TYPE_POPUP));
|
||||
init_params.activatable = views::Widget::InitParams::Activatable::kYes;
|
||||
widget_->Init(std::move(init_params));
|
||||
notification_menu_view_ =
|
||||
|
@ -204,8 +204,9 @@ void AssistantWebContainerView::SetCanGoBackForTesting(bool can_go_back) {
|
||||
}
|
||||
|
||||
void AssistantWebContainerView::InitLayout() {
|
||||
views::Widget::InitParams params;
|
||||
params.type = views::Widget::InitParams::TYPE_WINDOW;
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::NATIVE_WIDGET_OWNS_WIDGET,
|
||||
views::Widget::InitParams::TYPE_WINDOW);
|
||||
params.delegate = this;
|
||||
params.name = GetClassName();
|
||||
|
||||
|
@ -61,7 +61,9 @@ void BootingAnimationController::Show() {
|
||||
}
|
||||
|
||||
widget_ = std::make_unique<views::Widget>();
|
||||
views::Widget::InitParams params;
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::NATIVE_WIDGET_OWNS_WIDGET,
|
||||
views::Widget::InitParams::TYPE_WINDOW_FRAMELESS);
|
||||
params.delegate = new views::WidgetDelegate; // Takes ownership.
|
||||
params.delegate->SetOwnedByWidget(true);
|
||||
// Allow maximize so the booting container's FillLayoutManager can
|
||||
@ -69,7 +71,6 @@ void BootingAnimationController::Show() {
|
||||
// fullscreen widgets.
|
||||
params.delegate->SetCanMaximize(true);
|
||||
params.delegate->SetCanFullscreen(true);
|
||||
params.type = views::Widget::InitParams::TYPE_WINDOW_FRAMELESS;
|
||||
params.name = "BootingAnimationWidget";
|
||||
params.show_state = ui::SHOW_STATE_FULLSCREEN;
|
||||
// Create the Booting Animation widget on the primary display.
|
||||
|
Reference in New Issue
Block a user