Diff
Modified: trunk/Source/WebCore/ChangeLog (161285 => 161286)
--- trunk/Source/WebCore/ChangeLog 2014-01-03 21:45:55 UTC (rev 161285)
+++ trunk/Source/WebCore/ChangeLog 2014-01-03 22:28:19 UTC (rev 161286)
@@ -1,3 +1,56 @@
+2014-01-03 Daniel Bates <[email protected]>
+
+ [iOS] Upstream WebCore/css changes
+ https://bugs.webkit.org/show_bug.cgi?id=126237
+
+ Reviewed by Simon Fraser.
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::ComputedStyleExtractor::propertyValue): Added iOS-specific code and FIXME comment.
+ * css/CSSParser.cpp:
+ (WebCore::CSSParserContext::CSSParserContext): Ditto.
+ (WebCore::CSSParser::parseValue): Ditto.
+ * css/CSSPropertyNames.in: Added property -webkit-composition-fill-color. Also added FIXME comment.
+ * css/CSSValueKeywords.in: Added iOS-specific -apple-system-* values.
+ * css/DeprecatedStyleBuilder.cpp:
+ (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder): Added iOS-specific code and FIXME comments.
+ * css/MediaFeatureNames.h: Added media feature -webkit-video-playable-inline.
+ * css/MediaQueryEvaluator.cpp:
+ (WebCore::isRunningOnIPhoneOrIPod): Added. Also added FIXME comment.
+ (WebCore::video_playable_inlineMediaFeatureEval): Added.
+ * css/StyleResolver.cpp:
+ (WebCore::StyleResolver::canShareStyleWithElement): Substitute toHTMLMediaElement() for toMediaElement().
+ (WebCore::StyleResolver::applyProperty): Added iOS-specific code and FIXME comment.
+ * css/html.css: Added iOS-specific CSS styles.
+ (input, textarea, keygen, select, button, isindex):
+ (isindex):
+ (input[type="date"]):
+ (input[type="datetime"]):
+ (input[type="datetime-local"]):
+ (input[type="month"]):
+ (input[type="time"]):
+ (textarea):
+ (input:-webkit-autofill):
+ (input[type="radio"], input[type="checkbox"]):
+ (input[type="button"], input[type="submit"], input[type="reset"], input[type="file"]::-webkit-file-upload-button, button):
+ (input[type="range"]::-webkit-slider-thumb, input[type="range"]::-webkit-media-slider-thumb):
+ (input[type="range"]::-webkit-slider-thumb:active):
+ (input:disabled, textarea:disabled):
+ (input[readonly], textarea[readonly]):
+ (textarea::-webkit-input-placeholder):
+ (input[type="checkbox"]):
+ (input[type="radio"]):
+ (input[type="checkbox"]:checked, input[type="radio"]:checked):
+ (input[type="checkbox"]:checked:disabled, input[type="radio"]:checked:disabled):
+ (select:focus):
+ (select):
+ * css/mathml.css: Added iOS-specific CSS styles.
+ (math, mfenced > *):
+ (mo, mfenced):
+ * css/mediaControlsiOS.css: Added.
+ * css/svg.css: Added iOS-specific CSS styles.
+ (text, tspan, tref):
+
2014-01-03 Brent Fulgham <[email protected]>
[WebGL] glScissor test is not accounted for when generating internal rendering textures.
Modified: trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp (161285 => 161286)
--- trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp 2014-01-03 21:45:55 UTC (rev 161285)
+++ trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp 2014-01-03 22:28:19 UTC (rev 161286)
@@ -348,6 +348,10 @@
CSSPropertyWebkitRtlOrdering,
#if PLATFORM(IOS)
CSSPropertyWebkitTouchCallout,
+
+ // FIXME: This property shouldn't be iOS-specific. Once we fix up its usage in InlineTextBox::paintCompositionBackground()
+ // we should move it outside the PLATFORM(IOS)-guard. See <https://bugs.webkit.org/show_bug.cgi?id=126296>.
+ CSSPropertyWebkitCompositionFillColor,
#endif
#if ENABLE(CSS_SHAPES)
CSSPropertyWebkitShapeInside,
@@ -2739,6 +2743,12 @@
}
case CSSPropertyWebkitRtlOrdering:
return cssValuePool().createIdentifierValue(style->rtlOrdering() ? CSSValueVisual : CSSValueLogical);
+#if PLATFORM(IOS)
+ // FIXME: This property shouldn't be iOS-specific. Once we fix up its usage in InlineTextBox::paintCompositionBackground()
+ // we should remove the PLATFORM(IOS)-guard. See <https://bugs.webkit.org/show_bug.cgi?id=126296>.
+ case CSSPropertyWebkitCompositionFillColor:
+ return currentColorOrValidColor(style.get(), style->compositionFillColor());
+#endif
#if ENABLE(TOUCH_EVENTS)
case CSSPropertyWebkitTapHighlightColor:
return currentColorOrValidColor(style.get(), style->tapHighlightColor());
Modified: trunk/Source/WebCore/css/CSSParser.cpp (161285 => 161286)
--- trunk/Source/WebCore/css/CSSParser.cpp 2014-01-03 21:45:55 UTC (rev 161285)
+++ trunk/Source/WebCore/css/CSSParser.cpp 2014-01-03 22:28:19 UTC (rev 161286)
@@ -264,6 +264,12 @@
, enforcesCSSMIMETypeInNoQuirksMode(true)
, useLegacyBackgroundSizeShorthandBehavior(false)
{
+#if PLATFORM(IOS)
+ // FIXME: Force the site specific quirk below to work on iOS. Investigating other site specific quirks
+ // to see if we can enable the preference all together is to be handled by:
+ // <rdar://problem/8493309> Investigate Enabling Site Specific Quirks in MobileSafari and UIWebView
+ needsSiteSpecificQuirks = true;
+#endif
}
CSSParserContext::CSSParserContext(Document& document, const URL& baseURL, const String& charset)
@@ -280,6 +286,12 @@
, enforcesCSSMIMETypeInNoQuirksMode(!document.settings() || document.settings()->enforceCSSMIMETypeInNoQuirksMode())
, useLegacyBackgroundSizeShorthandBehavior(document.settings() ? document.settings()->useLegacyBackgroundSizeShorthandBehavior() : false)
{
+#if PLATFORM(IOS)
+ // FIXME: Force the site specific quirk below to work on iOS. Investigating other site specific quirks
+ // to see if we can enable the preference all together is to be handled by:
+ // <rdar://problem/8493309> Investigate Enabling Site Specific Quirks in MobileSafari and UIWebView
+ needsSiteSpecificQuirks = true;
+#endif
}
bool operator==(const CSSParserContext& a, const CSSParserContext& b)
@@ -2760,6 +2772,19 @@
#endif
#if PLATFORM(IOS)
+ // FIXME: CSSPropertyWebkitCompositionFillColor shouldn't be iOS-specific. Once we fix up its usage in
+ // InlineTextBox::paintCompositionBackground() we should move it outside the PLATFORM(IOS)-guard.
+ // See <https://bugs.webkit.org/show_bug.cgi?id=126296>.
+ case CSSPropertyWebkitCompositionFillColor:
+ if ((id >= CSSValueAqua && id <= CSSValueWindowtext) || id == CSSValueMenu
+ || (id >= CSSValueWebkitFocusRingColor && id < CSSValueWebkitText && inQuirksMode())) {
+ validPrimitive = true;
+ } else {
+ parsedValue = parseColor();
+ if (parsedValue)
+ m_valueList->next();
+ }
+ break;
case CSSPropertyWebkitTouchCallout:
if (id == CSSValueDefault || id == CSSValueNone)
validPrimitive = true;
@@ -12729,7 +12754,8 @@
if (buffer[0] == '-') {
// If the prefix is -apple- or -khtml-, change it to -webkit-.
// This makes the string one character longer.
- if (hasPrefix(buffer, length, "-apple-") || hasPrefix(buffer, length, "-khtml-")) {
+ // On iOS we don't want to change values starting with -apple-system to -webkit-system.
+ if ((hasPrefix(buffer, length, "-apple-") && !hasPrefix(buffer, length, "-apple-system")) || hasPrefix(buffer, length, "-khtml-")) {
memmove(buffer + 7, buffer + 6, length + 1 - 6);
memcpy(buffer, "-webkit", 7);
++length;
Modified: trunk/Source/WebCore/css/CSSPropertyNames.in (161285 => 161286)
--- trunk/Source/WebCore/css/CSSPropertyNames.in 2014-01-03 21:45:55 UTC (rev 161285)
+++ trunk/Source/WebCore/css/CSSPropertyNames.in 2014-01-03 22:28:19 UTC (rev 161286)
@@ -465,4 +465,8 @@
#endif
#if defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS
-webkit-touch-callout [Inherited]
+
+// FIXME: This property shouldn't be iOS-specific. Once we fix up its usage in InlineTextBox::paintCompositionBackground()
+// we should move it outside the WTF_PLATFORM_IOS-guard.
+-webkit-composition-fill-color [Inherited]
#endif
Modified: trunk/Source/WebCore/css/CSSValueKeywords.in (161285 => 161286)
--- trunk/Source/WebCore/css/CSSValueKeywords.in 2014-01-03 21:45:55 UTC (rev 161285)
+++ trunk/Source/WebCore/css/CSSValueKeywords.in 2014-01-03 22:28:19 UTC (rev 161286)
@@ -31,6 +31,23 @@
-webkit-mini-control
-webkit-small-control
-webkit-control
+
+#if defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS
+-apple-system-headline
+-apple-system-body
+-apple-system-subheadline
+-apple-system-footnote
+-apple-system-caption1
+-apple-system-caption2
+-apple-system-short-headline
+-apple-system-short-body
+-apple-system-short-subheadline
+-apple-system-short-footnote
+-apple-system-short-caption1
+-apple-system-tall-body
+#endif
+
+// This has to go after the -apple-system versions.
status-bar
//
Modified: trunk/Source/WebCore/css/DeprecatedStyleBuilder.cpp (161285 => 161286)
--- trunk/Source/WebCore/css/DeprecatedStyleBuilder.cpp 2014-01-03 21:45:55 UTC (rev 161285)
+++ trunk/Source/WebCore/css/DeprecatedStyleBuilder.cpp 2014-01-03 22:28:19 UTC (rev 161286)
@@ -2312,7 +2312,15 @@
setPropertyHandler(CSSPropertyImageResolution, ApplyPropertyImageResolution::createHandler());
#endif
setPropertyHandler(CSSPropertyLeft, ApplyPropertyLength<&RenderStyle::left, &RenderStyle::setLeft, &RenderStyle::initialOffset, AutoEnabled>::createHandler());
+
+ // FIXME: We should reconcile the difference in datatype between iOS and OpenSource. On iOS we want letter spacing to
+ // be float for sub-pixel kerning. See <https://bugs.webkit.org/show_bug.cgi?id=20606>.
+#if !PLATFORM(IOS)
setPropertyHandler(CSSPropertyLetterSpacing, ApplyPropertyComputeLength<int, &RenderStyle::letterSpacing, &RenderStyle::setLetterSpacing, &RenderStyle::initialLetterWordSpacing, NormalEnabled, ThicknessDisabled, SVGZoomEnabled>::createHandler());
+#else
+ setPropertyHandler(CSSPropertyLetterSpacing, ApplyPropertyComputeLength<float, &RenderStyle::letterSpacing, &RenderStyle::setLetterSpacing, &RenderStyle::initialLetterWordSpacing, NormalEnabled, ThicknessDisabled, SVGZoomEnabled>::createHandler());
+#endif
+
#if ENABLE(IOS_TEXT_AUTOSIZING)
setPropertyHandler(CSSPropertyLineHeight, ApplyPropertyLineHeightForIOSTextAutosizing::createHandler());
#else
@@ -2528,7 +2536,15 @@
setPropertyHandler(CSSPropertyWidows, ApplyPropertyAuto<short, &RenderStyle::widows, &RenderStyle::setWidows, &RenderStyle::hasAutoWidows, &RenderStyle::setHasAutoWidows>::createHandler());
setPropertyHandler(CSSPropertyWidth, ApplyPropertyLength<&RenderStyle::width, &RenderStyle::setWidth, &RenderStyle::initialSize, AutoEnabled, LegacyIntrinsicEnabled, IntrinsicEnabled, NoneDisabled, UndefinedDisabled>::createHandler());
setPropertyHandler(CSSPropertyWordBreak, ApplyPropertyDefault<EWordBreak, &RenderStyle::wordBreak, EWordBreak, &RenderStyle::setWordBreak, EWordBreak, &RenderStyle::initialWordBreak>::createHandler());
+
+ // FIXME: We should reconcile the difference in datatype between iOS and OpenSource. On iOS we want word spacing to
+ // be float for sub-pixel kerning. See <https://bugs.webkit.org/show_bug.cgi?id=20606>.
+#if !PLATFORM(IOS)
setPropertyHandler(CSSPropertyWordSpacing, ApplyPropertyComputeLength<int, &RenderStyle::wordSpacing, &RenderStyle::setWordSpacing, &RenderStyle::initialLetterWordSpacing, NormalEnabled, ThicknessDisabled, SVGZoomEnabled>::createHandler());
+#else
+ setPropertyHandler(CSSPropertyWordSpacing, ApplyPropertyComputeLength<float, &RenderStyle::wordSpacing, &RenderStyle::setWordSpacing, &RenderStyle::initialLetterWordSpacing, NormalEnabled, ThicknessDisabled, SVGZoomEnabled>::createHandler());
+#endif
+
// UAs must treat 'word-wrap' as an alternate name for the 'overflow-wrap' property. So using the same handlers.
setPropertyHandler(CSSPropertyWordWrap, ApplyPropertyDefault<EOverflowWrap, &RenderStyle::overflowWrap, EOverflowWrap, &RenderStyle::setOverflowWrap, EOverflowWrap, &RenderStyle::initialOverflowWrap>::createHandler());
setPropertyHandler(CSSPropertyZIndex, ApplyPropertyAuto<int, &RenderStyle::zIndex, &RenderStyle::setZIndex, &RenderStyle::hasAutoZIndex, &RenderStyle::setHasAutoZIndex>::createHandler());
Modified: trunk/Source/WebCore/css/MediaFeatureNames.h (161285 => 161286)
--- trunk/Source/WebCore/css/MediaFeatureNames.h 2014-01-03 21:45:55 UTC (rev 161285)
+++ trunk/Source/WebCore/css/MediaFeatureNames.h 2014-01-03 22:28:19 UTC (rev 161286)
@@ -73,6 +73,7 @@
macro(transform_3d, "-webkit-transform-3d") \
macro(transition, "-webkit-transition") \
macro(animation, "-webkit-animation") \
+ macro(video_playable_inline, "-webkit-video-playable-inline") \
CSS_MEDIAQUERY_VIEW_MODE(macro)
// end of macro
Modified: trunk/Source/WebCore/css/MediaQueryEvaluator.cpp (161285 => 161286)
--- trunk/Source/WebCore/css/MediaQueryEvaluator.cpp 2014-01-03 21:45:55 UTC (rev 161285)
+++ trunk/Source/WebCore/css/MediaQueryEvaluator.cpp 2014-01-03 22:28:19 UTC (rev 161286)
@@ -59,6 +59,10 @@
#include "RenderLayerCompositor.h"
#endif
+#if PLATFORM(IOS)
+#include "WebCoreSystemInterface.h"
+#endif
+
namespace WebCore {
using namespace MediaFeatureNames;
@@ -624,6 +628,22 @@
}
#endif // ENABLE(VIEW_MODE_CSS_MEDIA)
+// FIXME: Find a better place for this function. Maybe ChromeClient?
+static inline bool isRunningOnIPhoneOrIPod()
+{
+#if PLATFORM(IOS)
+ static wkDeviceClass deviceClass = iosDeviceClass();
+ return deviceClass == wkDeviceClassiPhone || deviceClass == wkDeviceClassiPod;
+#else
+ return false;
+#endif
+}
+
+static bool video_playable_inlineMediaFeatureEval(CSSValue*, RenderStyle*, Frame* frame, MediaFeaturePrefix)
+{
+ return !isRunningOnIPhoneOrIPod() || frame->settings().mediaPlaybackAllowsInline();
+}
+
enum PointerDeviceType { TouchPointer, MousePointer, NoPointer, UnknownPointer };
static PointerDeviceType leastCapablePrimaryPointerDeviceType(Frame* frame)
Modified: trunk/Source/WebCore/css/StyleResolver.cpp (161285 => 161286)
--- trunk/Source/WebCore/css/StyleResolver.cpp 2014-01-03 21:45:55 UTC (rev 161285)
+++ trunk/Source/WebCore/css/StyleResolver.cpp 2014-01-03 22:28:19 UTC (rev 161286)
@@ -712,7 +712,7 @@
#if ENABLE(PLUGIN_PROXY_FOR_VIDEO)
// With proxying, the media elements are backed by a RenderEmbeddedObject.
- if ((element->hasTagName(videoTag) || element->hasTagName(audioTag)) && toMediaElement(element)->shouldUseVideoPluginProxy())
+ if ((element->hasTagName(videoTag) || element->hasTagName(audioTag)) && toHTMLMediaElement(element)->shouldUseVideoPluginProxy())
return false;
#endif
@@ -2609,6 +2609,17 @@
state.style()->setTouchCalloutEnabled(primitiveValue->getStringValue().lower() != "none");
return;
}
+
+ // FIXME: CSSPropertyWebkitCompositionFillColor shouldn't be iOS-specific. Once we fix up its usage in
+ // InlineTextBox::paintCompositionBackground() we should move it outside the PLATFORM(IOS)-guard.
+ // See <https://bugs.webkit.org/show_bug.cgi?id=126296>.
+ case CSSPropertyWebkitCompositionFillColor: {
+ HANDLE_INHERIT_AND_INITIAL(compositionFillColor, CompositionFillColor);
+ if (!primitiveValue)
+ break;
+ state.style()->setCompositionFillColor(colorFromPrimitiveValue(primitiveValue));
+ return;
+ }
#endif
#if ENABLE(TOUCH_EVENTS)
case CSSPropertyWebkitTapHighlightColor: {
Modified: trunk/Source/WebCore/css/html.css (161285 => 161286)
--- trunk/Source/WebCore/css/html.css 2014-01-03 21:45:55 UTC (rev 161285)
+++ trunk/Source/WebCore/css/html.css 2014-01-03 22:28:19 UTC (rev 161286)
@@ -399,7 +399,9 @@
input, textarea, keygen, select, button, isindex {
margin: 0__qem;
+#if !(defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS)
font: -webkit-small-control;
+#endif
color: initial;
letter-spacing: normal;
word-spacing: normal;
@@ -419,11 +421,25 @@
display: none
}
-input, input[type="password"], input[type="search"], isindex {
+input,
+input[type="password"],
+input[type="search"],
+#if defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS
+textarea,
+input[type="range"],
+#endif
+isindex {
-webkit-appearance: textfield;
- padding: 1px;
background-color: white;
+#if defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS
+ border-radius: 5px;
+ font: 11px Helvetica, -webkit-pictograph;
+ border: 1px solid #4c4c4c;
+ padding: 0.2em 0.5em 0.3em 0.5em;
+#else
border: 2px inset;
+ padding: 1px;
+#endif
-webkit-rtl-ordering: logical;
-webkit-user-select: text;
cursor: auto;
@@ -499,7 +515,9 @@
-webkit-appearance: menulist-button;
display: -webkit-inline-flex;
overflow: hidden;
+#if !(defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS)
width: 10em;
+#endif
}
#endif
#if defined(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) && ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE
@@ -508,7 +526,9 @@
-webkit-appearance: menulist-button;
display: -webkit-inline-flex;
overflow: hidden;
+#if !(defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS)
width: 10em;
+#endif
}
#endif
#if defined(ENABLE_INPUT_TYPE_DATETIMELOCAL) && ENABLE_INPUT_TYPE_DATETIMELOCAL
@@ -517,7 +537,9 @@
-webkit-appearance: menulist-button;
display: -webkit-inline-flex;
overflow: hidden;
+#if !(defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS)
width: 10em;
+#endif
}
#endif
#if defined(ENABLE_INPUT_TYPE_MONTH) && ENABLE_INPUT_TYPE_MONTH
@@ -526,7 +548,9 @@
-webkit-appearance: menulist-button;
display: -webkit-inline-flex;
overflow: hidden;
+#if !(defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS)
width: 10em;
+#endif
}
#endif
#if defined(ENABLE_INPUT_TYPE_TIME) && ENABLE_INPUT_TYPE_TIME
@@ -535,10 +559,13 @@
-webkit-appearance: menulist-button;
display: -webkit-inline-flex;
overflow: hidden;
+#if !(defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS)
width: 10em;
+#endif
}
#endif
#if defined(ENABLE_INPUT_TYPE_WEEK) && ENABLE_INPUT_TYPE_WEEK
+#if !(defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS)
input[type="week"] {
-webkit-align-items: center;
-webkit-appearance: menulist-button;
@@ -547,11 +574,14 @@
width: 10em;
}
#endif
+#endif
+#if !(defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS)
input::-webkit-date-and-time-value {
margin: 1px 24px 1px 4px;
white-space: pre;
}
+#endif
input::-webkit-inner-spin-button {
-webkit-appearance: inner-spin-button;
@@ -590,10 +620,15 @@
textarea {
-webkit-appearance: textarea;
+#if !(defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS)
background-color: white;
border: 1px solid;
-webkit-rtl-ordering: logical;
-webkit-user-select: text;
+#else
+ -webkit-nbsp-mode: space;
+ -webkit-line-break: after-white-space;
+#endif
-webkit-flex-direction: column;
resize: auto;
cursor: auto;
@@ -634,16 +669,25 @@
}
input:-webkit-autofill {
+#if defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS
+ background-color: #F7EC87 !important;
+#else
background-color: #FAFFBD !important;
+#endif
background-image:none !important;
color: #000000 !important;
}
input[type="radio"], input[type="checkbox"] {
margin: 3px 0.5ex;
+#if defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS
+ border: 1px solid #4c4c4c;
+ box-sizing: border-box;
+#else
padding: initial;
background-color: initial;
border: initial;
+#endif
}
input[type="button"], input[type="submit"], input[type="reset"] {
@@ -664,9 +708,17 @@
text-align: center;
cursor: default;
color: ButtonText;
+#if !(defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS)
padding: 2px 6px 3px 6px;
border: 2px outset ButtonFace;
background-color: ButtonFace;
+#else
+ padding: 0 1.0em;
+ border: 1px solid #4c4c4c;
+ /* We want to be as close to background-color:transparent as possible without actually being transparent. */
+ background-color: rgba(255, 255, 255, 0.01);
+ font: 11px Helvetica;
+#endif
box-sizing: border-box
}
@@ -700,8 +752,31 @@
box-sizing: border-box;
-webkit-user-modify: read-only !important;
display: block;
+#if defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS
+ background-color: white;
+ border: 1px solid rgb(66, 66, 66);
+ padding: 0px;
+#endif
}
+#if defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS
+input[type="range"]::-webkit-slider-thumb:active {
+ background-color: black;
+}
+
+input:disabled, textarea:disabled {
+ opacity: 0.4;
+}
+
+input[readonly], textarea[readonly] {
+ border-color: rgb(188, 188, 188);
+}
+
+textarea::-webkit-input-placeholder {
+ text-indent: 2px;
+}
+#endif
+
input[type="button"]:disabled, input[type="submit"]:disabled, input[type="reset"]:disabled,
input[type="file"]:disabled::-webkit-file-upload-button, button:disabled,
select:disabled, keygen:disabled, optgroup:disabled, option:disabled,
@@ -709,6 +784,7 @@
color: GrayText
}
+#if !(defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS)
input[type="button"]:active, input[type="submit"]:active, input[type="reset"]:active, input[type="file"]:active::-webkit-file-upload-button, button:active {
border-style: inset
}
@@ -716,6 +792,7 @@
input[type="button"]:active:disabled, input[type="submit"]:active:disabled, input[type="reset"]:active:disabled, input[type="file"]:active:disabled::-webkit-file-upload-button, button:active:disabled {
border-style: outset
}
+#endif
area, param {
display: none
@@ -723,14 +800,53 @@
input[type="checkbox"] {
-webkit-appearance: checkbox;
+#if !(defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS)
box-sizing: border-box;
+#else
+ border-radius: 5px;
+ width: 16px;
+ height: 16px;
+ padding: 0px;
+ /* We want to be as close to background:transparent as possible without actually being transparent */
+ background-color: rgba(255, 255, 255, 0.01);
+#endif
}
+#if defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS
input[type="radio"] {
-webkit-appearance: radio;
+ border-radius: 8px;
+ width: 16px;
+ height: 16px;
+ padding: 0px;
+ /* We want to be as close to background:transparent as possible without actually being transparent */
+ background-color: rgba(255, 255, 255, 0.01);
+}
+
+input[type="checkbox"]:checked, input[type="radio"]:checked {
+ background:rgba(0, 0, 0, 0.8);
+ border-color:rgba(255, 255, 255, 0.0);
+}
+
+input[type="checkbox"]:checked:disabled, input[type="radio"]:checked:disabled {
+ opacity:0.4;
+ background:rgba(0, 0, 0, 0.8);
+}
+#endif
+
+#if !(defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS)
+input[type="radio"] {
+ -webkit-appearance: radio;
box-sizing: border-box;
}
+#endif
+#if defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS
+select:focus {
+ border-color: rgb(17, 46, 135);
+}
+#endif
+
#if defined(ENABLE_INPUT_TYPE_COLOR) && ENABLE_INPUT_TYPE_COLOR
input[type="color"] {
@@ -777,17 +893,30 @@
#endif // defined(ENABLE_INPUT_TYPE_COLOR) && ENABLE_INPUT_TYPE_COLOR
select {
+ box-sizing: border-box;
+#if defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS
+ -webkit-appearance: menulist-button;
+ letter-spacing: normal;
+ word-spacing: normal;
+ line-height: normal;
+ border: 1px solid #4c4c4c;
+ /* We want to be as close to background:transparent as possible without actually being transparent */
+ background-color: rgba(255, 255, 255, 0.01);
+ font: 11px Helvetica;
+ padding: 0 0.5em 0 0.5em;
+#else
-webkit-appearance: menulist;
- box-sizing: border-box;
+ border: 1px solid;
+ color: black;
+ background-color: white;
+#endif
-webkit-align-items: center;
- border: 1px solid;
white-space: pre;
-webkit-rtl-ordering: logical;
- color: black;
- background-color: white;
cursor: default;
}
+#if !(defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS)
select[size],
select[multiple],
select[size][multiple] {
@@ -806,6 +935,7 @@
border-radius: 5px;
white-space: pre;
}
+#endif
optgroup {
font-weight: bolder;
Modified: trunk/Source/WebCore/css/mathml.css (161285 => 161286)
--- trunk/Source/WebCore/css/mathml.css 2014-01-03 21:45:55 UTC (rev 161285)
+++ trunk/Source/WebCore/css/mathml.css 2014-01-03 22:28:19 UTC (rev 161286)
@@ -11,11 +11,21 @@
/* Keep font-family and other defaults here consistent with http://mxr.mozilla.org/mozilla-central/source/layout/mathml/mathml.css and feedback from www-math. */
math, mfenced > * {
+#if defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS
+ /* We explicitly include the font Symbol as it's the iOS equivalent of font STIXGeneral. */
+ font-family: STIXGeneral, Symbol, "Times New Roman", sans-serif;
+#else
font-family: MathJax_Main, STIXGeneral, "DejaVu Serif", Cambria, "Cambria Math", Times, serif;
+#endif
}
mo, mfenced {
+#if defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS
+ /* We explicitly include the font Symbol as it's the iOS equivalent of font STIXGeneral. */
+ font-family: STIXGeneral, Symbol, "Times New Roman", sans-serif;
+#else
font-family: MathJax_Main, STIXGeneral, STIXSizeOneSym, "DejaVu Sans", "DejaVu Serif", Cambria, "Cambria Math",
"Lucida Sans Unicode", "Arial Unicode MS", "Lucida Grande", OpenSymbol, "Standard Symbols L", sans-serif;
+#endif
}
math {
Added: trunk/Source/WebCore/css/mediaControlsiOS.css (0 => 161286)
--- trunk/Source/WebCore/css/mediaControlsiOS.css (rev 0)
+++ trunk/Source/WebCore/css/mediaControlsiOS.css 2014-01-03 22:28:19 UTC (rev 161286)
@@ -0,0 +1,33 @@
+/*
+ * Copyright (C) 2012 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/* alternate media controls - Extend mediaControls.css */
+
+video::-webkit-media-text-track-container {
+ margin-bottom: 47px;
+}
+
+audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel {
+ display: none;
+}
Modified: trunk/Source/WebCore/css/svg.css (161285 => 161286)
--- trunk/Source/WebCore/css/svg.css 2014-01-03 21:45:55 UTC (rev 161285)
+++ trunk/Source/WebCore/css/svg.css 2014-01-03 22:28:19 UTC (rev 161286)
@@ -55,6 +55,12 @@
white-space: nowrap
}
+#if defined(WTF_PLATFORM_IOS) && WTF_PLATFORM_IOS
+text, tspan, tref {
+ -webkit-text-size-adjust: none;
+}
+#endif
+
/* states */
:focus {