diff --git a/mozilla/gfx/src/beos/nsGfxFactoryBeOS.cpp b/mozilla/gfx/src/beos/nsGfxFactoryBeOS.cpp index a257437a510..c1948bbd4f9 100644 --- a/mozilla/gfx/src/beos/nsGfxFactoryBeOS.cpp +++ b/mozilla/gfx/src/beos/nsGfxFactoryBeOS.cpp @@ -114,7 +114,7 @@ static NS_IMETHODIMP nsScriptableRegionConstructor(nsISupports *aOuter, REFNSIID return rv; } -static nsModuleComponentInfo components[] = +static const nsModuleComponentInfo components[] = { { "BeOS Font Metrics", NS_FONT_METRICS_CID, diff --git a/mozilla/gfx/src/gtk/nsGfxFactoryGTK.cpp b/mozilla/gfx/src/gtk/nsGfxFactoryGTK.cpp index 5db257c7a9a..5b7f038f385 100644 --- a/mozilla/gfx/src/gtk/nsGfxFactoryGTK.cpp +++ b/mozilla/gfx/src/gtk/nsGfxFactoryGTK.cpp @@ -125,7 +125,7 @@ static NS_IMETHODIMP nsScriptableRegionConstructor(nsISupports *aOuter, REFNSIID return rv; } -static nsModuleComponentInfo components[] = +static const nsModuleComponentInfo components[] = { { "Gtk Font Metrics", NS_FONT_METRICS_CID, diff --git a/mozilla/gfx/src/mac/nsGfxFactoryMac.cpp b/mozilla/gfx/src/mac/nsGfxFactoryMac.cpp index 3daa7ae9be6..221e7b2a63f 100644 --- a/mozilla/gfx/src/mac/nsGfxFactoryMac.cpp +++ b/mozilla/gfx/src/mac/nsGfxFactoryMac.cpp @@ -99,7 +99,7 @@ nsScriptableRegionConstructor(nsISupports* aOuter, REFNSIID aIID, void** aResult return result->QueryInterface(aIID, aResult); } -static nsModuleComponentInfo components[] = +static const nsModuleComponentInfo components[] = { { "nsFontMetrics", NS_FONT_METRICS_CID, diff --git a/mozilla/gfx/src/mac/nsNativeThemeMac.cpp b/mozilla/gfx/src/mac/nsNativeThemeMac.cpp index eb5d8c7715d..063ae303d32 100644 --- a/mozilla/gfx/src/mac/nsNativeThemeMac.cpp +++ b/mozilla/gfx/src/mac/nsNativeThemeMac.cpp @@ -815,7 +815,8 @@ nsNativeThemeMac::GetWidgetBorder(nsIDeviceContext* aContext, case NS_THEME_BUTTON: if ( OnMacOSX() ) - aResult->SizeTo(14,2,14,2); // 14px left/right endcaps in aqua. + aResult->SizeTo(kAquaPushButtonEndcaps, kAquaPushButtonTopBottom, + kAquaPushButtonEndcaps, kAquaPushButtonTopBottom); else aResult->SizeTo(5,2,5,2); // 5px for AGA break; @@ -826,7 +827,8 @@ nsNativeThemeMac::GetWidgetBorder(nsIDeviceContext* aContext, case NS_THEME_DROPDOWN: if ( OnMacOSX() ) - aResult->SizeTo(9,2,20,2); // 9px left endcaps in aqua, bigger right border for button + aResult->SizeTo(kAquaDropdownLeftEndcap, kAquaPushButtonTopBottom, + kAquaDropwdonRightEndcap, kAquaPushButtonTopBottom); else aResult->SizeTo(3,0,3,0); // 3px for AGA break; @@ -867,6 +869,14 @@ nsNativeThemeMac::GetMinimumWidgetSize(nsIRenderingContext* aContext, nsIFrame* #if TARGET_CARBON switch ( aWidgetType ) { + case NS_THEME_BUTTON: + { + SInt32 buttonHeight = 0; + ::GetThemeMetric(kThemeMetricPushButtonHeight, &buttonHeight); + aResult->SizeTo(kAquaPushButtonEndcaps*2, buttonHeight); + break; + } + case NS_THEME_CHECKBOX: { SInt32 boxHeight = 0, boxWidth = 0; diff --git a/mozilla/gfx/src/mac/nsNativeThemeMac.h b/mozilla/gfx/src/mac/nsNativeThemeMac.h index ad16d55693e..c7debf828da 100644 --- a/mozilla/gfx/src/mac/nsNativeThemeMac.h +++ b/mozilla/gfx/src/mac/nsNativeThemeMac.h @@ -75,6 +75,15 @@ public: protected: + // Some widths and margins. You'd think there would be metrics for these, but no. + enum { + kAquaPushButtonEndcaps = 14, + kAquaPushButtonTopBottom = 2, + + kAquaDropdownLeftEndcap = 9, + kAquaDropwdonRightEndcap = 20 // wider on right to encompass the button + }; + nsresult GetSystemColor(PRUint8 aWidgetType, nsILookAndFeel::nsColorID& aColorID); nsresult GetSystemFont(PRUint8 aWidgetType, nsSystemFontID& aFont); diff --git a/mozilla/gfx/src/os2/nsGfxFactoryOS2.cpp b/mozilla/gfx/src/os2/nsGfxFactoryOS2.cpp index fc189a9a69a..2adb7b43062 100644 --- a/mozilla/gfx/src/os2/nsGfxFactoryOS2.cpp +++ b/mozilla/gfx/src/os2/nsGfxFactoryOS2.cpp @@ -114,7 +114,7 @@ static NS_IMETHODIMP nsScriptableRegionConstructor(nsISupports *aOuter, REFNSIID return rv; } -static nsModuleComponentInfo components[] = +static const nsModuleComponentInfo components[] = { { "OS/2 Font Metrics", NS_FONT_METRICS_CID, diff --git a/mozilla/gfx/src/photon/nsGfxFactoryPh.cpp b/mozilla/gfx/src/photon/nsGfxFactoryPh.cpp index 9524ead71f6..8dc563187ca 100644 --- a/mozilla/gfx/src/photon/nsGfxFactoryPh.cpp +++ b/mozilla/gfx/src/photon/nsGfxFactoryPh.cpp @@ -114,7 +114,7 @@ static nsresult nsScriptableRegionConstructor(nsISupports *aOuter, REFNSIID aIID return rv; } -static nsModuleComponentInfo components[] = +static const nsModuleComponentInfo components[] = { { "Ph Font Metrics", NS_FONT_METRICS_CID, diff --git a/mozilla/gfx/src/ps/nsGfxFactoryPS.cpp b/mozilla/gfx/src/ps/nsGfxFactoryPS.cpp index dd4690b7456..06d358060ef 100644 --- a/mozilla/gfx/src/ps/nsGfxFactoryPS.cpp +++ b/mozilla/gfx/src/ps/nsGfxFactoryPS.cpp @@ -46,7 +46,7 @@ NS_GENERIC_FACTORY_CONSTRUCTOR(nsDeviceContextPS) -static nsModuleComponentInfo components[] = +static const nsModuleComponentInfo components[] = { { "GFX Postscript Device Context", NS_DEVICECONTEXTPS_CID, diff --git a/mozilla/gfx/src/qt/nsGfxFactoryQT.cpp b/mozilla/gfx/src/qt/nsGfxFactoryQT.cpp index 278bca5d127..e173fadfbbb 100644 --- a/mozilla/gfx/src/qt/nsGfxFactoryQT.cpp +++ b/mozilla/gfx/src/qt/nsGfxFactoryQT.cpp @@ -101,7 +101,7 @@ static nsresult nsScriptableRegionConstructor(nsISupports *aOuter,REFNSIID aIID, return rv; } -static nsModuleComponentInfo components[] = +static const nsModuleComponentInfo components[] = { { "Qt Font Metrics", NS_FONT_METRICS_CID, diff --git a/mozilla/gfx/src/windows/nsGfxFactoryWin.cpp b/mozilla/gfx/src/windows/nsGfxFactoryWin.cpp index 0c45c6ac024..f4cbd092f71 100644 --- a/mozilla/gfx/src/windows/nsGfxFactoryWin.cpp +++ b/mozilla/gfx/src/windows/nsGfxFactoryWin.cpp @@ -143,7 +143,7 @@ nsScriptableRegionConstructor(nsISupports* aOuter, REFNSIID aIID, void** aResult return rv; } -static nsModuleComponentInfo components[] = +static const nsModuleComponentInfo components[] = { { "nsFontMetricsWin", NS_FONT_METRICS_CID, diff --git a/mozilla/gfx/src/xlib/nsGfxFactoryXlib.cpp b/mozilla/gfx/src/xlib/nsGfxFactoryXlib.cpp index 571a2092cfb..10964313660 100644 --- a/mozilla/gfx/src/xlib/nsGfxFactoryXlib.cpp +++ b/mozilla/gfx/src/xlib/nsGfxFactoryXlib.cpp @@ -113,7 +113,7 @@ static nsresult nsScriptableRegionConstructor(nsISupports *aOuter, REFNSIID aIID return rv; } -static nsModuleComponentInfo components[] = +static const nsModuleComponentInfo components[] = { { "Xlib Font Metrics", NS_FONT_METRICS_CID, diff --git a/mozilla/gfx/src/xprint/nsGfxFactoryXP.cpp b/mozilla/gfx/src/xprint/nsGfxFactoryXP.cpp index 2c6a7f2420e..6081a72aafa 100644 --- a/mozilla/gfx/src/xprint/nsGfxFactoryXP.cpp +++ b/mozilla/gfx/src/xprint/nsGfxFactoryXP.cpp @@ -50,7 +50,7 @@ NS_GENERIC_FACTORY_CONSTRUCTOR(nsDeviceContextXp) -static nsModuleComponentInfo components[] = +static const nsModuleComponentInfo components[] = { { "GFX Xprint Device Context", NS_DEVICECONTEXTXP_CID,