| Index: chrome/browser/infobars/infobar_delegate.h
|
| diff --git a/chrome/browser/infobars/infobar_delegate.h b/chrome/browser/infobars/infobar_delegate.h
|
| deleted file mode 100644
|
| index 5e442ae8b04bb4d0301faa95c8f89eb6ec6386af..0000000000000000000000000000000000000000
|
| --- a/chrome/browser/infobars/infobar_delegate.h
|
| +++ /dev/null
|
| @@ -1,146 +0,0 @@
|
| -// Copyright (c) 2012 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_INFOBARS_INFOBAR_DELEGATE_H_
|
| -#define CHROME_BROWSER_INFOBARS_INFOBAR_DELEGATE_H_
|
| -
|
| -#include "base/basictypes.h"
|
| -#include "base/string16.h"
|
| -#include "webkit/glue/window_open_disposition.h"
|
| -
|
| -class AutoLoginInfoBarDelegate;
|
| -class ConfirmInfoBarDelegate;
|
| -class ExtensionInfoBarDelegate;
|
| -class InfoBar;
|
| -class InfoBarTabHelper;
|
| -class InsecureContentInfoBarDelegate;
|
| -class LinkInfoBarDelegate;
|
| -class MediaStreamInfoBarDelegate;
|
| -class PluginInstallerInfoBarDelegate;
|
| -class RegisterProtocolHandlerInfoBarDelegate;
|
| -class SavePasswordInfoBarDelegate;
|
| -class ThemeInstalledInfoBarDelegate;
|
| -class TranslateInfoBarDelegate;
|
| -
|
| -namespace gfx {
|
| -class Image;
|
| -}
|
| -namespace content {
|
| -struct LoadCommittedDetails;
|
| -}
|
| -
|
| -// An interface implemented by objects wishing to control an InfoBar.
|
| -// Implementing this interface is not sufficient to use an InfoBar, since it
|
| -// does not map to a specific InfoBar type. Instead, you must implement either
|
| -// LinkInfoBarDelegate or ConfirmInfoBarDelegate, or override with your own
|
| -// delegate for your own InfoBar variety.
|
| -class InfoBarDelegate {
|
| - public:
|
| - // The type of the infobar. It controls its appearance, such as its background
|
| - // color.
|
| - enum Type {
|
| - WARNING_TYPE,
|
| - PAGE_ACTION_TYPE,
|
| - };
|
| -
|
| - enum InfoBarAutomationType {
|
| - CONFIRM_INFOBAR,
|
| - ONE_CLICK_LOGIN_INFOBAR,
|
| - PASSWORD_INFOBAR,
|
| - RPH_INFOBAR,
|
| - UNKNOWN_INFOBAR,
|
| - };
|
| -
|
| - virtual ~InfoBarDelegate();
|
| -
|
| - virtual InfoBarAutomationType GetInfoBarAutomationType() const;
|
| -
|
| - // Called to create the InfoBar. Implementation of this method is
|
| - // platform-specific.
|
| - virtual InfoBar* CreateInfoBar(InfoBarTabHelper* owner) = 0;
|
| -
|
| - // Called by the InfoBarTabHelper when it removes us.
|
| - void clear_owner() { owner_ = NULL; }
|
| -
|
| - // TODO(pkasting): Move to InfoBar once InfoBars own their delegates.
|
| - InfoBarTabHelper* owner() { return owner_; }
|
| -
|
| - // Returns true if the supplied |delegate| is equal to this one. Equality is
|
| - // left to the implementation to define. This function is called by the
|
| - // InfoBarTabHelper when determining whether or not a delegate should be
|
| - // added because a matching one already exists. If this function returns true,
|
| - // the InfoBarTabHelper will not add the new delegate because it considers
|
| - // one to already be present.
|
| - virtual bool EqualsDelegate(InfoBarDelegate* delegate) const;
|
| -
|
| - // Returns true if the InfoBar should be closed automatically after the page
|
| - // is navigated. By default this returns true if the navigation is to a new
|
| - // page (not including reloads). Subclasses wishing to change this behavior
|
| - // can override either this function or ShouldExpireInternal(), depending on
|
| - // what level of control they need.
|
| - virtual bool ShouldExpire(const content::LoadCommittedDetails& details) const;
|
| -
|
| - // Called when the user clicks on the close button to dismiss the infobar.
|
| - virtual void InfoBarDismissed();
|
| -
|
| - // Called after the InfoBar is closed. Deletes |this|.
|
| - // TODO(pkasting): Get rid of this and delete delegates directly.
|
| - void InfoBarClosed();
|
| -
|
| - // Return the icon to be shown for this InfoBar. If the returned Image is
|
| - // NULL, no icon is shown.
|
| - virtual gfx::Image* GetIcon() const;
|
| -
|
| - // Returns the type of the infobar. The type determines the appearance (such
|
| - // as background color) of the infobar.
|
| - virtual Type GetInfoBarType() const;
|
| -
|
| - // Type-checking downcast routines:
|
| - virtual AutoLoginInfoBarDelegate* AsAutoLoginInfoBarDelegate();
|
| - virtual ConfirmInfoBarDelegate* AsConfirmInfoBarDelegate();
|
| - virtual ExtensionInfoBarDelegate* AsExtensionInfoBarDelegate();
|
| - virtual InsecureContentInfoBarDelegate* AsInsecureContentInfoBarDelegate();
|
| - virtual LinkInfoBarDelegate* AsLinkInfoBarDelegate();
|
| - virtual MediaStreamInfoBarDelegate* AsMediaStreamInfoBarDelegate();
|
| - virtual RegisterProtocolHandlerInfoBarDelegate*
|
| - AsRegisterProtocolHandlerInfoBarDelegate();
|
| - virtual ThemeInstalledInfoBarDelegate* AsThemePreviewInfobarDelegate();
|
| - virtual TranslateInfoBarDelegate* AsTranslateInfoBarDelegate();
|
| -
|
| - protected:
|
| - // If |contents| is non-NULL, its active entry's unique ID will be stored
|
| - // using StoreActiveEntryUniqueID automatically.
|
| - explicit InfoBarDelegate(InfoBarTabHelper* infobar_helper);
|
| -
|
| - // Store the unique id for the active entry in the specified WebContents, to
|
| - // be used later upon navigation to determine if this InfoBarDelegate should
|
| - // be expired from |contents_|.
|
| - void StoreActiveEntryUniqueID(InfoBarTabHelper* infobar_helper);
|
| -
|
| - // Direct accessors for subclasses that need to do something special.
|
| - int contents_unique_id() const { return contents_unique_id_; }
|
| - void set_contents_unique_id(int contents_unique_id) {
|
| - contents_unique_id_ = contents_unique_id;
|
| - }
|
| -
|
| - // Returns true if the navigation is to a new URL or a reload occured.
|
| - virtual bool ShouldExpireInternal(
|
| - const content::LoadCommittedDetails& details) const;
|
| -
|
| - // Removes ourself from |owner_| if we haven't already been removed.
|
| - // TODO(pkasting): Move to InfoBar.
|
| - void RemoveSelf();
|
| -
|
| - private:
|
| - // The unique id of the active NavigationEntry of the WebContents that we were
|
| - // opened for. Used to help expire on navigations.
|
| - int contents_unique_id_;
|
| -
|
| - // TODO(pkasting): Remove.
|
| - InfoBarTabHelper* owner_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(InfoBarDelegate);
|
| -};
|
| -
|
| -#endif // CHROME_BROWSER_INFOBARS_INFOBAR_DELEGATE_H_
|
|
|