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. 4 5#ifndef ATHENA_UTIL_FILL_LAYOUT_MANAGER_H_ 6#define ATHENA_UTIL_FILL_LAYOUT_MANAGER_H_ 7 8#include "athena/athena_export.h" 9#include "ui/aura/layout_manager.h" 10 11namespace athena { 12 13class ATHENA_EXPORT FillLayoutManager : public aura::LayoutManager { 14 public: 15 explicit FillLayoutManager(aura::Window* container); 16 virtual ~FillLayoutManager(); 17 18 // aura::LayoutManager: 19 virtual void OnWindowResized() OVERRIDE; 20 virtual void OnWindowAddedToLayout(aura::Window* child) OVERRIDE; 21 virtual void OnWillRemoveWindowFromLayout(aura::Window* child) OVERRIDE; 22 virtual void OnWindowRemovedFromLayout(aura::Window* child) OVERRIDE; 23 virtual void OnChildWindowVisibilityChanged(aura::Window* child, 24 bool visible) OVERRIDE; 25 virtual void SetChildBounds(aura::Window* child, 26 const gfx::Rect& requested_bounds) OVERRIDE; 27 28 private: 29 aura::Window* container_; 30 31 DISALLOW_COPY_AND_ASSIGN(FillLayoutManager); 32}; 33 34} // namespace athena 35 36#endif // ATHENA_UTIL_FILL_LAYOUT_MANAGER_H_ 37