Index: ash/wm/dock/docked_window_layout_manager.cc |
diff --git a/ash/wm/dock/docked_window_layout_manager.cc b/ash/wm/dock/docked_window_layout_manager.cc |
index 3298f05602fceab57d553833909fe8408ee21718..d50734c93e2d84a1503049205a0a3cf61a0550b7 100644 |
--- a/ash/wm/dock/docked_window_layout_manager.cc |
+++ b/ash/wm/dock/docked_window_layout_manager.cc |
@@ -5,8 +5,8 @@ |
#include "ash/wm/dock/docked_window_layout_manager.h" |
#include "ash/ash_switches.h" |
-#include "ash/launcher/launcher.h" |
#include "ash/screen_ash.h" |
+#include "ash/shelf/shelf.h" |
#include "ash/shelf/shelf_layout_manager.h" |
#include "ash/shelf/shelf_types.h" |
#include "ash/shelf/shelf_widget.h" |
@@ -98,28 +98,35 @@ class DockedBackgroundWidget : public views::Widget, |
// views::Widget: |
virtual void OnNativeWidgetPaint(gfx::Canvas* canvas) OVERRIDE { |
- const gfx::ImageSkia& launcher_background( |
+ const gfx::ImageSkia& shelf_background( |
alignment_ == DOCKED_ALIGNMENT_LEFT ? |
- launcher_background_left_ : launcher_background_right_); |
+ shelf_background_left_ : shelf_background_right_); |
gfx::Rect rect = gfx::Rect(GetWindowBoundsInScreen().size()); |
SkPaint paint; |
paint.setAlpha(alpha_); |
+ canvas->DrawImageInt(shelf_background, |
+ 0, |
+ 0, |
+ shelf_background.width(), |
+ shelf_background.height(), |
+ alignment_ == DOCKED_ALIGNMENT_LEFT |
+ ? rect.width() - shelf_background.width() |
+ : 0, |
+ 0, |
+ shelf_background.width(), |
+ rect.height(), |
+ false, |
+ paint); |
canvas->DrawImageInt( |
- launcher_background, |
- 0, 0, launcher_background.width(), launcher_background.height(), |
- alignment_ == DOCKED_ALIGNMENT_LEFT ? |
- rect.width() - launcher_background.width() : 0, 0, |
- launcher_background.width(), rect.height(), |
- false, |
- paint); |
- canvas->DrawImageInt( |
- launcher_background, |
- alignment_ == DOCKED_ALIGNMENT_LEFT ? |
- 0 : launcher_background.width() - 1, 0, |
- 1, launcher_background.height(), |
- alignment_ == DOCKED_ALIGNMENT_LEFT ? |
- 0 : launcher_background.width(), 0, |
- rect.width() - launcher_background.width(), rect.height(), |
+ shelf_background, |
+ alignment_ == DOCKED_ALIGNMENT_LEFT ? 0 : shelf_background.width() - 1, |
+ 0, |
+ 1, |
+ shelf_background.height(), |
+ alignment_ == DOCKED_ALIGNMENT_LEFT ? 0 : shelf_background.width(), |
+ 0, |
+ rect.width() - shelf_background.width(), |
+ rect.height(), |
false, |
paint); |
} |
@@ -150,12 +157,12 @@ class DockedBackgroundWidget : public views::Widget, |
Hide(); |
ResourceBundle& rb = ResourceBundle::GetSharedInstance(); |
- gfx::ImageSkia launcher_background = |
+ gfx::ImageSkia shelf_background = |
*rb.GetImageSkiaNamed(IDR_AURA_LAUNCHER_BACKGROUND); |
- launcher_background_left_ = gfx::ImageSkiaOperations::CreateRotatedImage( |
- launcher_background, SkBitmapOperations::ROTATION_90_CW); |
- launcher_background_right_ = gfx::ImageSkiaOperations::CreateRotatedImage( |
- launcher_background, SkBitmapOperations::ROTATION_270_CW); |
+ shelf_background_left_ = gfx::ImageSkiaOperations::CreateRotatedImage( |
+ shelf_background, SkBitmapOperations::ROTATION_90_CW); |
+ shelf_background_right_ = gfx::ImageSkiaOperations::CreateRotatedImage( |
+ shelf_background, SkBitmapOperations::ROTATION_270_CW); |
} |
DockedAlignment alignment_; |
@@ -170,8 +177,8 @@ class DockedBackgroundWidget : public views::Widget, |
ui::Layer opaque_background_; |
// Backgrounds created from shelf background by 90 or 270 degree rotation. |
- gfx::ImageSkia launcher_background_left_; |
- gfx::ImageSkia launcher_background_right_; |
+ gfx::ImageSkia shelf_background_left_; |
+ gfx::ImageSkia shelf_background_right_; |
DISALLOW_COPY_AND_ASSIGN(DockedBackgroundWidget); |
}; |
@@ -320,21 +327,21 @@ struct CompareWindowPos { |
} // namespace |
//////////////////////////////////////////////////////////////////////////////// |
-// A class that observes launcher shelf for bounds changes. |
+// A class that observes shelf for bounds changes. |
class DockedWindowLayoutManager::ShelfWindowObserver : public WindowObserver { |
public: |
explicit ShelfWindowObserver( |
DockedWindowLayoutManager* docked_layout_manager) |
: docked_layout_manager_(docked_layout_manager) { |
- DCHECK(docked_layout_manager_->launcher()->shelf_widget()); |
- docked_layout_manager_->launcher()->shelf_widget()->GetNativeView() |
+ DCHECK(docked_layout_manager_->shelf()->shelf_widget()); |
+ docked_layout_manager_->shelf()->shelf_widget()->GetNativeView() |
->AddObserver(this); |
} |
virtual ~ShelfWindowObserver() { |
- if (docked_layout_manager_->launcher() && |
- docked_layout_manager_->launcher()->shelf_widget()) |
- docked_layout_manager_->launcher()->shelf_widget()->GetNativeView() |
+ if (docked_layout_manager_->shelf() && |
+ docked_layout_manager_->shelf()->shelf_widget()) |
+ docked_layout_manager_->shelf()->shelf_widget()->GetNativeView() |
->RemoveObserver(this); |
} |
@@ -367,7 +374,7 @@ DockedWindowLayoutManager::DockedWindowLayoutManager( |
dragged_window_(NULL), |
is_dragged_window_docked_(false), |
is_dragged_from_dock_(false), |
- launcher_(NULL), |
+ shelf_(NULL), |
workspace_controller_(workspace_controller), |
in_fullscreen_(workspace_controller_->GetWindowState() == |
WORKSPACE_WINDOW_STATE_FULL_SCREEN), |
@@ -387,13 +394,13 @@ DockedWindowLayoutManager::~DockedWindowLayoutManager() { |
} |
void DockedWindowLayoutManager::Shutdown() { |
- if (launcher_ && launcher_->shelf_widget()) { |
- ShelfLayoutManager* shelf_layout_manager = ShelfLayoutManager::ForLauncher( |
- launcher_->shelf_widget()->GetNativeWindow()); |
+ if (shelf_ && shelf_->shelf_widget()) { |
+ ShelfLayoutManager* shelf_layout_manager = ShelfLayoutManager::ForShelf( |
+ shelf_->shelf_widget()->GetNativeWindow()); |
shelf_layout_manager->RemoveObserver(this); |
shelf_observer_.reset(); |
} |
- launcher_ = NULL; |
+ shelf_ = NULL; |
for (size_t i = 0; i < dock_container_->children().size(); ++i) { |
aura::Window* child = dock_container_->children()[i]; |
child->RemoveObserver(this); |
@@ -470,12 +477,12 @@ void DockedWindowLayoutManager::FinishDragging(DockedAction action, |
RecordUmaAction(action, source); |
} |
-void DockedWindowLayoutManager::SetLauncher(ash::Launcher* launcher) { |
- DCHECK(!launcher_); |
- launcher_ = launcher; |
- if (launcher_->shelf_widget()) { |
- ShelfLayoutManager* shelf_layout_manager = ShelfLayoutManager::ForLauncher( |
- launcher_->shelf_widget()->GetNativeWindow()); |
+void DockedWindowLayoutManager::SetShelf(Shelf* shelf) { |
+ DCHECK(!shelf_); |
+ shelf_ = shelf; |
+ if (shelf_->shelf_widget()) { |
+ ShelfLayoutManager* shelf_layout_manager = ShelfLayoutManager::ForShelf( |
+ shelf_->shelf_widget()->GetNativeWindow()); |
shelf_layout_manager->AddObserver(this); |
shelf_observer_.reset(new ShelfWindowObserver(this)); |
} |
@@ -552,10 +559,10 @@ bool DockedWindowLayoutManager::CanDockWindow(aura::Window* window, |
(edge == SNAP_RIGHT && alignment == DOCKED_ALIGNMENT_LEFT)) { |
return false; |
} |
- // Do not allow docking on the same side as launcher shelf. |
+ // Do not allow docking on the same side as shelf. |
ShelfAlignment shelf_alignment = SHELF_ALIGNMENT_BOTTOM; |
- if (launcher_) |
- shelf_alignment = launcher_->alignment(); |
+ if (shelf_) |
+ shelf_alignment = shelf_->alignment(); |
if ((edge == SNAP_LEFT && shelf_alignment == SHELF_ALIGNMENT_LEFT) || |
(edge == SNAP_RIGHT && shelf_alignment == SHELF_ALIGNMENT_RIGHT)) { |
return false; |
@@ -636,7 +643,7 @@ void DockedWindowLayoutManager::SetChildBounds( |
SetChildBoundsDirect(child, requested_bounds); |
if (IsPopupOrTransient(child)) |
return; |
- ShelfLayoutManager* shelf_layout = internal::ShelfLayoutManager::ForLauncher( |
+ ShelfLayoutManager* shelf_layout = internal::ShelfLayoutManager::ForShelf( |
dock_container_); |
if (shelf_layout) |
shelf_layout->UpdateVisibilityState(); |
@@ -688,15 +695,15 @@ void DockedWindowLayoutManager::OnShelfAlignmentChanged( |
if (dock_container_->GetRootWindow() != root_window) |
return; |
- if (!launcher_ || !launcher_->shelf_widget()) |
+ if (!shelf_ || !shelf_->shelf_widget()) |
return; |
if (alignment_ == DOCKED_ALIGNMENT_NONE) |
return; |
- // Do not allow launcher and dock on the same side. Switch side that |
+ // Do not allow shelf and dock on the same side. Switch side that |
// the dock is attached to and move all dock windows to that new side. |
- ShelfAlignment shelf_alignment = launcher_->shelf_widget()->GetAlignment(); |
+ ShelfAlignment shelf_alignment = shelf_->shelf_widget()->GetAlignment(); |
if (alignment_ == DOCKED_ALIGNMENT_LEFT && |
shelf_alignment == SHELF_ALIGNMENT_LEFT) { |
alignment_ = DOCKED_ALIGNMENT_RIGHT; |