1116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch// Copyright 2014 The Chromium Authors. All rights reserved. 2116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch// Use of this source code is governed by a BSD-style license that can be 3116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch// found in the LICENSE file. 4116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 5116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "ui/ozone/common/chromeos/display_util.h" 6116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 71320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci#include "ui/display/types/display_mode.h" 81320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci#include "ui/display/types/display_snapshot.h" 9116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 10116680a4aac90f2aa7413d9095a592090648e557Ben Murdochnamespace ui { 11116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 12116680a4aac90f2aa7413d9095a592090648e557Ben MurdochDisplayMode_Params GetDisplayModeParams(const DisplayMode& mode) { 13116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch DisplayMode_Params params; 14116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch params.size = mode.size(); 15116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch params.is_interlaced = mode.is_interlaced(); 16116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch params.refresh_rate = mode.refresh_rate(); 17116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 18116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch return params; 19116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch} 20116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 21116680a4aac90f2aa7413d9095a592090648e557Ben MurdochDisplaySnapshot_Params GetDisplaySnapshotParams( 22116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const DisplaySnapshot& display) { 23116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch DisplaySnapshot_Params params; 24116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch params.display_id = display.display_id(); 25116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch params.has_proper_display_id = display.has_proper_display_id(); 26116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch params.origin = display.origin(); 27116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch params.physical_size = display.physical_size(); 28116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch params.type = display.type(); 29116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch params.is_aspect_preserving_scaling = display.is_aspect_preserving_scaling(); 30116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch params.has_overscan = display.has_overscan(); 31116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch params.display_name = display.display_name(); 32116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch for (size_t i = 0; i < display.modes().size(); ++i) 33116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch params.modes.push_back(GetDisplayModeParams(*display.modes()[i])); 34116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 35116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch params.has_current_mode = display.current_mode() != NULL; 36116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch if (params.has_current_mode) 37116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch params.current_mode = GetDisplayModeParams(*display.current_mode()); 38116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 39116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch params.has_native_mode = display.native_mode() != NULL; 40116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch if (params.has_native_mode) 41116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch params.native_mode = GetDisplayModeParams(*display.native_mode()); 42116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 43116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch params.string_representation = display.ToString(); 44116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 45116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch return params; 46116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch} 47116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 48116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch} // namespace ui 49