Bug 75599; enabling the infamous '-turbo' cmd line switch; makes nsINativeAppSupport scriptable, adds Win32 code to handle -turbo switch; and tweaks window close logic in navigator.js to 'cache' a browser window; r=cathleen, sr=alecf

git-svn-id: svn://10.0.0.236/trunk@95812 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
law%netscape.com
2001-05-23 06:04:39 +00:00
parent 7570ceb65c
commit 9b02e2ca3f
15 changed files with 509 additions and 78 deletions

View File

@@ -24,11 +24,11 @@
nsNativeAppSupportBase::nsNativeAppSupportBase()
: mRefCnt( 0 ),
mSplash( 0 ) {
mSplash( 0 ),
mServerMode( PR_FALSE ) {
}
nsNativeAppSupportBase::~nsNativeAppSupportBase() {
NS_IF_RELEASE( mSplash );
}
// Start answer defaults to OK.
@@ -57,7 +57,7 @@ nsNativeAppSupportBase::Quit() {
NS_IMETHODIMP
nsNativeAppSupportBase::ShowSplashScreen() {
if ( !mSplash ) {
nsresult rv = CreateSplashScreen( &mSplash );
nsresult rv = CreateSplashScreen( getter_AddRefs( mSplash ) );
}
if ( mSplash ) {
mSplash->Show();
@@ -70,14 +70,35 @@ NS_IMETHODIMP
nsNativeAppSupportBase::HideSplashScreen() {
// See if there is a splash screen object.
if ( mSplash ) {
// Unhook it.
nsCOMPtr<nsISplashScreen> splash = mSplash;
mSplash = 0;
// Hide it.
mSplash->Hide();
// Release it.
NS_RELEASE( mSplash );
splash->Hide();
}
return NS_OK;
}
NS_IMETHODIMP
nsNativeAppSupportBase::SetIsServerMode(PRBool aIsServerMode) {
mServerMode = aIsServerMode;
return NS_OK;
}
NS_IMETHODIMP
nsNativeAppSupportBase::GetIsServerMode(PRBool *aIsServerMode) {
NS_ENSURE_ARG( aIsServerMode );
*aIsServerMode = mServerMode;
return NS_OK;
}
NS_IMETHODIMP
nsNativeAppSupportBase::CacheBrowserWindow(nsIDOMWindow *aWindow, PRBool *aResult) {
NS_ENSURE_ARG( aResult );
*aResult = PR_FALSE;
return NS_OK;
}
// Default implementation doesn't have a splash screen.
NS_IMETHODIMP
nsNativeAppSupportBase::CreateSplashScreen( nsISplashScreen **splash ) {