views, et.al.) for Print Preview and then enables them to be restored.
It uses a pref and/or checks all the documents to see if any have an "embed" or
a "plugin". Temporarily it checks for framesets and turns on caching also.
I also factored some code in the Init routine so it could be callled for either
creating the new presention or initializing an existing one.
Also, added some safety check code in PrintPage.
Then for the object frame, for PP it doesn't do a paint - this is a temporary fix.
Bug 122048 r=peterl sr=attinasi a=asa
of it in now before the API freeze.
It adds several new attrs to the nsIWebBrowserPrint API and implments them in
DocumentViewer.
It also adds a new platform specific interface for PrintSettings that will be
used when the "pluggable" dialog work gets checked in. Although these have been
tested via BUg 115136, these little nto no risk now because no one is using
them yet.
Bug 132827 r=dcone sr=attinasi a=asa
because of the ordering of nsIWebProgressListeners. Even tho the doc WAS
finished loading the notification goes to mail first abd then it print and then
check to see if it is busy and it comes back that it is.
So instead I have to use two booleans to monitor if the document was asked to
be destroyed while it was preparing to print. This typically happens when the
user click on a click and it takes a while and then they decide to print. So
while the Print Dialog is up the document gets unloaded and when it returned
back everything is gone.
So when the flow of control returns back from the Print Dialog it checks to see
if it "should" have been destroyed, and if so, it then aborts printing, cleans
and displays a message if the pressed "OK". If they pressed cancel then it
doesn't print the message.
Bug 131174 r=dcone sr=attinasi a=asa
getting the values from the default printer from the DocumentViewer down into
the PrintOptions service. We want it done only the very first time when the PrintSettings is created.
Bug 131852 r=dcone sr=attinasi a=scc
2) Removed unneeded methods from PrintOptions
3) PrintOption can now read and write (most) all the data in a PrintSettings object. The items not saved are those used during the printing process and it wouldn't make any sense to save them.
4) Adds a prefs for turning on and off the automatic saving of PrintSettings. If this is turned on it is almost the same as using the global PS.
5) On Linux it turns on the saving of PS prefs and turns on the global PS. Meaning it will always use a single Global PS object.
6) The PrintSettings can be initialized from a generic non-printer specific set of prefs. Then if a printer name is available in the PS then it tries
to initialize itself from the printer specific prefs. This enables to define "back stop" prefs for picking up first. Then the printer specific prefs can override those settings. For example, we may define in prefs that the default paper size 8.5x11, then if if the "save PS prefs" is turned on, for a given printer it might save 8.5x16 as the size.
7) A "flags" arg has been added so you can indicate which prefs you want read or written.
Bug 128142 r=dcone sr=attinasi a=shaver
should be in the PrintSettings.
2) Removed unneeded methods from PrintOptions
3) PrintOption can now read and write (most) all the data in a PrintSettings
object. The items not saved are those used during the printing process and
it wouldn't make any sense to save them.
4) Adds a prefs for turning on and off the automatic saving of PrintSettings.
If this is turned on it is almost the same as using the global PS.
5) On Linux it turns on the saving of PS prefs and turns on the global PS.
Meaning it will always use a single Global PS object.
6) The PrintSettings can be initialized from a generic non-printer specific
set of prefs. Then if a printer name is available in the PS then it tries
to initialize itself from the printer specific prefs. This enables to define
"back stop" prefs for picking up first. Then the printer specific prefs
can override those settings.
For example, we may define in prefs that the default paper size 8.5x11,
then if if the "save PS prefs" is turned on, for a given printer it might
save 8.5x16 as the size.
7) A "flags" arg has been added so you can indicate which prefs you want read
or written.
was doing the clamping on 50-100%, I have changed the back-end to do no
clamping and the front will now allow values between 10 and 500%, these seem
reasonable.
Bug 127508 r=sgehani sr=alecf a=asa
I have done the following:
1) Removed unneeded nsresult arg from OnEndPrinting
2) Removed unneeded calls to OnEndPrinting before the deletion of PrintData objs
3) The destructor of PrintData now only calls OnEndPrinting if onStartPrinting was called first, meaning printing notification was actually started.
Bug 126427 r=dcone sr=attinasi a=roc
default printer.
2) Mail now uses the nsIWebBrowserPrint interface to create the PrintSettings
object it caches and uses
3) Editor now creates and caches a PrintSettings object.
Bug 123554 r=dcone sr=attinasi
and PrintObject and their initialization order
2) In DocumentViewer: Implemented the shrink to fit feature by calc'ing the
ratios in the first reflow and then reflowing a second time to shrink them
3) In nsPageFrame: This is somewhat unrelated to this bug, but I found where
continuing frame content was being parented to the PageFrame instead of the
PageContentFrame.
4) Although at this time I am not using DumpFrames for debugging I may want to
switch back to it while debugging at anytime.
Bug 100967 r=dcone sr=attinasi
it in Print Preview
2) It now positions the page in the window with the gray "gap" showing.
3) factors out code for calc'ing the number of pages
4) Adds the methods to get the number of page while in PP
Bug 125151 r=sgehanisr=attinasi
2) Stubs this out on al other platforms
3) On Windows implmenets new method "InitPrintSettingsFromPrinter" which sets certain key values from the native devmode into the print settings
4) Stubs this out on all other platforms
5) It also cleans up the nsDeviceContextSpecWin interface a little bit:
It now has a single GetDevMode method that must be paired with a UnlockDevMode method.
6) It moved GetDataFromPrinter into the public interface
7) Created a simple helper function for getting the default printer name.
Bug 123554 r=dcone sr=attinasi
2) Fixes the negitive page range display problem
3) Improves performance by reducing the delay on pages not in the page range, i.e. before if you printed the 30th page out of 31 you had to wait 15 secs to get to the 30th page to print it.
4) Added AbortDocument, so now when Print jobs are cancelled we call AbortDocument and remove them from the print spooler
5) Fixed a couple of minor issue with Canceling and cancelling mail printings
6) selection was not printing correctly. The problem with selection was that the clip was not being set corrctly.
Bug 115227 & 123181 r=dcone,sspitzer sr=attainasi
And if the printer name is not set, then it gets the default printer and uses
that. instead.
This fixes remembering the last printer that was used and it also
enables you to to set the printer name and print silently (instead of silent
always having to use the default printer)
Bug 123335 sr=hyatt r=dcone
2) Adds a couple of new methods and an attr to nsIWebBrowserPrint (navigate, is frameset, & exitPP)
3) Removes all but one method from nsIContentViewerFile.idl/h the remaining call is for print regression testing
4) Removes the "static" implementation of nsIContentViewerFile.h
5) Fixed up nsIContentViewerFile.idl and turned it back on so it is now generating the header file
6) Removed all uses of nsIContentViewerFile.h except for the WebCrawler (uses it for Printing Regression testing)
7) nsDocumentViewer.cpp now implements nsIWebBrowserPrint.idl this makes it easier to add new print functionality in one place
8) You can now ask an instance of the ContentViewer for a nsIWebBrowserPrint to do printing (it retruns the nsIWebBrowserPrint interface implemented by the nsDocumentViewer)
9) Anybody who was using nsIContentViewerFile to print will now use nsIWebBrowserPrint
10) You can now do a "GetInterface()" on a GlobalWindow for a nsIWebBrowserPrint
11) The browser UI now uses the GetInterface on the GlobalWindow to get a nsIWebBrowserPrint object to do printing and this can be used for all printing functionality
Bug 120622 r=dcone sr=waterson