1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "athena/common/fill_layout_manager.h"
7 #include "base/logging.h"
8 #include "ui/aura/window.h"
12 FillLayoutManager::FillLayoutManager(aura::Window
* container
)
13 : container_(container
) {
17 FillLayoutManager::~FillLayoutManager() {
20 void FillLayoutManager::OnWindowResized() {
21 gfx::Rect full_bounds
= gfx::Rect(container_
->bounds().size());
22 for (aura::Window::Windows::const_iterator iter
=
23 container_
->children().begin();
24 iter
!= container_
->children().end();
26 SetChildBoundsDirect(*iter
, full_bounds
);
30 void FillLayoutManager::OnWindowAddedToLayout(aura::Window
* child
) {
31 SetChildBoundsDirect(child
, (gfx::Rect(container_
->bounds().size())));
34 void FillLayoutManager::OnWillRemoveWindowFromLayout(aura::Window
* child
) {
36 void FillLayoutManager::OnWindowRemovedFromLayout(aura::Window
* child
) {
38 void FillLayoutManager::OnChildWindowVisibilityChanged(aura::Window
* child
,
41 void FillLayoutManager::SetChildBounds(aura::Window
* child
,
42 const gfx::Rect
& requested_bounds
) {
43 // Ignore SetBounds request.