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

Side by Side Diff: chrome/browser/printing/print_preview_tab_controller.cc

Issue 8949061: Move a bunch of methods from TabContents into the WebContents interface. This change either moves... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 years 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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/printing/print_preview_tab_controller.h" 5 #include "chrome/browser/printing/print_preview_tab_controller.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <memory> 8 #include <memory>
9 #include <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
(...skipping 237 matching lines...) Expand 10 before | Expand all | Expand 10 after
248 } else if (initiator_tab && 248 } else if (initiator_tab &&
249 initiator_tab->tab_contents()->GetRenderProcessHost() == rph) { 249 initiator_tab->tab_contents()->GetRenderProcessHost() == rph) {
250 closed_initiator_tabs.push_back(initiator_tab); 250 closed_initiator_tabs.push_back(initiator_tab);
251 } 251 }
252 } 252 }
253 253
254 for (size_t i = 0; i < closed_preview_tabs.size(); ++i) { 254 for (size_t i = 0; i < closed_preview_tabs.size(); ++i) {
255 RemovePreviewTab(closed_preview_tabs[i]); 255 RemovePreviewTab(closed_preview_tabs[i]);
256 PrintPreviewUI* print_preview_ui = 256 PrintPreviewUI* print_preview_ui =
257 static_cast<PrintPreviewUI*>( 257 static_cast<PrintPreviewUI*>(
258 closed_preview_tabs[i]->tab_contents()->web_ui()); 258 closed_preview_tabs[i]->tab_contents()->GetWebUI());
259 if (print_preview_ui) 259 if (print_preview_ui)
260 print_preview_ui->OnPrintPreviewTabClosed(); 260 print_preview_ui->OnPrintPreviewTabClosed();
261 } 261 }
262 262
263 for (size_t i = 0; i < closed_initiator_tabs.size(); ++i) 263 for (size_t i = 0; i < closed_initiator_tabs.size(); ++i)
264 RemoveInitiatorTab(closed_initiator_tabs[i], false); 264 RemoveInitiatorTab(closed_initiator_tabs[i], false);
265 } 265 }
266 266
267 void PrintPreviewTabController::OnTabContentsDestroyed( 267 void PrintPreviewTabController::OnTabContentsDestroyed(
268 TabContentsWrapper* tab) { 268 TabContentsWrapper* tab) {
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
388 388
389 AddObservers(initiator_tab); 389 AddObservers(initiator_tab);
390 AddObservers(preview_tab); 390 AddObservers(preview_tab);
391 391
392 return preview_tab; 392 return preview_tab;
393 } 393 }
394 394
395 void PrintPreviewTabController::SetInitiatorTabURLAndTitle( 395 void PrintPreviewTabController::SetInitiatorTabURLAndTitle(
396 TabContentsWrapper* preview_tab) { 396 TabContentsWrapper* preview_tab) {
397 TabContentsWrapper* initiator_tab = GetInitiatorTab(preview_tab); 397 TabContentsWrapper* initiator_tab = GetInitiatorTab(preview_tab);
398 if (initiator_tab && preview_tab->tab_contents()->web_ui()) { 398 if (initiator_tab && preview_tab->tab_contents()->GetWebUI()) {
399 PrintPreviewUI* print_preview_ui = 399 PrintPreviewUI* print_preview_ui =
400 static_cast<PrintPreviewUI*>(preview_tab->tab_contents()->web_ui()); 400 static_cast<PrintPreviewUI*>(preview_tab->tab_contents()->GetWebUI());
401 print_preview_ui->SetInitiatorTabURLAndTitle( 401 print_preview_ui->SetInitiatorTabURLAndTitle(
402 initiator_tab->tab_contents()->GetURL().spec(), 402 initiator_tab->tab_contents()->GetURL().spec(),
403 initiator_tab->print_view_manager()->RenderSourceName()); 403 initiator_tab->print_view_manager()->RenderSourceName());
404 } 404 }
405 } 405 }
406 406
407 void PrintPreviewTabController::AddObservers(TabContentsWrapper* tab) { 407 void PrintPreviewTabController::AddObservers(TabContentsWrapper* tab) {
408 TabContents* contents = tab->tab_contents(); 408 TabContents* contents = tab->tab_contents();
409 registrar_.Add(this, content::NOTIFICATION_TAB_CONTENTS_DESTROYED, 409 registrar_.Add(this, content::NOTIFICATION_TAB_CONTENTS_DESTROYED,
410 content::Source<TabContents>(contents)); 410 content::Source<TabContents>(contents));
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
454 preview_tab_map_[preview_tab] = NULL; 454 preview_tab_map_[preview_tab] = NULL;
455 RemoveObservers(initiator_tab); 455 RemoveObservers(initiator_tab);
456 456
457 // For the navigation case, PrintPreviewDone() has already been called in 457 // For the navigation case, PrintPreviewDone() has already been called in
458 // PrintPreviewMessageHandler::NavigateToPendingEntry(). 458 // PrintPreviewMessageHandler::NavigateToPendingEntry().
459 if (!is_navigation) 459 if (!is_navigation)
460 initiator_tab->print_view_manager()->PrintPreviewDone(); 460 initiator_tab->print_view_manager()->PrintPreviewDone();
461 461
462 // Initiator tab is closed. Close the print preview tab too. 462 // Initiator tab is closed. Close the print preview tab too.
463 PrintPreviewUI* print_preview_ui = 463 PrintPreviewUI* print_preview_ui =
464 static_cast<PrintPreviewUI*>(preview_tab->tab_contents()->web_ui()); 464 static_cast<PrintPreviewUI*>(preview_tab->tab_contents()->GetWebUI());
465 if (print_preview_ui) 465 if (print_preview_ui)
466 print_preview_ui->OnInitiatorTabClosed(); 466 print_preview_ui->OnInitiatorTabClosed();
467 } 467 }
468 468
469 void PrintPreviewTabController::RemovePreviewTab( 469 void PrintPreviewTabController::RemovePreviewTab(
470 TabContentsWrapper* preview_tab) { 470 TabContentsWrapper* preview_tab) {
471 // Remove the initiator tab's observers before erasing the mapping. 471 // Remove the initiator tab's observers before erasing the mapping.
472 TabContentsWrapper* initiator_tab = GetInitiatorTab(preview_tab); 472 TabContentsWrapper* initiator_tab = GetInitiatorTab(preview_tab);
473 if (initiator_tab) { 473 if (initiator_tab) {
474 RemoveObservers(initiator_tab); 474 RemoveObservers(initiator_tab);
475 initiator_tab->print_view_manager()->PrintPreviewDone(); 475 initiator_tab->print_view_manager()->PrintPreviewDone();
476 } 476 }
477 477
478 // Print preview TabContents is destroyed. Notify |PrintPreviewUI| to abort 478 // Print preview TabContents is destroyed. Notify |PrintPreviewUI| to abort
479 // the initiator tab preview request. 479 // the initiator tab preview request.
480 PrintPreviewUI* print_preview_ui = 480 PrintPreviewUI* print_preview_ui =
481 static_cast<PrintPreviewUI*>(preview_tab->tab_contents()->web_ui()); 481 static_cast<PrintPreviewUI*>(preview_tab->tab_contents()->GetWebUI());
482 if (print_preview_ui) 482 if (print_preview_ui)
483 print_preview_ui->OnTabDestroyed(); 483 print_preview_ui->OnTabDestroyed();
484 484
485 preview_tab_map_.erase(preview_tab); 485 preview_tab_map_.erase(preview_tab);
486 RemoveObservers(preview_tab); 486 RemoveObservers(preview_tab);
487 } 487 }
488 488
489 } // namespace printing 489 } // namespace printing
OLDNEW
« no previous file with comments | « chrome/browser/printing/print_preview_message_handler.cc ('k') | chrome/browser/printing/print_view_manager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698