| Index: ash/wm/workspace/workspace_window_resizer.cc
|
| diff --git a/ash/wm/workspace/workspace_window_resizer.cc b/ash/wm/workspace/workspace_window_resizer.cc
|
| index fe843a132418f8118a9e0318743449ebc9121d23..b881b792cb37316cd8ebf4b4ba3bbe266605262a 100644
|
| --- a/ash/wm/workspace/workspace_window_resizer.cc
|
| +++ b/ash/wm/workspace/workspace_window_resizer.cc
|
| @@ -4,6 +4,7 @@
|
|
|
| #include "ash/wm/workspace/workspace_window_resizer.h"
|
|
|
| +#include "ash/wm/window_util.h"
|
| #include "ui/aura/window.h"
|
| #include "ui/aura/window_delegate.h"
|
| #include "ui/aura/window_property.h"
|
| @@ -30,8 +31,10 @@ WorkspaceWindowResizer::WorkspaceWindowResizer(aura::Window* window,
|
| const gfx::Point& location,
|
| int window_component,
|
| int grid_size)
|
| - : WindowResizer(window, location, window_component, grid_size) {
|
| + : WindowResizer(window, location, window_component, grid_size),
|
| + constrain_size_(wm::IsWindowNormal(window)) {
|
| if (is_resizable() && GetHeightBeforeObscured(window) &&
|
| + constrain_size_ &&
|
| (!WindowTouchesBottomOfScreen() ||
|
| bounds_change() != kBoundsChange_Repositions)) {
|
| ClearHeightBeforeObscured(window);
|
| @@ -84,6 +87,9 @@ int WorkspaceWindowResizer::GetHeightBeforeObscured(aura::Window* window) {
|
| }
|
|
|
| void WorkspaceWindowResizer::AdjustBounds(gfx::Rect* bounds) const {
|
| + if (!constrain_size_)
|
| + return;
|
| +
|
| gfx::Rect work_area(gfx::Screen::GetMonitorWorkAreaNearestWindow(window()));
|
| if (bounds->bottom() < work_area.bottom()) {
|
| int height = GetHeightBeforeObscured(window());
|
|
|