Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(609)

Unified Diff: athena/screen/public/screen_manager.h

Issue 662763002: Support modal windows (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git/+/master
Patch Set: Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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..8d6a3636bb1a7d54e7c0dc55f55d4abff60368a1 100644
--- a/athena/screen/public/screen_manager.h
+++ b/athena/screen/public/screen_manager.h
@@ -29,11 +29,34 @@ 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 from this container. 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 set, it searches the top most
+ // container which has |modal_container_priority| != -1.
+ // 2.b) If aura::client::kAlwaysOnTopKey is NOT set, it searches the
+ // container that has |modal_container_priority| != -1 downwards,
+ // starting from this container.
Jun Mukai 2014/10/17 17:29:54 I am not sure starting from which container. Can
oshima 2014/10/17 18:20:04 Updated the comment.
+ // 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 +67,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;

Powered by Google App Engine
This is Rietveld 408576698