1b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved. 2b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 3b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)// found in the LICENSE file. 4b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) 5b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)#ifndef ASH_SHELF_SHELF_LAYOUT_MANAGER_OBSERVER_H_ 6b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)#define ASH_SHELF_SHELF_LAYOUT_MANAGER_OBSERVER_H_ 7b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) 8b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)#include "ash/ash_export.h" 9a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#include "ash/shelf/background_animator.h" 10b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)#include "ash/shelf/shelf_types.h" 11b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) 127dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdochnamespace aura { 131e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)class Window; 147dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch} 157dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch 16b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)namespace ash { 17b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) 18b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)class ASH_EXPORT ShelfLayoutManagerObserver { 19b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) public: 20b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) virtual ~ShelfLayoutManagerObserver() {} 21b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) 22b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) // Called when the target ShelfLayoutManager will be deleted. 23b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) virtual void WillDeleteShelf() {} 24b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) 25b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) // Called when the visibility change is scheduled. 26b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) virtual void WillChangeVisibilityState(ShelfVisibilityState new_state) {} 27b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) 28b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) // Called when the auto hide state is changed. 29b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) virtual void OnAutoHideStateChanged(ShelfAutoHideState new_state) {} 30b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) 31b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) // Called when the auto hide behavior is changed. 321e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) virtual void OnAutoHideBehaviorChanged(aura::Window* root_window, 337dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch ShelfAutoHideBehavior new_behavior) {} 34a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 35a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) // Called when shelf background animation is started. 36a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) virtual void OnBackgroundUpdated( 37a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) ShelfBackgroundType background_type, 38a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) BackgroundAnimatorChangeType change_type) {} 39b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)}; 40b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) 41b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)} // namespace ash 42b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles) 43b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)#endif // ASH_SHELF_SHELF_LAYOUT_MANAGER_OBSERVER_H_ 44