123730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)// Copyright 2014 The Chromium Authors. All rights reserved. 223730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 323730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)// found in the LICENSE file. 423730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) 523730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)#include "ui/display/chromeos/x11/display_snapshot_x11.h" 623730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) 723730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)#include "base/strings/stringprintf.h" 823730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)#include "ui/display/chromeos/x11/display_mode_x11.h" 923730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) 1023730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)namespace ui { 1123730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) 1223730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)DisplaySnapshotX11::DisplaySnapshotX11( 1323730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) int64_t display_id, 1423730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) bool has_proper_display_id, 1523730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) const gfx::Point& origin, 1623730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) const gfx::Size& physical_size, 17c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch DisplayConnectionType type, 1823730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) bool is_aspect_preserving_scaling, 19c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch bool has_overscan, 20c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch std::string display_name, 2123730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) const std::vector<const DisplayMode*>& modes, 2223730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) const DisplayMode* current_mode, 2323730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) const DisplayMode* native_mode, 2423730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) RROutput output, 2523730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) RRCrtc crtc, 2623730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) int index) 2723730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) : DisplaySnapshot(display_id, 2823730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) has_proper_display_id, 2923730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) origin, 3023730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) physical_size, 3123730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) type, 3223730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) is_aspect_preserving_scaling, 33c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch has_overscan, 34c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch display_name, 3523730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) modes, 3623730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) current_mode, 3723730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) native_mode), 3823730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) output_(output), 3923730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) crtc_(crtc), 4023730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) index_(index) {} 4123730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) 4223730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)DisplaySnapshotX11::~DisplaySnapshotX11() {} 4323730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) 4423730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)std::string DisplaySnapshotX11::ToString() const { 4523730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) return base::StringPrintf( 4623730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) "[type=%d, output=%ld, crtc=%ld, mode=%ld, dim=%dx%d]", 4723730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) type_, 4823730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) output_, 4923730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) crtc_, 5023730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) current_mode_ 5123730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) ? static_cast<const DisplayModeX11*>(current_mode_)->mode_id() 5223730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) : 0, 5323730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) physical_size_.width(), 5423730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) physical_size_.height()); 5523730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)} 5623730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) 5723730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)} // namespace ui 58