summaryrefslogtreecommitdiffstats
path: root/ash/wm/immersive_fullscreen_controller.cc
Commit message (Collapse)AuthorAgeFilesLines
* Restores focus after switching to immersive fullscreen mode.varkha2015-06-301-4/+0
| | | | | | | | | | | If the omnibox has focus when entering fullscreen that focus is already cleared by BrowserView::ProcessFullscreen(). BUG=402340 Review URL: https://codereview.chromium.org/1207423002 Cr-Commit-Position: refs/heads/master@{#336847}
* Fix references to ui/gfx headers in a*/.Avi Drissman2014-12-221-2/+2
| | | | | | | | | | BUG=444596 TEST=none TBR=ben@chromium.org Review URL: https://codereview.chromium.org/802473003 Cr-Commit-Position: refs/heads/master@{#309448}
* Standardize usage of virtual/override/final specifiers.dcheng2014-10-281-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Google C++ style guide states: Explicitly annotate overrides of virtual functions or virtual destructors with an override or (less frequently) final specifier. Older (pre-C++11) code will use the virtual keyword as an inferior alternative annotation. For clarity, use exactly one of override, final, or virtual when declaring an override. To better conform to these guidelines, the following constructs have been rewritten: - if a base class has a virtual destructor, then: virtual ~Foo(); -> ~Foo() override; - virtual void Foo() override; -> void Foo() override; - virtual void Foo() override final; -> void Foo() final; This patch was automatically generated. The clang plugin can generate fixit hints, which are suggested edits when it is 100% sure it knows how to fix a problem. The hints from the clang plugin were applied to the source tree using the tool in https://codereview.chromium.org/598073004. BUG=417463 R=flackr@chromium.org Review URL: https://codereview.chromium.org/645513008 Cr-Commit-Position: refs/heads/master@{#301541}
* replace OVERRIDE and FINAL with override and final in ash/mostynb2014-10-031-2/+2
| | | | | | | | BUG=417463 Review URL: https://codereview.chromium.org/621133002 Cr-Commit-Position: refs/heads/master@{#298040}
* Fixing problem with edge swipe exiting immersive modeskuhne@chromium.org2014-06-031-1/+6
| | | | | | | | | BUG=378414 TEST=several unittests Review URL: https://codereview.chromium.org/309793005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274570 0039d316-1c4b-4281-b951-d872f2087c98
* clang: Turn on -Wabsolute-value.thakis@chromium.org2014-05-201-2/+2
| | | | | | | | | | BUG=351479 TBR=hans@chromium.org NOTRY=true Review URL: https://codereview.chromium.org/274533004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@271732 0039d316-1c4b-4281-b951-d872f2087c98
* Re-enable "Enable immersive fullscreen on Windows Ash."zturner@chromium.org2014-04-141-7/+24
| | | | | | | | | | | The problem was that we were creating the ImmersiveModeControllerAsh even when the host desktop type was not HOST_DESKTOP_TYPE_ASH. BUG=355571, 356419 Review URL: https://codereview.chromium.org/217273002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@263665 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Enable immersive fullscreen on Windows Ash."zturner@chromium.org2014-03-251-24/+7
| | | | | | | | | | | | | This reverts commit 84945687cdf48715a4a95dd0271b1fe1c449971b because it was causing the scrollbar to not work in Desktop fullscreen mode when the mouse is on the right most pixel of the display. BUG=355571 R=sky@chromium.org Review URL: https://codereview.chromium.org/210203007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@259331 0039d316-1c4b-4281-b951-d872f2087c98
* Move some code from aura/client to wm/publicben@chromium.org2014-03-211-1/+1
| | | | | | | | | | | Still building as part of the aura target, will fix that in a future step. TBR=sky@chromium.org http://crbug.com/308710 Review URL: https://codereview.chromium.org/206453005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@258651 0039d316-1c4b-4281-b951-d872f2087c98
* Enable immersive fullscreen on Windows Ash.zturner@chromium.org2014-03-191-7/+24
| | | | | | | | | | | | | | | | | | | | | | | | | On ChromeOS a reveal occurs on a swipe down from the top edge, and hides on a swipe up from the top edge. On Windows we can only detect one piece of information: A swipe up occurred from the bottom edge, or a swipe down occured from the top edge. These two events are indistinguishable on Windows, and they do not come with any location information. As a result, the CrOS behavior of these two distinct operations are merged into one operation here. On Windows an "edge swipe" displays the shelf AND does the immersive reveal, whereas on CrOS these are separate operations triggered by a swipe on the respective edges. Hiding should still behave the same as CrOS. BUG=227247 Review URL: https://codereview.chromium.org/198413003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@257909 0039d316-1c4b-4281-b951-d872f2087c98
* Move wm/core to wm namespace.ben@chromium.org2014-03-141-4/+4
| | | | | | | | | | | | | | | | Also sets up new targets for wm_core, wm_core_unittests, etc. R=sky@chromium.org TBR=sky@chromium.org BUG= Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=256680 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=256839 Review URL: https://codereview.chromium.org/196063002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@257183 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Move wm/core to wm namespace."dmichael@chromium.org2014-03-131-4/+4
| | | | | | | | | | | | This reverts commit 521c703f8d62fa698c3e88287c64d8d23f9ac675. Broke gyp BUG= Review URL: https://codereview.chromium.org/199263002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@256846 0039d316-1c4b-4281-b951-d872f2087c98
* Move wm/core to wm namespace.ben@chromium.org2014-03-131-4/+4
| | | | | | | | | | | | | | Also sets up new targets for wm_core, wm_core_unittests, etc. R=sky@chromium.org TBR=sky@chromium.org BUG= Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=256680 Review URL: https://codereview.chromium.org/196063002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@256839 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Move wm/core to wm namespace."dmichael@chromium.org2014-03-121-4/+4
| | | | | | | | | | | | | | This reverts commit 067d7fe616a07011b9e2d2609fc65af8db6a7dfb. Broke the build: http://build.chromium.org/p/chromium.mac/builders/Mac%20Builder%20%28dbg%29/builds/63598/steps/compile/logs/stdio BUG= TBR=ben Review URL: https://codereview.chromium.org/198283002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@256686 0039d316-1c4b-4281-b951-d872f2087c98
* Move wm/core to wm namespace.ben@chromium.org2014-03-121-4/+4
| | | | | | | | | | | | Also sets up new targets for wm_core, wm_core_unittests, etc. R=sky@chromium.org TBR=sky@chromium.org BUG= Review URL: https://codereview.chromium.org/196063002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@256680 0039d316-1c4b-4281-b951-d872f2087c98
* Move files from ui/views/corewm to ui/wm/coreben@chromium.org2014-03-111-2/+2
| | | | | | | | | | R=sky@chromium.org TBR=sky@chromium.org http://crbug.com/308710 Review URL: https://codereview.chromium.org/194843004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@256329 0039d316-1c4b-4281-b951-d872f2087c98
* Move root_window.* to window_event_dispatcher.*ben@chromium.org2014-02-211-1/+1
| | | | | | | | | http://crbug.com/308843 TBR=sky@chromium.org Review URL: https://codereview.chromium.org/174803002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252651 0039d316-1c4b-4281-b951-d872f2087c98
* aura: Introduce ScopedWindowTargeter.sadrul@chromium.org2014-01-311-1/+1
| | | | | | | | | | | | | It is sometimes necessary to temporary replace the event-targeter for a window, and restore the previous event-targeter after some time. To that end, this patch introduces ScopedWindowTargeter. BUG=318879, 338671 R=ben@chromium.org Review URL: https://codereview.chromium.org/135543004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248101 0039d316-1c4b-4281-b951-d872f2087c98
* ash: Fix hit-testing when windows are in immersive fullscreen mode.sadrul@chromium.org2014-01-281-6/+5
| | | | | | | | | | | | | | | | | | If a window is in an immersive fullscreen mode, then touch events towards the top of the screen should not reach the child window, because the window can consume the touch events, and in that case, the top-container of the window cannot be revealed using touch-drag gesture. The CL moves ResizeHandleWindowTargeter out of FrameBorderHitTestController into its own file, and updates it so that it can be used for immersive mode fullscreen windows in ImmersiveFullscreenController. BUG=318879 R=jamescook@chromium.org, pkotwicz@chromium.org Review URL: https://codereview.chromium.org/143453005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247518 0039d316-1c4b-4281-b951-d872f2087c98
* Moves transient window observer methods out of WindowObserversky@chromium.org2014-01-101-4/+7
| | | | | | | | | | | | | | As transient logic has been moved outside of aura it doesn't make sense for these methods to be in WindowObserver anymore. Instead they have been added to TransientWindowManager. BUG=none TEST=none R=ben@chromium.org Review URL: https://codereview.chromium.org/132013004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244176 0039d316-1c4b-4281-b951-d872f2087c98
* Moves management of transients out of Windowsky@chromium.org2014-01-071-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | And into TransientWindowManager. Additionally moves handling of NULL layer stacking into TransientStackingWindowClient. The tests that were exercising these code paths have all been moved to ui/views/corewm. Also wires up TransientStackingWindowClient in a couple of places that didn't have it. The order of removing from transient parent as well as destroying of transient children is slightly differently than before. To get the order exactly as it was would require some new specific observer functions. I'm hoping we don't need those. Hopefully this doesn't cause issues, if it does I'll revisit. I ended up exposing convenience functions. That's because typing something like: views::corewm::TransientWindowManager::Get(window)->AddTransientChild() was too much for me. There is also some subtlety in so far as the Get() function that takes a const Window* may return NULL, where as non-const never returns NULL. Lastly I had to make Window friend TransientWindowManager. This is temporary until I create a specific TransientWindowManagerObserver that contains the two transient related observer functions in WindowObserver. BUG=none TEST=none R=ben@chromium.org Review URL: https://codereview.chromium.org/115453004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@243368 0039d316-1c4b-4281-b951-d872f2087c98
* Add UMA metrics forpkotwicz@chromium.org2013-12-121-1/+9
| | | | | | | | | | | | | | - The window show type over time. - The type of window which is put into immersive fullscreen. BUG=323066 TEST=None R=oshima,isherman TBR=benwells (For trivial change to chrome/browser/ui/views/apps/native_app_window_views.cc) Review URL: https://codereview.chromium.org/107853002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@240406 0039d316-1c4b-4281-b951-d872f2087c98
* Fix crash when using touch selection in immersive fullscreen.pkotwicz@chromium.org2013-12-051-2/+10
| | | | | | | | | | | | | The ImmersiveFullscreenController was incorrectly consuming all ET_GESTURE_SCROLL_BEGIN. This resulted in TouchSelectionControllerImpl::EditingHandleView getting ET_GESTURE_SCROLL_UPDATE but not ET_GESTURE_SCROLL_BEGIN. This CL also makes the touch selection handles hide when a user uses a gesture to hide the top-of-window views. BUG=324607 TEST=Manual, see bug Review URL: https://codereview.chromium.org/100333004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@239030 0039d316-1c4b-4281-b951-d872f2087c98
* Enable revealing the top-of-window views in immersive fullscreen when the ↵pkotwicz@chromium.org2013-12-031-61/+48
| | | | | | | | | | | | | mouse is hovered over the top edge of the fullscreen window but the fullscreen window is inactive. This is consistent to how hover works elsewhere on ChromeOS (e.g. the maximize/restore button's help bubble) BUG=319959 TEST=ImmersiveFullscreenControllerTest.Inactive R=jamescook TBR=sky (For change to DragTabToImmersiveBrowserOnSeparateDisplay test) Review URL: https://codereview.chromium.org/97943002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@238287 0039d316-1c4b-4281-b951-d872f2087c98
* This CL eliminates the necessity of calling SizeToContents() after calling ↵npentrel@chromium.org2013-11-251-1/+1
| | | | | | | | | | set_anchor_rect(). BUG= Review URL: https://codereview.chromium.org/66253004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@237067 0039d316-1c4b-4281-b951-d872f2087c98
* [Refactor] Move the non-browser specific logic of ImmersiveModeControllerAsh ↵pkotwicz@chromium.org2013-11-061-0/+928
into ash part 2. The goal of the refactor is to allow CustomFrameViewAsh to use ash::ImmersiveFullscreenController so that v2 apps can be put into immersive fullscreen too. BUG=307622 TEST=ImmersiveFullscreenControllerTest.*, ImmersiveModeControllerAshTest.* Review URL: https://codereview.chromium.org/48963002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@233403 0039d316-1c4b-4281-b951-d872f2087c98