diff --git a/mozilla/embedding/browser/webBrowser/nsIWebBrowserChrome.idl b/mozilla/embedding/browser/webBrowser/nsIWebBrowserChrome.idl index 937ea5579d1..6a39d1f07ad 100644 --- a/mozilla/embedding/browser/webBrowser/nsIWebBrowserChrome.idl +++ b/mozilla/embedding/browser/webBrowser/nsIWebBrowserChrome.idl @@ -73,6 +73,9 @@ interface nsIWebBrowserChrome : nsISupports const unsigned long CHROME_WITH_SIZE = 0x00001000; const unsigned long CHROME_WITH_POSITION = 0x00002000; + // special cases + const unsigned long CHROME_WINDOW_MIN = 0x00004000; + const unsigned long CHROME_WINDOW_RAISED = 0x02000000; const unsigned long CHROME_WINDOW_LOWERED = 0x04000000; const unsigned long CHROME_CENTER_SCREEN = 0x08000000; diff --git a/mozilla/embedding/components/windowwatcher/src/nsWindowWatcher.cpp b/mozilla/embedding/components/windowwatcher/src/nsWindowWatcher.cpp index 657904330a6..706eaf7520b 100644 --- a/mozilla/embedding/components/windowwatcher/src/nsWindowWatcher.cpp +++ b/mozilla/embedding/components/windowwatcher/src/nsWindowWatcher.cpp @@ -1037,6 +1037,8 @@ PRUint32 nsWindowWatcher::CalculateChromeFlags(const char *aFeatures, ? nsIWebBrowserChrome::CHROME_SCROLLBARS : 0; chromeFlags |= WinHasOption(aFeatures, "resizable", 0, &presenceFlag) ? nsIWebBrowserChrome::CHROME_WINDOW_RESIZE : 0; + chromeFlags |= WinHasOption(aFeatures, "minimizable", 0, &presenceFlag) + ? nsIWebBrowserChrome::CHROME_WINDOW_MIN : 0; /* OK. Normal browser windows, in spite of a stated pattern of turning off diff --git a/mozilla/xpfe/appshell/src/nsAppShellService.cpp b/mozilla/xpfe/appshell/src/nsAppShellService.cpp index 07d22346eaa..bbea27424d7 100644 --- a/mozilla/xpfe/appshell/src/nsAppShellService.cpp +++ b/mozilla/xpfe/appshell/src/nsAppShellService.cpp @@ -607,6 +607,10 @@ nsAppShellService::JustCreateTopWindow(nsIXULWindow *aParent, if (!(aChromeMask & nsIWebBrowserChrome::CHROME_OPENAS_DIALOG)) widgetInitData.mBorderStyle = NS_STATIC_CAST(enum nsBorderStyle, widgetInitData.mBorderStyle | eBorderStyle_minimize | eBorderStyle_maximize | eBorderStyle_menu); } + // Min button only? + if (aChromeMask & nsIWebBrowserChrome::CHROME_WINDOW_MIN) { + widgetInitData.mBorderStyle = NS_STATIC_CAST(enum nsBorderStyle, widgetInitData.mBorderStyle | eBorderStyle_minimize ); + } } if (aChromeMask & nsIWebBrowserChrome::CHROME_SCROLLBARS) diff --git a/mozilla/xpfe/components/ucth/src/nsUnknownContentTypeHandler.cpp b/mozilla/xpfe/components/ucth/src/nsUnknownContentTypeHandler.cpp index 6b838d55177..cbb72e772be 100644 --- a/mozilla/xpfe/components/ucth/src/nsUnknownContentTypeHandler.cpp +++ b/mozilla/xpfe/components/ucth/src/nsUnknownContentTypeHandler.cpp @@ -211,7 +211,7 @@ nsUnknownContentTypeHandler::ShowProgressDialog(nsIHelperAppLauncher *aLauncher, "sss%ip", "chrome://global/content/helperAppDldProgress.xul", "_blank", - "chrome,titlebar", + "chrome,titlebar,minimizable", (const nsIID*)(&NS_GET_IID(nsIHelperAppLauncher)), (nsISupports*)aLauncher ); if ( argv ) { diff --git a/mozilla/xpfe/components/xfer/src/nsStreamXferOp.cpp b/mozilla/xpfe/components/xfer/src/nsStreamXferOp.cpp index fc02caaa5a6..ded9c360b8a 100644 --- a/mozilla/xpfe/components/xfer/src/nsStreamXferOp.cpp +++ b/mozilla/xpfe/components/xfer/src/nsStreamXferOp.cpp @@ -94,7 +94,7 @@ nsStreamXferOp::OpenDialog( nsIDOMWindowInternal *parent ) { "sss%ip", "chrome://global/content/downloadProgress.xul", "_blank", - "chrome,titlebar", + "chrome,titlebar,minimizable", (const nsIID*)(&NS_GET_IID(nsIStreamTransferOperation)), (nsISupports*)(nsIStreamTransferOperation*)this ); if ( argv ) {