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() {
// Add the mask which gives the window selector items rounded corners, and add
// the shadow around the window.
ui::Layer* layer = minimized_widget_
? minimized_widget_->GetContentsView()->layer()
? minimized_widget_->GetNativeWindow()->layer()
: window_->layer();
if (!minimized_widget_)
......
......@@ -198,10 +198,6 @@ std::unique_ptr<views::Widget> CreateNewSelectorItemWidget(
widget->SetContentsView(new NewSelectorItemView());
widget->Show();
// Stack the newly created widget below the dragged window.
dragged_window->parent()->StackChildBelow(widget->GetNativeWindow(),
dragged_window);
if (animate) {
widget->SetOpacity(0.f);
ui::ScopedLayerAnimationSettings animation_settings(
......@@ -577,6 +573,9 @@ void WindowGrid::OnWindowDragStarted(aura::Window* dragged_window,
window_selector_->AddItem(new_selector_item_widget_->GetNativeWindow(),
/*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.
OnSelectorItemDragStarted(/*item=*/nullptr);
}
......
......@@ -124,8 +124,8 @@ class ASH_EXPORT WindowGrid : public aura::WindowObserver,
void OnSelectorItemDragStarted(WindowSelectorItem* item);
void OnSelectorItemDragEnded();
// Called when a window's tab(s) start/continue/end being dragged around in
// WindowGrid.
// Called when a window (either it's browser window or an app window)
// start/continue/end being dragged in tablet mode.
void OnWindowDragStarted(aura::Window* dragged_window, bool animate);
void OnWindowDragContinued(aura::Window* dragged_window,
const gfx::Point& location_in_screen,
......
......@@ -139,8 +139,8 @@ class ASH_EXPORT WindowSelector : public display::DisplayObserver,
void ActivateDraggedWindow();
void ResetDraggedWindowGesture();
// Called when a window's tab(s) start/continue/end being dragged around if
// overview mode is active.
// Called when a window (either it's browser window or an app window)
// start/continue/end being dragged in tablet mode.
// TODO(xdai): Currently it doesn't work for multi-display scenario.
void OnWindowDragStarted(aura::Window* dragged_window, bool animate);
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