| Index: ash/mus/frame/README.md
|
| diff --git a/ash/mus/frame/README.md b/ash/mus/frame/README.md
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..a756bc1444ce3ff8bb7337f1747c11ba35c256e0
|
| --- /dev/null
|
| +++ b/ash/mus/frame/README.md
|
| @@ -0,0 +1,30 @@
|
| +This directory contains code needed for rendering and interacting with
|
| +frame decorations in mash.
|
| +
|
| +### Immersive fullscreen
|
| +
|
| +Immersive fullscreen is a specialized fullscreen mode. In it the user
|
| +can move the mouse to the top of the screen and the window header
|
| +will slide down on top of the fullscreen window contents.
|
| +
|
| +There are two distinct ways for immersive mode to work in mash:
|
| +
|
| +1. Mash handles it all. This is the default. In this mode a separate
|
| +ui::Window is created for the reveal of the title area. HeaderView is used to
|
| +render the title area of the reveal in the separate window. The client
|
| +does nothing special here.
|
| +
|
| +2. The client takes control of it all (as happens in chrome). To
|
| +enable this the client sets kDisableImmersive_Property on the window. In this
|
| +mode the client creates a separate window for the reveal (similar to
|
| +1). The reveal window is a child of the window going into immersive
|
| +mode. Mash knows to paint window decorations to the reveal window by way of
|
| +the property kRendererParentTitleArea_Property set on the parent
|
| +window. The client runs all the immersive logic, including positioning
|
| +of the reveal window.
|
| +
|
| +In both cases DetachedTitleAreaRenderer and HeaderView is used to
|
| +render the title area. The difference is in the first case mash
|
| +creates the window, in the second case the child does (and tells mash
|
| +about it). And of course in the second case the client runs all the
|
| +immersive logic.
|
|
|