summaryrefslogtreecommitdiff
path: root/xfa/fxfa
AgeCommit message (Collapse)Author
2016-11-28Use unique pointers in CXFA_FMParsenpm
Replaced CXFA_FMParse's returns to be unique pointers to prevent leaks. Review-Url: https://codereview.chromium.org/2530933002
2016-11-24Change TxtEdtEngine to return CFX_WideStringchromium/2935chromium/2934chromium/2933chromium/2932dan sinclair
This Cl updates the TxtEdtEngine and TxtEdtBuf to return CFX_WideStrings on a Get instead of taking an out param. The change is propagated out through the various Get methods that call into the edit engine. Change-Id: Iccf10a8ee06678ae3b59f3afd6e65308dacd16bd Reviewed-on: https://pdfium-review.googlesource.com/2070 Commit-Queue: ooo 11-24 -- 12-05 (dsinclair) <dsinclair@chromium.org> Reviewed-by: Nicolás Peña <npm@chromium.org>
2016-11-23Merge IFWL and CFWL classes.dsinclair
This CL merges the IFWL hierarchy into the CFWL hierachy. All CFWL proxy methods have been replaced by the IFWL implementations. Review-Url: https://codereview.chromium.org/2524173002
2016-11-23Rename IFWL classes which do not have CFWL equivalentsdsinclair
This CL moves the IFWL classes that do not have CFWL class buddies to have the CFWL name. This CL leaves the tree in a weird state of having CFWL be two hierarchies, one of which is intertwined with the IFWL hierarchy. This should be commited just before the CL to move the rest of IFWL to CFWL. Review-Url: https://codereview.chromium.org/2525083002
2016-11-23More unique_ptrs in CXFA_FMParse::ParseForeachExpression and avoid leaknpm
Commit a31098417852bdf13e693a6e0913e0706cf94098 accidentally caused a leak. Replaced pointers with unique_ptr to prevent this from happening. BUG=664891 Review-Url: https://codereview.chromium.org/2528543003
2016-11-22Rename IFWL_App to CFWL_Appdsinclair
This class is not an interface but a concrete implementation. Rename to match. Review-Url: https://codereview.chromium.org/2521303002
2016-11-22Rename common methods between ifwl and cfwl.dsinclair
This CL renames some methods in IFWL which have the same name as the CFWL methods but the CFWL methods are not proxy methods. Review-Url: https://codereview.chromium.org/2520413002
2016-11-21Split fwl/core class pt II.dsinclair
Split classes in FWL to be single class per file. In the case of data providers which added no new methods, removed and used the IFWL_Widget::DataProvider directly. Review-Url: https://codereview.chromium.org/2520063002
2016-11-21Clean up CFGAS_GEFontnpm
Removed some unused method, named files properly, cleaned up a bit. Review-Url: https://codereview.chromium.org/2524493002
2016-11-21Make CPDF_Stream() take unique_ptr's to its dictionary.tsepez
Review-Url: https://codereview.chromium.org/2520493002
2016-11-21Remove customized layout flag from FWLdsinclair
The Customized Layout flag in FWL is always false. Removed the flag and updated the code as needed. Review-Url: https://codereview.chromium.org/2520023002
2016-11-21Remove theme id from themeprovidersdsinclair
The theme ID is never set, so it's always 0. This CL removes the Set/Get methods and updates the code to use 0 in place of m_dwThemeId. Review-Url: https://codereview.chromium.org/2519113002
2016-11-21Fixup lint flags.Dan Sinclair
The -build/include setting was masking out build/include_what_you_use. This CL restores them, fixes any build errors, and adds NOLINT as needed. As well, the runtime/explicit and runtime/printf flags are aslo enabled and NOLINT'd. lint cleanups Change-Id: Ib013b3eb29c8d0e48cad74c5df9028684130719f Reviewed-on: https://pdfium-review.googlesource.com/2030 Reviewed-by: Tom Sepez <tsepez@chromium.org>
2016-11-21Split fwl/core class pt I.dsinclair
Split classes in FWL to be single class per file. In the case of data providers which added no new methods, removed and used the IFWL_DataProvider directly. Review-Url: https://codereview.chromium.org/2506253004
2016-11-18Make CPDF_Dictionary use unique pointers.chromium/2926tsepez
Some changes were required to match underlying ctors as invoked by the templated methods. Many release() calls go away, a few WrapUniques() are introduced to avoid going deeper into other code. Review-Url: https://codereview.chromium.org/2510223002
2016-11-18Add unit test for CXFA_FileRead.tsepez
The FileRead's return convention is being modified at https://codereview.chromium.org/2430743003/, so first provide a test of the old behaviour. Fix some issues with null dictionaries as provided by the CPDF_Stream default ctor along the way. Review-Url: https://codereview.chromium.org/2517513003
2016-11-18Clean up CFGAS_FontMgrchromium/2925npm
Review-Url: https://codereview.chromium.org/2512213002
2016-11-17Unify the three CFWL_EventType::SelectChange classes.dsinclair
This CL removes the ListBox SelectChange class as it is never processed. The other two have been unified into a single classs. Review-Url: https://codereview.chromium.org/2509283003
2016-11-17Move the IFWL_Edit Events out of ifwl_edit.hdsinclair
This Cl moves the edit events to actual class files and renames to drop the Edt from the names. Review-Url: https://codereview.chromium.org/2515463002
2016-11-16Split the common event classes out to files.dsinclair
This CL splits the common event classes out to individual files instead of being created by the macro. The other classes will be split out in subsequent CLs. Review-Url: https://codereview.chromium.org/2507713003
2016-11-16Move the message definitions to their own files.chromium/2923dsinclair
Currently the CFWL messages are created by a macro in the CFWL_Message header file. This Cl splits out the class to their own files and writes them directly instead of using the macro. Review-Url: https://codereview.chromium.org/2510823003
2016-11-16Continue formatting fwl/coredsinclair
Review-Url: https://codereview.chromium.org/2506083002
2016-11-15Cleaning methods and visibility in cfwl_* files.dsinclair
First pass at cleaning up visibility, return values and const'ness of cfwl_* class. Review-Url: https://codereview.chromium.org/2501743002
2016-11-11Add fpdfppo_embeddertest.cpp.tsepez
The lack of coverage of the fpdfppo APIs was noticed while trying to diagnose another issue. Adding basic calls to these APIs then kicked out an assert in XFA, where duplicate global CFXA_TimeZoneProviders were not expected. These are cheap to create except for the global C RTL tzset() call, so keep track of that and make these on demand. Review-Url: https://codereview.chromium.org/2488403004
2016-11-11Remove IFGAS_FontMgr and clean up (the renamed) CFGAS_FontMgr a little.npm
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
2016-11-10IFWL method and param cleanupdsinclair
Cleaning up virtual methods, unused methods, and visibility. Review-Url: https://codereview.chromium.org/2491103002
2016-11-09Rename IFWL_ListItem to CFWL_ListItemdsinclair
This CL removes the empty IFWL_ListItem class and uses CFWL_ListItem in its place. As well, the CFWL_ComboListItem is removed and replaced with CFWL_ListItem. These were almost duplicate classes and the one missing field added to CFWL_ListItem. Review-Url: https://codereview.chromium.org/2487943003
2016-11-02Remove FX_BOOL from xfa.tsepez
Review-Url: https://codereview.chromium.org/2467203003
2016-11-02Merge delegates into IFWL_* classes.dsinclair
This Cl removes ownership of the delgates from IFWL_Widget and puts it in the hand of the creating classes. In doing so, merge the delegates back into the IFWL_* classes to simplify logic. Review-Url: https://codereview.chromium.org/2467993003
2016-11-02Rename CPDFXFA_Document to CPDFXFA_Contextdsinclair
The CPDFXFA_Document class isn't a document, it contains documents. Renamed to make the purpose a bit clearer. Review-Url: https://codereview.chromium.org/2469813004
2016-11-01Reland: Make the CPDFXFA_App non-globalchromium/2907dsinclair
This reverts commit a282c7380f3964de41ea93c9980b12c4513d3473. This CL changes CPDFXFA_App from a global object to a child of the CPDFXFA_Document objects. BUG=pdfium:623 Review-Url: https://codereview.chromium.org/2421603002
2016-11-01Rename IFWL_Widget::SetDelegatedsinclair
The ::SetDelegate method was misleading. The primary use was SetDelegate(nullptr) which returned the current delegate and didn't actually set anything. When a value was passed it would set the |m_pCurDelegate| not the |m_pDelegate|. This Cl breaks ::SetDelegate into ::GetCurrentDelegate and ::SetCurrentDelegate to make it clear what is happening and that this does not effect the |m_pDelegate| variable. Review-Url: https://codereview.chromium.org/2459423003
2016-10-31Remove unused parameter to CFWL_* Initialize methods.dsinclair
This parameter is always nullptr, removed. Review-Url: https://codereview.chromium.org/2463073002
2016-10-31Remove FWL globals.dsinclair
This CL removes the FWL_GetApp, FWL_SetApp and FWL_GetWidgetAdapter methods. In the process it changes the various Initialize methods to return void. Review-Url: https://codereview.chromium.org/2436103002
2016-10-27Fix more FX_BOOL / int noise in fxfa/parser.tsepez
Review-Url: https://codereview.chromium.org/2460723002
2016-10-27Fix some FX_BOOL / int noise in fxfatsepez
Review-Url: https://codereview.chromium.org/2457673003
2016-10-27Fix some FX_BOOL / int noise in XFA barcodestsepez
Review-Url: https://codereview.chromium.org/2447163007
2016-10-26Fix some FX_BOOL / int noise in fxcrt.chromium/2902tsepez
Review-Url: https://codereview.chromium.org/2450183003
2016-10-25Fix some return FALSE in functions that return pointerschromium/2901tsepez
This previously compiled because FALSE is #defined to 0, and 0 is a perfectly fine value for a pointer. Review-Url: https://codereview.chromium.org/2448943003
2016-10-24Rename IFX_ stream nameschromium/2900tsepez
It's been troubling for some time that an IFX_FileStream might actually be an in-memory buffer with no backing file. Review-Url: https://codereview.chromium.org/2443723002
2016-10-20Move fwl/lightwidget to fwl/coredsinclair
This CL moves the code from fwl/lightwidget into fwl/core. In anticipation of merging the two hierarchies. Review-Url: https://chromiumcodereview.appspot.com/2430923006
2016-10-20Cleanup unused methods and return values in FWL code.dsinclair
This CL does an initial pass to remove unused methods and return values in the FWL code base. Review-Url: https://chromiumcodereview.appspot.com/2435603003
2016-10-20Remove IFWL_*::Create methods, use newdsinclair
The create methods just proxied to the constructor. Remove Creates and call new directly where needed. Review-Url: https://chromiumcodereview.appspot.com/2433133002
2016-10-20Merge the CFWL_*Imp classes into the IFWL_* classes.dsinclair
This Cl merges the implementation classes up into the IFWL classes as the intermediate classes were just acting as proxies. Review-Url: https://chromiumcodereview.appspot.com/2432423002
2016-10-19Remove FWL Create methods, use new insteaddsinclair
Review-Url: https://chromiumcodereview.appspot.com/2422303003
2016-10-19Remove FWL theme subclassesdsinclair
The CFWL_CheckBoxTP and CFWL_EditTP are subclassed with the CXFA_FWLEditTP and CXFA_FWLCheckBoxTP. The super classes are never instantiated or used, so fold the subclasses back to the parent and use them directly. Review-Url: https://chromiumcodereview.appspot.com/2418413005
2016-10-18Merge IFWL_App and FWL_AppImp togetherdsinclair
The IFWL_App class just acts as a proxy to the FWL_AppImp code. This Cl removes FWL_AppImp and merges the code back up to IFWL_App, simplifying the object hierarchy. Review-Url: https://codereview.chromium.org/2430563003
2016-10-17Cleanup unneeded FWL theme code.dsinclair
This CL removes FWL theme code methods which do not have implementations. Review-Url: https://codereview.chromium.org/2422373002
2016-10-17Revert "Make CPDF_Object containers hold objects via unique pointers."tsepez
This reverts commit 1d023881cd53485303c0fcc0b5878e700dc470fd. Reason for revert -- fuzzers hit issues. TBR=thestig@chromium.org Review-Url: https://codereview.chromium.org/2425783002
2016-10-13Make CPDF_Object containers hold objects via unique pointers.tsepez
This tweaks the implementation while leaving the API the same. The API change is more disruptive, so break this part off first. Review-Url: https://codereview.chromium.org/2385293002