| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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/ui/tab_contents/tab_contents_wrapper.h" | 5 #include "chrome/browser/ui/tab_contents/tab_contents_wrapper.h" |
| 6 | 6 |
| 7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
| 8 #include "base/lazy_instance.h" | 8 #include "base/lazy_instance.h" |
| 9 #include "chrome/browser/autocomplete_history_manager.h" | 9 #include "chrome/browser/autocomplete_history_manager.h" |
| 10 #include "chrome/browser/autofill/autofill_manager.h" | 10 #include "chrome/browser/autofill/autofill_manager.h" |
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 108 TabContentsWrapper::~TabContentsWrapper() { | 108 TabContentsWrapper::~TabContentsWrapper() { |
| 109 // We don't want any notifications while we're running our destructor. | 109 // We don't want any notifications while we're running our destructor. |
| 110 registrar_.RemoveAll(); | 110 registrar_.RemoveAll(); |
| 111 } | 111 } |
| 112 | 112 |
| 113 PropertyAccessor<TabContentsWrapper*>* TabContentsWrapper::property_accessor() { | 113 PropertyAccessor<TabContentsWrapper*>* TabContentsWrapper::property_accessor() { |
| 114 return g_tab_contents_wrapper_property_accessor.Pointer(); | 114 return g_tab_contents_wrapper_property_accessor.Pointer(); |
| 115 } | 115 } |
| 116 | 116 |
| 117 void TabContentsWrapper::RegisterUserPrefs(PrefService* prefs) { | 117 void TabContentsWrapper::RegisterUserPrefs(PrefService* prefs) { |
| 118 prefs->RegisterBooleanPref(prefs::kAlternateErrorPagesEnabled, true); | 118 prefs->RegisterBooleanPref(prefs::kAlternateErrorPagesEnabled, |
| 119 true, |
| 120 true /* sync pref */); |
| 119 | 121 |
| 120 WebPreferences pref_defaults; | 122 WebPreferences pref_defaults; |
| 121 prefs->RegisterBooleanPref(prefs::kWebKitJavascriptEnabled, | 123 prefs->RegisterBooleanPref(prefs::kWebKitJavascriptEnabled, |
| 122 pref_defaults.javascript_enabled); | 124 pref_defaults.javascript_enabled, |
| 125 false /* don't sync pref */); |
| 123 prefs->RegisterBooleanPref(prefs::kWebKitWebSecurityEnabled, | 126 prefs->RegisterBooleanPref(prefs::kWebKitWebSecurityEnabled, |
| 124 pref_defaults.web_security_enabled); | 127 pref_defaults.web_security_enabled, |
| 128 false /* don't sync pref */); |
| 125 prefs->RegisterBooleanPref( | 129 prefs->RegisterBooleanPref( |
| 126 prefs::kWebKitJavascriptCanOpenWindowsAutomatically, true); | 130 prefs::kWebKitJavascriptCanOpenWindowsAutomatically, |
| 131 true, |
| 132 false /* don't sync pref */); |
| 127 prefs->RegisterBooleanPref(prefs::kWebKitLoadsImagesAutomatically, | 133 prefs->RegisterBooleanPref(prefs::kWebKitLoadsImagesAutomatically, |
| 128 pref_defaults.loads_images_automatically); | 134 pref_defaults.loads_images_automatically, |
| 135 false /* don't sync pref */); |
| 129 prefs->RegisterBooleanPref(prefs::kWebKitPluginsEnabled, | 136 prefs->RegisterBooleanPref(prefs::kWebKitPluginsEnabled, |
| 130 pref_defaults.plugins_enabled); | 137 pref_defaults.plugins_enabled, |
| 138 false /* don't sync pref */); |
| 131 prefs->RegisterBooleanPref(prefs::kWebKitDomPasteEnabled, | 139 prefs->RegisterBooleanPref(prefs::kWebKitDomPasteEnabled, |
| 132 pref_defaults.dom_paste_enabled); | 140 pref_defaults.dom_paste_enabled, |
| 141 false /* don't sync pref */); |
| 133 prefs->RegisterBooleanPref(prefs::kWebKitShrinksStandaloneImagesToFit, | 142 prefs->RegisterBooleanPref(prefs::kWebKitShrinksStandaloneImagesToFit, |
| 134 pref_defaults.shrinks_standalone_images_to_fit); | 143 pref_defaults.shrinks_standalone_images_to_fit, |
| 135 prefs->RegisterDictionaryPref(prefs::kWebKitInspectorSettings); | 144 false /* don't sync pref */); |
| 145 prefs->RegisterDictionaryPref(prefs::kWebKitInspectorSettings, |
| 146 false /* don't sync pref */); |
| 136 prefs->RegisterBooleanPref(prefs::kWebKitTextAreasAreResizable, | 147 prefs->RegisterBooleanPref(prefs::kWebKitTextAreasAreResizable, |
| 137 pref_defaults.text_areas_are_resizable); | 148 pref_defaults.text_areas_are_resizable, |
| 149 false /* don't sync pref */); |
| 138 prefs->RegisterBooleanPref(prefs::kWebKitJavaEnabled, | 150 prefs->RegisterBooleanPref(prefs::kWebKitJavaEnabled, |
| 139 pref_defaults.java_enabled); | 151 pref_defaults.java_enabled, |
| 152 false /* don't sync pref */); |
| 140 prefs->RegisterBooleanPref(prefs::kWebkitTabsToLinks, | 153 prefs->RegisterBooleanPref(prefs::kWebkitTabsToLinks, |
| 141 pref_defaults.tabs_to_links); | 154 pref_defaults.tabs_to_links, |
| 155 false /* don't sync pref */); |
| 142 | 156 |
| 157 #if !defined(OS_MACOSX) |
| 143 prefs->RegisterLocalizedStringPref(prefs::kAcceptLanguages, | 158 prefs->RegisterLocalizedStringPref(prefs::kAcceptLanguages, |
| 144 IDS_ACCEPT_LANGUAGES); | 159 IDS_ACCEPT_LANGUAGES, |
| 160 true /* sync pref */); |
| 161 #else |
| 162 // Not used in OSX. |
| 163 prefs->RegisterLocalizedStringPref(prefs::kAcceptLanguages, |
| 164 IDS_ACCEPT_LANGUAGES, |
| 165 false /* don't sync pref */); |
| 166 #endif |
| 145 prefs->RegisterLocalizedStringPref(prefs::kDefaultCharset, | 167 prefs->RegisterLocalizedStringPref(prefs::kDefaultCharset, |
| 146 IDS_DEFAULT_ENCODING); | 168 IDS_DEFAULT_ENCODING, |
| 169 true /* sync pref */); |
| 147 prefs->RegisterLocalizedStringPref(prefs::kWebKitStandardFontFamily, | 170 prefs->RegisterLocalizedStringPref(prefs::kWebKitStandardFontFamily, |
| 148 IDS_STANDARD_FONT_FAMILY); | 171 IDS_STANDARD_FONT_FAMILY, |
| 172 false /* don't sync pref */); |
| 149 prefs->RegisterLocalizedStringPref(prefs::kWebKitFixedFontFamily, | 173 prefs->RegisterLocalizedStringPref(prefs::kWebKitFixedFontFamily, |
| 150 IDS_FIXED_FONT_FAMILY); | 174 IDS_FIXED_FONT_FAMILY, |
| 175 false /* don't sync pref */); |
| 151 prefs->RegisterLocalizedStringPref(prefs::kWebKitSerifFontFamily, | 176 prefs->RegisterLocalizedStringPref(prefs::kWebKitSerifFontFamily, |
| 152 IDS_SERIF_FONT_FAMILY); | 177 IDS_SERIF_FONT_FAMILY, |
| 178 false /* don't sync pref */); |
| 153 prefs->RegisterLocalizedStringPref(prefs::kWebKitSansSerifFontFamily, | 179 prefs->RegisterLocalizedStringPref(prefs::kWebKitSansSerifFontFamily, |
| 154 IDS_SANS_SERIF_FONT_FAMILY); | 180 IDS_SANS_SERIF_FONT_FAMILY, |
| 181 false /* don't sync pref */); |
| 155 prefs->RegisterLocalizedStringPref(prefs::kWebKitCursiveFontFamily, | 182 prefs->RegisterLocalizedStringPref(prefs::kWebKitCursiveFontFamily, |
| 156 IDS_CURSIVE_FONT_FAMILY); | 183 IDS_CURSIVE_FONT_FAMILY, |
| 184 false /* don't sync pref */); |
| 157 prefs->RegisterLocalizedStringPref(prefs::kWebKitFantasyFontFamily, | 185 prefs->RegisterLocalizedStringPref(prefs::kWebKitFantasyFontFamily, |
| 158 IDS_FANTASY_FONT_FAMILY); | 186 IDS_FANTASY_FONT_FAMILY, |
| 187 false /* don't sync pref */); |
| 159 prefs->RegisterLocalizedIntegerPref(prefs::kWebKitDefaultFontSize, | 188 prefs->RegisterLocalizedIntegerPref(prefs::kWebKitDefaultFontSize, |
| 160 IDS_DEFAULT_FONT_SIZE); | 189 IDS_DEFAULT_FONT_SIZE, |
| 190 false /* don't sync pref */); |
| 161 prefs->RegisterLocalizedIntegerPref(prefs::kWebKitDefaultFixedFontSize, | 191 prefs->RegisterLocalizedIntegerPref(prefs::kWebKitDefaultFixedFontSize, |
| 162 IDS_DEFAULT_FIXED_FONT_SIZE); | 192 IDS_DEFAULT_FIXED_FONT_SIZE, |
| 193 false /* don't sync pref */); |
| 163 prefs->RegisterLocalizedIntegerPref(prefs::kWebKitMinimumFontSize, | 194 prefs->RegisterLocalizedIntegerPref(prefs::kWebKitMinimumFontSize, |
| 164 IDS_MINIMUM_FONT_SIZE); | 195 IDS_MINIMUM_FONT_SIZE, |
| 196 false /* don't sync pref */); |
| 165 prefs->RegisterLocalizedIntegerPref(prefs::kWebKitMinimumLogicalFontSize, | 197 prefs->RegisterLocalizedIntegerPref(prefs::kWebKitMinimumLogicalFontSize, |
| 166 IDS_MINIMUM_LOGICAL_FONT_SIZE); | 198 IDS_MINIMUM_LOGICAL_FONT_SIZE, |
| 199 false /* don't sync pref */); |
| 167 prefs->RegisterLocalizedBooleanPref(prefs::kWebKitUsesUniversalDetector, | 200 prefs->RegisterLocalizedBooleanPref(prefs::kWebKitUsesUniversalDetector, |
| 168 IDS_USES_UNIVERSAL_DETECTOR); | 201 IDS_USES_UNIVERSAL_DETECTOR, |
| 202 true /* sync pref */); |
| 169 prefs->RegisterLocalizedStringPref(prefs::kStaticEncodings, | 203 prefs->RegisterLocalizedStringPref(prefs::kStaticEncodings, |
| 170 IDS_STATIC_ENCODING_LIST); | 204 IDS_STATIC_ENCODING_LIST, |
| 171 prefs->RegisterStringPref(prefs::kRecentlySelectedEncoding, ""); | 205 false /* don't sync pref */); |
| 206 prefs->RegisterStringPref(prefs::kRecentlySelectedEncoding, |
| 207 "", |
| 208 false /* don't sync pref */); |
| 172 } | 209 } |
| 173 | 210 |
| 174 string16 TabContentsWrapper::GetDefaultTitle() { | 211 string16 TabContentsWrapper::GetDefaultTitle() { |
| 175 return l10n_util::GetStringUTF16(IDS_DEFAULT_TAB_TITLE); | 212 return l10n_util::GetStringUTF16(IDS_DEFAULT_TAB_TITLE); |
| 176 } | 213 } |
| 177 | 214 |
| 178 string16 TabContentsWrapper::GetStatusText() const { | 215 string16 TabContentsWrapper::GetStatusText() const { |
| 179 if (!tab_contents()->is_loading() || | 216 if (!tab_contents()->is_loading() || |
| 180 tab_contents()->load_state() == net::LOAD_STATE_IDLE) { | 217 tab_contents()->load_state() == net::LOAD_STATE_IDLE) { |
| 181 return string16(); | 218 return string16(); |
| (...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 362 } | 399 } |
| 363 | 400 |
| 364 void TabContentsWrapper::UpdateStarredStateForCurrentURL() { | 401 void TabContentsWrapper::UpdateStarredStateForCurrentURL() { |
| 365 BookmarkModel* model = tab_contents()->profile()->GetBookmarkModel(); | 402 BookmarkModel* model = tab_contents()->profile()->GetBookmarkModel(); |
| 366 const bool old_state = is_starred_; | 403 const bool old_state = is_starred_; |
| 367 is_starred_ = (model && model->IsBookmarked(tab_contents()->GetURL())); | 404 is_starred_ = (model && model->IsBookmarked(tab_contents()->GetURL())); |
| 368 | 405 |
| 369 if (is_starred_ != old_state && delegate()) | 406 if (is_starred_ != old_state && delegate()) |
| 370 delegate()->URLStarredChanged(this, is_starred_); | 407 delegate()->URLStarredChanged(this, is_starred_); |
| 371 } | 408 } |
| OLD | NEW |