Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(551)

Unified Diff: ui/aura_shell/workspace/workspace_manager.h

Issue 8391035: Drag and rotate windows (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: " Created 9 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ui/aura_shell/workspace/workspace_manager.h
diff --git a/ui/aura_shell/workspace/workspace_manager.h b/ui/aura_shell/workspace/workspace_manager.h
index 925fea24925d445180e7eb5e2fb4385bb8f81b26..ace5ea69a9ddc22fc61a6cebc33cd0b1f7c30a04 100644
--- a/ui/aura_shell/workspace/workspace_manager.h
+++ b/ui/aura_shell/workspace/workspace_manager.h
@@ -44,6 +44,9 @@ class AURA_SHELL_EXPORT WorkspaceManager : public aura::DesktopObserver {
// Returns the workspace that contanis the |window|.
Workspace* FindBy(aura::Window* window) const;
+ // Returns the window for swap operation based on the |location|.
+ aura::Window* FindSwapWindowForLocation(const gfx::Point& location);
+
// Sets the bounds of all workspaces.
void LayoutWorkspaces();
@@ -54,6 +57,11 @@ class AURA_SHELL_EXPORT WorkspaceManager : public aura::DesktopObserver {
void SetOverview(bool overview);
bool is_overview() const { return is_overview_; }
+ // Swaps the |drag| and |target|. If they're in the same workspace,
+ // this simply swaps the layout location. If they're in the different
+ // workspaces, these windows move between workspaces.
+ void SwapWindow(aura::Window* drag, aura::Window* target);
+
// Overridden from aura::DesktopObserver:
virtual void OnDesktopResized(const gfx::Size& new_size) OVERRIDE;
virtual void OnActiveWindowChanged(aura::Window* active) OVERRIDE;
@@ -62,6 +70,7 @@ class AURA_SHELL_EXPORT WorkspaceManager : public aura::DesktopObserver {
friend class Workspace;
FRIEND_TEST_ALL_PREFIXES(WorkspaceManagerTest, Overview);
FRIEND_TEST_ALL_PREFIXES(WorkspaceManagerTest, LayoutWorkspaces);
+ FRIEND_TEST_ALL_PREFIXES(WorkspaceManagerTest, FindSwapWindow);
void AddWorkspace(Workspace* workspace);
void RemoveWorkspace(Workspace* workspace);

Powered by Google App Engine
This is Rietveld 408576698