| Index: chrome/browser/content_setting_image_model.cc
|
| ===================================================================
|
| --- chrome/browser/content_setting_image_model.cc (revision 42667)
|
| +++ chrome/browser/content_setting_image_model.cc (working copy)
|
| @@ -12,21 +12,40 @@
|
| class ContentSettingBlockedImageModel : public ContentSettingImageModel {
|
| public:
|
| explicit ContentSettingBlockedImageModel(
|
| - ContentSettingsType content_settings_type);
|
| + ContentSettingsType content_settings_type)
|
| + : ContentSettingImageModel(content_settings_type) {
|
| + }
|
|
|
| - virtual void UpdateFromTabContents(const TabContents* tab_contents);
|
| + virtual void UpdateFromTabContents(const TabContents* tab_contents) {
|
| + if (tab_contents &&
|
| + tab_contents->IsContentBlocked(get_content_settings_type())) {
|
| + set_icon(kBlockedIconIDs[get_content_settings_type()]);
|
| + set_tooltip(
|
| + l10n_util::GetStringUTF8(kTooltipIDs[get_content_settings_type()]));
|
| + set_visible(true);
|
| + } else {
|
| + set_visible(false);
|
| + }
|
| + }
|
|
|
| private:
|
| static const int kBlockedIconIDs[];
|
| static const int kTooltipIDs[];
|
| +
|
| };
|
|
|
| -class ContentSettingGeolocationImageModel : public ContentSettingImageModel {
|
| - public:
|
| - ContentSettingGeolocationImageModel();
|
| +ContentSettingImageModel::ContentSettingImageModel(
|
| + ContentSettingsType content_settings_type)
|
| + : content_settings_type_(content_settings_type),
|
| + is_visible_(false),
|
| + icon_(0) {
|
| +}
|
|
|
| - virtual void UpdateFromTabContents(const TabContents* tab_contents);
|
| -};
|
| +// static
|
| +ContentSettingImageModel* ContentSettingImageModel::
|
| + CreateContentSettingImageModel(ContentSettingsType content_settings_type) {
|
| + return new ContentSettingBlockedImageModel(content_settings_type);
|
| +}
|
|
|
| const int ContentSettingBlockedImageModel::kBlockedIconIDs[] = {
|
| IDR_BLOCKED_COOKIES,
|
| @@ -43,69 +62,3 @@
|
| IDS_BLOCKED_PLUGINS_TITLE,
|
| IDS_BLOCKED_POPUPS_TOOLTIP,
|
| };
|
| -
|
| -
|
| -ContentSettingBlockedImageModel::ContentSettingBlockedImageModel(
|
| - ContentSettingsType content_settings_type)
|
| - : ContentSettingImageModel(content_settings_type) {
|
| -}
|
| -
|
| -void ContentSettingBlockedImageModel::UpdateFromTabContents(
|
| - const TabContents* tab_contents) {
|
| - if (!tab_contents ||
|
| - !tab_contents->IsContentBlocked(get_content_settings_type())) {
|
| - set_visible(false);
|
| - return;
|
| - }
|
| - set_icon(kBlockedIconIDs[get_content_settings_type()]);
|
| - set_tooltip(
|
| - l10n_util::GetStringUTF8(kTooltipIDs[get_content_settings_type()]));
|
| - set_visible(true);
|
| -}
|
| -
|
| -ContentSettingGeolocationImageModel::ContentSettingGeolocationImageModel()
|
| - : ContentSettingImageModel(CONTENT_SETTINGS_TYPE_GEOLOCATION) {
|
| -}
|
| -
|
| -void ContentSettingGeolocationImageModel::UpdateFromTabContents(
|
| - const TabContents* tab_contents) {
|
| - if (!tab_contents) {
|
| - set_visible(false);
|
| - return;
|
| - }
|
| - const TabContents::GeolocationContentSettings& settings =
|
| - tab_contents->geolocation_content_settings();
|
| - if (settings.empty()) {
|
| - set_visible(false);
|
| - return;
|
| - }
|
| - set_visible(true);
|
| - // If any embedded site has access the allowed icon takes priority over the
|
| - // blocked icon.
|
| - for (TabContents::GeolocationContentSettings::const_iterator it =
|
| - settings.begin(); it != settings.end(); ++it ) {
|
| - if (it->second == CONTENT_SETTING_ALLOW) {
|
| - set_icon(IDR_GEOLOCATION_ALLOWED_LOCATIONBAR_ICON);
|
| - set_tooltip(l10n_util::GetStringUTF8(IDS_GEOLOCATION_ALLOWED_TOOLTIP));
|
| - return;
|
| - }
|
| - }
|
| - set_icon(IDR_GEOLOCATION_DENIED_LOCATIONBAR_ICON);
|
| - set_tooltip(l10n_util::GetStringUTF8(IDS_GEOLOCATION_BLOCKED_TOOLTIP));
|
| -}
|
| -
|
| -ContentSettingImageModel::ContentSettingImageModel(
|
| - ContentSettingsType content_settings_type)
|
| - : content_settings_type_(content_settings_type),
|
| - is_visible_(false),
|
| - icon_(0) {
|
| -}
|
| -
|
| -// static
|
| -ContentSettingImageModel*
|
| - ContentSettingImageModel::CreateContentSettingImageModel(
|
| - ContentSettingsType content_settings_type) {
|
| - if (content_settings_type == CONTENT_SETTINGS_TYPE_GEOLOCATION)
|
| - return new ContentSettingGeolocationImageModel();
|
| - return new ContentSettingBlockedImageModel(content_settings_type);
|
| -}
|
|
|