зеркало из https://github.com/mozilla/pjs.git
Changes to enable an asynchronous creation of a webshell in response to a
window.open call.
This commit is contained in:
Родитель
681ea7bf01
Коммит
47df321322
|
@ -240,6 +240,10 @@ public:
|
||||||
NS_IMETHOD NewWebShell(PRUint32 aChromeMask,
|
NS_IMETHOD NewWebShell(PRUint32 aChromeMask,
|
||||||
PRBool aVisible,
|
PRBool aVisible,
|
||||||
nsIWebShell *&aNewWebShell);
|
nsIWebShell *&aNewWebShell);
|
||||||
|
NS_IMETHOD CanCreateNewWebShell(PRBool& aResult);
|
||||||
|
NS_IMETHOD SetNewWebShellInfo(const nsString& aName, const nsString& anURL,
|
||||||
|
nsIWebShell* aOpenerShell, PRUint32 aChromeMask,
|
||||||
|
nsIWebShell** aNewShell);
|
||||||
NS_IMETHOD FindWebShellWithName(const PRUnichar* aName, nsIWebShell*& aResult);
|
NS_IMETHOD FindWebShellWithName(const PRUnichar* aName, nsIWebShell*& aResult);
|
||||||
NS_IMETHOD FocusAvailable(nsIWebShell* aFocusedWebShell, PRBool& aFocusTaken);
|
NS_IMETHOD FocusAvailable(nsIWebShell* aFocusedWebShell, PRBool& aFocusTaken);
|
||||||
|
|
||||||
|
@ -1889,6 +1893,27 @@ nsWebShell::NewWebShell(PRUint32 aChromeMask,
|
||||||
return NS_OK;
|
return NS_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
NS_IMETHODIMP
|
||||||
|
nsWebShell::CanCreateNewWebShell(PRBool& aResult)
|
||||||
|
{
|
||||||
|
aResult = PR_TRUE;
|
||||||
|
if (nsnull != mContainer) {
|
||||||
|
return mContainer->CanCreateNewWebShell(aResult);
|
||||||
|
}
|
||||||
|
return NS_OK;
|
||||||
|
}
|
||||||
|
|
||||||
|
NS_IMETHODIMP
|
||||||
|
nsWebShell::SetNewWebShellInfo(const nsString& aName, const nsString& anURL,
|
||||||
|
nsIWebShell* aOpenerShell, PRUint32 aChromeMask,
|
||||||
|
nsIWebShell** aNewShell)
|
||||||
|
{
|
||||||
|
if (nsnull != mContainer) {
|
||||||
|
return mContainer->SetNewWebShellInfo(aName, anURL, aOpenerShell, aChromeMask, aNewShell);
|
||||||
|
}
|
||||||
|
return NS_OK;
|
||||||
|
}
|
||||||
|
|
||||||
NS_IMETHODIMP
|
NS_IMETHODIMP
|
||||||
nsWebShell::FindWebShellWithName(const PRUnichar* aName, nsIWebShell*& aResult)
|
nsWebShell::FindWebShellWithName(const PRUnichar* aName, nsIWebShell*& aResult)
|
||||||
{
|
{
|
||||||
|
|
|
@ -92,6 +92,14 @@ public:
|
||||||
PRBool aVisible,
|
PRBool aVisible,
|
||||||
nsIWebShell *&aNewWebShell) = 0;
|
nsIWebShell *&aNewWebShell) = 0;
|
||||||
|
|
||||||
|
// XXX dave sez: if kipp doesn't think NewWebShell should be part of
|
||||||
|
// this interface, then the next two methods probably shouldn't either.
|
||||||
|
// They should move to whereever NewWebShell moves.
|
||||||
|
NS_IMETHOD CanCreateNewWebShell(PRBool& aResult) = 0;
|
||||||
|
NS_IMETHOD SetNewWebShellInfo(const nsString& aName, const nsString& anURL,
|
||||||
|
nsIWebShell* aOpenerShell, PRUint32 aChromeMask,
|
||||||
|
nsIWebShell** aNewShell) = 0;
|
||||||
|
|
||||||
NS_IMETHOD FindWebShellWithName(const PRUnichar* aName,
|
NS_IMETHOD FindWebShellWithName(const PRUnichar* aName,
|
||||||
nsIWebShell*& aResult) = 0;
|
nsIWebShell*& aResult) = 0;
|
||||||
|
|
||||||
|
|
|
@ -240,6 +240,10 @@ public:
|
||||||
NS_IMETHOD NewWebShell(PRUint32 aChromeMask,
|
NS_IMETHOD NewWebShell(PRUint32 aChromeMask,
|
||||||
PRBool aVisible,
|
PRBool aVisible,
|
||||||
nsIWebShell *&aNewWebShell);
|
nsIWebShell *&aNewWebShell);
|
||||||
|
NS_IMETHOD CanCreateNewWebShell(PRBool& aResult);
|
||||||
|
NS_IMETHOD SetNewWebShellInfo(const nsString& aName, const nsString& anURL,
|
||||||
|
nsIWebShell* aOpenerShell, PRUint32 aChromeMask,
|
||||||
|
nsIWebShell** aNewShell);
|
||||||
NS_IMETHOD FindWebShellWithName(const PRUnichar* aName, nsIWebShell*& aResult);
|
NS_IMETHOD FindWebShellWithName(const PRUnichar* aName, nsIWebShell*& aResult);
|
||||||
NS_IMETHOD FocusAvailable(nsIWebShell* aFocusedWebShell, PRBool& aFocusTaken);
|
NS_IMETHOD FocusAvailable(nsIWebShell* aFocusedWebShell, PRBool& aFocusTaken);
|
||||||
|
|
||||||
|
@ -1889,6 +1893,27 @@ nsWebShell::NewWebShell(PRUint32 aChromeMask,
|
||||||
return NS_OK;
|
return NS_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
NS_IMETHODIMP
|
||||||
|
nsWebShell::CanCreateNewWebShell(PRBool& aResult)
|
||||||
|
{
|
||||||
|
aResult = PR_TRUE;
|
||||||
|
if (nsnull != mContainer) {
|
||||||
|
return mContainer->CanCreateNewWebShell(aResult);
|
||||||
|
}
|
||||||
|
return NS_OK;
|
||||||
|
}
|
||||||
|
|
||||||
|
NS_IMETHODIMP
|
||||||
|
nsWebShell::SetNewWebShellInfo(const nsString& aName, const nsString& anURL,
|
||||||
|
nsIWebShell* aOpenerShell, PRUint32 aChromeMask,
|
||||||
|
nsIWebShell** aNewShell)
|
||||||
|
{
|
||||||
|
if (nsnull != mContainer) {
|
||||||
|
return mContainer->SetNewWebShellInfo(aName, anURL, aOpenerShell, aChromeMask, aNewShell);
|
||||||
|
}
|
||||||
|
return NS_OK;
|
||||||
|
}
|
||||||
|
|
||||||
NS_IMETHODIMP
|
NS_IMETHODIMP
|
||||||
nsWebShell::FindWebShellWithName(const PRUnichar* aName, nsIWebShell*& aResult)
|
nsWebShell::FindWebShellWithName(const PRUnichar* aName, nsIWebShell*& aResult)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1743,6 +1743,21 @@ nsBrowserWindow::NewWebShell(PRUint32 aChromeMask,
|
||||||
return rv;
|
return rv;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
NS_IMETHODIMP
|
||||||
|
nsBrowserWindow::CanCreateNewWebShell(PRBool& aResult)
|
||||||
|
{
|
||||||
|
aResult = PR_TRUE; // We can always make a new web shell synchronously
|
||||||
|
return NS_OK;
|
||||||
|
}
|
||||||
|
|
||||||
|
NS_IMETHODIMP
|
||||||
|
nsBrowserWindow::SetNewWebShellInfo(const nsString& aName, const nsString& anURL,
|
||||||
|
nsIWebShell* aOpenerShell, PRUint32 aChromeMask,
|
||||||
|
nsIWebShell** aNewShell)
|
||||||
|
{
|
||||||
|
return NS_OK; // We don't care about this method, since we can make new web shells immediately.
|
||||||
|
}
|
||||||
|
|
||||||
NS_IMETHODIMP
|
NS_IMETHODIMP
|
||||||
nsBrowserWindow::FindWebShellWithName(const PRUnichar* aName, nsIWebShell*& aResult)
|
nsBrowserWindow::FindWebShellWithName(const PRUnichar* aName, nsIWebShell*& aResult)
|
||||||
{
|
{
|
||||||
|
|
|
@ -106,6 +106,10 @@ public:
|
||||||
NS_IMETHOD NewWebShell(PRUint32 aChromeMask,
|
NS_IMETHOD NewWebShell(PRUint32 aChromeMask,
|
||||||
PRBool aVisible,
|
PRBool aVisible,
|
||||||
nsIWebShell *&aNewWebShell);
|
nsIWebShell *&aNewWebShell);
|
||||||
|
NS_IMETHOD CanCreateNewWebShell(PRBool& aResult);
|
||||||
|
NS_IMETHOD SetNewWebShellInfo(const nsString& aName, const nsString& anURL,
|
||||||
|
nsIWebShell* aOpenerShell, PRUint32 aChromeMask,
|
||||||
|
nsIWebShell** aNewShell);
|
||||||
NS_IMETHOD FindWebShellWithName(const PRUnichar* aName, nsIWebShell*& aResult);
|
NS_IMETHOD FindWebShellWithName(const PRUnichar* aName, nsIWebShell*& aResult);
|
||||||
NS_IMETHOD FocusAvailable(nsIWebShell* aFocusedWebShell, PRBool& aFocusTaken);
|
NS_IMETHOD FocusAvailable(nsIWebShell* aFocusedWebShell, PRBool& aFocusTaken);
|
||||||
|
|
||||||
|
|
|
@ -561,6 +561,20 @@ NS_IMETHODIMP nsXPBaseWindow::NewWebShell(PRUint32 aChromeMask,
|
||||||
return rv;
|
return rv;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
NS_IMETHODIMP
|
||||||
|
nsXPBaseWindow::CanCreateNewWebShell(PRBool& aResult)
|
||||||
|
{
|
||||||
|
aResult = PR_TRUE; // We can always make a new web shell synchronously
|
||||||
|
return NS_OK;
|
||||||
|
}
|
||||||
|
|
||||||
|
NS_IMETHODIMP
|
||||||
|
nsXPBaseWindow::SetNewWebShellInfo(const nsString& aName, const nsString& anURL,
|
||||||
|
nsIWebShell* aOpenerShell, PRUint32 aChromeMask,
|
||||||
|
nsIWebShell** aNewShell)
|
||||||
|
{
|
||||||
|
return NS_OK; // We don't care about this method, since we can make new web shells immediately.
|
||||||
|
}
|
||||||
|
|
||||||
//----------------------------------------
|
//----------------------------------------
|
||||||
|
|
||||||
|
|
|
@ -97,6 +97,10 @@ public:
|
||||||
NS_IMETHOD NewWebShell(PRUint32 aChromeMask,
|
NS_IMETHOD NewWebShell(PRUint32 aChromeMask,
|
||||||
PRBool aVisible,
|
PRBool aVisible,
|
||||||
nsIWebShell *&aNewWebShell);
|
nsIWebShell *&aNewWebShell);
|
||||||
|
NS_IMETHOD CanCreateNewWebShell(PRBool& aResult);
|
||||||
|
NS_IMETHOD SetNewWebShellInfo(const nsString& aName, const nsString& anURL,
|
||||||
|
nsIWebShell* aOpenerShell, PRUint32 aChromeMask,
|
||||||
|
nsIWebShell** aNewShell);
|
||||||
NS_IMETHOD FindWebShellWithName(const PRUnichar* aName, nsIWebShell*& aResult);
|
NS_IMETHOD FindWebShellWithName(const PRUnichar* aName, nsIWebShell*& aResult);
|
||||||
NS_IMETHOD FocusAvailable(nsIWebShell* aFocusedWebShell, PRBool& aFocusTaken);
|
NS_IMETHOD FocusAvailable(nsIWebShell* aFocusedWebShell, PRBool& aFocusTaken);
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче