Age | Commit message (Collapse) | Author |
|
When some layout items are released, applications should
be notified. It usually happens when there are layout
changes.
BUG=pdfium:303
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1502133002 .
|
|
In some cases, we can use the safe FX_Alloc2D, in others
there's an extra multiplication by the size of the type.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1519233002 .
|
|
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1505353009 .
|
|
BUG=none
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1512283002 .
|
|
BUG=pdfium:261
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1500313002 .
|
|
BUG=pdfium:324
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1507683010 .
|
|
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1512423003 .
|
|
Review URL: https://codereview.chromium.org/1513363002 .
(cherry picked from commit f32c969bce6743fca1e7ff796b54a1692d26d7f0)
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1519693002 .
|
|
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1508883003 .
|
|
BUG=pdfium:306
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1506423002 .
|
|
The proper way to "wide-stringify" a parameter is by L###arg,
not L"## arg ##", which does no replacement. Also remove dubious
CloneToEvent() method, and make the proper event in the one place
it is called.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1510493005 .
|
|
Re-introduce create methods that actually create the
corresponding impl so we don't have ifaces without impls.
Remove per-subclass Initialize() methods.
Remove unused ctors.
BUG=pdfium:282
R=jun_fang@foxitsoftware.com, thestig@chromium.org
Review URL: https://codereview.chromium.org/1453473002 .
|
|
This reverts commit 5e4f290e939ded90a518ff8eab1db59930655e11.
BUG=
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1502063005 .
|
|
BUG=pdfium:282
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1509203002 .
|
|
This reverts commit 6fa20c60c6ed551af55bfc879668eaac5c237805.
Reason for revert: broke tests
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1507893002 .
|
|
This matches the 3-level parallel hierarchy convention
used elsewhere in FWL. Remove dead code along the way.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1503503003 .
|
|
Uncovered bad casts in a couple of places, replaced with
correct objects.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1503583003 .
|
|
In the process, found two CFWL_ classes that didn't inherit
from the virtual inteface they were allegedly supporting.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1499853003 .
|
|
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1500023003 .
|
|
Remove some dead code.
Add missing consts.
Convert some integer expressions to bools for return.
Remove expression (with bad cast) that can't happen.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1496323004 .
|
|
Remove dead code along the way.
BUG=pdfium:300
R=jun_fang@foxitsoftware.com, thestig@chromium.org
Review URL: https://codereview.chromium.org/1490093006 .
|
|
Add () to suppress gcc-style error about assignment in conditionals.
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1491403002 .
|
|
These hide early returns from the casual reader, hide
the inversion of the condition under test from the reader,
prevent the folding of conditions into a single statement,
and take up more characters than the if() itself.
R=ochang@chromium.org
Review URL: https://codereview.chromium.org/1494683002 .
|
|
Remove duplicate code from 10 places.
R=ochang@chromium.org
Review URL: https://codereview.chromium.org/1486283002 .
|
|
It's part of the CFWL_*Imp hierarchy, and hence should be
named CFWL_CustomImp. CFWL_Custom would belong to a differnt
hierarchy according to naming conventions.
R=ochang@chromium.org
Review URL: https://codereview.chromium.org/1491723002 .
|
|
BUG=pdfium:292
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1486573002 .
|
|
BUG=pdfium:281
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1481503002 .
|
|
This CL includes the following changes:
1. Add return value for InitFont(). It can indicate a failure
in the initialization of non-standard fonts.
2. Change NULL to nullptr.
3. Rewrite several pointer checking.
BUG=pdfium:279, pdfium:286
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1465423002 .
|
|
BUG=pdfium:289
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1472383003 .
|
|
Increase ref number of pStyle when it's being used. In this way,
it won't be released when it's being used.
BUG=pdfium:267
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1468123003 .
|
|
BUG=pdfium:276
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1438333005 .
|
|
IFXA_LayoutPage now a pure virtual interface, with its
code moving to CXFA_ContainerLayoutItem's implementaton
of it.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1466103002 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1463703002 .
|
|
Instead of casting to the unrelated IFWL_WidgetDelegate class
and hoping that its vtables line up, make CFWL_WidgetImpDelegate
inherit from it. We can then remove a lot of casting, even during
delete given that it has a virtual dtor.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1458173002 .
|
|
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1460293002 .
|
|
Original Review URL: https://codereview.chromium.org/1459243002 .
(cherry picked from commit 6fc00fafcbac1fd5edd767fe2d4a8e4a9ef52806)
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1461703008 .
|
|
Remove default argument in remaining variants.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1453373006 .
|
|
Remove pointless subclass dtors since CFWL_TargetImpl
has a virtual dtor, and can be deleted by the base
class.
Kept pointless subclass ctors for the moment to hopefully
combine with Initialize someday, though they need not do
anything since the base class ctor nulls out m_pImpl.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1460883002 .
|
|
IFWL_TargetData was a sibling class to which we illegally cast
other IFWL_ classes just to get access to a member, to which
they already had access in many cases.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1452403002 .
|
|
Follow-on from https://codereview.chromium.org/1446393002/
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1457663002 .
|
|
Rename IFWL_Target::m_pData to m_pImpl since it points
to CFWL_*Imp classes.
Rename CFWL_Widget:m_pImp to m_pIface since it points
to IFWL_* interface classes. Here, the concrete classes
have pointers to the corresponding interfaces, rather
than inheriting from them, and this is likely due to
someone not understanding virtual inheritance (since this
code has the diamond problem in spades).
Rename CFWL_Target to CWFL_TargetImp since it is the root
of the CFWL_*Imp hierarchy, and is pointed to by the
m_pImpl slot.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1446393002 .
|
|
Also protect the LayoutItem constructor, as !m_bIsContent
implies the object can be cast to the container class, so
ensure we don't make any of parent class.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1441243005 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1443563002 .
|
|
There is no longer a LayoutItem/LayoutItemImpl distinction.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1441423002 .
|
|
C-style casting masked a fairly serious botch, where an
CFWL_ type would get cast to an IFWL_ type, and later we'd
invoke virtual methods against the IFWL_ type. Without the
proper inheritance, there's no reason to believe that the
vtables for each of these would line up with each other.
Fixing the inheritence allows us to remove the c-style casts.
I'm guessing these were added to make this compile without
having to understand the true nature of the flaw.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1439093003 .
|
|
Fixes illegal casting between unrelated types, and removes
about 30 explicit casts that are no longer required.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1441183002 .
|
|
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1439083002 .
|
|
Added FIXMEs to the spots where danger lurks.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1438553003 .
|
|
There's a re-interpretation followed by a pointer-adjusting static cast
required here, not just a blatant re-interpretation.
BUG=pdfium:271
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1431313005 .
|
|
Do some IWYU to fix build errors due to files that have no #includes but
just happened to work previously because the #includes were in the right
order.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1407423004 .
(cherry picked from commit 9e7cd8ffb81c564e1102f6c6459ec0942a0b11ea)
Review URL: https://codereview.chromium.org/1425163004 .
|