Commit f9c90b5c authored by Jay Civelli's avatar Jay Civelli Committed by Commit Bot

Changing PdfToEmfConverter to use BindOnce/Repeating.

Changing from base::Bind to base::BindOnce/Repeating in the
PdfToEmfConverter class.

Bug: 766451
Change-Id: I8e319028f1610a1a0e40cc20af642afa711b25ee
Reviewed-on: https://chromium-review.googlesource.com/826319Reviewed-by: default avatarLei Zhang <thestig@chromium.org>
Commit-Queue: Jay Civelli <jcivelli@chromium.org>
Cr-Commit-Position: refs/heads/master@{#524248}
parent 5539d685
...@@ -214,7 +214,7 @@ class PdfConverterUtilityProcessHostClient ...@@ -214,7 +214,7 @@ class PdfConverterUtilityProcessHostClient
const PdfRenderSettings& settings); const PdfRenderSettings& settings);
void Start(const scoped_refptr<base::RefCountedMemory>& data, void Start(const scoped_refptr<base::RefCountedMemory>& data,
const PdfConverter::StartCallback& start_callback); PdfConverter::StartCallback start_callback);
void GetPage(int page_number, void GetPage(int page_number,
const PdfConverter::GetPageCallback& get_page_callback); const PdfConverter::GetPageCallback& get_page_callback);
...@@ -333,18 +333,18 @@ class PdfConverterImpl : public PdfConverter { ...@@ -333,18 +333,18 @@ class PdfConverterImpl : public PdfConverter {
void Start(const scoped_refptr<base::RefCountedMemory>& data, void Start(const scoped_refptr<base::RefCountedMemory>& data,
const PdfRenderSettings& conversion_settings, const PdfRenderSettings& conversion_settings,
const StartCallback& start_callback); StartCallback start_callback);
void GetPage(int page_number, void GetPage(int page_number,
const GetPageCallback& get_page_callback) override; const GetPageCallback& get_page_callback) override;
// Helps to cancel callbacks if this object is destroyed. // Helps to cancel callbacks if this object is destroyed.
void RunCallback(const base::Closure& callback); void RunCallback(base::OnceClosure callback);
void Start( void Start(
const scoped_refptr<PdfConverterUtilityProcessHostClient>& utility_client, const scoped_refptr<PdfConverterUtilityProcessHostClient>& utility_client,
const scoped_refptr<base::RefCountedMemory>& data, const scoped_refptr<base::RefCountedMemory>& data,
const StartCallback& start_callback); StartCallback start_callback);
private: private:
scoped_refptr<PdfConverterUtilityProcessHostClient> utility_client_; scoped_refptr<PdfConverterUtilityProcessHostClient> utility_client_;
...@@ -475,18 +475,18 @@ PdfConverterUtilityProcessHostClient::~PdfConverterUtilityProcessHostClient() {} ...@@ -475,18 +475,18 @@ PdfConverterUtilityProcessHostClient::~PdfConverterUtilityProcessHostClient() {}
void PdfConverterUtilityProcessHostClient::Start( void PdfConverterUtilityProcessHostClient::Start(
const scoped_refptr<base::RefCountedMemory>& data, const scoped_refptr<base::RefCountedMemory>& data,
const PdfConverter::StartCallback& start_callback) { PdfConverter::StartCallback start_callback) {
if (!BrowserThread::CurrentlyOn(BrowserThread::IO)) { if (!BrowserThread::CurrentlyOn(BrowserThread::IO)) {
BrowserThread::PostTask( BrowserThread::PostTask(
BrowserThread::IO, FROM_HERE, BrowserThread::IO, FROM_HERE,
base::Bind(&PdfConverterUtilityProcessHostClient::Start, this, data, base::BindOnce(&PdfConverterUtilityProcessHostClient::Start, this, data,
start_callback)); std::move(start_callback)));
return; return;
} }
// Store callback before any OnFailed() call to make it called on failure. // Store callback before any OnFailed() call to make it called on failure.
DCHECK(start_callback); DCHECK(start_callback);
start_callback_ = start_callback; start_callback_ = std::move(start_callback);
// NOTE: This process _must_ be sandboxed, otherwise the pdf dll will load // NOTE: This process _must_ be sandboxed, otherwise the pdf dll will load
// gdiplus.dll, change how rendering happens, and not be able to correctly // gdiplus.dll, change how rendering happens, and not be able to correctly
...@@ -540,7 +540,7 @@ void PdfConverterUtilityProcessHostClient::OnPageCount( ...@@ -540,7 +540,7 @@ void PdfConverterUtilityProcessHostClient::OnPageCount(
BrowserThread::PostTask( BrowserThread::PostTask(
BrowserThread::UI, FROM_HERE, BrowserThread::UI, FROM_HERE,
base::BindOnce(&PdfConverterImpl::RunCallback, converter_, base::BindOnce(&PdfConverterImpl::RunCallback, converter_,
base::Bind(start_callback_, page_count))); base::BindOnce(std::move(start_callback_), page_count)));
} }
void PdfConverterUtilityProcessHostClient::GetPage( void PdfConverterUtilityProcessHostClient::GetPage(
...@@ -604,8 +604,8 @@ void PdfConverterUtilityProcessHostClient::OnPageDone(bool success, ...@@ -604,8 +604,8 @@ void PdfConverterUtilityProcessHostClient::OnPageDone(bool success,
BrowserThread::PostTask( BrowserThread::PostTask(
BrowserThread::UI, FROM_HERE, BrowserThread::UI, FROM_HERE,
base::Bind(&PdfConverterImpl::RunCallback, converter_, base::Bind(&PdfConverterImpl::RunCallback, converter_,
base::Bind(data.callback(), data.page_number(), scale_factor, base::BindRepeating(data.callback(), data.page_number(),
base::Passed(&file)))); scale_factor, base::Passed(&file))));
get_page_callbacks_.pop(); get_page_callbacks_.pop();
} }
...@@ -701,10 +701,10 @@ PdfConverterImpl::~PdfConverterImpl() { ...@@ -701,10 +701,10 @@ PdfConverterImpl::~PdfConverterImpl() {
void PdfConverterImpl::Start( void PdfConverterImpl::Start(
const scoped_refptr<PdfConverterUtilityProcessHostClient>& utility_client, const scoped_refptr<PdfConverterUtilityProcessHostClient>& utility_client,
const scoped_refptr<base::RefCountedMemory>& data, const scoped_refptr<base::RefCountedMemory>& data,
const StartCallback& start_callback) { StartCallback start_callback) {
DCHECK(!utility_client_); DCHECK(!utility_client_);
utility_client_ = utility_client; utility_client_ = utility_client;
utility_client_->Start(data, start_callback); utility_client_->Start(data, std::move(start_callback));
} }
void PdfConverterImpl::GetPage(int page_number, void PdfConverterImpl::GetPage(int page_number,
...@@ -712,9 +712,9 @@ void PdfConverterImpl::GetPage(int page_number, ...@@ -712,9 +712,9 @@ void PdfConverterImpl::GetPage(int page_number,
utility_client_->GetPage(page_number, get_page_callback); utility_client_->GetPage(page_number, get_page_callback);
} }
void PdfConverterImpl::RunCallback(const base::Closure& callback) { void PdfConverterImpl::RunCallback(base::OnceClosure callback) {
DCHECK_CURRENTLY_ON(BrowserThread::UI); DCHECK_CURRENTLY_ON(BrowserThread::UI);
callback.Run(); std::move(callback).Run();
} }
} // namespace } // namespace
...@@ -725,12 +725,12 @@ PdfConverter::~PdfConverter() {} ...@@ -725,12 +725,12 @@ PdfConverter::~PdfConverter() {}
std::unique_ptr<PdfConverter> PdfConverter::StartPdfConverter( std::unique_ptr<PdfConverter> PdfConverter::StartPdfConverter(
const scoped_refptr<base::RefCountedMemory>& data, const scoped_refptr<base::RefCountedMemory>& data,
const PdfRenderSettings& conversion_settings, const PdfRenderSettings& conversion_settings,
const StartCallback& start_callback) { StartCallback start_callback) {
std::unique_ptr<PdfConverterImpl> converter = std::unique_ptr<PdfConverterImpl> converter =
base::MakeUnique<PdfConverterImpl>(); base::MakeUnique<PdfConverterImpl>();
converter->Start(new PdfConverterUtilityProcessHostClient( converter->Start(new PdfConverterUtilityProcessHostClient(
converter->GetWeakPtr(), conversion_settings), converter->GetWeakPtr(), conversion_settings),
data, start_callback); data, std::move(start_callback));
return std::move(converter); return std::move(converter);
} }
......
...@@ -17,11 +17,11 @@ struct PdfRenderSettings; ...@@ -17,11 +17,11 @@ struct PdfRenderSettings;
class PdfConverter { class PdfConverter {
public: public:
using StartCallback = base::Callback<void(int page_count)>; using StartCallback = base::OnceCallback<void(int page_count)>;
using GetPageCallback = using GetPageCallback =
base::Callback<void(int page_number, base::RepeatingCallback<void(int page_number,
float scale_factor, float scale_factor,
std::unique_ptr<MetafilePlayer> file)>; std::unique_ptr<MetafilePlayer> file)>;
virtual ~PdfConverter(); virtual ~PdfConverter();
// Starts conversion of PDF provided as |data|. Calls |start_callback| // Starts conversion of PDF provided as |data|. Calls |start_callback|
...@@ -29,7 +29,7 @@ class PdfConverter { ...@@ -29,7 +29,7 @@ class PdfConverter {
static std::unique_ptr<PdfConverter> StartPdfConverter( static std::unique_ptr<PdfConverter> StartPdfConverter(
const scoped_refptr<base::RefCountedMemory>& data, const scoped_refptr<base::RefCountedMemory>& data,
const PdfRenderSettings& conversion_settings, const PdfRenderSettings& conversion_settings,
const StartCallback& start_callback); StartCallback start_callback);
// Requests conversion of the page. |page_number| is 0-base page number in // Requests conversion of the page. |page_number| is 0-base page number in
// PDF provided in Start() call. // PDF provided in Start() call.
......
...@@ -226,9 +226,9 @@ class PrintJob::PdfConversionState { ...@@ -226,9 +226,9 @@ class PrintJob::PdfConversionState {
void Start(const scoped_refptr<base::RefCountedMemory>& data, void Start(const scoped_refptr<base::RefCountedMemory>& data,
const PdfRenderSettings& conversion_settings, const PdfRenderSettings& conversion_settings,
const PdfConverter::StartCallback& start_callback) { PdfConverter::StartCallback start_callback) {
converter_ = PdfConverter::StartPdfConverter( converter_ = PdfConverter::StartPdfConverter(data, conversion_settings,
data, conversion_settings, start_callback); std::move(start_callback));
} }
void GetMorePages(const PdfConverter::GetPageCallback& get_page_callback) { void GetMorePages(const PdfConverter::GetPageCallback& get_page_callback) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment