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