Diff for /chimera/NSBrowserView.mm between versions 1.2 and 1.11

version 1.2, 2002/02/03 05:53:12 version 1.11, 2002/02/05 05:00:16
Line 56 Line 56
 #include "nsXPIDLString.h"  #include "nsXPIDLString.h"
 #include "nsCOMPtr.h"  #include "nsCOMPtr.h"
   
   // Printing
   #include "nsIWebBrowserPrint.h"
   #include "nsIPrintSettings.h"
   
   // Saving of links/images/docs
 #include "nsIWebBrowserFocus.h"  #include "nsIWebBrowserFocus.h"
 #include "nsIDOMHTMLDocument.h"  #include "nsIDOMHTMLDocument.h"
 #include "nsIDocument.h"  #include "nsIDocument.h"
Line 69 Line 74
 #include "nsIMIMEService.h"  #include "nsIMIMEService.h"
 #include "nsIMIMEInfo.h"  #include "nsIMIMEInfo.h"
 #include "nsISHistory.h"  #include "nsISHistory.h"
   #include "nsIHistoryEntry.h"
   #include "nsISHEntry.h"
   
   // Cut/copy/paste
   #include "nsIClipboardCommands.h"
   #include "nsIInterfaceRequestorUtils.h"
   
   const char* persistContractID = "@mozilla.org/embedding/browser/nsWebBrowserPersist;1";
   const char* dirServiceContractID = "@mozilla.org/file/directory_service;1";
   
 class nsCocoaBrowserListener : public nsSupportsWeakReference,  class nsCocoaBrowserListener : public nsSupportsWeakReference,
                                public nsIInterfaceRequestor,                                 public nsIInterfaceRequestor,
Line 586  class nsHeaderSniffer :  public nsIWebPr Line 600  class nsHeaderSniffer :  public nsIWebPr
 {  {
 public:  public:
     nsHeaderSniffer(nsIWebBrowserPersist* aPersist, nsIFile* aFile, nsIURI* aURL,      nsHeaderSniffer(nsIWebBrowserPersist* aPersist, nsIFile* aFile, nsIURI* aURL,
                    nsIDOMDocument* aDocument, PRBool aBypassCache,                    nsIDOMDocument* aDocument, nsIInputStream* aPostData, PRBool aBypassCache,
                     NSView* aFilterView, NSPopUpButton* aFilterList)                      NSView* aFilterView, NSPopUpButton* aFilterList)
     {      {
         NS_INIT_REFCNT();          NS_INIT_REFCNT();
Line 594  public: Line 608  public:
         mTmpFile = aFile;          mTmpFile = aFile;
         mURL = aURL;          mURL = aURL;
         mDocument = aDocument;          mDocument = aDocument;
           mPostData = aPostData;
         mBypassCache = aBypassCache;          mBypassCache = aBypassCache;
         mFilterView = aFilterView;          mFilterView = aFilterView;
         mFilterList = aFilterList;          mFilterList = aFilterList;
     }      }
                                       
    virtual ~nsHeaderSniffer() {};    virtual ~nsHeaderSniffer() 
     {
     };
   
     NS_DECL_ISUPPORTS      NS_DECL_ISUPPORTS
     NS_DECL_NSIWEBPROGRESSLISTENER      NS_DECL_NSIWEBPROGRESSLISTENER
Line 612  private: Line 629  private:
     nsCOMPtr<nsIFile> mTmpFile;      nsCOMPtr<nsIFile> mTmpFile;
     nsCOMPtr<nsIURI> mURL;      nsCOMPtr<nsIURI> mURL;
     nsCOMPtr<nsIDOMDocument> mDocument;      nsCOMPtr<nsIDOMDocument> mDocument;
       nsCOMPtr<nsIInputStream> mPostData;
     PRBool mBypassCache;      PRBool mBypassCache;
     nsCString mContentType;      nsCString mContentType;
     nsCString mContentDisposition;      nsCString mContentDisposition;
Line 796  void nsHeaderSniffer::PerformSave() Line 814  void nsHeaderSniffer::PerformSave()
     else      else
         sourceData = do_QueryInterface(mURL);          sourceData = do_QueryInterface(mURL);
                   
       nsCOMPtr<nsIWebBrowserPersist> webPersist(do_CreateInstance(persistContractID));
     ProgressDlgController* progressDialog = [[ProgressDlgController alloc] initWithWindowNibName: @"ProgressDialog"];      ProgressDlgController* progressDialog = [[ProgressDlgController alloc] initWithWindowNibName: @"ProgressDialog"];
  /*  [progressDialog setWebPersist: mPersist     [progressDialog setWebPersist: webPersist 
                     source: sourceData.get()                      source: sourceData.get()
                     destination: [savePanel filename]                      destination: [savePanel filename]
                     contentType: mContentType.get()                      contentType: mContentType.get()
                    postData: postData                    postData: mPostData
    */                                    bypassCache: mBypassCache];
                        
     [progressDialog showWindow: progressDialog];      [progressDialog showWindow: progressDialog];
 }  }
   
Line 888  nsHeaderSniffer::OnSecurityChange(nsIWeb Line 907  nsHeaderSniffer::OnSecurityChange(nsIWeb
   return self;    return self;
 }  }
   
   - (void)destroyWebBrowser
   {
     nsCOMPtr<nsIBaseWindow> baseWin = do_QueryInterface(_webBrowser);
     baseWin->Destroy();
   }
   
 - (void)dealloc   - (void)dealloc 
 {  {
   NS_RELEASE(_listener);    NS_RELEASE(_listener);
   NS_IF_RELEASE(_webBrowser);    NS_IF_RELEASE(_webBrowser);
  nsCocoaBrowserService::TermEmbedding();  
  nsCocoaBrowserService::BrowserClosed();
   
   [super dealloc];    [super dealloc];
 }  }
   
Line 1085  nsHeaderSniffer::OnSecurityChange(nsIWeb Line 1111  nsHeaderSniffer::OnSecurityChange(nsIWeb
   
 }  }
   
 const char* persistContractID = "@mozilla.org/embedding/browser/nsWebBrowserPersist;1";  
 const char* dirServiceContractID = "@mozilla.org/file/directory_service;1";  
   
 -(void) saveInternal: (nsIURI*)aURI  -(void) saveInternal: (nsIURI*)aURI
         withDocument: (nsIDOMDocument*)aDocument          withDocument: (nsIDOMDocument*)aDocument
         bypassCache: (BOOL)aBypassCache          bypassCache: (BOOL)aBypassCache
Line 1118  const char* dirServiceContractID = "@moz Line 1141  const char* dirServiceContractID = "@moz
     nsCOMPtr<nsIWebNavigation> webNav(do_QueryInterface(_webBrowser));      nsCOMPtr<nsIWebNavigation> webNav(do_QueryInterface(_webBrowser));
     nsCOMPtr<nsISHistory> sessionHistory;      nsCOMPtr<nsISHistory> sessionHistory;
     webNav->GetSessionHistory(getter_AddRefs(sessionHistory));      webNav->GetSessionHistory(getter_AddRefs(sessionHistory));
    nsCOMPtr<nsIHistoryEntry> entry;
     PRInt32 sindex;
     sessionHistory->GetIndex(&sindex);
     sessionHistory->GetEntryAtIndex(sindex, PR_FALSE, getter_AddRefs(entry));
     nsCOMPtr<nsISHEntry> shEntry(do_QueryInterface(entry));
     nsCOMPtr<nsIInputStream> postData;
     if (shEntry)
         shEntry->GetPostData(getter_AddRefs(postData));
     
     nsHeaderSniffer* sniffer = new nsHeaderSniffer(webPersist, tmpFile, aURI,       nsHeaderSniffer* sniffer = new nsHeaderSniffer(webPersist, tmpFile, aURI, 
                                                   aDocument, aBypassCache,                                                   aDocument, postData, aBypassCache,
                                                    aFilterView, aFilterList);                                                     aFilterView, aFilterList);
     if (!sniffer)      if (!sniffer)
         return;          return;
Line 1128  const char* dirServiceContractID = "@moz Line 1159  const char* dirServiceContractID = "@moz
     webPersist->SaveURI(aURI, nsnull, tmpFile);      webPersist->SaveURI(aURI, nsnull, tmpFile);
 }  }
   
   -(void)printDocument
   {
       nsCOMPtr<nsIDOMWindow> domWindow;
       _webBrowser->GetContentDOMWindow(getter_AddRefs(domWindow));
       nsCOMPtr<nsIInterfaceRequestor> ir(do_QueryInterface(domWindow));
       nsCOMPtr<nsIWebBrowserPrint> print;
       ir->GetInterface(NS_GET_IID(nsIWebBrowserPrint), getter_AddRefs(print));
       print->Print(nsnull, nsnull);
   }
   
 -(void)saveDocument: (NSView*)aFilterView filterList: (NSPopUpButton*)aFilterList  -(void)saveDocument: (NSView*)aFilterView filterList: (NSPopUpButton*)aFilterList
 {  {
     nsCOMPtr<nsIWebBrowserFocus> wbf(do_QueryInterface(_webBrowser));      nsCOMPtr<nsIWebBrowserFocus> wbf(do_QueryInterface(_webBrowser));
Line 1155  const char* dirServiceContractID = "@moz Line 1196  const char* dirServiceContractID = "@moz
           filterList: aFilterList];            filterList: aFilterList];
 }  }
   
   
   -(void)doCut
   {
       nsCOMPtr<nsIClipboardCommands> clipboard(do_GetInterface(_webBrowser));
       clipboard->CutSelection();
   }
   
   -(void)doCopy
   {
       nsCOMPtr<nsIClipboardCommands> clipboard(do_GetInterface(_webBrowser));
       clipboard->CopySelection();
   }
   
   -(void)doPaste
   {
       nsCOMPtr<nsIClipboardCommands> clipboard(do_GetInterface(_webBrowser));
       clipboard->Paste();
   }
   
   -(void)doClear
   {
       nsCOMPtr<nsIClipboardCommands> clipboard(do_GetInterface(_webBrowser));
       clipboard->SelectNone();
   }
   
   -(void)doSelectAll
   {
       nsCOMPtr<nsIClipboardCommands> clipboard(do_GetInterface(_webBrowser));
       clipboard->SelectAll();
   }
   
 @end  @end
   

Removed from v.1.2  
changed lines
  Added in v.1.11


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>