Commit 88634080 authored by Min Chen's avatar Min Chen Committed by Commit Bot

Keep the dragged window at top during drag.

Bug: 862308
Change-Id: I2f018ab228eaee5ca3bcbdd9a318d71f05612ca3
Reviewed-on: https://chromium-review.googlesource.com/1164564Reviewed-by: default avatarXiaoqian Dai <xdai@chromium.org>
Commit-Queue: Min Chen <minch@chromium.org>
Cr-Commit-Position: refs/heads/master@{#581270}
parent 879dbe10
...@@ -595,7 +595,7 @@ void ScopedTransformOverviewWindow::CreateAndApplyMaskAndShadow() { ...@@ -595,7 +595,7 @@ void ScopedTransformOverviewWindow::CreateAndApplyMaskAndShadow() {
// Add the mask which gives the window selector items rounded corners, and add // Add the mask which gives the window selector items rounded corners, and add
// the shadow around the window. // the shadow around the window.
ui::Layer* layer = minimized_widget_ ui::Layer* layer = minimized_widget_
? minimized_widget_->GetContentsView()->layer() ? minimized_widget_->GetNativeWindow()->layer()
: window_->layer(); : window_->layer();
if (!minimized_widget_) if (!minimized_widget_)
......
...@@ -198,10 +198,6 @@ std::unique_ptr<views::Widget> CreateNewSelectorItemWidget( ...@@ -198,10 +198,6 @@ std::unique_ptr<views::Widget> CreateNewSelectorItemWidget(
widget->SetContentsView(new NewSelectorItemView()); widget->SetContentsView(new NewSelectorItemView());
widget->Show(); widget->Show();
// Stack the newly created widget below the dragged window.
dragged_window->parent()->StackChildBelow(widget->GetNativeWindow(),
dragged_window);
if (animate) { if (animate) {
widget->SetOpacity(0.f); widget->SetOpacity(0.f);
ui::ScopedLayerAnimationSettings animation_settings( ui::ScopedLayerAnimationSettings animation_settings(
...@@ -577,6 +573,9 @@ void WindowGrid::OnWindowDragStarted(aura::Window* dragged_window, ...@@ -577,6 +573,9 @@ void WindowGrid::OnWindowDragStarted(aura::Window* dragged_window,
window_selector_->AddItem(new_selector_item_widget_->GetNativeWindow(), window_selector_->AddItem(new_selector_item_widget_->GetNativeWindow(),
/*reposition=*/true, animate); /*reposition=*/true, animate);
// Stack the |dragged_window| at top during drag.
dragged_window->parent()->StackChildAtTop(dragged_window);
// Called to set caption and title visibility during dragging. // Called to set caption and title visibility during dragging.
OnSelectorItemDragStarted(/*item=*/nullptr); OnSelectorItemDragStarted(/*item=*/nullptr);
} }
......
...@@ -124,8 +124,8 @@ class ASH_EXPORT WindowGrid : public aura::WindowObserver, ...@@ -124,8 +124,8 @@ class ASH_EXPORT WindowGrid : public aura::WindowObserver,
void OnSelectorItemDragStarted(WindowSelectorItem* item); void OnSelectorItemDragStarted(WindowSelectorItem* item);
void OnSelectorItemDragEnded(); void OnSelectorItemDragEnded();
// Called when a window's tab(s) start/continue/end being dragged around in // Called when a window (either it's browser window or an app window)
// WindowGrid. // start/continue/end being dragged in tablet mode.
void OnWindowDragStarted(aura::Window* dragged_window, bool animate); void OnWindowDragStarted(aura::Window* dragged_window, bool animate);
void OnWindowDragContinued(aura::Window* dragged_window, void OnWindowDragContinued(aura::Window* dragged_window,
const gfx::Point& location_in_screen, const gfx::Point& location_in_screen,
......
...@@ -139,8 +139,8 @@ class ASH_EXPORT WindowSelector : public display::DisplayObserver, ...@@ -139,8 +139,8 @@ class ASH_EXPORT WindowSelector : public display::DisplayObserver,
void ActivateDraggedWindow(); void ActivateDraggedWindow();
void ResetDraggedWindowGesture(); void ResetDraggedWindowGesture();
// Called when a window's tab(s) start/continue/end being dragged around if // Called when a window (either it's browser window or an app window)
// overview mode is active. // start/continue/end being dragged in tablet mode.
// TODO(xdai): Currently it doesn't work for multi-display scenario. // TODO(xdai): Currently it doesn't work for multi-display scenario.
void OnWindowDragStarted(aura::Window* dragged_window, bool animate); void OnWindowDragStarted(aura::Window* dragged_window, bool animate);
void OnWindowDragContinued(aura::Window* dragged_window, void OnWindowDragContinued(aura::Window* dragged_window,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment