Age | Commit message (Collapse) | Author |
|
This CL splits the xfa_texlayout.{cpp|h} files into individual class files.
Minor reformatting was done in the new clasess.
Change-Id: Id79ffcb8dca3fcf287a2e6dec78fd2b1f990a542
Reviewed-on: https://pdfium-review.googlesource.com/2162
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
|
|
We worry about cyclical references, but no leaks found.
Review-Url: https://codereview.chromium.org/2609423003
|
|
Review-Url: https://codereview.chromium.org/2612923002
|
|
Be suspicious of |new|. This removes some of the
easy cases.
Review-Url: https://codereview.chromium.org/2571913002
|
|
Review-Url: https://codereview.chromium.org/2567503002
|
|
IFGAS_FontMgr is an interface only for a class only defined on Windows,
plus a class only defined for non-Windows. I'm removing the interface,
renaming the class to have the same name in both cases, and cleaning up
a bit of unused methods.
Review-Url: https://codereview.chromium.org/2494883002
|
|
Review-Url: https://codereview.chromium.org/2467203003
|
|
Review-Url: https://codereview.chromium.org/2457673003
|
|
BUG=pdfium:611
Review-Url: https://codereview.chromium.org/2383593002
|
|
BUG=pdfium:611
Review-Url: https://codereview.chromium.org/2382723003
|
|
During XFA text layout, text pieces are allocated with lines, and
their text and widths are also allocated. However, they are not
freed in any place. Fix this by releasing them along with lines
during unload() process.
BUG=pdfium:242
Review-Url: https://codereview.chromium.org/2297563006
|
|
Use smart pointer to replace raw pointer type for class
owned member variables so that memory management will
be easier.
BUG=pdfium:518
Review-Url: https://codereview.chromium.org/2208423002
|
|
This Cl splits out the CXFA_WideTextRead class into it's own file. The helper
methods have been moved into xfa_utils.cpp and their pre-declarations into
xfa_utils.h.
Review-Url: https://codereview.chromium.org/2165993002
|
|
This CL converts all NULL's to nullptr. All instances of comparison to nullptr
have been removed.
Review-Url: https://codereview.chromium.org/2095653002
|
|
This change mainly contains files in xfa/fxfa directory.
This is part of the efforts to make PDFium code compilable
by Clang chromium style plugins.
The changes are mainly the following:
-- move inline constructor/destructor of complex class/struct out-of-line;
-- add constructor/destructor of complex class/struct if not
explicitly defined;
-- add explicit out-of-line copy constructor when needed;
-- move inline virtual functions out-of-line;
-- Properly mark virtual functions with 'override';
-- some minor cleanups;
BUG=pdfium:469
Review-Url: https://codereview.chromium.org/2071683002
|
|
Review-Url: https://codereview.chromium.org/2037563002
|
|
Review-Url: https://codereview.chromium.org/2032613003
|
|
The value returned is always NULL and when passed as a param is never used.
Review-Url: https://codereview.chromium.org/2044623002
|
|
Avoid confusion with CFX_FontMgr, which does not inherit
from IFX_FontMgr, and lives in a different layer of code.
Do the same CFX_ -> CFGAS_ transformation for the concrete
classes that implement IFGAS_FontMgr.
Review-Url: https://codereview.chromium.org/2039463003
|
|
Avoid confusion with CFX_Font, which is defined in fxcrt,
and does not inherit from nor bear any resemblence to IFX_Font.
Review-Url: https://codereview.chromium.org/2036173003
|
|
When there are duplicate variable declarations, the inner names shadow the
outter ones. This is error prone and harder to read. Remove all the
instances found by /analyze.
BUG=chromium:613623, chromium:427616
Review-Url: https://codereview.chromium.org/2027273002
|
|
This CL replaces the last instance of CFX_DSPATemplate with std::binary_search.
Review-Url: https://codereview.chromium.org/2007443003
|
|
Rename addRef() method to Retain() to match Release().
This CL does not convert to CFX_RetainPtrs, which will happen
in a follow-on.
Review-Url: https://codereview.chromium.org/2005933002
|
|
Use unique_ptrs in several places in xfa_textlayout.h
Review-Url: https://codereview.chromium.org/2003843002
|
|
This CL changes the check to use std::binary_search instead of the custom
lookup method. The tag validation has been split out to a separate method
with unit tests added.
Review-Url: https://codereview.chromium.org/1996623002
|
|
No need to make a WideStringC here at all.
Review-Url: https://codereview.chromium.org/1984743003
|
|
BUG=
Review-Url: https://codereview.chromium.org/1979723003
|
|
Searching for the anti-pattern:
void Release() { delete this; }
We must be explicit on the ownership model.
Add unique_ptrs as a result.
Review-Url: https://codereview.chromium.org/1960673003
|
|
All Release() did was invoke delete. Add some "overrides"
while we're at it.
Review-Url: https://codereview.chromium.org/1951573002
|
|
Remove unused "dynamic" allocator (the scary one).
Use malloc/free wrapper allocator under #ifdef for CF/asan testing.
Rename IFX_MEMAllocator to IFX_MemoryAllocator (MEM in all caps
would imply that MEM was an acroynm, not an abbreviation).
Review-Url: https://codereview.chromium.org/1944093002
|
|
XFA edition.
Review-Url: https://codereview.chromium.org/1925363002
|
|
This CL removes the follwing in favour of their concrete class.
* IFDE_CSSDeclaration
* IFDE_CSSSelector
* IFDE_CSSSyntaxParser
* IFDE_CSSStyleSelector
Review-Url: https://codereview.chromium.org/1928763002
|
|
There are currently three ways to assert in the code (ASSERT, FXSYS_assert and
assert). This CL standardizes on ASSERT. The benefit of ASSERT is that it can
be overridden if the platform requies and we can pickup the Chromium version
if it has already been defined in the build.
This does change behaviour. Currently FXSYS_assert is always defined but ASSERT
is only defined in debug builds. So, the FXSYS_assert's would fire in Release
builds. That will no longer happen.
BUG=pdfium:219
Review-Url: https://codereview.chromium.org/1914303003
|
|
Too many calls were of the form fn(x.c_str(), x.GetLength())
which is an anti-pattern given the StringC classes which tie
these together.
There are a few places where explicit CFX_*StringCs are
constructed, but this can be avoided by changing the args
to these functions in the same manner.
Removed String_ from name of functions since it added
little value. Also removed default argument.
Review URL: https://codereview.chromium.org/1919563002
|
|
There is only one subsclass, use that instead. Remove the use of WideStringC
in the API.
BUG=pdfium:468
Review URL: https://codereview.chromium.org/1911843002
|
|
This CL removes IFDE_TextOut, IFDE_Path, IFDE_RenderContext, IFDE_RenderDevice,
and IFDE_VisualSetIterator in favour of the concrete classes.
BUG=pdfium:468
Review URL: https://codereview.chromium.org/1896893003
|
|
This is a result of looking for the anti-paterns /char\*\sm_/
and /m_.*=.*\.c_str/ which indicate that a class may be using
the contents of a string without extending the lifetime of
the underlying storage.
Along the way, change to uint8_t in fx_dib; this is unrelated but
avoids grep hits (it is binary, not chars anyways).
Also remove two string operators that make it easy to assign in
a manner that does not extend contents lifetime.
Review URL: https://codereview.chromium.org/1902953002
|
|
Use the more standard name "clear()" instead.
Review URL: https://codereview.chromium.org/1888103002
|
|
BUG=
Review URL: https://codereview.chromium.org/1882043004
|
|
This CL removes IFX_ArabicChar, IFX_RTFBreak, IFX_TxtBreak, IFX_WordBreak,
IFX_FormatString, and IFX_GSUBTable. References were updated to be the concrete
classes.
The CFX_GSUBTable was also removed as it is unused.
BUG=pdfium:468
Review URL: https://codereview.chromium.org/1882213002
|
|
This Cl removes the two interfaces and renames CFDE_SolidBrush to CFDE_Brush.
Uncalled methods are removed from both CFDE_Brush and CFDE_Pen and code
simplified to match.
BUG=pdfium:468
Review URL: https://codereview.chromium.org/1881803003
|
|
We only ever create a CFDE_SolidBrush, there is nothing which creates Texture,
Hatch or LinearGradient brushes. This Cl removes all the code that isn't
used for SolidBrush.
A followup Cl will rename SolidBrush to Brush and remove the Brush interface
in favour of the concrete class.
BUG=pdfium:468
Review URL: https://codereview.chromium.org/1877383002
|
|
This Cl removes the IFDE_CSSAccelerator header and replaces the usage with
the concrete class.
The interfaces and methods in the CSSComputedStyle class are cleanedup to remove
any unused methods.
BUG=pdfium:468
Review URL: https://codereview.chromium.org/1876253002
|
|
The naming is redundant given the base type, and will stand
in the way of consolidating Byte and Wide code.
BUG=
Review URL: https://codereview.chromium.org/1862123003
|
|
This CL moves the remaining files in xfa/include/fxfa to xfa/fxfa/include.
Review URL: https://codereview.chromium.org/1864973005
|
|
No functional change intended.
This difference in naming is standing in the way of consolidating
some of the string code between Wide and Byte strings. The Wide
code wants to call raw_str() in exactly the same spots that the
Byte code calls c_str(). This makes sense, because in both places we
get a character type back, and not a uint*_t type. If WideStringC
had a raw_str() method, it would have to return uint32_t or similar.
R=dsinclair@chromium.org
Review URL: https://codereview.chromium.org/1863593004
|
|
Companion to https://codereview.chromium.org/1853233002
BUG=
Review URL: https://codereview.chromium.org/1857073002
|
|
This CL updates CFX_ByteStringC to use the more common c_str
and raw_str instead of GetCStr and GetPtr.
Review URL: https://codereview.chromium.org/1857713003
|
|
Makes the code slightly cleaner.
Review URL: https://codereview.chromium.org/1846083002
|
|
This CL removes the IXFA_* interfaces which are:
- Implemented once.
- Not implemented by an fpdfsdk class.
This requires making a few classes visible to fpdfsdk so we can have the
correct instances available instead of the IXFA types.
Review URL: https://codereview.chromium.org/1846993002
|