diff --git chrome/browser/ui/bookmarks/bookmark_stats.cc chrome/browser/ui/bookmarks/bookmark_stats.cc index 45f661faa6e0b..777a1f6c333b6 100644 --- chrome/browser/ui/bookmarks/bookmark_stats.cc +++ chrome/browser/ui/bookmarks/bookmark_stats.cc @@ -21,7 +21,9 @@ bool IsBookmarkBarLocation(BookmarkLaunchLocation location) { auto GetMetricProfile(const Profile* profile) { DCHECK(profile); - DCHECK(profile->IsRegularProfile() || profile->IsIncognitoProfile()); + DCHECK(profile->IsRegularProfile() || profile->IsIncognitoProfile() || + (profile->IsOffTheRecord() && + profile->GetOTRProfileID().IsUniqueForCEF())); return profile->IsRegularProfile() ? profile_metrics::BrowserProfileType::kRegular : profile_metrics::BrowserProfileType::kIncognito; diff --git chrome/browser/ui/views/incognito_clear_browsing_data_dialog.cc chrome/browser/ui/views/incognito_clear_browsing_data_dialog.cc index 07edba472de67..2545b4926e66e 100644 --- chrome/browser/ui/views/incognito_clear_browsing_data_dialog.cc +++ chrome/browser/ui/views/incognito_clear_browsing_data_dialog.cc @@ -29,7 +29,9 @@ IncognitoClearBrowsingDataDialog::IncognitoClearBrowsingDataDialog( dialog_type_(type), incognito_profile_(incognito_profile) { DCHECK(incognito_profile_); - DCHECK(incognito_profile_->IsIncognitoProfile()); + DCHECK(incognito_profile_->IsIncognitoProfile() || + (incognito_profile_->IsOffTheRecord() && + incognito_profile_->GetOTRProfileID().IsUniqueForCEF())); SetButtons(ui::DIALOG_BUTTON_NONE); SetShowCloseButton(true); diff --git chrome/browser/ui/views/incognito_clear_browsing_data_dialog_coordinator.cc chrome/browser/ui/views/incognito_clear_browsing_data_dialog_coordinator.cc index caa20ec03434a..2a3ca921445c1 100644 --- chrome/browser/ui/views/incognito_clear_browsing_data_dialog_coordinator.cc +++ chrome/browser/ui/views/incognito_clear_browsing_data_dialog_coordinator.cc @@ -26,6 +26,10 @@ void IncognitoClearBrowsingDataDialogCoordinator::Show( ->toolbar_button_provider() ->GetAvatarToolbarButton(); + // The full toolbar may not be visible. + if (!avatar_toolbar_button) + return; + auto bubble = std::make_unique( avatar_toolbar_button, GetBrowser().profile(), type); DCHECK_EQ(nullptr, bubble_tracker_.view()); diff --git chrome/browser/ui/views/profiles/incognito_menu_view.cc chrome/browser/ui/views/profiles/incognito_menu_view.cc index 0d0b99bf57efa..2f8ba83a313ab 100644 --- chrome/browser/ui/views/profiles/incognito_menu_view.cc +++ chrome/browser/ui/views/profiles/incognito_menu_view.cc @@ -37,7 +37,9 @@ IncognitoMenuView::IncognitoMenuView(views::Button* anchor_button, Browser* browser) : ProfileMenuViewBase(anchor_button, browser) { - DCHECK(browser->profile()->IsIncognitoProfile()); + DCHECK(browser->profile()->IsIncognitoProfile() || + (browser->profile()->IsOffTheRecord() && + browser->profile()->GetOTRProfileID().IsUniqueForCEF())); GetViewAccessibility().OverrideName(GetAccessibleWindowTitle()); base::RecordAction(base::UserMetricsAction("IncognitoMenu_Show")); diff --git chrome/browser/ui/views/profiles/profile_menu_coordinator.cc chrome/browser/ui/views/profiles/profile_menu_coordinator.cc index 413f221ac2553..4a066d59ed2f0 100644 --- chrome/browser/ui/views/profiles/profile_menu_coordinator.cc +++ chrome/browser/ui/views/profiles/profile_menu_coordinator.cc @@ -44,7 +44,9 @@ void ProfileMenuCoordinator::Show(bool is_source_accelerator) { feature_engagement::kIPHProfileSwitchFeature); std::unique_ptr bubble; - if (browser.profile()->IsIncognitoProfile()) { + if (browser.profile()->IsIncognitoProfile() || + (browser.profile()->IsOffTheRecord() && + browser.profile()->GetOTRProfileID().IsUniqueForCEF())) { bubble = std::make_unique(avatar_toolbar_button, &browser); } else {