summaryrefslogtreecommitdiffstats
path: root/ui/aura/env.cc
Commit message (Collapse)AuthorAgeFilesLines
* Merge aura::DispatcherLinux into base::MessagePumpAuraX11.erg@chromium.org2012-08-301-1/+16
| | | | | | | | | | | | | | | | | | | | The majority of incoming XEvents are related to specific XWindows and need to be sent to a specific MessagePumpDispatcher. MessagePumpAuraX11 would pass the XEvent to aura::DispatcherLinux, which would pass it to the next dispatcher. Because of the chromeos unit tests, which spin up a new XDisplay on each test, these two objects need to have equivalent lifetimes. Due to the incoming clipboard support (which this patch was split off from), DispatcherLinux can't live in aura:: anymore. The solution is to merge the two objects that have to have equivalent lifetimes together. The one ui:: specific check was split off into an MessagePumpObserver. This also got rid of those hacks where we would static downcast to DispatcherLinux from MessagePumpDispatcher. BUG=130805 Review URL: https://chromiumcodereview.appspot.com/10895020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@154174 0039d316-1c4b-4281-b951-d872f2087c98
* Move cursor when it's hidden so that UX can update correctlydavemoore@chromium.org2012-08-151-0/+14
| | | | | | | | | BUG=136057 TEST=None Review URL: https://chromiumcodereview.appspot.com/10829180 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@151705 0039d316-1c4b-4281-b951-d872f2087c98
* Aura desktop: Show resize cursors again.erg@chromium.org2012-07-261-1/+0
| | | | | | | | | | | | | | This moves CursorManager into ash/wm/ and makes it an implementation of a new CursorClient interface. It's really an implementation detail of ash. Then create a desktop version of this interface. BUG=none TEST=none Review URL: https://chromiumcodereview.appspot.com/10692170 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@148454 0039d316-1c4b-4281-b951-d872f2087c98
* Move last_mouse_location_ from aura::RootWindow to aura::Env to support ↵yusukes@chromium.org2012-07-241-0/+10
| | | | | | | | | | | | multiple root windows. BUG=136814 TEST=1) the new ash_unittests as well as existing tests passed. 2) ran ash_shell by './out/Release/ash_shell --ash-extended-desktop --aura-host-window-size=100+0-500x500,610+0-300x300 --ash-virtual-screen-coordinates', then move the cursor to the second (right hand side) window, then click the right button. confirmed that the popup menu is shown on the right window. Review URL: https://chromiumcodereview.appspot.com/10781028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@148193 0039d316-1c4b-4281-b951-d872f2087c98
* [cros/aura] Prevent white splash on boot for OOBE WebUI.nkostylev@chromium.org2012-07-201-0/+1
| | | | | | | | | | | | | | | | | OOBE boot: - Load wallpaper into wallpaper layer and wait till animation finishes - Load OOBE WebUI * Create host window at screen lock layer * Show (produced short white splash if white bg is drawn in OnPaint() * Load WebUI with transparent background BUG=131569 TEST=Manual. Review URL: https://chromiumcodereview.appspot.com/10796009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@147624 0039d316-1c4b-4281-b951-d872f2087c98
* Aura: Enable the threaded compositor in the browser.backer@chromium.org2012-07-041-1/+5
| | | | | | | | | | | Enables the threaded compositor in the browser behind a flag: --ui-enabled-threaded-compositing. There are missing features (such a compositor locks for window resizing) that are not yet implemented. BUG=135607 TEST=none Review URL: https://chromiumcodereview.appspot.com/10700081 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@145454 0039d316-1c4b-4281-b951-d872f2087c98
* Relanding r144499:oshima@chromium.org2012-06-271-7/+7
| | | | | | | | | | | | | 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-7/+7
| | | | | | | | | | | | 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-7/+7
| | | | | | | | | 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
* Rename gfx::Monitor to gfx::Displaytfarina@chromium.org2012-06-121-1/+1
| | | | | | | | | | BUG=130828 R=oshima@chromium.org TBR=sky@chromium.org Review URL: https://chromiumcodereview.appspot.com/10540091 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@141659 0039d316-1c4b-4281-b951-d872f2087c98
* Add EnvEventFilter to filter events before root window process eventoshima@chromium.org2012-06-061-0/+7
| | | | | | | | Factor out CursorManager from RootWindowEventFilter Review URL: https://chromiumcodereview.appspot.com/10444107 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@140714 0039d316-1c4b-4281-b951-d872f2087c98
* Adds switch to disable generating mouse events from touch events andsky@chromium.org2012-05-311-0/+1
| | | | | | | | | | | | | adds tracking of whether any touch devices are down. I'm going to use the later from Widget. BUG=113279 TEST=none R=sadrul@chromium.org Review URL: https://chromiumcodereview.appspot.com/10448102 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@139891 0039d316-1c4b-4281-b951-d872f2087c98
* ui: Move compositor/ directory out of gfx/, up to ui/.tfarina@chromium.org2012-05-051-1/+1
| | | | | | | | | | BUG=104040 R=piman@chromium.org,ben@chromium.org TBR=sky@chromium.org Review URL: https://chromiumcodereview.appspot.com/10365007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@135560 0039d316-1c4b-4281-b951-d872f2087c98
* Don't set single monitor manager under multi monitor environment.oshima@chromium.org2012-03-301-2/+1
| | | | | | | | | BUG=28581 TEST=none Review URL: https://chromiumcodereview.appspot.com/9923027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@129867 0039d316-1c4b-4281-b951-d872f2087c98
* * Keep the mouse in the desktop in multi monitor environment. I ended up ↵oshima@chromium.org2012-03-241-11/+19
| | | | | | | | | | | | | | | | | using XFIXES to make launcher autohide works smoothlyl. * Made dtor of ML::Dispatcher publiic and Eliminated aura::Dispatcher * Refactored DispatcherLinux so that it re-dispatch event per window. * Removed ConfineToWindow in RHWVA::LockMouse because a) it's not necessary on device (mouse is always confined to root window), b) it should confine to the RWHVA's window but not root window, so this is not exactly right. I'll work on this in separate CL after m19. BUG=115510 TEST=none Review URL: http://codereview.chromium.org/9808010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@128739 0039d316-1c4b-4281-b951-d872f2087c98
* Revert r128507 "Revert r128436 "relanding: disabled workspace_window_resizer ↵oshima@chromium.org2012-03-231-2/+8
| | | | | | | | | | | | test. fixed access-after-free."" TBR=backer@chromium.org BUG=chromium-os:28304 TEST=none Review URL: https://chromiumcodereview.appspot.com/9837046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@128509 0039d316-1c4b-4281-b951-d872f2087c98
* Revert r128436 "relanding: disabled workspace_window_resizer test. fixed ↵backer@chromium.org2012-03-231-8/+2
| | | | | | | | | | | | | | access-after-free." This causes a black screen on Alex when building from ToT chrome. BUG=chromium-os:28304 TBR=oshima TEST=can log in on Alex Review URL: https://chromiumcodereview.appspot.com/9838060 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@128507 0039d316-1c4b-4281-b951-d872f2087c98
* relanding: disabled workspace_window_resizer test. fixed access-after-free.oshima@chromium.org2012-03-231-2/+8
| | | | | | | | | | | | | | | | * MonitorChangeObserverX11 that listen to Xrandr events and update monitor configurations. * Message on secondary monitor view * Accelerator to create/delete/cycle monitors to test multi monitor on linux desktop * unittest for MultiMonitorManager/MonitorController BUG=115510 TEST=multi_monitor_manager_unittests Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=128330 Review URL: https://chromiumcodereview.appspot.com/9754001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@128436 0039d316-1c4b-4281-b951-d872f2087c98
* Revert r128330 "* MonitorChangeObserverX11 that listen to Xrandr events and ↵oshima@chromium.org2012-03-231-8/+2
| | | | | | | | | | | | update monitor configurations." TBR=ben@chromium.org BUG=115510 TEST=none Review URL: https://chromiumcodereview.appspot.com/9839032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@128346 0039d316-1c4b-4281-b951-d872f2087c98
* * MonitorChangeObserverX11 that listen to Xrandr events and update monitor ↵oshima@chromium.org2012-03-221-2/+8
| | | | | | | | | | | | | | | configurations. * Message on secondary monitor view * Accelerator to create/delete/cycle monitors to test multi monitor on linux desktop * unittest for MultiMonitorManager/MonitorController BUG=115510 TEST=multi_monitor_manager_unittests Review URL: https://chromiumcodereview.appspot.com/9754001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@128330 0039d316-1c4b-4281-b951-d872f2087c98
* * MultiMonitorManager creates and manages mutliple monitor instanceoshima@chromium.org2012-03-211-1/+5
| | | | | | | | | | | | | * MonitorContrler controls root window <-> monitor mapping and resize/reposition root window to match monitor configuration. * Moved use_fullscreen_host_window to MonitorManager * Moved compositor initialize/terminate to Env as there can be more than one root window. BUG=115510 TEST=none Review URL: https://chromiumcodereview.appspot.com/9701098 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@127854 0039d316-1c4b-4281-b951-d872f2087c98
* Native bounds support to host windows.oshima@chromium.org2012-03-161-1/+2
| | | | | | | | | | | | | | | | | | | * Moved SingleMonitorManager into separate file. This is a default MonitorManager and creates RootWindow for PrimaryMonitor. * Added MonitorObserver and moved monitor change logic to ash. * MultiMonitorManager class and its layout logic will live in ash too. * Added ability to move host window so that we can re-arrange root window when switching primary monitor. * Removed monitor_manager_x11, which I committed by accident. * Use (0,0) for monitor/workarea bounds because the coordinate isn't translated yet for non primary screens. BUG=115510 TEST=none Review URL: https://chromiumcodereview.appspot.com/9703083 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@127231 0039d316-1c4b-4281-b951-d872f2087c98
* MonitorManager to manage multiple monitors.oshima@chromium.org2012-03-141-1/+10
| | | | | | | | | | | This is clone of issue 9689027, which I can't access due to some internal error. BUG=115510 TEST=none Review URL: https://chromiumcodereview.appspot.com/9699013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@126685 0039d316-1c4b-4281-b951-d872f2087c98
* Move IsMouseButtonDown to Env.ben@chromium.org2012-02-271-1/+1
| | | | | | | | | | Needed to remove a use of RootWindow::GetInstance(). http://crbug.com/112131 TEST=none Review URL: https://chromiumcodereview.appspot.com/9478007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123805 0039d316-1c4b-4281-b951-d872f2087c98
* Moves stacking client to Env.beng@google.com2012-02-271-1/+1
| | | | | | | | | | It can't live on the RootWindow since there's no way to locate a relevant RootWindow when it is called. http://crbug.com/112131 TEST=none Review URL: https://chromiumcodereview.appspot.com/9464048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123773 0039d316-1c4b-4281-b951-d872f2087c98
* Moves the Linux dispatcher into its own object.beng@google.com2012-02-251-11/+1
| | | | | | | | | | Like DispatcherWin, DispatcherLinux is owned by the Env singleton. http://crbug.com/112131 TEST=compiles, tests pass Review URL: https://chromiumcodereview.appspot.com/9447048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123597 0039d316-1c4b-4281-b951-d872f2087c98
* Change how you get to the MessageLoop::Dispatcher.ben@chromium.org2012-02-231-1/+22
| | | | | | | | | | | | Previously, you would ask the RootWindow (a singleton) for its dispatcher, which was conveniently the RootWindowHost. Now that we are moving towards many RootWindows, you must ask the new singleton, aura::Env, instead. This CL also implements a dispatcher for windows. It does not implement the Linux one since that's much larger and I'll do that in a followon CL. I just wanted to change the API. Note there is some transitional ugliness. http://crbug.com/112131 TEST=existing Review URL: https://chromiumcodereview.appspot.com/9433072 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123268 0039d316-1c4b-4281-b951-d872f2087c98
* Move OnWindowInitialized() from RootWindowObserver to EnvObserver, the ↵ben@chromium.org2012-02-031-0/+49
observer of a new global singleton "Env". This will allow us to support multiple RootWindows. http://crbug.com/112131 TEST=none Review URL: https://chromiumcodereview.appspot.com/9310071 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@120349 0039d316-1c4b-4281-b951-d872f2087c98