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

Side by Side Diff: chrome/browser/ui/views/hung_renderer_view.cc

Issue 2606293002: Remove ScopedVector from chrome/browser/ui. (Closed)
Patch Set: fix Created 3 years, 11 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/ui/views/hung_renderer_view.h" 5 #include "chrome/browser/ui/views/hung_renderer_view.h"
6 6
7 #include "base/i18n/rtl.h" 7 #include "base/i18n/rtl.h"
8 #include "base/memory/ptr_util.h"
8 #include "base/strings/string_number_conversions.h" 9 #include "base/strings/string_number_conversions.h"
9 #include "base/strings/utf_string_conversions.h" 10 #include "base/strings/utf_string_conversions.h"
10 #include "build/build_config.h" 11 #include "build/build_config.h"
11 #include "chrome/browser/platform_util.h" 12 #include "chrome/browser/platform_util.h"
12 #include "chrome/browser/ui/browser_finder.h" 13 #include "chrome/browser/ui/browser_finder.h"
13 #include "chrome/browser/ui/chrome_web_modal_dialog_manager_delegate.h" 14 #include "chrome/browser/ui/chrome_web_modal_dialog_manager_delegate.h"
14 #include "chrome/browser/ui/tab_contents/core_tab_helper.h" 15 #include "chrome/browser/ui/tab_contents/core_tab_helper.h"
15 #include "chrome/browser/ui/tab_contents/tab_contents_iterator.h" 16 #include "chrome/browser/ui/tab_contents/tab_contents_iterator.h"
16 #include "chrome/common/chrome_constants.h" 17 #include "chrome/common/chrome_constants.h"
17 #include "chrome/common/crash_keys.h" 18 #include "chrome/common/crash_keys.h"
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
73 content::RenderViewHost* HungPagesTableModel::GetRenderViewHost() { 74 content::RenderViewHost* HungPagesTableModel::GetRenderViewHost() {
74 return tab_observers_.empty() ? NULL : 75 return tab_observers_.empty() ? NULL :
75 tab_observers_[0]->web_contents()->GetRenderViewHost(); 76 tab_observers_[0]->web_contents()->GetRenderViewHost();
76 } 77 }
77 78
78 void HungPagesTableModel::InitForWebContents(WebContents* hung_contents) { 79 void HungPagesTableModel::InitForWebContents(WebContents* hung_contents) {
79 tab_observers_.clear(); 80 tab_observers_.clear();
80 if (hung_contents) { 81 if (hung_contents) {
81 // Force hung_contents to be first. 82 // Force hung_contents to be first.
82 if (hung_contents) { 83 if (hung_contents) {
83 tab_observers_.push_back(new WebContentsObserverImpl(this, 84 tab_observers_.push_back(
84 hung_contents)); 85 base::MakeUnique<WebContentsObserverImpl>(this, hung_contents));
85 } 86 }
86 for (TabContentsIterator it; !it.done(); it.Next()) { 87 for (TabContentsIterator it; !it.done(); it.Next()) {
87 if (*it != hung_contents && 88 if (*it != hung_contents &&
88 it->GetRenderProcessHost() == hung_contents->GetRenderProcessHost()) 89 it->GetRenderProcessHost() == hung_contents->GetRenderProcessHost())
89 tab_observers_.push_back(new WebContentsObserverImpl(this, *it)); 90 tab_observers_.push_back(
91 base::MakeUnique<WebContentsObserverImpl>(this, *it));
90 } 92 }
91 } 93 }
92 // The world is different. 94 // The world is different.
93 if (observer_) 95 if (observer_)
94 observer_->OnModelChanged(); 96 observer_->OnModelChanged();
95 } 97 }
96 98
97 /////////////////////////////////////////////////////////////////////////////// 99 ///////////////////////////////////////////////////////////////////////////////
98 // HungPagesTableModel, ui::TableModel implementation: 100 // HungPagesTableModel, ui::TableModel implementation:
99 101
(...skipping 27 matching lines...) Expand all
127 129
128 void HungPagesTableModel::GetGroupRange(int model_index, 130 void HungPagesTableModel::GetGroupRange(int model_index,
129 views::GroupRange* range) { 131 views::GroupRange* range) {
130 DCHECK(range); 132 DCHECK(range);
131 range->start = 0; 133 range->start = 0;
132 range->length = RowCount(); 134 range->length = RowCount();
133 } 135 }
134 136
135 void HungPagesTableModel::TabDestroyed(WebContentsObserverImpl* tab) { 137 void HungPagesTableModel::TabDestroyed(WebContentsObserverImpl* tab) {
136 // Clean up tab_observers_ and notify our observer. 138 // Clean up tab_observers_ and notify our observer.
137 TabObservers::iterator i = std::find( 139 auto i = tab_observers_.begin();
138 tab_observers_.begin(), tab_observers_.end(), tab); 140 for (; i != tab_observers_.end(); ++i) {
141 if (i->get() == tab)
142 break;
143 }
139 DCHECK(i != tab_observers_.end()); 144 DCHECK(i != tab_observers_.end());
140 int index = static_cast<int>(i - tab_observers_.begin()); 145 int index = static_cast<int>(i - tab_observers_.begin());
Nico 2017/01/03 23:15:44 i meant this subtraction is kind of silly; if you
Avi (use Gerrit) 2017/01/04 00:04:50 Done.
141 tab_observers_.erase(i); 146 tab_observers_.erase(i);
142 if (observer_) 147 if (observer_)
143 observer_->OnItemsRemoved(index, 1); 148 observer_->OnItemsRemoved(index, 1);
144 149
145 // Notify the delegate. 150 // Notify the delegate.
146 delegate_->TabDestroyed(); 151 delegate_->TabDestroyed();
147 // WARNING: we've likely been deleted. 152 // WARNING: we've likely been deleted.
148 } 153 }
149 154
150 HungPagesTableModel::WebContentsObserverImpl::WebContentsObserverImpl( 155 HungPagesTableModel::WebContentsObserverImpl::WebContentsObserverImpl(
(...skipping 319 matching lines...) Expand 10 before | Expand all | Expand 10 after
470 475
471 // static 476 // static
472 void HungRendererDialogView::InitClass() { 477 void HungRendererDialogView::InitClass() {
473 static bool initialized = false; 478 static bool initialized = false;
474 if (!initialized) { 479 if (!initialized) {
475 ui::ResourceBundle& rb = ui::ResourceBundle::GetSharedInstance(); 480 ui::ResourceBundle& rb = ui::ResourceBundle::GetSharedInstance();
476 frozen_icon_ = rb.GetImageSkiaNamed(IDR_FROZEN_TAB_ICON); 481 frozen_icon_ = rb.GetImageSkiaNamed(IDR_FROZEN_TAB_ICON);
477 initialized = true; 482 initialized = true;
478 } 483 }
479 } 484 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/views/hung_renderer_view.h ('k') | chrome/browser/ui/website_settings/permission_bubble_browser_test_util.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698