OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/renderer_preferences_util.h" | 5 #include "chrome/browser/renderer_preferences_util.h" |
6 | 6 |
7 #include "base/macros.h" | 7 #include "base/macros.h" |
8 #include "base/prefs/pref_service.h" | 8 #include "base/prefs/pref_service.h" |
9 #include "chrome/browser/profiles/profile.h" | 9 #include "chrome/browser/profiles/profile.h" |
10 #include "chrome/common/pref_names.h" | 10 #include "chrome/common/pref_names.h" |
11 #include "content/public/common/renderer_preferences.h" | 11 #include "content/public/common/renderer_preferences.h" |
12 #include "third_party/skia/include/core/SkColor.h" | 12 #include "third_party/skia/include/core/SkColor.h" |
13 | 13 |
14 #if defined(OS_LINUX) || defined(OS_ANDROID) | 14 #if defined(OS_LINUX) || defined(OS_ANDROID) |
15 #include "ui/gfx/font_render_params.h" | 15 #include "ui/gfx/font_render_params.h" |
16 #endif | 16 #endif |
17 | 17 |
18 #if defined(TOOLKIT_VIEWS) | 18 #if defined(TOOLKIT_VIEWS) |
19 #include "ui/views/controls/textfield/textfield.h" | 19 #include "ui/views/controls/textfield/textfield.h" |
20 #endif | 20 #endif |
21 | 21 |
22 #if defined(USE_AURA) && defined(OS_LINUX) && !defined(OS_CHROMEOS) | 22 #if defined(USE_AURA) && defined(OS_LINUX) && !defined(OS_CHROMEOS) |
23 #include "chrome/browser/themes/theme_service.h" | 23 #include "chrome/browser/themes/theme_service.h" |
24 #include "chrome/browser/themes/theme_service_factory.h" | 24 #include "chrome/browser/themes/theme_service_factory.h" |
25 #include "ui/views/linux_ui/linux_ui.h" | 25 #include "ui/views/linux_ui/linux_ui.h" |
26 #endif | 26 #endif |
27 | 27 |
28 namespace renderer_preferences_util { | 28 namespace renderer_preferences_util { |
29 | 29 |
30 namespace { | |
31 | |
32 #if defined(OS_LINUX) || defined(OS_ANDROID) | |
33 content::RendererPreferencesHintingEnum GetRendererPreferencesHintingEnum( | |
34 gfx::FontRenderParams::Hinting hinting) { | |
35 switch (hinting) { | |
36 case gfx::FontRenderParams::HINTING_NONE: | |
37 return content::RENDERER_PREFERENCES_HINTING_NONE; | |
38 case gfx::FontRenderParams::HINTING_SLIGHT: | |
39 return content::RENDERER_PREFERENCES_HINTING_SLIGHT; | |
40 case gfx::FontRenderParams::HINTING_MEDIUM: | |
41 return content::RENDERER_PREFERENCES_HINTING_MEDIUM; | |
42 case gfx::FontRenderParams::HINTING_FULL: | |
43 return content::RENDERER_PREFERENCES_HINTING_FULL; | |
44 default: | |
45 NOTREACHED() << "Unhandled hinting style " << hinting; | |
46 return content::RENDERER_PREFERENCES_HINTING_SYSTEM_DEFAULT; | |
47 } | |
48 } | |
49 | |
50 content::RendererPreferencesSubpixelRenderingEnum | |
51 GetRendererPreferencesSubpixelRenderingEnum( | |
52 gfx::FontRenderParams::SubpixelRendering subpixel_rendering) { | |
53 switch (subpixel_rendering) { | |
54 case gfx::FontRenderParams::SUBPIXEL_RENDERING_NONE: | |
55 return content::RENDERER_PREFERENCES_SUBPIXEL_RENDERING_NONE; | |
56 case gfx::FontRenderParams::SUBPIXEL_RENDERING_RGB: | |
57 return content::RENDERER_PREFERENCES_SUBPIXEL_RENDERING_RGB; | |
58 case gfx::FontRenderParams::SUBPIXEL_RENDERING_BGR: | |
59 return content::RENDERER_PREFERENCES_SUBPIXEL_RENDERING_BGR; | |
60 case gfx::FontRenderParams::SUBPIXEL_RENDERING_VRGB: | |
61 return content::RENDERER_PREFERENCES_SUBPIXEL_RENDERING_VRGB; | |
62 case gfx::FontRenderParams::SUBPIXEL_RENDERING_VBGR: | |
63 return content::RENDERER_PREFERENCES_SUBPIXEL_RENDERING_VBGR; | |
64 default: | |
65 NOTREACHED() << "Unhandled subpixel rendering style " | |
66 << subpixel_rendering; | |
67 return content::RENDERER_PREFERENCES_SUBPIXEL_RENDERING_SYSTEM_DEFAULT; | |
68 } | |
69 } | |
70 #endif // defined(OS_LINUX) || defined(OS_ANDROID) | |
71 | |
72 } // namespace | |
73 | |
74 void UpdateFromSystemSettings( | 30 void UpdateFromSystemSettings( |
75 content::RendererPreferences* prefs, Profile* profile) { | 31 content::RendererPreferences* prefs, Profile* profile) { |
76 const PrefService* pref_service = profile->GetPrefs(); | 32 const PrefService* pref_service = profile->GetPrefs(); |
77 prefs->accept_languages = pref_service->GetString(prefs::kAcceptLanguages); | 33 prefs->accept_languages = pref_service->GetString(prefs::kAcceptLanguages); |
78 prefs->enable_referrers = pref_service->GetBoolean(prefs::kEnableReferrers); | 34 prefs->enable_referrers = pref_service->GetBoolean(prefs::kEnableReferrers); |
79 prefs->enable_do_not_track = | 35 prefs->enable_do_not_track = |
80 pref_service->GetBoolean(prefs::kEnableDoNotTrack); | 36 pref_service->GetBoolean(prefs::kEnableDoNotTrack); |
81 prefs->default_zoom_level = pref_service->GetDouble(prefs::kDefaultZoomLevel); | 37 prefs->default_zoom_level = pref_service->GetDouble(prefs::kDefaultZoomLevel); |
82 | 38 |
83 #if defined(USE_DEFAULT_RENDER_THEME) | 39 #if defined(USE_DEFAULT_RENDER_THEME) |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
129 // whether we're in native theme mode. | 85 // whether we're in native theme mode. |
130 prefs->caret_blink_interval = linux_ui->GetCursorBlinkInterval(); | 86 prefs->caret_blink_interval = linux_ui->GetCursorBlinkInterval(); |
131 } | 87 } |
132 #endif | 88 #endif |
133 | 89 |
134 #if defined(OS_LINUX) || defined(OS_ANDROID) | 90 #if defined(OS_LINUX) || defined(OS_ANDROID) |
135 CR_DEFINE_STATIC_LOCAL(const gfx::FontRenderParams, params, | 91 CR_DEFINE_STATIC_LOCAL(const gfx::FontRenderParams, params, |
136 (gfx::GetFontRenderParams(gfx::FontRenderParamsQuery(true), NULL))); | 92 (gfx::GetFontRenderParams(gfx::FontRenderParamsQuery(true), NULL))); |
137 prefs->should_antialias_text = params.antialiasing; | 93 prefs->should_antialias_text = params.antialiasing; |
138 prefs->use_subpixel_positioning = params.subpixel_positioning; | 94 prefs->use_subpixel_positioning = params.subpixel_positioning; |
139 prefs->hinting = GetRendererPreferencesHintingEnum(params.hinting); | 95 prefs->hinting = params.hinting; |
140 prefs->use_autohinter = params.autohinter; | 96 prefs->use_autohinter = params.autohinter; |
141 prefs->use_bitmaps = params.use_bitmaps; | 97 prefs->use_bitmaps = params.use_bitmaps; |
142 prefs->subpixel_rendering = | 98 prefs->subpixel_rendering = params.subpixel_rendering; |
143 GetRendererPreferencesSubpixelRenderingEnum(params.subpixel_rendering); | |
144 #endif | 99 #endif |
145 | 100 |
146 #if !defined(OS_MACOSX) | 101 #if !defined(OS_MACOSX) |
147 prefs->plugin_fullscreen_allowed = | 102 prefs->plugin_fullscreen_allowed = |
148 pref_service->GetBoolean(prefs::kFullscreenAllowed); | 103 pref_service->GetBoolean(prefs::kFullscreenAllowed); |
149 #endif | 104 #endif |
150 } | 105 } |
151 | 106 |
152 } // namespace renderer_preferences_util | 107 } // namespace renderer_preferences_util |
OLD | NEW |