Commit 1334248c authored by Tommy Steimel's avatar Tommy Steimel Committed by Commit Bot

GMC: Remove uses of set_owned_by_client

This CL removes uses of set_owned_by_client in the Global Media
Controls code.

Bug: 1009708
Change-Id: I08a0c49310b356a225a92f5522189f3e69621524
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1885499Reviewed-by: default avatarScott Violet <sky@chromium.org>
Commit-Queue: Tommy Steimel <steimel@chromium.org>
Cr-Commit-Position: refs/heads/master@{#710499}
parent 65a3d0e7
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
#include "ash/media/media_notification_container_impl.h" #include "ash/media/media_notification_container_impl.h"
#include "components/media_message_center/media_notification_view.h"
#include "ui/message_center/message_center.h" #include "ui/message_center/message_center.h"
#include "ui/message_center/public/cpp/message_center_constants.h" #include "ui/message_center/public/cpp/message_center_constants.h"
#include "ui/message_center/views/notification_control_buttons_view.h" #include "ui/message_center/views/notification_control_buttons_view.h"
...@@ -16,25 +17,19 @@ namespace ash { ...@@ -16,25 +17,19 @@ namespace ash {
MediaNotificationContainerImpl::MediaNotificationContainerImpl( MediaNotificationContainerImpl::MediaNotificationContainerImpl(
const message_center::Notification& notification, const message_center::Notification& notification,
base::WeakPtr<media_message_center::MediaNotificationItem> item) base::WeakPtr<media_message_center::MediaNotificationItem> item)
: message_center::MessageView(notification), : message_center::MessageView(notification) {
control_buttons_view_(
std::make_unique<message_center::NotificationControlButtonsView>(
this)),
view_(
this,
std::move(item),
control_buttons_view_.get(),
message_center::MessageCenter::Get()->GetSystemNotificationAppName(),
message_center::kNotificationWidth,
/*should_show_icon=*/true) {
SetLayoutManager(std::make_unique<views::FillLayout>()); SetLayoutManager(std::make_unique<views::FillLayout>());
// Since we own these, we don't want Views to destroy them when their parent auto control_buttons_view =
// is destroyed. std::make_unique<message_center::NotificationControlButtonsView>(this);
control_buttons_view_->set_owned_by_client(); control_buttons_view_ = control_buttons_view.get();
view_.set_owned_by_client();
AddChildView(&view_); auto view = std::make_unique<media_message_center::MediaNotificationView>(
this, std::move(item), std::move(control_buttons_view),
message_center::MessageCenter::Get()->GetSystemNotificationAppName(),
message_center::kNotificationWidth,
/*should_show_icon=*/true);
view_ = AddChildView(std::move(view));
SetBackground(views::CreateSolidBackground(SK_ColorTRANSPARENT)); SetBackground(views::CreateSolidBackground(SK_ColorTRANSPARENT));
} }
...@@ -54,17 +49,17 @@ void MediaNotificationContainerImpl::UpdateWithNotification( ...@@ -54,17 +49,17 @@ void MediaNotificationContainerImpl::UpdateWithNotification(
message_center::NotificationControlButtonsView* message_center::NotificationControlButtonsView*
MediaNotificationContainerImpl::GetControlButtonsView() const { MediaNotificationContainerImpl::GetControlButtonsView() const {
return control_buttons_view_.get(); return control_buttons_view_;
} }
void MediaNotificationContainerImpl::SetExpanded(bool expanded) { void MediaNotificationContainerImpl::SetExpanded(bool expanded) {
view_.SetExpanded(expanded); view_->SetExpanded(expanded);
} }
void MediaNotificationContainerImpl::UpdateCornerRadius(int top_radius, void MediaNotificationContainerImpl::UpdateCornerRadius(int top_radius,
int bottom_radius) { int bottom_radius) {
MessageView::SetCornerRadius(top_radius, bottom_radius); MessageView::SetCornerRadius(top_radius, bottom_radius);
view_.UpdateCornerRadius(top_radius, bottom_radius); view_->UpdateCornerRadius(top_radius, bottom_radius);
} }
void MediaNotificationContainerImpl::OnExpanded(bool expanded) { void MediaNotificationContainerImpl::OnExpanded(bool expanded) {
......
...@@ -8,11 +8,11 @@ ...@@ -8,11 +8,11 @@
#include "ash/ash_export.h" #include "ash/ash_export.h"
#include "base/containers/flat_set.h" #include "base/containers/flat_set.h"
#include "components/media_message_center/media_notification_container.h" #include "components/media_message_center/media_notification_container.h"
#include "components/media_message_center/media_notification_view.h"
#include "ui/message_center/views/message_view.h" #include "ui/message_center/views/message_view.h"
namespace media_message_center { namespace media_message_center {
class MediaNotificationItem; class MediaNotificationItem;
class MediaNotificationView;
} // namespace media_message_center } // namespace media_message_center
namespace ash { namespace ash {
...@@ -57,10 +57,10 @@ class ASH_EXPORT MediaNotificationContainerImpl ...@@ -57,10 +57,10 @@ class ASH_EXPORT MediaNotificationContainerImpl
const message_center::Notification& notification); const message_center::Notification& notification);
// View containing close and settings buttons. // View containing close and settings buttons.
std::unique_ptr<message_center::NotificationControlButtonsView> message_center::NotificationControlButtonsView* control_buttons_view_ =
control_buttons_view_; nullptr;
media_message_center::MediaNotificationView view_; media_message_center::MediaNotificationView* view_ = nullptr;
DISALLOW_COPY_AND_ASSIGN(MediaNotificationContainerImpl); DISALLOW_COPY_AND_ASSIGN(MediaNotificationContainerImpl);
}; };
......
...@@ -68,26 +68,25 @@ MediaNotificationContainerImplView::MediaNotificationContainerImplView( ...@@ -68,26 +68,25 @@ MediaNotificationContainerImplView::MediaNotificationContainerImplView(
SetTooltipText( SetTooltipText(
l10n_util::GetStringUTF16(IDS_GLOBAL_MEDIA_CONTROLS_BACK_TO_TAB)); l10n_util::GetStringUTF16(IDS_GLOBAL_MEDIA_CONTROLS_BACK_TO_TAB));
swipeable_container_ = std::make_unique<views::View>(); auto swipeable_container = std::make_unique<views::View>();
swipeable_container_->set_owned_by_client(); swipeable_container->SetLayoutManager(std::make_unique<views::FillLayout>());
swipeable_container_->SetLayoutManager(std::make_unique<views::FillLayout>()); swipeable_container->SetPaintToLayer();
swipeable_container_->SetPaintToLayer(); swipeable_container->layer()->SetFillsBoundsOpaquely(false);
swipeable_container_->layer()->SetFillsBoundsOpaquely(false); swipeable_container_ = AddChildView(std::move(swipeable_container));
AddChildView(swipeable_container_.get());
auto dismiss_button_placeholder = std::make_unique<views::View>();
dismiss_button_placeholder_ = std::make_unique<views::View>(); dismiss_button_placeholder->SetPreferredSize(kDismissButtonSize);
dismiss_button_placeholder_->set_owned_by_client(); dismiss_button_placeholder->SetLayoutManager(
dismiss_button_placeholder_->SetPreferredSize(kDismissButtonSize);
dismiss_button_placeholder_->SetLayoutManager(
std::make_unique<views::FillLayout>()); std::make_unique<views::FillLayout>());
dismiss_button_placeholder_ = dismiss_button_placeholder.get();
dismiss_button_container_ = std::make_unique<views::View>(); auto dismiss_button_container = std::make_unique<views::View>();
dismiss_button_container_->set_owned_by_client(); dismiss_button_container->SetPreferredSize(kDismissButtonSize);
dismiss_button_container_->SetPreferredSize(kDismissButtonSize); dismiss_button_container->SetLayoutManager(
dismiss_button_container_->SetLayoutManager(
std::make_unique<views::FillLayout>()); std::make_unique<views::FillLayout>());
dismiss_button_container_->SetVisible(false); dismiss_button_container->SetVisible(false);
dismiss_button_placeholder_->AddChildView(dismiss_button_container_.get()); dismiss_button_container_ = dismiss_button_placeholder_->AddChildView(
std::move(dismiss_button_container));
auto dismiss_button = std::make_unique<DismissButton>(this); auto dismiss_button = std::make_unique<DismissButton>(this);
dismiss_button->SetPreferredSize(kDismissButtonSize); dismiss_button->SetPreferredSize(kDismissButtonSize);
...@@ -98,13 +97,12 @@ MediaNotificationContainerImplView::MediaNotificationContainerImplView( ...@@ -98,13 +97,12 @@ MediaNotificationContainerImplView::MediaNotificationContainerImplView(
dismiss_button_container_->AddChildView(std::move(dismiss_button)); dismiss_button_container_->AddChildView(std::move(dismiss_button));
UpdateDismissButtonIcon(); UpdateDismissButtonIcon();
view_ = std::make_unique<media_message_center::MediaNotificationView>( auto view = std::make_unique<media_message_center::MediaNotificationView>(
this, std::move(item), dismiss_button_placeholder_.get(), this, std::move(item), std::move(dismiss_button_placeholder),
base::string16(), kWidth, /*should_show_icon=*/false); base::string16(), kWidth, /*should_show_icon=*/false);
view_->set_owned_by_client(); view_ = swipeable_container_->AddChildView(std::move(view));
ForceExpandedState();
swipeable_container_->AddChildView(view_.get()); ForceExpandedState();
slide_out_controller_ = slide_out_controller_ =
std::make_unique<views::SlideOutController>(this, this); std::make_unique<views::SlideOutController>(this, this);
......
...@@ -81,7 +81,7 @@ class MediaNotificationContainerImplView ...@@ -81,7 +81,7 @@ class MediaNotificationContainerImplView
views::ImageButton* GetDismissButtonForTesting(); views::ImageButton* GetDismissButtonForTesting();
media_message_center::MediaNotificationView* view_for_testing() { media_message_center::MediaNotificationView* view_for_testing() {
return view_.get(); return view_;
} }
private: private:
...@@ -99,19 +99,19 @@ class MediaNotificationContainerImplView ...@@ -99,19 +99,19 @@ class MediaNotificationContainerImplView
void ForceExpandedState(); void ForceExpandedState();
const std::string id_; const std::string id_;
std::unique_ptr<views::View> swipeable_container_; views::View* swipeable_container_ = nullptr;
// Always "visible" so that it reserves space in the header so that the // Always "visible" so that it reserves space in the header so that the
// dismiss button can appear without forcing things to shift. // dismiss button can appear without forcing things to shift.
std::unique_ptr<views::View> dismiss_button_placeholder_; views::View* dismiss_button_placeholder_ = nullptr;
// Shows the colored circle background behind the dismiss button to give it // Shows the colored circle background behind the dismiss button to give it
// proper contrast against the artwork. The background can't be on the dismiss // proper contrast against the artwork. The background can't be on the dismiss
// button itself because it messes up the ink drop. // button itself because it messes up the ink drop.
std::unique_ptr<views::View> dismiss_button_container_; views::View* dismiss_button_container_ = nullptr;
DismissButton* dismiss_button_; DismissButton* dismiss_button_ = nullptr;
std::unique_ptr<media_message_center::MediaNotificationView> view_; media_message_center::MediaNotificationView* view_ = nullptr;
SkColor foreground_color_; SkColor foreground_color_;
SkColor background_color_; SkColor background_color_;
......
...@@ -99,13 +99,12 @@ const char MediaNotificationView::kMetadataHistogramName[] = ...@@ -99,13 +99,12 @@ const char MediaNotificationView::kMetadataHistogramName[] =
MediaNotificationView::MediaNotificationView( MediaNotificationView::MediaNotificationView(
MediaNotificationContainer* container, MediaNotificationContainer* container,
base::WeakPtr<MediaNotificationItem> item, base::WeakPtr<MediaNotificationItem> item,
views::View* header_row_controls_view, std::unique_ptr<views::View> header_row_controls_view,
const base::string16& default_app_name, const base::string16& default_app_name,
int notification_width, int notification_width,
bool should_show_icon) bool should_show_icon)
: container_(container), : container_(container),
item_(std::move(item)), item_(std::move(item)),
header_row_controls_view_(header_row_controls_view),
default_app_name_(default_app_name), default_app_name_(default_app_name),
notification_width_(notification_width) { notification_width_(notification_width) {
DCHECK(container_); DCHECK(container_);
...@@ -116,8 +115,10 @@ MediaNotificationView::MediaNotificationView( ...@@ -116,8 +115,10 @@ MediaNotificationView::MediaNotificationView(
auto header_row = auto header_row =
std::make_unique<message_center::NotificationHeaderView>(this); std::make_unique<message_center::NotificationHeaderView>(this);
if (header_row_controls_view_) if (header_row_controls_view) {
header_row->AddChildView(header_row_controls_view_); header_row_controls_view_ =
header_row->AddChildView(std::move(header_row_controls_view));
}
header_row->SetAppName(default_app_name_); header_row->SetAppName(default_app_name_);
......
...@@ -64,7 +64,7 @@ class COMPONENT_EXPORT(MEDIA_MESSAGE_CENTER) MediaNotificationView ...@@ -64,7 +64,7 @@ class COMPONENT_EXPORT(MEDIA_MESSAGE_CENTER) MediaNotificationView
MediaNotificationView(MediaNotificationContainer* container, MediaNotificationView(MediaNotificationContainer* container,
base::WeakPtr<MediaNotificationItem> item, base::WeakPtr<MediaNotificationItem> item,
views::View* header_row_controls_view, std::unique_ptr<views::View> header_row_controls_view,
const base::string16& default_app_name, const base::string16& default_app_name,
int notification_width, int notification_width,
bool should_show_icon); bool should_show_icon);
...@@ -124,7 +124,7 @@ class COMPONENT_EXPORT(MEDIA_MESSAGE_CENTER) MediaNotificationView ...@@ -124,7 +124,7 @@ class COMPONENT_EXPORT(MEDIA_MESSAGE_CENTER) MediaNotificationView
// Optional View that is put into the header row. E.g. in Ash we show // Optional View that is put into the header row. E.g. in Ash we show
// notification control buttons. // notification control buttons.
views::View* header_row_controls_view_; views::View* header_row_controls_view_ = nullptr;
// String to set as the app name of the header when there is no source title. // String to set as the app name of the header when there is no source title.
base::string16 default_app_name_; base::string16 default_app_name_;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment