| OLD | NEW |
| (Empty) |
| 1 // Copyright 2016 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 ASH_COMMON_WM_WM_SNAP_TO_PIXEL_LAYOUT_MANAGER_H_ | |
| 6 #define ASH_COMMON_WM_WM_SNAP_TO_PIXEL_LAYOUT_MANAGER_H_ | |
| 7 | |
| 8 #include "ash/ash_export.h" | |
| 9 #include "ash/common/wm_layout_manager.h" | |
| 10 #include "base/macros.h" | |
| 11 | |
| 12 namespace ash { | |
| 13 namespace wm { | |
| 14 | |
| 15 // A layout manager that places children's layer at the physical pixel | |
| 16 // boundaries. | |
| 17 class ASH_EXPORT WmSnapToPixelLayoutManager : public WmLayoutManager { | |
| 18 public: | |
| 19 WmSnapToPixelLayoutManager(); | |
| 20 ~WmSnapToPixelLayoutManager() override; | |
| 21 | |
| 22 // Sets WmSnapToPixelLayoutManager as the LayoutManager on the appropriate | |
| 23 // descendants of |window|. | |
| 24 static void InstallOnContainers(WmWindow* window); | |
| 25 | |
| 26 protected: | |
| 27 // Overridden from aura::LayoutManager: | |
| 28 void OnWindowResized() override; | |
| 29 void OnWindowAddedToLayout(WmWindow* child) override; | |
| 30 void OnWillRemoveWindowFromLayout(WmWindow* child) override; | |
| 31 void OnWindowRemovedFromLayout(WmWindow* child) override; | |
| 32 void OnChildWindowVisibilityChanged(WmWindow* child, bool visibile) override; | |
| 33 void SetChildBounds(WmWindow* child, | |
| 34 const gfx::Rect& requested_bounds) override; | |
| 35 | |
| 36 private: | |
| 37 DISALLOW_COPY_AND_ASSIGN(WmSnapToPixelLayoutManager); | |
| 38 }; | |
| 39 | |
| 40 } // namespace wm | |
| 41 } // namespace ash | |
| 42 | |
| 43 #endif // ASH_COMMON_WM_WM_SNAP_TO_PIXEL_LAYOUT_MANAGER_H_ | |
| OLD | NEW |