diff --git a/content/html/style/src/nsCSSStyleRule.cpp b/content/html/style/src/nsCSSStyleRule.cpp
index e2917cc62d4b..7eb2e08fd41f 100644
--- a/content/html/style/src/nsCSSStyleRule.cpp
+++ b/content/html/style/src/nsCSSStyleRule.cpp
@@ -589,20 +589,23 @@ void CSSStyleRuleImpl::MapStyleInto(nsIStyleContext* aContext, nsIPresContext* a
const nsFont& normal = aPresContext->GetDefaultFont();
const nsFont& normalFixed = aPresContext->GetDefaultFixedFont();
+ PRInt32 scaler = aPresContext->GetFontScaler();
+ float scaleFactor = nsStyleUtil::GetScalingFactor(scaler);
+
if ((NS_STYLE_FONT_SIZE_XXSMALL <= value) &&
(value <= NS_STYLE_FONT_SIZE_XXLARGE)) {
- font->mFont.size = nsStyleUtil::CalcFontPointSize(value + 1, (PRInt32)normal.size);
- font->mFixedFont.size = nsStyleUtil::CalcFontPointSize(value + 1, (PRInt32)normalFixed.size);
+ font->mFont.size = nsStyleUtil::CalcFontPointSize(value + 1, (PRInt32)normal.size, scaleFactor);
+ font->mFixedFont.size = nsStyleUtil::CalcFontPointSize(value + 1, (PRInt32)normalFixed.size, scaleFactor);
}
else if (NS_STYLE_FONT_SIZE_LARGER == value) {
- PRInt32 index = nsStyleUtil::FindNextLargerFontSize(parentFont->mFont.size, (PRInt32)normal.size);
- font->mFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normal.size);
- font->mFixedFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normalFixed.size);
+ PRInt32 index = nsStyleUtil::FindNextLargerFontSize(parentFont->mFont.size, (PRInt32)normal.size, scaleFactor);
+ font->mFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normal.size, scaleFactor);
+ font->mFixedFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normalFixed.size, scaleFactor);
}
else if (NS_STYLE_FONT_SIZE_SMALLER == value) {
- PRInt32 index = nsStyleUtil::FindNextSmallerFontSize(parentFont->mFont.size, (PRInt32)normal.size);
- font->mFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normal.size);
- font->mFixedFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normalFixed.size);
+ PRInt32 index = nsStyleUtil::FindNextSmallerFontSize(parentFont->mFont.size, (PRInt32)normal.size, scaleFactor);
+ font->mFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normal.size, scaleFactor);
+ font->mFixedFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normalFixed.size, scaleFactor);
}
// this does NOT explicitly set font size
}
diff --git a/content/html/style/src/nsStyleUtil.cpp b/content/html/style/src/nsStyleUtil.cpp
index 7a09a40b7874..50e443f4b255 100644
--- a/content/html/style/src/nsStyleUtil.cpp
+++ b/content/html/style/src/nsStyleUtil.cpp
@@ -21,7 +21,41 @@
#include "nsIStyleContext.h"
#include "nsStyleConsts.h"
-nscoord nsStyleUtil::CalcFontPointSize(PRInt32 aHTMLSize, PRInt32 aBasePointSize)
+#define POSITIVE_SCALE_FACTOR 1.10 /* 10% */
+#define NEGATIVE_SCALE_FACTOR .90 /* 10% */
+
+/*
+ * Return the scaling percentage given a font scaler
+ * Lifted from layutil.c
+ */
+float nsStyleUtil::GetScalingFactor(PRInt32 aScaler)
+{
+ double scale = 1.0;
+ double mult;
+ PRInt32 count;
+
+ if(aScaler < 0) {
+ count = -aScaler;
+ mult = NEGATIVE_SCALE_FACTOR;
+ }
+ else {
+ count = aScaler;
+ mult = POSITIVE_SCALE_FACTOR;
+ }
+
+ /* use the percentage scaling factor to the power of the pref */
+ while(count--) {
+ scale *= mult;
+ }
+
+ return scale;
+}
+
+/*
+ * Lifted from winfe/cxdc.cpp
+ */
+nscoord nsStyleUtil::CalcFontPointSize(PRInt32 aHTMLSize, PRInt32 aBasePointSize,
+ float aScalingFactor)
{ // lifted directly from Nav 5.0 code to replicate rounding errors
double dFontSize;
@@ -54,23 +88,28 @@ nscoord nsStyleUtil::CalcFontPointSize(PRInt32 aHTMLSize, PRInt32 aBasePointSize
default:
dFontSize = aBasePointSize;
}
+
+ dFontSize *= aScalingFactor;
+
return (nscoord)dFontSize;
}
-PRInt32 nsStyleUtil::FindNextSmallerFontSize(nscoord aFontSize, PRInt32 aBasePointSize)
+PRInt32 nsStyleUtil::FindNextSmallerFontSize(nscoord aFontSize, PRInt32 aBasePointSize,
+ float aScalingFactor)
{
PRInt32 index;
for (index = 7; index > 1; index--)
- if (aFontSize > nsStyleUtil::CalcFontPointSize(index, aBasePointSize))
+ if (aFontSize > nsStyleUtil::CalcFontPointSize(index, aBasePointSize, aScalingFactor))
break;
return index;
}
-PRInt32 nsStyleUtil::FindNextLargerFontSize(nscoord aFontSize, PRInt32 aBasePointSize)
+PRInt32 nsStyleUtil::FindNextLargerFontSize(nscoord aFontSize, PRInt32 aBasePointSize,
+ float aScalingFactor)
{
PRInt32 index;
for (index = 1; index < 7; index++)
- if (aFontSize < nsStyleUtil::CalcFontPointSize(index, aBasePointSize))
+ if (aFontSize < nsStyleUtil::CalcFontPointSize(index, aBasePointSize, aScalingFactor))
break;
return index;
}
diff --git a/content/shared/src/nsStyleUtil.cpp b/content/shared/src/nsStyleUtil.cpp
index 7a09a40b7874..50e443f4b255 100644
--- a/content/shared/src/nsStyleUtil.cpp
+++ b/content/shared/src/nsStyleUtil.cpp
@@ -21,7 +21,41 @@
#include "nsIStyleContext.h"
#include "nsStyleConsts.h"
-nscoord nsStyleUtil::CalcFontPointSize(PRInt32 aHTMLSize, PRInt32 aBasePointSize)
+#define POSITIVE_SCALE_FACTOR 1.10 /* 10% */
+#define NEGATIVE_SCALE_FACTOR .90 /* 10% */
+
+/*
+ * Return the scaling percentage given a font scaler
+ * Lifted from layutil.c
+ */
+float nsStyleUtil::GetScalingFactor(PRInt32 aScaler)
+{
+ double scale = 1.0;
+ double mult;
+ PRInt32 count;
+
+ if(aScaler < 0) {
+ count = -aScaler;
+ mult = NEGATIVE_SCALE_FACTOR;
+ }
+ else {
+ count = aScaler;
+ mult = POSITIVE_SCALE_FACTOR;
+ }
+
+ /* use the percentage scaling factor to the power of the pref */
+ while(count--) {
+ scale *= mult;
+ }
+
+ return scale;
+}
+
+/*
+ * Lifted from winfe/cxdc.cpp
+ */
+nscoord nsStyleUtil::CalcFontPointSize(PRInt32 aHTMLSize, PRInt32 aBasePointSize,
+ float aScalingFactor)
{ // lifted directly from Nav 5.0 code to replicate rounding errors
double dFontSize;
@@ -54,23 +88,28 @@ nscoord nsStyleUtil::CalcFontPointSize(PRInt32 aHTMLSize, PRInt32 aBasePointSize
default:
dFontSize = aBasePointSize;
}
+
+ dFontSize *= aScalingFactor;
+
return (nscoord)dFontSize;
}
-PRInt32 nsStyleUtil::FindNextSmallerFontSize(nscoord aFontSize, PRInt32 aBasePointSize)
+PRInt32 nsStyleUtil::FindNextSmallerFontSize(nscoord aFontSize, PRInt32 aBasePointSize,
+ float aScalingFactor)
{
PRInt32 index;
for (index = 7; index > 1; index--)
- if (aFontSize > nsStyleUtil::CalcFontPointSize(index, aBasePointSize))
+ if (aFontSize > nsStyleUtil::CalcFontPointSize(index, aBasePointSize, aScalingFactor))
break;
return index;
}
-PRInt32 nsStyleUtil::FindNextLargerFontSize(nscoord aFontSize, PRInt32 aBasePointSize)
+PRInt32 nsStyleUtil::FindNextLargerFontSize(nscoord aFontSize, PRInt32 aBasePointSize,
+ float aScalingFactor)
{
PRInt32 index;
for (index = 1; index < 7; index++)
- if (aFontSize < nsStyleUtil::CalcFontPointSize(index, aBasePointSize))
+ if (aFontSize < nsStyleUtil::CalcFontPointSize(index, aBasePointSize, aScalingFactor))
break;
return index;
}
diff --git a/layout/html/forms/src/nsInputButton.cpp b/layout/html/forms/src/nsInputButton.cpp
index 6256c3706da7..c658af8fb337 100644
--- a/layout/html/forms/src/nsInputButton.cpp
+++ b/layout/html/forms/src/nsInputButton.cpp
@@ -569,8 +569,10 @@ nsInputButtonFrame::PostCreateWidget(nsIPresContext* aPresContext, nsIView *aVie
widgetFont.name = "Arail"; // XXX windows specific font
widgetFont.weight = NS_FONT_WEIGHT_NORMAL;
const nsFont& normal = aPresContext->GetDefaultFont();
- PRInt32 fontIndex = nsStyleUtil::FindNextSmallerFontSize(widgetFont.size, (PRInt32)normal.size);
- widgetFont.size = nsStyleUtil::CalcFontPointSize(fontIndex, (PRInt32)normal.size);
+ PRInt32 scaler = aPresContext->GetFontScaler();
+ float scaleFactor = nsStyleUtil::GetScalingFactor(scaler);
+ PRInt32 fontIndex = nsStyleUtil::FindNextSmallerFontSize(widgetFont.size, (PRInt32)normal.size, scaleFactor);
+ widgetFont.size = nsStyleUtil::CalcFontPointSize(fontIndex, (PRInt32)normal.size, scaleFactor);
button->SetFont(widgetFont);
}
}
diff --git a/layout/html/forms/src/nsSelect.cpp b/layout/html/forms/src/nsSelect.cpp
index eb17bd4fff8a..b911c8e09d51 100644
--- a/layout/html/forms/src/nsSelect.cpp
+++ b/layout/html/forms/src/nsSelect.cpp
@@ -337,8 +337,10 @@ nsSelectFrame::PostCreateWidget(nsIPresContext* aPresContext, nsIView *aView)
widgetFont.name = "Arail"; // XXX windows specific font
widgetFont.weight = NS_FONT_WEIGHT_NORMAL;
const nsFont& normal = aPresContext->GetDefaultFont();
- PRInt32 fontIndex = nsStyleUtil::FindNextSmallerFontSize(widgetFont.size, (PRInt32)normal.size);
- widgetFont.size = nsStyleUtil::CalcFontPointSize(fontIndex, (PRInt32)normal.size);
+ PRInt32 scaler = aPresContext->GetFontScaler();
+ float scaleFactor = nsStyleUtil::GetScalingFactor(scaler);
+ PRInt32 fontIndex = nsStyleUtil::FindNextSmallerFontSize(widgetFont.size, (PRInt32)normal.size, scaleFactor);
+ widgetFont.size = nsStyleUtil::CalcFontPointSize(fontIndex, (PRInt32)normal.size, scaleFactor);
list->SetFont(widgetFont);
}
diff --git a/layout/html/style/public/nsStyleUtil.h b/layout/html/style/public/nsStyleUtil.h
index 75a750cf7b0c..45e7ac116424 100644
--- a/layout/html/style/public/nsStyleUtil.h
+++ b/layout/html/style/public/nsStyleUtil.h
@@ -27,10 +27,15 @@ struct nsStyleColor;
// Style utility functions
class nsStyleUtil {
public:
+
+ static float GetScalingFactor(PRInt32 aScaler);
- static nscoord CalcFontPointSize(PRInt32 aHTMLSize, PRInt32 aBasePointSize);
- static PRInt32 FindNextSmallerFontSize(nscoord aFontSize, PRInt32 aBasePointSize);
- static PRInt32 FindNextLargerFontSize(nscoord aFontSize, PRInt32 aBasePointSize);
+ static nscoord CalcFontPointSize(PRInt32 aHTMLSize, PRInt32 aBasePointSize,
+ float aScalingFactor);
+ static PRInt32 FindNextSmallerFontSize(nscoord aFontSize, PRInt32 aBasePointSize,
+ float aScalingFactor);
+ static PRInt32 FindNextLargerFontSize(nscoord aFontSize, PRInt32 aBasePointSize,
+ float aScalingFactor);
static const nsStyleColor* FindNonTransparentBackground(nsIStyleContext* aContext);
};
diff --git a/layout/html/style/src/nsCSSStyleRule.cpp b/layout/html/style/src/nsCSSStyleRule.cpp
index e2917cc62d4b..7eb2e08fd41f 100644
--- a/layout/html/style/src/nsCSSStyleRule.cpp
+++ b/layout/html/style/src/nsCSSStyleRule.cpp
@@ -589,20 +589,23 @@ void CSSStyleRuleImpl::MapStyleInto(nsIStyleContext* aContext, nsIPresContext* a
const nsFont& normal = aPresContext->GetDefaultFont();
const nsFont& normalFixed = aPresContext->GetDefaultFixedFont();
+ PRInt32 scaler = aPresContext->GetFontScaler();
+ float scaleFactor = nsStyleUtil::GetScalingFactor(scaler);
+
if ((NS_STYLE_FONT_SIZE_XXSMALL <= value) &&
(value <= NS_STYLE_FONT_SIZE_XXLARGE)) {
- font->mFont.size = nsStyleUtil::CalcFontPointSize(value + 1, (PRInt32)normal.size);
- font->mFixedFont.size = nsStyleUtil::CalcFontPointSize(value + 1, (PRInt32)normalFixed.size);
+ font->mFont.size = nsStyleUtil::CalcFontPointSize(value + 1, (PRInt32)normal.size, scaleFactor);
+ font->mFixedFont.size = nsStyleUtil::CalcFontPointSize(value + 1, (PRInt32)normalFixed.size, scaleFactor);
}
else if (NS_STYLE_FONT_SIZE_LARGER == value) {
- PRInt32 index = nsStyleUtil::FindNextLargerFontSize(parentFont->mFont.size, (PRInt32)normal.size);
- font->mFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normal.size);
- font->mFixedFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normalFixed.size);
+ PRInt32 index = nsStyleUtil::FindNextLargerFontSize(parentFont->mFont.size, (PRInt32)normal.size, scaleFactor);
+ font->mFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normal.size, scaleFactor);
+ font->mFixedFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normalFixed.size, scaleFactor);
}
else if (NS_STYLE_FONT_SIZE_SMALLER == value) {
- PRInt32 index = nsStyleUtil::FindNextSmallerFontSize(parentFont->mFont.size, (PRInt32)normal.size);
- font->mFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normal.size);
- font->mFixedFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normalFixed.size);
+ PRInt32 index = nsStyleUtil::FindNextSmallerFontSize(parentFont->mFont.size, (PRInt32)normal.size, scaleFactor);
+ font->mFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normal.size, scaleFactor);
+ font->mFixedFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normalFixed.size, scaleFactor);
}
// this does NOT explicitly set font size
}
diff --git a/layout/html/style/src/nsStyleUtil.cpp b/layout/html/style/src/nsStyleUtil.cpp
index 7a09a40b7874..50e443f4b255 100644
--- a/layout/html/style/src/nsStyleUtil.cpp
+++ b/layout/html/style/src/nsStyleUtil.cpp
@@ -21,7 +21,41 @@
#include "nsIStyleContext.h"
#include "nsStyleConsts.h"
-nscoord nsStyleUtil::CalcFontPointSize(PRInt32 aHTMLSize, PRInt32 aBasePointSize)
+#define POSITIVE_SCALE_FACTOR 1.10 /* 10% */
+#define NEGATIVE_SCALE_FACTOR .90 /* 10% */
+
+/*
+ * Return the scaling percentage given a font scaler
+ * Lifted from layutil.c
+ */
+float nsStyleUtil::GetScalingFactor(PRInt32 aScaler)
+{
+ double scale = 1.0;
+ double mult;
+ PRInt32 count;
+
+ if(aScaler < 0) {
+ count = -aScaler;
+ mult = NEGATIVE_SCALE_FACTOR;
+ }
+ else {
+ count = aScaler;
+ mult = POSITIVE_SCALE_FACTOR;
+ }
+
+ /* use the percentage scaling factor to the power of the pref */
+ while(count--) {
+ scale *= mult;
+ }
+
+ return scale;
+}
+
+/*
+ * Lifted from winfe/cxdc.cpp
+ */
+nscoord nsStyleUtil::CalcFontPointSize(PRInt32 aHTMLSize, PRInt32 aBasePointSize,
+ float aScalingFactor)
{ // lifted directly from Nav 5.0 code to replicate rounding errors
double dFontSize;
@@ -54,23 +88,28 @@ nscoord nsStyleUtil::CalcFontPointSize(PRInt32 aHTMLSize, PRInt32 aBasePointSize
default:
dFontSize = aBasePointSize;
}
+
+ dFontSize *= aScalingFactor;
+
return (nscoord)dFontSize;
}
-PRInt32 nsStyleUtil::FindNextSmallerFontSize(nscoord aFontSize, PRInt32 aBasePointSize)
+PRInt32 nsStyleUtil::FindNextSmallerFontSize(nscoord aFontSize, PRInt32 aBasePointSize,
+ float aScalingFactor)
{
PRInt32 index;
for (index = 7; index > 1; index--)
- if (aFontSize > nsStyleUtil::CalcFontPointSize(index, aBasePointSize))
+ if (aFontSize > nsStyleUtil::CalcFontPointSize(index, aBasePointSize, aScalingFactor))
break;
return index;
}
-PRInt32 nsStyleUtil::FindNextLargerFontSize(nscoord aFontSize, PRInt32 aBasePointSize)
+PRInt32 nsStyleUtil::FindNextLargerFontSize(nscoord aFontSize, PRInt32 aBasePointSize,
+ float aScalingFactor)
{
PRInt32 index;
for (index = 1; index < 7; index++)
- if (aFontSize < nsStyleUtil::CalcFontPointSize(index, aBasePointSize))
+ if (aFontSize < nsStyleUtil::CalcFontPointSize(index, aBasePointSize, aScalingFactor))
break;
return index;
}
diff --git a/layout/style/nsCSSStyleRule.cpp b/layout/style/nsCSSStyleRule.cpp
index e2917cc62d4b..7eb2e08fd41f 100644
--- a/layout/style/nsCSSStyleRule.cpp
+++ b/layout/style/nsCSSStyleRule.cpp
@@ -589,20 +589,23 @@ void CSSStyleRuleImpl::MapStyleInto(nsIStyleContext* aContext, nsIPresContext* a
const nsFont& normal = aPresContext->GetDefaultFont();
const nsFont& normalFixed = aPresContext->GetDefaultFixedFont();
+ PRInt32 scaler = aPresContext->GetFontScaler();
+ float scaleFactor = nsStyleUtil::GetScalingFactor(scaler);
+
if ((NS_STYLE_FONT_SIZE_XXSMALL <= value) &&
(value <= NS_STYLE_FONT_SIZE_XXLARGE)) {
- font->mFont.size = nsStyleUtil::CalcFontPointSize(value + 1, (PRInt32)normal.size);
- font->mFixedFont.size = nsStyleUtil::CalcFontPointSize(value + 1, (PRInt32)normalFixed.size);
+ font->mFont.size = nsStyleUtil::CalcFontPointSize(value + 1, (PRInt32)normal.size, scaleFactor);
+ font->mFixedFont.size = nsStyleUtil::CalcFontPointSize(value + 1, (PRInt32)normalFixed.size, scaleFactor);
}
else if (NS_STYLE_FONT_SIZE_LARGER == value) {
- PRInt32 index = nsStyleUtil::FindNextLargerFontSize(parentFont->mFont.size, (PRInt32)normal.size);
- font->mFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normal.size);
- font->mFixedFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normalFixed.size);
+ PRInt32 index = nsStyleUtil::FindNextLargerFontSize(parentFont->mFont.size, (PRInt32)normal.size, scaleFactor);
+ font->mFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normal.size, scaleFactor);
+ font->mFixedFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normalFixed.size, scaleFactor);
}
else if (NS_STYLE_FONT_SIZE_SMALLER == value) {
- PRInt32 index = nsStyleUtil::FindNextSmallerFontSize(parentFont->mFont.size, (PRInt32)normal.size);
- font->mFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normal.size);
- font->mFixedFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normalFixed.size);
+ PRInt32 index = nsStyleUtil::FindNextSmallerFontSize(parentFont->mFont.size, (PRInt32)normal.size, scaleFactor);
+ font->mFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normal.size, scaleFactor);
+ font->mFixedFont.size = nsStyleUtil::CalcFontPointSize(index, (PRInt32)normalFixed.size, scaleFactor);
}
// this does NOT explicitly set font size
}
diff --git a/layout/style/nsStyleUtil.cpp b/layout/style/nsStyleUtil.cpp
index 7a09a40b7874..50e443f4b255 100644
--- a/layout/style/nsStyleUtil.cpp
+++ b/layout/style/nsStyleUtil.cpp
@@ -21,7 +21,41 @@
#include "nsIStyleContext.h"
#include "nsStyleConsts.h"
-nscoord nsStyleUtil::CalcFontPointSize(PRInt32 aHTMLSize, PRInt32 aBasePointSize)
+#define POSITIVE_SCALE_FACTOR 1.10 /* 10% */
+#define NEGATIVE_SCALE_FACTOR .90 /* 10% */
+
+/*
+ * Return the scaling percentage given a font scaler
+ * Lifted from layutil.c
+ */
+float nsStyleUtil::GetScalingFactor(PRInt32 aScaler)
+{
+ double scale = 1.0;
+ double mult;
+ PRInt32 count;
+
+ if(aScaler < 0) {
+ count = -aScaler;
+ mult = NEGATIVE_SCALE_FACTOR;
+ }
+ else {
+ count = aScaler;
+ mult = POSITIVE_SCALE_FACTOR;
+ }
+
+ /* use the percentage scaling factor to the power of the pref */
+ while(count--) {
+ scale *= mult;
+ }
+
+ return scale;
+}
+
+/*
+ * Lifted from winfe/cxdc.cpp
+ */
+nscoord nsStyleUtil::CalcFontPointSize(PRInt32 aHTMLSize, PRInt32 aBasePointSize,
+ float aScalingFactor)
{ // lifted directly from Nav 5.0 code to replicate rounding errors
double dFontSize;
@@ -54,23 +88,28 @@ nscoord nsStyleUtil::CalcFontPointSize(PRInt32 aHTMLSize, PRInt32 aBasePointSize
default:
dFontSize = aBasePointSize;
}
+
+ dFontSize *= aScalingFactor;
+
return (nscoord)dFontSize;
}
-PRInt32 nsStyleUtil::FindNextSmallerFontSize(nscoord aFontSize, PRInt32 aBasePointSize)
+PRInt32 nsStyleUtil::FindNextSmallerFontSize(nscoord aFontSize, PRInt32 aBasePointSize,
+ float aScalingFactor)
{
PRInt32 index;
for (index = 7; index > 1; index--)
- if (aFontSize > nsStyleUtil::CalcFontPointSize(index, aBasePointSize))
+ if (aFontSize > nsStyleUtil::CalcFontPointSize(index, aBasePointSize, aScalingFactor))
break;
return index;
}
-PRInt32 nsStyleUtil::FindNextLargerFontSize(nscoord aFontSize, PRInt32 aBasePointSize)
+PRInt32 nsStyleUtil::FindNextLargerFontSize(nscoord aFontSize, PRInt32 aBasePointSize,
+ float aScalingFactor)
{
PRInt32 index;
for (index = 1; index < 7; index++)
- if (aFontSize < nsStyleUtil::CalcFontPointSize(index, aBasePointSize))
+ if (aFontSize < nsStyleUtil::CalcFontPointSize(index, aBasePointSize, aScalingFactor))
break;
return index;
}