diff options
Diffstat (limited to 'chrome')
-rw-r--r-- | chrome/browser/page_info_model.cc | 3 | ||||
-rw-r--r-- | chrome/browser/page_info_model.h | 12 | ||||
-rw-r--r-- | chrome/browser/page_info_model_observer.h | 18 | ||||
-rw-r--r-- | chrome/browser/ui/cocoa/page_info_bubble_controller.h | 8 | ||||
-rw-r--r-- | chrome/browser/ui/cocoa/page_info_bubble_controller.mm | 8 | ||||
-rw-r--r-- | chrome/browser/ui/cocoa/page_info_bubble_controller_unittest.mm | 3 | ||||
-rw-r--r-- | chrome/browser/ui/gtk/page_info_bubble_gtk.cc | 5 | ||||
-rw-r--r-- | chrome/browser/ui/views/page_info_bubble_view.h | 9 | ||||
-rw-r--r-- | chrome/chrome_browser.gypi | 2 |
9 files changed, 45 insertions, 23 deletions
diff --git a/chrome/browser/page_info_model.cc b/chrome/browser/page_info_model.cc index 8520074..4395e50 100644 --- a/chrome/browser/page_info_model.cc +++ b/chrome/browser/page_info_model.cc @@ -10,6 +10,7 @@ #include "base/i18n/time_formatting.h" #include "base/string_number_conversions.h" #include "base/utf_string_conversions.h" +#include "chrome/browser/page_info_model_observer.h" #include "chrome/browser/profiles/profile.h" #include "chrome/browser/ssl/ssl_error_info.h" #include "content/browser/cert_store.h" @@ -29,7 +30,7 @@ PageInfoModel::PageInfoModel(Profile* profile, const GURL& url, const NavigationEntry::SSLStatus& ssl, bool show_history, - Observer* observer) + PageInfoModelObserver* observer) : observer_(observer) { Init(); diff --git a/chrome/browser/page_info_model.h b/chrome/browser/page_info_model.h index 66ecf25..f0cc797 100644 --- a/chrome/browser/page_info_model.h +++ b/chrome/browser/page_info_model.h @@ -15,6 +15,7 @@ #include "googleurl/src/gurl.h" #include "ui/gfx/image/image.h" +class PageInfoModelObserver; class PrefService; class Profile; @@ -22,13 +23,6 @@ class Profile; // info dialog/bubble. class PageInfoModel { public: - class Observer { - public: - virtual ~Observer() {} - - virtual void OnPageInfoModelChanged() = 0; - }; - enum SectionInfoType { SECTION_INFO_IDENTITY = 0, SECTION_INFO_CONNECTION, @@ -84,7 +78,7 @@ class PageInfoModel { const GURL& url, const NavigationEntry::SSLStatus& ssl, bool show_history, - Observer* observer); + PageInfoModelObserver* observer); ~PageInfoModel(); int GetSectionCount(); @@ -106,7 +100,7 @@ class PageInfoModel { // Shared initialization for default and testing constructor. void Init(); - Observer* observer_; + PageInfoModelObserver* observer_; std::vector<SectionInfo> sections_; diff --git a/chrome/browser/page_info_model_observer.h b/chrome/browser/page_info_model_observer.h new file mode 100644 index 0000000..c65231f --- /dev/null +++ b/chrome/browser/page_info_model_observer.h @@ -0,0 +1,18 @@ +// Copyright (c) 2011 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CHROME_BROWSER_PAGE_INFO_MODEL_OBSERVER_H_ +#define CHROME_BROWSER_PAGE_INFO_MODEL_OBSERVER_H_ +#pragma once + +// This interface should be implemented by classes interested in getting +// notifications from PageInfoModel. +class PageInfoModelObserver { + public: + virtual ~PageInfoModelObserver() {} + + virtual void OnPageInfoModelChanged() = 0; +}; + +#endif // CHROME_BROWSER_PAGE_INFO_MODEL_OBSERVER_H_ diff --git a/chrome/browser/ui/cocoa/page_info_bubble_controller.h b/chrome/browser/ui/cocoa/page_info_bubble_controller.h index 05f4a47..6af903b 100644 --- a/chrome/browser/ui/cocoa/page_info_bubble_controller.h +++ b/chrome/browser/ui/cocoa/page_info_bubble_controller.h @@ -6,9 +6,11 @@ #include "base/memory/scoped_nsobject.h" #include "base/memory/scoped_ptr.h" -#include "chrome/browser/page_info_model.h" #import "chrome/browser/ui/cocoa/base_bubble_controller.h" +class PageInfoModel; +class PageInfoModelObserver; + // This NSWindowController subclass manages the InfoBubbleWindow and view that // are displayed when the user clicks the security lock icon. @interface PageInfoBubbleController : BaseBubbleController { @@ -17,7 +19,7 @@ scoped_ptr<PageInfoModel> model_; // Thin bridge that pushes model-changed notifications from C++ to Cocoa. - scoped_ptr<PageInfoModel::Observer> bridge_; + scoped_ptr<PageInfoModelObserver> bridge_; // The certificate ID for the page, 0 if the page is not over HTTPS. int certID_; @@ -30,7 +32,7 @@ // controller will release itself when the bubble is closed. |parentWindow| // cannot be nil. - (id)initWithPageInfoModel:(PageInfoModel*)model - modelObserver:(PageInfoModel::Observer*)bridge + modelObserver:(PageInfoModelObserver*)bridge parentWindow:(NSWindow*)parentWindow; // Shows the certificate display window. Note that this will implicitly close diff --git a/chrome/browser/ui/cocoa/page_info_bubble_controller.mm b/chrome/browser/ui/cocoa/page_info_bubble_controller.mm index fe0576e..0d1d5b3 100644 --- a/chrome/browser/ui/cocoa/page_info_bubble_controller.mm +++ b/chrome/browser/ui/cocoa/page_info_bubble_controller.mm @@ -10,6 +10,8 @@ #include "base/task.h" #include "chrome/browser/certificate_viewer.h" #include "chrome/browser/google/google_util.h" +#include "chrome/browser/page_info_model.h" +#include "chrome/browser/page_info_model_observer.h" #include "chrome/browser/profiles/profile.h" #include "chrome/browser/ui/browser_list.h" #import "chrome/browser/ui/cocoa/browser_window_controller.h" @@ -94,14 +96,14 @@ const CGFloat kTextWidth = kWindowWidth - (kImageSize + kImageSpacing + kFramePadding * 2); // Bridge that listens for change notifications from the model. -class PageInfoModelBubbleBridge : public PageInfoModel::Observer { +class PageInfoModelBubbleBridge : public PageInfoModelObserver { public: PageInfoModelBubbleBridge() : controller_(nil), ALLOW_THIS_IN_INITIALIZER_LIST(task_factory_(this)) { } - // PageInfoModel::Observer implementation. + // PageInfoModelObserver implementation. virtual void OnPageInfoModelChanged() OVERRIDE { // Check to see if a layout has already been scheduled. if (!task_factory_.empty()) @@ -168,7 +170,7 @@ void ShowPageInfoBubble(gfx::NativeWindow parent, @synthesize certID = certID_; - (id)initWithPageInfoModel:(PageInfoModel*)model - modelObserver:(PageInfoModel::Observer*)bridge + modelObserver:(PageInfoModelObserver*)bridge parentWindow:(NSWindow*)parentWindow { DCHECK(parentWindow); diff --git a/chrome/browser/ui/cocoa/page_info_bubble_controller_unittest.mm b/chrome/browser/ui/cocoa/page_info_bubble_controller_unittest.mm index 2fb91d9..0ea3aab 100644 --- a/chrome/browser/ui/cocoa/page_info_bubble_controller_unittest.mm +++ b/chrome/browser/ui/cocoa/page_info_bubble_controller_unittest.mm @@ -9,6 +9,7 @@ #include "base/sys_string_conversions.h" #include "base/utf_string_conversions.h" #include "chrome/browser/page_info_model.h" +#include "chrome/browser/page_info_model_observer.h" #include "chrome/browser/ui/cocoa/browser_test_helper.h" #import "chrome/browser/ui/cocoa/cocoa_test_helper.h" #import "chrome/browser/ui/cocoa/hyperlink_button_cell.h" @@ -31,7 +32,7 @@ class FakeModel : public PageInfoModel { } }; -class FakeBridge : public PageInfoModel::Observer { +class FakeBridge : public PageInfoModelObserver { public: virtual void OnPageInfoModelChanged() OVERRIDE {} }; diff --git a/chrome/browser/ui/gtk/page_info_bubble_gtk.cc b/chrome/browser/ui/gtk/page_info_bubble_gtk.cc index bc9ed2b..e6c2edf 100644 --- a/chrome/browser/ui/gtk/page_info_bubble_gtk.cc +++ b/chrome/browser/ui/gtk/page_info_bubble_gtk.cc @@ -11,6 +11,7 @@ #include "chrome/browser/certificate_viewer.h" #include "chrome/browser/google/google_util.h" #include "chrome/browser/page_info_model.h" +#include "chrome/browser/page_info_model_observer.h" #include "chrome/browser/page_info_window.h" #include "chrome/browser/ui/browser_list.h" #include "chrome/browser/ui/gtk/browser_toolbar_gtk.h" @@ -30,7 +31,7 @@ class Profile; namespace { -class PageInfoBubbleGtk : public PageInfoModel::Observer, +class PageInfoBubbleGtk : public PageInfoModelObserver, public BubbleDelegateGtk { public: PageInfoBubbleGtk(gfx::NativeWindow parent, @@ -40,7 +41,7 @@ class PageInfoBubbleGtk : public PageInfoModel::Observer, bool show_history); virtual ~PageInfoBubbleGtk(); - // PageInfoModel::Observer implementation. + // PageInfoModelObserver implementation. virtual void OnPageInfoModelChanged() OVERRIDE; // BubbleDelegateGtk implementation. diff --git a/chrome/browser/ui/views/page_info_bubble_view.h b/chrome/browser/ui/views/page_info_bubble_view.h index bb4e8e1..e8b11ae 100644 --- a/chrome/browser/ui/views/page_info_bubble_view.h +++ b/chrome/browser/ui/views/page_info_bubble_view.h @@ -8,6 +8,7 @@ #include "base/compiler_specific.h" #include "chrome/browser/page_info_model.h" +#include "chrome/browser/page_info_model_observer.h" #include "chrome/browser/ui/views/bubble/bubble.h" #include "ui/base/animation/animation_delegate.h" #include "ui/base/animation/slide_animation.h" @@ -19,7 +20,7 @@ class Label; } class PageInfoBubbleView : public views::View, - public PageInfoModel::Observer, + public PageInfoModelObserver, public BubbleDelegate, public views::LinkListener, public ui::AnimationDelegate { @@ -36,10 +37,10 @@ class PageInfoBubbleView : public views::View, void set_bubble(Bubble* bubble) { bubble_ = bubble; } - // View methods: + // views::View methods: virtual gfx::Size GetPreferredSize(); - // PageInfoModel::Observer methods: + // PageInfoModelObserver methods: virtual void OnPageInfoModelChanged() OVERRIDE; // BubbleDelegate methods: @@ -51,7 +52,7 @@ class PageInfoBubbleView : public views::View, // views::LinkListener methods: virtual void LinkClicked(views::Link* source, int event_flags) OVERRIDE; - // Overridden from ui::AnimationDelegate. + // ui::AnimationDelegate methods: virtual void AnimationEnded(const ui::Animation* animation); virtual void AnimationProgressed(const ui::Animation* animation); diff --git a/chrome/chrome_browser.gypi b/chrome/chrome_browser.gypi index df3d6b4..c8a07c1 100644 --- a/chrome/chrome_browser.gypi +++ b/chrome/chrome_browser.gypi @@ -1525,6 +1525,8 @@ 'browser/oom_priority_manager.h', 'browser/page_info_model.cc', 'browser/page_info_model.h', + 'browser/page_info_model_observer.h', + 'browser/page_info_window.h', 'browser/parsers/metadata_parser.cc', 'browser/parsers/metadata_parser.h', 'browser/parsers/metadata_parser_factory.h', |