From e80ecd5bda82f6111d096f5ee3bdd4a15caa6d26 Mon Sep 17 00:00:00 2001 From: "mscott%netscape.com" Date: Sat, 22 Apr 2000 23:17:11 +0000 Subject: [PATCH] help support the doc loader using the web progress listener. --- uriloader/base/nsIURILoader.idl | 6 +++--- uriloader/base/nsURILoader.cpp | 25 +++++++++++++------------ 2 files changed, 16 insertions(+), 15 deletions(-) diff --git a/uriloader/base/nsIURILoader.idl b/uriloader/base/nsIURILoader.idl index b4ec71a75c21..7ba1ae05f244 100644 --- a/uriloader/base/nsIURILoader.idl +++ b/uriloader/base/nsIURILoader.idl @@ -106,10 +106,10 @@ interface nsIURILoader : nsISupports /* these are nsURILoadCommand */ - const long viewNormal = 0; + const long viewNormal = 0; const long viewUserClick = 1; - const long viewNewWindow = 2; - const long viewNormalBackground = 3; + const long viewNewWindow = 2; + const long viewNormalBackground = 3; /* mscott -> I'm going to move this out into a separate private interface */ diff --git a/uriloader/base/nsURILoader.cpp b/uriloader/base/nsURILoader.cpp index ccd5f984e62d..25596fce2dd8 100644 --- a/uriloader/base/nsURILoader.cpp +++ b/uriloader/base/nsURILoader.cpp @@ -607,6 +607,19 @@ NS_IMETHODIMP nsURILoader::OpenURIVia(nsIChannel * aChannel, nsCOMPtr loadCookie; SetupLoadCookie(retargetedWindowContext, getter_AddRefs(loadCookie)); + // every time we do a load, we should reset the progress listener on it... + if (loadCookie) + { + // bind the web progress listener (if there is one) to the web progress + // instance of the doc loader.. + nsCOMPtr docLoader (do_GetInterface(loadCookie)); + nsCOMPtr webProgress (do_QueryInterface(docLoader)); + nsCOMPtr webProgressListener (do_GetInterface(retargetedWindowContext)); + if (webProgress && webProgressListener) + webProgress->AddProgressListener(webProgressListener); + } + + loader->Init(retargetedWindowContext, aOriginalWindowContext); // Extra Info // now instruct the loader to go ahead and open the url @@ -684,18 +697,6 @@ nsresult nsURILoader::SetupLoadCookie(nsISupports * aWindowContext, nsISupports } // if we don't have a load cookie already } // if we have a cntListener - // every time we do a load, we should reset the progress listener on it... - if (loadCookie) - { - // bind the web progress listener (if there is one) to the web progress - // instance of the doc loader.. - nsCOMPtr docLoader (do_GetInterface(loadCookie)); - nsCOMPtr webProgress (do_QueryInterface(docLoader)); - nsCOMPtr webProgressListener (do_GetInterface(aWindowContext)); - if (webProgress && webProgressListener) - webProgress->AddProgressListener(webProgressListener); - } - *aLoadCookie = loadCookie; NS_IF_ADDREF(*aLoadCookie);