1 // Copyright 2020 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef ASH_AMBIENT_UI_AMBIENT_VIEW_DELEGATE_H_ 6 #define ASH_AMBIENT_UI_AMBIENT_VIEW_DELEGATE_H_ 7 8 #include "ash/ash_export.h" 9 #include "base/observer_list_types.h" 10 11 namespace ash { 12 13 class AmbientBackendModel; 14 15 class ASH_EXPORT AmbientViewDelegateObserver : public base::CheckedObserver { 16 public: 17 // Invoked when the photo transition animation completed. 18 virtual void OnPhotoTransitionAnimationCompleted() = 0; 19 }; 20 21 class ASH_EXPORT AmbientViewDelegate { 22 public: 23 virtual ~AmbientViewDelegate() = default; 24 25 // Returns the model store stores all the information we get from the backdrop 26 // server to render the photo frame and the glanceable weather information on 27 // Ambient Mode. 28 virtual AmbientBackendModel* GetAmbientBackendModel() = 0; 29 30 // Invoked when the photo transition animation completed. 31 virtual void OnPhotoTransitionAnimationCompleted() = 0; 32 }; 33 34 } // namespace ash 35 36 #endif // ASH_AMBIENT_UI_AMBIENT_VIEW_DELEGATE_H_ 37