Diff for /chimera/MyBrowserView.mm between versions 1.27 and 1.32

version 1.27, 2002/04/10 07:46:37 version 1.32, 2002/04/17 19:33:46
Line 46 Line 46
 #include "nsIChromeEventHandler.h"  #include "nsIChromeEventHandler.h"
 #include "nsPIDOMWindow.h"  #include "nsPIDOMWindow.h"
 #include "nsIDOMEventReceiver.h"  #include "nsIDOMEventReceiver.h"
   #include "nsIPrefBranch.h"
   #include "nsIPrefService.h"
   #include "nsCocoaBrowserService.h"
   
 #define DOCUMENT_DONE_STRING @"Document: Done"  #define DOCUMENT_DONE_STRING @"Document: Done"
 #define LOADING_STRING @"Loading..."  #define LOADING_STRING @"Loading..."
Line 125  static const char* ioServiceContractID = Line 128  static const char* ioServiceContractID =
   [status setStringValue:loadingStatus];    [status setStringValue:loadingStatus];
       
   mIsPrimary = YES;    mIsPrimary = YES;
 
   if ([[self window] isKeyWindow])
     [browserView setActive: YES];
   
   nsCOMPtr<nsIIOService> ioService(do_GetService(ioServiceContractID));    nsCOMPtr<nsIIOService> ioService(do_GetService(ioServiceContractID));
   if (!ioService)    if (!ioService)
     return;      return;
Line 303  static const char* ioServiceContractID = Line 309  static const char* ioServiceContractID =
 // Called when a context menu should be shown.  // Called when a context menu should be shown.
 - (void)onShowContextMenu:(int)flags domEvent:(nsIDOMEvent*)aEvent domNode:(nsIDOMNode*)aNode  - (void)onShowContextMenu:(int)flags domEvent:(nsIDOMEvent*)aEvent domNode:(nsIDOMNode*)aNode
 {  {
     [mWindowController onShowContextMenu: flags domEvent: aEvent domNode: aNode];
   }
   
   -(NSMenu*)getContextMenu
   {
     return [mWindowController getContextMenu];
 }  }
   
 - (void)offlineModeChanged: (NSNotification*)aNotification  - (void)offlineModeChanged: (NSNotification*)aNotification
Line 338  static const char* ioServiceContractID = Line 349  static const char* ioServiceContractID =
   [[self window] setFrame:frame display:YES];    [[self window] setFrame:frame display:YES];
 }  }
   
- (NSBrowserView*)createBrowserWindow:(unsigned int)mask#define NS_POPUP_BLOCK @"This Web site is attempting to open an unrequested popup window.  Navigator can \
{automatically prevent Web sites from opening popup advertisements.  Click OK to prevent all \
 unrequested popups (including this one) from opening."
 
 - (NSBrowserView*)createBrowserWindow:(unsigned int)aMask
 {
   nsCOMPtr<nsIPrefBranch> pref(do_GetService("@mozilla.org/preferences-service;1"));
   if (!pref)
     return NS_OK; // Something bad happened if we can't get prefs.
 
   PRBool showBlocker;
   pref->GetBoolPref("browser.popups.showPopupBlocker", &showBlocker);
 
   if (showBlocker) {
     nsCOMPtr<nsIDOMWindow> domWindow = getter_AddRefs([browserView getContentWindow]);
     nsCOMPtr<nsPIDOMWindow> piWindow(do_QueryInterface(domWindow));
     PRBool isUnrequested;
     piWindow->IsLoadingOrRunningTimeout(&isUnrequested);
     if (isUnrequested) {
       // A popup is being opened while the page is currently loading.  Offer to block the
       // popup.
       nsAlertController* controller = nsCocoaBrowserService::GetAlertController();
       BOOL confirm = [controller confirm: [self window] title: @"Unrequested Popup Detected"
                                 text: NS_POPUP_BLOCK];
 
       // This is a one-time dialog.
       pref->SetBoolPref("browser.popups.showPopupBlocker", PR_FALSE);
       
       if (confirm) {
         pref->SetBoolPref("dom.disable_open_during_load", PR_TRUE);
         pref->SetIntPref("dom.disable_open_click_delay", 1000);
       }
 
       nsCOMPtr<nsIPrefService> prefService(do_QueryInterface(pref));
       prefService->SavePrefFile(nsnull);
       
       if (confirm)
         return nil;
     }
   }
   
   BrowserWindowController* controller = [[BrowserWindowController alloc] initWithWindowNibName: @"BrowserWindow"];    BrowserWindowController* controller = [[BrowserWindowController alloc] initWithWindowNibName: @"BrowserWindow"];
     [controller setChromeMask: aMask];
   [controller disableAutosave]; // The Web page opened this window, so we don't ever use its settings.    [controller disableAutosave]; // The Web page opened this window, so we don't ever use its settings.
   [controller enterModalSession];    [controller enterModalSession];
     [[[controller getMyBrowserView] getBrowserView] setActive: YES];
   return [[controller getMyBrowserView] getBrowserView];    return [[controller getMyBrowserView] getBrowserView];
 }  }
   

Removed from v.1.27  
changed lines
  Added in v.1.32


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