Index: pdf/pdfium/pdfium_engine.h |
diff --git a/pdf/pdfium/pdfium_engine.h b/pdf/pdfium/pdfium_engine.h |
index 07c15b56e865c9dca7c344e278c244c3028adc45..0d10e29ca5ba03c043fea47d5118dd9acc9f4628 100644 |
--- a/pdf/pdfium/pdfium_engine.h |
+++ b/pdf/pdfium/pdfium_engine.h |
@@ -108,16 +108,16 @@ class PDFiumEngine : public PDFEngine, |
#if defined(PDF_ENABLE_XFA) |
void SetScrollPosition(const pp::Point& position) override; |
#endif |
- bool IsProgressiveLoad() override; |
std::string GetMetadata(const std::string& key) override; |
// DocumentLoader::Client implementation. |
pp::Instance* GetPluginInstance() override; |
- pp::URLLoader CreateURLLoader() override; |
- void OnPartialDocumentLoaded() override; |
+ std::unique_ptr<URLLoaderWrapper> CreateURLLoader() override; |
void OnPendingRequestComplete() override; |
void OnNewDataAvailable() override; |
void OnDocumentComplete() override; |
+ void OnDocumentCanceled() override; |
+ void CancelBrowserDownload() override; |
void UnsupportedFeature(int type); |
@@ -190,11 +190,11 @@ class PDFiumEngine : public PDFEngine, |
friend class SelectionChangeInvalidator; |
struct FileAvail : public FX_FILEAVAIL { |
- DocumentLoader* loader; |
+ PDFiumEngine* engine; |
}; |
struct DownloadHints : public FX_DOWNLOADHINTS { |
- DocumentLoader* loader; |
+ PDFiumEngine* engine; |
}; |
// PDFium interface to get block of data. |
@@ -599,7 +599,7 @@ class PDFiumEngine : public PDFEngine, |
double current_zoom_; |
unsigned int current_rotation_; |
- DocumentLoader doc_loader_; // Main document's loader. |
+ std::unique_ptr<DocumentLoader> doc_loader_; // Main document's loader. |
std::string url_; |
std::string headers_; |
pp::CompletionCallbackFactory<PDFiumEngine> find_factory_; |
@@ -730,6 +730,11 @@ class PDFiumEngine : public PDFEngine, |
// to false after the user finishes getting their password. |
bool getting_password_; |
+ // While true, the document try to be opened and parsed after download each |
+ // part. Else the document will be opened and parsed only on finish of |
+ // downloading. |
+ bool process_when_pending_request_complete_ = true; |
+ |
DISALLOW_COPY_AND_ASSIGN(PDFiumEngine); |
}; |