Added a method to webshell so that a root container can find out when
new webshells are added to its hierarchy. git-svn-id: svn://10.0.0.236/trunk@28203 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
@@ -241,6 +241,8 @@ public:
|
||||
PRBool aVisible,
|
||||
nsIWebShell *&aNewWebShell);
|
||||
NS_IMETHOD CanCreateNewWebShell(PRBool& aResult);
|
||||
NS_IMETHOD ChildShellAdded(nsIWebShell* aChildShell, nsIContent* frameNode, PRBool& aResult);
|
||||
|
||||
NS_IMETHOD SetNewWebShellInfo(const nsString& aName, const nsString& anURL,
|
||||
nsIWebShell* aOpenerShell, PRUint32 aChromeMask,
|
||||
nsIWebShell** aNewShell);
|
||||
@@ -1903,6 +1905,16 @@ nsWebShell::CanCreateNewWebShell(PRBool& aResult)
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsWebShell::ChildShellAdded(nsIWebShell* aChildShell, nsIContent* frameNode, PRBool& aResult)
|
||||
{
|
||||
aResult = PR_FALSE;
|
||||
if (nsnull != mContainer) {
|
||||
return mContainer->ChildShellAdded(aChildShell, frameNode, aResult);
|
||||
}
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsWebShell::SetNewWebShellInfo(const nsString& aName, const nsString& anURL,
|
||||
nsIWebShell* aOpenerShell, PRUint32 aChromeMask,
|
||||
|
||||
@@ -34,6 +34,7 @@ class nsIDocumentLoaderObserver;
|
||||
class nsIWebShell;
|
||||
class nsIWebShellContainer;
|
||||
class nsIPref;
|
||||
class nsIContent;
|
||||
|
||||
// Interface ID for nsIWebShell
|
||||
#define NS_IWEB_SHELL_IID \
|
||||
@@ -102,8 +103,9 @@ public:
|
||||
|
||||
NS_IMETHOD FindWebShellWithName(const PRUnichar* aName,
|
||||
nsIWebShell*& aResult) = 0;
|
||||
|
||||
|
||||
NS_IMETHOD ChildShellAdded(nsIWebShell* aChildShell, nsIContent* frameNode, PRBool& aResult) = 0;
|
||||
|
||||
/**
|
||||
* Notify the WebShellContainer that a contained webshell is
|
||||
* offering focus (for example if it finshed tabbing through its
|
||||
|
||||
@@ -241,6 +241,8 @@ public:
|
||||
PRBool aVisible,
|
||||
nsIWebShell *&aNewWebShell);
|
||||
NS_IMETHOD CanCreateNewWebShell(PRBool& aResult);
|
||||
NS_IMETHOD ChildShellAdded(nsIWebShell* aChildShell, nsIContent* frameNode, PRBool& aResult);
|
||||
|
||||
NS_IMETHOD SetNewWebShellInfo(const nsString& aName, const nsString& anURL,
|
||||
nsIWebShell* aOpenerShell, PRUint32 aChromeMask,
|
||||
nsIWebShell** aNewShell);
|
||||
@@ -1903,6 +1905,16 @@ nsWebShell::CanCreateNewWebShell(PRBool& aResult)
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsWebShell::ChildShellAdded(nsIWebShell* aChildShell, nsIContent* frameNode, PRBool& aResult)
|
||||
{
|
||||
aResult = PR_FALSE;
|
||||
if (nsnull != mContainer) {
|
||||
return mContainer->ChildShellAdded(aChildShell, frameNode, aResult);
|
||||
}
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsWebShell::SetNewWebShellInfo(const nsString& aName, const nsString& anURL,
|
||||
nsIWebShell* aOpenerShell, PRUint32 aChromeMask,
|
||||
|
||||
@@ -1750,6 +1750,14 @@ nsBrowserWindow::CanCreateNewWebShell(PRBool& aResult)
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsBrowserWindow::ChildShellAdded(nsIWebShell* aChildShell, nsIContent* frameNode, PRBool& aResult)
|
||||
{
|
||||
aResult = PR_FALSE; // We don't ever care about handling this.
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsBrowserWindow::SetNewWebShellInfo(const nsString& aName, const nsString& anURL,
|
||||
nsIWebShell* aOpenerShell, PRUint32 aChromeMask,
|
||||
|
||||
@@ -107,6 +107,7 @@ public:
|
||||
PRBool aVisible,
|
||||
nsIWebShell *&aNewWebShell);
|
||||
NS_IMETHOD CanCreateNewWebShell(PRBool& aResult);
|
||||
NS_IMETHOD ChildShellAdded(nsIWebShell* aChildShell, nsIContent* frameNode, PRBool& aResult);
|
||||
NS_IMETHOD SetNewWebShellInfo(const nsString& aName, const nsString& anURL,
|
||||
nsIWebShell* aOpenerShell, PRUint32 aChromeMask,
|
||||
nsIWebShell** aNewShell);
|
||||
|
||||
@@ -568,6 +568,13 @@ nsXPBaseWindow::CanCreateNewWebShell(PRBool& aResult)
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsXPBaseWindow::ChildShellAdded(nsIWebShell* aChildShell, nsIContent* frameNode, PRBool& aResult)
|
||||
{
|
||||
aResult = PR_FALSE;
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsXPBaseWindow::SetNewWebShellInfo(const nsString& aName, const nsString& anURL,
|
||||
nsIWebShell* aOpenerShell, PRUint32 aChromeMask,
|
||||
|
||||
@@ -98,6 +98,7 @@ public:
|
||||
PRBool aVisible,
|
||||
nsIWebShell *&aNewWebShell);
|
||||
NS_IMETHOD CanCreateNewWebShell(PRBool& aResult);
|
||||
NS_IMETHOD ChildShellAdded(nsIWebShell* aChildShell, nsIContent* frameNode, PRBool& aResult);
|
||||
NS_IMETHOD SetNewWebShellInfo(const nsString& aName, const nsString& anURL,
|
||||
nsIWebShell* aOpenerShell, PRUint32 aChromeMask,
|
||||
nsIWebShell** aNewShell);
|
||||
|
||||
Reference in New Issue
Block a user