12345678910111213141516171819202122232425262728293031323334 |
- // Copyright 2018 The Chromium Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
- #include "ash/display/persistent_window_info.h"
- #include "ash/wm/window_state.h"
- #include "ui/aura/window.h"
- #include "ui/display/display.h"
- #include "ui/display/screen.h"
- namespace ash {
- PersistentWindowInfo::PersistentWindowInfo(aura::Window* window,
- bool is_landscape_before_rotation)
- : is_landscape(is_landscape_before_rotation) {
- const auto& display =
- display::Screen::GetScreen()->GetDisplayNearestWindow(window);
- window_bounds_in_screen = window->GetBoundsInScreen();
- display_id = display.id();
- display_bounds_in_screen = display.bounds();
- WindowState* window_state = WindowState::Get(window);
- DCHECK(window_state);
- if (window_state->HasRestoreBounds())
- restore_bounds_in_screen = window_state->GetRestoreBoundsInScreen();
- }
- PersistentWindowInfo::PersistentWindowInfo(const PersistentWindowInfo& other) =
- default;
- PersistentWindowInfo::~PersistentWindowInfo() = default;
- } // namespace ash
|