15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifndef CHROME_BROWSER_CHROMEOS_DISPLAY_DISPLAY_PREFERENCES_H_ 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define CHROME_BROWSER_CHROMEOS_DISPLAY_DISPLAY_PREFERENCES_H_ 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "base/basictypes.h" 9c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "third_party/cros_system_api/dbus/service_constants.h" 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)class PrefRegistrySimple; 122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)namespace ash { 142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)struct DisplayLayout; 152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace gfx { 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)class Display; 195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)class Insets; 205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace chromeos { 235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Registers the prefs associated with display settings and stored 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// into Local State. 262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void RegisterDisplayLocalStatePrefs(PrefRegistrySimple* registry); 272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Stores the current displays prefereces (both primary display id and 292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// dispay layout). 302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void StoreDisplayPrefs(); 312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 32eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// Sets the display layout for the current displays. 33eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdochvoid SetCurrentDisplayLayout(const ash::DisplayLayout& layout); 342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 35c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Load display preferences from Local Store. |first_run_after_boot| is used 36c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// determine if a certain preference should be applied at boot time or 37c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// restart. 38c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)void LoadDisplayPreferences(bool first_run_after_boot); 392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 40c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Stores the display layout for given display pairs for tests. 412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void StoreDisplayLayoutPrefForTest(int64 id1, 422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) int64 id2, 432a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) const ash::DisplayLayout& layout); 445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 45c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Stores the given |power_state| for tests. 46c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)void StoreDisplayPowerStateForTest(DisplayPowerState power_state); 47c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace chromeos 495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif // CHROME_BROWSER_CHROMEOS_DISPLAY_DISPLAY_PREFERENCES_H_ 51