Index: athena/screen/public/screen_manager.h |
diff --git a/athena/screen/public/screen_manager.h b/athena/screen/public/screen_manager.h |
index e2637820ece499b8b7fda62bc0caa57363c268b6..11dda1f7ad87a571121a4ea91935d432d858fea4 100644 |
--- a/athena/screen/public/screen_manager.h |
+++ b/athena/screen/public/screen_manager.h |
@@ -29,11 +29,37 @@ class ATHENA_EXPORT ScreenManager { |
// True if the container can activate its child window. |
bool can_activate_children; |
- // True if the container will grab all of input events. |
- bool grab_inputs; |
+ // True if the container will block evnets from containers behind it. |
+ bool block_events; |
// Defines the z_order priority of the container. |
int z_order_priority; |
+ |
+ // True if this container should be used as a default parent. |
+ bool default_parent; |
+ |
+ // The container priority used to open modal dialog window |
+ // created with this container as a transient parent (Note: A modal window |
+ // should |
+ // use a trnasient parent, not a direct parent, or no transient parent.) |
+ // |
+ // Default is -1, and it will fallback to the container behind this |
+ // container, |
+ // that has the modal container proiroty. |
+ // |
+ // The modal container for modal window is selected as follows. |
+ // 1) a window must be created with |aura::client::kModalKey| property |
+ // without explicit parent set. |
+ // 2.a) If aura::client::kAlwaysOnTopKey is NOT set, it uses the stand flow |
+ // described above. (fallback to containers behind this). |
+ // 2.b) If aura::client::kAlwaysOnTopKey is set, it searches the top most |
+ // container which has |modal_container_priority| != -1. |
+ // 3) Look for the container with |modal_container_priority|, and create |
+ // one if it doesn't exist. |
+ // |
+ // Created modal container will self destruct if last modal window |
+ // is deleted. |
+ int modal_container_priority; |
}; |
// Creates, returns and deletes the singleton object of the ScreenManager |
@@ -44,11 +70,6 @@ class ATHENA_EXPORT ScreenManager { |
virtual ~ScreenManager() {} |
- // Creates the container window that is used when creating a normal |
- // widget without specific parent. |
- virtual aura::Window* CreateDefaultContainer( |
- const ContainerParams& params) = 0; |
- |
// Creates the container window on the screen. |
virtual aura::Window* CreateContainer(const ContainerParams& params) = 0; |