summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/rendering
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebCore/rendering')
-rw-r--r--Source/WebCore/rendering/RenderMenuList.h2
-rw-r--r--Source/WebCore/rendering/RenderTheme.cpp12
-rw-r--r--Source/WebCore/rendering/RenderTheme.h3
3 files changed, 15 insertions, 2 deletions
diff --git a/Source/WebCore/rendering/RenderMenuList.h b/Source/WebCore/rendering/RenderMenuList.h
index 7287ac300..eb90a5fc8 100644
--- a/Source/WebCore/rendering/RenderMenuList.h
+++ b/Source/WebCore/rendering/RenderMenuList.h
@@ -54,6 +54,7 @@ public:
void setOptionsChanged(bool changed) { m_needsOptionsWidthUpdate = changed; }
void didSetSelectedIndex(int listIndex);
+ void setTextFromOption(int optionIndex);
String text() const;
@@ -129,7 +130,6 @@ private:
void createInnerBlock();
void adjustInnerStyle();
void setText(const String&);
- void setTextFromOption(int optionIndex);
void updateOptionsWidth();
void didUpdateActiveOption(int optionIndex);
diff --git a/Source/WebCore/rendering/RenderTheme.cpp b/Source/WebCore/rendering/RenderTheme.cpp
index c0c584ddc..5dd361fed 100644
--- a/Source/WebCore/rendering/RenderTheme.cpp
+++ b/Source/WebCore/rendering/RenderTheme.cpp
@@ -74,6 +74,8 @@ static Color& customFocusRingColor()
return color;
}
+static bool forceMenuListDelegation = false;
+
RenderTheme::RenderTheme()
#if USE(NEW_THEME)
: m_theme(platformTheme())
@@ -1071,6 +1073,16 @@ bool RenderTheme::shouldHaveSpinButton(HTMLInputElement* inputElement) const
return inputElement->isSteppable() && !inputElement->isRangeControl();
}
+bool RenderTheme::delegatesMenuListRendering() const
+{
+ return forceMenuListDelegation;
+}
+
+void RenderTheme::setDelegatesMenuListRendering(bool on)
+{
+ forceMenuListDelegation = on;
+}
+
void RenderTheme::adjustMenuListButtonStyle(StyleResolver*, RenderStyle*, Element*) const
{
}
diff --git a/Source/WebCore/rendering/RenderTheme.h b/Source/WebCore/rendering/RenderTheme.h
index d3b92b2b1..1e35f14b8 100644
--- a/Source/WebCore/rendering/RenderTheme.h
+++ b/Source/WebCore/rendering/RenderTheme.h
@@ -228,9 +228,10 @@ public:
virtual bool shouldHaveSpinButton(HTMLInputElement*) const;
// Functions for <select> elements.
- virtual bool delegatesMenuListRendering() const { return false; }
+ virtual bool delegatesMenuListRendering() const;
virtual bool popsMenuByArrowKeys() const { return false; }
virtual bool popsMenuBySpaceOrReturn() const { return false; }
+ static void setDelegatesMenuListRendering(bool on);
virtual String fileListDefaultLabel(bool multipleFilesAllowed) const;
virtual String fileListNameForWidth(const FileList*, const Font&, int width, bool multipleFilesAllowed) const;