making a few adjustments to the APIs before the freeze
Bug 143248 r=conrad sr=attinasi git-svn-id: svn://10.0.0.236/trunk@121197 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
@@ -37,12 +37,11 @@
|
||||
*
|
||||
* ***** END LICENSE BLOCK ***** */
|
||||
#include "nsISupports.idl"
|
||||
#include "domstubs.idl"
|
||||
#include "nsIPrompt.idl"
|
||||
#include "nsIWebProgressListener.idl"
|
||||
|
||||
interface nsIDOMWindowInternal;
|
||||
interface nsIObserver;
|
||||
interface nsIPrompt;
|
||||
|
||||
[scriptable, uuid(7E46BC35-FB7D-4b45-AB35-82FD61015380)]
|
||||
interface nsIPrintProgress: nsIWebProgressListener {
|
||||
@@ -65,6 +64,10 @@ interface nsIPrintProgress: nsIWebProgressListener {
|
||||
/* Unregister a Web Progress Listener */
|
||||
void unregisterListener(in nsIWebProgressListener listener);
|
||||
|
||||
/* This method is called after the dialog that shows the progress has been shown
|
||||
*/
|
||||
void doneIniting();
|
||||
|
||||
/* Retrive the prompter, needed to display modal dialog on top of progress dialog */
|
||||
nsIPrompt getPrompter();
|
||||
|
||||
|
||||
@@ -6340,7 +6340,8 @@ void DocumentViewerImpl::CheckForHiddenFrameSetFrames()
|
||||
* PrintPreview: See the design spec that is attached to Bug 107562
|
||||
*/
|
||||
NS_IMETHODIMP
|
||||
DocumentViewerImpl::PrintPreview(nsIPrintSettings* aPrintSettings)
|
||||
DocumentViewerImpl::PrintPreview(nsIPrintSettings* aPrintSettings,
|
||||
nsIWebProgressListener* aWebProgressListener)
|
||||
{
|
||||
if (!mPresShell) {
|
||||
// A frame that's not displayed can't be printed!
|
||||
@@ -6702,7 +6703,7 @@ DocumentViewerImpl::DoPrintProgress(PRBool aIsForPrinting)
|
||||
// If we don't get a service, that's ok, then just don't show progress
|
||||
if (mPrt->mShowProgressDialog) {
|
||||
PRBool notifyOnOpen;
|
||||
nsresult rv = printPromptService->ShowProgress(domWin, this, mPrt->mPrintSettings, nsnull, getter_AddRefs(mPrt->mPrintProgressListener), getter_AddRefs(mPrt->mPrintProgressParams), ¬ifyOnOpen);
|
||||
nsresult rv = printPromptService->ShowProgress(domWin, this, mPrt->mPrintSettings, nsnull, PR_TRUE, getter_AddRefs(mPrt->mPrintProgressListener), getter_AddRefs(mPrt->mPrintProgressParams), ¬ifyOnOpen);
|
||||
if (NS_SUCCEEDED(rv)) {
|
||||
mPrt->mShowProgressDialog = mPrt->mPrintProgressListener != nsnull && mPrt->mPrintProgressParams != nsnull;
|
||||
|
||||
|
||||
@@ -156,14 +156,18 @@ interface nsIPrintingPrompt : nsISupports
|
||||
* @param webBrowserPrint - represents the document to be printed
|
||||
* @param printSettings - PrintSettings for print "job"
|
||||
* @param openDialogObserver - an observer that will be notifed when the dialog is opened
|
||||
* @param isForPrinting - true - for printing, false for print preview
|
||||
* @param webProgressListener - additional listener can be registered for progress notifications
|
||||
* @param printProgressParams - parameter object for passing progress state
|
||||
* @param notifyOnOpen - this indicates that the observer will be notified when the progress
|
||||
* dialog has been opened
|
||||
* dialog has been opened. If false is returned it means the observer
|
||||
* (usually the caller) shouldn't wait
|
||||
* For Print Preview Progress there is intermediate progress
|
||||
*/
|
||||
void showProgress(in nsIWebBrowserPrint webBrowserPrint,
|
||||
in nsIPrintSettings printSettings,
|
||||
in nsIObserver openDialogObserver,
|
||||
in boolean isForPrinting,
|
||||
out nsIWebProgressListener webProgressListener,
|
||||
out nsIPrintProgressParams printProgressParams,
|
||||
out boolean notifyOnOpen);
|
||||
|
||||
@@ -153,15 +153,19 @@ interface nsIPrintingPromptService : nsISupports
|
||||
* @param webBrowserPrint - represents the document to be printed
|
||||
* @param printSettings - PrintSettings for print "job"
|
||||
* @param openDialogObserver - an observer that will be notifed when the dialog is opened
|
||||
* @param isForPrinting - true - for printing, false for print preview
|
||||
* @param webProgressListener - additional listener can be registered for progress notifications
|
||||
* @param printProgressParams - parameter object for passing progress state
|
||||
* @param notifyOnOpen - this indicates that the observer will be notified when the progress
|
||||
* dialog has been opened
|
||||
* dialog has been opened. If false is returned it means the observer
|
||||
* (usually the caller) shouldn't wait
|
||||
* For Print Preview Progress there is intermediate progress
|
||||
*/
|
||||
void showProgress(in nsIDOMWindow parent,
|
||||
in nsIWebBrowserPrint webBrowserPrint,
|
||||
in nsIPrintSettings printSettings,
|
||||
in nsIObserver openDialogObserver,
|
||||
in boolean isForPrinting,
|
||||
out nsIWebProgressListener webProgressListener,
|
||||
out nsIPrintProgressParams printProgressParams,
|
||||
out boolean notifyOnOpen);
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
*
|
||||
* Contributor(s):
|
||||
* Don Cone <dcone@netscape.com>
|
||||
* Rod Spears <rods@netscape.com>
|
||||
*/
|
||||
|
||||
#include "nsISupports.idl"
|
||||
@@ -27,7 +28,9 @@ interface nsIPrintSettings;
|
||||
interface nsIWebProgressListener;
|
||||
|
||||
/**
|
||||
* The nsIWebBrowserPrint
|
||||
* nsIWebBrowserPrint corresponds to the main interface
|
||||
* for printing an embedded Gecko web browser window/document
|
||||
*
|
||||
*/
|
||||
[scriptable, uuid(9A7CA4B0-FBBA-11d4-A869-00105A183419)]
|
||||
interface nsIWebBrowserPrint : nsISupports
|
||||
@@ -174,15 +177,17 @@ interface nsIWebBrowserPrint : nsISupports
|
||||
* @return void
|
||||
*/
|
||||
void print(in nsIPrintSettings aThePrintSettings,
|
||||
in nsIWebProgressListener aWPListener);
|
||||
in nsIWebProgressListener aWPListener);
|
||||
|
||||
/**
|
||||
* Print Preview the specified DOM window
|
||||
*
|
||||
* aThePrintOptions - Printer Settings for the print preview
|
||||
* nsIWebProgressListener - is updated during the printpreview
|
||||
* @return void
|
||||
*/
|
||||
void printPreview(in nsIPrintSettings aThePrintSettings);
|
||||
void printPreview(in nsIPrintSettings aThePrintSettings,
|
||||
in nsIWebProgressListener aWPListener);
|
||||
|
||||
/**
|
||||
* Print Preview - Navigates within the window
|
||||
|
||||
@@ -183,6 +183,12 @@ NS_IMETHODIMP nsPrintProgress::UnregisterListener(nsIWebProgressListener *listen
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
/* void doneIniting (); */
|
||||
NS_IMETHODIMP nsPrintProgress::DoneIniting()
|
||||
{
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
/* void onStateChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in long aStateFlags, in unsigned long aStatus); */
|
||||
NS_IMETHODIMP nsPrintProgress::OnStateChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, PRInt32 aStateFlags, PRUint32 aStatus)
|
||||
{
|
||||
|
||||
@@ -417,6 +417,7 @@ nsPrintingPromptService::ShowProgress(nsIDOMWindow* parent,
|
||||
nsIWebBrowserPrint* webBrowserPrint, // ok to be null
|
||||
nsIPrintSettings* printSettings, // ok to be null
|
||||
nsIObserver* openDialogObserver, // ok to be null
|
||||
PRBool isForPrinting,
|
||||
nsIWebProgressListener** webProgressListener,
|
||||
nsIPrintProgressParams** printProgressParams,
|
||||
PRBool* notifyOnOpen)
|
||||
|
||||
@@ -266,6 +266,7 @@ nsPrintingPromptService::ShowProgress(nsIDOMWindow* parent,
|
||||
nsIWebBrowserPrint* webBrowserPrint, // ok to be null
|
||||
nsIPrintSettings* printSettings, // ok to be null
|
||||
nsIObserver* openDialogObserver, // ok to be null
|
||||
PRBool isForPrinting,
|
||||
nsIWebProgressListener** webProgressListener,
|
||||
nsIPrintProgressParams** printProgressParams,
|
||||
PRBool* notifyOnOpen)
|
||||
|
||||
@@ -183,6 +183,12 @@ NS_IMETHODIMP nsPrintProgress::UnregisterListener(nsIWebProgressListener *listen
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
/* void doneIniting (); */
|
||||
NS_IMETHODIMP nsPrintProgress::DoneIniting()
|
||||
{
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
/* void onStateChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in long aStateFlags, in unsigned long aStatus); */
|
||||
NS_IMETHODIMP nsPrintProgress::OnStateChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, PRInt32 aStateFlags, PRUint32 aStatus)
|
||||
{
|
||||
|
||||
@@ -131,12 +131,13 @@ nsPrintingPromptService::ShowPrintDialog(nsIDOMWindow *parent, nsIWebBrowserPrin
|
||||
return DoDialog(parent, block, webBrowserPrint, printSettings, kPrintDialogURL);
|
||||
}
|
||||
|
||||
/* void showProgress (in nsIDOMWindow parent, in nsIWebBrowserPrint webBrowserPrint, in nsIPrintSettings printSettings, out nsIWebProgressListener webProgressListener); */
|
||||
/* void showProgress (in nsIDOMWindow parent, in nsIWebBrowserPrint webBrowserPrint, in nsIPrintSettings printSettings, in nsIObserver openDialogObserver, in boolean isForPrinting, out nsIWebProgressListener webProgressListener, out nsIPrintProgressParams printProgressParams, out boolean notifyOnOpen); */
|
||||
NS_IMETHODIMP
|
||||
nsPrintingPromptService::ShowProgress(nsIDOMWindow* parent,
|
||||
nsIWebBrowserPrint* webBrowserPrint, // ok to be null
|
||||
nsIPrintSettings* printSettings, // ok to be null
|
||||
nsIObserver* openDialogObserver, // ok to be null
|
||||
PRBool isForPrinting,
|
||||
nsIWebProgressListener** webProgressListener,
|
||||
nsIPrintProgressParams** printProgressParams,
|
||||
PRBool* notifyOnOpen)
|
||||
|
||||
@@ -183,6 +183,12 @@ NS_IMETHODIMP nsPrintProgress::UnregisterListener(nsIWebProgressListener *listen
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
/* void doneIniting (); */
|
||||
NS_IMETHODIMP nsPrintProgress::DoneIniting()
|
||||
{
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
/* void onStateChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in long aStateFlags, in unsigned long aStatus); */
|
||||
NS_IMETHODIMP nsPrintProgress::OnStateChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, PRInt32 aStateFlags, PRUint32 aStatus)
|
||||
{
|
||||
|
||||
@@ -126,12 +126,13 @@ nsPrintingPromptService::ShowPrintDialog(nsIDOMWindow *parent, nsIWebBrowserPrin
|
||||
return DoDialog(parent, block, webBrowserPrint, printSettings, kPrintDialogURL);
|
||||
}
|
||||
|
||||
/* void showProgress (in nsIDOMWindow parent, in nsIWebBrowserPrint webBrowserPrint, in nsIPrintSettings printSettings, out nsIWebProgressListener webProgressListener); */
|
||||
/* void showProgress (in nsIDOMWindow parent, in nsIWebBrowserPrint webBrowserPrint, in nsIPrintSettings printSettings, in nsIObserver openDialogObserver, in boolean isForPrinting, out nsIWebProgressListener webProgressListener, out nsIPrintProgressParams printProgressParams, out boolean notifyOnOpen); */
|
||||
NS_IMETHODIMP
|
||||
nsPrintingPromptService::ShowProgress(nsIDOMWindow* parent,
|
||||
nsIWebBrowserPrint* webBrowserPrint, // ok to be null
|
||||
nsIPrintSettings* printSettings, // ok to be null
|
||||
nsIObserver* openDialogObserver, // ok to be null
|
||||
PRBool isForPrinting,
|
||||
nsIWebProgressListener** webProgressListener,
|
||||
nsIPrintProgressParams** printProgressParams,
|
||||
PRBool* notifyOnOpen)
|
||||
|
||||
@@ -184,6 +184,12 @@ NS_IMETHODIMP nsPrintProgress::UnregisterListener(nsIWebProgressListener *listen
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
/* void doneIniting (); */
|
||||
NS_IMETHODIMP nsPrintProgress::DoneIniting()
|
||||
{
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
/* void onStateChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in long aStateFlags, in unsigned long aStatus); */
|
||||
NS_IMETHODIMP nsPrintProgress::OnStateChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, PRInt32 aStateFlags, PRUint32 aStatus)
|
||||
{
|
||||
|
||||
@@ -192,6 +192,7 @@ nsPrintingPromptService::ShowProgress(nsIDOMWindow* parent,
|
||||
nsIWebBrowserPrint* webBrowserPrint, // ok to be null
|
||||
nsIPrintSettings* printSettings, // ok to be null
|
||||
nsIObserver* openDialogObserver, // ok to be null
|
||||
PRBool isForPrinting,
|
||||
nsIWebProgressListener** webProgressListener,
|
||||
nsIPrintProgressParams** printProgressParams,
|
||||
PRBool* notifyOnOpen)
|
||||
|
||||
@@ -91,9 +91,9 @@ nsPrintingPrompt::ShowPrintDialog(nsIWebBrowserPrint *webBrowserPrint, nsIPrintS
|
||||
|
||||
/* void showProgress (in nsIWebBrowserPrint webBrowserPrint, in nsIPrintSettings printSettings, out nsIWebProgressListener webProgressListener, out nsIPrintProgressParams printProgressParams); */
|
||||
NS_IMETHODIMP
|
||||
nsPrintingPrompt::ShowProgress(nsIWebBrowserPrint *webBrowserPrint, nsIPrintSettings *printSettings, nsIObserver *openDialogObserver, nsIWebProgressListener **webProgressListener, nsIPrintProgressParams** printProgressParams, PRBool* notifyOnOpen)
|
||||
nsPrintingPrompt::ShowProgress(nsIWebBrowserPrint *webBrowserPrint, nsIPrintSettings *printSettings, nsIObserver *openDialogObserver, PRBool isForPrinting, nsIWebProgressListener **webProgressListener, nsIPrintProgressParams** printProgressParams, PRBool* notifyOnOpen)
|
||||
{
|
||||
return mPromptService->ShowProgress(mParent, webBrowserPrint, printSettings, openDialogObserver, webProgressListener, printProgressParams, notifyOnOpen);
|
||||
return mPromptService->ShowProgress(mParent, webBrowserPrint, printSettings, openDialogObserver, isForPrinting, webProgressListener, printProgressParams, notifyOnOpen);
|
||||
}
|
||||
|
||||
/* void showPageSetup (in nsIPrintSettings printSettings); */
|
||||
|
||||
@@ -1014,7 +1014,7 @@ void CBrowserView::OnFilePrintPreview()
|
||||
nsCOMPtr<nsIWebBrowserPrint> print(do_GetInterface(mWebBrowser));
|
||||
if(print)
|
||||
{
|
||||
print->PrintPreview(m_PrintSettings);
|
||||
print->PrintPreview(m_PrintSettings, nsnull);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -6340,7 +6340,8 @@ void DocumentViewerImpl::CheckForHiddenFrameSetFrames()
|
||||
* PrintPreview: See the design spec that is attached to Bug 107562
|
||||
*/
|
||||
NS_IMETHODIMP
|
||||
DocumentViewerImpl::PrintPreview(nsIPrintSettings* aPrintSettings)
|
||||
DocumentViewerImpl::PrintPreview(nsIPrintSettings* aPrintSettings,
|
||||
nsIWebProgressListener* aWebProgressListener)
|
||||
{
|
||||
if (!mPresShell) {
|
||||
// A frame that's not displayed can't be printed!
|
||||
@@ -6702,7 +6703,7 @@ DocumentViewerImpl::DoPrintProgress(PRBool aIsForPrinting)
|
||||
// If we don't get a service, that's ok, then just don't show progress
|
||||
if (mPrt->mShowProgressDialog) {
|
||||
PRBool notifyOnOpen;
|
||||
nsresult rv = printPromptService->ShowProgress(domWin, this, mPrt->mPrintSettings, nsnull, getter_AddRefs(mPrt->mPrintProgressListener), getter_AddRefs(mPrt->mPrintProgressParams), ¬ifyOnOpen);
|
||||
nsresult rv = printPromptService->ShowProgress(domWin, this, mPrt->mPrintSettings, nsnull, PR_TRUE, getter_AddRefs(mPrt->mPrintProgressListener), getter_AddRefs(mPrt->mPrintProgressParams), ¬ifyOnOpen);
|
||||
if (NS_SUCCEEDED(rv)) {
|
||||
mPrt->mShowProgressDialog = mPrt->mPrintProgressListener != nsnull && mPrt->mPrintProgressParams != nsnull;
|
||||
|
||||
|
||||
@@ -37,12 +37,11 @@
|
||||
*
|
||||
* ***** END LICENSE BLOCK ***** */
|
||||
#include "nsISupports.idl"
|
||||
#include "domstubs.idl"
|
||||
#include "nsIPrompt.idl"
|
||||
#include "nsIWebProgressListener.idl"
|
||||
|
||||
interface nsIDOMWindowInternal;
|
||||
interface nsIObserver;
|
||||
interface nsIPrompt;
|
||||
|
||||
[scriptable, uuid(7E46BC35-FB7D-4b45-AB35-82FD61015380)]
|
||||
interface nsIPrintProgress: nsIWebProgressListener {
|
||||
@@ -65,6 +64,10 @@ interface nsIPrintProgress: nsIWebProgressListener {
|
||||
/* Unregister a Web Progress Listener */
|
||||
void unregisterListener(in nsIWebProgressListener listener);
|
||||
|
||||
/* This method is called after the dialog that shows the progress has been shown
|
||||
*/
|
||||
void doneIniting();
|
||||
|
||||
/* Retrive the prompter, needed to display modal dialog on top of progress dialog */
|
||||
nsIPrompt getPrompter();
|
||||
|
||||
|
||||
@@ -871,7 +871,8 @@ PluginViewerImpl::GetGlobalPrintSettings(nsIPrintSettings * *aGlobalPrintSetting
|
||||
|
||||
/* void printPreview (in nsIPrintSettings aThePrintSettings); */
|
||||
NS_IMETHODIMP
|
||||
PluginViewerImpl::PrintPreview(nsIPrintSettings *aThePrintSettings)
|
||||
PluginViewerImpl::PrintPreview(nsIPrintSettings *aThePrintSettings,
|
||||
nsIWebProgressListener* aWebProgressListener)
|
||||
{
|
||||
return NS_ERROR_NOT_IMPLEMENTED;
|
||||
}
|
||||
|
||||
@@ -285,7 +285,7 @@ function BrowserPrintSetup()
|
||||
webBrowserPrint.savePrintSettingsToPrefs(gPrintSettings, false, gPrintSettings.kInitSaveNativeData);
|
||||
}
|
||||
if (webBrowserPrint.doingPrintPreview) {
|
||||
webBrowserPrint.printPreview(gPrintSettings);
|
||||
webBrowserPrint.printPreview(gPrintSettings, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user