PDF XFA: Date field is not interactive and drawn incorrectly |
|||
Issue descriptionOn an XFA enabled build: 1. Open https://www.canada.ca/content/dam/ircc/migration/ircc/english/pdf/kits/forms/imm5257e.pdf 2. Scroll down to page 2 and find "PASSPORT" "4. * Expiry date" Expected: There is a border around the field. Clicking on it gives it focus and shows an arrow to open the MonthCalendar. Actual: Only a part of the border is visible. Clicking on it does not do anything.
,
May 2 2018
,
May 4 2018
That's a regression. Culprit is: commit 5e332f1275dd6f4b6d487d313f4db8497df339ab Author: Dan Sinclair <dsinclair@chromium.org> Date: Mon Jan 29 19:52:07 2018 +0000 Cleanup the FFWidget determination code. This CL converts the UIType to an XFA_FFWidgetType instead of reusing the XFA_Element type. The creation code is cleaned up to make it clearer what's happening. Change-Id: I5d3e4967d5c8b8a50dbb25e574b0d31fe0cf407a Reviewed-on: https://pdfium-review.googlesource.com/24390 Reviewed-by: Ryan Harrison <rharrison@chromium.org> Commit-Queue: dsinclair <dsinclair@chromium.org> Since it's been too long, I'll look into how to fix forward.
,
May 4 2018
The problem is larger than I thought. I rendered imm5257e.pdf with pdfium_test before and after, with a couple of strategic prints. Diffing the outputs show that is that some Nodes that were Lines and one node that was a Rectangle are being considered TextEdits after this change. Look at after.out and see how there are some occurrences of: """ pNode->GetFFWidgetType() child->GetElementType() 300 10 """ 300 is XFA_Element::Line, and it used to be interpreted as such in FFNotify::OnCreateContentLayoutItem(), creating a CXFA_FFLine. Now it's converted (in all but two cases) to 10, which is XFA_FFWidgetType::kTextEdit. In the remaining two cases, it's converted correctly to 12, which is XFA_FFWidgetType::kLine. This also happens in one instance with XFA_Element::Rectangle, which is 227, being converted to 10 (XFA_FFWidgetType::kTextEdit). The effect this has is that some lines don't appear, and instead TextEdits are created - I don't know where. See the rendering differences before and after attached. I couldn't actually find where the original DateTimeEdit went. My guess is that it's underneath one of these false TextEdits, since I couldn't find discrepancies related to DateTimeEdits.
,
May 4 2018
,
May 7 2018
The following revision refers to this bug: https://pdfium.googlesource.com/pdfium/+/c732e9aa64a82c06c0ad369088d0481dd2636b86 commit c732e9aa64a82c06c0ad369088d0481dd2636b86 Author: Henrique Nakashima <hnakashima@chromium.org> Date: Mon May 07 22:44:26 2018 Restore logic of CreateChildUIAndValueNodesIfNeeded(). CreateUIChild() was changed and renamed to CreateChildUIAndValueNodesIfNeeded() in: https://pdfium-review.googlesource.com/c/pdfium/+/24390 This caused some bugs but it's too far back for a rollback. This cl restores the logic of CreateUIChild() keeping the new signature. Bug: chromium:838994 Change-Id: I44ce741fdb90f8b0fd11379b5e881e376c307f0c Reviewed-on: https://pdfium-review.googlesource.com/32090 Reviewed-by: dsinclair <dsinclair@chromium.org> Commit-Queue: Henrique Nakashima <hnakashima@chromium.org> [add] https://crrev.com/c732e9aa64a82c06c0ad369088d0481dd2636b86/testing/resources/pixel/xfa_specific/xfa_rectangle_node.in [modify] https://crrev.com/c732e9aa64a82c06c0ad369088d0481dd2636b86/xfa/fxfa/parser/cxfa_node.cpp [add] https://crrev.com/c732e9aa64a82c06c0ad369088d0481dd2636b86/testing/resources/pixel/xfa_specific/xfa_rectangle_node_expected.pdf.0.png
,
May 8 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d0a8df71b3c196e7a8bcb72b639fdcb4f03e88b1 commit d0a8df71b3c196e7a8bcb72b639fdcb4f03e88b1 Author: pdfium-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com <pdfium-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com> Date: Tue May 08 06:05:07 2018 Roll src/third_party/pdfium/ cb391259a..e5c0fa97c (12 commits) https://pdfium.googlesource.com/pdfium.git/+log/cb391259aefd..e5c0fa97c2da $ git log cb391259a..e5c0fa97c --date=short --no-merges --format='%ad %ae %s' 2018-05-08 thestig Make one more CPDF_PageObjectHolder member protected. 2018-05-07 thestig Make more CPDF_PageObjectHolder members protected. 2018-05-07 thestig Make CPDF_PageObjectHolder::m_iTransparency protected. 2018-05-07 thestig Add some getters for CPDF_PageObjectHolder. 2018-05-07 hnakashima Restore logic of CreateChildUIAndValueNodesIfNeeded(). 2018-05-07 tsepez Move codepage tables from cpdf_document.cpp to fx_codepage.cpp 2018-05-07 tsepez Use unowned ptr for CPDF_Page::m_pView. 2018-05-07 thestig Move some CPDF_TextPage methods into an anonymous namespace. 2018-05-07 thestig Initialize CPDF_RenderStatus members in the header. 2018-05-07 thestig Initialize CPDF_TextPage members in the header. 2018-05-07 tsepez Ensure that XFA Pages always have a corresponding PDF page 2018-05-07 tsepez Add test for mutltiple copies of same PDF page. Created with: roll-dep src/third_party/pdfium BUG= chromium:838994 The AutoRoll server is located here: https://pdfium-roll.skia.org Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. TBR=dsinclair@chromium.org Change-Id: I383e6d0de113818b5481784c690c62aa213fb394 Reviewed-on: https://chromium-review.googlesource.com/1049111 Reviewed-by: pdfium-chromium-autoroll <pdfium-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com> Commit-Queue: pdfium-chromium-autoroll <pdfium-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#556706} [modify] https://crrev.com/d0a8df71b3c196e7a8bcb72b639fdcb4f03e88b1/DEPS
,
May 8 2018
|
|||
►
Sign in to add a comment |
|||
Comment 1 by hnakashima@chromium.org
, May 2 201810.0 KB
10.0 KB View Download