diff options
author | Tom Sepez <tsepez@chromium.org> | 2018-10-18 22:54:02 +0000 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2018-10-18 22:54:02 +0000 |
commit | 1f120c74ea2e0217dbb8a825bc7d495da805fc50 (patch) | |
tree | 614897f6488cad09c947b7ae318a9da4d66f3794 /samples | |
parent | 4c1ced59a6752f21fa857556a845ffad5919fbae (diff) | |
download | pdfium-1f120c74ea2e0217dbb8a825bc7d495da805fc50.tar.xz |
Fully populate JS platform callbacks in pdfium_test
Adjust expected results accordingly.
Order functions to match platform member order.
Change-Id: I3d5f8e3ef8f532af0891b7fbbc1a8305d1922a75
Reviewed-on: https://pdfium-review.googlesource.com/c/44311
Commit-Queue: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Diffstat (limited to 'samples')
-rw-r--r-- | samples/pdfium_test.cc | 42 |
1 files changed, 34 insertions, 8 deletions
diff --git a/samples/pdfium_test.cc b/samples/pdfium_test.cc index c5c298d23e..ac24bcc326 100644 --- a/samples/pdfium_test.cc +++ b/samples/pdfium_test.cc @@ -174,6 +174,10 @@ int ExampleAppAlert(IPDF_JSPLATFORM*, return 0; } +void ExampleAppBeep(IPDF_JSPLATFORM*, int type) { + printf("BEEP!!! %d\n", type); +} + int ExampleAppResponse(IPDF_JSPLATFORM*, FPDF_WIDESTRING question, FPDF_WIDESTRING title, @@ -197,12 +201,12 @@ int ExampleAppResponse(IPDF_JSPLATFORM*, return 4; } -void ExampleAppBeep(IPDF_JSPLATFORM*, int type) { - printf("BEEP!!! %d\n", type); -} - -void ExampleDocGotoPage(IPDF_JSPLATFORM*, int page_number) { - printf("Goto Page: %d\n", page_number); +int ExampleDocGetFilePath(IPDF_JSPLATFORM*, void* file_path, int length) { + static const char kPath[] = "myfile.pdf"; + constexpr int kRequired = static_cast<int>(sizeof(kPath)); + if (file_path && length >= kRequired) + memcpy(file_path, kPath, kRequired); + return kRequired; } void ExampleDocMail(IPDF_JSPLATFORM*, @@ -232,6 +236,25 @@ void ExampleDocPrint(IPDF_JSPLATFORM*, printf("Doc Print: %d, %d, %d, %d, %d, %d, %d, %d\n", bUI, nStart, nEnd, bSilent, bShrinkToFit, bPrintAsImage, bReverse, bAnnotations); } + +void ExampleDocSubmitForm(IPDF_JSPLATFORM*, + void* formData, + int length, + FPDF_WIDESTRING url) { + printf("Doc Submit Form: url=%ls\n", GetPlatformWString(url).c_str()); +} + +void ExampleDocGotoPage(IPDF_JSPLATFORM*, int page_number) { + printf("Goto Page: %d\n", page_number); +} + +int ExampleFieldBrowse(IPDF_JSPLATFORM*, void* file_path, int length) { + static const char kPath[] = "selected.txt"; + constexpr int kRequired = static_cast<int>(sizeof(kPath)); + if (file_path && length >= kRequired) + memcpy(file_path, kPath, kRequired); + return kRequired; +} #endif // PDF_ENABLE_V8 void ExampleUnsupportedHandler(UNSUPPORT_INFO*, int type) { @@ -733,11 +756,14 @@ void RenderPdf(const std::string& name, IPDF_JSPLATFORM platform_callbacks = {}; platform_callbacks.version = 3; platform_callbacks.app_alert = ExampleAppAlert; - platform_callbacks.app_response = ExampleAppResponse; platform_callbacks.app_beep = ExampleAppBeep; - platform_callbacks.Doc_gotoPage = ExampleDocGotoPage; + platform_callbacks.app_response = ExampleAppResponse; + platform_callbacks.Doc_getFilePath = ExampleDocGetFilePath; platform_callbacks.Doc_mail = ExampleDocMail; platform_callbacks.Doc_print = ExampleDocPrint; + platform_callbacks.Doc_submitForm = ExampleDocSubmitForm; + platform_callbacks.Doc_gotoPage = ExampleDocGotoPage; + platform_callbacks.Field_browse = ExampleFieldBrowse; #endif // PDF_ENABLE_V8 FPDF_FORMFILLINFO_PDFiumTest form_callbacks = {}; |