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

Side by Side Diff: ash/wm/dock/docked_window_layout_manager.h

Issue 19054013: Implement automatic layout and stacking for docked windows (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@issue_233331_sized
Patch Set: Implement automatic layout and stacking (simplification) Created 7 years, 5 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef ASH_WM_DOCK_DOCKED_WINDOW_LAYOUT_MANAGER_H_ 5 #ifndef ASH_WM_DOCK_DOCKED_WINDOW_LAYOUT_MANAGER_H_
6 #define ASH_WM_DOCK_DOCKED_WINDOW_LAYOUT_MANAGER_H_ 6 #define ASH_WM_DOCK_DOCKED_WINDOW_LAYOUT_MANAGER_H_
7 7
8 #include "ash/ash_export.h" 8 #include "ash/ash_export.h"
9 #include "ash/shelf/shelf_layout_manager_observer.h" 9 #include "ash/shelf/shelf_layout_manager_observer.h"
10 #include "ash/shell_observer.h" 10 #include "ash/shell_observer.h"
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
96 virtual void SetChildBounds(aura::Window* child, 96 virtual void SetChildBounds(aura::Window* child,
97 const gfx::Rect& requested_bounds) OVERRIDE; 97 const gfx::Rect& requested_bounds) OVERRIDE;
98 98
99 // ash::ShellObserver: 99 // ash::ShellObserver:
100 virtual void OnShelfAlignmentChanged(aura::RootWindow* root_window) OVERRIDE; 100 virtual void OnShelfAlignmentChanged(aura::RootWindow* root_window) OVERRIDE;
101 101
102 // aura::WindowObserver: 102 // aura::WindowObserver:
103 virtual void OnWindowPropertyChanged(aura::Window* window, 103 virtual void OnWindowPropertyChanged(aura::Window* window,
104 const void* key, 104 const void* key,
105 intptr_t old) OVERRIDE; 105 intptr_t old) OVERRIDE;
106 virtual void OnWindowBoundsChanged(aura::Window* window,
107 const gfx::Rect& old_bounds,
108 const gfx::Rect& new_bounds) OVERRIDE;
106 109
107 // aura::client::ActivationChangeObserver: 110 // aura::client::ActivationChangeObserver:
108 virtual void OnWindowActivated(aura::Window* gained_active, 111 virtual void OnWindowActivated(aura::Window* gained_active,
109 aura::Window* lost_active) OVERRIDE; 112 aura::Window* lost_active) OVERRIDE;
110 113
111 // ShelfLayoutManagerObserver: 114 // ShelfLayoutManagerObserver:
112 virtual void WillChangeVisibilityState( 115 virtual void WillChangeVisibilityState(
113 ShelfVisibilityState new_state) OVERRIDE; 116 ShelfVisibilityState new_state) OVERRIDE;
114 117
115 private: 118 private:
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
167 bool shelf_hidden_; 170 bool shelf_hidden_;
168 // Current width of the dock. 171 // Current width of the dock.
169 int docked_width_; 172 int docked_width_;
170 173
171 // Last bounds that were sent to observers. 174 // Last bounds that were sent to observers.
172 gfx::Rect docked_bounds_; 175 gfx::Rect docked_bounds_;
173 176
174 // Side of the screen that the dock is positioned at. 177 // Side of the screen that the dock is positioned at.
175 DockedAlignment alignment_; 178 DockedAlignment alignment_;
176 179
180 // The last active window. Used to maintain stacking even if no windows are
flackr 2013/07/18 23:18:41 nit: stacking order
varkha 2013/07/19 16:52:01 Done (in panels as well).
181 // currently focused.
182 aura::Window* last_active_;
183
177 // Observers of dock bounds changes. 184 // Observers of dock bounds changes.
178 ObserverList<DockedWindowLayoutManagerObserver> observer_list_; 185 ObserverList<DockedWindowLayoutManagerObserver> observer_list_;
179 186
180 DISALLOW_COPY_AND_ASSIGN(DockedWindowLayoutManager); 187 DISALLOW_COPY_AND_ASSIGN(DockedWindowLayoutManager);
181 }; 188 };
182 189
183 } // namespace internal 190 } // namespace internal
184 } // namespace ash 191 } // namespace ash
185 192
186 #endif // ASH_WM_DOCK_DOCKED_WINDOW_LAYOUT_MANAGER_H_ 193 #endif // ASH_WM_DOCK_DOCKED_WINDOW_LAYOUT_MANAGER_H_
OLDNEW
« no previous file with comments | « no previous file | ash/wm/dock/docked_window_layout_manager.cc » ('j') | ash/wm/dock/docked_window_layout_manager.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698