- add sources.
[platform/framework/web/crosswalk.git] / src / ash / shelf / shelf_layout_manager_observer.h
1 // Copyright 2013 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_SHELF_SHELF_LAYOUT_MANAGER_OBSERVER_H_
6 #define ASH_SHELF_SHELF_LAYOUT_MANAGER_OBSERVER_H_
7
8 #include "ash/ash_export.h"
9 #include "ash/shelf/shelf_types.h"
10
11 namespace aura {
12 class Window;
13 }
14
15 namespace ash {
16
17 class ASH_EXPORT ShelfLayoutManagerObserver {
18  public:
19   virtual ~ShelfLayoutManagerObserver() {}
20
21   // Called when the target ShelfLayoutManager will be deleted.
22   virtual void WillDeleteShelf() {}
23
24   // Called when the visibility change is scheduled.
25   virtual void WillChangeVisibilityState(ShelfVisibilityState new_state) {}
26
27   // Called when the auto hide state is changed.
28   virtual void OnAutoHideStateChanged(ShelfAutoHideState new_state) {}
29
30   // Called when the auto hide behavior is changed.
31   virtual void OnAutoHideBehaviorChanged(aura::Window* root_window,
32                                          ShelfAutoHideBehavior new_behavior) {}
33 };
34
35 }  // namespace ash
36
37 #endif  // ASH_SHELF_SHELF_LAYOUT_MANAGER_OBSERVER_H_