Index: ash/wm/workspace/workspace_event_filter.cc |
diff --git a/ash/wm/workspace/workspace_event_filter.cc b/ash/wm/workspace/workspace_event_filter.cc |
index 456691183b4bc672fd599a900e4fa2396d5a28d3..effdc2fffa9b334cbb5d02b918cb7477693b4d38 100644 |
--- a/ash/wm/workspace/workspace_event_filter.cc |
+++ b/ash/wm/workspace/workspace_event_filter.cc |
@@ -4,6 +4,7 @@ |
#include "ash/wm/workspace/workspace_event_filter.h" |
+#include "ash/wm/property_util.h" |
#include "ash/wm/window_frame.h" |
#include "ash/wm/window_util.h" |
#include "ash/wm/workspace/workspace_layout_manager.h" |
@@ -66,6 +67,12 @@ WindowResizer* WorkspaceEventFilter::CreateWindowResizer( |
aura::Window* window, |
const gfx::Point& point, |
int window_component) { |
+ // Allow dragging maximized windows if it's not tracked by workspace. This is |
+ // set by tab dragging code. |
+ if (!wm::IsWindowNormal(window) && |
+ (window_component != HTCAPTION || GetTrackedByWorkspace(window))) { |
+ return NULL; |
+ } |
return |
new WorkspaceWindowResizer(window, point, window_component, grid_size()); |
} |