1
    2
    3
    4
    5
    6
    7
    8
    9
   10
   11
   12
   13
   14
   15
   16
   17
   18
   19
   20
   21
   22
   23
   24
   25
   26
   27
   28
   29
   30
   31
   32
   33
   34
   35
   36
   37
   38
   39
   40
   41
   42
   43
   44
   45
   46
   47
   48
   49
   50
   51
   52
   53
   54
   55
   56
   57
   58
   59
   60
   61
   62
   63
   64
   65
   66
   67
   68
   69
   70
   71
   72
   73
   74
   75
   76
   77
   78
   79
   80
   81
   82
   83
   84
   85
   86
   87
   88
   89
   90
   91
   92
   93
   94
   95
   96
   97
   98
   99
  100

ash / public / cpp / ambient / ambient_prefs.h [blame]

// Copyright 2020 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef ASH_PUBLIC_CPP_AMBIENT_AMBIENT_PREFS_H_
#define ASH_PUBLIC_CPP_AMBIENT_AMBIENT_PREFS_H_

#include "ash/public/cpp/ash_public_export.h"

namespace ash {
namespace ambient {
namespace prefs {

// Integer pref corresponding to the ambient mode theme that the user has
// selected (see AmbientTheme enum).
// DEPRECATED: Use |kAmbientUiSettings| instead; that's the successor.
ASH_PUBLIC_EXPORT extern const char kAmbientTheme[];

// Dictionary pref capturing the ambient UI that the user has selected:
// {
//   // Required.
//   "theme": <integer value of |AmbientTheme| enum>
//   // Which video the user picked. Only used if the "theme" is |kVideo|.
//   "video": <integer value of |AmbientVideo| enum>
// }
ASH_PUBLIC_EXPORT extern const char kAmbientUiSettings[];

// Fields in the |kAmbientUiSettings| dictionary.
ASH_PUBLIC_EXPORT extern const char kAmbientUiSettingsFieldTheme[];
ASH_PUBLIC_EXPORT extern const char kAmbientUiSettingsFieldVideo[];

// A GUID for backdrop client.
ASH_PUBLIC_EXPORT extern const char kAmbientBackdropClientId[];

// Boolean pref for whether ambient mode is enabled.
ASH_PUBLIC_EXPORT extern const char kAmbientModeEnabled[];

// Integer pref for reporting metrics with the histogram
// |Ash.AmbientMode.PhotoSource|. Not displayed to the user in settings.
ASH_PUBLIC_EXPORT extern const char kAmbientModePhotoSourcePref[];

// Integer pref for the number of seconds to wait before starting Ambient mode
// on lock screen. Not displayed to the user in settings.
ASH_PUBLIC_EXPORT extern const char
    kAmbientModeLockScreenInactivityTimeoutSeconds[];

// Integer pref for the number of seconds to wait before locking the screen in
// the background after Ambient mode has started. Not displayed to the user in
// settings.
ASH_PUBLIC_EXPORT extern const char
    kAmbientModeLockScreenBackgroundTimeoutSeconds[];

// Float pref for the playback speed of the animation in ambient mode. Currently
// does not apply to slideshow mode. Not displayed to the user in settings.
ASH_PUBLIC_EXPORT extern const char kAmbientModeAnimationPlaybackSpeed[];

// Integer pref for the interval in seconds to refresh photos. Not displayed to
// the user in settings.
ASH_PUBLIC_EXPORT extern const char kAmbientModePhotoRefreshIntervalSeconds[];

// Boolean policy to pref mapping for whether the managed screensaver is
// enabled. This pref takes the value from the ScreensaverLockScreenEnabled
// policy for user profiles, and from the DeviceScreensaverLoginScreenEnabled
// policy for the sign-in profile.
ASH_PUBLIC_EXPORT extern const char kAmbientModeManagedScreensaverEnabled[];

// Integer policy to pref mapping for the time in seconds that the device will
// wait idle before showing the managed screensaver. This pref takes the value
// from the ScreensaverLockScreenIdleTimeoutSeconds policy for user profiles,
// and from the DeviceScreensaverLoginScreenIdleTimeoutSeconds policy for the
// sign-in profile.
ASH_PUBLIC_EXPORT extern const char
    kAmbientModeManagedScreensaverIdleTimeoutSeconds[];

// Integer policy to pref mapping for the interval in seconds to display an
// image when the managed screensaver has multiple images to display. This pref
// takes the value from the ScreensaverLockScreenImageDisplayIntervalSeconds
// policy for user profiles, and from the
// DeviceScreensaverLoginScreenImageDisplayIntervalSeconds policy for the
// sign-in profile.
ASH_PUBLIC_EXPORT extern const char
    kAmbientModeManagedScreensaverImageDisplayIntervalSeconds[];

// List policy to pref mapping for the list of external images sources to
// display in the managed screensaver has multiple images to display.
// This pref takes the value from the ScreensaverLockScreenImages policy
// for user profiles, and from the DeviceScreensaverLoginScreenImages policy
// for the sign-in profile.
ASH_PUBLIC_EXPORT extern const char kAmbientModeManagedScreensaverImages[];

// Integer pref for the number of minutes to wait before putting the device into
// sleep after Ambient mode has started. Logged in users can set this value in
// the Personalization Hub screensaver subpage.
ASH_PUBLIC_EXPORT extern const char kAmbientModeRunningDurationMinutes[];

}  // namespace prefs
}  // namespace ambient
}  // namespace ash

#endif  // ASH_PUBLIC_CPP_AMBIENT_AMBIENT_PREFS_H_