summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-01-24[Merge M56] Add ObservedPtrs to PWL_CREATEPARAMchromium/2924Dan Sinclair
It's possible for both the provider and attached widget to be destroyed before the PWL_CREATEPARAM objects which point to them. This causes issues when those widgets access their attached widget or provider. This CL wraps the pAttachedWidget and pProvider into ObservedPtrs so we will know if the underlying pointer has gone away. In order to merge I also had to add observed ptr copy and assign methods. BUG=chromium:681351 Change-Id: Ic297753b5d020c5d9401cb3ff4d541b2498346e4 Reviewed-on: https://pdfium-review.googlesource.com/2351 Reviewed-by: Tom Sepez <tsepez@chromium.org>
2017-01-10[Merge to M56] Verify precision length before converting to string.Dan Sinclair
This CL updates the CalculateString method to make sure the number of digits of precision is valid before doing the stringstream conversion. BUG=chromium:673336 TBR=tsepez@chromium.org Review-Url: https://codereview.chromium.org/2572543004 (cherry picked from commit 992ecf7c189e5cabf43e5ad862511cf63d030966) Review-Url: https://codereview.chromium.org/2623013002 .
2016-11-28M56: Fix CPDFImage::IsInline().Lei Zhang
Commit 137a344a changed its behavior. BUG=chromium:667012 Review-Url: https://codereview.chromium.org/2513273003 (cherry picked from commit 7daa6fb286d1b5d65f99521f3314083e86d93e3f) Review URL: https://codereview.chromium.org/2532383002 .
2016-11-17Move CPDF_DocRenderData from render_intnpm
First CL in an attempt to reduce the class cluttering in fpdf_render_text, fpdf_render_image, and fpdf_render. Review-Url: https://codereview.chromium.org/2507023006
2016-11-17Create CFWL_EvtEditChangeddsinclair
This CL creates a generic event for CFWL_EventType::EditChanged and uses it in the ComboBox and DateTimePicker. None of the params from the custom events were used so they have been removed. Review-Url: https://codereview.chromium.org/2511813002
2016-11-17Remove the CFWL_EventType::DrawItemdsinclair
The ListBox DrawItems event is caught by the ComboBox which converts the event into a ComboBox DrawItems event which is never processed. Removed both. Review-Url: https://codereview.chromium.org/2510123002
2016-11-17Convert CFWL_EvtSpbClick to CFWL_EvtClickdsinclair
The m_bUp flag of CFWL_EvtSpbClick is never used after being set. Remove the flag and replace CFWL_EvtSpbClick with CFWL_EvtClick. Review-Url: https://codereview.chromium.org/2511803002
2016-11-17Convert single use EventTypes to class files.dsinclair
This moves the remaining EventType class definitions to there own files where the EventType only has a single implementation. Review-Url: https://codereview.chromium.org/2508203002
2016-11-17Remove events which are not processeddsinclair
The DropDown, HoverChanged and CloseUp events are created and thrown but are not caught for processing anywhere. Removed. Review-Url: https://codereview.chromium.org/2509733006
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-17Remove SelfAdaption codedsinclair
Nothing listens for CFWL_Event::PreSelfAdaption events and nothing sets the HSelfAdaption or VSelfAdaption flags into IFWL_Edit. Removing code. Review-Url: https://codereview.chromium.org/2514443002
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-16Remove ref counting from CFWL_Eventdsinclair
CFWL_Event has no Retain method, just a Release method. So, it's essentially just a delete call whenever used. This CL removes the Release method and turns the one usage into a unique_ptr. Review-Url: https://codereview.chromium.org/2509863002
2016-11-16Make CPDF_Object subclass constructors intern stringstsepez
Make CDPF_Arrays intern the object they create. Allow passing nullptr as a CFX_WeakPtr shortcut as well. Review-Url: https://codereview.chromium.org/2509123002
2016-11-16Move ByteStringPool from document to indirect object holder.tsepez
Since the indirect object holder is now in the object creation business, this will allow it to intern strings in a subsequent CL. Review-Url: https://codereview.chromium.org/2509773003
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/2510793003
2016-11-16Make CPDF_Array take unique_ptrstsepez
BUG= Review-Url: https://codereview.chromium.org/2498223005
2016-11-16Continue formatting fwl/coredsinclair
Review-Url: https://codereview.chromium.org/2506083002
2016-11-16Create a subset of skia support for paths onlycaryclark
This is a continuation of https://codereview.chromium.org/2346483006/ This removes the need for agg, without providing full Skia support. It doesn't work yet, but it does compile and run for simple PDFs. R=dsinclair@google.com Committed: https://pdfium.googlesource.com/pdfium/+/5d223298b26c9b2b6284cba9a51521d3873b6e58 Review-Url: https://codereview.chromium.org/2491693002
2016-11-16Continue fwl/core nit cleanup.dsinclair
Review-Url: https://codereview.chromium.org/2501033005
2016-11-16Continue nit cleanup in fwl/coredsinclair
Review-Url: https://codereview.chromium.org/2506493003
2016-11-16Cleaning up nits in fwl/core files.chromium/2922dsinclair
This Cl cleans up the nits in the first set of cfwl_* files. The unused Event and Message classes are removed. Review-Url: https://codereview.chromium.org/2505703003
2016-11-15Roll build DEPS into PDFiumnpm
Rolling ToT build because we're currently sitting at a revision that does not work in Mac. Review-Url: https://codereview.chromium.org/2510433002
2016-11-15Replace fcvt with std::stringstream in AFNumber_Formatnpm
On Mac, fcvt is returning an empty string when ndigit is 0. This causes the field to be replaced with "0" when applying AFNumber_Format. BUG=chromium:113910 Review-Url: https://codereview.chromium.org/2500963006
2016-11-15Cleanup cfwl_* files.dsinclair
This Cl cleans up the visibility, method usage and return values in the remaining CFWL files. Review-Url: https://codereview.chromium.org/2498163002
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-15Make AddIndirectObject() take a unique_ptr.tsepez
Add convenience routines to create and add object in one step. Review-Url: https://codereview.chromium.org/2489283003
2016-11-15Revert of Create a subset of skia support for paths only (patchset #10 ↵dsinclair
id:180001 of https://codereview.chromium.org/2491693002/ ) Reason for revert: Breaking the chrome roll. https://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_compile_dbg_ng/builds/306015/steps/generate_build_files%20%28with%20patch%29/logs/stdio Original issue's description: > Create a subset of skia support for paths only > > This is a continuation of https://codereview.chromium.org/2346483006/ > > This removes the need for agg, without providing > full Skia support. > > It doesn't work yet, but it does compile and run > for simple PDFs. > > R=dsinclair@google.com > > Committed: https://pdfium.googlesource.com/pdfium/+/5d223298b26c9b2b6284cba9a51521d3873b6e58 TBR=dsinclair@google.com,caryclark@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review-Url: https://codereview.chromium.org/2503883003
2016-11-15Create a subset of skia support for paths onlycaryclark
This is a continuation of https://codereview.chromium.org/2346483006/ This removes the need for agg, without providing full Skia support. It doesn't work yet, but it does compile and run for simple PDFs. R=dsinclair@google.com Review-Url: https://codereview.chromium.org/2491693002
2016-11-14Cleanup fwl_* classes and cfx_* classes in fwl.dsinclair
This CL cleans up the classes in the fwl_* and cfx_* files in fwl/core. Review-Url: https://codereview.chromium.org/2503513002
2016-11-14Make CPDF_PageContentGenerator methods take object numberstsepez
This patch fixes a possibility that an owned CPDF_Stream is handed to the indirect object holder inside RealizeResource(). Its arguments are changed to take an object number, as is done elsewhere in the code, to suggest that only indirect objects are acceptable. BUG=660756 Review-Url: https://codereview.chromium.org/2489423002
2016-11-14Fix nits in CPDF_PageOrganizer.thestig
Review-Url: https://codereview.chromium.org/2493283003
2016-11-14Fix some nits in pdfium_testnpm
Fixed a couple of nits: - Renaming variables with correct format. - Add comments regarding the fact that pages are 0-based. Review-Url: https://codereview.chromium.org/2499143003
2016-11-14Invalidate a slightly larger rect when updating popup annotations.thestig
It looks like sometimes there are rounding errors in the display pipeline when displaying / hiding popup annotations. Compensate by rouding up the damaged rect slightly. BUG=chromium:662804 Review-Url: https://codereview.chromium.org/2492733002
2016-11-14Properly release caches in CPDF_DocRenderDatanpm
Currently, only RemoveRef() is being called when releasing. The problem is that when the object is no longer being used, the map is not updated accordingly. In the pdf in the bug below, the pointer of a font used in the second page coincides with the pointer of a font in the first page (that was released). So the cached values for the font in the first page are used, resulting in incorrect rendering. BUG=pdfium:629 Review-Url: https://codereview.chromium.org/2501053002
2016-11-14Add --pages option in pdfium_test so it renders only some of the pages.chromium/2920npm
The --pages option is set up to be 0-indexed. --pages=<number> will render the specific page. --pages=<number>-<number> will render the range of pages given. Review-Url: https://codereview.chromium.org/2495333002
2016-11-14Cleanup remaining IFWL files for visiblity and usage.dsinclair
This CL cleans up the remaining ifwl_* files to fixup visibility, remove unused methods and remove unused FWL_Error return codes. Review-Url: https://codereview.chromium.org/2502653002
2016-11-11IFWL cleanup in the Combo classeschromium/2919chromium/2918dsinclair
Cleanup visibility and unused methods in the IFWL combo code. Review-Url: https://codereview.chromium.org/2494743002
2016-11-11Fix unique ptrs in fpdfppo.cpptsepez
There's a path out that deletes a pointer whose ownership was passed off earlier. This will get simpler once more APIs take unique_ptr. BUG=664284 Review-Url: https://codereview.chromium.org/2495003006
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-11Continue IFWL widget cleanup.dsinclair
Remove usunsed methods and FWL_Error returns. Review-Url: https://codereview.chromium.org/2488963005
2016-11-11Relax colorspace checks in CPDF_DIBSource::CreateDecoder().chromium/2917thestig
Previously the log just made sure the colorspace and the image have exact matches for the number of colorspace components. Now, for some colorspace types, check the type and make sure the number of components meets or exceeds what is required by the spec. Also do some refactoring. BUG=chromium:650230 Review-Url: https://codereview.chromium.org/2486123002
2016-11-11Fix sevg above CPDF_PageContentGenerator::ProcessImage()tsepez
Adds a test to process an image for which a stream hasn't been set. BUG=660756 Review-Url: https://codereview.chromium.org/2494683007
2016-11-10Remove IFWL methods proxied from CFWL classeschromium/2916dsinclair
This CL removes a few methods from IFWL that are around just to proxy from CFWL methods which are, in turn, never called. Review-Url: https://codereview.chromium.org/2486333004
2016-11-10IFWL method and param cleanupdsinclair
Cleaning up virtual methods, unused methods, and visibility. Review-Url: https://codereview.chromium.org/2491103002
2016-11-10Roll V8 to 1fe5910c.thestig
Also roll trace_event to 6232c13e to match. Just a routine roll. TBR=jochen@chromium.org Review-Url: https://codereview.chromium.org/2489413002
2016-11-10Cleanup methds in IFWL_MonthCalendardsinclair
This CL cleans up the methods and parameters in IFWL_MonthCalendar. Review-Url: https://codereview.chromium.org/2493583002
2016-11-10Fold IFWL_DateTimeCalendar into IFWL_MonthCalendardsinclair
The IFWL_MonthCalendar was never instantiated and had a single sub-class. This CL folds the subclass into IFWL_MonthCalendar and uses MonthCalendar directly. Review-Url: https://codereview.chromium.org/2491443003