summaryrefslogtreecommitdiffstats
path: root/printing/printed_document.cc
Commit message (Collapse)AuthorAgeFilesLines
* Make members of Singleton<T> private and only visible to the singleton type. ↵satish@chromium.org2010-12-141-7/+8
| | | | | | | | | | | | | | | This enforces that the Singleton<T> pattern can only be used within classes which want singleton-ness. As part of this CL I have also fixed up files which got missed in my previous CLs to use a GetInstance() method and use Singleton<T> from the source file. There are a small number of places where I have also switched to LazyInstance as that was more appropriate for types used in a single source file. BUG=65298 TEST=all existing tests should continue to pass. Review URL: http://codereview.chromium.org/5682008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69107 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 68932 - Make members of Singleton<T> private and only visible to the ↵satish@chromium.org2010-12-111-8/+7
| | | | | | | | | | | | | | | | | | singleton type. This enforces that the Singleton<T> pattern can only be used within classes which want singleton-ness. As part of this CL I have also fixed up files which got missed in my previous CLs to use a GetInstance() method and use Singleton<T> from the source file. There are a small number of places where I have also switched to LazyInstance as that was more appropriate for types used in a single source file. BUG=65298 TEST=all existing tests should continue to pass. Review URL: http://codereview.chromium.org/5682008 TBR=satish@chromium.org Review URL: http://codereview.chromium.org/5721005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68936 0039d316-1c4b-4281-b951-d872f2087c98
* Make members of Singleton<T> private and only visible to the singleton type. ↵satish@chromium.org2010-12-111-7/+8
| | | | | | | | | | | | | | | This enforces that the Singleton<T> pattern can only be used within classes which want singleton-ness. As part of this CL I have also fixed up files which got missed in my previous CLs to use a GetInstance() method and use Singleton<T> from the source file. There are a small number of places where I have also switched to LazyInstance as that was more appropriate for types used in a single source file. BUG=65298 TEST=all existing tests should continue to pass. Review URL: http://codereview.chromium.org/5682008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68932 0039d316-1c4b-4281-b951-d872f2087c98
* Convert ElideUrl to return a string16 instead of a wstring.tony@chromium.org2010-10-271-1/+2
| | | | | | | | BUG=23581 Review URL: http://codereview.chromium.org/4115003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64156 0039d316-1c4b-4281-b951-d872f2087c98
* Convert gfx::ElideText from using wstrings to string16.tony@chromium.org2010-10-211-1/+2
| | | | | | | | BUG=23581 Review URL: http://codereview.chromium.org/3885003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63433 0039d316-1c4b-4281-b951-d872f2087c98
* Printing: Refactor a few helper methods implemented per-platform to clean upjhawkins@chromium.org2010-10-071-40/+2
| | | | | | | | | | | ifdef mess in PrintedDocument implementation. BUG=none TEST=none Review URL: http://codereview.chromium.org/3564016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61865 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Move ctors/dtors into implementation files. Adds ctors/dtors to ↵erg@google.com2010-09-301-0/+6
| | | | | | | | | | | | | | non-POD structs. Cuts ~2MB off our .a files (Debug, Linux). Also added the "virtual" keyword on a whole bunch of virtual dtors that were missing it. BUG=none TEST=compiles Review URL: http://codereview.chromium.org/3522004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61100 0039d316-1c4b-4281-b951-d872f2087c98
* Printing: Convert several wstrings to string16.jhawkins@chromium.org2010-09-131-23/+18
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/3292019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59262 0039d316-1c4b-4281-b951-d872f2087c98
* Rework gfx::Font by moving platform-specific code into inner classes.ben@chromium.org2010-08-131-1/+1
| | | | | | | | | | | | | gfx::Font is a platform-neutral API shim that exists as a wrapper object to allow for the creation and lifetime of gfx::Font objects to remain consistent with past usage. gfx::PlatformFont is an interface implemented by the platform-specific inner classes (gfx::PlatformFontWin,Mac,Gtk). BUG=none TEST=existing unittests Review URL: http://codereview.chromium.org/3083022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56040 0039d316-1c4b-4281-b951-d872f2087c98
* Implement limited paged media support for win.hamaji@chromium.org2010-07-021-3/+5
| | | | | | | | | BUG=47277 TEST=none Review URL: http://codereview.chromium.org/2859040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51501 0039d316-1c4b-4281-b951-d872f2087c98
* Implement limited paged media support for mac.hamaji@chromium.org2010-07-011-3/+6
| | | | | | | | | BUG=47277 TEST=none Review URL: http://codereview.chromium.org/2876020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51347 0039d316-1c4b-4281-b951-d872f2087c98
* Changed printer page setup units to be in device co-ordinates (this is ↵sanjeevr@chromium.org2010-05-291-3/+6
| | | | | | | | | | | pixels on Windows and points on the Mac). Also fixed a bug with Mac dpi calculation. BUG=None. TEST=Test printing on Windows and Mac. Review URL: http://codereview.chromium.org/2351003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48558 0039d316-1c4b-4281-b951-d872f2087c98
* Elide the EV bubble when it's extremely long. This limits it to half the ↵pkasting@chromium.org2010-05-201-2/+2
| | | | | | | | | | location bar width, unless eliding to that would result in a width of less than 150 px. BUG=42856 TEST=Visit https://www.barbican.org.uk/eticketing/index.asp and make the window smaller. The EV bubble should shrink, eliding in middle, until it hits a minimum size. Review URL: http://codereview.chromium.org/2084012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47819 0039d316-1c4b-4281-b951-d872f2087c98
* Move app/gfx/canvas and app/gfx/font to gfx/.ben@chromium.org2010-03-231-1/+1
| | | | | | | | | | TBR=darin BUG=none TEST=none Review URL: http://codereview.chromium.org/1132006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42312 0039d316-1c4b-4281-b951-d872f2087c98
* Move text_elider from app/gfx to app/ben@chromium.org2010-03-191-1/+1
| | | | | | | | | TBR=darin BUG=none TEST=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42090 0039d316-1c4b-4281-b951-d872f2087c98
* Changes made to the printing logic to allow plugins to participate in the ↵sanjeevr@chromium.org2010-03-121-0/+3
| | | | | | | | | | | | | browser's print workflow. These changes mainly involve allowing the plugin to specify whether it wants the browser to use overlays and also changes to the EMF code on Windows to decompress JPEGs/PNGs in the metafile. The related webkit change is https://bugs.webkit.org/show_bug.cgi?id=35550 BUG=None TEST=Test printing with new Pepper plugins that support custom printing. Review URL: http://codereview.chromium.org/745001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41400 0039d316-1c4b-4281-b951-d872f2087c98
* printing: string_util.h -> utf_string_conversions.h fix.jhawkins@chromium.org2010-03-061-0/+4
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/669242 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40849 0039d316-1c4b-4281-b951-d872f2087c98
* Deprecate file_util::AppendToPath() on non-Windows.evan@chromium.org2010-02-261-3/+3
| | | | | | | | | | | | We still have ~150 callers to AppendToPath in our code, but most of them are in the installer and I'm reluctant to fiddle with that code without having an easy way to test it. BUG=24672 Review URL: http://codereview.chromium.org/654013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40120 0039d316-1c4b-4281-b951-d872f2087c98
* Make SharedMemory use uint32 instead of size_t. This removes the remaining ↵jam@chromium.org2010-02-161-2/+2
| | | | | | | | size_t's from the IPC code. Review URL: http://codereview.chromium.org/581001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39164 0039d316-1c4b-4281-b951-d872f2087c98
* Do some cleanup of file path name handling.brettw@chromium.org2009-10-221-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | This started trying to cleanup DownloadManager::GenerateFilename which asserts if your system locale isn't UTF-8 (I ran into this when mine got messed up). The solution is to have GetSuggestedFilename return a FilePath rather than calling FromWStringHack. The rest of the patch is a result of trying to write GetSuggestedFilename in a reasonable way. I changed ReplaceIllegalCharacters to work on a FilePath::StringType. Some places in the code calling these functions got cleaner, some got messier. I think overall the ones that got messier are the ones doing sketchy things with paths and the ones that got cleaner are the ones doing things more properly. The only code here that gets called a nontrivial number of times is the weburlloader, and I think the new code does about the same number of string conversions overall (though on certain platforms the number will be higher or lower). BUG=none TEST=none Review URL: http://codereview.chromium.org/271056 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29832 0039d316-1c4b-4281-b951-d872f2087c98
* Implement the basic OS-level printing mechanics on Macstuartmorgan@chromium.org2009-10-131-124/+5
| | | | | | | | | | | | | Part two of printing implementation on the Mac. This adds a Mac implementation of PrintSettings to get page setup and printer information, basic PDF->context rendering in PrintedDocument, and most of PrintingContext to allow getting print settings (both default and interactive). Reworks the message flow a bit when asking for print settings on the Mac, since it can only be done from the UI thread. Uses a modal dialog for now, but will later be modified further to allow for a sheet. BUG=13158 TEST=None; no user-visible effect yet. Review URL: http://codereview.chromium.org/268036 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28857 0039d316-1c4b-4281-b951-d872f2087c98
* Move more ICU-dependent stuff from base into base/i18n. Some test stuff alsobrettw@chromium.org2009-10-091-1/+1
| | | | | | | | | | | | depended on this, so to make the DEPS work out, I made a new base/test directory where I moved the testing-related files into a new directory base/test. TEST=none BUG=none Review URL: http://codereview.chromium.org/266038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28569 0039d316-1c4b-4281-b951-d872f2087c98
* Separate out some more ICU from base and into base/i18n.brettw@chromium.org2009-10-081-1/+2
| | | | | | | | | | | | | | | | | | | | This moves string_util_icu. I moved the number formatting function into base/i18n/number_formatting and just removed the other function in string_util_icu which was TrimWhitespaceUTF8. It is only used in a few places and isn't actually helpful (and the fact that it round-trips through UTF-16 is better for the caller to see). This takes out the sorting from the FileEnumerator. The comment says the sorting is not guaranteed. I moved it into file_util_icu as a standalone function for callers of FileEnumerator to call manually if they need sorted results. I modified the directory lister to use this sorting instead, and filed a bug on doing more optimal JS-based sorting. TEST=none BUG=none Review URL: http://codereview.chromium.org/267001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28405 0039d316-1c4b-4281-b951-d872f2087c98
* Fix printing project on linux.maruel@chromium.org2009-09-141-7/+25
| | | | | | | | | | | | Enable compilation of every files and fix tests. TEST=unit tests BUG=9847 Review URL: http://codereview.chromium.org/193086 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26103 0039d316-1c4b-4281-b951-d872f2087c98
* Fix print margins. This fixes multiple issues that caused incorrect offsets ↵sverrir@chromium.org2009-07-131-14/+62
| | | | | | | | | | | | | | | on printers that had a non-printable area (like most physical printers do). Two basic problems fixed. Firstly the margins where incorrectly calculated and secondly there was missing an offset int the rendering code (PHYSICALOFFSETX/Y is 0,0 when printing). To track this down I added code to print out all relevant margins for visual inspection (turned off by default). Chrome now prints using correctly calculated margins and is perfectly aligned on the page! BUG=http://crbug.com/947, http://crbug.com/1566 TEST=Printing on various printers. Review URL: http://codereview.chromium.org/155382 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20482 0039d316-1c4b-4281-b951-d872f2087c98
* Move printing related stuff to the root printing project from the browser ↵sverrir@google.com2009-07-071-0/+366
project. This simplifies further refactoring and eases understanding of the printing part of Chrome. Also renamed win_printing_context to printing_context_win (correct naming convention) and added stub implementations for _linux and mac. Now all but one file is compiling on all platforms. TEST=none (no functional change). BUG=none Review URL: http://codereview.chromium.org/149212 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20086 0039d316-1c4b-4281-b951-d872f2087c98