Index: ash/wm/toplevel_window_event_handler.cc |
diff --git a/ash/wm/toplevel_window_event_handler.cc b/ash/wm/toplevel_window_event_handler.cc |
index 8f30b0ed65c14cb6703d1416d1ef954326f0852b..a2be144e46234d186d2a1037f25a742cd9eeb981 100644 |
--- a/ash/wm/toplevel_window_event_handler.cc |
+++ b/ash/wm/toplevel_window_event_handler.cc |
@@ -5,10 +5,9 @@ |
#include "ash/wm/toplevel_window_event_handler.h" |
#include "ash/shell.h" |
-#include "ash/wm/property_util.h" |
#include "ash/wm/resize_shadow_controller.h" |
#include "ash/wm/window_resizer.h" |
-#include "ash/wm/window_settings.h" |
+#include "ash/wm/window_state.h" |
#include "ash/wm/window_util.h" |
#include "ash/wm/workspace/snap_sizer.h" |
#include "base/message_loop/message_loop.h" |
@@ -104,10 +103,9 @@ void ToplevelWindowEventHandler::ScopedWindowResizer::OnWindowHierarchyChanging( |
const HierarchyChangeParams& params) { |
if (params.receiver != resizer_->GetTarget()) |
return; |
- |
- if (wm::GetWindowSettings(params.receiver)->continue_drag_after_reparent()) { |
- wm::GetWindowSettings(params.receiver)-> |
- set_continue_drag_after_reparent(false); |
+ wm::WindowState* state = wm::GetWindowState(params.receiver); |
+ if (state->continue_drag_after_reparent()) { |
+ state->set_continue_drag_after_reparent(false); |
AddHandlers(params.new_parent); |
} else { |
handler_->CompleteDrag(DRAG_COMPLETE, 0); |
@@ -118,7 +116,8 @@ void ToplevelWindowEventHandler::ScopedWindowResizer::OnWindowPropertyChanged( |
aura::Window* window, |
const void* key, |
intptr_t old) { |
- if (key == aura::client::kShowStateKey && !wm::IsWindowNormal(window)) |
+ if (key == aura::client::kShowStateKey && |
James Cook
2013/09/18 20:44:17
Not for this CL, but I wonder WindowState should p
oshima
2013/09/19 01:52:01
Yes, I'll look into if we can change such that onl
|
+ !wm::GetWindowState(window)->IsNormal()) |
handler_->CompleteDrag(DRAG_COMPLETE, 0); |
} |
@@ -287,22 +286,24 @@ void ToplevelWindowEventHandler::OnGestureEvent(ui::GestureEvent* event) { |
target->delegate()->GetNonClientComponent(event->location()); |
if (WindowResizer::GetBoundsChangeForWindowComponent(component) == 0) |
return; |
- if (!wm::IsWindowNormal(target)) |
+ |
+ wm::WindowState* window_state = wm::GetWindowState(target); |
+ if (!window_state->IsNormal()) |
return; |
if (fabs(event->details().velocity_y()) > |
kMinVertVelocityForWindowMinimize) { |
// Minimize/maximize. |
if (event->details().velocity_y() > 0 && |
- wm::CanMinimizeWindow(target)) { |
- wm::MinimizeWindow(target); |
- SetWindowAlwaysRestoresToRestoreBounds(target, true); |
- SetRestoreBoundsInParent(target, pre_drag_window_bounds_); |
- } else if (wm::CanMaximizeWindow(target)) { |
- SetRestoreBoundsInParent(target, pre_drag_window_bounds_); |
- wm::MaximizeWindow(target); |
+ window_state->CanMinimize()) { |
+ window_state->Minimize(); |
+ window_state->set_always_restores_to_restore_bounds(true); |
+ window_state->SetRestoreBoundsInParent(pre_drag_window_bounds_); |
+ } else if (window_state->CanMaximize()) { |
+ window_state->SetRestoreBoundsInParent(pre_drag_window_bounds_); |
+ window_state->Maximize(); |
} |
- } else if (wm::CanSnapWindow(target) && |
+ } else if (window_state->CanSnap() && |
fabs(event->details().velocity_x()) > |
kMinHorizVelocityForWindowSwipe) { |
// Snap left/right. |