Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3057)

Unified Diff: chrome/browser/views/location_bar_view.h

Issue 1001002: Initial support for inspecting extension popups. (Closed)
Patch Set: pre submit Created 10 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/views/infobars/extension_infobar.cc ('k') | chrome/browser/views/location_bar_view.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/views/location_bar_view.h
diff --git a/chrome/browser/views/location_bar_view.h b/chrome/browser/views/location_bar_view.h
index e3b45978bc80d945b706cc035b904bcd815dbbad..d591e97bc212182a45afdb3a2485edd147d99db8 100644
--- a/chrome/browser/views/location_bar_view.h
+++ b/chrome/browser/views/location_bar_view.h
@@ -18,6 +18,7 @@
#include "chrome/browser/toolbar_model.h"
#include "chrome/browser/views/browser_bubble.h"
#include "chrome/browser/views/extensions/extension_action_context_menu.h"
+#include "chrome/browser/views/extensions/extension_popup.h"
#include "chrome/browser/views/info_bubble.h"
#include "chrome/common/content_settings_types.h"
#include "chrome/common/notification_observer.h"
@@ -409,9 +410,9 @@ class LocationBarView : public LocationBar,
// PageActionImageView is used to display the icon for a given PageAction
// and notify the extension when the icon is clicked.
class PageActionImageView : public LocationBarImageView,
- public ImageLoadingTracker::Observer,
- public NotificationObserver,
- public BrowserBubble::Delegate {
+ public ImageLoadingTracker::Observer,
+ public ExtensionActionContextMenuModel::MenuDelegate,
+ public ExtensionPopup::Observer {
public:
PageActionImageView(LocationBarView* owner,
Profile* profile,
@@ -438,10 +439,12 @@ class LocationBarView : public LocationBar,
// Overridden from ImageLoadingTracker.
virtual void OnImageLoaded(SkBitmap* image, size_t index);
- // Overridden from BrowserBubble::Delegate
- virtual void BubbleBrowserWindowClosing(BrowserBubble* bubble);
- virtual void BubbleLostFocus(BrowserBubble* bubble,
- bool lost_focus_to_child);
+ // Overridden from ExtensionActionContextMenuModel::MenuDelegate
+ virtual void ShowPopupForDevToolsWindow(Extension* extension,
+ ExtensionAction* extension_action);
+
+ // Overriden from ExtensionPopup::Observer
+ virtual void ExtensionPopupClosed(ExtensionPopup* popup);
// Called to notify the PageAction that it should determine whether to be
// visible or hidden. |contents| is the TabContents that is active, |url|
@@ -449,17 +452,12 @@ class LocationBarView : public LocationBar,
void UpdateVisibility(TabContents* contents, const GURL& url);
// Either notify listeners or show a popup depending on the page action.
- void ExecuteAction(int button);
+ void ExecuteAction(int button, bool inspect_with_devtools);
private:
// Hides the active popup, if there is one.
void HidePopup();
- // Overridden from NotificationObserver:
- virtual void Observe(NotificationType type,
- const NotificationSource& source,
- const NotificationDetails& details);
-
// The location bar view that owns us.
LocationBarView* owner_;
@@ -497,10 +495,6 @@ class LocationBarView : public LocationBar,
// The current popup and the button it came from. NULL if no popup.
ExtensionPopup* popup_;
- ScopedRunnableMethodFactory<PageActionImageView> method_factory_;
-
- NotificationRegistrar registrar_;
-
DISALLOW_COPY_AND_ASSIGN(PageActionImageView);
};
friend class PageActionImageView;
« no previous file with comments | « chrome/browser/views/infobars/extension_infobar.cc ('k') | chrome/browser/views/location_bar_view.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698