WebKit-https.git
5 years agoSource/JavaScriptCore: [Win] Pass environment to Pre-Build, Pre-link, and Post-Build...
bfulgham@apple.com [Mon, 10 Mar 2014 19:09:40 +0000 (19:09 +0000)]
Source/JavaScriptCore: [Win] Pass environment to Pre-Build, Pre-link, and Post-Build Stages.
https://bugs.webkit.org/show_bug.cgi?id=130023

Reviewed by Dean Jackson.

* JavaScriptCore.vcxproj/JavaScriptCore.proj: Avoid trailing backslashes in
path names to avoid accidental escaping of later string substitutions.

Source/WebCore: [Win] Pass environment to Pre-Build, Pre-Link, and Post-Build Stages.
https://bugs.webkit.org/show_bug.cgi?id=130023.

Reviewed by Dean Jackson.

* WebCore.vcxproj/WebCore.proj: Avoid trailing slashes in path values to
prevent escaping during later string substitution.

Source/WebKit: [Win] Pass environment to Pre-Build, Pre-Link, and Post-Build Stages.
https://bugs.webkit.org/show_bug.cgi?id=130023

Reviewed by Dean Jackson.

* WebKit.vcxproj/WebKit.make: Removed.
* WebKit.vcxproj/WebKit/WebKitPostBuild.cmd: Use %PlatformArchitecture% rather than
hard-coded 32-bit path.

Source/WTF: [Win] Pass environment to Pre-Build, Pre-Link, and Post-Build Stages.
https://bugs.webkit.org/show_bug.cgi?id=130023.

Reviewed by Dean Jackson.

* WTF.vcxproj/WTF.proj: Avoid putting trailing slashes in system paths to avoid
escaping during later string substitution.
* WTF.vcxproj/build-generated-files.sh: Accept environment values passed by VS.

Tools: [Win] Pass environment to Pre-Build, Pre-Link, and Post-Build Stages.
https://bugs.webkit.org/show_bug.cgi?id=130023

Reviewed by Dean Jackson.

* DumpRenderTree/DumpRenderTree.vcxproj/DumpRenderTree/DumpRenderTreeLauncher.vcxproj: Add missing
/SAFESEH flag to DLL launcher process.

WebKitLibraries: [Win] Pass environment to Pre-Build, Pre-Link, and Post-Build Stages.
https://bugs.webkit.org/show_bug.cgi?id=130023

Reviewed by Dean Jackson.

* win/tools/vsprops/common.props: Pass WEBKIT_LIBRARIES value to subprocesses.
* win/tools/vsprops/debugsuffix.props: Make sure OFFICIAL_BUILD is set.
* win/tools/vsprops/production.props: Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165393 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[X86_64] Smaller code for testb_i8r when register is accumulator.
akling@apple.com [Mon, 10 Mar 2014 18:57:34 +0000 (18:57 +0000)]
[X86_64] Smaller code for testb_i8r when register is accumulator.
<https://webkit.org/b/130026>

Generate the shorthand version of "test al, imm" when possible.

Reviewed by Michael Saboff.

* assembler/X86Assembler.h:
(JSC::X86Assembler::testb_i8r):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165392 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[X86_64] Smaller code for sub_ir when register is accumulator.
akling@apple.com [Mon, 10 Mar 2014 18:57:14 +0000 (18:57 +0000)]
[X86_64] Smaller code for sub_ir when register is accumulator.
<https://webkit.org/b/130025>

Generate the shorthand version of "sub eax, imm" when possible.

Reviewed by Michael Saboff.

* assembler/X86Assembler.h:
(JSC::X86Assembler::subl_ir):
(JSC::X86Assembler::subq_ir):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165391 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[X86_64] Smaller code for add_ir when register is accumulator.
akling@apple.com [Mon, 10 Mar 2014 18:56:36 +0000 (18:56 +0000)]
[X86_64] Smaller code for add_ir when register is accumulator.
<https://webkit.org/b/130024>

Generate the shorthand version of "add eax, imm" when possible.

Reviewed by Michael Saboff.

* assembler/X86Assembler.h:
(JSC::X86Assembler::addl_ir):
(JSC::X86Assembler::addq_ir):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165390 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agowriteBarrier in emitPutReplaceStub is unnecessary
mhahnenberg@apple.com [Mon, 10 Mar 2014 18:55:17 +0000 (18:55 +0000)]
writeBarrier in emitPutReplaceStub is unnecessary
https://bugs.webkit.org/show_bug.cgi?id=130030

Reviewed by Filip Pizlo.

We already emit write barriers for each put-by-id when they're first compiled, so it's
redundant to emit a write barrier as part of the repatched code.

* jit/Repatch.cpp:
(JSC::emitPutReplaceStub):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165389 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[CSS Regions] Hit-testing is not working properly inside scrollable regions
stavila@adobe.com [Mon, 10 Mar 2014 18:48:49 +0000 (18:48 +0000)]
[CSS Regions] Hit-testing is not working properly inside scrollable regions
https://bugs.webkit.org/show_bug.cgi?id=130015

Reviewed by Antti Koivisto.

Source/WebCore:

When hit-testing inside the flow thread's layer, the scrolled offset
of the current region must be taken into consideration.

Test: fast/regions/scrollable-regions-hit-testing-inside.html

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects):

LayoutTests:

Added test for hit-testing inside scrollable regions.

* fast/regions/scrollable-regions-hit-testing-inside-expected.html: Added.
* fast/regions/scrollable-regions-hit-testing-inside.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165388 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[CSS Shapes] SVG Image valued shape fails if root element's size is relative
hmuller@adobe.com [Mon, 10 Mar 2014 18:41:34 +0000 (18:41 +0000)]
[CSS Shapes] SVG Image valued shape fails if root element's size is relative
https://bugs.webkit.org/show_bug.cgi?id=128983

Reviewed by Simon Fraser.

Source/WebCore:

When creating a shape based on an Image, compute its dimensions using
RenderBoxModelObject::calculateImageIntrinsicDimensions(), then set the
ImageResource's containerSize, and then use imageForRenderer() to get the
image to be drawn. The first step resolves SVG Image relative sizes, the
second step creates and caches an SVGImageForContainer with the correct
containerSize, and the last step retrieves the SVGImageForContainer.

Test: fast/shapes/shape-outside-floats/shape-outside-relative-size-svg.html

* rendering/RenderBoxModelObject.h: Publicized calculateImageIntrinsicDimensions() and its enum.
* rendering/shapes/Shape.cpp:
(WebCore::Shape::createRasterShape):
* rendering/shapes/Shape.h:
* rendering/shapes/ShapeInfo.cpp:
(WebCore::getShapeImageAndRect):
(WebCore::ShapeInfo<RenderType>::computedShape):

LayoutTests:

Verify that an SVG Image valued shape-outside with a relatively sized SVG root element
generates a shape with the correct size.

* fast/shapes/shape-outside-floats/shape-outside-relative-size-svg-expected.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-relative-size-svg.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165387 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[GTK][CMAKE] gtk-doc HTML documentation is generated by default when building with...
mrobinson@webkit.org [Mon, 10 Mar 2014 18:35:55 +0000 (18:35 +0000)]
[GTK][CMAKE] gtk-doc HTML documentation is generated by default when building with CMake
https://bugs.webkit.org/show_bug.cgi?id=130016

Reviewed by Carlos Garcia Campos.

* Source/PlatformGTK.cmake: Add two gtkdoc targets, one which builds HTML and one which
doesn't. Add the non-HTML version to the default target, but not the HTML version. The
HTML version will still run when building the distribution tarball.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165386 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoTextIterator: Use StringView and references rather than pointers
darin@apple.com [Mon, 10 Mar 2014 18:30:07 +0000 (18:30 +0000)]
TextIterator: Use StringView and references rather than pointers
https://bugs.webkit.org/show_bug.cgi?id=129975

Reviewed by Anders Carlsson.

Source/WebCore:

TextIterator refinements:
- Use StringView instead of deprecatedCharacters to point to characters within strings.
- Added TextIteratorCopyableText, a safe way to copy the current text of a TextIterator,
  for use by WordAwareIterator.
- Removed m_shouldStop; iterators stop by setting m_positionNode to null, and there is no
  need for a separate boolean to do the same thing.
- Got rid of all the boolean data members set based on the text iterator behavior; instead
  store the behavior in a data member and check it directly.
- Changed most functions to use references rather than pointers.
- Small micro-optimizations, such as using fastGetAttribute rather than getAttribute.
- Switched to nullptr instead of 0 where appropriate.
- Removed unused functions.
- Cut down on use of abbreviations instead of words.
- Renamed data members and argument names for clarity.
- Split up assertions that needlessly asserted more than one thing in a single expression.
- Treat CDATASection just like other Text, since its text will be visible.

* editing/Editor.cpp:
(WebCore::Editor::advanceToNextMisspelling): Pass reference rather than pointer.
(WebCore::Editor::rangeOfString): Ditto.
(WebCore::Editor::countMatchesForText): Ditto.
* editing/TextCheckingHelper.cpp:
(WebCore::TextCheckingHelper::findFirstMisspelling): Ditto.

* editing/TextIterator.cpp:
(WebCore::depthCrossingShadowBoundaries): Take a reference rather than a pointer.
(WebCore::nextInPreOrderCrossingShadowBoundaries): Ditto.
(WebCore::fullyClipsContents): Ditto.
(WebCore::ignoresContainerClip): Ditto.
(WebCore::pushFullyClippedState): Ditto.
(WebCore::setUpFullyClippedStack): Ditto.
(WebCore::isRendererReplacedElement): Use references rather than pointers in the
implementation. Also use fastGetAttribute instead of getAttribute.
(WebCore::TextIteratorCopyableText::reset): Added.
(WebCore::TextIteratorCopyableText::set): Added.
(WebCore::TextIteratorCopyableText::appendToStringBuilder): Added.
(WebCore::TextIterator::TextIterator): Use more initialization rather than assignment.
Got rid of some local variables.
(WebCore::TextIterator::advance): Removed the m_shouldStop boolean, uneeded.
Many other improvements. Use isTextNode instead of nodeType.
(WebCore::hasVisibleTextNode): Changed this into a file-private helper function
instead of a member function.
(WebCore::TextIterator::handleTextNode): Used references and cut down on type casts.
Gave local variables clearer names.
(WebCore::TextIterator::handleTextBox): More of the same.
(WebCore::TextIterator::handleTextNodeFirstLetter): Ditto.
(WebCore::TextIterator::handleReplacedElement): Ditto.
(WebCore::shouldEmitTabBeforeNode): Ditto.
(WebCore::hasHeaderTag): Added.
(WebCore::shouldEmitNewlinesBeforeAndAfterNode): More of the same.
(WebCore::shouldEmitNewlineAfterNode): Ditto.
(WebCore::shouldEmitNewlineBeforeNode): Ditto.
(WebCore::shouldEmitExtraNewlineForNode): Ditto.
(WebCore::collapsedSpaceLength): Use StringImpl directly instead of using the
deprecatedCharacters function.
(WebCore::TextIterator::shouldRepresentNodeOffsetZero): More like above.
(WebCore::TextIterator::shouldEmitSpaceBeforeAndAfterNode): Ditto.
(WebCore::TextIterator::representNodeOffsetZero): Ditto.
(WebCore::TextIterator::handleNonTextNode): Ditto.
(WebCore::TextIterator::exitNode): Ditto.
(WebCore::TextIterator::emitCharacter): Changed to use the new copyable text class
instead of managing the single character buffer directly here.
(WebCore::TextIterator::emitText): Changed to take a Text& and use the copyable text
class. Added a FIXME about a mistake I noticed.
(WebCore::TextIterator::range): Streamlined and simplified a bit. Updated data
member names to be a bit clearer. This function never returned null before, but there
was a code path that looked like it would; I removed that.
(WebCore::TextIterator::node): Removed unneeded null checks; the range function will
never return a range of null or one with null for a start container.
(WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator): More
like above.
(WebCore::SimplifiedBackwardsTextIterator::advance): Reorganized a bit and removed
m_shouldStop.
(WebCore::SimplifiedBackwardsTextIterator::handleTextNode): More of the same.
(WebCore::SimplifiedBackwardsTextIterator::handleFirstLetter): Ditto.
(WebCore::SimplifiedBackwardsTextIterator::handleReplacedElement): Ditto.
(WebCore::SimplifiedBackwardsTextIterator::handleNonTextNode): Ditto.
(WebCore::SimplifiedBackwardsTextIterator::exitNode): Ditto.
(WebCore::SimplifiedBackwardsTextIterator::emitCharacter): Ditto.
(WebCore::SimplifiedBackwardsTextIterator::advanceRespectingRange): Ditto.
(WebCore::SimplifiedBackwardsTextIterator::range): Ditto.
(WebCore::CharacterIterator::CharacterIterator): Ditto.
(WebCore::CharacterIterator::range): Ditto. No need for ASSERT_NO_EXCEPTION.
(WebCore::CharacterIterator::advance): Ditto.
(WebCore::BackwardsCharacterIterator::BackwardsCharacterIterator): Ditto.
(WebCore::BackwardsCharacterIterator::range): Ditto.
(WebCore::BackwardsCharacterIterator::advance): Ditto.
(WebCore::WordAwareIterator::WordAwareIterator): Ditto.
(WebCore::WordAwareIterator::advance): Use copyableText for m_previousText, fixing
the FIXME that I wrote in here before.
(WebCore::WordAwareIterator::text): Ditto.
(WebCore::containsKanaLetters): Changed to quickly return false when the pattern
is all Latin-1 rather than expanding to 16-bit just to check.
(WebCore::SearchBuffer::SearchBuffer): Iterate the target using the string operator[]
instead of using deprecatedCharacters.
(WebCore::SearchBuffer::append): Do the folding of quote marks and hyphens one character
at a time as we move characters into the buffer instead of in a separate loop.
(WebCore::TextIterator::rangeLength): Updated for changes eslwehere.
(WebCore::TextIterator::subrange): Ditto.
(WebCore::isInsideReplacedElement): Ditto. Also streamlined and removed unneeded null check.
(WebCore::TextIterator::rangeFromLocationAndLength): Updated for changes elsewhere and
removed unneeded ASSERT_NO_EXCEPTION.
(WebCore::plainText): Ditto.
(WebCore::collapsedToBoundary): Ditto.
(WebCore::findPlainText): Ditto.

* editing/TextIterator.h: Changed many functions to take references instead of pointers.
Added TextIteratorCopyableText, to represent the current text in a TextIterator in a form
that can be safely copied and used after further iteration. Reorganized member functions so
they are in the same order in all the classes. Changed TextIterator to use
TextIteratorCopyableText. Removed many unused functions, including:
- TextIterator::length
- TextIterator::deprecatedTextIteratorCharacters
- TextIterator::characterAt
- SimplifiedBackwardsTextIterator::length
- CharacterIterator::length
- CharacterIterator::string
- WordAwareIterator::length
- WordAwareIterator::range

* editing/VisibleSelection.cpp:
(WebCore::VisibleSelection::appendTrailingWhitespace): Pass reference rather than pointer.
Use text().length() instead of length(). Check atEnd() before using CharacterIterator, since
iterator member functions don't work when at the end.
* editing/VisibleUnits.cpp:
(WebCore::previousBoundary): Ditto.
(WebCore::nextBoundary): Ditto.
* editing/htmlediting.cpp:
(WebCore::visiblePositionForIndexUsingCharacterIterator): Ditto.
* page/ios/FrameIOS.mm:
(WebCore::Frame::indexCountOfWordPrecedingSelection): Ditto.
(WebCore::Frame::wordsInCurrentParagraph): Ditto.

LayoutTests:

* dom/xhtml/level3/core/nodelookupnamespaceuri14-expected.txt: Updated to expect
the CDATA section to be included in the text output of the test. This changed because
TextIterator now treats CDATA sections like other text, just as rendering code does.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165385 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoREGRESSION: js/dom/create-lots-of-workers.html frequently crashes
ap@apple.com [Mon, 10 Mar 2014 18:18:08 +0000 (18:18 +0000)]
REGRESSION: js/dom/create-lots-of-workers.html frequently crashes
(sometimes in js/dom/cross-frame-bad-time.html)
https://bugs.webkit.org/show_bug.cgi?id=129758

* platform/mac-wk1/TestExpectations: Removed an older incorrect expectation.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165384 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoWeb Inspector: show a debugging-oriented dashboard when scripts pause
bburg@apple.com [Mon, 10 Mar 2014 18:15:09 +0000 (18:15 +0000)]
Web Inspector: show a debugging-oriented dashboard when scripts pause
https://bugs.webkit.org/show_bug.cgi?id=129913

Reviewed by Timothy Hatcher.

Using the dashboard swapping functionality just added, show a debugger dashboard
whenever the debugger pauses, and hide it when it resumes. The debugger manager
already coalesces pause/resume events across stepping commands.

The dashboard itself is straightforward, with the exception of how it uses the
navigation bar buttons. Since buttons from the same URL can't be reused if they
are bezeled, we don't bezel our button, and set the button image as the glyph mask
instead of the background image. This lets us easily animate the glyph shape.

We also have to more forcefully declare a bunch of icon rules that would otherwise
be messed up by the toolbar's icon rules (whereas we want to mostly emulate navigation
bar icon styles).

* Localizations/en.lproj/localizedStrings.js:
* UserInterface/Base/Main.js:
(WebInspector.loaded):
(WebInspector.contentLoaded):
(WebInspector._debuggerDidPause):
(WebInspector._debuggerDidResume):
* UserInterface/Controllers/DashboardManager.js:
(WebInspector.DashboardManager):
* UserInterface/Main.html:
* UserInterface/Models/DebuggerDashboard.js: Added.
(WebInspector.DebuggerDashboard):
* UserInterface/Views/ButtonNavigationItem.css:
(.navigation-bar .item.button.suppress-emboss > .glyph):
* UserInterface/Views/ButtonNavigationItem.js:
(WebInspector.ButtonNavigationItem.prototype._updateImage):
* UserInterface/Views/DashboardView.js:
(WebInspector.DashboardView):
* UserInterface/Views/DebuggerDashboardView.css: Added.
(.toolbar .dashboard.debugger):
(.dashboard.debugger > .message):
(.dashboard.debugger .navigation-bar):
(.toolbar:not(.small-size) .dashboard.debugger .navigation-bar):
(.dashboard.debugger .navigation-bar .item.button):
(.dashboard.debugger .navigation-bar .item.button > .glyph):
(@-webkit-keyframes pulse-pause-button):
(to):
(.dashboard.debugger > .divider):
(.dashboard.debugger > div):
(.dashboard.debugger > .location > :first-child):
(.toolbar:not(.small-size) .dashboard.debugger > .location :not(:first-child)):
(.dashboard.debugger > .location img.icon):
(.dashboard.debugger > .location .function-name):
(.dashboard.debugger > .location .function-name::after):
(.dashboard.debugger > .location .go-to-link):
(.toolbar.collapsed .dashboard.debugger > :not(.message):not(.navigation-bar )):
(.toolbar.small-size .dashboard.debugger > .message):
(.toolbar.small-size .dashboard.debugger > .location > :first-child):
* UserInterface/Views/DebuggerDashboardView.js: Added.
(WebInspector.DebuggerDashboardView):
(WebInspector.DebuggerDashboardView.prototype._rebuildLocation):
(WebInspector.DebuggerDashboardView.prototype._resumeButtonClicked):
* UserInterface/Views/DebuggerSidebarPanel.js:
(WebInspector.DebuggerSidebarPanel):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165383 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoWeb Inspector: convert the dashboard toolbar item to support multiple dashboards
bburg@apple.com [Mon, 10 Mar 2014 18:07:29 +0000 (18:07 +0000)]
Web Inspector: convert the dashboard toolbar item to support multiple dashboards
https://bugs.webkit.org/show_bug.cgi?id=129898

Reviewed by Timothy Hatcher.

We want to ability to swap in and out different dashboard contents depending on
circumstances such as debugger activity and page loading. This patch converts the
existing hard-coded dashboard implementation to follow the container-based approach
used by WebInspector.ContentViewContainer.

As part of the refactoring, we introduce dashboard model objects to store persistent
dashboard data. Some CSS has also been split between the container and specific dashboard.

* UserInterface/Controllers/DashboardManager.js:
(WebInspector.DashboardManager):
(WebInspector.DashboardManager.prototype.get toolbarItem):
* UserInterface/Main.html:
* UserInterface/Models/DefaultDashboard.js: Copied from Source/WebInspectorUI/UserInterface/Controllers/DashboardManager.js.
(WebInspector.DefaultDashboard):
(WebInspector.DefaultDashboard.prototype.get resourcesCount):
(WebInspector.DefaultDashboard.prototype.set resourcesCount):
(WebInspector.DefaultDashboard.prototype.get resourcesSize):
(WebInspector.DefaultDashboard.prototype.set resourcesSize):
(WebInspector.DefaultDashboard.prototype.get time):
(WebInspector.DefaultDashboard.prototype.set time):
(WebInspector.DefaultDashboard.prototype.get logs):
(WebInspector.DefaultDashboard.prototype.set logs):
(WebInspector.DefaultDashboard.prototype.get errors):
(WebInspector.DefaultDashboard.prototype.set errors):
(WebInspector.DefaultDashboard.prototype.get issues):
(WebInspector.DefaultDashboard.prototype.set issues):
(WebInspector.DefaultDashboard.prototype._dataDidChange):
(WebInspector.DefaultDashboard.prototype._mainResourceDidChange):
(WebInspector.DefaultDashboard.prototype._recordingStopped):
(WebInspector.DefaultDashboard.prototype._resourceWasAdded):
(WebInspector.DefaultDashboard.prototype._frameWasAdded):
(WebInspector.DefaultDashboard.prototype._resourceSizeDidChange):
(WebInspector.DefaultDashboard.prototype._startUpdatingTime):
(WebInspector.DefaultDashboard.prototype._stopUpdatingTime):
(WebInspector.DefaultDashboard.prototype._updateTime):
(WebInspector.DefaultDashboard.prototype._consoleMessageAdded):
(WebInspector.DefaultDashboard.prototype._consoleMessageWasRepeated):
(WebInspector.DefaultDashboard.prototype._incrementConsoleMessageType):
(WebInspector.DefaultDashboard.prototype._consoleWasCleared):
* UserInterface/Views/DashboardContainerView.css: Added.
(.toolbar .dashboard-container):
(body.window-inactive .toolbar .dashboard-container):
(body.javascript .toolbar .dashboard-container):
(.toolbar.normal-size.icon-and-label-vertical .dashboard-container):
(.toolbar.small-size.icon-and-label-horizontal .dashboard-container):
(.toolbar.normal-size.icon-and-label-horizontal .dashboard-container):
(.toolbar .dashboard-container):
(.toolbar .dashboard):
(.toolbar .dashboard.visible):
(.toolbar .dashboard.slide-out-up):
(.toolbar .dashboard.slide-out-down):
(.toolbar .dashboard.slide-in-up):
(.toolbar .dashboard.slide-in-down):
(@-webkit-keyframes slide-top-edge):
(to):
(@-webkit-keyframes slide-bottom-edge):
* UserInterface/Views/DashboardContainerView.js: Added.
(WebInspector.DashboardContainerView):
(WebInspector.DashboardContainerView.prototype.get toolbarItem):
(WebInspector.DashboardContainerView.prototype.get currentDashboardView):
(WebInspector.DashboardContainerView.prototype.showDashboardViewForRepresentedObject):
(WebInspector.DashboardContainerView.prototype._dashboardViewForRepresentedObject):
(WebInspector.DashboardContainerView.prototype._showDashboardView):
* UserInterface/Views/DashboardView.css: Removed.
* UserInterface/Views/DashboardView.js:
(WebInspector.DashboardView):
(WebInspector.DashboardView.prototype.get element):
(WebInspector.DashboardView.prototype.get parentContainer):
(WebInspector.DashboardView.prototype.get representedObject):
(WebInspector.DashboardView.prototype.shown):
(WebInspector.DashboardView.prototype.hidden):
* UserInterface/Views/DefaultDashboardView.css: Added.
(body.web .toolbar.collapsed .dashboard.default > .logs):
(body.javascript .toolbar .dashboard.default > .resourcesCount):
(.toolbar .dashboard.default):
(.toolbar .dashboard.default > .item):
(.toolbar .dashboard.default > .resourcesSize):
(.toolbar .dashboard.default > .item.enabled:hover):
(.toolbar .dashboard.default > .item.enabled:active):
(.toolbar .dashboard.default > .item > *):
(.toolbar .dashboard.default > .item > img):
(.toolbar .dashboard.default > .item.enabled > img):
(.toolbar .dashboard.default > .item.enabled:hover > img):
(.toolbar .dashboard.default > .item > div):
(.toolbar .dashboard.default > .item.enabled > div):
(.toolbar .dashboard.default > .item.enabled:hover > div):
(.toolbar .dashboard.default > .resourcesCount > img):
(.toolbar .dashboard.default > .time > img):
(.toolbar .dashboard.default > .logs > img):
(.toolbar .dashboard.default > .resourcesSize > img):
(.toolbar .dashboard.default > .errors > img):
(.toolbar .dashboard.default > .errors.enabled > img):
(.toolbar .dashboard.default > .errors.enabled:hover > img):
(.toolbar .dashboard.default > .errors.enabled > div):
(.toolbar .dashboard.default > .errors.enabled:hover > div):
(.toolbar .dashboard.default > .issues > img):
(.toolbar .dashboard.default > .issues.enabled > img):
(.toolbar .dashboard.default > .issues.enabled:hover > img):
(.toolbar .dashboard.default > .issues.enabled > div):
(.toolbar .dashboard.default > .issues.enabled:hover > div):
(.toolbar .dashboard.default > .item.pulsing):
(@-webkit-keyframes console-item-pulse):
(.toolbar.small-size.icon-and-label-horizontal .dashboard.default > .item):
(.toolbar.normal-size.icon-and-label-horizontal .dashboard.default > .item):
* UserInterface/Views/DefaultDashboardView.js: Copied from Source/WebInspectorUI/UserInterface/Views/DashboardView.js.
(WebInspector.DefaultDashboardView):
(WebInspector.DefaultDashboardView.prototype._updateDisplay):
(WebInspector.DefaultDashboardView.prototype._formatPossibleLargeNumber):
(WebInspector.DefaultDashboardView.prototype._appendElementForNamedItem.):
(WebInspector.DefaultDashboardView.prototype._appendElementForNamedItem.set item):
(WebInspector.DefaultDashboardView.prototype._appendElementForNamedItem):
(WebInspector.DefaultDashboardView.prototype._itemWasClicked):
(WebInspector.DefaultDashboardView.prototype._resourcesWasClicked):
(WebInspector.DefaultDashboardView.prototype._networkItemWasClicked):
(WebInspector.DefaultDashboardView.prototype._consoleItemWasClicked):
(WebInspector.DefaultDashboardView.prototype.animationEnded):
(WebInspector.DefaultDashboardView.prototype._setConsoleItemValue):
(WebInspector.DefaultDashboardView.prototype._setItemEnabled):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165382 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoTurn on GenGC on other 64-bit platforms
mhahnenberg@apple.com [Mon, 10 Mar 2014 17:42:25 +0000 (17:42 +0000)]
Turn on GenGC on other 64-bit platforms
https://bugs.webkit.org/show_bug.cgi?id=129258

Reviewed by Oliver Hunt.

* wtf/Platform.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165380 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[GTK] [CMake] Clean up library linking
mrobinson@webkit.org [Mon, 10 Mar 2014 17:11:21 +0000 (17:11 +0000)]
[GTK] [CMake] Clean up library linking
https://bugs.webkit.org/show_bug.cgi?id=129782

Reviewed by Philippe Normand.

.:

* Source/cmake/OptionsGTK.cmake: Add a macro to wrap all libraries in a list with --whole-archive
so that unused symbols are not dropped. This is useful when building up shared libraries
from convenience libraries.

Source/WebCore:

* PlatformGTK.cmake: Some files are duplicated on the source list of two convenience
libraries. Ensure that they are all compiled into WebCore instead of WebCorePlatformGTK.
Some simply need to be moved to WebCore from WebCorePlatformGTK. Don't try to link
WebCorePlatformGTK against WebCore -- convenience libraries should be able to save
their symbol resolution for the final linking step.

Source/WebKit:

* PlatformGTK.cmake: Use the new macro.

Source/WebKit2:

* PlatformGTK.cmake: Use the new macro.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165378 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[CSS Regions] Scrolling regions with the mouse wheel only works properly if hovering...
stavila@adobe.com [Mon, 10 Mar 2014 16:29:09 +0000 (16:29 +0000)]
[CSS Regions] Scrolling regions with the mouse wheel only works properly if hovering over the region's padding
https://bugs.webkit.org/show_bug.cgi?id=129485

Reviewed by Andrei Bucur.

Source/WebCore:

When searching for the region under the mouse pointer (to identify which region to scroll),
the localToAbsolute method must be called on the region container, not the region itself.
Also, when calling the offsetFromContainer method on a named flow fragment,
it must only take into consideration the border and padding of the fragment container,
not its scrolled offset.

Test: fast/regions/wheel-scrollable-single-region.html

* rendering/RenderBox.cpp:
(WebCore::RenderBox::scroll):
* rendering/RenderFlowThread.cpp:
* rendering/RenderFlowThread.h:
* rendering/RenderNamedFlowFragment.cpp:
(WebCore::RenderNamedFlowFragment::offsetFromContainer):
* rendering/RenderNamedFlowFragment.h:
* rendering/RenderNamedFlowThread.cpp:
(WebCore::RenderNamedFlowThread::fragmentFromAbsolutePointAndBox):
* rendering/RenderNamedFlowThread.h:

LayoutTests:

Added layout tests for scrolling regions using the mouse wheel.

* fast/regions/wheel-scrollable-single-region-expected.html: Added.
* fast/regions/wheel-scrollable-single-region.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165377 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[iOS][WK1] Crash in HTMLMediaElement::createElementRenderer() - "-[NSSet addObject...
jer.noble@apple.com [Mon, 10 Mar 2014 16:28:13 +0000 (16:28 +0000)]
[iOS][WK1] Crash in HTMLMediaElement::createElementRenderer() - "-[NSSet addObject:]: object cannot be nil"
https://bugs.webkit.org/show_bug.cgi?id=129634

Reviewed by Eric Carlson.

If a plugin fails to create a NSView, a nil object is inserted into the WebPluginController's
pluginViews set. This is an exceptional case, so add an ASSERT so that this error will continue
to occur in debug builds, but also add an early return so as not to crash release builds.

* Plugins/WebPluginController.mm:
(+[WebPluginController addPlugInView:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165376 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoUnreviewed EFL gardening
m.pakula@samsung.com [Mon, 10 Mar 2014 15:32:51 +0000 (15:32 +0000)]
Unreviewed EFL gardening

Add test expectations for failing and crashing tests.

* platform/efl-wk2/TestExpectations:
* platform/efl/TestExpectations:
* platform/efl/fast/images/image-controls-basic-expected.txt: Added after r164457.
* platform/efl/fast/ruby/ruby-base-merge-block-children-crash-2-expected.txt: Added after r164323.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165375 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoVersioning.
lforschler@apple.com [Mon, 10 Mar 2014 15:13:36 +0000 (15:13 +0000)]
Versioning.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165374 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[CSSRegions] Fix broken paths in some regions tests
mihnea@adobe.com [Mon, 10 Mar 2014 13:36:21 +0000 (13:36 +0000)]
[CSSRegions] Fix broken paths in some regions tests
https://bugs.webkit.org/show_bug.cgi?id=130012

Reviewed by Andrei Bucur.

* fast/regions/cssom/offsetLeft-offsetTop-in-multiple-regions.html:
* fast/regions/region-styling/region-style-image-background-color-expected.html:
* fast/regions/region-styling/region-style-image-background-color.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165372 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[GTK] The web process can finish while a print operation is still ongoing
carlosgc@webkit.org [Mon, 10 Mar 2014 11:10:51 +0000 (11:10 +0000)]
[GTK] The web process can finish while a print operation is still ongoing
https://bugs.webkit.org/show_bug.cgi?id=129871

Reviewed by Martin Robinson.

This can happen when the last page is closed while the print job
is sending data to the printer.

* WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp: Disable web
process termination when the print job is sending data to the
printer and enable it again when job finishes.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165371 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[X86_64] Smaller code for xor_ir when register is accumulator.
akling@apple.com [Mon, 10 Mar 2014 10:06:01 +0000 (10:06 +0000)]
[X86_64] Smaller code for xor_ir when register is accumulator.
<https://webkit.org/b/130008>

Generate the shorthand version of "xor eax, imm" when possible.

Reviewed by Benjamin Poulain.

* assembler/X86Assembler.h:
(JSC::X86Assembler::xorl_ir):
(JSC::X86Assembler::xorq_ir):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165370 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[X86_64] Smaller code for or_ir when register is accumulator.
akling@apple.com [Mon, 10 Mar 2014 09:51:38 +0000 (09:51 +0000)]
[X86_64] Smaller code for or_ir when register is accumulator.
<https://webkit.org/b/130007>

Generate the shorthand version of "or eax, imm" when possible.

Reviewed by Benjamin Poulain.

* assembler/X86Assembler.h:
(JSC::X86Assembler::orl_ir):
(JSC::X86Assembler::orq_ir):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165369 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[X86_64] Smaller code for test_ir when register is accumulator.
akling@apple.com [Mon, 10 Mar 2014 09:48:57 +0000 (09:48 +0000)]
[X86_64] Smaller code for test_ir when register is accumulator.
<https://webkit.org/b/130006>

Generate the shorthand version of "test eax, imm" when possible.

Reviewed by Benjamin Poulain.

* assembler/X86Assembler.h:
(JSC::X86Assembler::testl_i32r):
(JSC::X86Assembler::testq_i32r):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165368 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[X86_64] Smaller code for cmp_ir when register is accumulator.
akling@apple.com [Mon, 10 Mar 2014 09:48:08 +0000 (09:48 +0000)]
[X86_64] Smaller code for cmp_ir when register is accumulator.
<https://webkit.org/b/130005>

Generate the shorthand version of "cmp eax, imm" when possible.

Reviewed by Benjamin Poulain.

* assembler/X86Assembler.h:
(JSC::X86Assembler::cmpl_ir):
(JSC::X86Assembler::cmpq_ir):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165367 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[X86_64] Smaller code for store64(imm, address) when imm fits in 32 bits.
akling@apple.com [Mon, 10 Mar 2014 07:53:11 +0000 (07:53 +0000)]
[X86_64] Smaller code for store64(imm, address) when imm fits in 32 bits.
<https://webkit.org/b/130002>

Generate this:

    mov [address], imm32

Instead of this:

    mov scratchRegister, imm32
    mov [address], scratchRegister

For store64(imm, address) where the 64-bit immediate can be passed as
a sign-extended 32-bit value.

Reviewed by Benjamin Poulain.

* assembler/MacroAssemblerX86_64.h:
(CAN_SIGN_EXTEND_32_64):
(JSC::MacroAssemblerX86_64::store64):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165366 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[X86_64] Smaller code for xchg_rr when one register is accumulator.
akling@apple.com [Mon, 10 Mar 2014 07:50:44 +0000 (07:50 +0000)]
[X86_64] Smaller code for xchg_rr when one register is accumulator.
<https://webkit.org/b/130004>

Generate the 1-byte version of "xchg eax, reg" when possible.

Reviewed by Benjamin Poulain.

* assembler/X86Assembler.h:
(JSC::X86Assembler::xchgl_rr):
(JSC::X86Assembler::xchgq_rr):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165365 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoRemove unused dispatchStorageEvent() from StorageAreaSync
jinwoo7.song@samsung.com [Mon, 10 Mar 2014 07:17:04 +0000 (07:17 +0000)]
Remove unused dispatchStorageEvent() from StorageAreaSync
https://bugs.webkit.org/show_bug.cgi?id=129999

Reviewed by Andreas Kling.

dispatchStorageEvent() is not used anywhere.

* storage/StorageAreaSync.h: Remove dispatchStorageEvent().

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165364 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoUpdate comment in NetworkResourceLoader
commit-queue@webkit.org [Mon, 10 Mar 2014 06:58:15 +0000 (06:58 +0000)]
Update comment in NetworkResourceLoader
https://bugs.webkit.org/show_bug.cgi?id=129997

Patch by Jeong Yong-uk <yong@company100.com> on 2014-03-09
Reviewed by Andreas Kling.

NetworkResourceLoader::resourceHandleStopped() has been renamed to
NetworkResourceLoader::cleanup() but the comment is not updated.

* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::start):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165363 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoGPRInfo::toIndex should return InvalidIndex for non-temp registers on ARM64
fpizlo@apple.com [Mon, 10 Mar 2014 06:57:13 +0000 (06:57 +0000)]
GPRInfo::toIndex should return InvalidIndex for non-temp registers on ARM64
https://bugs.webkit.org/show_bug.cgi?id=129998

Reviewed by Geoffrey Garen.

Not only is that the established contract, but this is used to signal to
ScratchRegisterAllocator that the register doesn't need locking since it isn't a register
that this allocator would use. In the FTL, we may have an inline cache where LLVM had used
some non-temp register (i.e. a register that JSC itself wouldn't have used). This is totally
fine but previously it would have led to either an assertion failure, or data corruption, in
the ScratchRegisterAllocator.

* jit/GPRInfo.h:
(JSC::GPRInfo::toIndex):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165362 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoiOS build fix.
ap@apple.com [Mon, 10 Mar 2014 06:18:23 +0000 (06:18 +0000)]
iOS build fix.

* WebProcess/WebPage/ios/WebPageIOS.mm: Include WebCore/KeyboardEvent.h.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165361 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoREGRESSION: js/dom/create-lots-of-workers.html frequently crashes
ap@apple.com [Mon, 10 Mar 2014 05:17:50 +0000 (05:17 +0000)]
REGRESSION: js/dom/create-lots-of-workers.html frequently crashes
(sometimes in js/dom/cross-frame-bad-time.html)
https://bugs.webkit.org/show_bug.cgi?id=129758

* platform/mac/TestExpectations: Skipped the test.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165360 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoiOS build fix.
ap@apple.com [Mon, 10 Mar 2014 05:11:55 +0000 (05:11 +0000)]
iOS build fix.

* dom/KeyboardEvent.cpp: (WebCore::KeyboardEvent::KeyboardEvent):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165359 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoFTL fails the new equals-masquerader strictEqualConstant test
fpizlo@apple.com [Mon, 10 Mar 2014 02:50:32 +0000 (02:50 +0000)]
FTL fails the new equals-masquerader strictEqualConstant test
https://bugs.webkit.org/show_bug.cgi?id=129996

Reviewed by Mark Lam.

It turns out that the FTL was trying to do the masquerading stuff for ===null. But
that's wrong since none of the other engines do it. The DFG even had an ancient
FIXME about doing it - but that doesn't make sense since the LLInt and baseline JIT
don't do it and JSValue::strictEqual() doesn't do it.

Remove the FIXME and remove the extra checks in the FTL.

This is a glorious patch: nothing but red and it fixes a test failure.

* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileStrictEqForConstant):
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileCompareStrictEqConstant):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165358 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoShort-circuit JSGlobalObjectInspectorController when not inspecting.
akling@apple.com [Mon, 10 Mar 2014 01:57:48 +0000 (01:57 +0000)]
Short-circuit JSGlobalObjectInspectorController when not inspecting.
<https://webkit.org/b/129995>

Add an early return in reportAPIException() when the console agent
is disabled. This avoids expensive symbolication during exceptions
if there's nobody expecting the fancy backtrace anyway.

~2% progression on DYEB on my MBP.

Reviewed by Geoff Garen.

* inspector/JSGlobalObjectInspectorController.cpp:
(Inspector::JSGlobalObjectInspectorController::reportAPIException):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165357 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[Mac] Don't perform a round-trip through WebProcess before interpreting key events
ap@apple.com [Sun, 9 Mar 2014 22:56:08 +0000 (22:56 +0000)]
[Mac] Don't perform a round-trip through WebProcess before interpreting key events
https://bugs.webkit.org/show_bug.cgi?id=129812

Reviewed by Darin Adler.

Source/WebCore:

No significant behavior changes expected, except for Esc key processing, which now
dispatches a keypress before executing its default action.

* platform/KeypressCommand.h: Added.
(WebCore::KeypressCommand::KeypressCommand):
* GNUmakefile.list.am:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
Moved KeypressCommand from dom/KeyboardEvent.h to its own header, as it needed
in platform/ directory now.

* dom/KeyboardEvent.cpp:
(WebCore::KeyboardEvent::KeyboardEvent):
* dom/KeyboardEvent.h:
(WebCore::KeyboardEvent::handledByInputMethod):
(WebCore::KeyboardEvent::keypressCommands):
* platform/PlatformKeyboardEvent.h:
(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
(WebCore::PlatformKeyboardEvent::handledByInputMethod):
(WebCore::PlatformKeyboardEvent::commands):
PlatformKeyboardEvent now carries results of interpreting the event by AppKit. This
is logically not much different from carrying charcode, and is similar to what Gtk
does for input methods.
KeyboardEvent already had keypress commands, which were added to it after construction.
It's still possible for WebKit1, while with WebKit2, they are provided at construction
time. The event now also has a boolean for whether IM handled it already.

Source/WebKit/mac:

* WebCoreSupport/WebEditorClient.mm: (WebEditorClient::handleInputMethodKeydown):
Added a FIXME. WebKit1/mac is the only port that uses this roundabout way to
interpret events, so it would simplify code if we switched it to WebKit2/mac model.

Source/WebKit2:

* Shared/NativeWebKeyboardEvent.h:
* Shared/WebEvent.h:
(WebKit::WebKeyboardEvent::handledByInputMethod):
(WebKit::WebKeyboardEvent::commands):
* Shared/WebEventConversion.cpp:
(WebKit::WebKit2PlatformKeyboardEvent::WebKit2PlatformKeyboardEvent):
* Shared/WebKeyboardEvent.cpp:
(WebKit::WebKeyboardEvent::WebKeyboardEvent):
(WebKit::WebKeyboardEvent::~WebKeyboardEvent):
(WebKit::WebKeyboardEvent::encode):
(WebKit::WebKeyboardEvent::decode):
* Shared/mac/NativeWebKeyboardEventMac.mm:
(WebKit::NativeWebKeyboardEvent::NativeWebKeyboardEvent):
* Shared/mac/WebEventFactory.h:
* Shared/mac/WebEventFactory.mm:
(WebKit::WebEventFactory::createWebKeyboardEvent):
Keyboard events now carry results of interpretation with them.
Ideally, mouse events should also have a handledByInputMethod member, because IMs
can handle events, but that can wait until we have actual bugs caused by not diabling
default processing for these.

* UIProcess/API/mac/WKView.mm:
(-[WKView becomeFirstResponder]): Updated for new NativeWebKeyboardEvent contructor
signature. We don't interpret the event in this code path.
(-[WKView doCommandBySelector:]): Added logging.
(-[WKView performKeyEquivalent:]): Reimplemented Esc and Cmd+period handling to avoid
infinite loops and re-entrancy. These two work in a unique way in AppKit.
Interpret key event before sending it down to WebProcess.
(-[WKView keyUp:]): Interpret key event before sending it down to WebProcess.
We need to tell IMs about the event, but key binding processing is moot, all commands
are executed on keydown.
(-[WKView keyDown:]): Interpret the event.
(-[WKView flagsChanged:]): Ditto.
(-[WKView _interpretKeyEvent:savingCommandsTo:WebCore::]): Added an assertion in
consumedByIM code path.
(-[WKView _executeSavedCommandBySelector:]): Added logging.

* UIProcess/PageClient.h:
* UIProcess/ios/PageClientImplIOS.h:
* UIProcess/ios/PageClientImplIOS.mm:
* UIProcess/mac/PageClientImpl.h:
* UIProcess/mac/PageClientImpl.mm:
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* UIProcess/ios/WebPageProxyIOS.mm:
* UIProcess/mac/WebPageProxyMac.mm:
Removed interpretQueuedKeyEvent/interpretKeyEvent, WebProcess no longer asks UIProcess to do this.

* WebProcess/WebCoreSupport/ios/WebEditorClientIOS.mm:
(WebKit::WebEditorClient::handleKeyboardEvent):
* WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
(WebKit::WebEditorClient::handleKeyboardEvent):
(WebKit::WebEditorClient::handleInputMethodKeydown):
WebPage::handleEditingKeyboardEvent is now one function instead of two with a boolean
switch between two behaviors.

* WebProcess/WebPage/WebPage.cpp:(WebKit::WebPage::WebPage):
* WebProcess/WebPage/WebPage.h:
Removed m_keyboardEventBeingInterpreted, as we no longer send the event for interpretation.
This means that we sometimes have to pass a null event down to WebCore, but I wasn't
able to find any behavior differences from us doing so.

* WebProcess/WebPage/ios/WebPageIOS.mm: (WebKit::WebPage::handleEditingKeyboardEvent):
Added a FIXME.

* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::executeKeypressCommandsInternal): When we don't have an event,
use current frame as a target, just like input method messages do.
(WebKit::WebPage::handleEditingKeyboardEvent): This function no longer saves commands,
it only interprets them.
Added a check for Esc, as we don't want to handle it in keydown event handler.
(WebKit::WebPage::insertText): Pass 0 instead of m_keyboardEventBeingInterpreted.
(WebKit::WebPage::insertDictatedText): Ditto.
(WebKit::WebPage::executeKeypressCommands): Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165356 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoInline the trivial parts of GC deferral.
akling@apple.com [Sun, 9 Mar 2014 21:07:32 +0000 (21:07 +0000)]
Inline the trivial parts of GC deferral.
<https://webkit.org/b/129984>

Made most of the functions called by the DeferGC RAII object inline
to avoid function call overhead.

Looks like ~1% progression on DYEB.

Reviewed by Geoffrey Garen.

* heap/Heap.cpp:
* heap/Heap.h:
(JSC::Heap::incrementDeferralDepth):
(JSC::Heap::decrementDeferralDepth):
(JSC::Heap::collectIfNecessaryOrDefer):
(JSC::Heap::decrementDeferralDepthAndGCIfNeeded):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165355 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoSubpixel rendering: Pass FloatSize boxsize to transform animations to support device...
zalan@apple.com [Sun, 9 Mar 2014 20:27:31 +0000 (20:27 +0000)]
Subpixel rendering: Pass FloatSize boxsize to transform animations to support device pixel sizing.
https://bugs.webkit.org/show_bug.cgi?id=129985

Reviewed by Simon Fraser.

This is in preparation to stop passing integral positioned boxes to transform animations.

No change in behavior.

Source/WebCore:

* WebCore.exp.in:
* platform/graphics/GraphicsLayer.h:
(WebCore::GraphicsLayer::addAnimation):
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::getTransformFunctionValue):
(WebCore::GraphicsLayerCA::addAnimation):
(WebCore::GraphicsLayerCA::appendToUncommittedAnimations):
(WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes):
(WebCore::GraphicsLayerCA::setTransformAnimationEndpoints):
(WebCore::GraphicsLayerCA::setTransformAnimationKeyframes):
* platform/graphics/ca/GraphicsLayerCA.h:
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::startTransition):

Source/WebKit2:

* WebProcess/WebPage/mac/GraphicsLayerCARemote.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165354 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoSkip fast/workers/worker-copy-shared-blob-url.html in webkit2
oliver@apple.com [Sun, 9 Mar 2014 19:09:32 +0000 (19:09 +0000)]
Skip fast/workers/worker-copy-shared-blob-url.html in webkit2

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165353 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[iOS Wk2] Can't scroll after going back to page in page cache
simon.fraser@apple.com [Sun, 9 Mar 2014 18:14:07 +0000 (18:14 +0000)]
[iOS Wk2] Can't scroll after going back to page in page cache
https://bugs.webkit.org/show_bug.cgi?id=129989
<rdar://problem/16217588>

Reviewed by Dan Bernstein.

iOS has a special FrameLoader::forceLayoutWithoutRecalculatingStyle()
function that is called instead of FrameView::forceLayout(). This was unimplemented
for the WK2 FrameLoaderClient, so no layout was forced, with the result
that the contentSize was never updated and scrolling was broken.

Fix by renaming the client function to forceLayoutOnRestoreFromPageCache()
and having it return a bool to say whether the default forceLayout()
should be done. WK1 can then continue to have its custom behavior,
and Wk2 will simply do a forceLayout().

Also remove FrameLaoderClient::forceLayout(), which was never called.

Source/WebCore:

* loader/EmptyClients.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::commitProvisionalLoad):
* loader/FrameLoaderClient.h:

Source/WebKit/mac:

* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::forceLayoutOnRestoreFromPageCache):

Source/WebKit2:

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
* WebProcess/WebCoreSupport/ios/WebFrameLoaderClientIOS.mm:
(WebKit::WebFrameLoaderClient::forceLayoutOnRestoreFromPageCache):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165352 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoRunGtkWebKitGObjectDOMBindingsAPIBreakTests should be added to the BuildAndTestFactor...
mrobinson@webkit.org [Sun, 9 Mar 2014 17:17:14 +0000 (17:17 +0000)]
RunGtkWebKitGObjectDOMBindingsAPIBreakTests should be added to the BuildAndTestFactory not the TestFactory
https://bugs.webkit.org/show_bug.cgi?id=129980

Reviewed by Carlos Garcia Campos.

* BuildSlaveSupport/build.webkit.org-config/master.cfg: Add RunGtkWebKitGObjectDOMBindingsAPIBreakTests to the correct factory.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165351 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[GTK] Remove the WebView source-mode WebKit1 test
mrobinson@webkit.org [Sun, 9 Mar 2014 17:09:10 +0000 (17:09 +0000)]
[GTK] Remove the WebView source-mode WebKit1 test
https://bugs.webkit.org/show_bug.cgi?id=129976

Reviewed by Carlos Garcia Campos.

* TestWebKitAPI/Tests/WebKitGtk/testwebview.c: Remove the source-mode test.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165350 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[iOS WK2] Get position:fixed working slighlty better
simon.fraser@apple.com [Sun, 9 Mar 2014 05:28:14 +0000 (05:28 +0000)]
[iOS WK2] Get position:fixed working slighlty better
https://bugs.webkit.org/show_bug.cgi?id=129988

Source/WebCore:

Reviewed by Dan Bernstein.

On iOS we want to use the viewport-constrained visible rect, not
just the visible rect.

* page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::frameViewLayoutUpdated):

Source/WebKit2:

Reviewed by Dan Bernstein.

iOS uses fixed layout, but does not want fixed elements laid
out relative to the frame.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setUseFixedLayout):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165349 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[iOS] Don't call scrollOffsetForFixedPosition a second time if we have no header...
simon.fraser@apple.com [Sun, 9 Mar 2014 05:03:35 +0000 (05:03 +0000)]
[iOS] Don't call scrollOffsetForFixedPosition a second time if we have no header and footer layers
https://bugs.webkit.org/show_bug.cgi?id=129912

Reviewed by Tim Horton.

Avoid extra work if we have no header or footer layers.

* page/scrolling/ios/ScrollingTreeScrollingNodeIOS.mm:
(WebCore::ScrollingTreeScrollingNodeIOS::setScrollLayerPosition):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165348 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoiOS broken after r165342
jonlee@apple.com [Sun, 9 Mar 2014 04:32:47 +0000 (04:32 +0000)]
iOS broken after r165342
https://bugs.webkit.org/show_bug.cgi?id=129987

Reviewed by Simon Fraser.

* NetworkProcess/ios/NetworkProcessIOS.mm:
(WebKit::NetworkProcess::platformLowMemoryHandler): Add missing stub implementation for
platformLowMemoryHandler().

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165347 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoRenderElement::valueForLength() callers misuse bool parameter.
zalan@apple.com [Sun, 9 Mar 2014 02:38:58 +0000 (02:38 +0000)]
RenderElement::valueForLength() callers misuse bool parameter.
https://bugs.webkit.org/show_bug.cgi?id=129982

Reviewed by Andreas Kling.

Remove bogus RenderView* parameter.

* rendering/RenderBox.cpp:
(WebCore::RenderBox::computePercentageLogicalHeight):
* rendering/RenderElement.cpp:
(WebCore::RenderElement::repaintAfterLayoutIfNeeded):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165346 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[iOS] media preferences not initialized correctly in WebKit2
eric.carlson@apple.com [Sun, 9 Mar 2014 02:18:32 +0000 (02:18 +0000)]
[iOS] media preferences not initialized correctly in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=129983

Reviewed by Dan Bernstein.

* Shared/WebPreferencesStore.h: Initialize mediaPlaybackAllowsInline and
mediaPlaybackRequiresUserGesture correctly for iOS.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165345 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoAllow media element to supply the video layer after fullscreen transition has already...
commit-queue@webkit.org [Sun, 9 Mar 2014 02:16:11 +0000 (02:16 +0000)]
Allow media element to supply the video layer after fullscreen transition has already begun.
https://bugs.webkit.org/show_bug.cgi?id=129870

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-03-08
Reviewed by Eric Carlson.

Source/WebCore:

Instead of borrowing the videolayer from the HTMLMediaElement, WebVideoFullscreen now supplies a layer to HTMLMediaElement to fill in as needed and at the appropriate time.

This allows fullscreen even if the video layer hasn't yet been created. And in the future it allows MediaPlayer to supply other layers such as closed captions.

* WebCore.exp.in:
Remove exports related to borrowing and lend the video layer.
Add exports for supplying a layer to fullscreen and keepying the frame and gravity properties in sync.

* html/HTMLMediaElement.cpp:
Remove the concept of borrowing the platform layer.
Add the concept of a supplied m_videoFullscreenLayer, into which the media player can add layers.
When the m_videoFullscreenFrame is supplied, don't show the video layer inline any more.
Stash video layer properties in case the media player is not yet created.

(WebCore::HTMLMediaElement::HTMLMediaElement):
Initialize gravity to the default. Remove m_platformLayerBorrowed.

(WebCore::HTMLMediaElement::platformLayer):
When we have a m_videoFullscreenLayer, don't show video inline.

(WebCore::HTMLMediaElement::setVideoFullscreenLayer):
Pass along the m_videoFullscreenLayer to the MediaPlayer if available or just stash it for later.

(WebCore::HTMLMediaElement::createMediaPlayer):
Pass along video fullscreen properties that we may have accumulated before the MediaPlayer was created.

(WebCore::HTMLMediaElement::setVideoFullscreenGravity):
Stash the gravity property, pass it along to the media player if possible.

* html/HTMLMediaElement.h:
Remove concept of borrowing the video layer. Add properties for a supplied videoFullscreenLayer.

* platform/graphics/MediaPlayer.cpp:
(WebCore::MediaPlayer::setVideoFullscreenLayer):
Forward on to internal implementation.

(WebCore::MediaPlayer::setVideoFullscreenFrame):
Forward on to internal implementation.

(WebCore::MediaPlayer::setVideoFullscreenGravity):
Forward on to internal implementation.

* platform/graphics/MediaPlayer.h:
Add methods for video fullscreen Layer, Frame and Gravity.

* platform/graphics/MediaPlayerPrivate.h:
(WebCore::MediaPlayerPrivateInterface::setVideoFullscreenLayer):
Add default implementation.

(WebCore::MediaPlayerPrivateInterface::setVideoFullscreenFrame):
Add default implementation.

(WebCore::MediaPlayerPrivateInterface::setVideoFullscreenGravity):
Add default implementation.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
Add support for fullscreen video layer, frame and gravity.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC):
Init m_videoFullscreenGravity.

(WebCore::MediaPlayerPrivateAVFoundationObjC::createVideoLayer):
Apply cached properties once video layer is created and add to the fullscreen layer.

(WebCore::MediaPlayerPrivateAVFoundationObjC::setVideoFullscreenLayer):
Cache the property value. Add video layer right away available.

(WebCore::MediaPlayerPrivateAVFoundationObjC::setVideoFullscreenFrame):
Cache the property value. Apply to video layer right away if available.

(WebCore::MediaPlayerPrivateAVFoundationObjC::setVideoFullscreenGravity):
Cache the property value. Apply to video layer right away if available.

* platform/ios/WebVideoFullscreenControllerAVKit.mm:
Supply a fullscreen video layer to the WebVideoFullscreenModel and to the WebVideoFullscreenInterface.

(-[WebVideoFullscreenController enterFullscreen:]):
Supply a fullscreen video layer to the WebVideoFullscreenModel and to the WebVideoFullscreenInterface.

(-[WebVideoFullscreenController didExitFullscreen]):
Clean up the videoFullscreenLayer.

* platform/ios/WebVideoFullscreenInterface.h:
Remove methods related to lending the video layer.

* platform/ios/WebVideoFullscreenInterfaceAVKit.h:
Rename WebAVPlayer layer to WebAVVideoLayer to match the AVKit name.
Remove functions related to lending the video layer.
Supply a layer directly to enterFullscreen.

* platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
(+[WebAVVideoLayer videoLayer]):
Rename WebAVPlayer layer to WebAVVideoLayer to match the AVKit name.

(-[WebAVVideoLayer setPlayerController:]):
Store the AVPlayerController to prevent AVKit's default behavior.

(-[WebAVVideoLayer setBounds:]):
Forward this onto the WebVideoFullscreenModel

(-[WebAVVideoLayer setVideoLayerGravity:]):
Forward this onto the WebVideoFullscreenModel

(-[WebAVVideoLayer videoLayerGravity]):
Forward this onto the WebVideoFullscreenModel

(WebVideoFullscreenInterfaceAVKit::enterFullscreen):
Supply a video layer directly instead of relying on one being previously loaned.

(WebVideoFullscreenInterfaceAVKit::exitFullscreen):
Clean-up now assumes there is a video layer.

* platform/ios/WebVideoFullscreenModel.h:
Remove methods for borrowing and returning video layers.
Add methods for keeping video layer state in sync.

* platform/ios/WebVideoFullscreenModelMediaElement.h:
Remove methods for borrowing and returning video layers.
Add method for supplying a video fullscreen layer.
Add methods for keeping video layer state in sync.

* platform/ios/WebVideoFullscreenModelMediaElement.mm:
(WebVideoFullscreenModelMediaElement::setMediaElement):
Handle audio element case by setting hasVideo to false.

(WebVideoFullscreenModelMediaElement::setVideoFullscreenLayer):
Pass along the video fullscreen layer to the media element.

(WebVideoFullscreenModelMediaElement::setVideoLayerFrame):
Pass along the video layer frame to the media element.

(WebVideoFullscreenModelMediaElement::setVideoLayerGravity):
Pass along the video layer gravity to the media element.

Source/WebKit2:

WebVideoFullscreenManager and WebVideoFullscreenManagerProxy do their own remote hosting of the video layer instead of needing the video layer to have already been hosted elsewhere. This allows the removal of the coordination with WebPageProxy via a RemoteLayerTreeTransaction.

* Shared/mac/RemoteLayerTreeTransaction.h:
Remove m_videoLayerIDsPendingFullscreen and accessors.

* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTransaction::encode):
Don't encode m_videoLayerIDsPendingFullscreen

(WebKit::RemoteLayerTreeTransaction::decode):
Don't decode m_videoLayerIDsPendingFullscreen

* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::didCommitLayerTree):
Don't forward didCommitLayerTree to m_videoFullscreenManager.

* UIProcess/ios/WebVideoFullscreenManagerProxy.h:
Remove code for synchronizing with the RenderTree.
Add a hosting layer and methods to keep video layer frame and video gravity synchronized.

* UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in:
Change IPC interface to fascilitate rehosting video layer with a instead of coordinating with the RenderTree by PlatformLayerID.

* UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
(WebKit::WebVideoFullscreenManagerProxy::WebVideoFullscreenManagerProxy):
Remove initialization for removed members.

(WebKit::WebVideoFullscreenManagerProxy::enterFullscreenWithID):
Rehost the video layer by id and pass on the layer.
This replaces didCommitLayerTree() and  willLendVideoLayerWithID().

(WebKit::WebVideoFullscreenManagerProxy::didExitFullscreen):
Cleanup the hosting layer.

(WebKit::WebVideoFullscreenManagerProxy::setVideoLayerFrame):
Forward on the video layer's frame to keep the hosted layer in sync with the interface.

(WebKit::WebVideoFullscreenManagerProxy::setVideoLayerGravity):
Forward the videolayer gravity.

* WebKit2.xcodeproj/project.pbxproj:
Rename WebVideoFullscreenManager.cpp to WebVideoFullscreenManager.mm

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::willCommitLayerTree):
Don't invovle the m_videoFullscreenManager in layer tree transactions.

* WebProcess/ios/WebVideoFullscreenManager.h:
Remove code that synchronizes with the render tree via RemoteLayerTreeTransaction.
Instead rehost the video layer directly.
Instead of hoping the WebVideoFullscreenModel has a videoLayer, supply one into which
it can add whatever it likes as needed.

* WebProcess/ios/WebVideoFullscreenManager.messages.in:
No more explicit borrowing and returning video layers.
Add functions to keep video layer bounds and gravity in sync with the UI.

* WebProcess/ios/WebVideoFullscreenManager.mm: Renamed from Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.cpp.
Removed code for synchronizing via RemoteLAyerTreeTransaction.

(WebKit::WebVideoFullscreenManager::WebVideoFullscreenManager):
Remove initialization for removed memeber m_sendUnparentVideoLayerTransaction.

(WebKit::WebVideoFullscreenManager::enterFullscreenForNode):
Creates a fullscreen layer, gives it to the WebVideoFullscreenModel to fill in,
and hosts it in a context to send to the UIProcess.

(WebKit::WebVideoFullscreenManager::exitFullscreenForNode):
remove enterFullscreen() and just directly send the IPC message.

(WebKit::WebVideoFullscreenManager::didExitFullscreen):
Clean up the hosting context.

(WebKit::WebVideoFullscreenManager::setVideoLayerGravityEnum):
Forward on the video gravity. Type convert from unsigned to MediaPlayer::VideoGravity.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165344 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoClean up PlatformLayer.h
jaepark@webkit.org [Sun, 9 Mar 2014 01:47:09 +0000 (01:47 +0000)]
Clean up PlatformLayer.h
https://bugs.webkit.org/show_bug.cgi?id=129967

Reviewed by Martin Robinson.

* platform/graphics/PlatformLayer.h:
Remove duplicated declaration of PlatformLayer when using TextureMapper.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165343 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[WK2] Improve the network process low memory handler.
akling@apple.com [Sun, 9 Mar 2014 00:49:57 +0000 (00:49 +0000)]
[WK2] Improve the network process low memory handler.
<https://webkit.org/b/129977>

Split the network process low memory handler into platform-specific
and shared parts. The shared part tells FastMalloc to release freed
pages back to the OS.

For Mac, added a call to purge the in-memory part of CFURLCache.
Remove the malloc_zone_pressure_relief() since that is now taken care
of by the shared MemoryPressureHandler code.

Reviewed by Darin Adler.

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::initializeNetworkProcess):
(WebKit::NetworkProcess::lowMemoryHandler):
(WebKit::NetworkProcess::platformLowMemoryHandler):
* NetworkProcess/NetworkProcess.h:
* NetworkProcess/mac/NetworkProcessMac.mm:
(WebKit::NetworkProcess::platformLowMemoryHandler):
(WebKit::NetworkProcess::platformInitializeNetworkProcess):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165342 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoSubpixel rendering: Simple compositing container layer (isSimpleContainerCompositingL...
zalan@apple.com [Sun, 9 Mar 2014 00:14:00 +0000 (00:14 +0000)]
Subpixel rendering: Simple compositing container layer (isSimpleContainerCompositingLayer) paints to wrong position.
https://bugs.webkit.org/show_bug.cgi?id=129861

Reviewed by Simon Fraser.

This patch ensures that both the simple and non-simple cases paint to the same position.
Simple compositing container layer codepath needs to take the fractional device pixel offset
into account when painting. Without the fractional value, the final paint rounding could push the
paint offset to a different position.
retina example:
compositing top-left: 0px 0px.
fractional offset: 0.3px 0.3px
painting coords without offseting: 0px 0px
                   with offseting: 0.5px 0.5px

Source/WebCore:

Tests: compositing/hidpi-simple-container-layer-on-device-pixel.html

* WebCore.exp.in:
* platform/graphics/GraphicsLayer.h:
(WebCore::GraphicsLayer::contentsRect):
(WebCore::GraphicsLayer::setContentsRect):
(WebCore::GraphicsLayer::contentsClippingRect):
(WebCore::GraphicsLayer::setContentsClippingRect):
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::setContentsRect):
(WebCore::GraphicsLayerCA::setContentsClippingRect):
(WebCore::GraphicsLayerCA::updateContentsRects):
* platform/graphics/ca/GraphicsLayerCA.h:
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
(WebCore::RenderLayerBacking::updateDirectlyCompositedBackgroundColor):
(WebCore::RenderLayerBacking::updateDirectlyCompositedBackgroundImage):
(WebCore::RenderLayerBacking::contentOffsetInCompostingLayer):
(WebCore::RenderLayerBacking::backgroundBoxForPainting):
* rendering/RenderLayerBacking.h:

LayoutTests:

* compositing/hidpi-simple-container-layer-on-device-pixel-expected.html: Added.
* compositing/hidpi-simple-container-layer-on-device-pixel.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165341 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoSkip tests on GTK+ for unimplemented features
mrobinson@webkit.org [Sat, 8 Mar 2014 22:33:43 +0000 (22:33 +0000)]
Skip tests on GTK+ for unimplemented features

* platform/gtk/TestExpectations: When a feature is unimplemented, the tests may fail or
they may timeout, or perhaps they will crash. We just skip them here, so that we don't
have to micromanage expectations for tests against incomplete features.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165340 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoSerializedScriptValue may move Identifiers between worlds
oliver@apple.com [Sat, 8 Mar 2014 22:29:00 +0000 (22:29 +0000)]
SerializedScriptValue may move Identifiers between worlds
https://bugs.webkit.org/show_bug.cgi?id=129979

Reviewed by Andreas Kling.

Source/WebCore:

Test: fast/workers/worker-copy-shared-blob-url.html

Don't use Strings to store blob URLs as String's may be Identifiers
and they can only exist in one world/thread at a time.

* Modules/indexeddb/IDBObjectStore.cpp:
(WebCore::IDBObjectStore::put):
* bindings/js/SerializedScriptValue.cpp:
(WebCore::CloneDeserializer::deserializeString):
(WebCore::SerializedScriptValue::addBlobURL):
(WebCore::SerializedScriptValue::SerializedScriptValue):
* bindings/js/SerializedScriptValue.h:

LayoutTests:

Add test cases

* fast/workers/resources/worker-copy-shared-blob-url-worker.js: Added.
(count.0.onmessage):
* fast/workers/worker-copy-shared-blob-url-expected.txt: Added.
* fast/workers/worker-copy-shared-blob-url.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165339 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoUpdate perf.webkit.org json example
zoltan@webkit.org [Sat, 8 Mar 2014 22:14:47 +0000 (22:14 +0000)]
Update perf.webkit.org json example
https://bugs.webkit.org/show_bug.cgi?id=129907

Reviewed by Andreas Kling.

The current example is not valid json syntax. I fixed the syntax errors and indented the code properly.

* ReadMe.md:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165338 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoDon't check for shm_open on librt on OpenBSD, lib doesnt exist.
commit-queue@webkit.org [Sat, 8 Mar 2014 22:09:54 +0000 (22:09 +0000)]
Don't check for shm_open on librt on OpenBSD, lib doesnt exist.
https://bugs.webkit.org/show_bug.cgi?id=129973

Patch by Landry Breuil <landry@openbsd.org> on 2014-03-08
Reviewed by Martin Robinson.

* Source/autotools/FindDependencies.m4:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165337 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoRemove unnecessary casting in NetworkProcessMainUnix.cpp
jaepark@webkit.org [Sat, 8 Mar 2014 22:07:49 +0000 (22:07 +0000)]
Remove unnecessary casting in NetworkProcessMainUnix.cpp
https://bugs.webkit.org/show_bug.cgi?id=129968

Reviewed by Andreas Kling.

* NetworkProcess/unix/NetworkProcessMainUnix.cpp:
Since socket is an int, int casting is not necessary.

(WebKit::NetworkProcessMain):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165336 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoLots of cleanups for the GTK+ TestExpectations
mrobinson@webkit.org [Sat, 8 Mar 2014 21:49:27 +0000 (21:49 +0000)]
Lots of cleanups for the GTK+ TestExpectations

Updated TestExpectations, adding bug standins where appropriate, skipping tests that
expected to fail and prone to timeout or crash. Removed some unused expectations. Added
new baselines for some tests.

* platform/gtk-wk1/TestExpectations: Updated expectations.
* platform/gtk-wk2/TestExpectations: Ditto.
* platform/gtk/TestExpectations: Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165335 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago32-bit x86 handleUncaughtException returns to wrong location after a stack overflow.
mark.lam@apple.com [Sat, 8 Mar 2014 19:23:01 +0000 (19:23 +0000)]
32-bit x86 handleUncaughtException returns to wrong location after a stack overflow.
<https://webkit.org/b/129969>

Reviewed by Geoffrey Garen.

The 32-bit version of handleUncaughtException was missing the handling of an
edge case for stack overflows where the current frame may already be the
sentinel frame.  This edge case was handled in the 64-bit version.  The fix
is to bring the 32-bit version up to parity.

* jit/JIT.cpp:
(JSC::JIT::privateCompile):
* llint/LowLevelInterpreter32_64.asm:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165334 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoAdd and update some test expectations for GTK+
mrobinson@webkit.org [Sat, 8 Mar 2014 19:12:31 +0000 (19:12 +0000)]
Add and update some test expectations for GTK+

* platform/gtk/TestExpectations: These all seem to be failing because of the same bug.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165333 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoWeb Inspector: update-InspectorBackendCommands.rb is putting legacy protocol files...
commit-queue@webkit.org [Sat, 8 Mar 2014 13:31:13 +0000 (13:31 +0000)]
Web Inspector: update-InspectorBackendCommands.rb is putting legacy protocol files in the wrong place
https://bugs.webkit.org/show_bug.cgi?id=129959

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-03-08
Reviewed by Timothy Hatcher.

The script was putting legacy generated files into UserInterface
instead of UserInterface/Protocol.

* Scripts/update-InspectorBackendCommands.rb:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165332 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoLoad source maps and their resources asynchronously.
timothy@apple.com [Sat, 8 Mar 2014 12:56:11 +0000 (12:56 +0000)]
Load source maps and their resources asynchronously.

https://bugs.webkit.org/show_bug.cgi?id=112071

Reviewed by Joseph Pecoraro.

Source/WebCore:

* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::buildObjectForFrameTree):
Honor the hiddenFromInspector flag.

* inspector/InspectorResourceAgent.cpp:
(WebCore::InspectorResourceAgent::willSendRequest):
(WebCore::InspectorResourceAgent::markResourceAsCached):
(WebCore::InspectorResourceAgent::didReceiveResponse):
(WebCore::InspectorResourceAgent::didReceiveData):
(WebCore::InspectorResourceAgent::didFinishLoading):
(WebCore::InspectorResourceAgent::didFailLoading):
(WebCore::InspectorResourceAgent::replayXHR):
(WebCore::InspectorResourceAgent::loadResource):
* inspector/InspectorResourceAgent.h:
Honor the hiddenFromInspector flag by keeping track of
hidden identifiers in a HashSet.

* inspector/protocol/Network.json:
(Network.loadResource): Added.

* platform/network/ResourceRequestBase.h:
(WebCore::ResourceRequestBase::hiddenFromInspector): Added.
(WebCore::ResourceRequestBase::setHiddenFromInspector): Added.
(WebCore::ResourceRequestBase::ResourceRequestBase):
Add a flag to hide the request from the Inspector.

* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::XMLHttpRequest):
(WebCore::XMLHttpRequest::sendForInspector): Added.
(WebCore::XMLHttpRequest::sendForInspectorXHRReplay): Renamed.
(WebCore::XMLHttpRequest::createRequest):
* xml/XMLHttpRequest.h:
Make Inspector loads allow cross-origins and hide their request
from the Inspector itself.

Source/WebInspectorUI:

* UserInterface/Controllers/SourceMapManager.js:
(WebInspector.SourceMapManager.prototype.loadAndParseSourceMap):
(WebInspector.SourceMapManager.prototype.downloadSourceMap):
(WebInspector.SourceMapManager.prototype.sourceMapLoaded):
(WebInspector.SourceMapManager.prototype._loadAndParseSourceMap):
Use NetworkAgent.loadResource.

* UserInterface/Models/SourceMapResource.js:
(WebInspector.SourceMapResource.prototype.requestContentFromBackend.sourceMapResourceLoaded):
(WebInspector.SourceMapResource.prototype.createSourceCodeTextRange):
Use NetworkAgent.loadResource.

* UserInterface/Protocol/InspectorWebBackendCommands.js: Updated.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165331 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoMountain Lion WK1 test bots are crashing often
mmaxfield@apple.com [Sat, 8 Mar 2014 09:40:28 +0000 (09:40 +0000)]
Mountain Lion WK1 test bots are crashing often
https://bugs.webkit.org/show_bug.cgi?id=129962

Marking the following tests as flakey:
js/dom/cross-frame-bad-time.html
js/dom/create-lots-of-workers.html

Unreviewed.

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2014-03-08

* platform/mac-wk1/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165330 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoPrevent processes spawned by WebProcess from trying to insert the SecItem shim.
commit-queue@webkit.org [Sat, 8 Mar 2014 08:33:03 +0000 (08:33 +0000)]
Prevent processes spawned by WebProcess from trying to insert the SecItem shim.
https://bugs.webkit.org/show_bug.cgi?id=129864

Patch by Aaron Golden <golden@inkling.com> on 2014-03-08
Reviewed by Anders Carlsson.

* WebProcess/EntryPoint/mac/LegacyProcess/WebContentProcessMain.mm:
(WebKit::WebContentProcessMainDelegate::doPreInitializationWork):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165329 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoUnreviewed build fix for GTKbuild after the switch to CMake
mrobinson@webkit.org [Sat, 8 Mar 2014 08:08:46 +0000 (08:08 +0000)]
Unreviewed build fix for GTKbuild after the switch to CMake

* gtk/common.py:
(is_cmake_build): Like r165284, we need to assume CMake by default, since the
test-only bot doesn't have any build files.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165328 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[WebKit2][iOS] PDF
timothy_horton@apple.com [Sat, 8 Mar 2014 06:36:02 +0000 (06:36 +0000)]
[WebKit2][iOS] PDF
https://bugs.webkit.org/show_bug.cgi?id=129600
<rdar://problem/15260216>

Reviewed by Anders Carlsson.

Add a single custom content provider which installs a very primitive PDF view
in place of the WKContentView if a PDF is loaded in the main frame.

* Configurations/WebKit2.xcconfig:
Link against CorePDF, for UIPDFPageView.

* UIProcess/Cocoa/WKWebViewContentProviderRegistry.mm:
(-[WKWebViewContentProviderRegistry init]):
Initialize the registry, using WKPDFView for all PDF MIME types.

* WebKit2.xcodeproj/project.pbxproj:
* UIProcess/ios/WKPDFView.h: Added.
* UIProcess/ios/WKPDFView.mm: Added.
Add a very simple PDF view based on UIPDFPageView. Additional functionality
can come in the future; right now, we just create one view for each page, and
depend on CATiledLayer to only paint the pages that are being displayed.

* WebCore.exp.in:
* platform/MIMETypeRegistry.cpp:
(WebCore::initializeSupportedImageMIMETypes):
(WebCore::initializePDFMIMETypes):
(WebCore::initializePostScriptMIMETypes):
(WebCore::initializeMIMETypeRegistry):
(WebCore::MIMETypeRegistry::getPDFMIMETypes):
* platform/MIMETypeRegistry.h:
Split PDF and PostScript MIME types, so WebKit2 can retrieve just the PDF ones
without PostScript included.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165327 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoArgumentEncoder and ArgumentDecoder should be fastmalloced.
akling@apple.com [Sat, 8 Mar 2014 06:34:07 +0000 (06:34 +0000)]
ArgumentEncoder and ArgumentDecoder should be fastmalloced.
<https://webkit.org/b/129960>

Reviewed by Ryosuke Niwa.

* Platform/IPC/ArgumentDecoder.h:
* Platform/IPC/ArgumentEncoder.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165326 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoFix bugs in 32-bit Structure implementation.
mark.lam@apple.com [Sat, 8 Mar 2014 06:26:16 +0000 (06:26 +0000)]
Fix bugs in 32-bit Structure implementation.
<https://webkit.org/b/129947>

Reviewed by Mark Hahnenberg.

Added the loading of the Structure (from the JSCell) before use that was
missing in a few places.  Also added more test cases to equals-masquerader.js.

* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNull):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* llint/LowLevelInterpreter32_64.asm:
* tests/stress/equals-masquerader.js:
(equalsNull):
(notEqualsNull):
(strictEqualsNull):
(strictNotEqualsNull):
(equalsUndefined):
(notEqualsUndefined):
(strictEqualsUndefined):
(strictNotEqualsUndefined):
(isFalsey):
(test):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165325 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoComment in RenderStyle is no longer accurate
mmaxfield@apple.com [Sat, 8 Mar 2014 05:25:07 +0000 (05:25 +0000)]
Comment in RenderStyle is no longer accurate
https://bugs.webkit.org/show_bug.cgi?id=129956

Reviewed by Simon Fraser.

RenderStyle::createStyleInheritingFromPseudoStyle was moved from RenderImage. Before it
was moved, there was an image-specific comment in the function. However, that comment
is both irrelevant to RenderStyle, and incorrect as the function is necessary for
RenderQuotes as well.

No new tests are necessary because there is no behavior change.

* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::createStyleInheritingFromPseudoStyle):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165324 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoMark some more tests as failing on WebKitGTK+ and file bugs for them
mrobinson@webkit.org [Sat, 8 Mar 2014 05:10:30 +0000 (05:10 +0000)]
Mark some more tests as failing on WebKitGTK+ and file bugs for them

* platform/gtk/TestExpectations: Update test expectations.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165323 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoTemporarily disable repeat-out-of-bounds stress tests pending fix for 129953.
commit-queue@webkit.org [Sat, 8 Mar 2014 04:09:06 +0000 (04:09 +0000)]
Temporarily disable repeat-out-of-bounds stress tests pending fix for 129953.
https://bugs.webkit.org/show_bug.cgi?id=129954

Patch by Andrew Trick <atrick@apple.com> on 2014-03-07
Reviewed by Filip Pizlo.

* tests/stress/float32-repeat-out-of-bounds.js:
* tests/stress/int8-repeat-out-of-bounds.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165322 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[WebRTC] Throw SYNTAX_ERROR when maxRetransmits and maxRetransmitTime are both set...
thiago.lacerda@openbossa.org [Sat, 8 Mar 2014 03:36:23 +0000 (03:36 +0000)]
[WebRTC] Throw SYNTAX_ERROR when maxRetransmits and maxRetransmitTime are both set in RTCDataChannelInit
https://bugs.webkit.org/show_bug.cgi?id=129894

Reviewed by Eric Carlson.

Source/WebCore:

Existing test was updated.

* Modules/mediastream/RTCDataChannel.cpp:
(WebCore::RTCDataChannel::create):

LayoutTests:

* fast/mediastream/RTCPeerConnection-datachannel-expected.txt:
* fast/mediastream/RTCPeerConnection-datachannel.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165321 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago.cfi directives in LowLevelInterpreter.cpp are providing no benefit
msaboff@apple.com [Sat, 8 Mar 2014 03:33:44 +0000 (03:33 +0000)]
.cfi directives in LowLevelInterpreter.cpp are providing no benefit
https://bugs.webkit.org/show_bug.cgi?id=129945

Reviewed by Mark Lam.

Removed .cfi directive.  Verified that stack traces didn't regress in crash reporter
or in lldb.

* llint/LowLevelInterpreter.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165320 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoFix the GTK+ build after the recent iOS merge.
mrobinson@webkit.org [Sat, 8 Mar 2014 03:05:34 +0000 (03:05 +0000)]
Fix the GTK+ build after the recent iOS merge.

* UIProcess/API/gtk/PageClientImpl.cpp: Make some methods available to non-Cocoa ports and fix some signatures.
* UIProcess/WebPageProxy.h: Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165319 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[Win] Unreviewed build fix after r165310.
alex.christensen@flexsim.com [Sat, 8 Mar 2014 02:33:06 +0000 (02:33 +0000)]
[Win] Unreviewed build fix after r165310.

* WebKit.vcxproj/WebKit/WebKitDirectX.props:
Replaced Platform macro, which is either "Win32" or "x64"
with PlatformShortName macro, which is either "x86" or "x64".
This is correct for finding the DirectX libraries.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165315 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[EFL] Replace GraphicsContext3D with Evas_GL in AcceleratedCompositingContext.
ryuan.choi@samsung.com [Sat, 8 Mar 2014 02:23:50 +0000 (02:23 +0000)]
[EFL] Replace GraphicsContext3D with Evas_GL in AcceleratedCompositingContext.
https://bugs.webkit.org/show_bug.cgi?id=129676

Patch by Hyowon Kim <hw1008.kim@samsung.com> on 2014-03-07
Reviewed by Gyuyoung Kim.

TextureMapperGL has its own GraphicsContext3D created by createForCurrentGLContext().
So AcceleratedCompositingContext doesn't need to create and set it to TextureMapperGL.

We now should do 'makeCurrentContext' with a platform specific context before createForCurrentGLContext().
This patch removes GraphicsContext3D related codes in AcceleratedCompositingContext
and adds EvasGLContext/Surface to it instead.

* WebCoreSupport/AcceleratedCompositingContextEfl.cpp:
(WebCore::AcceleratedCompositingContext::initialize):
(WebCore::AcceleratedCompositingContext::resize):
(WebCore::AcceleratedCompositingContext::renderLayers):
* WebCoreSupport/AcceleratedCompositingContextEfl.h:
* ewk/ewk_view.cpp:
* ewk/ewk_view_private.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165314 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoUnreviewed. Fix build on the EFL port after r165303
ryuan.choi@samsung.com [Sat, 8 Mar 2014 02:20:02 +0000 (02:20 +0000)]
Unreviewed. Fix build on the EFL port after r165303

* UIProcess/CoordinatedGraphics/WebView.cpp:
(WebKit::WebView::didCommitLoadForMainFrame): Added new parameters.
* UIProcess/CoordinatedGraphics/WebView.h: Ditto.
* UIProcess/WebPageProxy.h:
* UIProcess/efl/WebViewEfl.cpp: Added dummy didFinishLoadingDataForCustomContentProvider()
(WebKit::WebViewEfl::exitFullScreen):
(WebKit::WebViewEfl::didFinishLoadingDataForCustomContentProvider):
* UIProcess/efl/WebViewEfl.h: Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165313 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[iOS WebKit2] Keyboard accessory comes up when I click a link.
enrica@apple.com [Sat, 8 Mar 2014 02:08:51 +0000 (02:08 +0000)]
[iOS WebKit2] Keyboard accessory comes up when I click a link.
https://bugs.webkit.org/show_bug.cgi?id=129949
<rdar://problem/16265305>

Reviewed by Simon Fraser.

We need to create the accessory view only when needed.

* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView requiresAccessoryView]):
(-[WKContentView inputAccessoryView]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165311 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[Win] Unreviewed gardening (for 64-bit)
bfulgham@apple.com [Sat, 8 Mar 2014 02:05:18 +0000 (02:05 +0000)]
[Win] Unreviewed gardening (for 64-bit)

* WebKit.vcxproj/WebKit/WebKitDirectX.props: Use Platform macro, rather than
hard-coded path. This allows it to work on 32-bit or 64-bit builds.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165310 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoRebaseline some tests for WebKitGTK+
mrobinson@webkit.org [Sat, 8 Mar 2014 01:59:39 +0000 (01:59 +0000)]
Rebaseline some tests for WebKitGTK+

* platform/gtk: Rebaseline tests.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165309 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoAdd the remaining WebKit2 headers to WEBKIT2_HEADERS
andersca@apple.com [Sat, 8 Mar 2014 01:28:21 +0000 (01:28 +0000)]
Add the remaining WebKit2 headers to WEBKIT2_HEADERS
https://bugs.webkit.org/show_bug.cgi?id=129942
<rdar://problem/15920020>

Reviewed by Tim Horton.

* MigrateHeaders.make:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165307 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoContinue hangs when performing for-of over arguments
oliver@apple.com [Sat, 8 Mar 2014 01:17:57 +0000 (01:17 +0000)]
Continue hangs when performing for-of over arguments
https://bugs.webkit.org/show_bug.cgi?id=129915

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Put the continue label in the right place

* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitEnumeration):

LayoutTests:

Add tests

* js/for-of-arguments-continue-hang-expected.txt: Added.
* js/for-of-arguments-continue-hang.html: Added.
* js/script-tests/for-of-arguments-continue-hang.js: Added.
(test):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165306 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[iOS WebKit2] Long-press on a link shows just "Copy".
enrica@apple.com [Sat, 8 Mar 2014 01:17:08 +0000 (01:17 +0000)]
[iOS WebKit2] Long-press on a link shows just "Copy".
https://bugs.webkit.org/show_bug.cgi?id=129938
<rdar://problem/16266054>

Reviewed by Benjamin Poulain.

When adding a FIXME comment, I accidentally removed the ! on
the if (!element) condition.

* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::getPositionInformation):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165305 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[GTK] built-product-archive does not handle GTK+ CMake build
mrobinson@webkit.org [Sat, 8 Mar 2014 01:13:01 +0000 (01:13 +0000)]
[GTK] built-product-archive does not handle GTK+ CMake build
https://bugs.webkit.org/show_bug.cgi?id=129941

* BuildSlaveSupport/built-product-archive:
(archiveBuiltProduct): Fix the build by adding support to built-product-archive for
the CMake build.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165304 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[WebKit2][iOS] Main-frame custom content providers
timothy_horton@apple.com [Sat, 8 Mar 2014 01:06:31 +0000 (01:06 +0000)]
[WebKit2][iOS] Main-frame custom content providers
https://bugs.webkit.org/show_bug.cgi?id=129809

Reviewed by Dan Bernstein.

Re-introduce custom content providers to WebKit2 (removed in r152841), but
for iOS this time.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithFrame:configuration:]):
Send the initial MIME types that have custom content providers to the WebProcess.

(-[WKWebView dealloc]):
Unregister our page from the content provider registry.

(-[WKWebView _setHasCustomContentView:loadedMIMEType:]):
Install/uninstall the custom content provider. Create a view, if needed,
based on the class that the registry has associated with the given MIME type.
We unparent the WKContentView while the custom content provider is active,
and re-use the existing WKScrollView to contain the custom content provider.

(-[WKWebView _didFinishLoadingDataForCustomContentProviderWithSuggestedFilename:dataReference:]):
Forward loaded data on to the custom content provider for display.

(-[WKWebView _didCommitLayerTree:WebKit::]):
Assert that we aren't getting layer tree commits while using a custom content provider.

(-[WKWebView viewForZoomingInScrollView:]):
If we're using a custom content provider, its view should be used for zooming
instead of the (unparented) web content view.

(-[WKWebView hasContentView]):
(-[WKWebView scrollViewWillBeginZooming:withView:]):
(-[WKWebView scrollViewWillBeginDragging:]):
(-[WKWebView _didFinishScrolling]):
(-[WKWebView _updateVisibleContentRects]):
If we do not have a parented WKContentView because we are using a custom
content provider, we should not forward scroll view related changes to it.

(-[WKWebView _frameOrBoundsChanged]):
Update the minimum size of the custom content provider if the web view size changes.

* UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
(-[WKWebViewConfiguration copyWithZone:]):
(-[WKWebViewConfiguration _contentProviderRegistry]):
(-[WKWebViewConfiguration _setContentProviderRegistry:]):
* UIProcess/API/Cocoa/WKWebViewConfigurationInternal.h: Added.
Add an internal WKWebViewConfiguration property, the WKWebViewContentProviderRegistry.

* UIProcess/API/Cocoa/WKWebViewInternal.h:

* UIProcess/Cocoa/WKWebViewContentProvider.h: Added.
A minimal protocol for informing custom content providers of changes to
the size of the view, the represented data, and the owning scroll view.

* UIProcess/Cocoa/WKWebViewContentProviderRegistry.h: Added.
* UIProcess/Cocoa/WKWebViewContentProviderRegistry.mm: Added.
(-[WKWebViewContentProviderRegistry addPage:]):
(-[WKWebViewContentProviderRegistry removePage:]):
(-[WKWebViewContentProviderRegistry registerProvider:forMIMEType:]):
(-[WKWebViewContentProviderRegistry providerForMIMEType:]):
(-[WKWebViewContentProviderRegistry mimeTypesWithContentProviders]):
New class, keeps track of a mapping from MIME types to UIViews that
conform to the WKWebViewContentProvider protocol.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::didCommitLoadForFrame):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:

* UIProcess/PageClient.h:
* UIProcess/ios/PageClientImplIOS.h:
* UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::PageClientImpl):
(WebKit::PageClientImpl::didCommitLoadForMainFrame):
(WebKit::PageClientImpl::didFinishLoadingDataForCustomContentProvider):
* UIProcess/mac/PageClientImpl.h:
* UIProcess/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::didCommitLoadForMainFrame):
(WebKit::PageClientImpl::didFinishLoadingDataForCustomContentProvider):
Add parameters to didCommitLoadForMainFrame, indicating if we should use
a custom content provider to display the main frame, and what MIME type
was loaded in said frame, and add didFinishLoadingDataForCustomContentProvider.
On iOS, forward these to the WKWebView.
Also, give PageClientImplIOS a reference to the WKWebView.

* UIProcess/ios/WKContentView.mm:
(-[WKContentView initWithFrame:context:WebKit::configuration:WebKit::webView:]):

* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.mm:
(-[WKWebProcessPlugInFrame _hasCustomContentProvider]):
* WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFramePrivate.h:
Expose whether or not a given frame has a custom content provider to the plug-in.

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::WebFrameLoaderClient):
(WebKit::WebFrameLoaderClient::hasHTMLView):
(WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
(WebKit::WebFrameLoaderClient::committedLoad):
(WebKit::WebFrameLoaderClient::finishedLoading):
(WebKit::WebFrameLoaderClient::transitionToCommittedFromCachedFrame):
(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
(WebKit::WebFrameLoaderClient::canCachePage):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
(WebKit::WebFrameLoaderClient::frameHasCustomContentProvider):
Restore WebFrameLoaderClient custom representation code, which ensures
that data is routed correctly (to the UI process, and not to WebCore) and
that we don't try to use the page cache for frames with content providers.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::mainFrameHasCustomContentProvider):
(WebKit::WebPage::addMIMETypeWithCustomContentProvider):
(WebKit::WebPage::shouldUseCustomContentProviderForResponse):
(WebKit::WebPage::canShowMIMEType):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:
Keep a list of MIME types which can be displayed via custom content providers
in WebPage, which will be pushed down from the registry as new providers
are added. Plug-ins still take precendence over custom content providers.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165303 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoMigrateHeaders.make should remove C SPI includes from WebKit2 headers
andersca@apple.com [Sat, 8 Mar 2014 01:02:30 +0000 (01:02 +0000)]
MigrateHeaders.make should remove C SPI includes from WebKit2 headers
https://bugs.webkit.org/show_bug.cgi?id=129937
<rdar://problem/15920020>

Reviewed by Tim Horton.

Source/WebKit/mac:

* MigrateHeaders.make:
Add WKPreferences.h to WEBKIT2_HEADERS.
Add a sed rule that deletes all lines that start with a # and contain <WebKit/*Ref.h>.

Source/WebKit2:

* WebKit2.xcodeproj/project.pbxproj:
Make WKPreferences.h and all headers it includes public. Update the post processing of WKBase.h
to account for WKBase.h now being a public header again.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165302 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoFix the regression introduced by r165288
benjamin@webkit.org [Sat, 8 Mar 2014 00:41:36 +0000 (00:41 +0000)]
Fix the regression introduced by r165288
https://bugs.webkit.org/show_bug.cgi?id=129934

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-03-07
Reviewed by Ryosuke Niwa.

* page/DOMWindow.cpp:
(WebCore::DOMWindow::scrollX):
(WebCore::DOMWindow::scrollY):
We need to return the new value after layout, not the value from the dirty tree.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165301 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoTraversal failure in a direct adjacent chain with tail backtracking lacks the path...
benjamin@webkit.org [Sat, 8 Mar 2014 00:40:11 +0000 (00:40 +0000)]
Traversal failure in a direct adjacent chain with tail backtracking lacks the path to clear the tail
https://bugs.webkit.org/show_bug.cgi?id=129863

Reviewed by Gavin Barraclough.

Source/WebCore:

Direct adjacent backtracking use the stack to push the backtracking entry point and recover from there.
In case of traversal failure, their is no point in recovering from the indirect adjancent entry point and
we should clear entry point from the stack (which is the purpose of the tail).

The adjancent tail was missing the part for clearing the stack in one case.

The case with adjancent backtracking inside descendant backtracing was doing everything right. This patch
generalize this code and the correct tail is fully generated by generateAdjacentBacktrackingTail().

JumpToClearAdjacentDescendantTail becomes JumpToClearAdjacentTail, and this new backtracking state is added
to the missing traversal action.

Test: fast/selectors/long-adjacent-backtracking.html

* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::solveBacktrackingAction):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateSelectorChecker):
(WebCore::SelectorCompiler::SelectorCodeGenerator::linkFailures):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateAdjacentBacktrackingTail):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateBacktrackingTailsIfNeeded):

LayoutTests:

Test the faulty case.

* fast/selectors/long-adjacent-backtracking-expected.txt: Added.
* fast/selectors/long-adjacent-backtracking.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165300 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[GTK] Include CMake into install-dependencies script
commit-queue@webkit.org [Sat, 8 Mar 2014 00:33:55 +0000 (00:33 +0000)]
[GTK] Include CMake into install-dependencies script
https://bugs.webkit.org/show_bug.cgi?id=129909

Patch by Lorenzo Tilve <ltilve@igalia.com> on 2014-03-07
Reviewed by Martin Robinson.

As since r165267 buid-webkit uses CMake by default, the dependency
with 'cmake' package should be introduced.

* gtk/install-dependencies: Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165299 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoSource/WebKit: Make it possible to copy WebKit2 headers to WebKit.framework
andersca@apple.com [Sat, 8 Mar 2014 00:18:21 +0000 (00:18 +0000)]
Source/WebKit: Make it possible to copy WebKit2 headers to WebKit.framework
https://bugs.webkit.org/show_bug.cgi?id=129935

Reviewed by Dan Bernstein.

* WebKit.xcodeproj/project.pbxproj:
Move the migrate headers script out into its own file.

Source/WebKit/mac: Make it possible to copy WebKit2 headers to WebKit.framework
https://bugs.webkit.org/show_bug.cgi?id=129935
<rdar://problem/15920020>

Reviewed by Dan Bernstein.

* MigrateHeaders.make:
Gather a list of public and private WebKit2 headers and filter them against the WEBKIT2_HEADERS list.
The matching headers are copied to the respective Headers or PrivateHeaders directories under WebKit.framework,
and also have their #imports rewritten to reference WebKit instead of WebKit2.

* migrate-headers.sh: Added.
Set up the WEBKIT2_FRAMEWORKS_DIR if needed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165298 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoREGRESSION (r164847): Pressing the command key while hovering an element causes it...
ap@apple.com [Fri, 7 Mar 2014 23:43:57 +0000 (23:43 +0000)]
REGRESSION (r164847): Pressing the command key while hovering an element causes it to un-hover
https://bugs.webkit.org/show_bug.cgi?id=129872

Reviewed by Tim Horton.

* UIProcess/API/Cocoa/WKViewPrivate.h: Changes in performDictionaryLookupAtCurrentMouseLocation
were also not correct, because the current event could be a keyboard one (Cmd+Ctrl+D).
But this SPI is unused, and can be simply removed.

* UIProcess/API/mac/WKView.mm: (-[WKView _postFakeMouseMovedEventForFlagsChangedEvent:]):
locationInWindow is undefined for keyboard events, so we have to use current location.
Thankfully, there is a method that returns the location in appropriate coordinate
space, unlike +[NSEvent mouseLocation] that we used before.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165297 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[Win64] Compile error after r165128.
commit-queue@webkit.org [Fri, 7 Mar 2014 23:21:18 +0000 (23:21 +0000)]
[Win64] Compile error after r165128.
https://bugs.webkit.org/show_bug.cgi?id=129807

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-03-07
Reviewed by Mark Lam.

Source/JavaScriptCore:

* JavaScriptCore.vcxproj/LLInt/LLIntAssembly/build-LLIntAssembly.sh:
Check platform environment variable to determine if an assembler file should be generated.

Source/WTF:

* wtf/Platform.h: MSVC does not support computed goto.
Also enabled COMPUTED_GOTO_OPCODES when !ENABLE(LLINT_C_LOOP). This is needed because the ASM LLINT operates like COMPUTED_GOTO_OPCODES,
and relies on the related data structures being defined to support this. On Win32, the platform does not HAVE_COMPUTED_GOTO support,
but does want ENABLE_COMPUTED_GOTO_OPCODES because it uses the ASM LLINT.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165296 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[iOS] Install WebKit2 XPC services to the correct place during iOS Simulator builds
aestes@apple.com [Fri, 7 Mar 2014 22:53:27 +0000 (22:53 +0000)]
[iOS] Install WebKit2 XPC services to the correct place during iOS Simulator builds
https://bugs.webkit.org/show_bug.cgi?id=129914

Reviewed by Dan Bernstein.

We weren't specifying INSTALL_PATH for iOS Simulator builds in
BaseXPCService.xcconfig, and r164576 changed INSTALL_PATH to
INSTALL_PATH_ACTUAL. This caused XPC services to start being installed
to the root of the iOS Simulator SDK. Fix this by setting
INSTALL_PATH_ACTUAL for iphonesimulator.

* Configurations/BaseXPCService.xcconfig:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165295 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoFix a typo
andersca@apple.com [Fri, 7 Mar 2014 22:52:38 +0000 (22:52 +0000)]
Fix a typo
<rdar://problem/15920020>

Rubber-stamped by Dan Bernstein.

* Configurations/WebKit.xcconfig:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165294 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoClarify how we deal with "special" registers
msaboff@apple.com [Fri, 7 Mar 2014 22:22:46 +0000 (22:22 +0000)]
Clarify how we deal with "special" registers
https://bugs.webkit.org/show_bug.cgi?id=129806

Already reviewed change being relanded.

Relanding change set r165196 as it wasn't responsible for the breakage reported in
https://bugs.webkit.org/show_bug.cgi?id=129822.  That appears to be a build or

Reviewed by Michael Saboff.
configuration issue.

* assembler/ARM64Assembler.h:
(JSC::ARM64Assembler::lastRegister):
* assembler/MacroAssembler.h:
(JSC::MacroAssembler::nextRegister):
* ftl/FTLLocation.cpp:
(JSC::FTL::Location::restoreInto):
* ftl/FTLSaveRestore.cpp:
(JSC::FTL::saveAllRegisters):
(JSC::FTL::restoreAllRegisters):
* ftl/FTLSlowPathCall.cpp:
* jit/RegisterSet.cpp:
(JSC::RegisterSet::reservedHardwareRegisters):
(JSC::RegisterSet::runtimeRegisters):
(JSC::RegisterSet::specialRegisters):
(JSC::RegisterSet::calleeSaveRegisters):
* jit/RegisterSet.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165293 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[Mac] Notify system malloc of fake memory pressure.
akling@apple.com [Fri, 7 Mar 2014 22:16:00 +0000 (22:16 +0000)]
[Mac] Notify system malloc of fake memory pressure.
<https://webkit.org/b/129908>

Source/WebCore:

After fixing the leak in r165252, I was surprised to find that it didn't
show up on memory test bots. It turns out that while the memory is now
getting freed, the system malloc implementation doesn't actually release
pages back to the OS until there is memory pressure.

Since we are just faking the memory pressure on bots, we have to let
system malloc in on the fun, so we can get representative numbers.
With this change, we should finally see the effect of not leaking the
URLRequest object tree.

Reviewed by Anders Carlsson.

* platform/mac/MemoryPressureHandlerMac.mm:
(WebCore::MemoryPressureHandler::install):

    Tell system malloc that we are under fake memory pressure.

Source/WebKit2:

Reviewed by Anders Carlsson.

* NetworkProcess/mac/NetworkProcessMac.mm:
(WebKit::NetworkProcess::platformInitializeNetworkProcess):

    Listen for the fake memory pressure notification and respond by
    just forwarding to system malloc. We don't do the full WebCore
    memory pressure handling here, since that will cause stuff that
    the network process doesn't need to get instantiated.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165292 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoTweak the WebKit2 frameworks directories
andersca@apple.com [Fri, 7 Mar 2014 22:06:57 +0000 (22:06 +0000)]
Tweak the WebKit2 frameworks directories
https://bugs.webkit.org/show_bug.cgi?id=129910
<rdar://problem/15920020>

Reviewed by Dan Bernstein.

Use an SDK relative directory for production builds.

* Configurations/WebKit.xcconfig:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165291 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years ago[iOS] WebKit1 scroll position is incorrect
benjamin@webkit.org [Fri, 7 Mar 2014 21:56:18 +0000 (21:56 +0000)]
[iOS] WebKit1 scroll position is incorrect
https://bugs.webkit.org/show_bug.cgi?id=129905

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-03-07
Reviewed by Simon Fraser.

* page/DOMWindow.cpp:
(WebCore::DOMWindow::scrollX):
(WebCore::DOMWindow::scrollY):
A new optimization was avoiding layout if the position is zero. This was using the scrollX/Y instead
of actualScrollX/Y which caused us to always bail out instead of returning the value to JavaScript.

* platform/ScrollView.h:
(WebCore::ScrollView::actualScrollX):
(WebCore::ScrollView::actualScrollY):
(WebCore::ScrollView::actualScrollPosition):
This was accidentally changed to the iOS compat document visible rect at some point.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165288 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoAttempt to fix the iOS build.
dino@apple.com [Fri, 7 Mar 2014 21:53:19 +0000 (21:53 +0000)]
Attempt to fix the iOS build.

* Configurations/WebKit2.xcconfig: Add -framework OpenGLES to linking.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165287 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoRemove unused StdDeviation from Drop shadow effect
cavalcantii@gmail.com [Fri, 7 Mar 2014 21:33:44 +0000 (21:33 +0000)]
Remove unused StdDeviation from Drop shadow effect
https://bugs.webkit.org/show_bug.cgi?id=129891

Reviewed by Dirk Schulze.

No new tests, no change on behavior.

* platform/graphics/filters/FEDropShadow.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165285 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoREGRESSION(165267): Broke a webkitpy unit tests
mrobinson@webkit.org [Fri, 7 Mar 2014 21:32:51 +0000 (21:32 +0000)]
REGRESSION(165267): Broke a webkitpy unit tests
https://bugs.webkit.org/show_bug.cgi?id=129904

Reviewed by Jon Honeycutt.

* Scripts/webkitpy/port/gtk.py: Flip the default test to assume CMake by default.
(GtkPort._is_cmake_build):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165284 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5 years agoLink WebKit.framework against WebKit2.framework and re-export all WebKit2 symbols
andersca@apple.com [Fri, 7 Mar 2014 21:30:52 +0000 (21:30 +0000)]
Link WebKit.framework against WebKit2.framework and re-export all WebKit2 symbols
https://bugs.webkit.org/show_bug.cgi?id=129901
<rdar://problem/15920020>

Reviewed by Andreas Kling.

* Configurations/WebKit.xcconfig:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@165283 268f45cc-cd09-0410-ab3c-d52691b4dbfc