Fix for bug 237964 (Allow editable areas in browser (contentEditable)). r/sr=sicking.

This commit is contained in:
2007-06-27 19:48:16 -07:00
parent f45b14cad4
commit bf9ea34c63
53 changed files with 1324 additions and 266 deletions

View File

@@ -772,7 +772,11 @@ nsWebShell::OnLinkClick(nsIContent* aContent,
if (mFiredUnloadEvent) {
return NS_OK;
}
if (aContent->HasFlag(NODE_IS_EDITABLE)) {
return NS_OK;
}
nsCOMPtr<nsIRunnable> ev =
new OnLinkClickEvent(this, aContent, aURI, aTargetSpec,
aPostDataStream, aHeadersDataStream);
@@ -800,6 +804,10 @@ nsWebShell::OnLinkClickSync(nsIContent *aContent,
return NS_OK;
}
if (aContent->HasFlag(NODE_IS_EDITABLE)) {
return NS_OK;
}
{
// defer to an external protocol handler if necessary...
nsCOMPtr<nsIExternalProtocolService> extProtService = do_GetService(NS_EXTERNALPROTOCOLSERVICE_CONTRACTID);
@@ -895,6 +903,10 @@ nsWebShell::OnOverLink(nsIContent* aContent,
nsIURI* aURI,
const PRUnichar* aTargetSpec)
{
if (aContent->HasFlag(NODE_IS_EDITABLE)) {
return NS_OK;
}
nsCOMPtr<nsIWebBrowserChrome2> browserChrome2 = do_GetInterface(mTreeOwner);
nsresult rv = NS_ERROR_FAILURE;