Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(57)

Side by Side Diff: components/dom_distiller/core/reader_mode_preferences.cc

Issue 341563002: Theme Preferences for Distilled Pages (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Minor changes Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "components/dom_distiller/core/reader_mode_preferences.h"
6
7 #include "base/observer_list.h"
8 #include "base/prefs/pref_service.h"
9 #include "components/pref_registry/pref_registry_syncable.h"
10
11 namespace {
12
13 // True if user prefers high-contrast (dark) appearance when in reader mode.
14 const char kThemePref[] = "dom_distiller.theme";
15
16 }
17
18 namespace dom_distiller {
19
20 ReaderModePrefs::ReaderModePrefs(PrefService* pref_service)
21 : pref_service_(pref_service) {
22 }
23
24 ReaderModePrefs::~ReaderModePrefs() {
25 }
26
27 void ReaderModePrefs::AddObserver(Observer* obs) {
28 observer_list_.AddObserver(obs);
29 }
30
31 void ReaderModePrefs::RemoveObserver(Observer* obs) {
32 observer_list_.RemoveObserver(obs);
33 }
34
35 // static
36 void ReaderModePrefs::RegisterProfilePrefs(
37 user_prefs::PrefRegistrySyncable* registry) {
38 registry->RegisterIntegerPref(kThemePref,
39 Theme::kLight,
40 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
41 }
42
43 void ReaderModePrefs::SetThemePref(Theme new_theme) {
44 pref_service_->SetInteger(kThemePref, new_theme);
45 NotifyOnChangeTheme(new_theme);
46 }
47
48 void ReaderModePrefs::NotifyOnChangeTheme(Theme new_theme) {
49 FOR_EACH_OBSERVER(Observer, observer_list_, OnChangeTheme(new_theme));
50 }
51
52 const ReaderModePrefs::Theme ReaderModePrefs::GetThemePref() const {
53 return (Theme) pref_service_->GetInteger(kThemePref);
54 }
55
56 } // namespace dom_distiller
57
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698