OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef ATHENA_ACTIVITY_PUBLIC_ACTIVITY_H_ | 5 #ifndef ATHENA_ACTIVITY_PUBLIC_ACTIVITY_H_ |
6 #define ATHENA_ACTIVITY_PUBLIC_ACTIVITY_H_ | 6 #define ATHENA_ACTIVITY_PUBLIC_ACTIVITY_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "athena/athena_export.h" | 10 #include "athena/athena_export.h" |
11 | 11 |
| 12 namespace aura { |
| 13 class Window; |
| 14 } |
| 15 |
12 namespace athena { | 16 namespace athena { |
13 | 17 |
14 class ActivityViewModel; | 18 class ActivityViewModel; |
15 | 19 |
16 // This class is a high level abstraction of an activity (which could be either | 20 // This class is a high level abstraction of an activity (which could be either |
17 // a web page or a V1/V2 app/extension). Through this class the activity can | 21 // a web page or a V1/V2 app/extension). Through this class the activity can |
18 // be controlled (e.g. loaded / unloaded). | 22 // be controlled (e.g. loaded / unloaded). |
19 // An Activity gets created with state |ACTIVITY_UNLOADED|. | 23 // An Activity gets created with state |ACTIVITY_UNLOADED|. |
20 // Requesting |ACTIVITY_VISIBLE| or |ACTIVITY_INVISIBLE| will load it. | 24 // Requesting |ACTIVITY_VISIBLE| or |ACTIVITY_INVISIBLE| will load it. |
21 // Once an activity was |ACTIVITY_INVISIBLE| for a while it can be transitioned | 25 // Once an activity was |ACTIVITY_INVISIBLE| for a while it can be transitioned |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
65 virtual void SetCurrentState(ActivityState state) = 0; | 69 virtual void SetCurrentState(ActivityState state) = 0; |
66 | 70 |
67 // Returns the current state of the activity. | 71 // Returns the current state of the activity. |
68 virtual ActivityState GetCurrentState() = 0; | 72 virtual ActivityState GetCurrentState() = 0; |
69 | 73 |
70 // Returns if the activity is visible or not. | 74 // Returns if the activity is visible or not. |
71 virtual bool IsVisible() = 0; | 75 virtual bool IsVisible() = 0; |
72 | 76 |
73 // Returns the current media state. | 77 // Returns the current media state. |
74 virtual ActivityMediaState GetMediaState() = 0; | 78 virtual ActivityMediaState GetMediaState() = 0; |
| 79 |
| 80 // Returns the window for the activity. This can be used to determine the |
| 81 // stacking order of this activity against others. |
| 82 virtual aura::Window* GetWindow() = 0; |
75 }; | 83 }; |
76 | 84 |
77 } // namespace athena | 85 } // namespace athena |
78 | 86 |
79 #endif // ATHENA_ACTIVITY_PUBLIC_ACTIVITY_H_ | 87 #endif // ATHENA_ACTIVITY_PUBLIC_ACTIVITY_H_ |
OLD | NEW |