summaryrefslogtreecommitdiffstats
path: root/ash/wm/workspace_controller.h
Commit message (Collapse)AuthorAgeFilesLines
* Implements new semantics for launcher context menu. Gone are the threesky@chromium.org2012-04-121-2/+0
| | | | | | | | | | | | | | | items, and instead they're repalced with a single item. The behavior of the item changes depending upon whether in maximized mode or not. I've put the core functionality into ash so that ash_shell now gets the context menu too. BUG=120947 TEST=see bug, also covered by tests. R=ben@chromium.org Review URL: https://chromiumcodereview.appspot.com/10069023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@132048 0039d316-1c4b-4281-b951-d872f2087c98
* Remove "set wallpaper..." option in system context menu when guest logged inbshe@chromium.org2012-04-111-32/+1
| | | | | | | | | | BUG=120763 TEST=Log in as guest user, click right mouse button on wallpaper, there should be no "set wallpaper..." options in the popup context menu. Review URL: https://chromiumcodereview.appspot.com/9960024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@131806 0039d316-1c4b-4281-b951-d872f2087c98
* Adds context menu so that shelf always auto-hides (except on locksky@chromium.org2012-03-251-1/+0
| | | | | | | | | | | | | | screen). This also cleans up code that was forcing shelf to be visible when lock screen up, and it removes the 'snap to grid' menu item on the background. BUG=119804 TEST=none R=ben@chromium.org Review URL: https://chromiumcodereview.appspot.com/9854001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@128839 0039d316-1c4b-4281-b951-d872f2087c98
* Add "Change Wallpaper..." option in system ContextMenubshe@chromium.org2012-03-241-0/+1
| | | | | | | | | | BUG=118705 TEST=Right click on background, select "change wallpaper", the browser should go to change wallpaper settings page. Review URL: https://chromiumcodereview.appspot.com/9836077 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@128750 0039d316-1c4b-4281-b951-d872f2087c98
* Adds a delay before hiding the multi-window resize widget. Also fixessky@chromium.org2012-03-191-0/+6
| | | | | | | | | | | | | | | | some corner cases: . Deals with windows being deleted while resize widget is up. . Wires up resizing more than two windows at the same time. . Adds tests. . Resize widget is now shown closer to mouse. BUG=118005 TEST=covered by tests. R=ben@chromium.org Review URL: https://chromiumcodereview.appspot.com/9724025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@127465 0039d316-1c4b-4281-b951-d872f2087c98
* Makes the maximize/restore button handlingsky@chromium.org2012-03-141-1/+1
| | | | | | | | | | | | | | | | | | snapping/minimizing. FrameMaximizeButton handles all the logic for this. If you move the mouse the drag threshold we'll trigger to snapping behavior. moving to the left snaps to the left half, moving to the right the right half, and below minimizes. Uses PhantomWindowController to render the snap position. Minimizing highlights the launcher button. To support this I had to plumb through getting the bounds of the launcher button. BUG=116213 TEST=none R=ben@chromium.org Review URL: https://chromiumcodereview.appspot.com/9703026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@126729 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes bugs that resulted in problems with double clicking to maximizesky@chromium.org2012-03-071-8/+0
| | | | | | | | | | | | | | | | | | | | | vertically/horizontally: . Workspace was initially setting a restore bounds even if the window was normal. This confused the maximize logic. To fix this I've simplified the workspace code so that it uses BaseLayoutManager to manage the restore bounds. . Under X a double click results in press-drag-release, press-drag-release. The second press starts a window drag resizer as well as maximizing. This means that when we press the drag we end up trying to move the window and things snap around. . Don't toggle size if already maximized. BUG=117201 TEST=covered by unit tests R=ben@chromium.org Review URL: https://chromiumcodereview.appspot.com/9624014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@125486 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the full screen switching browser window dipping below launcher bar issue.jennyz@chromium.org2012-03-011-0/+3
| | | | | | | | | | BUG=114497 TEST=The browser window should not dipping under the launcher bar when toggling with full screen mode. Review URL: http://codereview.chromium.org/9515003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@124524 0039d316-1c4b-4281-b951-d872f2087c98
* Makes windows no longer open maximized by default.sky@chromium.org2012-03-011-1/+0
| | | | | | | | | | BUG=116268 TEST=none R=ben@chromium.org Review URL: https://chromiumcodereview.appspot.com/9558004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@124364 0039d316-1c4b-4281-b951-d872f2087c98
* aura::Window only supports void* and int values for custom properties, which ↵benrg@chromium.org2012-02-111-2/+2
| | | | | | | | | | | | 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
* Minor refactoring of workspace code so that code for managed windowssky@chromium.org2012-02-101-1/+1
| | | | | | | | | | | | can be centralized and not impact maximized/fullscreen code. BUG=111285 TEST=none R=oshima@chromium.org Review URL: https://chromiumcodereview.appspot.com/9375046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121538 0039d316-1c4b-4281-b951-d872f2087c98
* Fix compile with Aura/Mac ash_shell and workspace controllerdhollowa@chromium.org2012-01-311-0/+2
| | | | | | | | | | | | | Fixes link issues on Mac/AuraShell.app with WorkspaceController. implemented. BUG=None TEST=Compile on Mac/Aura. R=sky@chromium.org Review URL: https://chromiumcodereview.appspot.com/9159048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@119941 0039d316-1c4b-4281-b951-d872f2087c98
* Handful of workspace changes:sky@chromium.org2012-01-301-23/+38
| | | | | | | | | | | | | | | | | | . Correctly deal with fullscreen. . wires up grid size and sets it appropriately. . maxes windows open initially maximized if necessary. I've also wired up showing a menu when you right click on the desktop that lets you configure things. This is only temporary, but I figure worthwhile to play with various settings. BUG=111285 TEST=none R=ben@chromium.org Review URL: https://chromiumcodereview.appspot.com/9295024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@119674 0039d316-1c4b-4281-b951-d872f2087c98
* Reworks the workspace code. Here's the new heuristics:sky@chromium.org2012-01-261-9/+0
| | | | | | | | | | | | | | | | | | | . All normal windows end up in a single workspace. . Each maximized window ends up in its own workspace. . There is an additional workspace for split windows, but the heuristics of this aren't implemented yet. I've left some bits of the old code, in particular overview but there isn't really a way to get into it yet and it'll need some reworking if we decide to keep it. BUG=111285 TEST=none R=ben@chromium.org,oshima@chromium.org Review URL: https://chromiumcodereview.appspot.com/9113045 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@119282 0039d316-1c4b-4281-b951-d872f2087c98
* Changes the launcher around so that it's up to the shell to populate itsky@chromium.org2012-01-241-1/+2
| | | | | | | | | | | | | | and that each item isn't associated with a window. This allows the chrome side to populate the launcher with items that correspond to app tabs. BUG=110827 TEST=none R=ben@chromium.org Review URL: https://chromiumcodereview.appspot.com/9271007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118800 0039d316-1c4b-4281-b951-d872f2087c98
* Aura: Resize windows when screen/host window size changesjamescook@chromium.org2012-01-171-3/+3
| | | | | | | | | | | | | | * Monitor root window for size changes and resize maximized windows when it changes. This also ensures windows in compact window mode continue to fill the screen. * Merged CompactLayoutManager and ToplevelLayoutManager. I expected them to diverge, but they ended up being nearly identical. * Expanded unit test coverage of ToplevelLayoutManager. * Put a few window_util functions into a namespace. I didn't do them all because the patch would be too big. BUG=109952 TEST=Run Aura, maximize an Aura window, change the size of the host window (or plug an external monitor into your ChromeOS device). Window should still fill the screen. Run Aura in compact window mode (default on small screen laptops). Plug in an external monitor. Windows should still fill the screen. Review URL: https://chromiumcodereview.appspot.com/9214009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@117931 0039d316-1c4b-4281-b951-d872f2087c98
* Attempt 2: Removes support for multiple images from launcher. Doesn't look likesky@chromium.org2012-01-131-3/+3
| | | | | | | | | | | | | | | | we're going to use it, so I'm nuking it. This also fixes the bug where we would only even show one tab in the launcher even though the window had more than one. BUG=none TEST=none R=ben@chromium.org TBR=ben@chromium.org Review URL: http://codereview.chromium.org/9207004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@117666 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 117581 - Removes support for multiple images from launcher. Doesn't ↵thestig@chromium.org2012-01-131-3/+3
| | | | | | | | | | | | | | | | | | | | look like we're going to use it, so I'm nuking it. This also fixes the bug where we would only even show one tab in the launcher even though the window had more than one. BUG=none TEST=none R=ben@chromium.org Review URL: http://codereview.chromium.org/9139077 TBR=sky@chromium.org Review URL: http://codereview.chromium.org/9123028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@117609 0039d316-1c4b-4281-b951-d872f2087c98
* Removes support for multiple images from launcher. Doesn't look likesky@chromium.org2012-01-131-3/+3
| | | | | | | | | | | | | | | we're going to use it, so I'm nuking it. This also fixes the bug where we would only even show one tab in the launcher even though the window had more than one. BUG=none TEST=none R=ben@chromium.org Review URL: http://codereview.chromium.org/9139077 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@117581 0039d316-1c4b-4281-b951-d872f2087c98
* Rename the aura_shell namespace to ashben@chromium.org2011-12-241-7/+7
| | | | | | | | | 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 more stuff down into ash.ben@chromium.org2011-12-231-1/+1
| | | | | | | | | http://crbug.com/108457 TEST=none TBR=sky Review URL: http://codereview.chromium.org/9030007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115739 0039d316-1c4b-4281-b951-d872f2087c98
* Move some more WM functionality down into ash.ben@chromium.org2011-12-231-0/+91
http://crbug.com/108457 TEST=none TBR=sky Review URL: http://codereview.chromium.org/9035001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115721 0039d316-1c4b-4281-b951-d872f2087c98