| Index: chrome/browser/geolocation/geolocation_infobar_delegate.cc
|
| diff --git a/chrome/browser/geolocation/geolocation_infobar_delegate.cc b/chrome/browser/geolocation/geolocation_infobar_delegate.cc
|
| index da028eceb39ab48619976c4f7acf7aadc4ba02e9..e8d450555b0c2bd79ba0fe1cc097f0c95b224b45 100644
|
| --- a/chrome/browser/geolocation/geolocation_infobar_delegate.cc
|
| +++ b/chrome/browser/geolocation/geolocation_infobar_delegate.cc
|
| @@ -72,10 +72,14 @@ InfoBar* GeolocationInfoBarDelegate::Create(
|
| RecordUmaEvent(GEOLOCATION_INFO_BAR_DELEGATE_EVENT_CREATE);
|
| const content::NavigationEntry* committed_entry =
|
| infobar_service->web_contents()->GetController().GetLastCommittedEntry();
|
| - GeolocationInfoBarDelegate* const delegate = new DelegateType(
|
| - controller, id, requesting_frame,
|
| - committed_entry ? committed_entry->GetUniqueID() : 0,
|
| - display_languages, accept_button_label);
|
| + GeolocationInfoBarDelegate* const delegate =
|
| + new DelegateType(infobar_service->web_contents(),
|
| + controller,
|
| + id,
|
| + requesting_frame,
|
| + committed_entry ? committed_entry->GetUniqueID() : 0,
|
| + display_languages,
|
| + accept_button_label);
|
|
|
| InfoBar* infobar = ConfirmInfoBarDelegate::CreateInfoBar(
|
| scoped_ptr<ConfirmInfoBarDelegate>(delegate)).release();
|
| @@ -83,20 +87,20 @@ InfoBar* GeolocationInfoBarDelegate::Create(
|
| }
|
|
|
| GeolocationInfoBarDelegate::GeolocationInfoBarDelegate(
|
| + content::WebContents* web_contents,
|
| PermissionQueueController* controller,
|
| const PermissionRequestID& id,
|
| const GURL& requesting_frame,
|
| int contents_unique_id,
|
| const std::string& display_languages,
|
| const std::string& accept_button_label)
|
| - : ConfirmInfoBarDelegate(),
|
| + : ContentConfirmInfoBarDelegate(web_contents),
|
| controller_(controller),
|
| id_(id),
|
| requesting_frame_(requesting_frame.GetOrigin()),
|
| contents_unique_id_(contents_unique_id),
|
| display_languages_(display_languages),
|
| - user_has_interacted_(false) {
|
| -}
|
| + user_has_interacted_(false) {}
|
|
|
| GeolocationInfoBarDelegate::~GeolocationInfoBarDelegate() {
|
| if (!user_has_interacted_)
|
| @@ -133,14 +137,11 @@ InfoBarDelegate::Type GeolocationInfoBarDelegate::GetInfoBarType() const {
|
| }
|
|
|
| bool GeolocationInfoBarDelegate::ShouldExpireInternal(
|
| - const content::LoadCommittedDetails& details) const {
|
| + const NavigationDetails& details) const {
|
| // This implementation matches InfoBarDelegate::ShouldExpireInternal(), but
|
| // uses the unique ID we set in the constructor instead of that stored in the
|
| // base class.
|
| - return (contents_unique_id_ != details.entry->GetUniqueID()) ||
|
| - (content::PageTransitionStripQualifier(
|
| - details.entry->GetTransitionType()) ==
|
| - content::PAGE_TRANSITION_RELOAD);
|
| + return (contents_unique_id_ != details.entry_id) || details.is_reload;
|
| }
|
|
|
| base::string16 GeolocationInfoBarDelegate::GetMessageText() const {
|
|
|