Age | Commit message (Collapse) | Author |
|
... and then immediately release it, but it is a step in the right
direction.
Change-Id: Ib52972c6789d8f98a576d1c69f8019541c96ac51
Reviewed-on: https://pdfium-review.googlesource.com/39152
Commit-Queue: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
|
|
There's no reason that every CXFA_LayoutItem must be a
CXFA_ContentLayout item, so use checked conversions. The
code may already be arranging things so the constraint is
already satisfied, but this adds an additional layer of
safety.
Tidy some long expressions with pre-existing typedef for node
iterator while we're at it.
Change-Id: If1448131ca73bfedb2266b070f1a913688598e64
Reviewed-on: https://pdfium-review.googlesource.com/39051
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Tom Sepez <tsepez@chromium.org>
|
|
Introduce cfxa_layoutcontext.cpp to satisfy chromium style ctor check.
Fix typo in class forward declaration in cfxa_layoutcontext.h
Change-Id: I2b29bf61a21be0f895faf8984897c5655a4f0e89
Reviewed-on: https://pdfium-review.googlesource.com/37950
Commit-Queue: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
|
|
Part 2.
Change-Id: I26fe434dac3c3f5186414440acc2a495a5f14091
Reviewed-on: https://pdfium-review.googlesource.com/36670
Commit-Queue: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
|
|
Import Chromium's base/compiler_specific.h from r537069.
Now that FALLTHROUGH is available via compiler_specific.h, remove
FX_FALLTHROUGH.
Change-Id: I8b9631a4f007673e10e0c26951dfd61e9dcada30
Reviewed-on: https://pdfium-review.googlesource.com/32639
Reviewed-by: Nico Weber <thakis@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
|
|
Change-Id: I4039917c5342f6a4c6568029a293066901bb5db4
Reviewed-on: https://pdfium-review.googlesource.com/31870
Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
|
|
Change-Id: I9dd6a36770f77f3df6c4395572785d37402eadc2
Reviewed-on: https://pdfium-review.googlesource.com/31350
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
Change-Id: I1fd4bf85cd709de1c14ed2895d045018f79bc61f
Reviewed-on: https://pdfium-review.googlesource.com/26950
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
|
|
The SetFlag method has a signature of (flag, bool) which, looking at the
callsites makes you think it will set the flag to the boolean. This
isn't what happens, the flag is always set to true and the boolean
decides if we execute some notification code.
This CL splits SetFlag into SetFlag(flag) and SetFlagAndNotify(flag) to
make it a lot clearer what is happening.
Change-Id: I3e067c87532cce10b94bda10cc88feb62b948eb0
Reviewed-on: https://pdfium-review.googlesource.com/26750
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
This CL marks methods const where possible and removes redundant
methods from CXFA_Document.
Change-Id: I34804425469dfd52469daba68f64a4b511e5d4d0
Reviewed-on: https://pdfium-review.googlesource.com/26730
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
|
|
This CL moves the static construction values from the cpp to the h file.
Change-Id: I04ff6513be2287582b90453390e5bd44c5b47d68
Reviewed-on: https://pdfium-review.googlesource.com/24870
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
This CL moves anonymous namespace methods in CXFA_ItemLayoutProcessor to
be private methods and then fixes the visibility on most of the
methods/data to be private.
Change-Id: Idfccbc53b94628b18bc3576e4466391b0f704b44
Reviewed-on: https://pdfium-review.googlesource.com/24851
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
This CL replaces XFA_ItemLayoutProcessor_IsTakingSpace with a
PresenceRequiresSpace call on CXFA_Node.
Change-Id: Ibf570f25eeb3404d72e87cb62e06a7ad70f0916f
Reviewed-on: https://pdfium-review.googlesource.com/24850
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
This CL removes the calls to CXFA_Node::GetWidgetAcc() as they
redundantly return the node they were called upon.
Change-Id: I46e66cf98137a1dee7cd3fa8bc7d379eb97fded5
Reviewed-on: https://pdfium-review.googlesource.com/23630
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
Including cjx_node.h pulls in v8 headers for many XFA files.
Change-Id: I80a32d0a56b8de5787db5275db48c568da6d0144
Reviewed-on: https://pdfium-review.googlesource.com/22890
Commit-Queue: Lei Zhang <thestig@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
This CL makes it explicit that GetTemplateNodeIfExists can return
nullptr. Various call sites are updated as needed.
Change-Id: If6edd5962b59e7e4ce3dbe9bbdc957783cf76abe
Reviewed-on: https://pdfium-review.googlesource.com/22678
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
This CL removes the CXFA_Node::GetNodeItem(kind, object_type) method in
favour of explicit methods. All of the callers passed in a
XFA_ObjectType::ContainerNode.
Change-Id: I713184d3fa188a122284f50ac2a6b0fd3d7aed26
Reviewed-on: https://pdfium-review.googlesource.com/22651
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
This CL removes the generic CXFA_Node::GetNodeItem(type) method for
specific calls to get the parent, child or siblings.
Change-Id: Ief68284ac7b954aaa4ed7120dd82a39f8b52656a
Reviewed-on: https://pdfium-review.googlesource.com/22650
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
This CL splits CXFA_FFNotify::OnCreateLayoutItem into a Content and
Container variant. This removes the need for casting at the two call
sites.
Change-Id: Ic19bf4398f0ea32099c270f3bb585a18004ccb5d
Reviewed-on: https://pdfium-review.googlesource.com/22412
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
Change-Id: I29769f78eaad10c6a8b79e27524336c4f330377e
Reviewed-on: https://pdfium-review.googlesource.com/22258
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
|
|
This CL folds the CXFA_OccurData wrapper into CXFA_Occur.
Change-Id: I52e237e4f6b76f6915c397e924037562fd9eda6a
Reviewed-on: https://pdfium-review.googlesource.com/22130
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
This CL templates the various Get methods in CXFA_Node in order to
return the correct node type.
Change-Id: I4f50df6dd9213873deb8f8f262eaf579c6c4ca7d
Reviewed-on: https://pdfium-review.googlesource.com/21230
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
This CL converts all of the JSNode() to JSObject() calls as all of the
original CJX_Node methods have been moved to CJX_Object. This fixes
potential bad casts from things like CJX_Content which do not inhert
from CJX_Node.
Bug: pdfium:793372
Change-Id: I6c7f63a78f3d47bb6bad74faed3fd8c535bf095e
Reviewed-on: https://pdfium-review.googlesource.com/21090
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
This CL moves the XFA SOM JS Method information out of the c-array and
into individual CJX class files.
Change-Id: I401046a06aacaf1f04e5a51eb899e479de012e15
Reviewed-on: https://pdfium-review.googlesource.com/20450
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
Change-Id: I3efc57cd7325d16e3ca8ebdeeaec06012b2c56e3
Reviewed-on: https://pdfium-review.googlesource.com/20110
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
|
|
This CL changes the enum XFA_ATTRIBUTEENUM to an enum class
XFA_AttributeEnum. Methods expecting an int32 have been updated to take
or return the XFA_AttrbuteEnum type.
Change-Id: I268453949545fe2dd3eae707be4d9cc7edeff763
Reviewed-on: https://pdfium-review.googlesource.com/20070
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
This CL moves the attribute information out of the xfa basic data array
and stores in the generated nodes.
Change-Id: Id8e280324bf0f75a1da9c937c2734d161324242d
Reviewed-on: https://pdfium-review.googlesource.com/19271
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
|
|
We never use the ::Angle unit internally, we just access the value. This
CL changes the default value to an Integer and drops the measurement.
Change-Id: I85d6d84956595bb0576db42d287f54a5a3db1bed
Reviewed-on: https://pdfium-review.googlesource.com/19790
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
This CL moves the XFA_CalcData and XFA_LayoutItem out of the map'd data
for a CJX_Node and stores directly on the node. This makes the object a
bit bigger but makes the code a lot more understandable.
Change-Id: I8897a52d61d37595181960c23928984aa5d67efc
Reviewed-on: https://pdfium-review.googlesource.com/18590
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
|
|
The CJX_Node::{Set|Get|Try}Object methods are used to set
CXFA_WidgetData and CXFA_Node objects into the CJX_Node. This is stored
in the node as void* data and custom delete methods are passed when
needed.
Instead, this CL just stores the two types of things we need on the
CJX_Node and returns the correct types. This uses a bit more space on
the CJX_Node, but it makes the code a lot clearer and simpler.
Change-Id: I8546ea6456a1c1f5f8b602a6a420a0e85f3fac29
Reviewed-on: https://pdfium-review.googlesource.com/18570
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
This CL converts TryMeasure to return a pdfium::Optional instead of a
bool with an out parameter.
Change-Id: I6e92e53aa0eaa7a6b855253061acca8a59db49fd
Reviewed-on: https://pdfium-review.googlesource.com/18550
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
|
|
This CL converts CJX_Node::TryEnum to return a pdfium::Optional instead
of a bool with an out parameter.
Change-Id: Icc1b063ce51656cc5e467aba358eb9e7d6754fea
Reviewed-on: https://pdfium-review.googlesource.com/18512
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
|
|
This CL changes the TryCData and TryContent to return
pdfium::Optional<WideString> values instead of returning a bool and
taking an out WideString.
Change-Id: I9c9d877803f9f1977191e12d6a907c29784c10b2
Reviewed-on: https://pdfium-review.googlesource.com/18510
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
This CL splits the node template out of xfa_utils into its own file. The
XFA_ByteStringToDouble method was moved to the only calling file.
Change-Id: I85fb2dfa3afc4a675ec69574e32d643c0dca731f
Reviewed-on: https://pdfium-review.googlesource.com/18490
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
This CL adds helper methods to CXFA_Node to retrieve the default values
for attributes with the correct data types.
Change-Id: I644435b4b430819f1060a95fa4fffe4ba2826cfe
Reviewed-on: https://pdfium-review.googlesource.com/18450
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
This CL converts the XFA_UNIT enum to the XFA_Unit enum class.
Change-Id: I6e0588f265e45b863ff1ecc170279f558fb6bd67
Reviewed-on: https://pdfium-review.googlesource.com/18090
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
|
|
This CL converts the XFA_ATTRIBUTE enum to an enum class and fixes up
various usages.
Change-Id: I3dd17cc412d97eb212a65ce63bb9fa19605e1e91
Reviewed-on: https://pdfium-review.googlesource.com/18050
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
This CL renames CXFA_Occur to CXFA_OccurData to show it is part of the
data hierarchy.
Change-Id: I55096747338a9ff83ab24f528f6715a6f4302ba7
Reviewed-on: https://pdfium-review.googlesource.com/17988
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
|
|
This CL removes the default values and inlines in the call sites as
needed.
Change-Id: I68925d57b6230400429421ce728dd5524e5fc9a1
Reviewed-on: https://pdfium-review.googlesource.com/17710
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
This CL removes the default values and inlines at the call sites.
Change-Id: I47ff04a01c30af89949e9c8dd5d51f7ffaef1f98
Reviewed-on: https://pdfium-review.googlesource.com/17610
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
|
|
This CL removes the bProto param as it was never set and inlines the
value where needed in the methods. The default value was removed from
bUseDefault and inlined into callsites as needed.
Change-Id: I773261d19aa3799bc607e7df482b5f5e5217bee6
Reviewed-on: https://pdfium-review.googlesource.com/17533
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
|
|
This CL moves JS code out of CXFA_Node and places it into fxjs/cjx_node.
The CXFA_Node then has a CJX_Node as a member and, currently, proxies JS
calls to the CJX_Node member.
Change-Id: Ic5b95184c8fd2347f0bdcfbccfa89bb6b52835b6
Reviewed-on: https://pdfium-review.googlesource.com/17290
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
With the conversion of internal string sizes to size_t, these wrappers
are no longer needed. Replacing them with strlen and wcslen
respectively.
BUG=pdfium:828
Change-Id: Ia087ca2ddaf688a57ec9bd9ddfb8533cbe41510d
Reviewed-on: https://pdfium-review.googlesource.com/14890
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
Automated using git grep & sed.
Replace StringC classes with StringView classes.
Remove the CFX_ prefix and put string classes in fxcrt namespace.
Change AsStringC() to AsStringView().
Rename tests from TEST(fxcrt, *String*Foo) to TEST(*String*,
Foo).
Couple of tests needed to have their names regularlized.
BUG=pdfium:894
Change-Id: I7ca038685c8d803795f3ed02545124f7a224c83d
Reviewed-on: https://pdfium-review.googlesource.com/14151
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
|
|
There currently exists a weird split where some files exist in xfa/fxfa
and some files exist in xfa/fxfa/app. This CL removes the app/ folder
and moves all files up to the parent directory.
Change-Id: I00c87851a1ebc5a7a636eb9a17b58ba3f1708a84
Reviewed-on: https://pdfium-review.googlesource.com/8810
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
Since there is no guarantee of termination if the StringC was
extracted from a snippet of another string. Make it more obvious
that things like
strlen(str.unterminated_c_str())
might be a bad idea.
Change-Id: I7832248ed89ebbddf5c0bcd402aac7d40ec2adc2
Reviewed-on: https://pdfium-review.googlesource.com/8170
Commit-Queue: Tom Sepez <tsepez@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
|
|
This CL splits the remaining files in xfa/fxfa/app into individual files
named after the classes.
Change-Id: I84bd8938937641bb6897614ed15558a2682f456c
Reviewed-on: https://pdfium-review.googlesource.com/6010
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
Change-Id: I88466943171f19259f84add69679741d44c8e123
Reviewed-on: https://pdfium-review.googlesource.com/5551
Commit-Queue: Lei Zhang <thestig@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
|
|
This Cl splits the xfa_object.h into individual class header files and
fixes the needed includes.
Change-Id: Ia011ee9bc5deee5e44b8a956fa54bc2c3849cff0
Reviewed-on: https://pdfium-review.googlesource.com/3254
Reviewed-by: Nicolás Peña <npm@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
This Cl renames several of the files in xfa/fxfa/parser to match the
name of the contained classes. Files with multiple clasess are split
apart when renamed.
Change-Id: Ice8a1279072ee13c2f62a81946be7f42f9ba6007
Reviewed-on: https://pdfium-review.googlesource.com/3250
Commit-Queue: Nicolás Peña <npm@chromium.org>
Reviewed-by: Nicolás Peña <npm@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
|