Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(361)

Unified Diff: ui/arc/notification/arc_custom_notification_view.h

Issue 2820073002: Update the background color of ARC notifications when notification settings is opened. (Closed)
Patch Set: add comments Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ui/arc/notification/arc_custom_notification_view.h
diff --git a/ui/arc/notification/arc_custom_notification_view.h b/ui/arc/notification/arc_custom_notification_view.h
index 2ecb192bf21ef96f9e9bc0174adbc18c9231a98c..0e58d7e48aa683de03a34692e2b42f728408369b 100644
--- a/ui/arc/notification/arc_custom_notification_view.h
+++ b/ui/arc/notification/arc_custom_notification_view.h
@@ -12,6 +12,7 @@
#include "ui/arc/notification/arc_custom_notification_item.h"
#include "ui/arc/notification/arc_notification_surface_manager.h"
#include "ui/aura/window_observer.h"
+#include "ui/gfx/animation/animation_delegate.h"
#include "ui/message_center/views/custom_notification_content_view_delegate.h"
#include "ui/message_center/views/padded_button.h"
#include "ui/views/controls/button/button.h"
@@ -21,6 +22,10 @@ namespace exo {
class NotificationSurface;
}
+namespace gfx {
+class LinearAnimation;
+}
+
namespace views {
class FocusTraversable;
class Widget;
@@ -33,7 +38,8 @@ class ArcCustomNotificationView
public views::ButtonListener,
public aura::WindowObserver,
public ArcCustomNotificationItem::Observer,
- public ArcNotificationSurfaceManager::Observer {
+ public ArcNotificationSurfaceManager::Observer,
+ public gfx::AnimationDelegate {
public:
explicit ArcCustomNotificationView(ArcCustomNotificationItem* item);
~ArcCustomNotificationView() override;
@@ -72,6 +78,8 @@ class ArcCustomNotificationView
void UpdateSnapshot();
void AttachSurface();
void ActivateToast();
+ void StartControlButtonsColorAnimation();
+ bool ShouldUpdateControlButtonsColor() const;
// views::NativeViewHost
void ViewHierarchyChanged(
@@ -104,6 +112,10 @@ class ArcCustomNotificationView
void OnNotificationSurfaceAdded(exo::NotificationSurface* surface) override;
void OnNotificationSurfaceRemoved(exo::NotificationSurface* surface) override;
+ // AnimationDelegate
+ void AnimationEnded(const gfx::Animation* animation) override;
+ void AnimationProgressed(const gfx::Animation* animation) override;
+
ArcCustomNotificationItem* item_ = nullptr;
exo::NotificationSurface* surface_ = nullptr;
@@ -133,6 +145,8 @@ class ArcCustomNotificationView
// Protects from call loops between Layout and OnWindowBoundsChanged.
bool in_layout_ = false;
+ std::unique_ptr<gfx::LinearAnimation> control_button_color_animation_;
+
DISALLOW_COPY_AND_ASSIGN(ArcCustomNotificationView);
};
« no previous file with comments | « ui/arc/notification/arc_custom_notification_item.cc ('k') | ui/arc/notification/arc_custom_notification_view.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698