1. 22 Jul, 2015 10 commits
    • carlosgc@webkit.org's avatar
      Unreviewed. Update OptionsGTK.cmake and NEWS for 2.9.4 release. · beb79be1
      carlosgc@webkit.org authored
      .:
      
      * Source/cmake/OptionsGTK.cmake: Bump version numbers.
      
      Source/WebKit2:
      
      * gtk/NEWS: Add release notes for 2.9.4.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187151 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      beb79be1
    • benjamin@webkit.org's avatar
      [CSS Selectors Level 4] Add #ifdefs to the new '>>' descendant combinator · e8d1899f
      benjamin@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=147184
      
      Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-07-21
      Reviewed by Anders Carlsson.
      
      Now that '>>>' is dead, the combinator '>>' is at risk.
      
      This patch #ifdef all that code with the other experimental
      features from Level 4.
      
      * css/CSSGrammar.y.in:
      * css/CSSParserValues.cpp:
      (WebCore::CSSParserSelector::appendTagHistory):
      * css/CSSParserValues.h:
      * css/CSSSelector.cpp:
      (WebCore::CSSSelector::CSSSelector):
      (WebCore::CSSSelector::selectorText):
      * css/CSSSelector.h:
      (WebCore::CSSSelector::CSSSelector):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187149 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e8d1899f
    • ap@apple.com's avatar
      Update Mac test results for libxml2 v2.9.2. · 3cec1ec5
      ap@apple.com authored
      These results will probably become cross-platform eventually, but for now it's just Mac.
      
      * platform/mac-yosemite/fast/dom/adopt-attribute-crash-expected.txt: Copied from LayoutTests/fast/dom/adopt-attribute-crash-expected.txt.
      * platform/mac-yosemite/fast/parser: Added.
      * platform/mac-yosemite/fast/parser/xml-colon-entity-expected.txt: Copied from LayoutTests/fast/parser/xml-colon-entity-expected.txt.
      * platform/mac-yosemite/fast/parser/xml-declaration-missing-ending-mark-expected.txt: Copied from LayoutTests/fast/parser/xml-declaration-missing-ending-mark-expected.txt.
      * platform/mac-yosemite/fast/xsl: Added.
      * platform/mac-yosemite/fast/xsl/xslt-extra-content-at-end-expected.png: Copied from LayoutTests/platform/mac/fast/xsl/xslt-extra-content-at-end-expected.png.
      * platform/mac-yosemite/fast/xsl/xslt-extra-content-at-end-expected.txt: Copied from LayoutTests/platform/mac/fast/xsl/xslt-extra-content-at-end-expected.txt.
      * platform/mac-yosemite/fast/xsl/xslt-missing-namespace-in-xslt-expected.png: Copied from LayoutTests/platform/mac/fast/xsl/xslt-missing-namespace-in-xslt-expected.png.
      * platform/mac-yosemite/fast/xsl/xslt-missing-namespace-in-xslt-expected.txt: Copied from LayoutTests/platform/mac/fast/xsl/xslt-missing-namespace-in-xslt-expected.txt.
      * platform/mac-yosemite/svg/custom: Added.
      * platform/mac-yosemite/svg/custom/bug78807-expected.txt: Copied from LayoutTests/svg/custom/bug78807-expected.txt.
      * platform/mac-yosemite/svg/custom/missing-xlink-expected.png: Copied from LayoutTests/platform/mac/svg/custom/missing-xlink-expected.png.
      * platform/mac-yosemite/svg/custom/missing-xlink-expected.txt: Copied from LayoutTests/platform/mac/svg/custom/missing-xlink-expected.txt.
      * platform/mac-yosemite/svg/custom/path-bad-data-expected.png: Copied from LayoutTests/platform/mac/svg/custom/path-bad-data-expected.png.
      * platform/mac-yosemite/svg/custom/path-bad-data-expected.txt: Copied from LayoutTests/platform/mac/svg/custom/path-bad-data-expected.txt.
      * platform/mac-yosemite/svg/custom/use-font-face-crash-expected.png: Copied from LayoutTests/platform/mac/svg/custom/use-font-face-crash-expected.png.
      * platform/mac-yosemite/svg/custom/use-font-face-crash-expected.txt: Copied from LayoutTests/platform/mac/svg/custom/use-font-face-crash-expected.txt.
      * platform/mac/fast/dom/adopt-attribute-crash-expected.txt: Added.
      * platform/mac/fast/parser/xml-colon-entity-expected.txt: Added.
      * platform/mac/fast/parser/xml-declaration-missing-ending-mark-expected.txt: Added.
      * platform/mac/fast/xsl/xslt-extra-content-at-end-expected.png:
      * platform/mac/fast/xsl/xslt-extra-content-at-end-expected.txt:
      * platform/mac/fast/xsl/xslt-missing-namespace-in-xslt-expected.png:
      * platform/mac/fast/xsl/xslt-missing-namespace-in-xslt-expected.txt:
      * platform/mac/svg/custom/bug78807-expected.txt: Added.
      * platform/mac/svg/custom/missing-xlink-expected.png:
      * platform/mac/svg/custom/missing-xlink-expected.txt:
      * platform/mac/svg/custom/path-bad-data-expected.png:
      * platform/mac/svg/custom/path-bad-data-expected.txt:
      * platform/mac/svg/custom/use-font-face-crash-expected.png:
      * platform/mac/svg/custom/use-font-face-crash-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187148 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3cec1ec5
    • commit-queue@webkit.org's avatar
      Web Inspector: console.log("%d", 0) or console.log("%d", "str") show nothing,... · 389bafae
      commit-queue@webkit.org authored
      Web Inspector: console.log("%d", 0) or console.log("%d", "str") show nothing, expected Number or NaN
      https://bugs.webkit.org/show_bug.cgi?id=147163
      
      Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-07-21
      Reviewed by Timothy Hatcher.
      
      * UserInterface/Views/ConsoleMessageView.js:
      (WebInspector.ConsoleMessageView.prototype._formatWithSubstitutionString.append):
      When appending the result for a substitution formatter, don't check against a
      falsey value, check against undefined. This will allow falsely values like
      0 and NaN to be output as expected.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187147 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      389bafae
    • commit-queue@webkit.org's avatar
      Web Inspector: [Mac] "Open Image In New Window" context menu item does nothing on an image · f22df148
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=147175
      
      Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-07-21
      Reviewed by Timothy Hatcher.
      
      Source/WebKit/mac:
      
      * WebCoreSupport/WebInspectorClient.mm:
      (-[WebInspectorWindowController webView:contextMenuItemsForElement:defaultMenuItems:]):
      Remove default context menus that won't work in the inspector page.
      
      Source/WebKit2:
      
      * UIProcess/mac/WebInspectorProxyMac.mm:
      (WebKit::getContextMenuFromProposedMenu):
      (WebKit::WebInspectorProxy::platformCreateInspectorPage):
      Remove default context menus that won't work in the inspector page.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187146 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f22df148
    • commit-queue@webkit.org's avatar
      Web Inspector: Node highlights are wrong when the page is zoomed · e69b94f4
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=147177
      
      Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-07-21
      Reviewed by Simon Fraser.
      
      * inspector/InspectorOverlay.cpp:
      (WebCore::InspectorOverlay::update):
      Remove scaling that appears to no longer be needed, it was double
      scaling the overlay content and misplacing it in the process.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187145 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e69b94f4
    • dino@apple.com's avatar
      Default media controls use a serif font, which seems wrong · 6709b594
      dino@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=147179
      <rdar://problem/21931728>
      
      Reviewed by Simon Fraser.
      
      The captions menu (and other text) should use a system style,
      -webkit-small-control.
      
      * Modules/mediacontrols/mediaControlsApple.css:
      (::-webkit-media-controls):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187144 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6709b594
    • utatane.tea@gmail.com's avatar
      Add newTarget accessor to JS constructor written in C++ · 221fbc41
      utatane.tea@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=147160
      
      Reviewed by Geoffrey Garen.
      
      This patch adds `ExecState#newTarget()` which returns `new.target` defined in ECMA262 6th.
      It enables some C++ constructors (like Intl.XXX constructors) to leverage this to complete
      its implementation.
      
      When the constructor is called, |this| in the arguments is used for storing new.target instead.
      So by adding the accessor for |this|, JS constructor written in C++ can access new.target.
      
      And at the same time, this patch extends the existing `construct` to accept new.target value.
      It is corresponding to the spec's Construct abstract operation.
      
      * interpreter/CallFrame.h:
      (JSC::ExecState::newTarget):
      * interpreter/Interpreter.cpp:
      (JSC::Interpreter::executeConstruct):
      * interpreter/Interpreter.h:
      * runtime/ConstructData.cpp:
      (JSC::construct):
      * runtime/ConstructData.h:
      (JSC::construct):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187142 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      221fbc41
    • commit-queue@webkit.org's avatar
      Exposed method to query device by UID · 882ce5a8
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=147117
      <rdar://problem/21904678>
      
      Patch by Matthew Daiter <mdaiter@apple.com> on 2015-07-21
      Reviewed by Eric Carlson.
      
      * platform/mediastream/mac/AVCaptureDeviceManager.h: Added method to
      query device by UID
      * platform/mediastream/mac/AVCaptureDeviceManager.mm: Ditto
      (WebCore::AVCaptureDeviceManager::sourceWithUID): Ditto
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187140 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      882ce5a8
    • fpizlo@apple.com's avatar
      Unreviewed, fix a lot of tests. Need to initialize WTF threading sooner. · da5ae19e
      fpizlo@apple.com authored
      * jsc.cpp:
      (main):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187139 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      da5ae19e
  2. 21 Jul, 2015 30 commits
    • benjamin@webkit.org's avatar
      [Content Extensions] Use a jump table when consecutive transitions have different targets · 3787c103
      benjamin@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=147099
      
      Reviewed by Alex Christensen.
      
      Source/WebCore:
      
      When handling consecutive single transitions, merge them into
      a jump table instead of creating many individual CheckValue.
      
      From local testing on x86_64, it reduces the bytecode size by about 5%
      and improve the runtime by about 10%.
      
      * contentextensions/DFABytecode.h:
      (WebCore::ContentExtensions::instructionSizeWithArguments):
      * contentextensions/DFABytecodeCompiler.cpp:
      (WebCore::ContentExtensions::DFABytecodeCompiler::extractJumpTable):
      (WebCore::ContentExtensions::DFABytecodeCompiler::transitions):
      (WebCore::ContentExtensions::DFABytecodeCompiler::checkForJumpTableMaxBytecodeSize):
      (WebCore::ContentExtensions::DFABytecodeCompiler::compileJumpTable):
      (WebCore::ContentExtensions::DFABytecodeCompiler::nodeTransitionsMaxBytecodeSize):
      (WebCore::ContentExtensions::DFABytecodeCompiler::compileNodeTransitions):
      (WebCore::ContentExtensions::DFABytecodeCompiler::ranges): Deleted.
      * contentextensions/DFABytecodeCompiler.h:
      * contentextensions/DFABytecodeInterpreter.cpp:
      (WebCore::ContentExtensions::DFABytecodeInterpreter::interpetJumpTable):
      (WebCore::ContentExtensions::DFABytecodeInterpreter::interpret):
      * contentextensions/DFABytecodeInterpreter.h:
      
      Source/WebKit2:
      
      * UIProcess/API/APIUserContentExtensionStore.h:
      
      LayoutTests:
      
      Add some primitive testing to make sure the code is covered.
      
      * http/tests/contentextensions/test-jump-table-bytecode-generation-expected.txt: Added.
      * http/tests/contentextensions/test-jump-table-bytecode-generation.html: Added.
      * http/tests/contentextensions/test-jump-table-bytecode-generation.html.json: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187137 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3787c103
    • dbates@webkit.org's avatar
      Fix the build following <https://trac.webkit.org/changeset/187129> · 074a805b
      dbates@webkit.org authored
      (https://bugs.webkit.org/show_bug.cgi?id=147112)
      
      * UIProcess/WebProcessProxy.cpp:
      (WebKit::WebProcessProxy::reinstateNetworkProcessAssertionState): Guard implementation with PLATFORM(IOS)
      since this logic is specific to the iOS port.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187136 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      074a805b
    • simon.fraser@apple.com's avatar
      Rename the 'View' log channel to 'Printing' · ea5c2742
      simon.fraser@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=147172
      
      Reviewed by Zalan Bujtas.
      
      "View" was a terrible name for a log channel that was all about printing.
      Sort the log channels.
      
      * Platform/Logging.h:
      * UIProcess/API/mac/WKView.mm:
      (-[WKView drawRect:]):
      (-[WKView printOperationWithPrintInfo:forFrame:]):
      * UIProcess/mac/WKPrintingView.mm:
      (-[WKPrintingView _preparePDFDataForPrintingOnSecondaryThread]):
      (pageDidComputePageRects):
      (-[WKPrintingView knowsPageRange:]):
      (-[WKPrintingView drawRect:]):
      (-[WKPrintingView rectForPage:]):
      (-[WKPrintingView beginDocument]):
      (-[WKPrintingView endDocument]):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187135 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ea5c2742
    • simon.fraser@apple.com's avatar
      Add a logging channel for Layout, remove the LiveConnect channel · 74be9bf8
      simon.fraser@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=147170
      
      Reviewed by Zalan Bujtas.
      
      Add a layout logging channel to WebCore, and remove the LiveConnect channel.
      
      Source/WebCore:
      
      * page/FrameView.cpp:
      (WebCore::FrameView::adjustViewSize):
      (WebCore::FrameView::forceLayoutParentViewIfNeeded):
      (WebCore::FrameView::layout):
      (WebCore::FrameView::performPostLayoutTasks):
      (WebCore::FrameView::autoSizeIfEnabled):
      * platform/Logging.h:
      
      Source/WebKit/mac:
      
      * Misc/WebKitLogging.h:
      * Plugins/WebNetscapePluginPackage.mm:
      (-[WebNetscapePluginPackage _tryLoad]): Deleted.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187134 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      74be9bf8
    • benjamin@webkit.org's avatar
      StyleSheetContents::wrapperInsertRule() can create rules that overflow RuleData's selector index · cb0a273e
      benjamin@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=147144
      
      Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-07-21
      Reviewed by Alex Christensen.
      
      Source/WebCore:
      
      RuleData identifies selectors by the index in a large array. The index only has 13 bits
      so rules with more than 8192 selectors should be split.
      
      One of the paths was not splitting the rule: StyleSheetContents::wrapperInsertRule().
      When rules with too many selectors were added, the index would overflow and
      some RuleData would point to selectors in the middle of selector chains. The resulting
      behavior is random based on the selectors and the DOM.
      
      We cannot easily fix that because the CSS OM API do not expect to create
      several rules in response to calls to the API.
      In this patch, I don't do anything fancy and just let the calls fail
      if we cannot use the rules safely.
      
      
      Content Extensions were also running into this problem. Large Selector lists are
      pretty common, and ContentExtensionStyleSheet::addDisplayNoneSelector() was
      overflowing the RuleData, creating broken page.
      
      Unlike CSSOM, there is no problem with splitting rules coming from Content Extensions.
      Instead of creating new APIs for that case, I rely on the parser to extend the StyleSheetContents.
      That code already knows how to break rules correctly.
      
      Tests: fast/css/insert-rule-overflow-rule-data.html
             http/tests/contentextensions/css-display-none-overflows-rule-data-1.html
             http/tests/contentextensions/css-display-none-overflows-rule-data-2.html
      
      * contentextensions/ContentExtensionStyleSheet.cpp:
      (WebCore::ContentExtensions::ContentExtensionStyleSheet::addDisplayNoneSelector):
      * css/StyleSheetContents.cpp:
      (WebCore::StyleSheetContents::wrapperInsertRule):
      
      LayoutTests:
      
      This bug was affecting two parts of WebKit:
      -In CSSOM, StyleSheet.insertRule() could create bogus rules.
       The new test verifies that the call fails instead of creating undefined
       behaviors.
      -In ContentExtensions, large selectors are now working correctly. The tests
       cover the case of a default stylesheet and an dynamic stylesheet.
      
      * fast/css/insert-rule-overflow-rule-data-expected.txt: Added.
      * fast/css/insert-rule-overflow-rule-data.html: Added.
      * http/tests/contentextensions/css-display-none-overflows-rule-data-1-expected.txt: Added.
      * http/tests/contentextensions/css-display-none-overflows-rule-data-1.html: Added.
      * http/tests/contentextensions/css-display-none-overflows-rule-data-1.html.json: Added.
      * http/tests/contentextensions/css-display-none-overflows-rule-data-2-expected.txt: Added.
      * http/tests/contentextensions/css-display-none-overflows-rule-data-2.html: Added.
      * http/tests/contentextensions/css-display-none-overflows-rule-data-2.html.json: Added.
      * http/tests/contentextensions/css-display-none-overflows-rule-data-3-expected.txt: Added.
      * http/tests/contentextensions/css-display-none-overflows-rule-data-3.html: Added.
      * http/tests/contentextensions/css-display-none-overflows-rule-data-3.html.json: Added.
      * http/tests/contentextensions/css-display-none-overflows-rule-data-4-expected.txt: Added.
      * http/tests/contentextensions/css-display-none-overflows-rule-data-4.html: Added.
      * http/tests/contentextensions/css-display-none-overflows-rule-data-4.html.json: Added.
      * http/tests/contentextensions/css-display-none-overflows-rule-data-5-expected.txt: Added.
      * http/tests/contentextensions/css-display-none-overflows-rule-data-5.html: Added.
      * http/tests/contentextensions/css-display-none-overflows-rule-data-5.html.json: Added.
      * http/tests/contentextensions/css-display-none-overflows-rule-data-6-expected.txt: Added.
      * http/tests/contentextensions/css-display-none-overflows-rule-data-6.html: Added.
      * http/tests/contentextensions/css-display-none-overflows-rule-data-6.html.json: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187133 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cb0a273e
    • commit-queue@webkit.org's avatar
      [Win] Add needTouchEvents() stub to WebChromeClient.h for a successful build... · b2557c2d
      commit-queue@webkit.org authored
      [Win] Add needTouchEvents() stub to WebChromeClient.h for a successful build with ENABLE_TOUCH_EVENTS=ON
      https://bugs.webkit.org/show_bug.cgi?id=147141
      
      Patch by Sungmann Cho <sungmann.cho@navercorp.com> on 2015-07-21
      Reviewed by Darin Adler.
      
      * WebCoreSupport/WebChromeClient.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187132 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b2557c2d
    • zalan@apple.com's avatar
      [iOS] Menu drop down such as on nike.com does not stay · ff51f3ca
      zalan@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=147047
      rdar://problem/21046961
      
      Reviewed by Benjamin Poulain.
      
      This is a workaround for unintended scrolling while scaling.
      (Based on Benjamin Poulain's WIP patch for webkit.org/b/136904)
      
      In certain cases when scaling would result in moving the scrollview (which would trigger
      a scroll event on WebCore side), zoomRect is called instead of setZoomScale to ensure
      that the scroll position stays intact.
      
      * UIProcess/API/Cocoa/WKWebView.mm:
      (-[WKWebView _didCommitLayerTree:]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187131 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ff51f3ca
    • jhoneycutt@apple.com's avatar
      [iOS] Keyboard bold/italic/underline keys don't highlight after being · ebd8f100
      jhoneycutt@apple.com authored
      tapped to style a selection
      https://bugs.webkit.org/show_bug.cgi?id=147164
      <rdar://problem/21630806>
      
      Reviewed by Ryosuke Niwa.
      
      * editing/cocoa/EditorCocoa.mm:
      (WebCore::Editor::styleForSelectionStart):
      Use adjustedSelectionStartForStyleComputation(), which will ensure that
      we're at the start of the selected node, not at the end of the node
      before the selection.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187130 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ebd8f100
    • dbates@webkit.org's avatar
      WTFCrash() in WebKit::WebProcess::networkConnection() · 18de8414
      dbates@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=147112
      <rdar://problem/18477459>
      
      Reviewed by Gavin Barraclough.
      
      Source/WebKit2:
      
      Fixes an issue where a newly launched network process may be jetsam'd because it has not
      taken a process assertion between the time it was launched and the time when a web process
      makes use of it.
      
      Initially a network process does not have a process assertion. A process assertion is taken
      (if one has not been taken) for the network process when a process assertion is taken for at
      least one web process. When the network process crashes a WebProcess may ultimately launch a
      new network process in WebProcess::networkConnection(). The new network process may be jetsam'd
      immediately when the system is under some measure pressure because it has a low jetsam priority,
      0 (since it does not have a process assertion and higher priority implies that a process is less
      likely to be jetsam'd). And the logic in WebProcess::networkConnection() explicitly calls
      CRASH() if the newly launched network process crashes immediately. Towards preventing the newly
      launched network process from being jetsam'd we should obtain a process assertion for it.
      
      * UIProcess/WebProcessPool.cpp:
      (WebKit::WebProcessPool::WebProcessPool): Initialize m_didNetworkProcessCrash to false.
      (WebKit::WebProcessPool::ensureNetworkProcess): If the network process crashed (m_didNetworkProcessCrash == true)
      then tell each process in the pool to reinstate their network activity token for the new network process.
      (WebKit::WebProcessPool::networkProcessCrashed): Set m_didNetworkProcessCrash to true when the
      network process crashed.
      * UIProcess/WebProcessPool.h:
      * UIProcess/WebProcessProxy.cpp:
      (WebKit::WebProcessProxy::reinstateNetworkProcessAssertionState): Added.
      (WebKit::WebProcessProxy::didSetAssertionState): Add assert to ensure we never have both
      a background- and foreground- activity token for the network process.
      * UIProcess/WebProcessProxy.h:
      
      Source/WTF:
      
      Add explicit boolean conversion function and remove overload of operator! to support
      checking whether an activity token is valid more directly than using the overloaded operator!.
      
      * wtf/RefCounter.h:
      (WTF::RefCounter::Token::operator bool): Added.
      (WTF::RefCounter::Token::operator!): Deleted.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187129 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      18de8414
    • timothy_horton@apple.com's avatar
      Placing video in fullscreen caused WebKit crash at WebCore::Range::textQuads · eadfbf83
      timothy_horton@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=147166
      <rdar://problem/21928558>
      
      Reviewed by Simon Fraser.
      
      * editing/FrameSelection.cpp:
      (WebCore::FrameSelection::getClippedVisibleTextRectangles):
      Check the Range, as always.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187128 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      eadfbf83
    • mmaxfield@apple.com's avatar
      [El Capitan] Test gardening · 51f0da23
      mmaxfield@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=147059
      
      * platform/mac-yosemite/fast/dom/52776-expected.png: Copied from LayoutTests/platform/mac/fast/dom/52776-expected.png.
      * platform/mac-yosemite/fast/text/complex-text-opacity-expected.png: Copied from LayoutTests/platform/mac/fast/text/complex-text-opacity-expected.png.
      * platform/mac-yosemite/fast/text/font-weights-expected.png: Copied from LayoutTests/platform/mac/fast/text/font-weights-expected.png.
      * platform/mac-yosemite/fast/text/indic-expected.png: Copied from LayoutTests/platform/mac/fast/text/indic-expected.png.
      * platform/mac-yosemite/fast/text/indic-expected.txt: Copied from LayoutTests/platform/mac/fast/text/indic-expected.txt.
      * platform/mac-yosemite/fast/text/international/bidi-AN-after-L-expected.png: Copied from LayoutTests/platform/mac/fast/text/international/bidi-AN-after-L-expected.png.
      * platform/mac-yosemite/fast/text/international/bidi-mirror-he-ar-expected.png: Copied from LayoutTests/platform/mac/fast/text/international/bidi-mirror-he-ar-expected.png.
      * platform/mac-yosemite/fast/text/international/bidi-neutral-directionality-paragraph-start-expected.png: Copied from LayoutTests/platform/mac/fast/text/international/bidi-neutral-directionality-paragraph-start-expected.png.
      * platform/mac-yosemite/fast/text/international/bidi-neutral-run-expected.png: Copied from LayoutTests/platform/mac/fast/text/international/bidi-neutral-run-expected.png.
      * platform/mac-yosemite/fast/text/international/danda-space-expected.png: Copied from LayoutTests/platform/mac/fast/text/international/danda-space-expected.png.
      * platform/mac-yosemite/fast/text/international/danda-space-expected.txt: Copied from LayoutTests/platform/mac/fast/text/international/danda-space-expected.txt.
      * platform/mac-yosemite/svg/W3C-SVG-1.1/text-intro-05-t-expected.png: Copied from LayoutTests/platform/mac/svg/W3C-SVG-1.1/text-intro-05-t-expected.png.
      * platform/mac-yosemite/svg/text/text-intro-05-t-expected.png: Copied from LayoutTests/platform/mac/svg/text/text-intro-05-t-expected.png.
      * platform/mac/fast/dom/52776-expected.png:
      * platform/mac/fast/dom/52776-expected.txt:
      * platform/mac/fast/text/arabic-times-new-roman-expected.png:
      * platform/mac/fast/text/arabic-times-new-roman-expected.txt:
      * platform/mac/fast/text/complex-text-opacity-expected.png:
      * platform/mac/fast/text/complex-text-opacity-expected.txt:
      * platform/mac/fast/text/font-weights-expected.png:
      * platform/mac/fast/text/font-weights-expected.txt:
      * platform/mac/fast/text/indic-expected.png:
      * platform/mac/fast/text/indic-expected.txt:
      * platform/mac/fast/text/international/bidi-AN-after-L-expected.png:
      * platform/mac/fast/text/international/bidi-AN-after-L-expected.txt:
      * platform/mac/fast/text/international/bidi-mirror-he-ar-expected.png:
      * platform/mac/fast/text/international/bidi-mirror-he-ar-expected.txt:
      * platform/mac/fast/text/international/bidi-neutral-directionality-paragraph-start-expected.png:
      * platform/mac/fast/text/international/bidi-neutral-directionality-paragraph-start-expected.txt:
      * platform/mac/fast/text/international/bidi-neutral-run-expected.png:
      * platform/mac/fast/text/international/bidi-neutral-run-expected.txt:
      * platform/mac/fast/text/international/danda-space-expected.png:
      * platform/mac/fast/text/international/danda-space-expected.txt:
      * platform/mac/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png:
      * platform/mac/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt:
      * platform/mac/svg/W3C-SVG-1.1/text-intro-05-t-expected.png:
      * platform/mac/svg/W3C-SVG-1.1/text-intro-05-t-expected.txt:
      * platform/mac/svg/text/text-intro-05-t-expected.png:
      * platform/mac/svg/text/text-intro-05-t-expected.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187126 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      51f0da23
    • fpizlo@apple.com's avatar
      Fixed VM pool allocation should have a reserve for allocations that cannot fail · 7f4fe1f4
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=147154
      rdar://problem/21847618
      
      Reviewed by Geoffrey Garen.
              
      Source/JavaScriptCore:
      
      This adds the notion of a JIT pool reserve fraction. Some fraction, currently 1/4, of
      the JIT pool is reserved for allocations that cannot fail. It makes sense to make this
      a fraction rather than a constant because each allocation that can fail may cause some
      number of allocations that cannot fail (for example, the OSR exit thunks that we
      compile when we exit from some CodeBlock cannot fail).
              
      I've tested this by adding a test mode where we artificially limit the JIT pool size.
      Prior to the fix, we had >20 failures. Now we have none.
      
      * heap/GCLogging.cpp:
      (WTF::printInternal): I needed a dump method on Options members when debugging this.
      * heap/GCLogging.h:
      * jit/ExecutableAllocator.h: Raise the ARM64 limit to 32MB because 16MB is cutting it too close.
      * jit/ExecutableAllocatorFixedVMPool.cpp:
      (JSC::FixedVMPoolExecutableAllocator::FixedVMPoolExecutableAllocator): Add the ability to artificially limit JIT pool size for testing.
      (JSC::ExecutableAllocator::memoryPressureMultiplier): Implement the reserve when computing memory pressure for JIT tier-up heuristics.
      (JSC::ExecutableAllocator::allocate): Implement the reserve when allocating can-fail things.
      * jsc.cpp: Rewire some options parsing so that CommandLine happens before we create the JIT pool.
      (main):
      (CommandLine::parseArguments):
      (jscmain):
      * runtime/Options.cpp: 
      (JSC::OptionRange::dump): I needed a dump method on Options members when debugging this.
      (JSC::Options::initialize): This can now be called more than once.
      * runtime/Options.h:
      
      Tools:
      
      Add a new test mode where we artificially limit JIT memory to 50KB. If our JIT OOM
      mitigations work, these should all pass. Prior to this patch there were >20 failures.
      
      * Scripts/run-jsc-stress-tests:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187125 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7f4fe1f4
    • dbates@webkit.org's avatar
      ASSERT(m_suspendMessageCount >= 0) fails in ProcessThrottler::didCancelProcessSuspension() · 2b1a429f
      dbates@webkit.org authored
      when WebContent process crashes; Network process may never voluntarily suspend
      https://bugs.webkit.org/show_bug.cgi?id=147122
      <rdar://problem/21906759>
      
      Reviewed by Chris Dumez.
      
      Fixes an issue where the network process may never voluntarily release its process assertion.
      
      Currently the network process always sends both a ProcessReadyToSuspend and CancelPrepareToSuspend
      message in response to receiving a PrepareToSuspend message and CancelPrepareToSuspend message,
      respectively. The process throttler expects to receive either a ProcessReadyToSuspend message
      or a CancelPrepareToSuspend message (and not both) in response to sending the message sequence
      PrepareToSuspend, CancelPrepareToSuspend. When a process throttler receives both messages in
      response to this sequence then its internal message count becomes imbalanced and it will
      never release the process assertion it manages. One user interaction that can cause such an
      imbalance, in the process throttler held by NetworkProcessProxy, is switching tabs.
      
      * NetworkProcess/NetworkProcess.cpp:
      (WebKit::NetworkProcess::cancelPrepareToSuspend): Do not send message NetworkProcessProxy::DidCancelProcessSuspension.
      * UIProcess/Network/NetworkProcessProxy.cpp:
      (WebKit::NetworkProcessProxy::didCancelProcessSuspension): Deleted.
      * UIProcess/Network/NetworkProcessProxy.h:
      * UIProcess/Network/NetworkProcessProxy.messages.in: Remove message NetworkProcessProxy::DidCancelProcessSuspension.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187124 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2b1a429f
    • commit-queue@webkit.org's avatar
      Web Inspector: Total download size doesn't update soon after loading · 8e755281
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=147161
      
      Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-07-21
      Reviewed by Timothy Hatcher.
      
      * UserInterface/Models/DefaultDashboard.js:
      (WebInspector.DefaultDashboard.prototype._mainResourceDidChange):
      Previously autorecording would always have made us start capturing,
      however we only autorecord if users are on the Timeline tab. Just
      reset the time always, a navigation happened and start the timer.
      
      (WebInspector.DefaultDashboard.prototype._resourceSizeDidChange):
      Move to a better location within the file.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187123 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8e755281
    • commit-queue@webkit.org's avatar
      Make sure to invalidate requests for user media after webpage reset · 19c76f56
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=147155
      <rdar://problem/21924174>
      
      Patch by Matthew Daiter <mdaiter@apple.com> on 2015-07-21
      Reviewed by Brent Fulgham.
      
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::resetState): Added user media reset
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187122 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      19c76f56
    • simon.fraser@apple.com's avatar
      Safari mis-applies "animation-fill-mode: forwards" when using fractional iteration count · 187e4e4e
      simon.fraser@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=146996
      
      Reviewed by Dean Jackson.
      Source/WebCore:
      
      animation-fill-mode: forwards with fractional iteration counts always snapped to
      1 or 0, depending on direction. Fix to compute the fill-forward state from the
      correct keyframes.
      
      If filling forwards, AnimationBase::progress() sets the elapsed time to the duration,
      then uses fractionalTime() to handle animation direction mapping. If the fractionalTime
      is integral, we can return early, avoiding the cost of mapping through timing functions.
      
      Tested by existing tests.
      
      * page/animation/AnimationBase.cpp:
      (WebCore::AnimationBase::progress):
      (WebCore::AnimationBase::getElapsedTime):
      * page/animation/KeyframeAnimation.cpp:
      (WebCore::KeyframeAnimation::fetchIntervalEndpointsForProperty): It was possible
      to end up with prevIndex == nextIndex with reverse animations, which resulted
      in divide-by-zero when computing scale. Fix by picking a nextIndex that is different
      from prevIndex.
      
      LayoutTests:
      
      Progressions, improved tests.
      
      * animations/animation-direction-reverse-fill-mode-expected.txt: New results; this is a progression.
      * animations/animation-direction-reverse-fill-mode.html: Use a shorter animation. Fixed results.
      * animations/fill-mode-iteration-count-non-integer-expected.txt:
      * animations/fill-mode-iteration-count-non-integer.html: Use iteration counts that are not multiplies
      of 0.5, so the test can differentiation between forward and backwards states. Add a non-linear timing
      function to check that fill-forwards consults the timing functions. Don't print exact succeeding
      results because they may have floating point values.
      * animations/fill-mode-reverse-expected.txt: New results; this is a progression.
      * animations/fill-mode-reverse.html: Fixed results, use gray.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187121 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      187e4e4e
    • hyatt@apple.com's avatar
      Fix failing WK1 layout tests. Make sure to reset the text zoom scale · 2e3783b6
      hyatt@apple.com authored
      in Internals::resetToConsistentState.
      
      Reviewed by Anders Carlsson
      
      * testing/Internals.cpp:
      (WebCore::Internals::resetToConsistentState):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187120 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2e3783b6
    • saambarati1@gmail.com's avatar
      ObjectPatternNode's entry should use "const Identifier&" instead of "Identifier" · 35f2d69c
      saambarati1@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=147156
      
      Reviewed by Andreas Kling.
      
      * parser/Nodes.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187119 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      35f2d69c
    • basile_clement@apple.com's avatar
      Object allocation sinking phase is performing needless HashMap copies · 17e04974
      basile_clement@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=147159
      
      Reviewed by Geoffrey Garen.
      
      The points-to analyzer in the object allocation sinking phase is
      currently performing copies of its allocation and pointers tables in
      several places. While this is not a huge problem since those tables are
      usually small and we are in the FTL path anyway, we still shouldn't be
      doing such useless copying.
      
      This patch also removes the DFGInsertOSRHintsForUpdate files that are
      no longer needed with the new object sinking phase and should have been
      removed in r186795.
      
      * CMakeLists.txt:
      * JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
      * JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
      * JavaScriptCore.xcodeproj/project.pbxproj:
      * dfg/DFGInsertOSRHintsForUpdate.cpp: Removed.
      (JSC::DFG::insertOSRHintsForUpdate): Deleted.
      * dfg/DFGInsertOSRHintsForUpdate.h: Removed.
      * dfg/DFGObjectAllocationSinkingPhase.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187118 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      17e04974
    • timothy_horton@apple.com's avatar
      [iOS] Avoid using a TextIndicator if there are non-text things to indicate · c0b96ea8
      timothy_horton@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=147152
      <rdar://problem/21921061>
      
      Reviewed by Beth Dakin.
      
      * UIProcess/ios/WKContentViewInteraction.mm:
      (-[WKContentView willPresentPreviewViewController:forPosition:inSourceView:]):
      * WebProcess/WebPage/ios/WebPageIOS.mm:
      (WebKit::shouldUseTextIndicatorForLink):
      (WebKit::WebPage::getPositionInformation):
      Fall back to a rectangular area instead of a TextIndicator if there are any
      non-inline elements inside the link.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187117 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c0b96ea8
    • commit-queue@webkit.org's avatar
      REGRESSION (r172417, r184065): Multiple rendering issues with fixed attached background-image · 68f3362f
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=147049
      <rdar://problem/21110936>
      
      Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2015-07-21
      Reviewed by Simon Fraser.
      Source/WebCore:
      
      The fixed-attached background-image rendering is special. In general, to
      display it, the destinationSize should be set to visibleContentSize. The
      destinationLocation should be set such that the background-image does
      not move with scrolling. The topContentInset should be subtracted from
      the destinationLocation such that background-image can be rendered blurred
      in the topContentArea. However there are cases in which these rules have to
      be changed.
      
      -- destinationSize: In the case of fixed layout size, the fixedLayoutSize
      is bigger than the visibleContentSize. In this case, if the background-image
      belongs to the root element, the destinationSize has to be set to fixedLayoutSize.
      Otherwise it has to be set to the borderBoxSize unless the overflow is
      hidden.
      
      -- destinationLocation: If the background-image belongs to the root element, no
      scroll offset to added to destinationLocation. For non-root element case,
      FrameView::documentScrollOffsetRelativeToViewOrigin() should be used if no page
      scaling is applied. Otherwise FrameView::scrollOffsetForFixedPosition() should be
      used instead.
      
      Tests: platform/mac-wk2/tiled-drawing/fixed-layout-size-fixed-attachment-cover.html
             platform/mac-wk2/tiled-drawing/fixed-layout-size-fixed-attachment-local.html
      
      * rendering/RenderBoxModelObject.cpp:
      (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry): Ensure
      the geometry for the fixed-attached background-image is calculated correctly.
      
      * rendering/RenderLayerBacking.cpp:
      (WebCore::RenderLayerBacking::updateGeometry): Ensure the background layer
      gets the correct size for the fixedLayoutSize mode.
      
      LayoutTests:
      
      fixedLayoutSize background-image rendering for root and non-root elements.
      
      * platform/mac-wk2/tiled-drawing/fixed-layout-size-fixed-attachment-cover-expected.html: Added.
      * platform/mac-wk2/tiled-drawing/fixed-layout-size-fixed-attachment-cover.html: Added.
      * platform/mac-wk2/tiled-drawing/fixed-layout-size-fixed-attachment-local-expected.html: Added.
      * platform/mac-wk2/tiled-drawing/fixed-layout-size-fixed-attachment-local.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187116 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      68f3362f
    • akling@apple.com's avatar
      API::Session should clean up its storage in the network process when destroyed. · 2366d280
      akling@apple.com authored
      <https://webkit.org/b/147139>
      <rdar://problem/21838764>
      
      Reviewed by Anders Carlsson.
      
      Have ~Session() send a DestroyPrivateBrowsingSession message to all networking processes
      for ephemeral sessions. This plugs a NetworkStorageSession leak that could retain a large
      CFNetwork object graph.
      
      * UIProcess/API/APISession.cpp:
      (API::Session::~Session):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187115 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2366d280
    • commit-queue@webkit.org's avatar
      Make PluginProxy::handleMouseEvent() asynchronous. · 37d4e7a4
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=146142
      
      Patch by Sungmann Cho <sungmann.cho@navercorp.com> on 2015-07-21
      Reviewed by Anders Carlsson.
      
      PluginProxy::handleMouseEvent() forwards the generated mouse event to PluginControllerProxy
      using a synchronous message, but the recipient always reply immediately with the same value("true")
      even before handling the received message. So I think PluginProxy::handleMouseEvent() is perfectly
      OK to process its messages asynchronously.
      
      Source/WebKit2:
      
      * PluginProcess/PluginControllerProxy.cpp:
      (WebKit::PluginControllerProxy::handleMouseEvent):
      * PluginProcess/PluginControllerProxy.h:
      * PluginProcess/PluginControllerProxy.messages.in:
      * WebProcess/Plugins/PluginProxy.cpp:
      (WebKit::PluginProxy::handleMouseEvent):
      
      LayoutTests:
      
      platform/mac-wk2/plugins/mouse-events-expected.txt was introduced by webkit.org/b/116665 to avoid
      flakey tests, but from now on we can share the common expectations.
      
      * platform/mac-wk2/plugins/mouse-events-expected.txt: Removed.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187114 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      37d4e7a4
    • timothy_horton@apple.com's avatar
      c33b0e68
    • ossy@webkit.org's avatar
      Fix the !ENABLE(DETAILS_ELEMENT) build after r186598 · e0a8bfbe
      ossy@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=147115
      
      Reviewed by Chris Fleizach.
      
      * accessibility/AccessibilityNodeObject.cpp:
      (WebCore::AccessibilityNodeObject::setIsExpanded):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187112 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e0a8bfbe
    • saambarati1@gmail.com's avatar
      DestructuringPatternNode and DestructuringAssignmentNode should be ParserArenaFreeable · 91063c9a
      saambarati1@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=147140
      
      Reviewed by Geoffrey Garen.
      
      The descendants of DestructuringPatternNode that need destruction also
      inherit from ParserArenaDeletable.
      
      * parser/Nodes.h:
      (JSC::DestructuringPatternNode::~DestructuringPatternNode):
      (JSC::ObjectPatternNode::appendEntry):
      (JSC::DestructuringAssignmentNode::bindings):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187111 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      91063c9a
    • hyatt@apple.com's avatar
      Need a way to ignore text-zoom in a Web page. · 101ef25f
      hyatt@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=27092
      rdar://problem/7037987
      
      Reviewed by Simon Fraser.
      
      Source/WebCore:
      
      This patch adds a new property, -webkit-text-zoom, with values of normal and reset. The reset
      keyword, just as with the zoom property, can be used to ignore any inherited zoom from the
      document.
      
      Added new test in fast/text.
      
      * Modules/mediacontrols/mediaControlsApple.css:
      (audio::-webkit-media-controls-panel):
      (video::-webkit-media-controls-panel):
      * css/CSSComputedStyleDeclaration.cpp:
      (WebCore::ComputedStyleExtractor::propertyValue):
      * css/CSSParser.cpp:
      (WebCore::CSSParser::parseValue):
      * css/CSSPrimitiveValueMappings.h:
      (WebCore::CSSPrimitiveValue::operator ContentDistributionType):
      (WebCore::CSSPrimitiveValue::operator TextZoom):
      (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
      * css/CSSPropertyNames.in:
      * css/StyleBuilderConverter.h:
      (WebCore::StyleBuilderConverter::csstoLengthConversionDataWithTextZoomFactor):
      * css/StyleBuilderCustom.h:
      (WebCore::StyleBuilderCustom::applyValueWebkitTextSizeAdjust):
      (WebCore::StyleBuilderCustom::applyValueWebkitTextZoom):
      (WebCore::StyleBuilderCustom::applyTextOrBoxShadowValue):
      * css/StyleResolver.cpp:
      (WebCore::StyleResolver::checkForZoomChange):
      * rendering/style/RenderStyle.cpp:
      (WebCore::RenderStyle::changeRequiresLayout):
      * rendering/style/RenderStyle.h:
      * rendering/style/RenderStyleConstants.h:
      * rendering/style/StyleRareInheritedData.cpp:
      (WebCore::StyleRareInheritedData::StyleRareInheritedData):
      (WebCore::StyleRareInheritedData::operator==):
      * rendering/style/StyleRareInheritedData.h:
      * style/StyleFontSizeFunctions.cpp:
      (WebCore::Style::computedFontSizeFromSpecifiedSize):
      * testing/Internals.cpp:
      (WebCore::Internals::setPageZoomFactor):
      (WebCore::Internals::setTextZoomFactor):
      (WebCore::Internals::setUseFixedLayout):
      * testing/Internals.h:
      * testing/Internals.idl:
      
      LayoutTests:
      
      * fast/text/text-zoom-reset-expected.html: Added.
      * fast/text/text-zoom-reset.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187110 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      101ef25f
    • peavo@outlook.com's avatar
      WinLauncher does not start on WinXP. · 9e108bec
      peavo@outlook.com authored
      https://bugs.webkit.org/show_bug.cgi?id=147147
      
      Reviewed by Alex Christensen.
      
      Source/WebCore:
      
      Calling GetProcessMemoryInfo() on WinXP requires that PSAPI_VERSION is set to 1,
      see https://msdn.microsoft.com/en-us/library/windows/desktop/ms683219(v=vs.85).aspx.
      
      * WebCore.vcxproj/WebCoreCommon.props:
      
      Source/WebKit/win:
      
      ANGLE requires Win7, accelerated compositing must be disabled on earlier Windows versions.
      
      * WebCoreSupport/AcceleratedCompositingContext.cpp:
      (AcceleratedCompositingContext::acceleratedCompositingAvailable):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187109 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9e108bec
    • commit-queue@webkit.org's avatar
      Add support for the new.target syntax. · 17f99e4b
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=147051
      
      Patch by Keith Miller <keith_miller@apple.com> on 2015-07-21
      Reviewed by Yusuke Suzuki.
      
      Add support for new.target. Essentially the implementation is, before constructor calls,
      the target of a "new" is placed where "this" noramlly goes in the calling convention.
      Then in the constructor before object is initialized we move the target of the "new"
      into a local variable.
      
      * bytecompiler/BytecodeGenerator.cpp:
      (JSC::BytecodeGenerator::BytecodeGenerator):
      * bytecompiler/NodesCodegen.cpp:
      (JSC::NewTargetNode::emitBytecode):
      * parser/ASTBuilder.h:
      (JSC::ASTBuilder::newTargetExpr):
      * parser/NodeConstructors.h:
      (JSC::NewTargetNode::NewTargetNode):
      * parser/Nodes.h:
      * parser/Parser.cpp:
      (JSC::Parser<LexerType>::parseMemberExpression):
      * parser/SyntaxChecker.h:
      (JSC::SyntaxChecker::newTargetExpr):
      * runtime/CommonIdentifiers.h:
      * tests/stress/new-target.js: Added.
      (test):
      (call):
      (Constructor.subCall):
      (Constructor.SubConstructor):
      (Constructor):
      (noAssign):
      (doWeirdThings):
      (SuperClass):
      (SubClass):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187108 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      17f99e4b
    • timothy_horton@apple.com's avatar
      Expose shrink-wrapping as UIKit support SPI · 1375bd3b
      timothy_horton@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=147148
      <rdar://problem/21920008>
      
      Reviewed by Simon Fraser.
      
      * Misc/WebUIKitSupport.h:
      * Misc/WebUIKitSupport.mm:
      (WebKitCreatePathWithShrinkWrappedRects):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@187107 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1375bd3b