summaryrefslogtreecommitdiffstats
path: root/ash/wm/stacking_controller.cc
Commit message (Collapse)AuthorAgeFilesLines
* Modal window in user session not blocks user adding screen.dzhioev@chromium.org2013-07-241-2/+1
| | | | | | | | | | | | | | | | Added IsUserSessionBlocked method indicating whether user session blocked by some overlying UI (it can be lock/login/user adding UI). Replaced IsScreenLocked() [|| IsActiveUserSessionStarted()] with IsUserSessionBlocked() in several places in order to keep focus and user input in locked container. BUG=none TEST=ash_unittests R=sky Review URL: https://chromiumcodereview.appspot.com/19945004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@213524 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup: move AlwaysOnTopController to RootWindowControlleroshima@chromium.org2013-07-021-16/+7
| | | | | | | | | | remove if (shelf_) as it should always be there. BUG=253991 Review URL: https://chromiumcodereview.appspot.com/18323011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209575 0039d316-1c4b-4281-b951-d872f2087c98
* Move DisplayLayout out from display_controller.hoshima@chromium.org2013-06-281-1/+0
| | | | | | | | | | | Remove unnecessary includes BUG=253991 R=jamescook@chromium.org Review URL: https://codereview.chromium.org/18080004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209143 0039d316-1c4b-4281-b951-d872f2087c98
* Fix crash when JS alert from background page appears during lock screendpolukhin@chromium.org2013-05-301-8/+8
| | | | | | | | | | | | + Added test that caused crash without changes in ash/wm/stacking_controller.cc + Changes in chrome/browser/ui/views/frame/browser_view.cc prevents stealing focus loop BUG=226141 TEST=ShellTest.CreateLockScreenModalWindow Review URL: https://chromiumcodereview.appspot.com/15690015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@203191 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 194589 "Revert 194578 "Add ash SessionStateDelegate""bartfab@google.com2013-04-171-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The CL turned out to be innocent, the bots turned green without the revert. > Revert 194578 "Add ash SessionStateDelegate" > > > Add ash SessionStateDelegate > > > > This CL refactors the ShellDelegate by adding a SessionStateDelegate to > > which methods dealing with the session state can be moved. This cleans up > > the huge ShellDelegate interface and paves the way for further Chrome OS > > multiprofile work which will need to add several new methods related to > > the session state. > > > > This CL is only the first step. Several other methods should also move to > > SessionStateDelegate but I do not want to overburden a single CL. > > > > BUG=None > > TEST=Manual and browser/unit tests > > > > TBR=sky (for c/b/idle_chromeos.cc and c/chrome_browser_ui.gypi) > > > > Review URL: https://codereview.chromium.org/14295008 > > TBR=bartfab@google.com > > Review URL: https://codereview.chromium.org/14200034 TBR=gavinp@chromium.org Review URL: https://codereview.chromium.org/14200038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@194602 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 194578 "Add ash SessionStateDelegate"gavinp@chromium.org2013-04-171-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | > Add ash SessionStateDelegate > > This CL refactors the ShellDelegate by adding a SessionStateDelegate to > which methods dealing with the session state can be moved. This cleans up > the huge ShellDelegate interface and paves the way for further Chrome OS > multiprofile work which will need to add several new methods related to > the session state. > > This CL is only the first step. Several other methods should also move to > SessionStateDelegate but I do not want to overburden a single CL. > > BUG=None > TEST=Manual and browser/unit tests > > TBR=sky (for c/b/idle_chromeos.cc and c/chrome_browser_ui.gypi) > > Review URL: https://codereview.chromium.org/14295008 TBR=bartfab@google.com Review URL: https://codereview.chromium.org/14200034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@194589 0039d316-1c4b-4281-b951-d872f2087c98
* Add ash SessionStateDelegatebartfab@google.com2013-04-171-3/+4
| | | | | | | | | | | | | | | | | | | | This CL refactors the ShellDelegate by adding a SessionStateDelegate to which methods dealing with the session state can be moved. This cleans up the huge ShellDelegate interface and paves the way for further Chrome OS multiprofile work which will need to add several new methods related to the session state. This CL is only the first step. Several other methods should also move to SessionStateDelegate but I do not want to overburden a single CL. BUG=None TEST=Manual and browser/unit tests TBR=sky (for c/b/idle_chromeos.cc and c/chrome_browser_ui.gypi) Review URL: https://codereview.chromium.org/14295008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@194578 0039d316-1c4b-4281-b951-d872f2087c98
* Always use transient parent container if window has a transient parent.flackr@chromium.org2013-03-021-3/+3
| | | | | | | | | | | | The overflow bubble has a transient parent but is not window modal. This resulted in the stacking controller putting it in the default container which is below many window types. This parents any window with a transient parent in the transient parent's container. BUG=166873 TEST=Open enough windows and panels to see an overflow arrow. Clicking on overflow arrow, overflow bubble is visible above panel windows. Review URL: https://chromiumcodereview.appspot.com/12361002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@185714 0039d316-1c4b-4281-b951-d872f2087c98
* Allow detaching and reattaching panels when dragged from/to launcher.flackr@chromium.org2013-02-201-2/+9
| | | | | | | | | | BUG=160646 TEST=PanelWindowResizerTest.PanelDetachReattach Review URL: https://chromiumcodereview.appspot.com/12281005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@183538 0039d316-1c4b-4281-b951-d872f2087c98
* re-re-land of https://codereview.chromium.org/11364053/scottmg@chromium.org2012-11-141-5/+3
| | | | | | | | | | | | | | | First attempt here: https://codereview.chromium.org/11364053/ : failed linux_chromeos_asan Second attempt here: http://codereview.chromium.org/11362216/ : collided with renames in http://crrev.com/167418 This cl is the same as the second attempt, with the namespaces and includes updated for file renames. TBR=ben@chromium.org BUG=128578 Review URL: https://chromiumcodereview.appspot.com/11377140 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@167547 0039d316-1c4b-4281-b951-d872f2087c98
* Use correct modal window container at login screennkostylev@chromium.org2012-11-131-3/+4
| | | | | | | | | | | | | * Added a way to configure login screen environment in tests Fixes regression after https://chromiumcodereview.appspot.com/11275187/ BUG=160563 TEST=RootWindowControllerTest.ModalContainerNotLoggedInLoggedIn Review URL: https://chromiumcodereview.appspot.com/11362223 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@167468 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 167431 - reland of https://codereview.chromium.org/11364053/scottmg@chromium.org2012-11-131-3/+5
| | | | | | | | | | | | | | | Two changes from that CL: - Don't remove per-RootWindow StackingClient (erg thought he probably needed it; if not I can remove it later in a separate CL) - Fix initialization in Shell::PlatformInitialize (wasn't initializing correctly in the CrOS case), diff between ps1 and ps2 in content/shell/shell_aura.cc TBR=ben@chromium.org BUG=128578 Review URL: https://codereview.chromium.org/11362216 TBR=scottmg@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@167439 0039d316-1c4b-4281-b951-d872f2087c98
* reland of https://codereview.chromium.org/11364053/scottmg@chromium.org2012-11-131-5/+3
| | | | | | | | | | | | | Two changes from that CL: - Don't remove per-RootWindow StackingClient (erg thought he probably needed it; if not I can remove it later in a separate CL) - Fix initialization in Shell::PlatformInitialize (wasn't initializing correctly in the CrOS case), diff between ps1 and ps2 in content/shell/shell_aura.cc TBR=ben@chromium.org BUG=128578 Review URL: https://codereview.chromium.org/11362216 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@167431 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 167245 - Currently, the ash and desktop implementations of ↵scottmg@chromium.org2012-11-121-3/+5
| | | | | | | | | | | | | | | | | | StackingClient stomp each other in aura::Env. Instead: - Don't have StackingClient implementations install themselves by default - Add chrome implementation of StackingClient that dispatches to ash or desktop - Pass extra |context| to GetDefaultParent (normally a RootWindow) that it can use to determine desktop type. - Workaround a few locations by using ScopedForceDesktopType: in these locations, the GetHostDesktopForNative... functions fail because they're used during window creation when the windows have no parent (and so can't determine which desktop they're in). - Remove window-specific StackingClient (unnecessary?) BUG=128578 Review URL: https://codereview.chromium.org/11364053 TBR=scottmg@google.com git-svn-id: svn://svn.chromium.org/chrome/trunk/src@167253 0039d316-1c4b-4281-b951-d872f2087c98
* Currently, the ash and desktop implementations of StackingClient stomp each ↵scottmg@google.com2012-11-121-5/+3
| | | | | | | | | | | | | | | | other in aura::Env. Instead: - Don't have StackingClient implementations install themselves by default - Add chrome implementation of StackingClient that dispatches to ash or desktop - Pass extra |context| to GetDefaultParent (normally a RootWindow) that it can use to determine desktop type. - Workaround a few locations by using ScopedForceDesktopType: in these locations, the GetHostDesktopForNative... functions fail because they're used during window creation when the windows have no parent (and so can't determine which desktop they're in). - Remove window-specific StackingClient (unnecessary?) BUG=128578 Review URL: https://codereview.chromium.org/11364053 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@167245 0039d316-1c4b-4281-b951-d872f2087c98
* Re-order case statement according to WindowType ordersimon.hong81@gmail.com2012-11-091-3/+3
| | | | | | | | | | BUG=NONE TEST=Compiles Review URL: https://chromiumcodereview.appspot.com/11275215 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@166971 0039d316-1c4b-4281-b951-d872f2087c98
* Various modal dialog handling fixes when lock layer window is active (i.e. ↵nkostylev@chromium.org2012-11-091-3/+4
| | | | | | | | | | | | | | | | login / lock). * Makes it possible to operate menus at login screen modal windows (login > Connect to other WiFi network). * Makes sure that screen lock layer windows recieve events even if there's another modal window at system modal window layer but none on the lock modal window layer. * Fixes dcheck in SystemModalContainerLayoutManager See also http://crbug.com/156941 BUG=157469 Review URL: https://chromiumcodereview.appspot.com/11275187 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@166897 0039d316-1c4b-4281-b951-d872f2087c98
* Removes worskpace 1 code. Will rename next.sky@chromium.org2012-10-171-2/+1
| | | | | | | | | | | BUG=none TEST=none R=ben@chromium.org,nkostylev@chromium.org TBR=nkostylev@chromium.org Review URL: https://codereview.chromium.org/11201002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162420 0039d316-1c4b-4281-b951-d872f2087c98
* Remove non ExtededDesktop modeoshima@chromium.org2012-08-301-4/+1
| | | | | | | | | BUG=135245 TEST=no flags option to disable ExtendedDesktop Review URL: https://chromiumcodereview.appspot.com/10892021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@154035 0039d316-1c4b-4281-b951-d872f2087c98
* Adds an interface between WorkspaceController andsky@chromium.org2012-08-161-2/+1
| | | | | | | | | | | | WorkspaceManager. This will allow introducing different behavior. BUG=137342 TEST=none R=ben@chromium.org Review URL: https://chromiumcodereview.appspot.com/10827377 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@151939 0039d316-1c4b-4281-b951-d872f2087c98
* Allow the cursor to warp even when a window is dragged.yusukes@google.com2012-08-061-1/+2
| | | | | | | | | | | This is the first step toward implementing crbug.com/136816 (Implement dragging window from one display to another). BUG=136816 TEST=try Review URL: https://chromiumcodereview.appspot.com/10835047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@150116 0039d316-1c4b-4281-b951-d872f2087c98
* Enable Virtual Screen Coordinates and remove --ash-virtual-screen-coordinatesoshima@chromium.org2012-07-231-3/+3
| | | | | | | | | | | | | | | Update tests to work with VSC. I'll land this after http://codereview.chromium.org/10795027/ is landed. I kept active_root_window_ because we're planning to create a launcher per display, and I'm going to use it to decide on which display the status bubble will be shown. BUG=123160 TEST=Updated tests, plus added new test cases to ExtendedDesktopText.ConvertPoint Review URL: https://chromiumcodereview.appspot.com/10790090 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@147977 0039d316-1c4b-4281-b951-d872f2087c98
* Move a window if the sceren bounds being set is in other display.oshima@chromium.org2012-07-211-17/+27
| | | | | | | | | | | | | | - Fix StackingController::GetDefaultParent so that it uses the same root window as its transient parent. - Updated WorkspaceWindowResizer to move the dragged window to other display if the new destination matches it. This is short term, temporary solution until better drag&drop is implemented. BUG=123160 TEST=ExtendedDesktopTest.MoveWindow/MoveWindowWithTransient Review URL: https://chromiumcodereview.appspot.com/10795027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@147798 0039d316-1c4b-4281-b951-d872f2087c98
* Relanding r144499:oshima@chromium.org2012-06-271-2/+2
| | | | | | | | | | | | | Rename the remaining usage of Monitor to Display BUG=none TEST=none Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=144499 Review URL: https://chromiumcodereview.appspot.com/10675011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@144585 0039d316-1c4b-4281-b951-d872f2087c98
* Revert r 144499 "Rename the remaining usage of Monitor to Display"oshima@chromium.org2012-06-271-2/+2
| | | | | | | | | | | | Temporarily reverting rename change to investigate 133784 TBR=oshima@chromium.org BUG=123160 TEST=none Review URL: https://chromiumcodereview.appspot.com/10689014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@144573 0039d316-1c4b-4281-b951-d872f2087c98
* Rename the remaining usage of Monitor to Displayoshima@chromium.org2012-06-271-2/+2
| | | | | | | | | BUG=none TEST=none Review URL: https://chromiumcodereview.appspot.com/10675011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@144499 0039d316-1c4b-4281-b951-d872f2087c98
* This is the 1st CL to add Virtual Screen Coordinates to ash.oshima@chromium.org2012-06-231-19/+37
| | | | | | | | | | | | | - Add flag to enable virtual screen coordinate system - Changed StackingController to use the bounds to pick the matching root window when the virtual screen coordinates is enabled. - Added Shell::GetRootWindowMatching. Updated Shell::GetRootWindowAt to use VSC when enabled. BUG=123160 TEST=ExtendedDesktopTest.CycleWindow is changed to use virtual screen coordinate. ExtendedDesktopTest.{GetRootRootAt|GetRootWindowMatching) Review URL: https://chromiumcodereview.appspot.com/10637007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@143770 0039d316-1c4b-4281-b951-d872f2087c98
* Change GetContainer to take a root windowoshima@chromium.org2012-06-111-6/+21
| | | | | | | | | | | Update the use of GetContainer to use the correct root window. BUG=123160 TEST=no functional change. all tests must pass. Review URL: https://chromiumcodereview.appspot.com/10540076 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@141384 0039d316-1c4b-4281-b951-d872f2087c98
* Removed requirement for ash::Window::transient_parent() presence for system ↵zelidrag@chromium.org2012-06-051-2/+1
| | | | | | | | | | | modal dialogs. BUG=130420 TEST=SystemModalContainerLayoutManagerTest.ModalTransientAndNonTransient Review URL: https://chromiumcodereview.appspot.com/10514012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@140647 0039d316-1c4b-4281-b951-d872f2087c98
* Remove more root window dependenciesoshima@chromium.org2012-06-011-1/+0
| | | | | | | | | | BUG=123160 TEST=no functional change. all tests should pass. Review URL: https://chromiumcodereview.appspot.com/10441146 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@140053 0039d316-1c4b-4281-b951-d872f2087c98
* ash: Make extension uninstall UI can use app list window as parent.xiyuan@chromium.org2012-04-091-13/+31
| | | | | | | | | | | | | | | | - Make window-modal window stack into the same container as its transient parent; - Make extension uninstall dialog window modal; - Make extension uninstall dialog a transient child of app list window when app list is showing; - Make app list stay when new active window is also in app list container; BUG=122374 TEST=Verify fix for issue 122374. Review URL: http://codereview.chromium.org/10027025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@131478 0039d316-1c4b-4281-b951-d872f2087c98
* aura::Window only supports void* and int values for custom properties, which ↵benrg@chromium.org2012-02-111-1/+1
| | | | | | | | | | | | must be cast to and from the correct type at each use point. This CL introduces typed properties and templated aura::Window::[GS]etProperty methods that enforce the use of the declared type. Only pointer types and integral types that fits in intptr_t are supported, and ownership behavior is the same as before. This CL also adds support for default property values other than NULL/0. BUG=none TEST=updated unit tests Review URL: http://codereview.chromium.org/8533025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121583 0039d316-1c4b-4281-b951-d872f2087c98
* Aura: Create a new containerr for drag/drop images and tooltips.varunjain@chromium.org2012-02-021-1/+3
| | | | | | | | | BUG=111148 TEST=manual Review URL: https://chromiumcodereview.appspot.com/9314040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@120230 0039d316-1c4b-4281-b951-d872f2087c98
* Stack un-parented control windows in their own container. This prevents them ↵ben@chromium.org2012-01-201-5/+2
| | | | | | | | | | from interfering in existing window layout heuristics/animations. BUG=none TEST=existing Review URL: https://chromiumcodereview.appspot.com/9138026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118541 0039d316-1c4b-4281-b951-d872f2087c98
* Add a simple animation when showing/hiding windows.ben@chromium.org2012-01-191-0/+5
| | | | | | | | | http://crbug.com/110024 TEST=none Review URL: http://codereview.chromium.org/9167032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118259 0039d316-1c4b-4281-b951-d872f2087c98
* Rename system modal types and classes appropriately.flackr@chromium.org2012-01-181-5/+5
| | | | | | | | | | | | | | | | Renames the following as per the bug description by ben@: kShellWindowId_ModalContainer -> kShellWindowId_SystemModalContainer kShellWindowId_LockModalContainer -> kShellWindowId_LockSystemModalContainer ModalContainerLayoutManager->SystemModalContainerLayoutManager ModalityEventFilter->SystemModalContainerEventFilter BUG=109460 TEST=All tests and compilation still succeed. Review URL: https://chromiumcodereview.appspot.com/9249022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118127 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 118057 - Add a simple animation when showing/hiding windows.dbeam@chromium.org2012-01-181-5/+0
| | | | | | | | | | | | http://crbug.com/110024 TEST=none Review URL: http://codereview.chromium.org/9167032 TBR=ben@chromium.org Review URL: https://chromiumcodereview.appspot.com/9249009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118060 0039d316-1c4b-4281-b951-d872f2087c98
* Add a simple animation when showing/hiding windows.ben@chromium.org2012-01-181-0/+5
| | | | | | | | | http://crbug.com/110024 TEST=none Review URL: http://codereview.chromium.org/9167032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118057 0039d316-1c4b-4281-b951-d872f2087c98
* aura: Add container for setting bubbles.derat@chromium.org2012-01-071-2/+2
| | | | | | | | | | | | | | | | | This adds a new container (with nothing stored in it yet) for the bubbles that are briefly displayed on Chrome OS when the volume or brightness is changed. I'm also renaming the MenusAndTooltipsContainer window ID constant to MenuAndTooltipContainer to match the other constants. BUG=108389 TEST=compiles Review URL: http://codereview.chromium.org/9110034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116788 0039d316-1c4b-4281-b951-d872f2087c98
* Adds support for Window Modality to Ash.ben@chromium.org2012-01-061-4/+5
| | | | | | | | http://crbug.com/109290 TEST=unittests Review URL: http://codereview.chromium.org/9123016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116767 0039d316-1c4b-4281-b951-d872f2087c98
* Bypass ToplevelWindowEventFilter for panels.prasadt@chromium.org2011-12-271-0/+2
| | | | | | | | | | | With this change minimize and drag work on panels in Aura. BUG=108497 TEST=Run chrome in aura. Create a panel. Click on titlebar. Drag. Review URL: http://codereview.chromium.org/9027020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115850 0039d316-1c4b-4281-b951-d872f2087c98
* Rename the aura_shell namespace to ashben@chromium.org2011-12-241-2/+2
| | | | | | | | | http://crbug.com/108457 TEST=none TBR=sky Review URL: http://codereview.chromium.org/9033007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115748 0039d316-1c4b-4281-b951-d872f2087c98
* Move last few files -> ashben@chromium.org2011-12-231-2/+2
| | | | | | | | | http://crbug.com/108457 TEST=none TBR=sky Review URL: http://codereview.chromium.org/9036011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115743 0039d316-1c4b-4281-b951-d872f2087c98
* Move some more files into ash... this time seed the window manager dir.ben@chromium.org2011-12-231-0/+94
http://crbug.com/108457 TEST=none TBR=sky Review URL: http://codereview.chromium.org/9026017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115655 0039d316-1c4b-4281-b951-d872f2087c98