diff options
author | Lei Zhang <thestig@chromium.org> | 2017-08-31 08:54:46 -0700 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2017-08-31 16:40:39 +0000 |
commit | 63b012652da22f75172895a975ea7932e63dcc81 (patch) | |
tree | b65983986610796f96bd167aa32253ddd358a381 /testing | |
parent | 54b8137361f601148d266d779403ec0393113f39 (diff) | |
download | pdfium-63b012652da22f75172895a975ea7932e63dcc81.tar.xz |
Implement FORM_OnFocus() API.
Given a point, if there is an annotation at the point, give if focus if
it is not focus already. If there is no annotation at the point, then
remove the focus from the focused annotation.
BUG=chromium:754594
Change-Id: Iec3070472bbbfbad9d86e517f25da560f82efd4e
Reviewed-on: https://pdfium-review.googlesource.com/12530
Commit-Queue: Lei Zhang <thestig@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
Diffstat (limited to 'testing')
-rw-r--r-- | testing/resources/javascript/mouse_events.evt | 19 | ||||
-rw-r--r-- | testing/resources/javascript/mouse_events.in | 92 | ||||
-rw-r--r-- | testing/resources/javascript/mouse_events_expected.txt | 10 | ||||
-rw-r--r-- | testing/tools/test_runner.py | 2 |
4 files changed, 122 insertions, 1 deletions
diff --git a/testing/resources/javascript/mouse_events.evt b/testing/resources/javascript/mouse_events.evt new file mode 100644 index 0000000000..57105063e4 --- /dev/null +++ b/testing/resources/javascript/mouse_events.evt @@ -0,0 +1,19 @@ +# Mouse in, mouse out. +mousemove,125,225 +mousemove,125,100 +# Mouse in, click in field. +mousemove,125,225 +mousedown,left,125,225 +mouseup,left,125,225 +# Mouse out, click elsewhere. +# This should trigger an On Blur event. (Bug 881) +mousemove,125,100 +mousedown,left,125,100 +mouseup,left,125,100 +# Mouse in, focus. +mousemove,125,225 +focus,125,225 +# Mouse out, unfocus. +# This should trigger an On Blur event. (Bug 881) +mousemove,125,100 +focus,125,100 diff --git a/testing/resources/javascript/mouse_events.in b/testing/resources/javascript/mouse_events.in new file mode 100644 index 0000000000..a72162add3 --- /dev/null +++ b/testing/resources/javascript/mouse_events.in @@ -0,0 +1,92 @@ +{{header}} +{{object 1 0}} << + /Type /Catalog + /Pages 2 0 R + /AcroForm 4 0 R +>> +endobj +{{object 2 0}} << + /Type /Pages + /Count 1 + /Kids [ + 3 0 R + ] +>> +endobj +% Page number 0. +{{object 3 0}} << + /Type /Page + /Parent 2 0 R + /Resources << + /Font <</F1 20 0 R>> + >> + /Annots [ 5 0 R ] + /Contents [21 0 R] + /MediaBox [0 0 612 792] +>> +% Forms +{{object 4 0}} << + /Fields [5 0 R] +>> +% Field with actions: +% Cursor enter: E +% Cursor exit: X +% Mouse down: D +% Mouse up: U +% Focus: Fo +% Blur: Bl +{{object 5 0}} << + /FT /Tx + /T (MyField) + /Type /Annot + /Subtype /Widget + /Rect [100 200 150 250] + /AA << + /E 10 0 R + /X 11 0 R + /D 12 0 R + /U 13 0 R + /Fo 14 0 R + /Bl 15 0 R + >> +>> +{{object 10 0}} << + /Type /Action + /S /JavaScript + /JS (app.alert\("enter"\);) +>> +endobj +{{object 11 0}} << + /Type /Action + /S /JavaScript + /JS (app.alert\("exit"\);) +>> +endobj +{{object 12 0}} << + /Type /Action + /S /JavaScript + /JS (app.alert\("down"\);) +>> +endobj +{{object 13 0}} << + /Type /Action + /S /JavaScript + /JS (app.alert\("up"\);) +>> +endobj +{{object 14 0}} << + /Type /Action + /S /JavaScript + /JS (app.alert\("focus"\);) +>> +endobj +{{object 15 0}} << + /Type /Action + /S /JavaScript + /JS (app.alert\("blur"\);) +>> +endobj +{{xref}} +{{trailer}} +{{startxref}} +%%EOF diff --git a/testing/resources/javascript/mouse_events_expected.txt b/testing/resources/javascript/mouse_events_expected.txt new file mode 100644 index 0000000000..3d9b8b6071 --- /dev/null +++ b/testing/resources/javascript/mouse_events_expected.txt @@ -0,0 +1,10 @@ +Alert: enter +Alert: exit +Alert: enter +Alert: down +Alert: focus +Alert: up +Alert: exit +Alert: enter +Alert: focus +Alert: exit diff --git a/testing/tools/test_runner.py b/testing/tools/test_runner.py index 9524b7459b..86e05636ab 100644 --- a/testing/tools/test_runner.py +++ b/testing/tools/test_runner.py @@ -115,7 +115,7 @@ class TestRunner: txt_path = os.path.join(self.working_dir, input_root + '.txt') with open(txt_path, 'w') as outfile: - cmd_to_run = [self.pdfium_test_path, pdf_path] + cmd_to_run = [self.pdfium_test_path, '--send-events', pdf_path] subprocess.check_call(cmd_to_run, stdout=outfile) cmd = [sys.executable, self.text_diff_path, expected_txt_path, txt_path] |