PHOTON only, NOT PART OF BUILD

Fixes for printing (PR:112048), Fixes for context menu image saving, addition
of scrollbar navigation via resources.
Also removed references to nsIDiskDocument.h.
This commit is contained in:
briane@qnx.com
2002-01-15 16:53:21 +00:00
parent b012410ac1
commit 30285ab091
5 changed files with 125 additions and 27 deletions

View File

@@ -33,6 +33,7 @@
// for do_CreateInstance
#include <nsIComponentManager.h>
#include "nsIWebProgressListener.h"
#include "nsIDOMHTMLImageElement.h"
#include <nsCWebBrowser.h>
#include <nsIComponentManager.h>
@@ -188,7 +189,7 @@ EmbedWindow::SaveAs(char *fname)
{
nsCOMPtr<nsILocalFile> file;
NS_NewLocalFile(fname, PR_TRUE, getter_AddRefs(file));
persist->SaveDocument(nsnull, file, nsnull);
persist->SaveDocument(nsnull, file, nsnull, nsnull, 0, 0);
return (0);
}
return 1;
@@ -579,15 +580,15 @@ NS_IMETHODIMP EmbedWindow::OnShowContextMenu(PRUint32 aContextFlags, nsIDOMEvent
memset(&cmenu, 0, sizeof(PtMozillaContextCb_t));
if (aContextFlags & CONTEXT_NONE)
cmenu.flags |= Pt_MOZ_CONTEXT_NONE;
if (aContextFlags & CONTEXT_LINK)
else if (aContextFlags & CONTEXT_LINK)
cmenu.flags |= Pt_MOZ_CONTEXT_LINK;
if (aContextFlags & CONTEXT_IMAGE)
else if (aContextFlags & CONTEXT_IMAGE)
cmenu.flags |= Pt_MOZ_CONTEXT_IMAGE;
if (aContextFlags & CONTEXT_DOCUMENT)
else if (aContextFlags & CONTEXT_DOCUMENT)
cmenu.flags |= Pt_MOZ_CONTEXT_DOCUMENT;
if (aContextFlags & CONTEXT_TEXT)
else if (aContextFlags & CONTEXT_TEXT)
cmenu.flags |= Pt_MOZ_CONTEXT_TEXT;
if (aContextFlags & CONTEXT_INPUT)
else if (aContextFlags & CONTEXT_INPUT)
cmenu.flags |= Pt_MOZ_CONTEXT_INPUT;
nsCOMPtr<nsIDOMMouseEvent> mouseEvent (do_QueryInterface( aEvent ));
@@ -597,24 +598,46 @@ NS_IMETHODIMP EmbedWindow::OnShowContextMenu(PRUint32 aContextFlags, nsIDOMEvent
PtInvokeCallbackList(cb, (PtWidget_t *)moz, &cbinfo);
/* store the url we clicked on */
nsAutoString rightClickUrl;
nsresult rv = NS_OK;
nsCOMPtr<nsIDOMHTMLAnchorElement> linkElement(do_QueryInterface(aNode, &rv));
if (aContextFlags & CONTEXT_IMAGE)
{
// Get the IMG SRC
nsresult rv = NS_OK;
nsCOMPtr<nsIDOMHTMLImageElement> imgElement(do_QueryInterface(aNode, &rv));
if (NS_FAILED(rv))
return NS_OK;
if(NS_FAILED(rv)) return NS_OK;
// Note that this string is in UCS2 format
rv = linkElement->GetHref( rightClickUrl );
if(NS_FAILED(rv)) {
if( moz->rightClickUrl ) free( moz->rightClickUrl );
moz->rightClickUrl = NULL;
return NS_OK;
rv = imgElement->GetSrc(rightClickUrl);
if(NS_FAILED(rv))
{
if( moz->rightClickUrl )
free( moz->rightClickUrl );
moz->rightClickUrl = NULL;
return NS_OK;
}
}
else
{
nsresult rv = NS_OK;
nsCOMPtr<nsIDOMHTMLAnchorElement> linkElement(do_QueryInterface(aNode, &rv));
if(NS_FAILED(rv))
return NS_OK;
if( moz->rightClickUrl ) free( moz->rightClickUrl );
// Note that this string is in UCS2 format
rv = linkElement->GetHref( rightClickUrl );
if(NS_FAILED(rv))
{
if( moz->rightClickUrl )
free( moz->rightClickUrl );
moz->rightClickUrl = NULL;
return NS_OK;
}
}
if( moz->rightClickUrl )
free( moz->rightClickUrl );
moz->rightClickUrl = ToNewCString(rightClickUrl);
return NS_OK;