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

Unified Diff: chrome/browser/infobars/infobar_service.cc

Issue 1160443010: More infobar cleanup. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix iOS too Created 5 years, 6 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
Index: chrome/browser/infobars/infobar_service.cc
diff --git a/chrome/browser/infobars/infobar_service.cc b/chrome/browser/infobars/infobar_service.cc
index 3bc0e4e5c155f8e2716cdb95931059a775644c62..556086be5f1418ee60b9c14400b5cc2626b0b4e9 100644
--- a/chrome/browser/infobars/infobar_service.cc
+++ b/chrome/browser/infobars/infobar_service.cc
@@ -14,44 +14,28 @@
#include "content/public/browser/navigation_entry.h"
#include "content/public/browser/notification_service.h"
#include "content/public/browser/web_contents.h"
+#include "ui/base/page_transition_types.h"
-DEFINE_WEB_CONTENTS_USER_DATA_KEY(InfoBarService);
-
-using infobars::InfoBar;
-using infobars::InfoBarDelegate;
-using infobars::InfoBarManager;
-
-namespace {
-bool IsReload(const content::LoadCommittedDetails& details) {
- return ui::PageTransitionStripQualifier(
- details.entry->GetTransitionType()) == ui::PAGE_TRANSITION_RELOAD;
-
-}
-
-} // namespace
+DEFINE_WEB_CONTENTS_USER_DATA_KEY(InfoBarService);
// static
-InfoBarDelegate::NavigationDetails
+infobars::InfoBarDelegate::NavigationDetails
InfoBarService::NavigationDetailsFromLoadCommittedDetails(
const content::LoadCommittedDetails& details) {
- InfoBarDelegate::NavigationDetails navigation_details;
+ infobars::InfoBarDelegate::NavigationDetails navigation_details;
navigation_details.entry_id = details.entry->GetUniqueID();
navigation_details.is_navigation_to_different_page =
details.is_navigation_to_different_page();
navigation_details.did_replace_entry = details.did_replace_entry;
- navigation_details.is_main_frame = details.is_main_frame;
-
- const ui::PageTransition transition = details.entry->GetTransitionType();
- navigation_details.is_reload = IsReload(details);
navigation_details.is_redirect =
- (transition & ui::PAGE_TRANSITION_IS_REDIRECT_MASK) != 0;
-
+ ui::PageTransitionIsRedirect(details.entry->GetTransitionType());
return navigation_details;
}
// static
-content::WebContents* InfoBarService::WebContentsFromInfoBar(InfoBar* infobar) {
+content::WebContents* InfoBarService::WebContentsFromInfoBar(
+ infobars::InfoBar* infobar) {
if (!infobar || !infobar->owner())
return NULL;
InfoBarService* infobar_service =
@@ -75,25 +59,26 @@ int InfoBarService::GetActiveEntryID() {
return active_entry ? active_entry->GetUniqueID() : 0;
}
-void InfoBarService::NotifyInfoBarAdded(InfoBar* infobar) {
- InfoBarManager::NotifyInfoBarAdded(infobar);
+void InfoBarService::NotifyInfoBarAdded(infobars::InfoBar* infobar) {
+ infobars::InfoBarManager::NotifyInfoBarAdded(infobar);
// TODO(droger): Remove the notifications and have listeners change to be
// InfoBarManager::Observers instead. See http://crbug.com/354380
content::NotificationService::current()->Notify(
chrome::NOTIFICATION_TAB_CONTENTS_INFOBAR_ADDED,
content::Source<InfoBarService>(this),
- content::Details<InfoBar::AddedDetails>(infobar));
+ content::Details<infobars::InfoBar::AddedDetails>(infobar));
}
-void InfoBarService::NotifyInfoBarRemoved(InfoBar* infobar, bool animate) {
- InfoBarManager::NotifyInfoBarRemoved(infobar, animate);
+void InfoBarService::NotifyInfoBarRemoved(infobars::InfoBar* infobar,
+ bool animate) {
+ infobars::InfoBarManager::NotifyInfoBarRemoved(infobar, animate);
// TODO(droger): Remove the notifications and have listeners change to be
// InfoBarManager::Observers instead. See http://crbug.com/354380
- InfoBar::RemovedDetails removed_details(infobar, animate);
+ infobars::InfoBar::RemovedDetails removed_details(infobar, animate);
content::NotificationService::current()->Notify(
chrome::NOTIFICATION_TAB_CONTENTS_INFOBAR_REMOVED,
content::Source<InfoBarService>(this),
- content::Details<InfoBar::RemovedDetails>(&removed_details));
+ content::Details<infobars::InfoBar::RemovedDetails>(&removed_details));
}
// InfoBarService::CreateConfirmInfoBar() is implemented in platform-specific
@@ -111,7 +96,10 @@ void InfoBarService::DidStartNavigationToPendingEntry(
void InfoBarService::NavigationEntryCommitted(
const content::LoadCommittedDetails& load_details) {
- const bool ignore = ignore_next_reload_ && IsReload(load_details);
+ const bool ignore = ignore_next_reload_ &&
+ (ui::PageTransitionStripQualifier(
+ load_details.entry->GetTransitionType()) ==
+ ui::PAGE_TRANSITION_RELOAD);
ignore_next_reload_ = false;
if (!ignore)
OnNavigation(NavigationDetailsFromLoadCommittedDetails(load_details));
« no previous file with comments | « no previous file | components/infobars/core/infobar_delegate.h » ('j') | ios/chrome/browser/infobars/infobar_manager_impl.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698