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

Side by Side Diff: chrome/browser/ui/webui/print_preview/print_preview_handler.cc

Issue 73503002: Move PDF to PWG conversion into PrivetLocalPrintOperationImpl (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 1 month 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) 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/webui/print_preview/print_preview_handler.h" 5 #include "chrome/browser/ui/webui/print_preview/print_preview_handler.h"
6 6
7 #include <ctype.h> 7 #include <ctype.h>
8 8
9 #include <string> 9 #include <string>
10 10
(...skipping 1404 matching lines...) Expand 10 before | Expand all | Expand 10 after
1415 StartPrivetLocalPrint(print_ticket); 1415 StartPrivetLocalPrint(print_ticket);
1416 } 1416 }
1417 1417
1418 void PrintPreviewHandler::StartPrivetLocalPrint( 1418 void PrintPreviewHandler::StartPrivetLocalPrint(
1419 const std::string& print_ticket) { 1419 const std::string& print_ticket) {
1420 privet_local_print_operation_ = 1420 privet_local_print_operation_ =
1421 privet_http_client_->CreateLocalPrintOperation(this); 1421 privet_http_client_->CreateLocalPrintOperation(this);
1422 1422
1423 privet_local_print_operation_->SetTicket(print_ticket); 1423 privet_local_print_operation_->SetTicket(print_ticket);
1424 1424
1425 PrintPreviewUI* print_preview_ui = static_cast<PrintPreviewUI*>( 1425 scoped_refptr<base::RefCountedBytes> data;
1426 web_ui()->GetController()); 1426 string16 title;
1427
1428 if (!GetPreviewDataAndTitle(&data, &title)) {
1429 base::FundamentalValue http_code_value(-1);
1430 web_ui()->CallJavascriptFunction("onPrivetPrintFailed", http_code_value);
1431 return;
1432 }
1433
1427 privet_local_print_operation_->SetJobname( 1434 privet_local_print_operation_->SetJobname(
1428 base::UTF16ToUTF8(print_preview_ui->initiator_title())); 1435 base::UTF16ToUTF8(title));
1436
1437 privet_local_print_operation_->SetData(data);
1429 1438
1430 Profile* profile = Profile::FromWebUI(web_ui()); 1439 Profile* profile = Profile::FromWebUI(web_ui());
1431 SigninManagerBase* signin_manager = 1440 SigninManagerBase* signin_manager =
1432 SigninManagerFactory::GetForProfileIfExists(profile); 1441 SigninManagerFactory::GetForProfileIfExists(profile);
1433 1442
1434 if (signin_manager) { 1443 if (signin_manager) {
1435 privet_local_print_operation_->SetUsername( 1444 privet_local_print_operation_->SetUsername(
1436 signin_manager->GetAuthenticatedUsername()); 1445 signin_manager->GetAuthenticatedUsername());
1437 } 1446 }
1438 1447
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
1506 Profile::FromWebUI(web_ui())->GetRequestContext()); 1515 Profile::FromWebUI(web_ui())->GetRequestContext());
1507 privet_http_resolution_ = privet_http_factory_->CreatePrivetHTTP( 1516 privet_http_resolution_ = privet_http_factory_->CreatePrivetHTTP(
1508 name, 1517 name,
1509 device_description->address, 1518 device_description->address,
1510 callback); 1519 callback);
1511 privet_http_resolution_->Start(); 1520 privet_http_resolution_->Start();
1512 1521
1513 return true; 1522 return true;
1514 } 1523 }
1515 1524
1516 void PrintPreviewHandler::OnPrivetPrintingRequestPDF(
1517 const local_discovery::PrivetLocalPrintOperation* print_operation) {
1518 scoped_refptr<base::RefCountedBytes> data;
1519 string16 title;
1520
1521 if (!GetPreviewDataAndTitle(&data, &title)) {
1522 base::FundamentalValue http_code_value(-1);
1523 web_ui()->CallJavascriptFunction("onPrivetPrintFailed", http_code_value);
1524 return;
1525 }
1526
1527 // TODO(noamsml): Move data into request without copying it?
1528 std::string data_str((const char*)data->front(), data->size());
1529
1530 privet_local_print_operation_->SendData(data_str);
1531 }
1532
1533 void PrintPreviewHandler::OnPrivetPrintingRequestPWGRaster(
1534 const local_discovery::PrivetLocalPrintOperation* print_operation) {
1535 NOTIMPLEMENTED();
1536 }
1537
1538 void PrintPreviewHandler::OnPrivetPrintingDone( 1525 void PrintPreviewHandler::OnPrivetPrintingDone(
1539 const local_discovery::PrivetLocalPrintOperation* print_operation) { 1526 const local_discovery::PrivetLocalPrintOperation* print_operation) {
1540 ClosePreviewDialog(); 1527 ClosePreviewDialog();
1541 } 1528 }
1542 1529
1543 void PrintPreviewHandler::OnPrivetPrintingError( 1530 void PrintPreviewHandler::OnPrivetPrintingError(
1544 const local_discovery::PrivetLocalPrintOperation* print_operation, 1531 const local_discovery::PrivetLocalPrintOperation* print_operation,
1545 int http_code) { 1532 int http_code) {
1546 base::FundamentalValue http_code_value(http_code); 1533 base::FundamentalValue http_code_value(http_code);
1547 web_ui()->CallJavascriptFunction("onPrivetPrintFailed", http_code_value); 1534 web_ui()->CallJavascriptFunction("onPrivetPrintFailed", http_code_value);
1548 } 1535 }
1549 1536
1550 void PrintPreviewHandler::FillPrinterDescription( 1537 void PrintPreviewHandler::FillPrinterDescription(
1551 const std::string& name, 1538 const std::string& name,
1552 const local_discovery::DeviceDescription& description, 1539 const local_discovery::DeviceDescription& description,
1553 base::DictionaryValue* printer_value) { 1540 base::DictionaryValue* printer_value) {
1554 printer_value->SetString("serviceName", name); 1541 printer_value->SetString("serviceName", name);
1555 printer_value->SetString("name", description.name); 1542 printer_value->SetString("name", description.name);
1556 } 1543 }
1557 1544
1558 #endif 1545 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698