diff --git a/layout/reftests/forms/input/checkbox/gtk-theme-width-height-ref.html b/layout/reftests/forms/input/checkbox/gtk-theme-width-height-ref.html
deleted file mode 100644
index 380f52286417..000000000000
--- a/layout/reftests/forms/input/checkbox/gtk-theme-width-height-ref.html
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
-
- Testcase for bug 932506
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/layout/reftests/forms/input/checkbox/gtk-theme-width-height.html b/layout/reftests/forms/input/checkbox/gtk-theme-width-height.html
deleted file mode 100644
index 456864e9533a..000000000000
--- a/layout/reftests/forms/input/checkbox/gtk-theme-width-height.html
+++ /dev/null
@@ -1,30 +0,0 @@
-
-
-
-
- Testcase for bug 932506
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/layout/reftests/forms/input/checkbox/reftest.list b/layout/reftests/forms/input/checkbox/reftest.list
index 058f1b01fddd..5d4b9b428797 100644
--- a/layout/reftests/forms/input/checkbox/reftest.list
+++ b/layout/reftests/forms/input/checkbox/reftest.list
@@ -11,4 +11,3 @@ skip-if(B2G) fails-if(Android) == radio-stretched.html radio-stretched-ref.html
!= indeterminate-native-checked.html indeterminate-native-checked-notref.html
!= indeterminate-native-unchecked.html indeterminate-native-unchecked-notref.html
== indeterminate-selector.html indeterminate-selector-ref.html
-skip-if(!gtk2Widget) == gtk-theme-width-height.html gtk-theme-width-height-ref.html
diff --git a/layout/reftests/forms/input/radio/gtk-theme-width-height-ref.html b/layout/reftests/forms/input/radio/gtk-theme-width-height-ref.html
deleted file mode 100644
index 65b31236c988..000000000000
--- a/layout/reftests/forms/input/radio/gtk-theme-width-height-ref.html
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
-
- Testcase for bug 932506
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/layout/reftests/forms/input/radio/gtk-theme-width-height.html b/layout/reftests/forms/input/radio/gtk-theme-width-height.html
deleted file mode 100644
index 3c336f2c89de..000000000000
--- a/layout/reftests/forms/input/radio/gtk-theme-width-height.html
+++ /dev/null
@@ -1,30 +0,0 @@
-
-
-
-
- Testcase for bug 932506
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/layout/reftests/forms/input/radio/reftest.list b/layout/reftests/forms/input/radio/reftest.list
index 3de124197f3b..48d0cd10a40e 100644
--- a/layout/reftests/forms/input/radio/reftest.list
+++ b/layout/reftests/forms/input/radio/reftest.list
@@ -5,4 +5,3 @@
!= checked-notref.html about:blank
!= checked-native.html about:blank
!= checked-native-notref.html about:blank
-skip-if(!gtk2Widget) == gtk-theme-width-height.html gtk-theme-width-height-ref.html
diff --git a/widget/gtk/gtk2drawing.c b/widget/gtk/gtk2drawing.c
index 803793e95916..7c8413d02c25 100644
--- a/widget/gtk/gtk2drawing.c
+++ b/widget/gtk/gtk2drawing.c
@@ -1046,12 +1046,13 @@ moz_gtk_toggle_paint(GdkDrawable* drawable, GdkRectangle* rect,
w = gCheckboxWidget;
}
- NS_ASSERTION(rect->width >= indicator_size &&
- rect->height >= indicator_size,
+ NS_ASSERTION(rect->width == indicator_size,
"GetMinimumWidgetSize was ignored");
-
- // Paint it center aligned in the rect.
- x = rect->x + (rect->width - indicator_size) / 2;
+ /*
+ * vertically center in the box, since XUL sometimes ignores our
+ * GetMinimumWidgetSize in the vertical dimension
+ */
+ x = rect->x;
y = rect->y + (rect->height - indicator_size) / 2;
width = indicator_size;
height = indicator_size;
diff --git a/widget/gtk/gtk3drawing.c b/widget/gtk/gtk3drawing.c
index fba6e9028a4d..77c3a807c399 100644
--- a/widget/gtk/gtk3drawing.c
+++ b/widget/gtk/gtk3drawing.c
@@ -958,12 +958,13 @@ moz_gtk_toggle_paint(cairo_t *cr, GdkRectangle* rect,
w = gCheckboxWidget;
}
- NS_ASSERTION(rect->width >= indicator_size &&
- rect->height >= indicator_size,
+ NS_ASSERTION(rect->width == indicator_size,
"GetMinimumWidgetSize was ignored");
-
- // Paint it center aligned in the rect.
- x = rect->x + (rect->width - indicator_size) / 2;
+ /*
+ * vertically center in the box, since XUL sometimes ignores our
+ * GetMinimumWidgetSize in the vertical dimension
+ */
+ x = rect->x;
y = rect->y + (rect->height - indicator_size) / 2;
width = indicator_size;
height = indicator_size;
diff --git a/widget/gtk/nsNativeThemeGTK.cpp b/widget/gtk/nsNativeThemeGTK.cpp
index 4c43b77cedc4..5c4833063342 100644
--- a/widget/gtk/nsNativeThemeGTK.cpp
+++ b/widget/gtk/nsNativeThemeGTK.cpp
@@ -1186,6 +1186,7 @@ nsNativeThemeGTK::GetMinimumWidgetSize(nsRenderingContext* aContext,
// Include space for the indicator and the padding around it.
aResult->width = indicator_size;
aResult->height = indicator_size;
+ *aIsOverridable = false;
}
break;
case NS_THEME_TOOLBAR_BUTTON_DROPDOWN: