{"push_id":803215727,"size":4,"distinct_size":4,"ref":"refs/heads/master","head":"5013a1b178da042699c74e99357f3d3724425007","before":"a2f9ab6b26fbed1b7c0125a1d59821c0d554d3ba","commits":[{"sha":"4a54ae95a3522ef28a8f856d51294735c3feed90","author":{"email":"ce44a69f81b51c534892900655cbab4fcdc1b9e0@apple.com","name":"sbarati@apple.com"},"message":"Fix broken inspector tests.\n\nReviewed by Joseph Pecoraro and Brian Burg.\n\nWe can't redeclare a \"let\" variable and \"var\" variable using the same\nidentifier at the top-level of a function.\n\n* UserInterface/Test/InspectorProtocol.js:\n(InspectorProtocol.sendCommand):\n(InspectorProtocol.addEventListener):\n(InspectorProtocol.dispatchMessageFromBackend):\n\n\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@190191 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":true,"url":"https://api.github.com/repos/paul99/webkit-mips/commits/4a54ae95a3522ef28a8f856d51294735c3feed90"},{"sha":"105717c6919d7fef2e2d22630487cda7613163b5","author":{"email":"a0310c785c20c1f6bc83cd138f89eae3dbdb5804@apple.com","name":"mmaxfield@apple.com"},"message":"[Cocoa] [Font Features] Implement font-variant-*\nhttps://bugs.webkit.org/show_bug.cgi?id=148413\n\nReviewed by Darin Adler.\n\nSource/WebCore:\n\nThis patch is the first pass of implementing of the font-variant-* properties. Specifically,\nthese properties are:\nfont-variant-ligatures\nfont-variant-position\nfont-variant-caps\nfont-variant-numeric\nfont-variant-alternates\nfont-variant-east-asian\n\nThese new properties are held inside FontDescription as bit fields. At font creation time,\nwe consult with the FontDescription to figure out which variants are specified. We then\nconvert those variants to font features, and resolve these font features with the additional\nfeatures specified by font-feature-settings (as the spec requires). This patch also makes\nour caches sensitive to these new properties of FontDescription so we don't look up cached,\nstale fonts.\n\nThe implementation has some caveats, however. They are listed here:\n1. These new properties need to interact correctly with @font-face declarations. In\nparticular, only certain properties of the FontDescription should be considered when\ndetecting if a @font-face declaration applies to a particular element. This discrimination\ndoes not happen correctly. In addition, any feature-specific CSS properties inside the\n@font-face declaration need to be consulted at a particular point during the feature\nresolve. This does not currently occur.\n2. One of the properties, font-variant-alternates, has a few values which require custom\nCSS functions, which makes modeling the properties as bit fields tricky. These extra values\nneed to be implemented. This patch implements all the values which do not require extra CSS\nfeatures.\n3. These new properties have a shorthand, font-variant, which is designed to be backward-\ncompatible with CSS 2.1's concept of font-variant. In particular, CSS 2.1 allows you to use\n\"normal\" and \"small-caps\" with font-variant. Both of these values are values of the new\nproperty font-variant-caps. However, our existing implementation of small-caps does not\nuse font features when they exist; instead, it simply draws text at a smaller font size and\nuses (effectively) text-transform to force capital letters. This implementation needs to be\nunified with the new font-variant-caps property so that we can expand font-variant to be\na shorthand for the new properties.\n4. font-variant-position and font-variant-caps should provide appropriate synthesis if no\nmatching font-feature exists.\n5. FontCascade::typesettingFeatures() is now no-longer accurate. Fixing this would be large\nenough to warrant its own patch.\n6. These properties are not tested with TrueType fonts.\n\nTests: css3/font-variant-all-webfont.html\n       css3/font-variant-parsing.html\n\n* css/CSSComputedStyleDeclaration.cpp: Reconstruct StyleProperties from a RenderStyle.\n(WebCore::appendLigaturesValue):\n(WebCore::fontVariantLigaturesPropertyValue):\n(WebCore::fontVariantPositionPropertyValue):\n(WebCore::fontVariantCapsPropertyValue):\n(WebCore::fontVariantNumericPropertyValue):\n(WebCore::fontVariantAlternatesPropertyValue):\n(WebCore::fontVariantEastAsianPropertyValue):\n(WebCore::ComputedStyleExtractor::propertyValue):\n* css/CSSFontFeatureValue.cpp: Update to FontFeatureTag instead of WTF::String.\n(WebCore::CSSFontFeatureValue::CSSFontFeatureValue):\n(WebCore::CSSFontFeatureValue::customCSSText):\n* css/CSSFontFeatureValue.h: Ditto.\n(WebCore::CSSFontFeatureValue::create):\n(WebCore::CSSFontFeatureValue::tag):\n* css/CSSParser.cpp: Parse the new properties according to the CSS3 fonts spec.\n(WebCore::isValidKeywordPropertyAndValue):\n(WebCore::isKeywordPropertyID):\n(WebCore::CSSParser::parseValue):\n(WebCore::CSSParser::parseFontFeatureTag):\n(WebCore::CSSParser::parseFontVariantLigatures):\n(WebCore::CSSParser::parseFontVariantNumeric):\n(WebCore::CSSParser::parseFontVariantEastAsian):\n* css/CSSParser.h:\n* css/CSSPrimitiveValueMappings.h: For the three properties which are simple keyword value\nproperties, implement casting operators to automatically convert between RenderStyle\nobjects and CSS property objects.\n(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):\n(WebCore::CSSPrimitiveValue::operator FontVariantPosition):\n(WebCore::CSSPrimitiveValue::operator FontVariantCaps):\n(WebCore::CSSPrimitiveValue::operator FontVariantAlternates):\n* css/CSSPropertyNames.in: New properties.\n* css/CSSValueKeywords.in: New values.\n* css/StyleBuilderConverter.h:\n(WebCore::StyleBuilderConverter::convertFontFeatureSettings): Update to not use\nRefPtrs.\n* css/StyleBuilderCustom.h: Properties which are not simple keyword value properties are\ndecomposed into multiple members of FontDescription. These properties exist to convert\nbetween these aggregate members and the CSS properties.\n(WebCore::StyleBuilderCustom::applyInheritFontVariantLigatures):\n(WebCore::StyleBuilderCustom::applyInitialFontVariantLigatures):\n(WebCore::StyleBuilderCustom::applyValueFontVariantLigatures):\n(WebCore::StyleBuilderCustom::applyInheritFontVariantNumeric):\n(WebCore::StyleBuilderCustom::applyInitialFontVariantNumeric):\n(WebCore::StyleBuilderCustom::applyValueFontVariantNumeric):\n(WebCore::StyleBuilderCustom::applyInheritFontVariantEastAsian):\n(WebCore::StyleBuilderCustom::applyInitialFontVariantEastAsian):\n(WebCore::StyleBuilderCustom::applyValueFontVariantEastAsian):\n(WebCore::StyleBuilderCustom::applyInitialWebkitFontVariantLigatures): Deleted.\n(WebCore::StyleBuilderCustom::applyInheritWebkitFontVariantLigatures): Deleted.\n(WebCore::StyleBuilderCustom::applyValueWebkitFontVariantLigatures): Deleted.\n* editing/cocoa/HTMLConverter.mm:\n(HTMLConverter::computedAttributesForElement): Unprefix font-variant-ligatures.\n* platform/graphics/FontCache.h: Update cache to be sensitive to new state in\nFontDescription.\n(WebCore::FontDescriptionKey::FontDescriptionKey):\n(WebCore::FontDescriptionKey::operator==):\n(WebCore::FontDescriptionKey::computeHash):\n(WebCore::FontDescriptionKey::makeFlagsKey):\n(WebCore::FontDescriptionKey::makeFlagKey): Deleted.\n* platform/graphics/FontCascade.cpp:\n(WebCore::FontCascade::codePath): These new variants should trigger the complex text\ncodepath.\n* platform/graphics/FontCascade.h:\n(WebCore::FontCascade::computeTypesettingFeatures): Update to use new state enum.\n* platform/graphics/FontDescription.cpp: Add state to hold new property values.\n(WebCore::FontDescription::FontDescription):\n(WebCore::FontCascadeDescription::FontCascadeDescription): Deleted.\n* platform/graphics/FontDescription.h: Add state to hold new property values.\n(WebCore::FontDescription::featureSettings):\n(WebCore::FontDescription::variantCommonLigatures):\n(WebCore::FontDescription::variantDiscretionaryLigatures):\n(WebCore::FontDescription::variantHistoricalLigatures):\n(WebCore::FontDescription::variantContextualAlternates):\n(WebCore::FontDescription::variantPosition):\n(WebCore::FontDescription::variantCaps):\n(WebCore::FontDescription::variantNumericFigure):\n(WebCore::FontDescription::variantNumericSpacing):\n(WebCore::FontDescription::variantNumericFraction):\n(WebCore::FontDescription::variantNumericOrdinal):\n(WebCore::FontDescription::variantNumericSlashedZero):\n(WebCore::FontDescription::variantAlternates):\n(WebCore::FontDescription::variantEastAsianVariant):\n(WebCore::FontDescription::variantEastAsianWidth):\n(WebCore::FontDescription::variantEastAsianRuby):\n(WebCore::FontDescription::variantSettings):\n(WebCore::FontDescription::setFeatureSettings):\n(WebCore::FontDescription::setVariantCommonLigatures):\n(WebCore::FontDescription::setVariantDiscretionaryLigatures):\n(WebCore::FontDescription::setVariantHistoricalLigatures):\n(WebCore::FontDescription::setVariantContextualAlternates):\n(WebCore::FontDescription::setVariantPosition):\n(WebCore::FontDescription::setVariantCaps):\n(WebCore::FontDescription::setVariantNumericFigure):\n(WebCore::FontDescription::setVariantNumericSpacing):\n(WebCore::FontDescription::setVariantNumericFraction):\n(WebCore::FontDescription::setVariantNumericOrdinal):\n(WebCore::FontDescription::setVariantNumericSlashedZero):\n(WebCore::FontDescription::setVariantAlternates):\n(WebCore::FontDescription::setVariantEastAsianVariant):\n(WebCore::FontDescription::setVariantEastAsianWidth):\n(WebCore::FontDescription::setVariantEastAsianRuby):\n(WebCore::FontDescription::operator==):\n(WebCore::FontCascadeDescription::initialVariantPosition):\n(WebCore::FontCascadeDescription::initialVariantCaps):\n(WebCore::FontCascadeDescription::initialVariantAlternates):\n(WebCore::FontCascadeDescription::commonLigaturesState): Deleted.\n(WebCore::FontCascadeDescription::discretionaryLigaturesState): Deleted.\n(WebCore::FontCascadeDescription::historicalLigaturesState): Deleted.\n(WebCore::FontCascadeDescription::setCommonLigaturesState): Deleted.\n(WebCore::FontCascadeDescription::setDiscretionaryLigaturesState): Deleted.\n(WebCore::FontCascadeDescription::setHistoricalLigaturesState): Deleted.\n(WebCore::FontCascadeDescription::operator==): Deleted.\n* platform/graphics/FontFeatureSettings.cpp: Update to use FontFeatureTag instead of\nWTF::String.\n(WebCore::FontFeature::FontFeature):\n(WebCore::FontFeature::operator==):\n(WebCore::FontFeature::operator<):\n(WebCore::FontFeatureSettings::hash):\n(WebCore::FontFeatureSettings::create): Deleted.\n* platform/graphics/FontFeatureSettings.h: Update to use FontFeatureTag instead of\nWTF::String.\n(WebCore::fontFeatureTag):\n(WebCore::FontFeatureTagHash::hash):\n(WebCore::FontFeatureTagHash::equal):\n(WebCore::FontFeatureTagHashTraits::constructDeletedValue):\n(WebCore::FontFeatureTagHashTraits::isDeletedValue):\n(WebCore::FontFeature::tag):\n(WebCore::FontFeatureSettings::operator==):\n(WebCore::FontFeatureSettings::begin):\n(WebCore::FontFeatureSettings::end):\n(WebCore::FontFeatureSettings::FontFeatureSettings): Deleted.\n* platform/graphics/cocoa/FontCacheCoreText.cpp: Ditto. Also, when computing font\nfeatures, consult with the state inside FontDescription.\n(WebCore::tagEquals):\n(WebCore::appendTrueTypeFeature):\n(WebCore::appendOpenTypeFeature):\n(WebCore::computeFeatureSettingsFromVariants):\n(WebCore::preparePlatformFont):\n(WebCore::platformFontLookupWithFamily):\n(WebCore::fontWithFamily):\n(WebCore::FontCache::createFontPlatformData):\n(WebCore::FontCache::systemFallbackForCharacters):\n* platform/graphics/harfbuzz/HarfBuzzShaper.cpp: Update to use references instead of\npointers.\n(WebCore::HarfBuzzShaper::setFontFeatures):\n* platform/graphics/mac/FontCacheMac.mm:\n(WebCore::platformFontWithFamily): Ditto.\n* platform/graphics/mac/FontCustomPlatformData.cpp:\n(WebCore::FontCustomPlatformData::fontPlatformData): Be sensitive to new state inside FontDescription.\n* platform/text/TextFlags.h:\n(WebCore::FontVariantSettings::isAllNormal): New state enums.\n* rendering/RenderThemeIOS.mm:\n(WebCore::RenderThemeIOS::updateCachedSystemFontDescription): Be sensitive to new state inside\nFontDescription.\n* rendering/line/BreakingContext.h:\n\nTools:\n\nUpdate test font to use \"lnum\" feature.\n\n* FontWithFeatures/FontWithFeatures/FontCreator.cpp:\n(Generator::appendGSUBTable):\n\nLayoutTests:\n\nUpdating tests because font-variant-ligatures is being unprefixed.\n\nAlso, update css3/resources/FontWithFeatures.otf to support \"lnum\" feature.\n\n* css3/font-feature-settings-rendering-2-expected.html:\n* css3/font-feature-settings-rendering-2.html:\n* css3/font-variant-all-webfont-expected.html: Added.\n* css3/font-variant-all-webfont.html: Added.\n* css3/font-variant-parsing-expected.txt: Added.\n* css3/font-variant-parsing.html: Added.\n* css3/resources/FontWithFeatures.otf:\n* fast/css/getComputedStyle/computed-style-expected.txt:\n* fast/css/getComputedStyle/computed-style-font-family-expected.txt:\n* fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:\n* fast/css/getComputedStyle/resources/property-names.js:\n* fast/css/parsing-font-variant-ligatures.html:\n* fast/text/font-variant-ligatures.html:\n* platform/mac/TestExpectations:\n* svg/css/getComputedStyle-basic-expected.txt:\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@190192 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":true,"url":"https://api.github.com/repos/paul99/webkit-mips/commits/105717c6919d7fef2e2d22630487cda7613163b5"},{"sha":"06681a730ec833000a15acf124423501f4655cd6","author":{"email":"f6a40302e70d3875826ddafd7e450bcee2d7be56@apple.com","name":"timothy_horton@apple.com"},"message":"Link highlight rect is too rounded on blocks with border-radius\nhttps://bugs.webkit.org/show_bug.cgi?id=149511\n\nReviewed by Dan Bernstein.\n\n* UIProcess/ios/WKContentViewInteraction.mm:\n(nsSizeForTapHighlightBorderRadius):\n(-[WKContentView _updateTapHighlight]):\nScale the border radius from content to view coordinates, just like\nwe do for the rects that WebKit returns us.\n\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@190193 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":true,"url":"https://api.github.com/repos/paul99/webkit-mips/commits/06681a730ec833000a15acf124423501f4655cd6"},{"sha":"5013a1b178da042699c74e99357f3d3724425007","author":{"email":"083d44ce61b1f946a3aa6fbd704954e0195d0658@apple.com","name":"cdumez@apple.com"},"message":"Unreviewed, rebaseline web-platform-tests/html/dom/interfaces.html after r190190\n\n* web-platform-tests/html/dom/interfaces-expected.txt:\n\ngit-svn-id: http://svn.webkit.org/repository/webkit/trunk@190194 268f45cc-cd09-0410-ab3c-d52691b4dbfc","distinct":true,"url":"https://api.github.com/repos/paul99/webkit-mips/commits/5013a1b178da042699c74e99357f3d3724425007"}]}