Explicitly specify NATIVE_WIDGET_OWNS_WIDGET in //ash (4 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/capture_mode, //ash/components, //ash/curtain, //ash/display, //ash/drag_drop, and //ash/fast_ink. There should be no functional changes. Bug: 339619005 Change-Id: I26fadd03433b6133b25e281728d5f200658fb236 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5551618 Code-Coverage: findit-for-me@appspot.gserviceaccount.com <findit-for-me@appspot.gserviceaccount.com> Commit-Queue: Dirk Pranke <dpranke@google.com> Reviewed-by: James Cook <jamescook@chromium.org> Cr-Commit-Position: refs/heads/main@{#1304154}
This commit is contained in:

committed by
Chromium LUCI CQ

parent
1bdb999ce2
commit
ca409c889d
ash
capture_mode
capture_mode_camera_controller.cccapture_mode_demo_tools_controller.cccapture_mode_education_controller.cccapture_mode_session.cccapture_mode_toast_controller.ccfake_folder_selection_dialog_factory.ccrecording_overlay_controller.cc
curtain
display
display_alignment_indicator.ccdisplay_highlight_controller.ccdisplay_move_window_util_unittest.ccshared_display_edge_indicator.cctouch_calibrator_view.cc
drag_drop
fast_ink
@ -178,7 +178,9 @@ const CameraInfo* GetCameraInfoById(const CameraId& id,
|
||||
|
||||
// Returns the widget init params needed to create the camera preview widget.
|
||||
views::Widget::InitParams CreateWidgetParams(const gfx::Rect& bounds) {
|
||||
views::Widget::InitParams params(views::Widget::InitParams::TYPE_POPUP);
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::NATIVE_WIDGET_OWNS_WIDGET,
|
||||
views::Widget::InitParams::TYPE_POPUP);
|
||||
params.parent =
|
||||
CaptureModeController::Get()->GetOnCaptureSurfaceWidgetParentWindow();
|
||||
params.bounds = bounds;
|
||||
|
@ -112,7 +112,9 @@ bool ShouldConsiderKey(ui::KeyboardCode key_code) {
|
||||
|
||||
views::Widget::InitParams CreateWidgetParams(
|
||||
VideoRecordingWatcher* video_recording_watcher) {
|
||||
views::Widget::InitParams params(views::Widget::InitParams::TYPE_POPUP);
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::NATIVE_WIDGET_OWNS_WIDGET,
|
||||
views::Widget::InitParams::TYPE_POPUP);
|
||||
params.parent =
|
||||
video_recording_watcher->GetOnCaptureSurfaceWidgetParentWindow();
|
||||
params.child = true;
|
||||
@ -465,4 +467,4 @@ void CaptureModeDemoToolsController::OnTouchDragged(
|
||||
highlight_layer->CenterAroundPoint(event_location_in_window);
|
||||
}
|
||||
|
||||
} // namespace ash
|
||||
} // namespace ash
|
||||
|
@ -290,7 +290,9 @@ void CaptureModeEducationController::ShowQuickSettingsNudge() {
|
||||
void CaptureModeEducationController::CreateAndShowTutorialDialog() {
|
||||
// As we are creating a system modal dialog, it will automatically be parented
|
||||
// to `kShellWindowId_SystemModalContainer`.
|
||||
views::Widget::InitParams params(views::Widget::InitParams::TYPE_POPUP);
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::NATIVE_WIDGET_OWNS_WIDGET,
|
||||
views::Widget::InitParams::TYPE_POPUP);
|
||||
params.delegate = CreateDialogView().release();
|
||||
params.name = "CaptureModeEducationTutorialWidget";
|
||||
params.activatable = views::Widget::InitParams::Activatable::kYes;
|
||||
|
@ -220,7 +220,9 @@ views::Widget::InitParams CreateWidgetParams(aura::Window* parent,
|
||||
const std::string& name) {
|
||||
// Use a popup widget to get transient properties, such as not needing to
|
||||
// click on the widget first to get capture before receiving events.
|
||||
views::Widget::InitParams params(views::Widget::InitParams::TYPE_POPUP);
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::NATIVE_WIDGET_OWNS_WIDGET,
|
||||
views::Widget::InitParams::TYPE_POPUP);
|
||||
params.opacity = views::Widget::InitParams::WindowOpacity::kTranslucent;
|
||||
params.parent = parent;
|
||||
params.bounds = bounds;
|
||||
|
@ -46,7 +46,9 @@ std::u16string GetCaptureToastTextOnToastType(
|
||||
|
||||
// Returns the init params that will be used for the toast widget.
|
||||
views::Widget::InitParams CreateWidgetParams(aura::Window* parent) {
|
||||
views::Widget::InitParams params(views::Widget::InitParams::TYPE_POPUP);
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::NATIVE_WIDGET_OWNS_WIDGET,
|
||||
views::Widget::InitParams::TYPE_POPUP);
|
||||
params.opacity = views::Widget::InitParams::WindowOpacity::kTranslucent;
|
||||
params.parent = parent;
|
||||
params.name = "CaptureModeToastWidget";
|
||||
|
@ -81,6 +81,7 @@ class FakeFolderSelectionDialog : public ui::SelectFileDialog {
|
||||
const GURL* caller) override {
|
||||
dialog_widget_ = views::UniqueWidgetPtr(std::make_unique<views::Widget>());
|
||||
views::Widget::InitParams widget_params(
|
||||
views::Widget::InitParams::NATIVE_WIDGET_OWNS_WIDGET,
|
||||
views::Widget::InitParams::TYPE_POPUP);
|
||||
widget_params.parent = owning_window;
|
||||
widget_params.bounds = owning_window->GetRootWindow()->bounds();
|
||||
|
@ -167,6 +167,7 @@ RecordingOverlayController::RecordingOverlayController(
|
||||
const gfx::Rect& initial_bounds_in_parent) {
|
||||
DCHECK(window_being_recorded);
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::NATIVE_WIDGET_OWNS_WIDGET,
|
||||
views::Widget::InitParams::TYPE_WINDOW_FRAMELESS);
|
||||
params.name = "RecordingOverlayWidget";
|
||||
params.child = true;
|
||||
|
@ -40,9 +40,9 @@ std::vector<std::unique_ptr<ui::Layer>> InitWidgetLayers(
|
||||
}
|
||||
|
||||
views::Widget::InitParams GetWidgetInitParams(aura::Window* parent) {
|
||||
views::Widget::InitParams result;
|
||||
result.type = views::Widget::InitParams::TYPE_WINDOW_FRAMELESS;
|
||||
result.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET;
|
||||
views::Widget::InitParams result(
|
||||
views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET,
|
||||
views::Widget::InitParams::TYPE_WINDOW_FRAMELESS);
|
||||
result.name = "CurtainOverlayWidget";
|
||||
result.opacity = views::Widget::InitParams::WindowOpacity::kOpaque;
|
||||
result.parent = parent;
|
||||
|
@ -139,15 +139,15 @@ gfx::Point GetPillOrigin(const gfx::Size& pill_size,
|
||||
|
||||
views::Widget::InitParams CreateInitParams(int64_t display_id,
|
||||
const std::string& target_name) {
|
||||
views::Widget::InitParams params(views::Widget::InitParams::TYPE_POPUP);
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET,
|
||||
views::Widget::InitParams::TYPE_POPUP);
|
||||
|
||||
aura::Window* root =
|
||||
Shell::GetRootWindowControllerWithDisplayId(display_id)->GetRootWindow();
|
||||
|
||||
params.parent = Shell::GetContainer(root, kShellWindowId_OverlayContainer);
|
||||
params.opacity = views::Widget::InitParams::WindowOpacity::kTranslucent;
|
||||
params.ownership =
|
||||
views::Widget::InitParams::Ownership::WIDGET_OWNS_NATIVE_WIDGET;
|
||||
params.activatable = views::Widget::InitParams::Activatable::kNo;
|
||||
params.accept_events = false;
|
||||
params.name = target_name;
|
||||
|
@ -31,8 +31,8 @@ std::unique_ptr<views::Widget> CreateHighlightWidget(
|
||||
DCHECK_NE(display_id, display::kInvalidDisplayId);
|
||||
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET,
|
||||
views::Widget::InitParams::TYPE_WINDOW_FRAMELESS);
|
||||
params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET;
|
||||
params.activatable = views::Widget::InitParams::Activatable::kNo;
|
||||
params.accept_events = false;
|
||||
params.opacity = views::Widget::InitParams::WindowOpacity::kTranslucent;
|
||||
|
@ -48,9 +48,9 @@ views::Widget* CreateTestWidgetWithParent(views::Widget::InitParams::Type type,
|
||||
gfx::NativeView parent,
|
||||
const gfx::Rect& bounds,
|
||||
bool child) {
|
||||
views::Widget::InitParams params(type);
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET, type);
|
||||
params.delegate = nullptr;
|
||||
params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET;
|
||||
params.parent = parent;
|
||||
params.bounds = bounds;
|
||||
params.child = child;
|
||||
|
@ -26,10 +26,11 @@ std::unique_ptr<views::Widget> CreateWidget(const gfx::Rect& bounds) {
|
||||
display::Display display =
|
||||
display::Screen::GetScreen()->GetDisplayMatching(bounds);
|
||||
auto widget = std::make_unique<views::Widget>();
|
||||
views::Widget::InitParams params(views::Widget::InitParams::TYPE_POPUP);
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET,
|
||||
views::Widget::InitParams::TYPE_POPUP);
|
||||
params.context = Shell::GetRootWindowControllerWithDisplayId(display.id())
|
||||
->GetRootWindow();
|
||||
params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET;
|
||||
params.opacity = views::Widget::InitParams::WindowOpacity::kTranslucent;
|
||||
params.z_order = ui::ZOrderLevel::kFloatingUIElement;
|
||||
params.layer_type = ui::LAYER_SOLID_COLOR;
|
||||
|
@ -86,8 +86,9 @@ constexpr float kHandIconHorizontalOffsetFactor = 7.f / 32.f;
|
||||
// Returns the initialization params for the widget that contains the touch
|
||||
// calibrator view.
|
||||
views::Widget::InitParams GetWidgetParams(aura::Window* root_window) {
|
||||
views::Widget::InitParams params;
|
||||
params.type = views::Widget::InitParams::TYPE_WINDOW_FRAMELESS;
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::NATIVE_WIDGET_OWNS_WIDGET,
|
||||
views::Widget::InitParams::TYPE_WINDOW_FRAMELESS);
|
||||
params.name = kWidgetName;
|
||||
params.z_order = ui::ZOrderLevel::kFloatingWindow;
|
||||
params.accept_events = true;
|
||||
|
@ -528,9 +528,9 @@ class DragDropControllerTest : public AshTestBase {
|
||||
protected:
|
||||
std::unique_ptr<views::Widget> CreateFramelessWidget() {
|
||||
std::unique_ptr<views::Widget> widget = std::make_unique<views::Widget>();
|
||||
views::Widget::InitParams params;
|
||||
params.type = views::Widget::InitParams::TYPE_WINDOW_FRAMELESS;
|
||||
params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET;
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET,
|
||||
views::Widget::InitParams::TYPE_WINDOW_FRAMELESS);
|
||||
params.context = GetContext();
|
||||
widget->Init(std::move(params));
|
||||
widget->Show();
|
||||
|
@ -65,8 +65,9 @@ views::Widget* CreateWidget(std::unique_ptr<views::View> contents_view,
|
||||
const gfx::Rect& bounds,
|
||||
aura::Window* context) {
|
||||
views::Widget* widget = new views::Widget;
|
||||
views::Widget::InitParams params;
|
||||
params.type = views::Widget::InitParams::TYPE_WINDOW_FRAMELESS;
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::NATIVE_WIDGET_OWNS_WIDGET,
|
||||
views::Widget::InitParams::TYPE_WINDOW_FRAMELESS);
|
||||
params.accept_events = true;
|
||||
params.bounds = bounds;
|
||||
params.context = context;
|
||||
|
@ -31,13 +31,13 @@ DragImageView::~DragImageView() = default;
|
||||
std::unique_ptr<views::Widget> DragImageView::Create(
|
||||
aura::Window* root_window,
|
||||
ui::mojom::DragEventSource event_source) {
|
||||
views::Widget::InitParams params;
|
||||
params.type = views::Widget::InitParams::TYPE_TOOLTIP;
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET,
|
||||
views::Widget::InitParams::TYPE_TOOLTIP);
|
||||
params.name = "DragWidget";
|
||||
params.accept_events = false;
|
||||
params.shadow_type = views::Widget::InitParams::ShadowType::kNone;
|
||||
params.opacity = views::Widget::InitParams::WindowOpacity::kTranslucent;
|
||||
params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET;
|
||||
params.parent =
|
||||
root_window->GetChildById(kShellWindowId_DragImageAndTooltipContainer);
|
||||
if (!params.parent)
|
||||
|
@ -19,8 +19,9 @@ FastInkView::~FastInkView() = default;
|
||||
views::UniqueWidgetPtr FastInkView::CreateWidgetWithContents(
|
||||
std::unique_ptr<FastInkView> fast_ink_view,
|
||||
aura::Window* container) {
|
||||
views::Widget::InitParams params;
|
||||
params.type = views::Widget::InitParams::TYPE_WINDOW_FRAMELESS;
|
||||
views::Widget::InitParams params(
|
||||
views::Widget::InitParams::NATIVE_WIDGET_OWNS_WIDGET,
|
||||
views::Widget::InitParams::TYPE_WINDOW_FRAMELESS);
|
||||
params.name = "FastInkOverlay";
|
||||
params.accept_events = false;
|
||||
params.activatable = views::Widget::InitParams::Activatable::kNo;
|
||||
|
Reference in New Issue
Block a user