Fix FullScreen crash in Webapp
[platform/framework/web/chromium-efl.git] / ash / shell_observer.h
1 // Copyright 2012 The Chromium Authors
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_SHELL_OBSERVER_H_
6 #define ASH_SHELL_OBSERVER_H_
7
8 #include "ash/ash_export.h"
9 #include "ash/login_status.h"
10 #include "ash/public/cpp/shelf_types.h"
11
12 namespace aura {
13 class Window;
14 }
15
16 namespace ash {
17
18 class ASH_EXPORT ShellObserver {
19  public:
20   // Called when a casting session is started or stopped.
21   virtual void OnCastingSessionStartedOrStopped(bool started) {}
22
23   // Invoked after a non-primary root window is created.
24   virtual void OnRootWindowAdded(aura::Window* root_window) {}
25
26   // Invoked when a root window is about to be shutdown.
27   virtual void OnRootWindowWillShutdown(aura::Window* root_window) {}
28
29   // Invoked when the shelf alignment in |root_window| is changed.
30   virtual void OnShelfAlignmentChanged(aura::Window* root_window,
31                                        ShelfAlignment old_alignment) {}
32
33   // Invoked when user work area insets (accessibility panel, docked magnifier,
34   // keyboard) in |root_window| changed.
35   // This notification is not fired when shelf bounds changed.
36   virtual void OnUserWorkAreaInsetsChanged(aura::Window* root_window) {}
37
38   // Invoked when entering or exiting fullscreen mode in |container|.
39   // |container| is always the active desk container.
40   virtual void OnFullscreenStateChanged(bool is_fullscreen,
41                                         aura::Window* container) {}
42
43   // Invoked when |pinned_window| enter or exit pinned mode.
44   virtual void OnPinnedStateChanged(aura::Window* pinned_window) {}
45
46   virtual void OnDisplayForNewWindowsChanged() {}
47
48   // Called when dictation is activated.
49   virtual void OnDictationStarted() {}
50
51   // Called when dicatation is ended.
52   virtual void OnDictationEnded() {}
53
54   // Called at the end of Shell::Init.
55   virtual void OnShellInitialized() {}
56
57   // Called at the beginning of ~Shell.
58   virtual void OnShellDestroying() {}
59
60   // Called near the end of ~Shell. Shell::Get() still returns the Shell, but
61   // most of Shell's state has been deleted.
62   virtual void OnShellDestroyed() {}
63
64  protected:
65   virtual ~ShellObserver() {}
66 };
67
68 }  // namespace ash
69
70 #endif  // ASH_SHELL_OBSERVER_H_