Timeline



Jun 24, 2014:

11:54 PM Changeset in webkit [170422] by commit-queue@webkit.org
  • 48 edits in trunk

[GTK] Some of DOM bindings macros are misnamed
https://bugs.webkit.org/show_bug.cgi?id=121543

Patch by Tomas Popela <tpopela@redhat.com> on 2014-06-24
Reviewed by Carlos Garcia Campos.

As we are using WebKitDOM as a namespace we should unify all type macros
to have WEBKIT_DOM_TYPE prefix instead of WEBKIT_TYPE_DOM. Also add
more exceptions to decamelize function in GObject bindings generator
to fix the names of bindings for BR, HR, UL, OL, DL and LI elements.

Source/WebCore:

  • bindings/gobject/GObjectEventListener.cpp:

(WebCore::GObjectEventListener::handleEvent):

  • bindings/gobject/WebKitDOMEventTarget.h:
  • bindings/gobject/WebKitDOMNodeFilter.h:
  • bindings/gobject/WebKitDOMObject.h:
  • bindings/gobject/webkitdom.symbols:
  • bindings/scripts/CodeGeneratorGObject.pm:

(decamelize):
(GetParentGObjType):
(GenerateProperty):
(GenerateHeader):
(GenerateCFile):
(GenerateEventTargetIface):

  • bindings/scripts/test/GObject/WebKitDOMFloat64Array.cpp:

(WebKit::wrapFloat64Array):

  • bindings/scripts/test/GObject/WebKitDOMFloat64Array.h:
  • bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.cpp:

(WebKit::wrapTestActiveDOMObject):

  • bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.h:
  • bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:

(WebKit::wrapTestCallback):

  • bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
  • bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.cpp:

(WebKit::wrapTestCustomNamedGetter):

  • bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.h:
  • bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.cpp:

(WebKit::wrapTestEventConstructor):

  • bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.h:
  • bindings/scripts/test/GObject/WebKitDOMTestEventTarget.cpp:

(WebKit::wrapTestEventTarget):

  • bindings/scripts/test/GObject/WebKitDOMTestEventTarget.h:
  • bindings/scripts/test/GObject/WebKitDOMTestException.cpp:

(WebKit::wrapTestException):

  • bindings/scripts/test/GObject/WebKitDOMTestException.h:
  • bindings/scripts/test/GObject/WebKitDOMTestGenerateIsReachable.cpp:

(WebKit::wrapTestGenerateIsReachable):

  • bindings/scripts/test/GObject/WebKitDOMTestGenerateIsReachable.h:
  • bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:

(WebKit::wrapTestInterface):
(webkit_dom_test_interface_class_init):

  • bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
  • bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:

(WebKit::wrapTestMediaQueryListListener):

  • bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
  • bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.cpp:

(WebKit::wrapTestNamedConstructor):

  • bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.h:
  • bindings/scripts/test/GObject/WebKitDOMTestNode.cpp:

(WebKit::wrapTestNode):

  • bindings/scripts/test/GObject/WebKitDOMTestNode.h:
  • bindings/scripts/test/GObject/WebKitDOMTestNondeterministic.cpp:

(WebKit::wrapTestNondeterministic):

  • bindings/scripts/test/GObject/WebKitDOMTestNondeterministic.h:
  • bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:

(WebKit::wrapTestObj):
(webkit_dom_test_obj_class_init):

  • bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  • bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.cpp:

(WebKit::wrapTestOverloadedConstructors):

  • bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.h:
  • bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:

(WebKit::wrapTestSerializedScriptValueInterface):
(webkit_dom_test_serialized_script_value_interface_class_init):

  • bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
  • bindings/scripts/test/GObject/WebKitDOMTestTypedefs.cpp:

(WebKit::wrapTestTypedefs):
(webkit_dom_test_typedefs_class_init):

  • bindings/scripts/test/GObject/WebKitDOMTestTypedefs.h:
  • bindings/scripts/test/GObject/WebKitDOMattribute.cpp:

(WebKit::wrapattribute):

  • bindings/scripts/test/GObject/WebKitDOMattribute.h:
  • bindings/scripts/test/GObject/WebKitDOMreadonly.cpp:

(WebKit::wrapreadonly):

  • bindings/scripts/test/GObject/WebKitDOMreadonly.h:

Tools:

  • TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeFilterTest.cpp:
  • gtk/webkitdom.py:

(WebKitDOMDocGeneratorSections._dom_class_decamelize):
(WebKitDOMDocGeneratorSections.write_section):

11:45 PM Changeset in webkit [170421] by msaboff@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Add support routines to provide descriptive JavaScript backtraces
https://bugs.webkit.org/show_bug.cgi?id=134278

Reviewed by Mark Lam.

  • interpreter/CallFrame.cpp:

(JSC::CallFrame::dump):
(JSC::CallFrame::describeFrame):

  • interpreter/CallFrame.h:
  • runtime/JSCJSValue.cpp:

(JSC::JSValue::dumpForBacktrace):

  • runtime/JSCJSValue.h:
11:44 PM Changeset in webkit [170420] by akling@apple.com
  • 2 edits in trunk/Source/WTF

Run the FastMalloc scavenger thread on iOS as well.
<https://webkit.org/b/134287>
<rdar://problem/17446198>

Reviewed by Gavin Barraclough.

  • wtf/FastMalloc.cpp:
11:31 PM Changeset in webkit [170419] by fred.wang@free.fr
  • 2 edits in trunk/Tools

[EFL] Install Latin Modern Math on the bots
https://bugs.webkit.org/show_bug.cgi?id=134153

Reviewed by Gyuyoung Kim.

9:56 PM Changeset in webkit [170418] by fred.wang@free.fr
  • 13 edits in trunk

Tools: [EFL] [GTK] Use Latin Modern Math in the jhbuild environments.
https://bugs.webkit.org/show_bug.cgi?id=134153

Reviewed by Martin Robinson.

  • efl/jhbuild.modules: Use webkitgtk-test-fonts.git instead of the zip archive and upgrade to 0.0.5.
  • gtk/jhbuild.modules: Upgrade webkitgtk-test-fonts to 0.0.5.

LayoutTests: [EFL] [GTK] Update the MathML test references.
https://bugs.webkit.org/show_bug.cgi?id=134153

Reviewed by Martin Robinson.

We update the GTK references after the move to Latin Modern Math.

  • mathml/presentation/bug95015-expected.html: hide the base X since it is causing antialiasing diff.
  • mathml/presentation/bug95015.html: ditto
  • platform/efl/TestExpectations: enable some tests again (the references must be updated).
  • platform/gtk/TestExpectations: enable OpenType MATH test again, mark mo-stacked-glyphs as failing.
  • platform/gtk/mathml/presentation/menclose-notation-default-longdiv-expected.txt: update reference.
  • platform/gtk/mathml/presentation/mo-stretch-expected.png: ditto
  • platform/gtk/mathml/presentation/mo-stretch-expected.txt: ditto
  • platform/gtk/mathml/presentation/roots-expected.png: ditto
  • platform/gtk/mathml/presentation/roots-expected.txt: ditto
9:30 PM Changeset in webkit [170417] by commit-queue@webkit.org
  • 4 edits
    2 deletes in trunk

Unreviewed, rolling out r170414.
https://bugs.webkit.org/show_bug.cgi?id=134291

the patch added a test that fails on almost every Mac tester
(Requested by rniwa on #webkit).

Reverted changeset:

"Tiles on bottom of screen are not always allocated when
necessary"
https://bugs.webkit.org/show_bug.cgi?id=134272
http://trac.webkit.org/changeset/170414

8:13 PM Changeset in webkit [170416] by jonowells@apple.com
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: clicking "Show All Nodes" button throws TypeError
https://bugs.webkit.org/show_bug.cgi?id=133701

Reviewed by Timothy Hatcher.

The method used for isEventWithinDisclosureTriangle needs to consider the possibility that the
targeted TreeElement isn't contained within the visible DOM, for instance in the case of the
"Show All Nodes" button immediately after it is pressed.

  • UserInterface/Views/TreeOutline.js:

(TreeElement.prototype.isEventWithinDisclosureTriangle): Check to make sure TreeElement node is in the visible DOM.

6:28 PM Changeset in webkit [170415] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Tools

Unreviewed, update my speciality.

  • Scripts/webkitpy/common/config/contributors.json:
6:25 PM Changeset in webkit [170414] by mmaxfield@apple.com
  • 4 edits
    2 adds in trunk

Tiles on bottom of screen are not always allocated when necessary
https://bugs.webkit.org/show_bug.cgi?id=134272

Reviewed by Simon Fraser.

Source/WebCore:
The initial visibleRect is in the coordinate of the root layer, so its origin
is at the top left of the view. The initial rect we were using doesn't
include the contents inset, so it was too short, which was causing tiles near
the bottom of the screen to not always be allocated if the tile threshold was
close to the bottom of the view. Instead, we want to include the contents
inset size so the visible rect includes the entire view.
GraphicsLayerCA::recursiveCommitChanges() takes care of mapping and cropping
the visible rect into the tiled layer's coordinate system, at which point it
is used for visible tile logic.

Test: platform/mac-wk2/tiled-drawing/visible-rect-content-inset.html

  • platform/graphics/ca/TileCoverageMap.cpp:

(WebCore::TileCoverageMap::update):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::flushPendingLayerChanges):

LayoutTests:
Apply a content inset, then dump visible rects.

  • platform/mac-wk2/tiled-drawing/visible-rect-content-inset-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/visible-rect-content-inset.html: Added.
6:19 PM Changeset in webkit [170413] by mmaxfield@apple.com
  • 4 edits in trunk/Source/WebCore

InlineTextBox's m_len can be an unsigned (rather than an unsigned short)
https://bugs.webkit.org/show_bug.cgi?id=134173

Reviewed by Daniel Bates.

After Zalan's talks with Kling, it seems that the simple line layout code
might alleviate the need for the space savings in InlineTextBox. Given this,
it would be beneficial to be a little more safe by using unsigneds throughout.

For example, we have code like "void setLen(unsigned len) { m_len = len; }"
which might silently break if given particular inputs.

No new tests because there is no behavior change.

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::isSelected):
(WebCore::InlineTextBox::localSelectionRect):
(WebCore::InlineTextBox::paint):
(WebCore::InlineTextBox::selectionStartEnd):
(WebCore::InlineTextBox::paintSelection):
(WebCore::InlineTextBox::paintCompositionBackground):
(WebCore::InlineTextBox::paintDocumentMarker):
(WebCore::InlineTextBox::paintTextMatchMarker):
(WebCore::InlineTextBox::computeRectForReplacementMarker):

  • rendering/InlineTextBox.h:

(WebCore::InlineTextBox::truncation):

  • rendering/RenderTextLineBoxes.cpp:

(WebCore::ellipsisRectForBox):

5:56 PM Changeset in webkit [170412] by Samuel White
  • 5 edits in trunk/LayoutTests

AX: Remove tight platform expectation coupling form roles-exposed layout test.
https://bugs.webkit.org/show_bug.cgi?id=134123

Reviewed by Chris Fleizach.

Don't enforce platform specific differences in the test itself. This is what the various expectation files are for.

  • accessibility/roles-exposed-expected.txt:
  • accessibility/roles-exposed.html:
  • platform/mac-mountainlion/accessibility/roles-exposed-expected.txt:
  • platform/mac/accessibility/roles-exposed-expected.txt:
5:53 PM Changeset in webkit [170411] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Speculative 32-bit Mac build fix after r170402.

  • platform/graphics/mac/ComplexTextController.cpp:

(WebCore::advanceByCombiningCharacterSequence):

5:36 PM Changeset in webkit [170410] by Brent Fulgham
  • 3 edits in trunk/Websites/webkit.org

[Win] Remove some out-of-date stuff from our instructions.
https://bugs.webkit.org/show_bug.cgi?id=134282

Reviewed by Tim Horton.

  • building/build.html: Remove reference to "Platform SDK" which we don't manuall

install anymore (it's part of Visual Studio 2013).

  • building/tools.html: We no longer need QuickTime SDK, QuickTime Player, or

the DirectX SDK.

5:18 PM Changeset in webkit [170409] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebKit2

[iOS][WK2] We should not start potential tap activation unless the tap gesture recognizer succeed
https://bugs.webkit.org/show_bug.cgi?id=134277
<rdar://problem/17439973>

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-24
Reviewed by Anders Carlsson.

  • UIProcess/ios/WKSyntheticClickTapGestureRecognizer.m:

(-[WKSyntheticClickTapGestureRecognizer setState:]):
We were calling the _gestureRecognizedAction even for failure states. The potential activation work
is not light on the Web Process, we should not start if we don't care about the result.

5:15 PM Changeset in webkit [170408] by benjamin@webkit.org
  • 4 edits in trunk/Source/WebKit2

[iOS][WK2] Adopt the C API of UIWebTouchEventsGestureRecognizer for touch event mapping
https://bugs.webkit.org/show_bug.cgi?id=134234

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-24
Reviewed by Tim Horton.

The C API is more efficient and expose properties we will need for other patches. This patch moves from
getting each value independently on UIWebTouchEventsGestureRecognizer to the single structure exposed
by _UIWebTouchEvent.

  • Shared/NativeWebTouchEvent.h:
  • Shared/ios/NativeWebTouchEventIOS.mm:

(WebKit::convertTouchPhase):
(WebKit::extractWebTouchPoint):
(WebKit::NativeWebTouchEvent::NativeWebTouchEvent):

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView _webTouchEventsRecognized:]):

5:13 PM Changeset in webkit [170407] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebKit/mac

WK1 WebFrameNetworkingContext cleanup: do not instanciate an empty NSString to create an empty WTF::String
https://bugs.webkit.org/show_bug.cgi?id=134222

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-24
Reviewed by Andreas Kling.

  • WebCoreSupport/WebFrameNetworkingContext.mm:

(WebFrameNetworkingContext::sourceApplicationIdentifier):

4:50 PM Changeset in webkit [170406] by commit-queue@webkit.org
  • 27 edits in trunk/Source

[iOS]: WK2 Inspector Node Highlighting
https://bugs.webkit.org/show_bug.cgi?id=134257

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-06-24
Reviewed by Timothy Hatcher.

Source/WebCore:
Some clients want to get highlights with the scroll applied,
others do not. Provide a CoordinateSpace param to be used for
getting a highlight (only used on iOS).

  • WebCore.exp.in:
  • inspector/InspectorController.cpp:

(WebCore::InspectorController::getHighlight):

  • inspector/InspectorController.h:
  • inspector/InspectorOverlay.cpp:

(WebCore::InspectorOverlay::getHighlight):
(WebCore::buildObjectForRendererFragments):

  • inspector/InspectorOverlay.h:

(WebCore::Highlight::Highlight):

  • testing/Internals.cpp:

(WebCore::Internals::inspectorHighlightRects):

Source/WebKit/mac:

  • WebInspector/WebNodeHighlightView.mm:

(-[WebNodeHighlightView layoutSublayers:]):

Source/WebKit2:

  • Scripts/webkit2/messages.py:

(struct_or_class):
(headers_for_type):

  • Shared/WebCoreArgumentCoders.h:
  • Shared/WebCoreArgumentCoders.cpp:

(IPC::ArgumentCoder<Highlight>::encode):
(IPC::ArgumentCoder<Highlight>::decode):
Add a way to encode a WebCore::Highlight struct.

  • UIProcess/API/Cocoa/WKWebViewInternal.h:
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _showInspectorHighlight:WebCore::]):
(-[WKWebView _hideInspectorHighlight]):

  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::showInspectorHighlight):
(WebKit::PageClientImpl::hideInspectorHighlight):

  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::showInspectorHighlight):
(WebKit::WebPageProxy::hideInspectorHighlight):

  • WebProcess/WebCoreSupport/WebInspectorClient.cpp:

(WebKit::WebInspectorClient::highlight):
(WebKit::WebInspectorClient::hideHighlight):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::showInspectorHighlight):
(WebKit::WebPage::hideInspectorHighlight):
Send web process highlight / hideHighlight messages up to
the UIProcess so it can highlight in the WKContentView.
Pass up a WebCore::Highlight in Document coordinates.

  • UIProcess/ios/WKContentView.h:
  • UIProcess/ios/WKContentView.mm:

(-[WKInspectorHighlightView initWithFrame:]):
(-[WKInspectorHighlightView dealloc]):
(-[WKInspectorHighlightView _removeAllLayers]):
(-[WKInspectorHighlightView _createLayers:]):
(findIntersectionOnLineBetweenPoints):
(quadIntersection):
(layerPathWithHole):
(layerPath):
(-[WKInspectorHighlightView _layoutForNodeHighlight:]):
(-[WKInspectorHighlightView _layoutForRectsHighlight:]):
(-[WKInspectorHighlightView update:]):
Reuse the WebKit1 code to turn highlight float quads into CAShapeLayers.

(-[WKContentView _showInspectorHighlight:WebCore::]):
(-[WKContentView _hideInspectorHighlight]):
Show and hide the highlight view with the respective WebCore::Highlight.

4:39 PM Changeset in webkit [170405] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

[MSE][Mac] Uncaught exception when deallocating AVSampleBufferDisplayLayer
https://bugs.webkit.org/show_bug.cgi?id=134281

Reviewed by Brent Fulgham.

AVSampleBufferDisplayLayer is throwing an exception from its -dealloc method because KVO observers exist
at the time of dealloc. Remove the observer for outputObscuredDueToInsufficientExternalProtection inside
-stopObservingLayer.

  • platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:

(-[WebAVSampleBufferErrorListener stopObservingLayer:]):

4:33 PM Changeset in webkit [170404] by mrowe@apple.com
  • 3 edits
    4 adds in trunk

WKContextHistoryClient::didNavigateWithNavigationData is passed incorrect URL when history.pushState is used
<https://webkit.org/b/134271> / <rdar://problem/16270167>

Reviewed by Brady Eidson.

Source/WebCore:
Tests: http/tests/globalhistory/history-delegate-pushstate.html

http/tests/globalhistory/history-delegate-replacestate.html

  • page/History.cpp:

(WebCore::History::stateObjectAdded): Call HistoryController after updating the document's URL so that the
URL will reflect the destination of the navigation when FrameLoaderClient::updateGlobalHistory is called.

LayoutTests:

  • http/tests/globalhistory/history-delegate-pushstate-expected.txt: Added.
  • http/tests/globalhistory/history-delegate-pushstate.html: Added.
  • http/tests/globalhistory/history-delegate-replacestate-expected.txt: Added.
  • http/tests/globalhistory/history-delegate-replacestate.html: Added.
4:33 PM Changeset in webkit [170403] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Simplify decodeLegacySessionState
https://bugs.webkit.org/show_bug.cgi?id=134280

Reviewed by Andreas Kling.

There's no need to use a LegacySessionStateDecoder object with a single member,
just make all functions static and only export a single entry point; decodeLegacySessionState.

No functionality change, just moving code around.

  • UIProcess/API/C/WKSessionStateRef.cpp:

(WKSessionStateCreateFromData):

  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::decodeSessionHistoryEntryData):
(WebKit::decodeSessionHistoryEntry):
(WebKit::decodeSessionHistoryEntries):
(WebKit::decodeV0SessionHistory):
(WebKit::decodeV1SessionHistory):
(WebKit::decodeSessionHistory):
(WebKit::decodeLegacySessionState):
(WebKit::LegacySessionStateDecoder::LegacySessionStateDecoder): Deleted.
(WebKit::LegacySessionStateDecoder::~LegacySessionStateDecoder): Deleted.
(WebKit::LegacySessionStateDecoder::decodeSessionState): Deleted.
(WebKit::LegacySessionStateDecoder::decodeSessionHistory): Deleted.
(WebKit::LegacySessionStateDecoder::decodeV0SessionHistory): Deleted.
(WebKit::LegacySessionStateDecoder::decodeV1SessionHistory): Deleted.
(WebKit::LegacySessionStateDecoder::decodeSessionHistoryEntries): Deleted.
(WebKit::LegacySessionStateDecoder::decodeSessionHistoryEntry): Deleted.
(WebKit::LegacySessionStateDecoder::decodeSessionHistoryEntryData): Deleted.

  • UIProcess/mac/LegacySessionStateCoding.h:
4:32 PM Changeset in webkit [170402] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

advanceByCombiningCharacterSequence() can be simplified
https://bugs.webkit.org/show_bug.cgi?id=133591

Reviewed by Dean Jackson.

Use U16_NEXT() because it already does what we're trying to do.

No new tests because there is no behavior change.

  • platform/graphics/mac/ComplexTextController.cpp:

(WebCore::advanceByCombiningCharacterSequence):

4:18 PM Changeset in webkit [170401] by bshafiei@apple.com
  • 2 edits in tags/Safari-538.42.1/Source/WebKit2

Merged r170385. <rdar://problem/17427740>

4:17 PM Changeset in webkit [170400] by beidson@apple.com
  • 24 edits in trunk/Source

Enable GAMEPAD in the Mac build, but disabled at runtime.
https://bugs.webkit.org/show_bug.cgi?id=134255

Reviewed by Dean Jackson.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:
  • runtime/JSObject.h: Export JSObject::removeDirect() to allow disabling functions at runtime.

Source/WebCore:
No new tests (No changes to a tested config).

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation): Add the ability to have a function be EnabledAtRuntime by

removing such functions from the prototype if they are disabled.

Change the three new objects and the one new function to be EnabledAtRuntime

  • Modules/gamepad/Gamepad.idl:
  • Modules/gamepad/GamepadButton.idl:
  • Modules/gamepad/GamepadEvent.idl:
  • Modules/gamepad/NavigatorGamepad.idl:

Add a RuntimeEnabledFeature for Gamepads:

  • bindings/generic/RuntimeEnabledFeatures.cpp:

(WebCore::RuntimeEnabledFeatures::RuntimeEnabledFeatures):

  • bindings/generic/RuntimeEnabledFeatures.h:

(WebCore::RuntimeEnabledFeatures::setGamepadsEnabled):
(WebCore::RuntimeEnabledFeatures::gamepadsEnabled):

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:
  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.mm:

(-[WebPreferences gamepadsEnabled]):
(-[WebPreferences setGamepadsEnabled:]):

  • WebView/WebPreferencesPrivate.h:
  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
  • Shared/WebPreferencesDefinitions.h:
  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetGamepadsEnabled):
(WKPreferencesGetGamepadsEnabled):

  • UIProcess/API/C/WKPreferencesRefPrivate.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

4:16 PM Changeset in webkit [170399] by mark.lam@apple.com
  • 10 edits
    2 moves
    1 delete in branches/ftlopt/Source

[ftlopt] Renamed DebuggerActivation to DebuggerScope.
<https://webkit.org/b/134273>

Reviewed by Michael Saboff.

Source/JavaScriptCore:

  • CMakeLists.txt:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • debugger/DebuggerActivation.cpp: Removed.
  • debugger/DebuggerActivation.h: Removed.
  • debugger/DebuggerScope.cpp: Copied from ../../trunk/Source/JavaScriptCore/debugger/DebuggerActivation.cpp.

(JSC::DebuggerScope::DebuggerScope):
(JSC::DebuggerScope::finishCreation):
(JSC::DebuggerScope::visitChildren):
(JSC::DebuggerScope::className):
(JSC::DebuggerScope::getOwnPropertySlot):
(JSC::DebuggerScope::put):
(JSC::DebuggerScope::deleteProperty):
(JSC::DebuggerScope::getOwnPropertyNames):
(JSC::DebuggerScope::defineOwnProperty):
(JSC::DebuggerActivation::DebuggerActivation): Deleted.
(JSC::DebuggerActivation::finishCreation): Deleted.
(JSC::DebuggerActivation::visitChildren): Deleted.
(JSC::DebuggerActivation::className): Deleted.
(JSC::DebuggerActivation::getOwnPropertySlot): Deleted.
(JSC::DebuggerActivation::put): Deleted.
(JSC::DebuggerActivation::deleteProperty): Deleted.
(JSC::DebuggerActivation::getOwnPropertyNames): Deleted.
(JSC::DebuggerActivation::defineOwnProperty): Deleted.

  • debugger/DebuggerScope.h: Copied from ../../trunk/Source/JavaScriptCore/debugger/DebuggerActivation.h.

(JSC::DebuggerScope::create):
(JSC::DebuggerActivation::create): Deleted.

  • runtime/VM.cpp:

(JSC::VM::VM):

  • runtime/VM.h:

Source/WebCore:
No new tests.

  • ForwardingHeaders/debugger/DebuggerActivation.h: Removed.
  • Removed because this is not used.

Source/WebKit/mac:

  • WebView/WebScriptDebugDelegate.mm:
  • Removed unneeded #include.
3:56 PM Changeset in webkit [170398] by Yusuke Suzuki
  • 3 edits
    2 adds in trunk

CSS JIT: Add positionInRootFragments to SelectorFragment
https://bugs.webkit.org/show_bug.cgi?id=133609

Reviewed by Benjamin Poulain.

Some non-backtrack-related predicates use relationToRightFragment information
to decide whether checkingContext->elementStyle should be refered.
To make it works correctly, add the positionInRootFragments field to SelectorFragment.
When positionInRootFragments == Rightmost and relationToRightFragment == Rightmost,
we should see checkingContext->elementStyle.

Source/WebCore:
Test: fast/selectors/first-child-update-with-renderer.html

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::shouldUseRenderStyleFromCheckingContext):
(WebCore::SelectorCompiler::addPseudoClassType):
(WebCore::SelectorCompiler::SelectorCodeGenerator::SelectorCodeGenerator):
(WebCore::SelectorCompiler::constructFragments):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsActive):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsFirstChild):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsHovered):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsLastChild):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsOnlyChild):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsNthChild):

LayoutTests:

  • fast/selectors/first-child-update-with-renderer-expected.txt: Added.
  • fast/selectors/first-child-update-with-renderer.html: Added.
3:38 PM Changeset in webkit [170397] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

[Fullscreen][Mac] WKView is not firstResponder after entering fullscreen mode
https://bugs.webkit.org/show_bug.cgi?id=134270

Reviewed by Jon Honeycutt.

The WebCoreFullScreenWindow's firstResponder is reset when the full screen animation completes and
the window's style is changed to a fullscreen style. Save the firstResponder, and if it's still in
the window's view hierarchy after the style changes, reset it to the firstResponder.

  • platform/mac/WebCoreFullScreenWindow.mm:

(-[WebCoreFullScreenWindow setStyleMask:]):

3:33 PM Changeset in webkit [170396] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

[MSE][Mac] Pass AVSampleBufferDisplayLayer HDCP status through to EME
https://bugs.webkit.org/show_bug.cgi?id=134221

Reviewed by Eric Carlson.

Pass the outputObscuredDueToInsufficientExternalProtection property of AVSampleBufferDisplayLayer
as an error to the associated MediaKeySession object.

  • platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:

(-[WebAVSampleBufferErrorListener invalidate]):
(-[WebAVSampleBufferErrorListener beginObservingLayer:]):
(-[WebAVSampleBufferErrorListener observeValueForKeyPath:ofObject:change:context:]):

3:32 PM Changeset in webkit [170395] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Add support for v0 legacy decoding
https://bugs.webkit.org/show_bug.cgi?id=134275

Reviewed by Andreas Kling.

  • Shared/SessionState.h:
  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::LegacySessionStateDecoder::decodeV0SessionHistory):
(WebKit::LegacySessionStateDecoder::decodeV1SessionHistory):

3:24 PM Changeset in webkit [170394] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

Add SPI for clearing an entire back-forward list
https://bugs.webkit.org/show_bug.cgi?id=134274

Reviewed by Dan Bernstein.

Add -[WKBackForwardList _clear] which only clears the back-forward items, and
change -[WKBackForwardList _removeAllItems] to remove all items including the current one.

  • UIProcess/API/Cocoa/WKBackForwardList.mm:

(-[WKBackForwardList _removeAllItems]):
(-[WKBackForwardList _clear]):

  • UIProcess/API/Cocoa/WKBackForwardListPrivate.h:
  • UIProcess/WebBackForwardList.cpp:

(WebKit::WebBackForwardList::removeAllItems):

  • UIProcess/WebBackForwardList.h:
3:02 PM Changeset in webkit [170393] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

Add iOS specific frame state member variables
https://bugs.webkit.org/show_bug.cgi?id=134268

Reviewed by Andreas Kling.

  • Shared/SessionState.cpp:

(WebKit::FrameState::encode):
(WebKit::FrameState::decode):

  • Shared/SessionState.h:
  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::HistoryEntryDataDecoder::operator>>):
(WebKit::decodeBackForwardTreeNode):

  • WebProcess/WebCoreSupport/SessionStateConversion.cpp:

(WebKit::toFrameState):
(WebKit::applyFrameState):

2:18 PM Changeset in webkit [170392] by bshafiei@apple.com
  • 5 edits in tags/Safari-538.42.1/Source

Versioning.

2:16 PM Changeset in webkit [170391] by bshafiei@apple.com
  • 1 copy in tags/Safari-538.42.1

New tag.

2:04 PM Changeset in webkit [170390] by mmaxfield@apple.com
  • 36 edits in trunk/Source/WebCore

Use unsigneds instead of ints for indexes into a string in text layout code
https://bugs.webkit.org/show_bug.cgi?id=133592

Reviewed by Zalan Bujtas.

Migrate much of the text-handling code to use unsigneds for indexes into a string.

No new tests because there is no behavior change.

  • WebCore.exp.in:
  • platform/graphics/Font.cpp:

(WebCore::Font::drawText):
(WebCore::Font::drawEmphasisMarks):
(WebCore::Font::adjustSelectionRectForText):
(WebCore::computeUnderlineType):

  • platform/graphics/Font.h:
  • platform/graphics/FontFastPath.cpp:

(WebCore::Font::getGlyphsAndAdvancesForSimpleText):
(WebCore::Font::drawSimpleText):
(WebCore::Font::drawEmphasisMarksForSimpleText):
(WebCore::Font::drawGlyphBuffer):
(WebCore::Font::drawEmphasisMarks):
(WebCore::Font::adjustSelectionRectForSimpleText):

  • platform/graphics/GlyphBuffer.h:

(WebCore::GlyphBuffer::size):
(WebCore::GlyphBuffer::glyphs):
(WebCore::GlyphBuffer::advances):
(WebCore::GlyphBuffer::fontDataAt):
(WebCore::GlyphBuffer::advanceAt):
(WebCore::GlyphBuffer::offsetAt):
(WebCore::GlyphBuffer::reverse):
(WebCore::GlyphBuffer::offsetInString):
(WebCore::GlyphBuffer::swap):

  • platform/graphics/GraphicsContext.cpp:

(WebCore::TextRunIterator::atEnd):

  • platform/graphics/Latin1TextIterator.h:

(WebCore::Latin1TextIterator::Latin1TextIterator):
(WebCore::Latin1TextIterator::currentCharacter):

  • platform/graphics/SimpleFontData.h:
  • platform/graphics/SurrogatePairAwareTextIterator.cpp:

(WebCore::SurrogatePairAwareTextIterator::SurrogatePairAwareTextIterator):

  • platform/graphics/SurrogatePairAwareTextIterator.h:

(WebCore::SurrogatePairAwareTextIterator::currentCharacter):

  • platform/graphics/TextRun.h:

(WebCore::TextRun::length):
(WebCore::TextRun::charactersLength):

  • platform/graphics/WidthIterator.cpp:

(WebCore::WidthIterator::glyphDataForCharacter):
(WebCore::applyFontTransforms):
(WebCore::WidthIterator::advanceInternal):
(WebCore::WidthIterator::advance):
(WebCore::WidthIterator::advanceOneCharacter):

  • platform/graphics/WidthIterator.h:
  • platform/graphics/cairo/FontCairo.cpp:

(WebCore::Font::drawGlyphs):

  • platform/graphics/cairo/FontCairoHarfbuzzNG.cpp:

(WebCore::Font::drawComplexText):
(WebCore::Font::drawEmphasisMarksForComplexText):
(WebCore::Font::adjustSelectionRectForComplexText):

  • platform/graphics/harfbuzz/HarfBuzzShaper.cpp:

(WebCore::HarfBuzzShaper::setNormalizedBuffer):

  • platform/graphics/mac/FontComplexTextMac.cpp:

(WebCore::Font::adjustSelectionRectForComplexText):
(WebCore::Font::getGlyphsAndAdvancesForComplexText):
(WebCore::Font::drawComplexText):
(WebCore::Font::drawEmphasisMarksForComplexText):

  • platform/graphics/mac/FontMac.mm:

(WebCore::Font::drawGlyphs):

  • platform/graphics/win/FontCGWin.cpp:

(WebCore::Font::drawGlyphs):

  • platform/graphics/win/FontWin.cpp:

(WebCore::Font::adjustSelectionRectForComplexText):
(WebCore::Font::getGlyphsAndAdvancesForComplexText):
(WebCore::Font::drawComplexText):
(WebCore::Font::drawEmphasisMarksForComplexText):

  • platform/graphics/wince/FontWinCE.cpp:

(WebCore::Font::drawGlyphs):
(WebCore::Font::drawComplexText):
(WebCore::Font::drawEmphasisMarksForComplexText):
(WebCore::Font::selectionRectForComplexText):

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::isSelected):
(WebCore::InlineTextBox::selectionState):
(WebCore::adjustCharactersAndLengthForHyphen):
(WebCore::InlineTextBox::localSelectionRect):
(WebCore::InlineTextBox::paint):
(WebCore::InlineTextBox::selectionStartEnd):
(WebCore::InlineTextBox::paintSelection):
(WebCore::InlineTextBox::paintCompositionBackground):
(WebCore::InlineTextBox::paintDocumentMarker):
(WebCore::InlineTextBox::paintTextMatchMarker):
(WebCore::InlineTextBox::computeRectForReplacementMarker):
(WebCore::InlineTextBox::paintCompositionUnderline):
(WebCore::InlineTextBox::positionForOffset):
(WebCore::InlineTextBox::constructTextRun):

  • rendering/InlineTextBox.h:
  • rendering/RenderCombineText.cpp:

(WebCore::RenderCombineText::getStringToRender):

  • rendering/RenderCombineText.h:
  • rendering/svg/SVGInlineFlowBox.cpp:

(WebCore::SVGInlineFlowBox::computeTextMatchMarkerRectForRenderer):

  • rendering/svg/SVGInlineTextBox.cpp:

(WebCore::SVGInlineTextBox::positionForOffset):
(WebCore::SVGInlineTextBox::localSelectionRect):
(WebCore::SVGInlineTextBox::paintSelectionBackground):
(WebCore::SVGInlineTextBox::mapStartEndPositionsIntoFragmentCoordinates):
(WebCore::SVGInlineTextBox::paintText):

  • rendering/svg/SVGInlineTextBox.h:
  • rendering/svg/SVGTextMetricsBuilder.cpp:

(WebCore::SVGTextMetricsBuilder::currentCharacterStartsSurrogatePair):
(WebCore::SVGTextMetricsBuilder::advance):

  • rendering/svg/SVGTextQuery.cpp:

(WebCore::SVGTextQuery::mapStartEndPositionsIntoFragmentCoordinates):
(WebCore::SVGTextQuery::modifyStartEndPositionsRespectingLigatures):
(WebCore::SVGTextQuery::subStringLengthCallback):
(WebCore::SVGTextQuery::startPositionOfCharacterCallback):
(WebCore::SVGTextQuery::endPositionOfCharacterCallback):
(WebCore::SVGTextQuery::rotationOfCharacterCallback):
(WebCore::SVGTextQuery::extentOfCharacterCallback):
(WebCore::SVGTextQuery::characterNumberAtPositionCallback):

  • rendering/svg/SVGTextQuery.h:
  • rendering/svg/SVGTextRunRenderingContext.cpp:

(WebCore::SVGGlyphToPathTranslator::SVGGlyphToPathTranslator):
(WebCore::SVGTextRunRenderingContext::glyphDataForCharacter):

  • rendering/svg/SVGTextRunRenderingContext.h:
  • svg/SVGFontData.cpp:

(WebCore::SVGFontData::applySVGGlyphSelection):

  • svg/SVGFontData.h:
1:59 PM Changeset in webkit [170389] by jonowells@apple.com
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: TypeError when hovering over "Show All Nodes" button in the Dom Tree inspector
https://bugs.webkit.org/show_bug.cgi?id=133699

Reviewed by Geoffrey Garen.

The call to element._createTooltipForNode() was failing because element was sometimes not a
DOMTreeOutline but rather only a TreeElement (in the case of the "Show All Nodes" button specifically).
A check for type fixes this issue.

  • UserInterface/Views/DOMTreeOutline.js:

(WebInspector.DOMTreeOutline.prototype._onmousemove): Check for presence of _createTooltipForNode.

1:56 PM WebKitGTK/2.4.x edited by Jarek Czekalski
added changeset links for recent entries (diff)
1:45 PM Changeset in webkit [170388] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

iOS WebKit2: block selection tends to prefer block to single words even when the page is zoomed.
https://bugs.webkit.org/show_bug.cgi?id=134267
<rdar://problem/17138059>

Reviewed by Benjamin Poulain.

When trying to find the best selection match for the position where the tap occurs,
we need to take into account the page scale. This patch applies the scale factor
to the selection rect before comparing it with the desired size.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::rangeForWebSelectionAtPosition):

1:40 PM Changeset in webkit [170387] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Add code to convert HistoryItem to PageState
https://bugs.webkit.org/show_bug.cgi?id=134263

Reviewed by Andreas Kling.

  • WebProcess/WebCoreSupport/SessionStateConversion.cpp:

(WebKit::toHTTPBody):
(WebKit::toFrameState):
(WebKit::toPageState):

  • WebProcess/WebCoreSupport/SessionStateConversion.h:
1:29 PM Changeset in webkit [170386] by mhahnenberg@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

REGRESSION (r169703): Invalid cast in JSC::asGetterSetter / JSC::JSObject::defineOwnNonIndexProperty
https://bugs.webkit.org/show_bug.cgi?id=134046

Reviewed by Filip Pizlo.

  • runtime/GetterSetter.h:

(JSC::asGetterSetter):

  • runtime/JSObject.cpp:

(JSC::JSObject::defineOwnNonIndexProperty): We need to check for a CustomGetterSetter here as well as
a normal GetterSetter. If we encounter a CustomGetterSetter, we delete it, create a new normal GetterSetter,
and insert it like normal. We also need to check for CustomAccessors when checking for unconfigurable properties.

1:18 PM Changeset in webkit [170385] by akling@apple.com
  • 2 edits in trunk/Source/WebKit2

[iOS WebKit2] Disable screen font substitution by default.
<https://webkit.org/b/134266>
<rdar://problem/17427740>

Just like OS X >= 10.9, screen font substitution should be disabled
by default in WebKit2 for iOS.

Reviewed by Anders Carlsson.

  • Shared/WebPreferencesDefinitions.h:
12:59 PM Changeset in webkit [170384] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix.

  • platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:

(WebCore::InbandTextTrackPrivateAVF::processNativeSamples): Cast variadic argument to int.

12:52 PM Changeset in webkit [170383] by fpizlo@apple.com
  • 2 edits in branches/ftlopt/Source/JavaScriptCore

[ftlopt] PutByIdFlush can also be converted to a PutByOffset so don't assert otherwise
https://bugs.webkit.org/show_bug.cgi?id=134265

Reviewed by Geoffrey Garen.

More assertion fallout from the PutById folding work.

  • dfg/DFGNode.h:

(JSC::DFG::Node::convertToPutByOffset):

12:51 PM Changeset in webkit [170382] by fpizlo@apple.com
  • 12 edits
    2 adds in branches/ftlopt/Source/JavaScriptCore

[ftlopt] GC should notify us if it resets to_this
https://bugs.webkit.org/show_bug.cgi?id=128231

Reviewed by Geoffrey Garen.

  • CMakeLists.txt:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bytecode/BytecodeList.json:
  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::finalizeUnconditionally):

  • bytecode/Instruction.h:
  • bytecode/ToThisStatus.cpp: Added.

(JSC::merge):
(WTF::printInternal):

  • bytecode/ToThisStatus.h: Added.
  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • runtime/CommonSlowPaths.cpp:

(JSC::SLOW_PATH_DECL):

12:49 PM Changeset in webkit [170381] by Brent Fulgham
  • 31 edits in trunk/Source

[Win] MSVC mishandles enums in bitfields
https://bugs.webkit.org/show_bug.cgi?id=134237

Reviewed by Michael Saboff.

Replace uses of enum types in bit fields with unsigned to
avoid losing a bit to hold the sign value. This can result
in Windows interpreting the value of the field improperly.

../JavaScriptCore:

  • bytecode/StructureStubInfo.h:
  • parser/Nodes.h:

../WebCore:

  • loader/ResourceLoaderOptions.h:
  • platform/network/ResourceRequestBase.h:
  • platform/network/cf/ResourceResponse.h:
  • rendering/RenderLayer.h:
  • rendering/RenderMarquee.h:
12:38 PM WebKitGTK/2.4.x edited by Jarek Czekalski
Added 2 AX ATK bugs: 132349, 130941, with necessary 132527. (diff)
12:38 PM Changeset in webkit [170380] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

Try to fix build.

  • WebCore.exp.in: Remove duplicate export, this should be in the iOS section only.
12:35 PM Changeset in webkit [170379] by eric.carlson@apple.com
  • 28 edits
    2 adds in trunk/Source/WebCore

[Mac] process raw VTT in-band captions
https://bugs.webkit.org/show_bug.cgi?id=134178

Reviewed by Jer Noble.

  • CMakeLists.txt: Add ISOVTTCue.cpp|h.
  • WebCore.vcxproj/WebCore.vcxproj: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • html/track/BufferedLineReader.h:

(WebCore::BufferedLineReader::reset): New, empty the input buffer.

Make it possible to process WebVTT captions.

  • html/track/InbandGenericTextTrack.cpp:

(WebCore::InbandGenericTextTrack::parser): Allocate, if necessary, and return a WebVTT parser.
(WebCore::InbandGenericTextTrack::parseWebVTTCueData): Pass a cue to the parser.
(WebCore::InbandGenericTextTrack::parseWebVTTFileHeader): Pass a VTT file header to the parser.
(WebCore::InbandGenericTextTrack::newCuesParsed): Parser callback.
(WebCore::InbandGenericTextTrack::newRegionsParsed): Ditto.
(WebCore::InbandGenericTextTrack::fileFailedToParse): Ditto.

  • html/track/InbandGenericTextTrack.h:
  • html/track/InbandTextTrack.h:
  • html/track/InbandWebVTTTextTrack.cpp:

(WebCore::InbandWebVTTTextTrack::parser): New, parser accessor.
(WebCore::InbandWebVTTTextTrack::parseWebVTTCueData): New, parse VTT data in an ISOWebVTTCue

object.

(WebCore::InbandWebVTTTextTrack::newCuesParsed): Cleanup.
(WebCore::InbandWebVTTTextTrack::newRegionsParsed): Implement.
(WebCore::InbandWebVTTTextTrack::fileFailedToParse): Change the error message.

  • html/track/InbandWebVTTTextTrack.h:
  • html/track/TextTrackCueGeneric.cpp:

(WebCore::TextTrackCueGenericBoxElement::TextTrackCueGenericBoxElement): Change cue parameter

from a pointer to a reference.

(WebCore::TextTrackCueGeneric::createDisplayTree): Ditto.

  • html/track/VTTCue.cpp:

(WebCore::VTTCueBox::create): Change cue parameter from a pointer to a reference.
(WebCore::VTTCueBox::VTTCueBox): Ditto.
(WebCore::VTTCueBox::getCue): Return a reference.
(WebCore::VTTCueBox::applyCSSProperties): m_cue is a reference, not a pointer.
(WebCore::VTTCue::create): New, create a VTTCue from WebVTTCueData.
(WebCore::VTTCue::VTTCue): New, internal constructor that takes a WebVTTCueData.
(WebCore::VTTCue::initialize): New, shared constructor initialization.
(WebCore::VTTCue::createDisplayTree): m_cue is a reference, not a pointer.
(WebCore::VTTCue::markFutureAndPastNodes): Ditto.
(WebCore::VTTCue::setCueSettings): Ditto.

  • html/track/VTTCue.h:

(WebCore::VTTCueBox::create): Deleted.
(WebCore::VTTCue::create): Deleted.

  • html/track/WebVTTParser.cpp:

(WebCore::WebVTTParser::parseFileHeader): New. Reset the line reader buffer and parser state,

call the parser.

(WebCore::WebVTTParser::parseCueData): Create a cue from ISOWebVTTCue.
(WebCore::WebVTTParser::collectTimingsAndSettings): Return immediately if the string is empty.
(WebCore::WebVTTParser::collectTimeStamp): Ditto.

  • html/track/WebVTTParser.h:

(WebCore::WebVTTCueData::originalStartTime): New.
(WebCore::WebVTTCueData::setOriginalStartTime): New.
(WebCore::WebVTTCueData::WebVTTCueData):

  • loader/TextTrackLoader.cpp:

(WebCore::TextTrackLoader::getNewCues): Cleanup, use the new VTTCue::create.

Parse ISO WebVTT cue boxes.

  • platform/graphics/ISOVTTCue.cpp: Added.

(WebCore::ISOBox::ISOBox):
(WebCore::ISOBox::peekType):
(WebCore::ISOBox::peekLength):
(WebCore::ISOBox::peekString):
(WebCore::vttCueBoxType):
(WebCore::vttIdBoxType):
(WebCore::vttSettingsBoxType):
(WebCore::vttPayloadBoxType):
(WebCore::vttCurrentTimeBoxType):
(WebCore::vttCueSourceIDBoxType):
(WebCore::ISOWebVTTCue::boxType):
(WebCore::ISOWebVTTCue::ISOWebVTTCue):

  • platform/graphics/ISOVTTCue.h: Added.

(WebCore::ISOBox::boxHeaderSize):
(WebCore::ISOBox::length):
(WebCore::ISOBox::type):
(WebCore::ISOWebVTTCue::presentationTime):
(WebCore::ISOWebVTTCue::duration):
(WebCore::ISOWebVTTCue::sourceID):
(WebCore::ISOWebVTTCue::id):
(WebCore::ISOWebVTTCue::originalStartTime):
(WebCore::ISOWebVTTCue::settings):
(WebCore::ISOWebVTTCue::cueText):

  • platform/graphics/InbandTextTrackPrivateClient.h:

(WebCore::InbandTextTrackPrivateClient::parseWebVTTFileHeader): New.

  • platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:

(WebCore::InbandTextTrackPrivateAVF::InbandTextTrackPrivateAVF): Add a cue format parameter.
(WebCore::InbandTextTrackPrivateAVF::processCue): Call processNativeSamples.
(WebCore::InbandTextTrackPrivateAVF::processAttributedStrings): Add logging. Minor cleanup.
(WebCore::InbandTextTrackPrivateAVF::processNativeSamples): New, process an array of

CMSampleBuffers, create ISOWebVTTCue from the sample data.

  • platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h:
  • platform/graphics/avfoundation/cf/InbandTextTrackPrivateAVCF.cpp:

(WebCore::InbandTextTrackPrivateAVCF::InbandTextTrackPrivateAVCF):

  • platform/graphics/avfoundation/cf/InbandTextTrackPrivateAVCF.h:

(WebCore::InbandTextTrackPrivateAVCF::create):

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

(WebCore::MediaPlayerPrivateAVFoundationCF::processMediaSelectionOptions):
(WebCore::LegibleOutputData::LegibleOutputData):
(WebCore::AVFWrapper::processCue):
(WebCore::AVFWrapper::legibleOutputCallback):

  • platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.h:

(WebCore::InbandTextTrackPrivateAVFObjC::create): Add a cue format parameter.

  • platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.mm:

(WebCore::InbandTextTrackPrivateAVFObjC::InbandTextTrackPrivateAVFObjC): Ditto.

  • platform/graphics/avfoundation/InbandTextTrackPrivateLegacyAVFObjC.cpp:

(WebCore::InbandTextTrackPrivateLegacyAVFObjC::InbandTextTrackPrivateLegacyAVFObjC): Pass cue

format to base class.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL): Improve logging.
(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerItem): Don't leak an NSDictionary.
(WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Don't process media selection

options until we have tracks.

(WebCore::MediaPlayerPrivateAVFoundationObjC::processMediaSelectionOptions):
(WebCore::MediaPlayerPrivateAVFoundationObjC::processCue): Pass native samples as well as

attributed strings to track.

(-[WebCoreAVFMovieObserver legibleOutput:didOutputAttributedStrings:nativeSampleBuffers:forItemTime:]):

  • platform/graphics/avfoundation/objc/OutOfBandTextTrackPrivateAVF.h:

(WebCore::OutOfBandTextTrackPrivateAVF::OutOfBandTextTrackPrivateAVF):

  • platform/graphics/avfoundation/objc/OutOfBandTextTrackPrivateAVF.h:

(WebCore::OutOfBandTextTrackPrivateAVF::OutOfBandTextTrackPrivateAVF):

12:18 PM Changeset in webkit [170378] by andersca@apple.com
  • 6 edits
    2 adds in trunk/Source

Add PageState to HistoryItem conversion code
https://bugs.webkit.org/show_bug.cgi?id=134259

Reviewed by Andreas Kling.

Source/WebKit2:

  • Shared/SessionState.h:
  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::decodeBackForwardTreeNode):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebCoreSupport/SessionStateConversion.cpp: Added.

(WebKit::toFormData):
(WebKit::applyFrameState):
(WebKit::toHistoryItem):

  • WebProcess/WebCoreSupport/SessionStateConversion.h: Added.

Source/WTF:

  • wtf/Optional.h:

(WTF::Optional::valueOr):

12:09 PM Changeset in webkit [170377] by Antti Koivisto
  • 4 edits in trunk/Source

Only flush layers when the exposed rect actually changes
https://bugs.webkit.org/show_bug.cgi?id=134248

Reviewed by Anders Carlsson.

Source/WebCore:

  • WebCore.exp.in:

Source/WebKit2:

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::setExposedContentRect):

12:06 PM Changeset in webkit [170376] by fpizlo@apple.com
  • 2 edits in branches/ftlopt/Source/JavaScriptCore

[ftlopt] StructureAbstractValue::onlyStructure() should return nullptr if isClobbered()
https://bugs.webkit.org/show_bug.cgi?id=134256

Reviewed by Michael Saboff.

This isn't testable right now (i.e. it's benign) but we should get it right anyway. The
point is to be able to precisely model what goes on in the snippets of code between a
side-effect and an InvalidationPoint.

This patch also cleans up onlyStructure() by delegating more work to
StructureSet::onlyStructure().

  • dfg/DFGStructureAbstractValue.h:

(JSC::DFG::StructureAbstractValue::onlyStructure):

12:04 PM Changeset in webkit [170375] by fpizlo@apple.com
  • 2 edits in branches/ftlopt/Source/JavaScriptCore

[ftlopt][REGRESSION] PutById AI is introducing watchable structures without watching them
https://bugs.webkit.org/show_bug.cgi?id=134260

Reviewed by Geoffrey Garen.

This was causing loads of assertion failures in debug builds.

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

11:23 AM Changeset in webkit [170374] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

Remove references to "Shader.h" which doesn't currently exist in the project.

Rubberstamped by Andreas Kling.

  • WebCore.xcodeproj/project.pbxproj:
10:44 AM Changeset in webkit [170373] by mhock@apple.com
  • 6 edits in trunk/Source

[iOS] DOMWindow::outerWidth and outerHeight don't return useful values, so return 0.
Also, revert r169281.
https://bugs.webkit.org/show_bug.cgi?id=134233
<rdar://problem/17060183>

Reviewed by Benjamin Poulain.

Source/WebCore:

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::outerHeight):
(WebCore::DOMWindow::outerWidth):

Source/WebKit2:

  • UIProcess/Cocoa/UIDelegate.h:
  • UIProcess/Cocoa/UIDelegate.mm:

(WebKit::UIDelegate::UIClient::windowFrame): Deleted.

  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::convertToUserSpace):

10:29 AM Changeset in webkit [170372] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Fixed the iOS build after r170358.

  • WebView/WebView.mm:

(kit):

10:24 AM Changeset in webkit [170371] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Initialize WKWebViewConfiguration properties to their default values.
https://bugs.webkit.org/show_bug.cgi?id=134216

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-06-24
Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKWebViewConfiguration.mm:

(-[WKWebViewConfiguration init]):
add -init method to initialize _mediaPlaybackRequiresUserAction and _mediaPlaybackAllowsAirPlay.

10:20 AM Changeset in webkit [170370] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

Don't set AudioSession active while interrupted.
https://bugs.webkit.org/show_bug.cgi?id=134239

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

To activate the AudioSession there must be a session with audio or video
and being playing or paused.

  • platform/audio/MediaSessionManager.cpp:

(WebCore::MediaSessionManager::hasActive): added
(WebCore::MediaSessionManager::beginInterruption): updateSessionState
(WebCore::MediaSessionManager::sessionWillBeginPlayback): updateSessionState

  • platform/audio/MediaSessionManager.h: declare hasActive()
  • platform/audio/mac/MediaSessionManagerMac.cpp:

(MediaSessionManager::updateSessionState): use hasActive()

10:18 AM Changeset in webkit [170369] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Add missing semicolon.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _updateVisibleContentRects]):

10:17 AM Changeset in webkit [170368] by andersca@apple.com
  • 9 edits in trunk/Source/WebKit/mac

Remove unused history visit code from WebHistoryItem
https://bugs.webkit.org/show_bug.cgi?id=134201

Reviewed by Sam Weinig.

  • History/HistoryPropertyList.h:
  • History/HistoryPropertyList.mm:

(HistoryPropertyListWriter::HistoryPropertyListWriter):
(HistoryPropertyListWriter::writeHistoryItem):

  • History/WebHistory.mm:

(-[WebHistoryPrivate visitedURL:withTitle:]):
(-[WebHistoryPrivate addItem:discardDuplicate:]):
(-[WebHistory _visitedURL:withTitle:method:wasFailure:]):
(-[WebHistoryPrivate visitedURL:withTitle:increaseVisitCount:]): Deleted.
(-[WebHistory _visitedURL:withTitle:method:wasFailure:increaseVisitCount:]): Deleted.

  • History/WebHistoryInternal.h:
  • History/WebHistoryItem.mm:

(-[WebHistoryItem copyWithZone:]):
(-[WebHistoryItem initFromDictionaryRepresentation:]):
(-[WebHistoryItem _visitedWithTitle:]):
(-[WebHistoryItem setVisitCount:]): Deleted.
(-[WebHistoryItem _mergeAutoCompleteHints:]): Deleted.
(-[WebHistoryItem _visitedWithTitle:increaseVisitCount:]): Deleted.
(-[WebHistoryItem _recordInitialVisit]): Deleted.
(timeToDay): Deleted.
(-[WebHistoryItem _padDailyCountsForNewVisit:]): Deleted.
(-[WebHistoryItem _collapseDailyVisitsToWeekly]): Deleted.
(-[WebHistoryItem _recordVisitAtTime:increaseVisitCount:]): Deleted.
(-[WebHistoryItem _setLastVisitedTimeInterval:]): Deleted.

  • History/WebHistoryItemInternal.h:
  • History/WebHistoryItemPrivate.h:
  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::updateGlobalHistory):

10:05 AM Changeset in webkit [170367] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

REGRESSION(r170336): Crash in HTMLMediaElement::seekTimerFired()
https://bugs.webkit.org/show_bug.cgi?id=134253

Rubber-stamped by Eric Carlson.

Now that seekWithTolerance() has been split up into an asyncronous section, the null-checks in seekWithTolerance()
need to be re-performed in seekTimerFired(), in case the m_player has been cleared between when the seek was initiated
and when the asynchronous section is performed.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::seekTimerFired):

9:47 AM Changeset in webkit [170366] by mahesh.kulkarni@nokia.com
  • 1 edit in trunk/Tools/Scripts/webkitpy/common/config/contributors.json

Unreviewed, update my list of email addresses.

9:18 AM Changeset in webkit [170365] by Brent Fulgham
  • 7 edits
    5 copies in trunk/Tools

[Win] Clean up and refactor WinLauncher
https://bugs.webkit.org/show_bug.cgi?id=134209

Reviewed by Tim Thorton.

Relanding r170339 and r170340 with correct WinLauncher.h file.

  • WinLauncher/Common.cpp: Copied from WinLauncher/WinLauncher.cpp.

(PrintView):
(ToggleMenuItem):
(WndProc):
(BackButtonProc):
(ForwardButtonProc):
(loadURL):
(shouldUseFullDesktop): Deleted.
(SimpleEventListener::SimpleEventListener): Deleted.
(SimpleEventListener::handleEvent): Deleted.
(WinLauncherWebHost::updateAddressBar): Deleted.
(WinLauncherWebHost::didFailProvisionalLoadWithError): Deleted.
(WinLauncherWebHost::QueryInterface): Deleted.
(WinLauncherWebHost::AddRef): Deleted.
(WinLauncherWebHost::Release): Deleted.
(updateMenuItemForHistoryItem): Deleted.
(showLastVisitedSites): Deleted.
(WinLauncherWebHost::didFinishLoadForFrame): Deleted.
(resizeSubViews): Deleted.
(setToDefaultPreferences): Deleted.
(wWinMain): Deleted.
(MyRegisterClass): Deleted.
(LaunchInspector): Deleted.
(NavigateForwardOrBackward): Deleted.
(NavigateToHistory): Deleted.

  • WinLauncher/DOMDefaultImpl.cpp: Copied from WinLauncher/DOMDefaultImpl.h.

(DOMEventListener::Release):
(WebScriptObject::WebScriptObject): Deleted.
(WebScriptObject::~WebScriptObject): Deleted.
(WebScriptObject::throwException): Deleted.
(WebScriptObject::callWebScriptMethod): Deleted.
(WebScriptObject::evaluateWebScript): Deleted.
(WebScriptObject::removeWebScriptKey): Deleted.
(WebScriptObject::stringRepresentation): Deleted.
(WebScriptObject::webScriptValueAtIndex): Deleted.
(WebScriptObject::setWebScriptValueAtIndex): Deleted.
(WebScriptObject::setException): Deleted.
(DOMEventListener::throwException): Deleted.
(DOMEventListener::callWebScriptMethod): Deleted.
(DOMEventListener::evaluateWebScript): Deleted.
(DOMEventListener::removeWebScriptKey): Deleted.
(DOMEventListener::stringRepresentation): Deleted.
(DOMEventListener::webScriptValueAtIndex): Deleted.
(DOMEventListener::setWebScriptValueAtIndex): Deleted.
(DOMEventListener::setException): Deleted.
(DOMEventListener::handleEvent): Deleted.

  • WinLauncher/DOMDefaultImpl.h:

(WebScriptObject::QueryInterface): Deleted.
(WebScriptObject::AddRef): Deleted.
(WebScriptObject::Release): Deleted.
(DOMObject::QueryInterface): Deleted.
(DOMEventListener::QueryInterface): Deleted.
(DOMEventListener::AddRef): Deleted.
(DOMEventListener::Release): Deleted.

  • WinLauncher/WinLauncher.cpp:

(WinLauncher::WinLauncher):
(WinLauncher::init):
(WinLauncher::prepareViews):
(WinLauncher::setFrameLoadDelegate):
(WinLauncher::setUIDelegate):
(WinLauncher::setAccessibilityDelegate):
(WinLauncher::mainFrame):
(WinLauncher::seedInitialDefaultPreferences):
(WinLauncher::setToDefaultPreferences):
(updateMenuItemForHistoryItem):
(WinLauncher::showLastVisitedSites):
(WinLauncher::launchInspector):
(WinLauncher::navigateForwardOrBackward):
(WinLauncher::navigateToHistory):
(WinLauncher::goBack):
(WinLauncher::goForward):
(WinLauncher::loadURL):
(shouldUseFullDesktop): Deleted.
(SimpleEventListener::SimpleEventListener): Deleted.
(SimpleEventListener::handleEvent): Deleted.
(WinLauncherWebHost::updateAddressBar): Deleted.
(WinLauncherWebHost::didFailProvisionalLoadWithError): Deleted.
(WinLauncherWebHost::QueryInterface): Deleted.
(WinLauncherWebHost::AddRef): Deleted.
(WinLauncherWebHost::Release): Deleted.
(showLastVisitedSites): Deleted.
(WinLauncherWebHost::didFinishLoadForFrame): Deleted.
(resizeSubViews): Deleted.
(subclassForLayeredWindow): Deleted.
(computeFullDesktopFrame): Deleted.
(DllMain): Deleted.
(getAppDataFolder): Deleted.
(setToDefaultPreferences): Deleted.
(setCacheFolder): Deleted.
(createCrashReport): Deleted.
(wWinMain): Deleted.
(MyRegisterClass): Deleted.
(AbortProc): Deleted.
(getPrinterDC): Deleted.
(initDocStruct): Deleted.
(PrintView): Deleted.
(ToggleMenuItem): Deleted.
(LaunchInspector): Deleted.
(NavigateForwardOrBackward): Deleted.
(NavigateToHistory): Deleted.
(WndProc): Deleted.
(EditProc): Deleted.
(BackButtonProc): Deleted.
(ForwardButtonProc): Deleted.
(About): Deleted.
(loadURL): Deleted.
(dllLauncherEntryPoint): Deleted.

  • WinLauncher/WinLauncher.h:

(WinLauncher::standardPreferences):
(WinLauncher::privatePreferences):
(WinLauncher::hasWebView):
(WinLauncher::usesLayeredWebView):
(WinLauncherWebHost::WinLauncherWebHost): Deleted.
(WinLauncherWebHost::didStartProvisionalLoadForFrame): Deleted.
(WinLauncherWebHost::didReceiveServerRedirectForProvisionalLoadForFrame): Deleted.
(WinLauncherWebHost::didCommitLoadForFrame): Deleted.
(WinLauncherWebHost::didReceiveTitle): Deleted.
(WinLauncherWebHost::didChangeIcons): Deleted.
(WinLauncherWebHost::didReceiveIcon): Deleted.
(WinLauncherWebHost::didFailLoadWithError): Deleted.
(WinLauncherWebHost::didChangeLocationWithinPageForFrame): Deleted.
(WinLauncherWebHost::willPerformClientRedirectToURL): Deleted.
(WinLauncherWebHost::didCancelClientRedirectForFrame): Deleted.
(WinLauncherWebHost::willCloseFrame): Deleted.
(WinLauncherWebHost::windowScriptObjectAvailable): Deleted.
(WinLauncherWebHost::didClearWindowObject): Deleted.

  • WinLauncher/WinLauncher.vcxproj/WinLauncherLib.vcxproj:
  • WinLauncher/WinLauncher.vcxproj/WinLauncherLib.vcxproj.filters:
  • WinLauncher/WinLauncherReplace.h:

(processCrashReport):

  • WinLauncher/WinLauncherWebHost.cpp: Copied from WinLauncher/WinLauncher.cpp.

(WinLauncherWebHost::updateAddressBar):
(WinLauncherWebHost::QueryInterface):
(WinLauncherWebHost::AddRef):
(WinLauncherWebHost::Release):
(WinLauncherWebHost::didFinishLoadForFrame):
(shouldUseFullDesktop): Deleted.
(updateMenuItemForHistoryItem): Deleted.
(showLastVisitedSites): Deleted.
(resizeSubViews): Deleted.
(subclassForLayeredWindow): Deleted.
(computeFullDesktopFrame): Deleted.
(DllMain): Deleted.
(getAppDataFolder): Deleted.
(setToDefaultPreferences): Deleted.
(setCacheFolder): Deleted.
(createCrashReport): Deleted.
(wWinMain): Deleted.
(MyRegisterClass): Deleted.
(AbortProc): Deleted.
(getPrinterDC): Deleted.
(initDocStruct): Deleted.
(PrintView): Deleted.
(ToggleMenuItem): Deleted.
(LaunchInspector): Deleted.
(NavigateForwardOrBackward): Deleted.
(NavigateToHistory): Deleted.
(WndProc): Deleted.
(EditProc): Deleted.
(BackButtonProc): Deleted.
(ForwardButtonProc): Deleted.
(About): Deleted.
(loadURL): Deleted.
(dllLauncherEntryPoint): Deleted.

  • WinLauncher/WinLauncherWebHost.h: Copied from WinLauncher/WinLauncher.h.

(WinLauncherWebHost::WinLauncherWebHost):
(WinLauncherWebHost::didStartProvisionalLoadForFrame):
(WinLauncherWebHost::didReceiveServerRedirectForProvisionalLoadForFrame):
(WinLauncherWebHost::didCommitLoadForFrame):
(WinLauncherWebHost::didReceiveTitle):
(WinLauncherWebHost::didChangeIcons):
(WinLauncherWebHost::didReceiveIcon):
(WinLauncherWebHost::didFailLoadWithError):
(WinLauncherWebHost::didChangeLocationWithinPageForFrame):
(WinLauncherWebHost::willPerformClientRedirectToURL):
(WinLauncherWebHost::didCancelClientRedirectForFrame):
(WinLauncherWebHost::willCloseFrame):
(WinLauncherWebHost::windowScriptObjectAvailable):
(WinLauncherWebHost::didClearWindowObject):

  • WinLauncher/WinMain.cpp: Copied from WinLauncher/WinLauncher.cpp.

(wWinMain):
(MyRegisterClass):
(shouldUseFullDesktop): Deleted.
(SimpleEventListener::SimpleEventListener): Deleted.
(SimpleEventListener::handleEvent): Deleted.
(WinLauncherWebHost::updateAddressBar): Deleted.
(WinLauncherWebHost::didFailProvisionalLoadWithError): Deleted.
(WinLauncherWebHost::QueryInterface): Deleted.
(WinLauncherWebHost::AddRef): Deleted.
(WinLauncherWebHost::Release): Deleted.
(updateMenuItemForHistoryItem): Deleted.
(showLastVisitedSites): Deleted.
(WinLauncherWebHost::didFinishLoadForFrame): Deleted.
(resizeSubViews): Deleted.
(subclassForLayeredWindow): Deleted.
(computeFullDesktopFrame): Deleted.
(DllMain): Deleted.
(getAppDataFolder): Deleted.
(setToDefaultPreferences): Deleted.
(setCacheFolder): Deleted.
(createCrashReport): Deleted.
(AbortProc): Deleted.
(getPrinterDC): Deleted.
(initDocStruct): Deleted.
(PrintView): Deleted.
(ToggleMenuItem): Deleted.
(LaunchInspector): Deleted.
(NavigateForwardOrBackward): Deleted.
(NavigateToHistory): Deleted.
(WndProc): Deleted.
(EditProc): Deleted.
(BackButtonProc): Deleted.
(ForwardButtonProc): Deleted.
(About): Deleted.
(loadURL): Deleted.
(dllLauncherEntryPoint): Deleted.

9:18 AM Changeset in webkit [170364] by commit-queue@webkit.org
  • 6 edits in trunk/Source

Fix unused parameter warnings if inspector is disabled
https://bugs.webkit.org/show_bug.cgi?id=134244

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-06-24
Reviewed by Zalan Bujtas.

Source/WebCore:
No new tests, no behavior change.

  • inspector/InspectorConsoleInstrumentation.h:

(WebCore::InspectorInstrumentation::startProfiling):
(WebCore::InspectorInstrumentation::stopProfiling):

  • inspector/InspectorInstrumentation.h:

(WebCore::InspectorInstrumentation::didFinishXHRLoading):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::shouldContinueAfterNotifyingLoadedFromMemoryCache):

Source/WebKit2:

  • WebProcess/InjectedBundle/API/c/WKBundleInspector.cpp:

(WKBundleInspectorShow):
(WKBundleInspectorClose):
(WKBundleInspectorEvaluateScriptForTest):
(WKBundleInspectorSetPageProfilingEnabled):

9:14 AM Changeset in webkit [170363] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

[MSE] Add null-check in sourceBufferPrivateAppendComplete().
https://bugs.webkit.org/show_bug.cgi?id=133230

Reviewed by Eric Carlson.

  • Modules/mediasource/SourceBuffer.cpp:

(WebCore::SourceBuffer::sourceBufferPrivateAppendComplete): Bail early if the

SourceBuffer has been removed from the MediaSource.

9:05 AM Changeset in webkit [170362] by mmaxfield@apple.com
  • 2 edits in trunk/Tools

[iOS] getsectdata() is deprecated and we use it in DRT
https://bugs.webkit.org/show_bug.cgi?id=134122

Reviewed by Alexey Proskuryakov.

Migrate to using magic linker symbols.

No tests because there should be no behavior change

  • DumpRenderTree/mac/DumpRenderTree.mm:

(activateFontsIOS):

7:38 AM Changeset in webkit [170361] by andersca@apple.com
  • 6 edits in trunk/Source/WebKit2

WKWebView doesn't respect -[UIScrollView contentInset]
https://bugs.webkit.org/show_bug.cgi?id=134230
<rdar://problem/17429107>

Reviewed by Tim Horton.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _setHasCustomContentView:loadedMIMEType:WTF::]):
Call initWithFrame and pass the WKWebView along.

(-[WKWebView _adjustedContentOffset:]):
New helper method that takes a content offset as a CGPoint and offsets it by the computed content inset.

(-[WKWebView _computedContentInset]):
New helper method that returns the _obscuredInsets, or if it's zero, the scroll view's content inset.

(-[WKWebView _processDidExit]):
Use _computedContentInset.

(-[WKWebView _didCommitLayerTree:WebKit::]):
use _computedContentInset.

(-[WKWebView _dynamicViewportUpdateChangedTargetToScale:position:]):
Use _computedContentInset.

(-[WKWebView _scrollToContentOffset:WebCore::]):
Use _computedContentInset.

(-[WKWebView _updateVisibleContentRects]):
If we have a custom content view, call web_computedContentInsetDidChange.

(-[WKWebView _setObscuredInsets:]):
Don't call web_setObscuredInsets: if we have a custom content view.

  • UIProcess/API/Cocoa/WKWebViewInternal.h:

Add new methods.

  • UIProcess/Cocoa/WKWebViewContentProvider.h:

Add new methods.

  • UIProcess/ios/WKPDFView.mm:

(-[WKPDFView web_initWithFrame:webView:]):
Set the _webView and _scrollView ivars.

(-[WKPDFView _offsetForPageNumberIndicator]):
Get the computed content offset from the WKWebView.

(-[WKPDFView web_computedContentInsetDidChange]):
Update the page indicator.

(-[WKPDFView initWithFrame:]): Deleted.
(-[WKPDFView web_setObscuredInsets:]): Deleted.

  • UIProcess/ios/WKScrollView.mm:

(-[WKScrollView setContentInset:]):
Call _updateVisibleContentRects.

7:24 AM Changeset in webkit [170360] by commit-queue@webkit.org
  • 36 edits in trunk/Source/WebCore

Unreviewed, rolling out r170337.
https://bugs.webkit.org/show_bug.cgi?id=134250

caused 3 layout tests to crash on debug. (Requested by zalan
on #webkit).

Reverted changeset:

"Use unsigneds instead of ints for indexes into a string in
text layout code"
https://bugs.webkit.org/show_bug.cgi?id=133592
http://trac.webkit.org/changeset/170337

4:09 AM Changeset in webkit [170359] by commit-queue@webkit.org
  • 5 edits in trunk

Source/WebCore: [ATK] Don't ignore links rendered as blocks.
https://bugs.webkit.org/show_bug.cgi?id=130941

Patch by Jarek Czekalski <Jarek Czekalski> on 2014-06-24
Reviewed by Mario Sanchez Prada.

  • /m/usr/src/webkit-trunk/Source/WebCore/accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(WebCore::AccessibilityObject::objectFocusedAndCaretOffsetUnignored): Don't ignore links
when they are renderered with display:block.

LayoutTests: [ATK] Extended the test for accessibility of text inside "span" block in "a" block
with the tests for caret movements in these cases.
https://bugs.webkit.org/show_bug.cgi?id=130941

Patch by Jarek Czekalski <Jarek Czekalski> on 2014-06-24
Reviewed by Mario Sanchez Prada.

  • platform/gtk/accessibility/text-in-span-block-in-a-block-expected.txt:
  • platform/gtk/accessibility/text-in-span-block-in-a-block.html:

Added testing for text-caret-moved signal. Added one more "a" element to the set.

4:02 AM Changeset in webkit [170358] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/mac

REGRESSION(r170235): Remove incorrect ifdef guard
https://bugs.webkit.org/show_bug.cgi?id=134246

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-06-24
Reviewed by Csaba Osztrogonác.

  • WebView/WebView.mm:

(-[WebView _visibilityState]):

3:09 AM Changeset in webkit [170357] by jfernandez@igalia.com
  • 2 edits in trunk/Tools

Name moving. Unreviewed.

  • Scripts/webkitpy/common/config/contributors.json:
2:22 AM Changeset in webkit [170356] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Tools

Remove EFL WK1 watch category
https://bugs.webkit.org/show_bug.cgi?id=134231

Reviewed by Csaba Osztrogonác.

  • Scripts/webkitpy/common/config/watchlist: Removed EFL WK1 category.
2:15 AM Changeset in webkit [170355] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebCore

Unreviewed. Update GObject DOM bindings test results after r170351.

  • bindings/scripts/test/GObject/WebKitDOMTestTypedefs.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestTypedefs.h:
2:02 AM Changeset in webkit [170354] by Michał Pakuła vel Rutka
  • 3 edits in trunk/LayoutTests

[EFL] Merge efl-wk2 and efl test expectations files
https://bugs.webkit.org/show_bug.cgi?id=134245

Unreviewed gardening after removing WebKit1.

  • platform/efl-wk2/TestExpectations: An empty file left, as deleting it may break flakiness dashboard.
  • platform/efl/TestExpectations: Merged with platform/efl-wk2/TestExpectations.
1:36 AM Changeset in webkit [170353] by llango.u-szeged@partner.samsung.com
  • 2 edits in trunk/Source/WTF

[JavaScriptCore] Enable concurrent JIT on EFL.
https://bugs.webkit.org/show_bug.cgi?id=134242

Reviewed by Csaba Osztrogonác.

  • wtf/Platform.h:
1:09 AM Changeset in webkit [170352] by k.czech@samsung.com
  • 1 edit
    1 delete in trunk/Tools

[ATK] Remove some unused code from DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=134191

Reviewed by Chris Fleizach.

DumpRenderTree's accessibility code could be removed since GTK and EFL has stopped supporting WK1.

  • DumpRenderTree/atk/AccessibilityCallbacks.h: Removed.
  • DumpRenderTree/atk/AccessibilityCallbacksAtk.cpp: Removed.
  • DumpRenderTree/atk/AccessibilityControllerAtk.cpp: Removed.
  • DumpRenderTree/atk/AccessibilityNotificationHandlerAtk.cpp: Removed.
  • DumpRenderTree/atk/AccessibilityNotificationHandlerAtk.h: Removed.
  • DumpRenderTree/atk/AccessibilityUIElementAtk.cpp: Removed.
12:14 AM Changeset in webkit [170351] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebCore

Unreviewed. Fix GTK+ build after r170309.

Skip functions returning arrays in GObject DOM bindings.

  • bindings/scripts/CodeGeneratorGObject.pm:

(SkipFunction):

Jun 23, 2014:

11:55 PM Changeset in webkit [170350] by rniwa@webkit.org
  • 2 edits in trunk/Websites/webkit.org

Drop the cross organizational support requirement from reviewer nomination policy
https://bugs.webkit.org/show_bug.cgi?id=134240

Reviewed by Gyuyoung Kim.

Removed.

  • coding/commit-review-policy.html:
11:34 PM Changeset in webkit [170349] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL][WK2] Search field is not shown properly on doing ctrl+f on Minibrowser.
https://bugs.webkit.org/show_bug.cgi?id=134025

Patch by Shivakumar JM <shiva.jm@samsung.com> on 2014-06-23
Reviewed by Gyuyoung Kim.

Use EVAS_HINT_FILL in evas_object_size_hint_align_set() api.

  • MiniBrowser/efl/main.c:

(window_create):

11:15 PM Changeset in webkit [170348] by ljaehun.lim@samsung.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed, fix build warning.

Source/WebKit2/WebProcess/WebPage/DrawingArea.h:117:18: warning: unused parameter ‘wantsDidUpdateViewState’ [-Wunused-parameter]

  • WebProcess/WebPage/DrawingArea.h:

(WebKit::DrawingArea::viewStateDidChange):

11:12 PM Changeset in webkit [170347] by ryuan.choi@samsung.com
  • 16 edits
    3 deletes in trunk

[EFL] Replace RefPtr<Evas_Object> with UniquePtrEfl
https://bugs.webkit.org/show_bug.cgi?id=134236

Reviewed by Gyuyoung Kim.

Source/WebCore:

  • platform/efl/RenderThemeEfl.cpp:

(WebCore::RenderThemeEfl::ThemePartCacheEntry::create):
(WebCore::RenderThemeEfl::loadTheme):
(WebCore::RenderThemeEfl::applyPartDescriptionsFrom):

  • platform/efl/RenderThemeEfl.h:
  • platform/graphics/efl/CairoUtilitiesEfl.cpp:

(WebCore::evasObjectFromCairoImageSurface):

  • platform/graphics/efl/CairoUtilitiesEfl.h:
  • platform/graphics/efl/ImageEfl.cpp:

(WebCore::BitmapImage::getEvasObject):

Source/WebKit2:

  • PlatformEfl.cmake:
  • UIProcess/API/efl/EwkView.cpp:

(EwkView::updateCursor):

  • UIProcess/API/efl/EwkView.h:
  • UIProcess/API/efl/SnapshotImageGL.cpp:
  • UIProcess/API/efl/ewk_favicon_database.cpp:

(ewk_favicon_database_icon_get):

  • UIProcess/API/efl/tests/test_ewk2_refptr_evas_object.cpp: Removed.

Source/WTF:
Although there are ref/unref for Evas_Object, it's bit odd so we should call evas_object_del to destroy it.
So, this patch replaced RefPtr<Evas_Object> with UniquePtrEfl for the simplicity.

  • wtf/PlatformEfl.cmake: Removed RefPtrEfl.cpp from source list.
  • wtf/efl/RefPtrEfl.cpp: Removed.
  • wtf/efl/RefPtrEfl.h: Removed.

Tools:

  • ImageDiff/efl/ImageDiff.cpp:

(calculateDifference):
(printImageDifferences):
(readImageFromStdin):
(main):

10:45 PM Changeset in webkit [170346] by dbates@webkit.org
  • 6 edits
    1 add
    5 deletes in trunk/Tools

Rolling out r170340 and r170339.

Changeset r170339 broke the Apple Windows Debug and Release builds.

Reverted changesets:

"[Win] Build fix after r134209"
http://trac.webkit.org/changeset/170340

"[Win] Clean up and refactor WinLauncher"
https://bugs.webkit.org/show_bug.cgi?id=134209
http://trac.webkit.org/changeset/170339

9:38 PM Changeset in webkit [170345] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Chapter forward/backward should seek to beginning/end.
https://bugs.webkit.org/show_bug.cgi?id=134225

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

  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

(-[WebAVPlayerController seekChapterBackward:]): forwards to -seekToBeginning
(-[WebAVPlayerController seekChapterForward:]): forwards to -seekToEnd

9:12 PM Changeset in webkit [170344] by dbates@webkit.org
  • 2 edits in trunk/Source/WebKit2

[iOS][WK2] REGRESSION (r169324): Page jumps to top when you type into a text field
https://bugs.webkit.org/show_bug.cgi?id=134219
<rdar://problem/17279113>

Reviewed by Benjamin Poulain.

Fixes an issue where typing into a text field may cause a noticeable jump to the top of
the page.

Currently when updating the visual content rectangles we always constrain the scroll offset
(s_x, s_y) such that 0 <= s_x <= "content width" - "visible width" and 0 <= s_y <= "content height" - "visible height".
However the UIProcess may want to scroll the page by an offset outside of this range to
create a visually pleasing result. In particular, on iOS we may scroll the page slightly
outside of this range (e.g. s_y > 0 = "content height" - "visible height") when a form
control is focused so as to be consistent with platform convention.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::updateVisibleContentRects): Temporarily disable content edge constraint when
updating scroll offset.

7:24 PM Changeset in webkit [170343] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

[Mac] Don't draw focus rings if we are animating controls
https://bugs.webkit.org/show_bug.cgi?id=134232
<rdar://problem/17381121>

Reviewed by Tim Horton.

Controls in native apps do not draw their focus rings as they
animate (in Yosemite). Turn this off for WebKit too. It turns
out that when we were drawing them, they were in the wrong
place anyway.

Since we don't animate controls when testing, we can't really test this.

  • platform/mac/ThemeMac.mm:

(WebCore::paintToggleButton): Only draw the focus ring if the
NSButtonCell is not animating.

7:18 PM Changeset in webkit [170342] by k.czech@samsung.com
  • 3 edits in trunk/Source/WebCore

[ATK] Remove some unnecessary code from WebKitAccessibleWrapperAtk
https://bugs.webkit.org/show_bug.cgi?id=134193

Reviewed by Gyuyoung Kim.

It was used along with DRT. Since we have stopped support WK1/DRT, it won't be needed.

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(webkitAccessibleGetFocusedElement): Deleted.

  • accessibility/atk/WebKitAccessibleWrapperAtk.h:
6:23 PM Changeset in webkit [170341] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/17413374> [iOS] Application cache size per origin is not limited
https://bugs.webkit.org/show_bug.cgi?id=134229

Reviewed by Anders Carlsson.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::createNewWebProcess): Set the default quota per origin to the same
value it is set in Legacy WebKit.

5:56 PM Changeset in webkit [170340] by Brent Fulgham
  • 2 edits in trunk/Tools

[Win] Build fix after r134209

  • WinLauncher/WinMain.cpp: Must include the resources file

before Common.cpp.

5:51 PM Changeset in webkit [170339] by Brent Fulgham
  • 6 edits
    1 copy
    1 move
    3 adds in trunk/Tools

[Win] Clean up and refactor WinLauncher
https://bugs.webkit.org/show_bug.cgi?id=134209

Reviewed by Tim Horton.

Make WinLauncher a class, and move all non-class driver functions
into "Common.cpp" and "WinMain.cpp". These files are distinct
to allow some internal tools to reuse the code in 'Common'.

  • WinLauncher/Common.cpp: Added. Consists of code moved from

'WinLauncher.cpp' that can be reused for other tools.
(subclassForLayeredWindow):
(computeFullDesktopFrame):
(DllMain):
(getAppDataFolder):
(setCacheFolder):
(createCrashReport):
(AbortProc):
(getPrinterDC):
(initDocStruct):
(PrintView):
(ToggleMenuItem):
(WndProc):
(EditProc):
(BackButtonProc):
(ForwardButtonProc):
(About):
(loadURL):
(dllLauncherEntryPoint):

  • WinLauncher/DOMDefaultImpl.cpp: Copied from WinLauncher/DOMDefaultImpl.h.

(DOMEventListener::Release):
(WebScriptObject::WebScriptObject): Deleted.
(WebScriptObject::~WebScriptObject): Deleted.
(WebScriptObject::throwException): Deleted.
(WebScriptObject::callWebScriptMethod): Deleted.
(WebScriptObject::evaluateWebScript): Deleted.
(WebScriptObject::removeWebScriptKey): Deleted.
(WebScriptObject::stringRepresentation): Deleted.
(WebScriptObject::webScriptValueAtIndex): Deleted.
(WebScriptObject::setWebScriptValueAtIndex): Deleted.
(WebScriptObject::setException): Deleted.
(DOMEventListener::throwException): Deleted.
(DOMEventListener::callWebScriptMethod): Deleted.
(DOMEventListener::evaluateWebScript): Deleted.
(DOMEventListener::removeWebScriptKey): Deleted.
(DOMEventListener::stringRepresentation): Deleted.
(DOMEventListener::webScriptValueAtIndex): Deleted.
(DOMEventListener::setWebScriptValueAtIndex): Deleted.
(DOMEventListener::setException): Deleted.
(DOMEventListener::handleEvent): Deleted.

  • WinLauncher/DOMDefaultImpl.h:

(WebScriptObject::QueryInterface): Deleted.
(WebScriptObject::AddRef): Deleted.
(WebScriptObject::Release): Deleted.
(DOMObject::QueryInterface): Deleted.
(DOMEventListener::QueryInterface): Deleted.
(DOMEventListener::AddRef): Deleted.
(DOMEventListener::Release): Deleted.

  • WinLauncher/WinLauncher.cpp: Converted stand-alone implementation

into a C++ class and removed WinAPI code.
(WinLauncher::WinLauncher):
(WinLauncher::init):
(WinLauncher::prepareViews):
(WinLauncher::setFrameLoadDelegate):
(WinLauncher::setUIDelegate):
(WinLauncher::setAccessibilityDelegate):
(WinLauncher::mainFrame):
(WinLauncher::seedInitialDefaultPreferences):
(WinLauncher::setToDefaultPreferences):
(updateMenuItemForHistoryItem):
(WinLauncher::showLastVisitedSites):
(WinLauncher::launchInspector):
(WinLauncher::navigateForwardOrBackward):
(WinLauncher::navigateToHistory):
(WinLauncher::goBack):
(WinLauncher::goForward):
(WinLauncher::loadURL):
(shouldUseFullDesktop): Deleted.
(SimpleEventListener::SimpleEventListener): Deleted.
(SimpleEventListener::handleEvent): Deleted.
(WinLauncherWebHost::updateAddressBar): Deleted.
(WinLauncherWebHost::didFailProvisionalLoadWithError): Deleted.
(WinLauncherWebHost::QueryInterface): Deleted.
(WinLauncherWebHost::AddRef): Deleted.
(WinLauncherWebHost::Release): Deleted.
(showLastVisitedSites): Deleted.
(WinLauncherWebHost::didFinishLoadForFrame): Deleted.
(resizeSubViews): Deleted.
(subclassForLayeredWindow): Deleted.
(computeFullDesktopFrame): Deleted.
(DllMain): Deleted.
(getAppDataFolder): Deleted.
(setToDefaultPreferences): Deleted.
(setCacheFolder): Deleted.
(createCrashReport): Deleted.
(wWinMain): Deleted.
(MyRegisterClass): Deleted.
(AbortProc): Deleted.
(getPrinterDC): Deleted.
(initDocStruct): Deleted.
(PrintView): Deleted.
(ToggleMenuItem): Deleted.
(LaunchInspector): Deleted.
(NavigateForwardOrBackward): Deleted.
(NavigateToHistory): Deleted.
(WndProc): Deleted.
(EditProc): Deleted.
(BackButtonProc): Deleted.
(ForwardButtonProc): Deleted.
(About): Deleted.
(loadURL): Deleted.
(dllLauncherEntryPoint): Deleted.

  • WinLauncher/WinLauncher.h: Removed.
  • WinLauncher/WinLauncher.vcxproj/WinLauncherLib.vcxproj:
  • WinLauncher/WinLauncher.vcxproj/WinLauncherLib.vcxproj.filters:
  • WinLauncher/WinLauncherReplace.h:

(processCrashReport):

  • WinLauncher/WinLauncherWebHost.cpp: Added.

(SimpleEventListener::SimpleEventListener):
(SimpleEventListener::handleEvent):
(WinLauncherWebHost::updateAddressBar):
(WinLauncherWebHost::didFailProvisionalLoadWithError):
(WinLauncherWebHost::QueryInterface):
(WinLauncherWebHost::AddRef):
(WinLauncherWebHost::Release):
(WinLauncherWebHost::didFinishLoadForFrame):

  • WinLauncher/WinLauncherWebHost.h: Copied from WinLauncher/WinLauncher.h.

Moved WinLauncherWebHost implementation from WinLauncher.cpp into
its own set of files.
(WinLauncherWebHost::WinLauncherWebHost):
(WinLauncherWebHost::didStartProvisionalLoadForFrame):
(WinLauncherWebHost::didReceiveServerRedirectForProvisionalLoadForFrame):
(WinLauncherWebHost::didCommitLoadForFrame):
(WinLauncherWebHost::didReceiveTitle):
(WinLauncherWebHost::didChangeIcons):
(WinLauncherWebHost::didReceiveIcon):
(WinLauncherWebHost::didFailLoadWithError):
(WinLauncherWebHost::didChangeLocationWithinPageForFrame):
(WinLauncherWebHost::willPerformClientRedirectToURL):
(WinLauncherWebHost::didCancelClientRedirectForFrame):
(WinLauncherWebHost::willCloseFrame):
(WinLauncherWebHost::windowScriptObjectAvailable):
(WinLauncherWebHost::didClearWindowObject):

  • WinLauncher/WinMain.cpp: Added. This consists of code from

WinLauncher that is unique to the WinLauncher utility, and is
not part of the WinLauncher class.
(wWinMain):
(MyRegisterClass):

5:49 PM Changeset in webkit [170338] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed, EFL build fix after r170330.

  • WebProcess/WebPage/WebPage.cpp: Guard WKStringCF.h with PLATFORM(COCOA) macro.
5:29 PM Changeset in webkit [170337] by mmaxfield@apple.com
  • 36 edits in trunk/Source/WebCore

Use unsigneds instead of ints for indexes into a string in text layout code
https://bugs.webkit.org/show_bug.cgi?id=133592

Reviewed by Zalan Bujtas.

Migrate much of the text-handling code to use unsigneds for indexes into a string.

No new tests because there is no behavior change.

  • WebCore.exp.in:
  • platform/graphics/Font.cpp:

(WebCore::Font::drawText):
(WebCore::Font::drawEmphasisMarks):
(WebCore::Font::adjustSelectionRectForText):
(WebCore::computeUnderlineType):

  • platform/graphics/Font.h:
  • platform/graphics/FontFastPath.cpp:

(WebCore::Font::getGlyphsAndAdvancesForSimpleText):
(WebCore::Font::drawSimpleText):
(WebCore::Font::drawEmphasisMarksForSimpleText):
(WebCore::Font::drawGlyphBuffer):
(WebCore::Font::drawEmphasisMarks):
(WebCore::Font::adjustSelectionRectForSimpleText):

  • platform/graphics/GlyphBuffer.h:

(WebCore::GlyphBuffer::size):
(WebCore::GlyphBuffer::glyphs):
(WebCore::GlyphBuffer::advances):
(WebCore::GlyphBuffer::fontDataAt):
(WebCore::GlyphBuffer::advanceAt):
(WebCore::GlyphBuffer::offsetAt):
(WebCore::GlyphBuffer::reverse):
(WebCore::GlyphBuffer::offsetInString):
(WebCore::GlyphBuffer::swap):

  • platform/graphics/GraphicsContext.cpp:

(WebCore::TextRunIterator::atEnd):

  • platform/graphics/Latin1TextIterator.h:

(WebCore::Latin1TextIterator::Latin1TextIterator):
(WebCore::Latin1TextIterator::currentCharacter):

  • platform/graphics/SimpleFontData.h:
  • platform/graphics/SurrogatePairAwareTextIterator.cpp:

(WebCore::SurrogatePairAwareTextIterator::SurrogatePairAwareTextIterator):

  • platform/graphics/SurrogatePairAwareTextIterator.h:

(WebCore::SurrogatePairAwareTextIterator::currentCharacter):

  • platform/graphics/TextRun.h:

(WebCore::TextRun::length):
(WebCore::TextRun::charactersLength):

  • platform/graphics/WidthIterator.cpp:

(WebCore::WidthIterator::glyphDataForCharacter):
(WebCore::applyFontTransforms):
(WebCore::WidthIterator::advanceInternal):
(WebCore::WidthIterator::advance):
(WebCore::WidthIterator::advanceOneCharacter):

  • platform/graphics/WidthIterator.h:
  • platform/graphics/cairo/FontCairo.cpp:

(WebCore::Font::drawGlyphs):

  • platform/graphics/cairo/FontCairoHarfbuzzNG.cpp:

(WebCore::Font::drawComplexText):
(WebCore::Font::drawEmphasisMarksForComplexText):
(WebCore::Font::adjustSelectionRectForComplexText):

  • platform/graphics/harfbuzz/HarfBuzzShaper.cpp:

(WebCore::HarfBuzzShaper::setNormalizedBuffer):

  • platform/graphics/mac/FontComplexTextMac.cpp:

(WebCore::Font::adjustSelectionRectForComplexText):
(WebCore::Font::getGlyphsAndAdvancesForComplexText):
(WebCore::Font::drawComplexText):
(WebCore::Font::drawEmphasisMarksForComplexText):

  • platform/graphics/mac/FontMac.mm:

(WebCore::Font::drawGlyphs):

  • platform/graphics/win/FontCGWin.cpp:

(WebCore::Font::drawGlyphs):

  • platform/graphics/win/FontWin.cpp:

(WebCore::Font::adjustSelectionRectForComplexText):
(WebCore::Font::getGlyphsAndAdvancesForComplexText):
(WebCore::Font::drawComplexText):
(WebCore::Font::drawEmphasisMarksForComplexText):

  • platform/graphics/wince/FontWinCE.cpp:

(WebCore::Font::drawGlyphs):
(WebCore::Font::drawComplexText):
(WebCore::Font::drawEmphasisMarksForComplexText):
(WebCore::Font::selectionRectForComplexText):

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::isSelected):
(WebCore::InlineTextBox::selectionState):
(WebCore::adjustCharactersAndLengthForHyphen):
(WebCore::InlineTextBox::localSelectionRect):
(WebCore::InlineTextBox::paint):
(WebCore::InlineTextBox::selectionStartEnd):
(WebCore::InlineTextBox::paintSelection):
(WebCore::InlineTextBox::paintCompositionBackground):
(WebCore::InlineTextBox::paintDocumentMarker):
(WebCore::InlineTextBox::paintTextMatchMarker):
(WebCore::InlineTextBox::computeRectForReplacementMarker):
(WebCore::InlineTextBox::paintCompositionUnderline):
(WebCore::InlineTextBox::positionForOffset):
(WebCore::InlineTextBox::constructTextRun):

  • rendering/InlineTextBox.h:
  • rendering/RenderCombineText.cpp:

(WebCore::RenderCombineText::getStringToRender):

  • rendering/RenderCombineText.h:
  • rendering/svg/SVGInlineFlowBox.cpp:

(WebCore::SVGInlineFlowBox::computeTextMatchMarkerRectForRenderer):

  • rendering/svg/SVGInlineTextBox.cpp:

(WebCore::SVGInlineTextBox::positionForOffset):
(WebCore::SVGInlineTextBox::localSelectionRect):
(WebCore::SVGInlineTextBox::paintSelectionBackground):
(WebCore::SVGInlineTextBox::mapStartEndPositionsIntoFragmentCoordinates):
(WebCore::SVGInlineTextBox::paintText):

  • rendering/svg/SVGInlineTextBox.h:
  • rendering/svg/SVGTextMetricsBuilder.cpp:

(WebCore::SVGTextMetricsBuilder::currentCharacterStartsSurrogatePair):
(WebCore::SVGTextMetricsBuilder::advance):

  • rendering/svg/SVGTextQuery.cpp:

(WebCore::SVGTextQuery::mapStartEndPositionsIntoFragmentCoordinates):
(WebCore::SVGTextQuery::modifyStartEndPositionsRespectingLigatures):
(WebCore::SVGTextQuery::subStringLengthCallback):
(WebCore::SVGTextQuery::startPositionOfCharacterCallback):
(WebCore::SVGTextQuery::endPositionOfCharacterCallback):
(WebCore::SVGTextQuery::rotationOfCharacterCallback):
(WebCore::SVGTextQuery::extentOfCharacterCallback):
(WebCore::SVGTextQuery::characterNumberAtPositionCallback):

  • rendering/svg/SVGTextQuery.h:
  • rendering/svg/SVGTextRunRenderingContext.cpp:

(WebCore::SVGGlyphToPathTranslator::SVGGlyphToPathTranslator):
(WebCore::SVGTextRunRenderingContext::glyphDataForCharacter):

  • rendering/svg/SVGTextRunRenderingContext.h:
  • svg/SVGFontData.cpp:

(WebCore::SVGFontData::applySVGGlyphSelection):

  • svg/SVGFontData.h:
5:08 PM Changeset in webkit [170336] by jer.noble@apple.com
  • 7 edits
    2 adds in trunk

HTMLMediaElement seek algorithm should allow cancelling previous seeks.
https://bugs.webkit.org/show_bug.cgi?id=134116

Reviewed by Eric Carlson.

Source/WebCore:
Test: media/video-seek-double.html

Fulfill the requirement of the §4.7.14.9 seeking algorithm to do steps 5+ asynchronously and cancel
previous instances of the algorithm.

For the html/ parts of the algorithm, implement this by adding a seek timer, which when fired will
issue steps 5-12. MediaPlayerPrivateAVFoundation will already coalesce multiple seek operations, so nothing
additional needs be done there. However, MediaPlayerPrivateMediaSourceAVFObjC needs to implement the same
pending seek logic in case additional seeks were issued after the html/ algorithm reached step 12.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement): Initialize the new m_seekTimer.
(WebCore::HTMLMediaElement::parseAttribute): Clear the seek timer.
(WebCore::HTMLMediaElement::seekInternal): Differentiate between DOM seeks and internal seeks.
(WebCore::HTMLMediaElement::seekWithTolerance:) Split into the seekTimerFired() method.
(WebCore::HTMLMediaElement::seekTimerFired:) Added, split from seekWithTolerance().

  • html/HTMLMediaElement.h:
  • html/MediaController.cpp:

(MediaController::bringElementUpToSpeed): Call seekInternal().
(WebCore::HTMLMediaElement::PendingSeek::PendingSeek): Added convenience struct for storing seek requests.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:

(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::PendingSeek::PendingSeek): Ditto.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:

(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC): Modify the time jumped

handler to not clear the m_seeking flag if another seek request is pending.

(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekWithTolerance):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekInternal):

LayoutTests:

  • media/video-seek-double-expected.txt: Added.
  • media/video-seek-double.html: Added.
5:03 PM Changeset in webkit [170335] by timothy_horton@apple.com
  • 9 edits in trunk/Source

[WK2] Use the page background color instead of white when swipe snapshots were purged (134218)
https://bugs.webkit.org/show_bug.cgi?id=134218
<rdar://problem/17426454>

Reviewed by Benjamin Poulain.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _updateScrollViewBackground]):
(-[WKWebView WebKit::]):

  • UIProcess/API/mac/WKView.mm:

(-[WKView _takeViewSnapshot]):

  • UIProcess/ios/ViewGestureControllerIOS.mm:

(WebKit::ViewGestureController::beginSwipeGesture):

  • UIProcess/mac/ViewGestureControllerMac.mm:

(WebKit::ViewGestureController::shouldUseSnapshotForSize):
(WebKit::ViewGestureController::beginSwipeGesture):
(WebKit::ViewGestureController::retrieveSnapshotForItem): Deleted.

  • UIProcess/mac/ViewSnapshotStore.h:

Store a color along with each snapshot.
Set the background color of the swipe snapshot layer accordingly.

  • WebCore.exp.in:
4:56 PM Changeset in webkit [170334] by andersca@apple.com
  • 3 edits
    1 add in trunk/Source/WebKit2

Add -[WKBackForwardList _removeAllItems]
https://bugs.webkit.org/show_bug.cgi?id=134227
<rdar://problem/17291623>

Reviewed by Tim Horton.

  • UIProcess/API/Cocoa/WKBackForwardList.mm:

(-[WKBackForwardList _removeAllItems]):

  • UIProcess/API/Cocoa/WKBackForwardListPrivate.h: Added.
  • WebKit2.xcodeproj/project.pbxproj:
4:45 PM Changeset in webkit [170333] by eric.carlson@apple.com
  • 2 edits
    2 deletes in trunk/Source/WebCore

[iOS] remove InbandTextTrackPrivateAVFIOS
https://bugs.webkit.org/show_bug.cgi?id=134220

Reviewed by Benjamin Poulain.

  • WebCore.xcodeproj/project.pbxproj: Remove references to InbandTextTrackPrivateAVFIOS.
  • platform/graphics/ios/InbandTextTrackPrivateAVFIOS.h: Removed.
  • platform/graphics/ios/InbandTextTrackPrivateAVFIOS.mm: Removed.
4:17 PM Changeset in webkit [170332] by commit-queue@webkit.org
  • 29 edits
    2 deletes in trunk/Source/WebCore

Unreviewed, rolling out r170323.
https://bugs.webkit.org/show_bug.cgi?id=134224

lots of build breakage (Requested by bradeeoh on #webkit).

Reverted changeset:

"[Mac] process raw VTT in-band captions"
https://bugs.webkit.org/show_bug.cgi?id=134178
http://trac.webkit.org/changeset/170323

4:16 PM Changeset in webkit [170331] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

<rdar://problem/17413498> [Cocoa] Expose WebPreferences::offlineWebApplicationCacheEnabled
https://bugs.webkit.org/show_bug.cgi?id=134217

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKPreferences.mm:

(-[WKPreferences _offlineApplicationCacheIsEnabled]):
(-[WKPreferences _setOfflineApplicationCacheIsEnabled:]):

  • UIProcess/API/Cocoa/WKPreferencesPrivate.h: Added _offlineWebApplicationCacheIsEnabled

property.

4:15 PM Changeset in webkit [170330] by commit-queue@webkit.org
  • 10 edits in trunk

Add SPI for Injected Bundle to provide user agent for a given URL.
https://bugs.webkit.org/show_bug.cgi?id=133562

Patch by Grant Kennell <gkennell@apple.com> on 2014-06-23
Reviewed by Sam Weinig.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h: Added delegate method to WebProcess PluIn protocol to provide UserAgent per URL.
  • WebProcess/InjectedBundle/API/c/WKBundlePageLoaderClient.h: Added new typedef for function pointer for this new delegate call. Added new version (V8) of bundle loader client struct containing a function pointer of that new type.
  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:

(userAgentForURL): Makes delegate call with the new method.
(setUpPageLoaderClient): Sets the struct's new function pointer to the new method.

  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:

(WebKit::InjectedBundlePageLoaderClient::userAgentForURL):

  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::userAgent):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::userAgent): Began using the new API to ask for user agent

instead of simply returning what had been stored.

  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::userAgent): Deleted.

4:13 PM Changeset in webkit [170329] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Unreviewed, rolling out r170324.
https://bugs.webkit.org/show_bug.cgi?id=134223

lots of build breakage (Requested by bradeeoh on #webkit).

Reverted changeset:

"Unreviewed, revert an unintentional change committed with
r170323."
http://trac.webkit.org/changeset/170324

4:12 PM Changeset in webkit [170328] by jpfau@apple.com
  • 2 edits in trunk/Source/WebCore

Fix release build

  • Modules/indexeddb/IDBTransactionCoordinator.cpp:

(WebCore::IDBTransactionCoordinator::canRunTransaction):

3:38 PM Changeset in webkit [170327] by jpfau@apple.com
  • 3 edits
    2 adds in trunk

Database process crashes when multiple transactions attempt to run at once
https://bugs.webkit.org/show_bug.cgi?id=134139

Reviewed by David Kilzer.

Source/WebCore:
Ensure that only one transaction can be running at a time.

Test: storage/indexeddb/transaction-overlapping.html

  • Modules/indexeddb/IDBTransactionCoordinator.cpp:

(WebCore::IDBTransactionCoordinator::canRunTransaction):

LayoutTests:

  • storage/indexeddb/transaction-overlapping-expected.txt: Added.
  • storage/indexeddb/transaction-overlapping.html: Added.
3:12 PM Changeset in webkit [170326] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

[iOS][wk2] Don't use view snapshots if the destination layer is a different size
https://bugs.webkit.org/show_bug.cgi?id=134210
<rdar://problem/17369463>

Reviewed by Benjamin Poulain.

  • UIProcess/ios/ViewGestureControllerIOS.mm:

(WebKit::ViewGestureController::beginSwipeGesture):
Only use the view snapshot if the snapshot is the same (in device space) size
as the layer it's going to be put into, and only if the device scale factor is
the same as it was when the snapshot was taken.

3:05 PM Changeset in webkit [170325] by benjamin@webkit.org
  • 30 edits in trunk/Source

[iOS][WK2] Make the state restore from HistoryItem more precise and reliable
https://bugs.webkit.org/show_bug.cgi?id=134150

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-23
Reviewed by Tim Horton.

Source/WebCore:
The two biggest changes for WebCore are:
-Store everything we need to handle changes of ViewportConfiguration on HistoryItem.
-Store the exposedRect with floating point coordinates.

  • WebCore.exp.in:
  • history/CachedPage.cpp:

(WebCore::CachedPage::restore):
We cannot determine a good scroll position from the WebProcess because the obscured insets can change
arbitrarily in the UIProcess. When we scroll here from the WebProcess, we would force an invalid position
to the UIProcess with the next layer tree update.

To avoid any problem, we prohibit scrolling when restoring the focus appearance.

  • history/HistoryItem.cpp:

(WebCore::encodeRect):
(WebCore::encodeSize):
(WebCore::HistoryItem::encodeBackForwardTreeNode):
(WebCore::decodeRect):
(WebCore::decodeSize):
(WebCore::HistoryItem::decodeBackForwardTree):

  • history/HistoryItem.h:

(WebCore::HistoryItem::exposedContentRect):
(WebCore::HistoryItem::setExposedContentRect):
(WebCore::HistoryItem::unobscuredContentRect):
(WebCore::HistoryItem::setUnobscuredContentRect):
(WebCore::HistoryItem::minimumLayoutSizeInScrollViewCoordinates):
(WebCore::HistoryItem::setMinimumLayoutSizeInScrollViewCoordinates):
(WebCore::HistoryItem::contentSize):
(WebCore::HistoryItem::setContentSize):
(WebCore::HistoryItem::exposedContentPosition): Deleted.
(WebCore::HistoryItem::setExposedContentPosition): Deleted.

  • loader/HistoryController.cpp:

(WebCore::HistoryController::saveScrollPositionAndViewStateToItem):

  • page/FrameView.h:
  • platform/ScrollView.h:
  • platform/ios/ScrollViewIOS.mm:

(WebCore::ScrollView::exposedContentRect):
(WebCore::ScrollView::setExposedContentRect):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::didChangeVisibleRect):

Source/WebKit2:
This patch make several little improvements to improve how we restore the visible content rect and scale
from the HistoryItem.

The biggest architectural change is that the exposed rect is now restored on the UIProcess instead of the WebProcess,
this ensure we restore the same position regardless of any modification of obscured areas.

  • Shared/VisibleContentRectUpdateInfo.cpp:

(WebKit::VisibleContentRectUpdateInfo::encode):
(WebKit::VisibleContentRectUpdateInfo::decode):

  • Shared/VisibleContentRectUpdateInfo.h:

(WebKit::VisibleContentRectUpdateInfo::VisibleContentRectUpdateInfo):
(WebKit::VisibleContentRectUpdateInfo::lastLayerTreeTransactionId):
(WebKit::WebPage::updateVisibleContentRects):

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:

A race between the UIProcess and the WebProcess could cause the viewport of the next page to be influenced by updates
of the previous page. To avoid that, VisibleContentRectUpdateInfo keeps track of the last transaction seen at the time
of the update.

The WebProcess updates the size and scale of the content through layer tree updates. If an update was generated for a layer tree
update of the old page, none of the information is valid for the current content. Since the UIProcess drives the state in case of conflicts,
the WebProcess was updating the scale of the current page based on incorrect information.

To avoid the problems, we save the layer tree transaction ID when we commit a new page. Only updates after that transaction are useful
for the current page.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _processDidExit]):
(withinEpsilon):
(changeContentOffsetBoundedInValidRange):
(-[WKWebView _didCommitLayerTree:WebKit::]):
(-[WKWebView _restorePageStateToExposedRect:WebCore::scale:]):
(-[WKWebView _restorePageStateToUnobscuredCenter:WebCore::scale:]):

  • UIProcess/API/Cocoa/WKWebViewInternal.h:
  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::restorePageState):
(WebKit::PageClientImpl::restorePageCenterAndScale):
Restoring the state is now done by WKWebView. The state is only updated on the next layer tree commit,
this is done to avoid any jumping if the page has scrolled since we tried to restore its state.

Both update path end up calling _updateVisibleContentRects. This is because the update on the WebProcess
never sets the ScrollPosition (because it does not know the current state of the obscured insets). Pushing
a new VisibleContentRect will nicely udpates the exposed rect, scroll position, fixed elements, etc.

  • UIProcess/ios/WKContentView.mm:

(-[WKContentView didUpdateVisibleRect:unobscuredRect:unobscuredRectInScrollViewCoordinates:scale:minimumScale:inStableState:isChangingObscuredInsetsInteractively:]):

  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::restorePageState):
(WebKit::WebPageProxy::restorePageCenterAndScale):

  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:

(WebKit::RemoteLayerTreeDrawingAreaProxy::lastCommittedLayerTreeTransactionID):

  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:

(WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy):

  • WebProcess/WebCoreSupport/ios/WebFrameLoaderClientIOS.mm:

(WebKit::WebFrameLoaderClient::saveViewStateToItem):
(WebKit::WebFrameLoaderClient::restoreViewState):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):
(WebKit::WebPage::didCommitLoad):

  • WebProcess/WebPage/WebPage.h:

Get rid of m_obscuredTopInset. It was a bad idea. The UIProcess updates the obscured insets a lot during
page load, the value we used to restore the scroll position was frequently stale.

(WebKit::WebPage::userHasChangedPageScaleFactor): Deleted.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::savePageState):
(WebKit::scaleAfterViewportWidthChange):
(WebKit::relativeCenterAfterContentSizeChange):
(WebKit::adjustExposedRectForNewScale):
Extract this out of dynamicViewportSizeUpdate(). It is useful to adjust the exposed rect when restoring a HistoryItem
to a ViewportConfiguration that is different from when it was saved.

(WebKit::WebPage::restorePageState):
There are two variations of restorePage:
1) If the viewport configuration is compatible, restore the exact scale and position of the page.
2) Otherwise, restore the scale and position similarily to dynamicViewportSizeUpdate().

(WebKit::WebPage::dynamicViewportSizeUpdate):
(WebKit::WebPage::viewportConfigurationChanged):
(WebKit::adjustExposedRectForBoundedScale):
(WebKit::RemoteLayerTreeDrawingArea::currentTransactionID):
Expose the transactionID for the race issue on VisibleRectUpdate.

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::setExposedContentRect):
Store the exposed rect in floating point coordinates. This makes it possible to restore that exact
position when needed.

3:04 PM Changeset in webkit [170324] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed, revert an unintentional change committed with r170323.

  • UIProcess/API/Cocoa/WKBackForwardList.mm:
2:56 PM Changeset in webkit [170323] by eric.carlson@apple.com
  • 30 edits
    2 adds in trunk/Source

[Mac] process raw VTT in-band captions
https://bugs.webkit.org/show_bug.cgi?id=134178

Reviewed by NOBODY (OOPS!).

  • CMakeLists.txt: Add ISOVTTCue.cpp|h.
  • WebCore.vcxproj/WebCore.vcxproj: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • html/track/BufferedLineReader.h:

(WebCore::BufferedLineReader::reset): New, empty the input buffer.

Make it possible to process WebVTT captions.

  • html/track/InbandGenericTextTrack.cpp:

(WebCore::InbandGenericTextTrack::parser): Allocate, if necessary, and return a WebVTT parser.
(WebCore::InbandGenericTextTrack::parseWebVTTCueData): Pass a cue to the parser.
(WebCore::InbandGenericTextTrack::parseWebVTTFileHeader): Pass a VTT file header to the parser.
(WebCore::InbandGenericTextTrack::newCuesParsed): Parser callback.
(WebCore::InbandGenericTextTrack::newRegionsParsed): Ditto.
(WebCore::InbandGenericTextTrack::fileFailedToParse): Ditto.

  • html/track/InbandGenericTextTrack.h:
  • html/track/InbandTextTrack.h:
  • html/track/InbandWebVTTTextTrack.cpp:

(WebCore::InbandWebVTTTextTrack::parser): New, parser accessor.
(WebCore::InbandWebVTTTextTrack::parseWebVTTCueData): New, parse VTT data in an ISOWebVTTCue

object.

(WebCore::InbandWebVTTTextTrack::newCuesParsed): Cleanup.
(WebCore::InbandWebVTTTextTrack::newRegionsParsed): Implement.
(WebCore::InbandWebVTTTextTrack::fileFailedToParse): Change the error message.

  • html/track/InbandWebVTTTextTrack.h:
  • html/track/TextTrackCueGeneric.cpp:

(WebCore::TextTrackCueGenericBoxElement::TextTrackCueGenericBoxElement): Change cue parameter

from a pointer to a reference.

(WebCore::TextTrackCueGeneric::createDisplayTree): Ditto.

  • html/track/VTTCue.cpp:

(WebCore::VTTCueBox::create): Change cue parameter from a pointer to a reference.
(WebCore::VTTCueBox::VTTCueBox): Ditto.
(WebCore::VTTCueBox::getCue): Return a reference.
(WebCore::VTTCueBox::applyCSSProperties): m_cue is a reference, not a pointer.
(WebCore::VTTCue::create): New, create a VTTCue from WebVTTCueData.
(WebCore::VTTCue::VTTCue): New, internal constructor that takes a WebVTTCueData.
(WebCore::VTTCue::initialize): New, shared constructor initialization.
(WebCore::VTTCue::createDisplayTree): m_cue is a reference, not a pointer.
(WebCore::VTTCue::markFutureAndPastNodes): Ditto.
(WebCore::VTTCue::setCueSettings): Ditto.

  • html/track/VTTCue.h:

(WebCore::VTTCueBox::create): Deleted.
(WebCore::VTTCue::create): Deleted.

  • html/track/WebVTTParser.cpp:

(WebCore::WebVTTParser::parseFileHeader): New. Reset the line reader buffer and parser state,

call the parser.

(WebCore::WebVTTParser::parseCueData): Create a cue from ISOWebVTTCue.
(WebCore::WebVTTParser::collectTimingsAndSettings): Return immediately if the string is empty.
(WebCore::WebVTTParser::collectTimeStamp): Ditto.

  • html/track/WebVTTParser.h:

(WebCore::WebVTTCueData::originalStartTime): New.
(WebCore::WebVTTCueData::setOriginalStartTime): New.
(WebCore::WebVTTCueData::WebVTTCueData):

  • loader/TextTrackLoader.cpp:

(WebCore::TextTrackLoader::getNewCues): Cleanup, use the new VTTCue::create.

  • platform/graphics/InbandTextTrackPrivateClient.h:

(WebCore::InbandTextTrackPrivateClient::parseWebVTTFileHeader): New.

Parse ISO WebVTT cue boxes.

  • platform/graphics/ISOVTTCue.cpp: Added.

(WebCore::ISOBox::ISOBox):
(WebCore::ISOBox::peekType):
(WebCore::ISOBox::peekLength):
(WebCore::ISOBox::peekString):
(WebCore::vttCueBoxType):
(WebCore::vttIdBoxType):
(WebCore::vttSettingsBoxType):
(WebCore::vttPayloadBoxType):
(WebCore::vttCurrentTimeBoxType):
(WebCore::vttCueSourceIDBoxType):
(WebCore::ISOWebVTTCue::boxType):
(WebCore::ISOWebVTTCue::ISOWebVTTCue):

  • platform/graphics/ISOVTTCue.h: Added.

(WebCore::ISOBox::boxHeaderSize):
(WebCore::ISOBox::length):
(WebCore::ISOBox::type):
(WebCore::ISOWebVTTCue::presentationTime):
(WebCore::ISOWebVTTCue::duration):
(WebCore::ISOWebVTTCue::sourceID):
(WebCore::ISOWebVTTCue::id):
(WebCore::ISOWebVTTCue::originalStartTime):
(WebCore::ISOWebVTTCue::settings):
(WebCore::ISOWebVTTCue::cueText):

  • platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:

(WebCore::InbandTextTrackPrivateAVF::InbandTextTrackPrivateAVF): Add a cue format parameter.
(WebCore::InbandTextTrackPrivateAVF::processCue): Call processNativeSamples.
(WebCore::InbandTextTrackPrivateAVF::processAttributedStrings): Add logging. Minor cleanup.
(WebCore::InbandTextTrackPrivateAVF::processNativeSamples): New, process an array of

CMSampleBuffers, create ISOWebVTTCue from the sample data.

  • platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h:
  • platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.h:

(WebCore::InbandTextTrackPrivateAVFObjC::create): Add a cue format parameter.

  • platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.mm:

(WebCore::InbandTextTrackPrivateAVFObjC::InbandTextTrackPrivateAVFObjC): Ditto.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL): Improve logging.
(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerItem): Don't leak an NSDictionary.
(WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Don't process media selection

options until we have tracks.

(WebCore::MediaPlayerPrivateAVFoundationObjC::processMediaSelectionOptions):
(WebCore::MediaPlayerPrivateAVFoundationObjC::processCue): Pass native samples as well as

attributed strings to track.

(-[WebCoreAVFMovieObserver legibleOutput:didOutputAttributedStrings:nativeSampleBuffers:forItemTime:]):

  • platform/graphics/avfoundation/objc/OutOfBandTextTrackPrivateAVF.h:

(WebCore::OutOfBandTextTrackPrivateAVF::OutOfBandTextTrackPrivateAVF):

  • platform/graphics/avfoundation/InbandTextTrackPrivateLegacyAVFObjC.cpp:

(WebCore::InbandTextTrackPrivateLegacyAVFObjC::InbandTextTrackPrivateLegacyAVFObjC): Pass cue

format to base class.

  • platform/graphics/avfoundation/cf/InbandTextTrackPrivateAVCF.cpp:

(WebCore::InbandTextTrackPrivateAVCF::InbandTextTrackPrivateAVCF): Ditto.

  • platform/graphics/avfoundation/cf/InbandTextTrackPrivateAVCF.h:
2:40 PM Changeset in webkit [170322] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Policy delegate methods should use CompletionHandlerCallChecker
https://bugs.webkit.org/show_bug.cgi?id=134215

Reviewed by Dan Bernstein.

  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::PolicyClient::decidePolicyForNavigationAction):
(WebKit::NavigationState::PolicyClient::decidePolicyForResponse):

2:33 PM Changeset in webkit [170321] by andersca@apple.com
  • 11 edits in trunk/Source/WebKit2

Don't use the WK prefix for internal C++ types
https://bugs.webkit.org/show_bug.cgi?id=134214

Reviewed by Dan Bernstein.

  • Shared/AssistedNodeInformation.cpp:

(WebKit::OptionItem::encode):
(WebKit::OptionItem::decode):
(WebKit::WKOptionItem::encode): Deleted.
(WebKit::WKOptionItem::decode): Deleted.

  • Shared/AssistedNodeInformation.h:

(WebKit::OptionItem::OptionItem):
(WebKit::AssistedNodeInformation::AssistedNodeInformation):
(WebKit::WKOptionItem::WKOptionItem): Deleted.

  • UIProcess/ios/WKContentViewInteraction.h:
  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView _requiresKeyboardWhenFirstResponder]):
(-[WKContentView inputView]):
(-[WKContentView requiresAccessoryView]):
(-[WKContentView _updateAccessory]):
(-[WKContentView textInputTraits]):
(-[WKContentView assistedNodeSelectOptions]):
(-[WKContentView _startAssistingNode:userIsInteracting:blurPreviousNode:userObject:]):
(-[WKContentView _stopAssistingNode]):

  • UIProcess/ios/forms/WKFormInputControl.mm:

(-[WKDateTimePicker initWithView:datePickerMode:]):
(-[WKFormInputControl initWithView:]):

  • UIProcess/ios/forms/WKFormSelectControl.h:
  • UIProcess/ios/forms/WKFormSelectControl.mm:

(adjustedFontSize):

  • UIProcess/ios/forms/WKFormSelectPicker.mm:

(-[WKOptionPickerCell initWithOptionItem:]):
(-[WKOptionGroupPickerCell initWithOptionItem:]):
(-[WKMultipleSelectPicker initWithView:]):
(-[WKMultipleSelectPicker pickerView:viewForRow:forComponent:reusingView:]):
(-[WKMultipleSelectPicker pickerView:row:column:checked:]):
(-[WKSelectSinglePicker pickerView:attributedTitleForRow:forComponent:]):
(-[WKSelectSinglePicker pickerView:didSelectRow:inComponent:]):

  • UIProcess/ios/forms/WKFormSelectPopover.mm:

(-[WKSelectTableViewController initWithView:hasGroups:]):
(-[WKSelectTableViewController tableView:numberOfRowsInSection:]):
(-[WKSelectTableViewController tableView:titleForHeaderInSection:]):
(-[WKSelectTableViewController populateCell:withItem:]):
(-[WKSelectTableViewController findItemIndexAt:]):
(-[WKSelectTableViewController findItemAt:]):
(-[WKSelectTableViewController tableView:cellForRowAtIndexPath:]):
(-[WKSelectTableViewController tableView:didSelectRowAtIndexPath:]):

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::getAssistedNodeInformation):

2:32 PM Changeset in webkit [170320] by mitz@apple.com
  • 14 edits in trunk/Source/WebKit2

[Cocoa] No way to grant storage quotas for web application cache
https://bugs.webkit.org/show_bug.cgi?id=134213

Reviewed by Anders Carlsson.

  • UIProcess/API/APIUIClient.h:

(API::UIClient::reachedApplicationCacheOriginQuota): Added this new client function, with
a default implementation that calls the completion handler with the current quota.

  • UIProcess/API/Cocoa/WKUIDelegatePrivate.h: Declared a new delegate method.
  • UIProcess/API/Cocoa/_WKSecurityOrigin.mm:

(-[_WKSecurityOrigin _initWithSecurityOrigin:WebCore::]): Changed the parameter into a const
reference, since we copy it.

  • UIProcess/API/Cocoa/_WKSecurityOriginInternal.h:
  • UIProcess/Cocoa/UIDelegate.h: Override API::UIClient::reachedApplicationCacheOriginQuota.

Added flag to m_delegateMethods struct for new delegate method.

  • UIProcess/Cocoa/UIDelegate.mm:

(WebKit::UIDelegate::setDelegate): Set new flag in m_delegateMethods struct.
(WebKit::UIDelegate::UIClient::exceededDatabaseQuota): Updated for change in
_WKSecurityOrigin initializer.
(WebKit::UIDelegate::UIClient::reachedApplicationCacheOriginQuota): Added. Calls the new
delegate method.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::reachedApplicationCacheOriginQuota): Added. Forwards the message to
the UI client.

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in: Added ReachedApplicationCacheOriginQuota message.
  • WebProcess/InjectedBundle/API/APIInjectedBundlePageUIClient.h:

(API::InjectedBundle::PageUIClient::didReachApplicationCacheOriginQuota): Changed the return
type to bool, indicating whether the client handled the callback.

  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:

(WebKit::InjectedBundlePageUIClient::didReachApplicationCacheOriginQuota): Return the
appropriate value.

  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::reachedApplicationCacheOriginQuota): If the bundle client didn’t
handle the callback, send a message the the UI process, and update the quota with the reply.

2:32 PM Changeset in webkit [170319] by timothy_horton@apple.com
  • 17 edits in trunk/Source/WebKit2

[wk2] Synchronously wait a short time for a layer tree update after bringing a web view in-window
https://bugs.webkit.org/show_bug.cgi?id=134189

Reviewed by Simon Fraser.

Make the old behavior of -[WKView endDeferringViewInWindowChangesSync] the default; synchronously wait
for a fraction of a second when a page that was previously in-window but currently isn't comes back in-window,
until new content is painted (or we hit a timeout).

  • UIProcess/DrawingAreaProxy.h:

(WebKit::DrawingAreaProxy::waitForDidUpdateViewState):

  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:

(WebKit::TiledCoreAnimationDrawingAreaProxy::waitForDidUpdateViewState):
Delegate waitForDidUpdateViewState to the DrawingAreaProxys, because behavior is very dependent on them.

  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:

(WebKit::RemoteLayerTreeDrawingAreaProxy::coreAnimationDidCommitLayers):
(WebKit::RemoteLayerTreeDrawingAreaProxy::waitForDidUpdateViewState):
Implement waitForDidUpdateViewState for the RemoteLayerTree; it waits for CommitLayerTree.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::updateViewState):
(WebKit::WebPageProxy::viewStateDidChange):
(WebKit::WebPageProxy::dispatchViewStateChange):
(WebKit::WebPageProxy::waitForDidUpdateViewState):
(WebKit::WebPageProxy::resetStateAfterProcessExited):
(WebKit::WebPageProxy::viewSize): Deleted.

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::didUpdateViewState):

  • UIProcess/API/mac/WKView.mm:

(-[WKView endDeferringViewInWindowChangesSync]):
Always waitForDidUpdateViewState when a page that was previously in-window but currently isn't comes back in-window.

  • WebProcess/WebPage/DrawingArea.h:

(WebKit::DrawingArea::viewStateDidChange):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):
(WebKit::WebPage::setViewState):
(WebKit::WebPage::didUpdateViewStateTimerFired): Deleted.

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::flushLayers):
(WebKit::RemoteLayerTreeDrawingArea::viewStateDidChange):

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
(WebKit::TiledCoreAnimationDrawingArea::viewStateDidChange):
(WebKit::TiledCoreAnimationDrawingArea::didUpdateViewStateTimerFired):

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::didUpdateViewStateTimerFired): Deleted.
Delegate sending of didUpdateViewState to the DrawingAreas (RemoteLayerTreeDrawingArea won't send it,

because the UI process waits for CommitLayerTree instead).

2:27 PM Changeset in webkit [170318] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

[MSE][Mac] Crash in SourceBuffer::sourceBufferPrivateDidReceiveRenderingError()
https://bugs.webkit.org/show_bug.cgi?id=134211

Reviewed by Eric Carlson.

Null-check m_source before dereferencing, as the SourceBuffer may have been removed
from its MediaSource before this error was received.

  • Modules/mediasource/SourceBuffer.cpp:

(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveRenderingError):

2:24 PM Changeset in webkit [170317] by Lucas Forschler
  • 2 edits in tags/Safari-538.42/Source/WebKit2

Merged r170311.

2:12 PM Changeset in webkit [170316] by timothy_horton@apple.com
  • 15 edits in trunk/Source/WebKit2

[iOS][wk2] Ensure that layers are marked volatile before allowing the process to suspend
https://bugs.webkit.org/show_bug.cgi?id=134004
<rdar://problem/17186342>

Reviewed by Simon Fraser.

WebKit tries to make layers volatile when unparented, but sometimes isn't given
a chance to do so before the process gets suspended, so we end up with lots of
non-volatile surfaces that should really be volatile.

  • Shared/mac/RemoteLayerBackingStoreCollection.h:
  • Shared/mac/RemoteLayerBackingStoreCollection.mm:

(WebKit::RemoteLayerBackingStoreCollection::markBackingStoreVolatileImmediately):
(WebKit::RemoteLayerBackingStoreCollection::markAllBackingStoreVolatileImmediatelyIfPossible):
Add markAllBackingStoreVolatileImmediatelyIfPossible, which tries to mark *all*
buffers of *all* backing store, (live and unreachable), (front, back, and secondary),
volatile right away. It returns false if any buffer isn't marked volatile (because it was in-use).

  • UIProcess/ios/ProcessThrottler.h:
  • UIProcess/ios/ProcessThrottler.mm:

(WebKit::ProcessThrottler::updateAssertion):
(WebKit::ProcessThrottler::processReadyToSuspend):
(WebKit::ProcessThrottler::didCancelProcessSuspension):

  • UIProcess/ios/WebProcessProxyIOS.mm:

(WebKit::WebProcessProxy::sendCancelProcessWillSuspend):
(WebKit::WebProcessProxy::didCancelProcessSuspension):

  • UIProcess/WebProcessProxy.h:
  • UIProcess/WebProcessProxy.messages.in:
  • WebProcess/WebProcess.h:
  • WebProcess/WebProcess.messages.in:

If the UI process is waiting for the Web process to confirm that it can suspend
and something happens (the view is reparented) that cancels the suspension, inform
the Web process that this happened, so that it can cancel any cleanup that might still be taking place.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::viewStateDidChange):
If a view goes in-window, dispatch the view state change immediately without delay,
to minimize the latency between coming in-window and being ready to go.

  • WebProcess/WebPage/DrawingArea.h:

(WebKit::DrawingArea::markLayersVolatileImmediatelyIfPossible):

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::setRootCompositingLayer):
Schedule a flush when we change the root layer; otherwise, we can end up
detaching the root layer but changing nothing else, and never committing that change.

(WebKit::RemoteLayerTreeDrawingArea::markLayersVolatileImmediatelyIfPossible):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::processWillSuspend):
(WebKit::WebProcess::cancelProcessWillSuspend):
(WebKit::WebProcess::markAllLayersVolatileIfPossible):
(WebKit::WebProcess::processSuspensionCleanupTimerFired):
When the UI process is going to suspend the process, it sends us ProcessWillSuspend,
and defers the suspension until we send a ProcessReadyToSuspend back.
Delay ProcessReadyToSuspend until all layers in our process have been marked volatile.
We'll keep trying every 20ms until they're all volatile. For safety, the UI process will eventually
stop waiting for us, but the volatility change is usually applied successfully within the first
or second timer callback.

2:01 PM Changeset in webkit [170315] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Reduce synchronous layout triggered by JavaScript-based media controls
https://bugs.webkit.org/show_bug.cgi?id=134208

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-06-23
Reviewed by Eric Carlson.

Avoid always querying the offsetWidth and offsetHeight of the timeline
by only calculating these values when the timeline may change size.
Also avoid doing work in a few cases where properties did not
actually change.

  • Modules/mediacontrols/mediaControlsApple.js:

(Controller):

(Controller.prototype.setNeedsTimelineMetricsUpdate):
(Controller.prototype.updateTimelineMetricsIfNeeded):
Only update the timeline metrics when they may have changed.

(Controller.prototype.updateControls):
(Controller.prototype.handleTimelineMouseMove):
(Controller.prototype.progressFillStyle):
(Controller.prototype.showControls):
(Controller.prototype.addControls):
Mark timeline metrics need update based on various UI changes.

(Controller.prototype.setStatusHidden):
Only do work if the hidden status changed.
Mark timeline metrics need update if the timeline is changed.

(Controller.prototype.updateProgress):
Use cached timeline metrics instead of always querying offsetWidth/offsetHeight.

  • Modules/mediacontrols/mediaControlsiOS.js:

(ControllerIOS):
(ControllerIOS.prototype.updateControls):

(ControllerIOS.prototype.updateProgress):
Use cached timeline metrics instead of always querying offsetWidth/offsetHeight.

(ControllerIOS.prototype.handleWirelessPlaybackChange):
Mark timeline metrics need update as button may have changed.

(ControllerIOS.prototype.handleWirelessTargetAvailableChange):
Only do work if the availability changed.
Mark timeline metrics need update as a new button may have appeared.

(ControllerIOS.prototype.set pageScaleFactor):
Only do work if the page scale factor changed.

1:24 PM Changeset in webkit [170314] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

Add skeleton code for updated Gamepad API
https://bugs.webkit.org/show_bug.cgi?id=134165

Unreviewed - Forgotten review feedback from http://trac.webkit.org/changeset/170309

  • Modules/gamepad/GamepadButton.idl: Forgot to commit the removal of NoInterfaceObject here.
1:19 PM Changeset in webkit [170313] by oliver@apple.com
  • 5 edits in trunk/Source/WebKit2

Ensure that we always use symlink free paths when specifying cache directories
https://bugs.webkit.org/show_bug.cgi?id=134206

Reviewed by Anders Carlsson.

Sandboxing will deny symlink based paths, so we use realpath to create extensions.
This leaves us in the position of an extension using a visually different path
from other parts of the process code. This patch simply makes sure that we always
use the realpath for cache directories, so making debugging easier and also ensuring
that we don't ever accidentally try to use a path with symlinks that will thus get
denied.

  • Shared/SandboxExtension.h:

(WebKit::stringByResolvingSymlinksInPath):

  • Shared/mac/SandboxExtensionMac.mm:

(WebKit::stringByResolvingSymlinksInPath):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::ensureNetworkProcess):

  • UIProcess/mac/WebContextMac.mm:

(WebKit::WebContext::platformDefaultApplicationCacheDirectory):
(WebKit::WebContext::platformDefaultDiskCacheDirectory):
(WebKit::WebContext::platformDefaultWebSQLDatabaseDirectory):
(WebKit::WebContext::platformDefaultIconDatabasePath):
(WebKit::WebContext::platformDefaultLocalStorageDirectory):

12:58 PM Changeset in webkit [170312] by akling@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Inline the UnlinkedInstructionStream::Reader logic.
<https://webkit.org/b/134203>

This class is only used by CodeBlock to unpack the unlinked instructions,
and we were spending 0.5% of total time on PLT calling Reader::next().
Move the logic to the header file and mark it ALWAYS_INLINE.

Reviewed by Geoffrey Garen.

  • bytecode/UnlinkedInstructionStream.cpp:
  • bytecode/UnlinkedInstructionStream.h:

(JSC::UnlinkedInstructionStream::Reader::Reader):
(JSC::UnlinkedInstructionStream::Reader::read8):
(JSC::UnlinkedInstructionStream::Reader::read32):
(JSC::UnlinkedInstructionStream::Reader::next):

12:35 PM Changeset in webkit [170311] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebKit2

Unregister notification observer registered in r170156.
https://bugs.webkit.org/show_bug.cgi?id=134204.

Reviewed by Tim Horton.

  • UIProcess/API/mac/WKView.mm:

(-[WKView dealloc]):

12:29 PM Changeset in webkit [170310] by Antti Koivisto
  • 2 edits
    1 copy
    1 add in trunk/LayoutTests

Fix a test case failing on WK1 after r170296.

There is now a non-visual render tree dump difference between WK1 and Wk2 results here due to wk1 requiring an additional style synchronization.

  • platform/mac-wk2/editing/inserting: Added.
  • platform/mac-wk2/editing/inserting/break-blockquote-after-delete-expected.txt: Copied from LayoutTests/platform/mac/editing/inserting/break-blockquote-after-delete-expected.txt.
  • platform/mac/editing/inserting/break-blockquote-after-delete-expected.txt:
12:19 PM Changeset in webkit [170309] by beidson@apple.com
  • 11 edits
    12 adds in trunk/Source/WebCore

Add skeleton code for updated Gamepad API
https://bugs.webkit.org/show_bug.cgi?id=134165

Reviewed by Dean Jackson.

No new tests (No change in behavior for any tested configuration)

Interface and dummy implementation for the Gamepad object:

  • Modules/gamepad/Gamepad.cpp: Added.

(WebCore::Gamepad::Gamepad):
(WebCore::Gamepad::~Gamepad):
(WebCore::Gamepad::axes):
(WebCore::Gamepad::buttons):

  • Modules/gamepad/Gamepad.h: Added.
  • Modules/gamepad/Gamepad.idl: Added.

Interface and dummy implementation for the GamepadButton object:

  • Modules/gamepad/GamepadButton.cpp: Added.

(WebCore::GamepadButton::GamepadButton):
(WebCore::GamepadButton::pressed):

  • Modules/gamepad/GamepadButton.h: Added.

(WebCore::GamepadButton::create):
(WebCore::GamepadButton::value):
(WebCore::GamepadButton::setValue):

  • Modules/gamepad/GamepadButton.idl: Added.

Interface and dummy implementation for the GamepadEvent object:

  • Modules/gamepad/GamepadEvent.cpp: Added.

(WebCore::GamepadEvent::GamepadEvent):

  • Modules/gamepad/GamepadEvent.h: Added.

(WebCore::GamepadEventInit::GamepadEventInit):
(WebCore::GamepadEvent::~GamepadEvent):
(WebCore::GamepadEvent::create):
(WebCore::GamepadEvent::gamepad):

  • Modules/gamepad/GamepadEvent.idl: Added.
  • dom/EventNames.in:

Interface and dummy implementation for additions to the Navigator object:

  • Modules/gamepad/NavigatorGamepad.cpp: Added.

(WebCore::NavigatorGamepad::NavigatorGamepad):
(WebCore::NavigatorGamepad::supplementName):
(WebCore::NavigatorGamepad::from):
(WebCore::NavigatorGamepad::getGamepads):
(WebCore::NavigatorGamepad::gamepads):

  • Modules/gamepad/NavigatorGamepad.h: Added.
  • Modules/gamepad/NavigatorGamepad.idl: Added.

Bindings additions necessary for these new interfaces:

  • bindings/js/JSDOMBinding.h:

(WebCore::JSValueTraits<double>::arrayJSValue):

  • bindings/js/JSDictionary.cpp:

(WebCore::JSDictionary::convertValue):

  • bindings/js/JSDictionary.h:

Project file stuff:

  • CMakeLists.txt:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCoreCommon.props:
  • WebCore.vcxproj/copyForwardingHeaders.cmd:
  • WebCore.xcodeproj/project.pbxproj:
  • DerivedSources.make:
12:02 PM Changeset in webkit [170308] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Catch Obj-C exceptions thrown by _linenPatternImage
https://bugs.webkit.org/show_bug.cgi?id=134202

Reviewed by Geoffrey Garen.

Catch Objective-C exceptions thrown by _linenPatternImage and
-[NSImage CGImageForProposedRect:context:hints:].

  • platform/mac/ScrollbarThemeMac.mm:

(WebCore::linenBackgroundColor):

12:00 PM Changeset in webkit [170307] by Simon Fraser
  • 4 edits
    2 adds in trunk

CSS clip property should make layers non-opaque
https://bugs.webkit.org/show_bug.cgi?id=134147

Source/WebCore:
<rdar://problem/17324579>

Reviewed by Tim Horton.

https://www.fairphone.com has position:fixed elements with clip: rect(...)
but we were making those layers opaque, resulting in garbage pixels
in areas outside the clip rect.

Fix by checking for the clip property in RenderBox::backgroundIsKnownToBeOpaqueInRect().

Test: compositing/contents-opaque/opaque-with-clip.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::backgroundIsKnownToBeOpaqueInRect):

LayoutTests:

Reviewed by Tim Horton.

  • compositing/contents-opaque/opaque-with-clip-expected.html: Added.
  • compositing/contents-opaque/opaque-with-clip.html: Added.
12:00 PM Changeset in webkit [170306] by Simon Fraser
  • 5 edits
    2 adds in trunk

Adding a mask on a simple color compositing layer removes the content
https://bugs.webkit.org/show_bug.cgi?id=134127

Reviewed by Dean Jackson.

Source/WebCore:

In r169053 I moved some updateDrawsContent() into updateAfterDescendents(),
but this isn't called when a composited layer gains or loses a mask (which
doesn't cause a layout). This caused us to fail to allocate backing store
when gaining a mask, resulting in missing content.

Fix by calling updateAfterDescendents() from RenderLayer::styleChange()
when the layer config isn't changing.

Also remove a condition in isSimpleContainerCompositingLayer() that caused us
to fall off the simple layer path for masked layers, since this works just
fine.

Test: compositing/masks/solid-color-masked.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateClipRects):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer):

LayoutTests:

  • compositing/masks/mask-layer-size-expected.txt:
  • compositing/masks/solid-color-masked-expected.html: Added.
  • compositing/masks/solid-color-masked.html: Added.
12:00 PM Changeset in webkit [170305] by Simon Fraser
  • 2 edits in trunk/Tools

Enable the Web Inspector in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=134148

Reviewed by Joseph Pecoraro.

Set the pref to enable Web Inspector in both WK1 and WK2 windows.

  • MiniBrowser/mac/AppDelegate.m:

(-[BrowserAppDelegate applicationDidFinishLaunching:]):

11:56 AM Changeset in webkit [170304] by hyatt@apple.com
  • 23 edits
    3 adds in trunk

[New Multicolumn] Writing mode changes on the <html> and RenderView need to
be propagated to column sets and flow thread children of those renderers.
https://bugs.webkit.org/show_bug.cgi?id=134121
<rdar://problem/16884527>

Reviewed by Dean Jackson.

Source/WebCore:
Added fast/multicol/pagination/RightToLeft-rl-dynamic.html

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::styleDidChange):
Refactor the propagation code for column sets and flow thread styles into a helper
function that is called here.

(WebCore::RenderBlockFlow::updateStylesForColumnChildren):

  • rendering/RenderBlockFlow.h:

Add a new helper function for recalculating the styles of the column sets and
flow thread in response to changes.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::styleDidChange):
When the style is changed for a root element or the RenderView in response to
writing mode and direction changes, make sure that style gets propagated to
the column children by calling the new helper function.

LayoutTests:

  • fast/multicol/pagination/RightToLeft-rl-dynamic.html: Added.
  • platform/mac/fast/multicol/pagination/BottomToTop-bt-expected.png:
  • platform/mac/fast/multicol/pagination/BottomToTop-lr-expected.png:
  • platform/mac/fast/multicol/pagination/BottomToTop-rl-expected.png:
  • platform/mac/fast/multicol/pagination/BottomToTop-tb-expected.png:
  • platform/mac/fast/multicol/pagination/LeftToRight-bt-expected.png:
  • platform/mac/fast/multicol/pagination/LeftToRight-lr-expected.png:
  • platform/mac/fast/multicol/pagination/LeftToRight-rl-expected.png:
  • platform/mac/fast/multicol/pagination/LeftToRight-tb-expected.png:
  • platform/mac/fast/multicol/pagination/RightToLeft-bt-expected.png:
  • platform/mac/fast/multicol/pagination/RightToLeft-lr-expected.png:
  • platform/mac/fast/multicol/pagination/RightToLeft-rl-dynamic-expected.png: Added.
  • platform/mac/fast/multicol/pagination/RightToLeft-rl-dynamic-expected.txt: Added.
  • platform/mac/fast/multicol/pagination/RightToLeft-rl-expected.png:
  • platform/mac/fast/multicol/pagination/RightToLeft-tb-expected.png:
  • platform/mac/fast/multicol/pagination/TopToBottom-bt-expected.png:
  • platform/mac/fast/multicol/pagination/TopToBottom-lr-expected.png:
  • platform/mac/fast/multicol/pagination/TopToBottom-rl-expected.png:
  • platform/mac/fast/multicol/pagination/TopToBottom-tb-expected.png:
  • platform/mac/fast/multicol/pagination/nested-transforms-expected.png:
11:25 AM Changeset in webkit [170303] by mitz@apple.com
  • 9 edits
    3 adds in trunk/Source/WebKit2

[Cocoa] No way to grant storage quotas for WebSQL
https://bugs.webkit.org/show_bug.cgi?id=134175

Reviewed by Anders Carlsson.

  • Shared/WebSecurityOrigin.h:

(WebKit::WebSecurityOrigin::securityOrigin): Changed to return a non-const reference.

  • UIProcess/API/APIUIClient.h:

(API::UIClient::exceededDatabaseQuota): Added a completion handler parameter than takes the
new quota, and changed the return type to void.

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetPageUIClient): Changed the override of exceededDatabaseQuota to call the
completion handler with the new quota, or with the existing quota if the client doesn’t
implement the callback.

  • UIProcess/API/Cocoa/WKUIDelegatePrivate.h: Declared new delegate method.
  • UIProcess/API/Cocoa/_WKSecurityOrigin.h: Added.
  • UIProcess/API/Cocoa/_WKSecurityOrigin.mm: Added.

(-[_WKSecurityOrigin _initWithSecurityOrigin:WebCore::]): Store the origin in an ivar.
(-[_WKSecurityOrigin protocol]): Added this accessor.
(-[_WKSecurityOrigin host]): Ditto.
(-[_WKSecurityOrigin port]): Ditto.

  • UIProcess/API/Cocoa/_WKSecurityOriginInternal.h: Added.
  • UIProcess/Cocoa/UIDelegate.h: Override API::UIClient::exceededDatabaseQuota. Added flag

to m_delegateMethods struct for new delegate method.

  • UIProcess/Cocoa/UIDelegate.mm:

(WebKit::UIDelegate::setDelegate): Set new flag in m_delegateMethods struct.
(WebKit::UIDelegate::UIClient::exceededDatabaseQuota): Added. Calls the new delegate method.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::exceededDatabaseQuota): Updated for the new client interface: now
passing a completion handler that replies with the new quota.

  • WebKit2.xcodeproj/project.pbxproj: Added references to new files, sorted a group.
11:16 AM Changeset in webkit [170302] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

[iOS] Use WebGLLayer rather than PlatformLayer in GraphicsContext3D
https://bugs.webkit.org/show_bug.cgi?id=134183

Follow-up review from Sam Weinig.

  • platform/graphics/GraphicsContext3D.h: Merge another bit of MAC and IOS

code.

  • ChangeLog: Actually read his review comments this time.
11:01 AM Changeset in webkit [170301] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

[Mac] Uncaught exception crash when destroying MediaPlayerPrivateAVFoundationObjC
https://bugs.webkit.org/show_bug.cgi?id=134198

Reviewed by Eric Carlson.

Now that we always create an AVPlayerLayer when creating an AVPlayer, but we don't
return that layer from platformLayer() unless we've been asked to, we no longer are
asked to destroy our video layer from MediaPlayerPrivateAVFoundation::tearDownVideoRendering().

Instead, explicitly destroy our video layer (and remove the KVO-observer which is
causing this exception) in the MediaPlayerPrivateAVFoundationObjC destructor.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::~MediaPlayerPrivateAVFoundationObjC):

10:50 AM Changeset in webkit [170300] by Simon Fraser
  • 2 edits in trunk/Source/WebKit2

More build fixing after r170295.

  • WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

10:39 AM Changeset in webkit [170299] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Fix build.

  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

10:27 AM Changeset in webkit [170298] by andersca@apple.com
  • 14 edits in trunk/Source/WebKit2

Give read-only properties proper ownership attributes
https://bugs.webkit.org/show_bug.cgi?id=134197
<rdar://problem/16830117>

Reviewed by Dan Bernstein.

Also, make WKFrameInfo conform to NSCopying since it's a data-only object and thus intended to be copied.

  • UIProcess/API/Cocoa/WKBackForwardList.h:
  • UIProcess/API/Cocoa/WKBackForwardListItem.h:
  • UIProcess/API/Cocoa/WKFrameInfo.h:
  • UIProcess/API/Cocoa/WKFrameInfo.mm:

(-[WKFrameInfo copyWithZone:]):
(-[WKFrameInfo setRequest:]): Deleted.

  • UIProcess/API/Cocoa/WKNavigation.h:
  • UIProcess/API/Cocoa/WKNavigationAction.h:
  • UIProcess/API/Cocoa/WKNavigationAction.mm:

(-[WKNavigationAction setSourceFrame:]):
(-[WKNavigationAction setTargetFrame:]):

  • UIProcess/API/Cocoa/WKNavigationActionInternal.h:
  • UIProcess/API/Cocoa/WKNavigationResponse.h:
  • UIProcess/API/Cocoa/WKScriptMessage.h:
  • UIProcess/API/Cocoa/WKUserContentController.h:
  • UIProcess/API/Cocoa/WKUserScript.h:
  • UIProcess/API/Cocoa/WKWebView.h:
10:07 AM Changeset in webkit [170297] by akling@apple.com
  • 4 edits in trunk/Source/WebCore

Remove unused FrameView::setUseCustomFixedPositionLayoutRect().
<https://webkit.org/b/134194>

Reviewed by Anders Carlsson.

  • WebCore.exp.in:
  • page/FrameView.cpp:

(WebCore::FrameView::setUseCustomFixedPositionLayoutRect): Deleted.

  • page/FrameView.h:
10:02 AM Changeset in webkit [170296] by Antti Koivisto
  • 5 edits in trunk/Source/WebCore

REGRESSION (r160908): Unable to unset bold while entering text
https://bugs.webkit.org/show_bug.cgi?id=134196
<rdar://problem/17051653>

Reviewed by Andreas Kling.

No test, this code path is used by some WK1 API clients only.

  • editing/Editor.cpp:

(WebCore::Editor::styleForSelectionStart):

This needs to update the style before requesting the renderer.

  • editing/Editor.h:
  • editing/ios/EditorIOS.mm:

(WebCore::styleForSelectionStart): Deleted.

  • editing/mac/EditorMac.mm:

(WebCore::styleForSelectionStart): Deleted.

Removed the duplicated functions, moved to Editor.cpp.

9:39 AM Changeset in webkit [170295] by achristensen@apple.com
  • 5 edits in trunk/Source/WebCore

[iOS] Fix video in WebGL.
https://bugs.webkit.org/show_bug.cgi?id=133511

Reviewed by Jer Noble.

  • WebCore.exp.in:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::hasSingleSecurityOrigin):
(WebCore::wkAVAssetResolvedURL): Deleted.

  • platform/mac/WebCoreSystemInterface.h:
  • platform/mac/WebCoreSystemInterface.mm:

Declare and use resolvedURL on AVURLAsset instead of using wkAVAssetResolvedURL through WebKitSystemInterface.

8:25 AM Changeset in webkit [170294] by Michał Pakuła vel Rutka
  • 1 edit
    8 copies
    1 delete in trunk/LayoutTests

[EFL] Move WebKit2 test results into LayoutTests/platform/efl
https://bugs.webkit.org/show_bug.cgi?id=134192

Unreviewed gardening, moving files into LayoutTests/platform/efl after removing EFL WebKit1.

  • platform/efl/webaudio/oscillator-custom-expected.wav: Renamed from LayoutTests/platform/efl-wk2/webaudio/oscillator-custom-expected.wav.
  • platform/efl/webaudio/oscillator-sawtooth-expected.wav: Renamed from LayoutTests/platform/efl-wk2/webaudio/oscillator-sawtooth-expected.wav.
  • platform/efl/webaudio/oscillator-sine-expected.wav: Renamed from LayoutTests/platform/efl-wk2/webaudio/oscillator-sine-expected.wav.
  • platform/efl/webaudio/oscillator-square-expected.wav: Renamed from LayoutTests/platform/efl-wk2/webaudio/oscillator-square-expected.wav.
  • platform/efl/webaudio/oscillator-triangle-expected.wav: Renamed from LayoutTests/platform/efl-wk2/webaudio/oscillator-triangle-expected.wav.
  • platform/efl/webaudio/up-mixing-mono-51-expected.wav: Renamed from LayoutTests/platform/efl-wk2/webaudio/up-mixing-mono-51-expected.wav.
  • platform/efl/webaudio/up-mixing-mono-stereo-expected.wav: Renamed from LayoutTests/platform/efl-wk2/webaudio/up-mixing-mono-stereo-expected.wav.
  • platform/efl/webaudio/up-mixing-stereo-51-expected.wav: Renamed from LayoutTests/platform/efl-wk2/webaudio/up-mixing-stereo-51-expected.wav.
8:21 AM Changeset in webkit [170293] by Michał Pakuła vel Rutka
  • 1 edit
    5 moves in trunk/LayoutTests

[EFL] Move WebKit2 test results into LayoutTests/platform/efl
https://bugs.webkit.org/show_bug.cgi?id=134192

Unreviewed gardening, moving files into LayoutTests/platform/efl after removing EFL WebKit1.

  • platform/efl/webaudio/audiobuffersource-loop-points-expected.wav: Renamed from LayoutTests/platform/efl-wk2/webaudio/audiobuffersource-loop-points-expected.wav.
  • platform/efl/webaudio/audiobuffersource-multi-channels-expected.wav: Renamed from LayoutTests/platform/efl-wk2/webaudio/audiobuffersource-multi-channels-expected.wav.
  • platform/efl/webaudio/audiobuffersource-playbackrate-expected.wav: Renamed from LayoutTests/platform/efl-wk2/webaudio/audiobuffersource-playbackrate-expected.wav.
  • platform/efl/webaudio/gain-expected.wav: Renamed from LayoutTests/platform/efl-wk2/webaudio/gain-expected.wav.
  • platform/efl/webaudio/mixing-expected.wav: Renamed from LayoutTests/platform/efl-wk2/webaudio/mixing-expected.wav.
8:13 AM Changeset in webkit [170292] by Michał Pakuła vel Rutka
  • 1 edit
    40 copies
    1 move
    5 adds
    2 deletes in trunk/LayoutTests

[EFL] Move WebKit2 test results into LayoutTests/platform/efl
https://bugs.webkit.org/show_bug.cgi?id=134192

Unreviewed gardening, moving files into LayoutTests/platform/efl after removing EFL WebKit1.

  • platform/efl/fast/: Renamed from LayoutTests/platform/efl-wk2/fast/.
  • platform/efl/webaudio/audiobuffersource-expected.wav: Renamed from LayoutTests/platform/efl-wk2/webaudio/audiobuffersource-expected.wav.
  • platform/efl/webaudio/codec-tests/aac/vbr-128kbps-44khz-expected.wav: Renamed from LayoutTests/platform/efl-wk2/webaudio/codec-tests/aac/vbr-128kbps-44khz-expected.wav.
  • platform/efl/webaudio/codec-tests/vorbis/vbr-128kbps-44khz-expected.txt: Renamed from LayoutTests/platform/efl-wk2/webaudio/codec-tests/vorbis/vbr-128kbps-44khz-expected.txt.
  • platform/efl/webaudio/codec-tests/vorbis/vbr-70kbps-44khz-expected.txt: Renamed from LayoutTests/platform/efl-wk2/webaudio/codec-tests/vorbis/vbr-70kbps-44khz-expected.txt.
  • platform/efl/webaudio/codec-tests/vorbis/vbr-96kbps-44khz-expected.txt: Renamed from LayoutTests/platform/efl-wk2/webaudio/codec-tests/vorbis/vbr-96kbps-44khz-expected.txt.
  • platform/efl/webaudio/codec-tests/wav/24bit-22khz-resample-expected.wav: Renamed from LayoutTests/platform/efl-wk2/webaudio/codec-tests/wav/24bit-22khz-resample-expected.wav.
  • platform/efl/webaudio/codec-tests/wav/24bit-44khz-expected.wav: Renamed from LayoutTests/platform/efl-wk2/webaudio/codec-tests/wav/24bit-44khz-expected.wav.
7:59 AM Changeset in webkit [170291] by stavila@adobe.com
  • 3 edits in trunk/Source/WebCore

REGRESSION (r168046): Incorrect handling of object information in WebCore::RenderFlowThread::removeLineRegionInfo
https://bugs.webkit.org/show_bug.cgi?id=133587

Reviewed by Antti Koivisto.

When an object flowed in multicol is moved from in-flow positioning to out-of-flow positioning,
its information must be removed from the flowthread prior to the change being made.
Otherwise, the flow thread will no longer be its containing block and a reference to it
will not be possible to obtain.

No new tests can be added because the code still hits in an unrelated assertion followed by a null dereference.
The issue was discussed with Antti Koivisto and we decided its better to fix this problem first and
handle the following issue in a separate bug.

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::styleWillChange):

  • rendering/RenderObject.h:

(WebCore::RenderObject::flowThreadContainingBlock):

7:59 AM Changeset in webkit [170290] by Michał Pakuła vel Rutka
  • 9 edits
    87 copies
    5 adds
    25 deletes in trunk/LayoutTests

[EFL] Move WebKit2 test results into LayoutTests/platform/efl

Unreviewed gardening, moving files into LayoutTests/platform/efl after removing EFL WebKit1.

  • platform/efl/accessibility/: Renamed from LayoutTests/platform/efl-wk2/accessibility/.
  • platform/efl/compositing/: Renamed from LayoutTests/platform/efl-wk2/compositing/.
  • platform/efl/editing/: Renamed from LayoutTests/platform/efl-wk2/editing/.
  • platform/efl/fast/: Renamed from LayoutTests/platform/efl-wk2/fast/.
  • platform/efl/http/: Renamed from LayoutTests/platform/efl-wk2/http/.
  • platform/efl/ietestcenter: Renamed from LayoutTests/platform/efl-wk2/ietestcenter/.
  • platform/efl/inspector-protocol/debugger/setBreakpoint-dfg-and-modify-local-expected.txt: Renamed from LayoutTests/platform/efl-wk2/inspector-protocol/debugger/setBreakpoint-dfg-and-modify-local-expected.txt.
  • platform/efl/loader/go-back-cached-main-resource-expected.txt: Renamed from LayoutTests/platform/efl-wk2/loader/go-back-cached-main-resource-expected.txt.
  • platform/efl/media/video-layer-crash-expected.png: Renamed from LayoutTests/platform/efl-wk2/media/video-layer-crash-expected.png.
  • platform/efl/media/video-transformed-expected.png: Renamed from LayoutTests/platform/efl-wk2/media/video-transformed-expected.png.
  • platform/efl/media/video-zoom-controls-expected.png: Renamed from LayoutTests/platform/efl-wk2/media/video-zoom-controls-expected.png.
  • platform/efl/media/video-zoom-expected.png: Renamed from LayoutTests/platform/efl-wk2/media/video-zoom-expected.png.
  • platform/efl/plugins/npruntime/object-from-destroyed-plugin-expected.txt: Renamed from LayoutTests/platform/efl-wk2/plugins/npruntime/object-from-destroyed-plugin-expected.txt.
  • platform/efl/plugins/npruntime/object-from-destroyed-plugin-in-subframe-expected.txt: Renamed from LayoutTests/platform/efl-wk2/plugins/npruntime/object-from-destroyed-plugin-in-subframe-expected.txt.
  • platform/efl/svg/: Renamed from LayoutTests/platform/efl-wk2/svg/.
  • platform/efl/transforms/2d/hindi-rotated-expected.png:
  • platform/efl/transforms/2d/hindi-rotated-expected.txt:
6:33 AM Changeset in webkit [170289] by Csaba Osztrogonác
  • 1 edit
    110 deletes in trunk/Source/WebKit

[EFL] Remove the WebKit1 EFL code
https://bugs.webkit.org/show_bug.cgi?id=134096

Patch by Ryuan Choi <ryuan.choi@samsung.com> on 2014-06-23
Reviewed by Gyuyoung Kim.

  • PlatformEfl.cmake: Removed.
  • efl: Removed entire efl directory.
5:13 AM Changeset in webkit [170288] by k.czech@samsung.com
  • 8 edits
    3 adds in trunk

[EFL] Platform support for WebSpeech feature.
https://bugs.webkit.org/show_bug.cgi?id=116438

Reviewed by Csaba Osztrogonác.

.:
Add ENABLE_SPEECH_SYNTHESIS flag to have Speech Synthesis in EFL.

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/WebKitFeatures.cmake:

Source/WebCore:
It's a first step of adding support for Speech Synthesis in EFL port.
Just stub out required API and support for compilation.

  • CMakeLists.txt:
  • PlatformEfl.cmake:
  • PlatformGTK.cmake: Added some idls to not break GTK build.
  • platform/PlatformSpeechSynthesizer.h:
  • platform/efl/PlatformSpeechSynthesisProviderEfl.cpp: Added.

(WebCore::PlatformSpeechSynthesisProviderEfl::PlatformSpeechSynthesisProviderEfl):
(WebCore::PlatformSpeechSynthesisProviderEfl::~PlatformSpeechSynthesisProviderEfl):
(WebCore::PlatformSpeechSynthesisProviderEfl::initializeVoiceList):
(WebCore::PlatformSpeechSynthesisProviderEfl::pause):
(WebCore::PlatformSpeechSynthesisProviderEfl::resume):
(WebCore::PlatformSpeechSynthesisProviderEfl::speak):
(WebCore::PlatformSpeechSynthesisProviderEfl::cancel):

  • platform/efl/PlatformSpeechSynthesisProviderEfl.h: Added.
  • platform/efl/PlatformSpeechSynthesizerEfl.cpp: Added.

(WebCore::PlatformSpeechSynthesizer::PlatformSpeechSynthesizer):
(WebCore::PlatformSpeechSynthesizer::~PlatformSpeechSynthesizer):
(WebCore::PlatformSpeechSynthesizer::initializeVoiceList):
(WebCore::PlatformSpeechSynthesizer::pause):
(WebCore::PlatformSpeechSynthesizer::resume):
(WebCore::PlatformSpeechSynthesizer::speak):
(WebCore::PlatformSpeechSynthesizer::cancel):

4:11 AM Changeset in webkit [170287] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

Make it clear to get m_svgExtensions using svgExtensions().
https://bugs.webkit.org/show_bug.cgi?id=134186.

Patch by Jeongeun Kim <je_julie.kim@samsung.com> on 2014-06-23
Reviewed by Dirk Schulze.

This patch makes sure that the purpose of code is to get m_svgExtensions
as changing accessSVGExtensions() to svgExtensions().
svgExtensions() is a getter API and accessSVGExtensions() checks
the presence of m_svgExtensions and create m_svgExtensions if it does not exist.

No new tests, no behavior change.

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::removeChild):
(WebCore::ContainerNode::removeChildren):

  • dom/Document.cpp:

(WebCore::Document::commonTeardown):
(WebCore::Document::implicitClose):

  • history/CachedFrame.cpp:

(WebCore::CachedFrameBase::restore):

  • svg/SVGDocumentExtensions.cpp:

(WebCore::SVGDocumentExtensions::startAnimations):
(WebCore::SVGDocumentExtensions::pauseAnimations):
(WebCore::SVGDocumentExtensions::unpauseAnimations):
(WebCore::SVGDocumentExtensions::dispatchSVGLoadEventToOutermostSVGElements):
(WebCore::SVGDocumentExtensions::rebuildElements):

  • svg/SVGDocumentExtensions.h:
1:09 AM Changeset in webkit [170286] by dino@apple.com
  • 2 edits
    1 delete in trunk/LayoutTests

REGRESSION (r170257) http/tests/navigation/javascriptlink-frames.html fails on MountainLion
https://bugs.webkit.org/show_bug.cgi?id=134182

Rebaseline for Mountain Lion.

  • platform/mac-mountainlion/TestExpectations: Removed.
  • platform/mac-mountainlion/http/tests/navigation/javascriptlink-frames-expected.txt:
1:04 AM Changeset in webkit [170285] by dino@apple.com
  • 3 edits in trunk/Source/WebCore

[iOS] Use WebGLLayer rather than PlatformLayer in GraphicsContext3D
https://bugs.webkit.org/show_bug.cgi?id=134183

Reviewed by Sam Weinig.

GraphicsContext3D has a reference to a WebGLLayer that was
hidden behind a PlatformLayer. This meant we had to cast it
to use a WebGLLayer method.

  • platform/graphics/GraphicsContext3D.h: Replace RefPtr<PlatformLayer>

with RefPtr<WebGLLayer>.

  • platform/graphics/mac/GraphicsContext3DMac.mm:

(WebCore::GraphicsContext3D::~GraphicsContext3D): No need to cast.

12:27 AM Changeset in webkit [170284] by yoon@igalia.com
  • 3 edits in trunk/Source/WebKit2

Unreviewed, GTK build fix after r170274.

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

Drawing::m_webPage changed to reference.

(WebKit::DrawingAreaImpl::DrawingAreaImpl):
(WebKit::DrawingAreaImpl::setNeedsDisplay):
(WebKit::DrawingAreaImpl::setNeedsDisplayInRect):
(WebKit::DrawingAreaImpl::forceRepaint):
(WebKit::DrawingAreaImpl::updatePreferences):
(WebKit::DrawingAreaImpl::layerHostDidFlushLayers):
(WebKit::DrawingAreaImpl::updateBackingStoreState):
(WebKit::DrawingAreaImpl::sendDidUpdateBackingStoreState):
(WebKit::DrawingAreaImpl::enterAcceleratedCompositingMode):
(WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode):
(WebKit::DrawingAreaImpl::display):

  • WebProcess/WebPage/DrawingAreaImpl.h:
12:10 AM Changeset in webkit [170283] by Philippe Normand
  • 2 edits in trunk

Unreviewed, GTK build fix after r170266.

  • Source/cmake/OptionsGTK.cmake: Geoclue also requires gio-unix.

Jun 22, 2014:

9:28 PM Changeset in webkit [170282] by Alan Bujtas
  • 5 edits in trunk/Source/WebCore

Make offset from ancestor computation explicit by moving it to the callers.
https://bugs.webkit.org/show_bug.cgi?id=134168.

Reviewed by Simon Fraser.

Explicit offset computation helps code reading and less error-prone than passing
the offset pointer and compute it locally when it is null.

No change in functionality.

  • rendering/RenderLayer.cpp:

(WebCore::transparencyClipBox):
(WebCore::performOverlapTests):
(WebCore::RenderLayer::setupClipPath):
(WebCore::RenderLayer::setupFilters):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::collectFragments):
(WebCore::RenderLayer::updatePaintingInfoForFragments):
(WebCore::RenderLayer::paintTransformedLayerIntoFragments):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::hitTestTransformedLayerInFragments):
(WebCore::RenderLayer::calculateClipRects):

  • rendering/RenderLayer.h:
  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::calculateCompositedBounds):
(WebCore::RenderLayerCompositor::requiresCompositingForPosition):

  • rendering/RenderTreeAsText.cpp:

(WebCore::writeLayers):

8:46 PM Changeset in webkit [170281] by Lucas Forschler
  • 5 edits in trunk/Source

Versioning.

8:42 PM Changeset in webkit [170280] by Lucas Forschler
  • 1 copy in tags/Safari-538.42

New Tag.

7:25 PM Changeset in webkit [170279] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WebKit2

REGRESSION(r170163): It made everything crash on EFL
https://bugs.webkit.org/show_bug.cgi?id=134097

Unreviewed EFL layout test and perforamcne crash fix.

  • WebProcess/WebPage/WebPage.cpp: Add a null check for m_mainFrame.

(WebKit::WebPage::didCompletePageTransition):

7:15 PM Changeset in webkit [170278] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/Source/WebKit2

Unreviewed EFL build fix since r170274. Use reference for m_webPage member variable.

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp:

(WebKit::CoordinatedDrawingArea::CoordinatedDrawingArea):
(WebKit::CoordinatedDrawingArea::setNeedsDisplay):
(WebKit::CoordinatedDrawingArea::setNeedsDisplayInRect):
(WebKit::CoordinatedDrawingArea::forceRepaint):
(WebKit::CoordinatedDrawingArea::updatePreferences):
(WebKit::CoordinatedDrawingArea::mainFrameContentSizeChanged):
(WebKit::CoordinatedDrawingArea::layerHostDidFlushLayers):
(WebKit::CoordinatedDrawingArea::updateBackingStoreState):
(WebKit::CoordinatedDrawingArea::sendDidUpdateBackingStoreState):
(WebKit::CoordinatedDrawingArea::suspendPainting):
(WebKit::CoordinatedDrawingArea::resumePainting):
(WebKit::CoordinatedDrawingArea::enterAcceleratedCompositingMode):
(WebKit::CoordinatedDrawingArea::display):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h:
6:32 PM Changeset in webkit [170277] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

[iOS][wk2] Swiping back sometimes results in a missing (not blank) swipe snapshot
https://bugs.webkit.org/show_bug.cgi?id=134181

Reviewed by Benjamin Poulain.

  • UIProcess/ios/ViewGestureControllerIOS.mm:

(WebKit::ViewGestureController::ViewGestureController):
(WebKit::ViewGestureController::endSwipeGesture):
(WebKit::ViewGestureController::setRenderTreeSize):
(WebKit::ViewGestureController::removeSwipeSnapshot):

  • UIProcess/mac/ViewGestureController.h:

Make it explicit that we should only remove the swipe snapshot when a
big-enough render tree size arrives *after the swipe ends*.

6:19 PM Changeset in webkit [170276] by beidson@apple.com
  • 1 edit
    1 add in trunk/LayoutTests

REGRESSION (r170257) http/tests/navigation/javascriptlink-frames.html fails on MountainLion
https://bugs.webkit.org/show_bug.cgi?id=134182

Unreviewed gardening.

  • platform/mac-mountainlion/TestExpectations: Added, skip the test.
6:02 PM Changeset in webkit [170275] by fpizlo@apple.com
  • 13 edits
    9 adds in branches/ftlopt

[ftlopt] Fold GetById/PutById to MultiGetByOffset/GetByOffset or MultiPutByOffset/PutByOffset, which implies handling non-singleton sets
https://bugs.webkit.org/show_bug.cgi?id=134090

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

This pretty much finishes off the work to eliminate the special-casing of singleton
structure sets by making it possible to fold GetById and PutById to various polymorphic
forms of the ByOffset nodes.

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeForStubInfo):
(JSC::GetByIdStatus::computeFor):

  • bytecode/GetByIdStatus.h:
  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeFor):

  • bytecode/PutByIdStatus.h:
  • bytecode/PutByIdVariant.h:

(JSC::PutByIdVariant::constantChecks):

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::foldConstants):
(JSC::DFG::ConstantFoldingPhase::emitPutByOffset):
(JSC::DFG::ConstantFoldingPhase::addChecks):

  • dfg/DFGNode.h:

(JSC::DFG::Node::convertToMultiGetByOffset):
(JSC::DFG::Node::convertToMultiPutByOffset):

  • dfg/DFGSpeculativeJIT64.cpp: Also convert all release assertions to DFG assertions in this file, because I was hitting some of them while debugging.

(JSC::DFG::SpeculativeJIT::fillJSValue):
(JSC::DFG::SpeculativeJIT::nonSpeculativeCompareNull):
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt32Internal):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt32Strict):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt52):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compileLogicalNot):
(JSC::DFG::SpeculativeJIT::emitBranch):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGStructureAbstractValue.h:

(JSC::DFG::StructureAbstractValue::set):

LayoutTests:

  • js/regress/fold-get-by-id-to-multi-get-by-offset-expected.txt: Added.
  • js/regress/fold-get-by-id-to-multi-get-by-offset-rare-int-expected.txt: Added.
  • js/regress/fold-get-by-id-to-multi-get-by-offset-rare-int.html: Added.
  • js/regress/fold-get-by-id-to-multi-get-by-offset.html: Added.
  • js/regress/fold-put-by-id-to-multi-put-by-offset-expected.txt: Added.
  • js/regress/fold-put-by-id-to-multi-put-by-offset.html: Added.
  • js/regress/script-tests/fold-get-by-id-to-multi-get-by-offset-rare-int.js: Added.

(foo):
(fu):
(bar):
(.bar):
(Number):

  • js/regress/script-tests/fold-get-by-id-to-multi-get-by-offset.js: Added.

(foo):
(fu):
(bar):
(.bar):
(Number):

  • js/regress/script-tests/fold-put-by-id-to-multi-put-by-offset.js: Added.

(foo):
(fu):
(bar):
(.bar):

5:51 PM Changeset in webkit [170274] by timothy_horton@apple.com
  • 22 edits in trunk/Source/WebKit2

Thread some references through the remote layer tree code
https://bugs.webkit.org/show_bug.cgi?id=134177

Reviewed by Zalan Bujtas.

A first pass at references for never-null things (first pass because I didn't touch the collections).
Things that aren't straightforward reference-threading:

  • Shared/mac/RemoteLayerBackingStoreCollection.h:
  • Shared/mac/RemoteLayerBackingStoreCollection.mm:

Remove the unimplemented/nonexistant RemoteLayerBackingStoreCollection::create.
Make RemoteLayerBackingStoreCollection constructor not take a context, because m_context is never used.

  • WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:

Factor out grabbing the PlatformLayerID in a few places.

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

Use WebPage::mainFrameView() instead of WebPage::corePage()->mainFrame().view().

  • Shared/mac/RemoteLayerTreeTransaction.h:
  • Shared/mac/RemoteLayerTreeTransaction.mm:
  • WebProcess/WebPage/DrawingArea.cpp:
  • WebProcess/WebPage/DrawingArea.h:
  • WebProcess/WebPage/WebPage.cpp:
  • WebProcess/WebPage/mac/GraphicsLayerCARemote.h:
  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
  • WebProcess/WebPage/mac/PlatformCALayerRemote.h:
  • WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.h:
  • WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.mm:om):
  • WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.cpp:
  • WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.h:
  • Shared/mac/RemoteLayerBackingStore.mm:

References.

5:34 PM Changeset in webkit [170273] by Alan Bujtas
  • 5 edits in trunk/Source/WebCore

Transition layer offsets from LayoutPoint to LayoutSize.
https://bugs.webkit.org/show_bug.cgi?id=134156

Reviewed by Simon Fraser.

Use better representation for offset values.

No change in functionality.

  • platform/graphics/LayoutSize.h:

(WebCore::roundedForPainting):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::fragmentsBoundingBox):

  • rendering/RenderLayer.cpp:

(WebCore::expandClipRectForDescendantsAndReflection):
(WebCore::RenderLayer::convertToLayerCoords):
(WebCore::computeReferenceBox):
(WebCore::RenderLayer::setupClipPath):
(WebCore::RenderLayer::setupFilters):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::paintLayerByApplyingTransform):
(WebCore::RenderLayer::collectFragments):
(WebCore::RenderLayer::updatePaintingInfoForFragments):
(WebCore::RenderLayer::paintTransformedLayerIntoFragments):
(WebCore::RenderLayer::createLocalTransformState):
(WebCore::RenderLayer::hitTestTransformedLayerInFragments):
(WebCore::RenderLayer::hitTestLayerByApplyingTransform):
(WebCore::RenderLayer::calculateClipRects):

  • rendering/RenderLayer.h:
  • rendering/RenderMultiColumnSet.cpp:

(WebCore::RenderMultiColumnSet::collectLayerFragments):

5:13 PM Changeset in webkit [170272] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

Attempted iOS build fix.

  • platform/graphics/mac/GraphicsContext3DMac.mm:

(WebCore::GraphicsContext3D::~GraphicsContext3D): Cast to WebGLLayer.

5:00 PM Changeset in webkit [170271] by dino@apple.com
  • 4 edits in trunk/Source/WebCore

[Apple] WebGL layer may use GC3D after free with remote layer hosting
https://bugs.webkit.org/show_bug.cgi?id=134179
<rdar://problem/17412931>

Reviewed by Tim Horton.

With remote layer hosting, a WebGLLayer may attempt to draw after
the GraphicsContext3D has been destroyed. We need to make sure
the GC3D tells the WebGLLayer that it is no longer valid.

While here, I changed some return 0 to return nullptr, the
name of the ObjC property member from m_context to _context,
and removed some unnecessary .get() calls.

This is tested by run-webkit-tests with the --remote-layer-tree
option.

  • platform/graphics/mac/GraphicsContext3DMac.mm:

(WebCore::GraphicsContext3D::GraphicsContext3D): No need for .get().
(WebCore::GraphicsContext3D::~GraphicsContext3D): Set the context reference on WebGLLayer
to be null.
(WebCore::GraphicsContext3D::setRenderbufferStorageFromDrawable): No need for .get().

  • platform/graphics/mac/WebGLLayer.h: Set the context reference on WebGLLayer

to be null.

  • platform/graphics/mac/WebGLLayer.mm:

(-[WebGLLayer initWithGraphicsContext3D:]): Rename m_context to _context.
(-[WebGLLayer copyCGLPixelFormatForDisplayMask:]): Check for null.
(-[WebGLLayer copyCGLContextForPixelFormat:]): Rename to _context.
(-[WebGLLayer drawInCGLContext:pixelFormat:forLayerTime:displayTime:]): Check for null.
(-[WebGLLayer copyImageSnapshotWithColorSpace:]): Ditto.
(-[WebGLLayer display]): Ditto.

11:35 AM Changeset in webkit [170270] by Simon Fraser
  • 4 edits
    3 adds in trunk

[WK2] Frameset frames are not scrollable after loading (and should be)
https://bugs.webkit.org/show_bug.cgi?id=134151
<rdar://problem/17403365>

Reviewed by Dan Bates.

Source/WebCore:
When loading a <frameset>, we could end up with an empty non-fast-scrollable
region for the main frame, because after the initial frameset document layout,
nothing updated the non-fast scrollable region as the subframes added their
scrollable areas to the the main frame's scrollable area set.

Fix by having addScrollableArea() and removeScrollableArea() trigger an update
of the non-fast scrollable region.

Test: platform/mac-wk2/tiled-drawing/scrolling/frames/frameset-frame-scrollability.html

  • page/FrameView.cpp:

(WebCore::FrameView::addScrollableArea):
(WebCore::FrameView::removeScrollableArea):
(WebCore::FrameView::scrollableAreaSetChanged):

  • page/FrameView.h:

LayoutTests:
Frameset test that dumps the scrolling tree.

  • platform/mac-wk2/tiled-drawing/scrolling/frames/frameset-frame-scrollability.html: Added.
  • platform/mac-wk2/tiled-drawing/scrolling/frames/resources/scrollable-page.html: Added.
11:21 AM Changeset in webkit [170269] by andersca@apple.com
  • 8 edits in trunk/Source/WebKit2

Replace a couple of uses of bind with lambdas
https://bugs.webkit.org/show_bug.cgi?id=134172

Reviewed by Sam Weinig.

  • Platform/IPC/Connection.cpp:

(IPC::Connection::postConnectionDidCloseOnConnectionWorkQueue):
(IPC::Connection::connectionDidClose):
(IPC::Connection::dispatchMessage):
(IPC::Connection::dispatchConnectionDidClose): Deleted.

  • Platform/IPC/Connection.h:
  • Shared/Plugins/NPObjectProxy.cpp:

(WebKit::NPObjectProxy::NP_Deallocate):

  • UIProcess/Storage/LocalStorageDatabase.cpp:

(WebKit::LocalStorageDatabase::scheduleDatabaseUpdate):

  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::NetscapePlugin::pluginThreadAsyncCall):
(WebKit::NetscapePlugin::handlePluginThreadAsyncCall): Deleted.

  • WebProcess/Plugins/Netscape/NetscapePlugin.h:
  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::forceRepaintAsync):
(WebKit::TiledCoreAnimationDrawingArea::dispatchAfterEnsuringUpdatedScrollPosition):

11:09 AM Changeset in webkit [170268] by commit-queue@webkit.org
  • 36 edits in trunk/Source/WebCore

Unreviewed, rolling out r170265.
https://bugs.webkit.org/show_bug.cgi?id=134174

Broke editing tests (Requested by litherum on #webkit).

Reverted changeset:

"Use unsigneds instead of ints for indexes into a string in
text layout code"
https://bugs.webkit.org/show_bug.cgi?id=133592
http://trac.webkit.org/changeset/170265

11:06 AM Changeset in webkit [170267] by Simon Fraser
  • 11 edits in trunk

Have scrollingTreeAsText() dump the non-fast-scrollable region
https://bugs.webkit.org/show_bug.cgi?id=134149

Reviewed by Sam Weinig.

Source/WebCore:

Dump the non-fast-scrollable region (as an array of rects).

  • WebCore.exp.in:
  • page/scrolling/ScrollingStateFrameScrollingNode.cpp:

(WebCore::ScrollingStateFrameScrollingNode::dumpProperties):

Source/WebKit2:

Dump the non-fast-scrollable region (as an array of rects).

  • Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:

(WebKit::RemoteScrollingTreeTextStream::dump):

LayoutTests:

Rebaselined.

  • platform/mac-wk2/tiled-drawing/scrolling/fixed/fixed-in-overflow-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-gain-scrolling-ancestor-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-in-fixed-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-lose-scrolling-ancestor-expected.txt:
10:49 AM Changeset in webkit [170266] by gyuyoung.kim@samsung.com
  • 2 edits in trunk

Disable gamepad feature on EFL and GTK ports by default
https://bugs.webkit.org/show_bug.cgi?id=134169

Reviewed by Brady Eidson.

  • Source/cmake/OptionsEfl.cmake: Disable ENABLE_GAMEPAD_DEPRECATED.
10:17 AM Changeset in webkit [170265] by mmaxfield@apple.com
  • 36 edits in trunk/Source/WebCore

Use unsigneds instead of ints for indexes into a string in text layout code
https://bugs.webkit.org/show_bug.cgi?id=133592

Reviewed by Zalan Bujtas.

Migrate much of the text-handling code to use unsigneds for indexes into a string.

No new tests because there is no behavior change.

  • WebCore.exp.in:
  • platform/graphics/Font.cpp:

(WebCore::Font::drawText):
(WebCore::Font::drawEmphasisMarks):
(WebCore::Font::adjustSelectionRectForText):
(WebCore::computeUnderlineType):

  • platform/graphics/Font.h:
  • platform/graphics/FontFastPath.cpp:

(WebCore::Font::getGlyphsAndAdvancesForSimpleText):
(WebCore::Font::drawSimpleText):
(WebCore::Font::drawEmphasisMarksForSimpleText):
(WebCore::Font::drawGlyphBuffer):
(WebCore::Font::drawEmphasisMarks):
(WebCore::Font::adjustSelectionRectForSimpleText):

  • platform/graphics/GlyphBuffer.h:

(WebCore::GlyphBuffer::size):
(WebCore::GlyphBuffer::glyphs):
(WebCore::GlyphBuffer::advances):
(WebCore::GlyphBuffer::fontDataAt):
(WebCore::GlyphBuffer::advanceAt):
(WebCore::GlyphBuffer::offsetAt):
(WebCore::GlyphBuffer::reverse):
(WebCore::GlyphBuffer::offsetInString):
(WebCore::GlyphBuffer::swap):

  • platform/graphics/GraphicsContext.cpp:

(WebCore::TextRunIterator::atEnd):

  • platform/graphics/Latin1TextIterator.h:

(WebCore::Latin1TextIterator::Latin1TextIterator):
(WebCore::Latin1TextIterator::currentCharacter):

  • platform/graphics/SimpleFontData.h:
  • platform/graphics/SurrogatePairAwareTextIterator.cpp:

(WebCore::SurrogatePairAwareTextIterator::SurrogatePairAwareTextIterator):

  • platform/graphics/SurrogatePairAwareTextIterator.h:

(WebCore::SurrogatePairAwareTextIterator::currentCharacter):

  • platform/graphics/TextRun.h:

(WebCore::TextRun::length):
(WebCore::TextRun::charactersLength):

  • platform/graphics/WidthIterator.cpp:

(WebCore::WidthIterator::glyphDataForCharacter):
(WebCore::applyFontTransforms):
(WebCore::WidthIterator::advanceInternal):
(WebCore::WidthIterator::advance):
(WebCore::WidthIterator::advanceOneCharacter):

  • platform/graphics/WidthIterator.h:
  • platform/graphics/cairo/FontCairo.cpp:

(WebCore::Font::drawGlyphs):

  • platform/graphics/cairo/FontCairoHarfbuzzNG.cpp:

(WebCore::Font::drawComplexText):
(WebCore::Font::drawEmphasisMarksForComplexText):
(WebCore::Font::adjustSelectionRectForComplexText):

  • platform/graphics/harfbuzz/HarfBuzzShaper.cpp:

(WebCore::HarfBuzzShaper::setNormalizedBuffer):

  • platform/graphics/mac/FontComplexTextMac.cpp:

(WebCore::Font::adjustSelectionRectForComplexText):
(WebCore::Font::getGlyphsAndAdvancesForComplexText):
(WebCore::Font::drawComplexText):
(WebCore::Font::drawEmphasisMarksForComplexText):

  • platform/graphics/mac/FontMac.mm:

(WebCore::Font::drawGlyphs):

  • platform/graphics/win/FontCGWin.cpp:

(WebCore::Font::drawGlyphs):

  • platform/graphics/win/FontWin.cpp:

(WebCore::Font::adjustSelectionRectForComplexText):
(WebCore::Font::getGlyphsAndAdvancesForComplexText):
(WebCore::Font::drawComplexText):
(WebCore::Font::drawEmphasisMarksForComplexText):

  • platform/graphics/wince/FontWinCE.cpp:

(WebCore::Font::drawGlyphs):
(WebCore::Font::drawComplexText):
(WebCore::Font::drawEmphasisMarksForComplexText):
(WebCore::Font::selectionRectForComplexText):

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::isSelected):
(WebCore::InlineTextBox::selectionState):
(WebCore::adjustCharactersAndLengthForHyphen):
(WebCore::InlineTextBox::localSelectionRect):
(WebCore::InlineTextBox::paint):
(WebCore::InlineTextBox::selectionStartEnd):
(WebCore::InlineTextBox::paintSelection):
(WebCore::InlineTextBox::paintCompositionBackground):
(WebCore::InlineTextBox::paintDocumentMarker):
(WebCore::InlineTextBox::paintTextMatchMarker):
(WebCore::InlineTextBox::computeRectForReplacementMarker):
(WebCore::InlineTextBox::paintCompositionUnderline):
(WebCore::InlineTextBox::positionForOffset):
(WebCore::InlineTextBox::constructTextRun):

  • rendering/InlineTextBox.h:
  • rendering/RenderCombineText.cpp:

(WebCore::RenderCombineText::getStringToRender):

  • rendering/RenderCombineText.h:
  • rendering/svg/SVGInlineFlowBox.cpp:

(WebCore::SVGInlineFlowBox::computeTextMatchMarkerRectForRenderer):

  • rendering/svg/SVGInlineTextBox.cpp:

(WebCore::SVGInlineTextBox::positionForOffset):
(WebCore::SVGInlineTextBox::localSelectionRect):
(WebCore::SVGInlineTextBox::paintSelectionBackground):
(WebCore::SVGInlineTextBox::mapStartEndPositionsIntoFragmentCoordinates):
(WebCore::SVGInlineTextBox::paintText):

  • rendering/svg/SVGInlineTextBox.h:
  • rendering/svg/SVGTextMetricsBuilder.cpp:

(WebCore::SVGTextMetricsBuilder::currentCharacterStartsSurrogatePair):
(WebCore::SVGTextMetricsBuilder::advance):

  • rendering/svg/SVGTextQuery.cpp:

(WebCore::SVGTextQuery::mapStartEndPositionsIntoFragmentCoordinates):
(WebCore::SVGTextQuery::modifyStartEndPositionsRespectingLigatures):
(WebCore::SVGTextQuery::subStringLengthCallback):
(WebCore::SVGTextQuery::startPositionOfCharacterCallback):
(WebCore::SVGTextQuery::endPositionOfCharacterCallback):
(WebCore::SVGTextQuery::rotationOfCharacterCallback):
(WebCore::SVGTextQuery::extentOfCharacterCallback):
(WebCore::SVGTextQuery::characterNumberAtPositionCallback):

  • rendering/svg/SVGTextQuery.h:
  • rendering/svg/SVGTextRunRenderingContext.cpp:

(WebCore::SVGGlyphToPathTranslator::SVGGlyphToPathTranslator):
(WebCore::SVGTextRunRenderingContext::glyphDataForCharacter):

  • rendering/svg/SVGTextRunRenderingContext.h:
  • svg/SVGFontData.cpp:

(WebCore::SVGFontData::applySVGGlyphSelection):

  • svg/SVGFontData.h:
9:58 AM Changeset in webkit [170264] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Add IPC decoding support to BackForwardListState
https://bugs.webkit.org/show_bug.cgi?id=134171

Reviewed by Dan Bernstein.

  • Shared/SessionState.cpp:

(WebKit::isValidEnum):
(WebKit::HTTPBody::Element::decode):
(WebKit::HTTPBody::decode):
(WebKit::FrameState::decode):
(WebKit::PageState::decode):
(WebKit::BackForwardListState::decode):

  • Shared/SessionState.h:
9:47 AM Changeset in webkit [170263] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Address a review comment.

  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::HistoryEntryDataDecoder::markInvalid):
(WebKit::decodeFormDataElement):

9:34 AM Changeset in webkit [170262] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Implement the rest of back forward tree decoding
https://bugs.webkit.org/show_bug.cgi?id=134166

Reviewed by Sam Weinig.

  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::HistoryEntryDataDecoder::operator>>):
(WebKit::decodeFormDataElement):
(WebKit::decodeFormData):
(WebKit::decodeBackForwardTreeNode):

9:33 AM Changeset in webkit [170261] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

[iOS] WKWebViewConfiguration.allowsInlineMediaPlayback has no effect
https://bugs.webkit.org/show_bug.cgi?id=134170

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView initWithFrame:configuration:]): Fixed a typo.

Jun 21, 2014:

10:52 PM Changeset in webkit [170260] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Tools

Disable gamepad feature on EFL and GTK ports by default
https://bugs.webkit.org/show_bug.cgi?id=134169

Reviewed by Brady Eidson.

EFL and GTK ports disabled Gamepad feature now. Besides current implementation
was treated to 'deprecated' status.

ENABLE_GAMEPAD_DEPRECATED is disabled for now. There is build break on EFL port.

  • Scripts/webkitperl/FeatureList.pm:
10:50 PM Changeset in webkit [170259] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

createCairoGLSurface should take in a FloatSize reference as its first parameter
https://bugs.webkit.org/show_bug.cgi?id=134159

Reviewed by Martin Robinson.

The ImageBuffer constructor operates with a FloatSize reference, which is also
passed to createCairoGLSurface when accelerated 2D canvas support is enabled.
That function should take in a reference to the same type.

  • platform/graphics/cairo/ImageBufferCairo.cpp:

(WebCore::createCairoGLSurface):

10:46 PM Changeset in webkit [170258] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed. Fixing the GTK+ build after r170253.

  • UIProcess/API/gtk/WebKitSettings.cpp:

(_WebKitSettingsPrivate::_WebKitSettingsPrivate): WebPreferences::create()
now takes an additional String argument.

4:55 PM Changeset in webkit [170257] by dino@apple.com
  • 46 edits
    3 adds in trunk

[Mac] Margins for new form controls need tweaking
https://bugs.webkit.org/show_bug.cgi?id=134135
<rdar://problem/17262164>

Reviewed by Sam Weinig.

Source/WebCore:
Take 2 of this patch. Only the mac-mountainlion LayoutTest
results are different from the first attempt.

With the newer animated controls in OS X Yosemite, we need
to tweak the fudge-factor margins for positioning. In a recent
patch I added another fudge, which I'm removing with this. I'm
not sure where the older values came from, but I've checked with
the latest AppKit sources and am using the sizes they implement
for the controls.

This will rebaseline a lot of tests, since I've made small tweaks
to the form layout.

  • platform/mac/ThemeMac.mm:

(WebCore::checkboxMargins): New margin amounts.
(WebCore::radioSizes): New sizes.
(WebCore::radioMargins): New margin amounts.
(WebCore::paintToggleButton): No need to call the positioning fudge any more.
(WebCore::checkboxOffsets): Deleted.
(WebCore::radioOffsets): Deleted.

LayoutTests:
Take 2 of this patch adds some Mountain Lion results.

Rebaseline a bunch of results since some <input> dimensions
changed slightly.

  • platform/mac-mountainlion/fast/block/margin-collapse/103-expected.txt:
  • platform/mac-mountainlion/fast/forms/basic-inputs-expected.png: Added.
  • platform/mac-mountainlion/fast/forms/basic-inputs-expected.txt:
  • platform/mac-mountainlion/fast/forms/box-shadow-override-expected.txt:
  • platform/mac-mountainlion/fast/forms/form-element-geometry-expected.png: Added.
  • platform/mac-mountainlion/fast/forms/form-element-geometry-expected.txt:
  • platform/mac-mountainlion/fast/forms/input-appearance-height-expected.txt:
  • platform/mac-mountainlion/fast/forms/input-value-expected.txt:
  • platform/mac-mountainlion/fast/replaced/replaced-breaking-expected.txt:
  • platform/mac-mountainlion/http/tests/navigation/javascriptlink-frame-expected.txt: Added.
  • platform/mac-mountainlion/tables/mozilla/bugs/bug4527-expected.txt:
  • platform/mac/css1/box_properties/acid_test-expected.png:
  • platform/mac/css1/box_properties/acid_test-expected.txt:
  • platform/mac/css2.1/t09-c5526c-display-00-e-expected.png:
  • platform/mac/css2.1/t09-c5526c-display-00-e-expected.txt:
  • platform/mac/fast/block/basic/011-expected.png:
  • platform/mac/fast/block/basic/011-expected.txt:
  • platform/mac/fast/block/margin-collapse/103-expected.png:
  • platform/mac/fast/block/margin-collapse/103-expected.txt:
  • platform/mac/fast/forms/basic-inputs-expected.png:
  • platform/mac/fast/forms/basic-inputs-expected.txt:
  • platform/mac/fast/forms/box-shadow-override-expected.png:
  • platform/mac/fast/forms/box-shadow-override-expected.txt:
  • platform/mac/fast/forms/form-element-geometry-expected.png:
  • platform/mac/fast/forms/form-element-geometry-expected.txt:
  • platform/mac/fast/forms/formmove-expected.txt:
  • platform/mac/fast/forms/formmove2-expected.png:
  • platform/mac/fast/forms/formmove2-expected.txt:
  • platform/mac/fast/forms/input-appearance-height-expected.png:
  • platform/mac/fast/forms/input-appearance-height-expected.txt:
  • platform/mac/fast/forms/input-value-expected.png:
  • platform/mac/fast/forms/input-value-expected.txt:
  • platform/mac/fast/inline/positionedLifetime-expected.txt:
  • platform/mac/fast/replaced/replaced-breaking-expected.png:
  • platform/mac/fast/replaced/replaced-breaking-expected.txt:
  • platform/mac/fast/replaced/width100percent-radio-expected.txt:
  • platform/mac/http/tests/navigation/javascriptlink-frames-expected.png:
  • platform/mac/http/tests/navigation/javascriptlink-frames-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug1318-expected.png:
  • platform/mac/tables/mozilla/bugs/bug1318-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug4527-expected.png:
  • platform/mac/tables/mozilla/bugs/bug4527-expected.txt:
  • platform/mac/tables/mozilla_expected_failures/core/captions1-expected.png:
  • platform/mac/tables/mozilla_expected_failures/core/captions1-expected.txt:
  • platform/mac/tables/mozilla_expected_failures/core/captions2-expected.png:
  • platform/mac/tables/mozilla_expected_failures/core/captions2-expected.txt:
4:27 PM Changeset in webkit [170256] by weinig@apple.com
  • 39 edits in trunk/Source

Remove static tables for bindings that use eager reification
https://bugs.webkit.org/show_bug.cgi?id=134126

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

  • runtime/JSObject.cpp:

(JSC::JSObject::putDirectCustomAccessor):

  • runtime/Structure.h:

(JSC::Structure::setHasCustomGetterSetterProperties):
Change setHasCustomGetterSetterProperties to behave like setHasGetterSetterProperties, and set
the m_hasReadOnlyOrGetterSetterPropertiesExcludingProto bit if the property is not proto.
Without this, JSObject::put() won't think there are any setters on the prototype chain of an
object that has no static lookup table and uses eagerly reified custom getter/setter properties.

Source/WebCore:
This shaves about 1MB off of WebCore's .o files.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):
(GenerateImplementation):
(GenerateConstructorHelperMethods):

  • bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
  • bindings/scripts/test/JS/JSTestActiveDOMObject.h:
  • bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
  • bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
  • bindings/scripts/test/JS/JSTestEventConstructor.cpp:
  • bindings/scripts/test/JS/JSTestEventConstructor.h:
  • bindings/scripts/test/JS/JSTestEventTarget.cpp:
  • bindings/scripts/test/JS/JSTestEventTarget.h:
  • bindings/scripts/test/JS/JSTestException.cpp:
  • bindings/scripts/test/JS/JSTestException.h:
  • bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
  • bindings/scripts/test/JS/JSTestGenerateIsReachable.h:
  • bindings/scripts/test/JS/JSTestInterface.cpp:
  • bindings/scripts/test/JS/JSTestInterface.h:
  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
  • bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
  • bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
  • bindings/scripts/test/JS/JSTestNamedConstructor.h:
  • bindings/scripts/test/JS/JSTestNode.cpp:
  • bindings/scripts/test/JS/JSTestNode.h:
  • bindings/scripts/test/JS/JSTestNondeterministic.cpp:
  • bindings/scripts/test/JS/JSTestNondeterministic.h:
  • bindings/scripts/test/JS/JSTestObj.cpp:
  • bindings/scripts/test/JS/JSTestObj.h:
  • bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
  • bindings/scripts/test/JS/JSTestOverloadedConstructors.h:
  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
  • bindings/scripts/test/JS/JSTestTypedefs.cpp:
  • bindings/scripts/test/JS/JSTestTypedefs.h:
  • bindings/scripts/test/JS/JSattribute.cpp:
  • bindings/scripts/test/JS/JSattribute.h:
  • bindings/scripts/test/JS/JSreadonly.cpp:
  • bindings/scripts/test/JS/JSreadonly.h:
3:33 PM Changeset in webkit [170255] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Tried to fix the iOS build after r170235.

  • WebView/WebView.mm:
3:25 PM Changeset in webkit [170254] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

CallbackMap::put should be able to take an unwrapped function
https://bugs.webkit.org/show_bug.cgi?id=134104

Reviewed by Anders Carlsson.

  • UIProcess/GenericCallback.h:

(WebKit::CallbackMap::put): Added an overload that takes a function and creates and puts a
callback. Changed both overloads of put() to return the callback ID.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::validateCommand):
(WebKit::WebPageProxy::runJavaScriptInMainFrame):
(WebKit::WebPageProxy::getRenderTreeExternalRepresentation):
(WebKit::WebPageProxy::getSourceForFrame):
(WebKit::WebPageProxy::getContentsAsString):
(WebKit::WebPageProxy::getBytecodeProfile):
(WebKit::WebPageProxy::getContentsAsMHTMLData):
(WebKit::WebPageProxy::getSelectionOrContentsAsString):
(WebKit::WebPageProxy::getSelectionAsWebArchiveData):
(WebKit::WebPageProxy::getMainResourceDataOfFrame):
(WebKit::WebPageProxy::getResourceDataFromFrame):
(WebKit::WebPageProxy::getWebArchiveOfFrame):
(WebKit::WebPageProxy::getMarkedRangeAsync):
(WebKit::WebPageProxy::getSelectedRangeAsync):
(WebKit::WebPageProxy::characterIndexForPointAsync):
(WebKit::WebPageProxy::firstRectForCharacterRangeAsync):
(WebKit::WebPageProxy::takeSnapshot):

3:02 PM Changeset in webkit [170253] by andersca@apple.com
  • 11 edits in trunk/Source/WebKit2

Make it possible to override debug preferences on a per-identifier basis as well as globally
https://bugs.webkit.org/show_bug.cgi?id=134164

Reviewed by Dan Bernstein.

  • Shared/WebPreferencesDefinitions.h:
  • Shared/WebPreferencesKeys.cpp:
  • Shared/WebPreferencesKeys.h:
  • Shared/WebPreferencesStore.cpp:

(WebKit::defaults):

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesCreate):
(WKPreferencesCreateWithIdentifier):

  • UIProcess/API/Cocoa/WKPreferences.mm:

(-[WKPreferences init]):

  • UIProcess/WebPageGroup.cpp:

(WebKit::WebPageGroup::WebPageGroup):

  • UIProcess/WebPreferences.cpp:

(WebKit::WebPreferences::create):
(WebKit::WebPreferences::createWithLegacyDefaults):
(WebKit::WebPreferences::WebPreferences):

  • UIProcess/WebPreferences.h:
  • UIProcess/mac/WebPreferencesMac.mm:

(WebKit::makeKey):
(WebKit::debugUserDefaultsValue):
(WebKit::setDebugBoolValueIfInUserDefaults):
(WebKit::WebPreferences::platformInitializeStore):

2:01 PM Changeset in webkit [170252] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Begin work on decoding form data
https://bugs.webkit.org/show_bug.cgi?id=134163

Reviewed by Sam Weinig.

  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::HistoryEntryDataDecoder::operator>>):
(WebKit::HistoryEntryDataDecoder::isValid):
(WebKit::isValidEnum):
(WebKit::decodeFormDataElement):
(WebKit::decodeFormData):
(WebKit::decodeBackForwardTreeNode):

1:05 PM Changeset in webkit [170251] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Only initialize WebPreferences from NSUserDefaults if there's an identifier
https://bugs.webkit.org/show_bug.cgi?id=134162

Reviewed by Sam Weinig.

We don't want to allow changing preferences by registering user defaults.

  • UIProcess/mac/WebPreferencesMac.mm:

(WebKit::makeKey):
(WebKit::WebPreferences::platformInitializeStore):

12:41 PM Changeset in webkit [170250] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Begin work on decoding the back/forward tree
https://bugs.webkit.org/show_bug.cgi?id=134161

Reviewed by Sam Weinig.

  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::LegacySessionStateDecoder::decodeSessionHistoryEntries):
(WebKit::HistoryEntryDataDecoder::operator>>):
(WebKit::HistoryEntryDataDecoder::decodeArithmeticType):
(WebKit::HistoryEntryDataDecoder::bufferIsLargeEnoughToContain):
(WebKit::decodeBackForwardTreeNode):
(WebKit::LegacySessionStateDecoder::decodeSessionHistoryEntryData):
(WebKit::HistoryEntryDataDecoder::decode): Deleted.

12:07 PM Changeset in webkit [170249] by beidson@apple.com
  • 22 edits
    9 moves
    1 add in trunk

Gamepad API - Deprecate the existing implementation
https://bugs.webkit.org/show_bug.cgi?id=134108

Reviewed by Timothy Hatcher.

-Add new "GAMEPAD_DEPRECATED" build flag, moving the existing implementation to use it

.:
-Add the "Deprecated" suffix to some implementation files

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsGTK.cmake:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:
-Move some implementation files into a "deprecated" subdirectory.

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:
-Move some implementation files into a "deprecated" subdirectory.

  • CMakeLists.txt:
  • Configurations/FeatureDefines.xcconfig:
  • PlatformGTK.cmake:
  • Modules/gamepad/deprecated/Gamepad.cpp: Renamed from Source/WebCore/Modules/gamepad/Gamepad.cpp.
  • Modules/gamepad/deprecated/Gamepad.h: Renamed from Source/WebCore/Modules/gamepad/Gamepad.h.
  • Modules/gamepad/deprecated/Gamepad.idl: Renamed from Source/WebCore/Modules/gamepad/Gamepad.idl.
  • Modules/gamepad/deprecated/GamepadList.cpp: Renamed from Source/WebCore/Modules/gamepad/GamepadList.cpp.
  • Modules/gamepad/deprecated/GamepadList.h: Renamed from Source/WebCore/Modules/gamepad/GamepadList.h.
  • Modules/gamepad/deprecated/GamepadList.idl: Renamed from Source/WebCore/Modules/gamepad/GamepadList.idl.
  • Modules/gamepad/deprecated/NavigatorGamepad.cpp: Renamed from Source/WebCore/Modules/gamepad/NavigatorGamepad.cpp.
  • Modules/gamepad/deprecated/NavigatorGamepad.h: Renamed from Source/WebCore/Modules/gamepad/NavigatorGamepad.h.
  • Modules/gamepad/deprecated/NavigatorGamepad.idl: Renamed from Source/WebCore/Modules/gamepad/NavigatorGamepad.idl.
  • platform/Gamepads.h:
  • platform/efl/GamepadsEfl.cpp:
  • platform/gtk/GamepadsGtk.cpp:
  • platform/linux/GamepadDeviceLinux.cpp:
  • platform/linux/GamepadDeviceLinux.h:

Source/WebKit/mac:
-Move some implementation files into a "deprecated" subdirectory.

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:
-Move some implementation files into a "deprecated" subdirectory.

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:
-Move some implementation files into a "deprecated" subdirectory.

  • wtf/FeatureDefines.h:
11:52 AM Changeset in webkit [170248] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Implement more of HistoryEntryDataDecoder
https://bugs.webkit.org/show_bug.cgi?id=134146

Reviewed by Sam Weinig.

  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::HistoryEntryDataDecoder::HistoryEntryDataDecoder):
(WebKit::HistoryEntryDataDecoder::operator>>):
(WebKit::HistoryEntryDataDecoder::decode):
(WebKit::HistoryEntryDataDecoder::decodeFixedLengthData):
(WebKit::HistoryEntryDataDecoder::alignBufferPosition):
(WebKit::HistoryEntryDataDecoder::alignedBuffer):
(WebKit::HistoryEntryDataDecoder::alignedBufferIsLargeEnoughToContain):
(WebKit::HistoryEntryDataDecoder::markInvalid):
(WebKit::LegacySessionStateDecoder::decodeSessionHistoryEntryData):

11:27 AM Changeset in webkit [170247] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

Mark TextRun's constructors as explicit
https://bugs.webkit.org/show_bug.cgi?id=134124

Reviewed by Sam Weinig.

After r170072, nobody is implicitly converting a string to a TextRun. Therefore,
we can make the constructors explicit.

No new tests because there is no behavior change.

  • platform/graphics/TextRun.h:

(WebCore::TextRun::TextRun):

9:24 AM Changeset in webkit [170246] by commit-queue@webkit.org
  • 25 edits
    6 moves in trunk

Unreviewed, rolling out r170244.
https://bugs.webkit.org/show_bug.cgi?id=134157

GTK/EFL bindings generator works differently, making this
patch not work there. Will fix entire patch after a rollout.
(Requested by bradee-oh on #webkit).

Reverted changeset:

"Gamepad API - Deprecate the existing implementation"
https://bugs.webkit.org/show_bug.cgi?id=134108
http://trac.webkit.org/changeset/170244

8:55 AM Changeset in webkit [170245] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

Fix the mismatched header build guards in WebKitDOMNodeFilterPrivate.h
which are throwing compilation warnings when building with Clang.

  • bindings/gobject/WebKitDOMNodeFilterPrivate.h:
8:43 AM Changeset in webkit [170244] by beidson@apple.com
  • 25 edits
    6 moves in trunk

Gamepad API - Deprecate the existing implementation
https://bugs.webkit.org/show_bug.cgi?id=134108

Reviewed by Timothy Hatcher.

-Add new "GAMEPAD_DEPRECATED" build flag, moving the existing implementation to use it
-Add the "Deprecated" suffix to some implementation files

.:

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsGTK.cmake:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • CMakeLists.txt:
  • PlatformGTK.cmake:
  • Configurations/FeatureDefines.xcconfig:
  • Modules/gamepad/GamepadDeprecated.cpp: Renamed from Source/WebCore/Modules/gamepad/Gamepad.cpp.
  • Modules/gamepad/GamepadDeprecated.h: Renamed from Source/WebCore/Modules/gamepad/Gamepad.h.
  • Modules/gamepad/GamepadDeprecated.idl: Renamed from Source/WebCore/Modules/gamepad/Gamepad.idl.
  • Modules/gamepad/GamepadList.cpp:
  • Modules/gamepad/GamepadList.h:
  • Modules/gamepad/GamepadList.idl:
  • Modules/gamepad/NavigatorGamepadDeprecated.cpp: Renamed from Source/WebCore/Modules/gamepad/NavigatorGamepad.cpp.
  • Modules/gamepad/NavigatorGamepadDeprecated.h: Renamed from Source/WebCore/Modules/gamepad/NavigatorGamepad.h.
  • Modules/gamepad/NavigatorGamepadDeprecated.idl: Renamed from Source/WebCore/Modules/gamepad/NavigatorGamepad.idl.
  • platform/Gamepads.h:
  • platform/efl/GamepadsEfl.cpp:
  • platform/gtk/GamepadsGtk.cpp:
  • platform/linux/GamepadDeviceLinux.cpp:
  • platform/linux/GamepadDeviceLinux.h:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:

  • wtf/FeatureDefines.h:
8:06 AM Changeset in webkit [170243] by gyuyoung.kim@samsung.com
  • 6 edits in trunk/Source/WebKit2

[CoordinatedGraphics][WK2][EFL] Page is moved to (0,0) position before rendering content
https://bugs.webkit.org/show_bug.cgi?id=133300

Reviewed by Csaba Osztrogonác.

When new page is loaded, PageViewportController::didCommitLoad() calls PageViewportController::syncVisibleContents()
with initial position via applyPositionAfterRenderingContents() before starting to render
new page by PageViewportController::didRenderFrame(). This call flow causes that webview shows
incomplete tiles to the user during a few milliseconds. To fix showing incomplete tiles during
the page loading, this patch adds a flag so that we don't show the incomplete tiles until showing
new page.

  • UIProcess/API/efl/EwkView.cpp:

(EwkView::EwkView):

  • UIProcess/API/efl/EwkView.h:

(EwkView::setWaitingForNewPage):
(EwkView::waitingForNewPage):

  • UIProcess/efl/PageLoadClientEfl.cpp:

(WebKit::PageLoadClientEfl::didCommitLoadForFrame):

  • UIProcess/efl/PageViewportControllerClientEfl.cpp:

(WebKit::PageViewportControllerClientEfl::didChangeVisibleContents):

  • UIProcess/efl/ViewClientEfl.cpp:

(WebKit::ViewClientEfl::didRenderFrame):
(WebKit::ViewClientEfl::didCompletePageTransition):

8:02 AM Changeset in webkit [170242] by commit-queue@webkit.org
  • 38 edits in trunk

Unreviewed, rolling out r170228.
https://bugs.webkit.org/show_bug.cgi?id=134155

Caused 9 layout test failures on Mountain Lion
http://build.webkit.org/builders/Apple%20MountainLion%20Release%20WK2%20(Tests)/builds/19216
(Requested by bradee-oh on #webkit).

Reverted changeset:

"[Mac] Margins for new form controls need tweaking"
https://bugs.webkit.org/show_bug.cgi?id=134135
http://trac.webkit.org/changeset/170228

7:59 AM Changeset in webkit [170241] by jer.noble@apple.com
  • 3 edits in trunk/Source/WebCore

[Mac] Create and attach the AVPlayerLayer to the AVPlayer immediately if the media element is <video>.
https://bugs.webkit.org/show_bug.cgi?id=134131

Reviewed by Eric Carlson.

The AVPlayer uses the presence of an AVPlayerLayer to decide which alternate to display in the case of
HLS streams with audio-only alternates. To give the AVPlayer the most information with which to make its
decision, always create and attach an AVPlayerLayer before attaching an AVPlayerItem to the AVPlayerLayer.
In addition, retrieve the <video> element bounds and create an AVPlayerLayer with a matching size, so that
the AVPlayer can choose an alternate with the correct dimensions.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC):
(WebCore::MediaPlayerPrivateAVFoundationObjC::hasLayerRenderer):
(WebCore::MediaPlayerPrivateAVFoundationObjC::createVideoLayer):
(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerLayer):
(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayer):
(WebCore::MediaPlayerPrivateAVFoundationObjC::platformLayer):

7:55 AM Changeset in webkit [170240] by jonowells@apple.com
  • 25 edits in trunk/Source/WebInspectorUI

Web Inspector: UI fonts should pull from system fonts automatically to whatever degree possible
https://bugs.webkit.org/show_bug.cgi?id=133966

Reviewed by Timothy Hatcher.

Updated font families to use -webkit-system-font, and set this on the body to be
inherited. Also made sure that popovers use Menlo as the default. Updated
autocompletions with system font names.

  • UserInterface/Models/CSSKeywordCompletions.js: Updated completions with available system fonts.
  • UserInterface/Controllers/CodeMirrorGradientEditingController.css:
  • UserInterface/Views/Breakpoint.css:
  • UserInterface/Views/ButtonNavigationItem.css:
  • UserInterface/Views/ButtonToolbarItem.css:
  • UserInterface/Views/CSSStyleDeclarationSection.css:
  • UserInterface/Views/CSSStyleDeclarationTextEditor.css:
  • UserInterface/Views/CSSStyleDetailsSidebarPanel.css:
  • UserInterface/Views/CodeMirrorOverrides.css:
  • UserInterface/Views/DataGrid.css:
  • UserInterface/Views/DebuggerDashboardView.css:
  • UserInterface/Views/DetailsSection.css:
  • UserInterface/Views/FindBanner.css:
  • UserInterface/Views/GoToLineDialog.css:
  • UserInterface/Views/HierarchicalPathComponent.css:
  • UserInterface/Views/Main.css:
  • UserInterface/Views/NavigationSidebarPanel.css:
  • UserInterface/Views/ProbeSetDataGrid.css:
  • UserInterface/Views/RulesStyleDetailsPanel.css:
  • UserInterface/Views/ScopeBar.css:
  • UserInterface/Views/SourceCodeTextEditor.css:
  • UserInterface/Views/TimelineDataGrid.css:
  • UserInterface/Views/TimelineRuler.css:
  • UserInterface/Views/TimelineSidebarPanel.css:

Changes to fonts. Set default font stack to -webkit-system-font, sans-serif. Default size is
11px. Only changes to this default size or changes to the font (to Menlo, monospace usually) remain.

7:52 AM Changeset in webkit [170239] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Implement ios -[WAKWindow convertBaseToScreen:]
https://bugs.webkit.org/show_bug.cgi?id=134053

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

  • platform/ios/wak/WAKWindow.mm:

(-[WAKWindow convertBaseToScreen:]):
Traverse layer hierarchy and convert point.

(-[WAKWindow convertScreenToBase:]):
Traverse layer hierarchy and convert point.

7:51 AM Changeset in webkit [170238] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: Esc in quick console no longer toggles console drawer
https://bugs.webkit.org/show_bug.cgi?id=134068

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-06-21
Reviewed by Timothy Hatcher.

For Escape to toggle console behavior we were relying on the Escape
keyboard event to propagate up to the window and be handled by
QuickConsole's global keyboard shortcut. With CodeMirror 4, all
editors have a default "Esc" key handler to reduce multiple selections
to a single selection. Unfortunately this always prevents default,
which our keyboard shortcut respects and doesn't toggle the console.

Workaround this by putting a specific handler for when a Console
Prompt is empty and the Escape key is triggered. This does not go
through the normal ConsolePrompt delegate because the delegate
is never the QuickConsole, it is actually the JavaScript log.

  • UserInterface/Views/ConsolePrompt.js:

(WebInspector.ConsolePrompt):
(WebInspector.ConsolePrompt.prototype.set escapeKeyHandlerWhenEmpty):
(WebInspector.ConsolePrompt.prototype._handleEscapeKey):

  • UserInterface/Views/QuickConsole.js:

(WebInspector.QuickConsole.this.prompt.escapeKeyHandlerWhenEmpty):
(WebInspector.QuickConsole):

7:43 AM Changeset in webkit [170237] by beidson@apple.com
  • 2 edits in trunk/Source/WebKit2

Commit queue has been failing due to a build failure in WKFoundation.h
https://bugs.webkit.org/show_bug.cgi?id=134152

Patch by Ryosuke Niwa <rniwa@webkit.org> on 2014-06-21
Reviewed by Csaba Osztrogonác.
Landed by Brady Eidson.

The build failure was caused by WKFoundation.h erroneously redefining
NSURLSessionAuthChallengeDisposition even when building with 10.9 SDK.

The availability of this type depends on the version of SDK,
not the target operating system.

  • Shared/API/Cocoa/WKFoundation.h:
1:53 AM Changeset in webkit [170236] by Csaba Osztrogonác
  • 2 edits
    1 add in trunk/Tools

[Inspector][EFL] Can't resume a special break point on EFL inspector
https://bugs.webkit.org/show_bug.cgi?id=129294

Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-06-21
Reviewed by Gyuyoung Kim.

Patch our EFL 1.9 with the fix landed in upstream EFL 1.10
by Ryuan Choi - <https://phab.enlightenment.org/D790>

  • efl/jhbuild.modules:
  • efl/patches/ecore.patch: Added.
1:49 AM Changeset in webkit [170235] by Csaba Osztrogonác
  • 39 edits in trunk

Removing PAGE_VISIBILITY_API compile guard.
https://bugs.webkit.org/show_bug.cgi?id=133844

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-06-21
Reviewed by Gavin Barraclough.

.:

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsGTK.cmake:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:
No new tests because no functional changes.

  • Configurations/FeatureDefines.xcconfig:
  • Modules/vibration/NavigatorVibration.cpp:

(WebCore::NavigatorVibration::vibrate):

  • dom/Document.cpp:

(WebCore::Document::hidden):

  • dom/Document.h:
  • dom/Document.idl:
  • dom/Element.h:
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement):
(WebCore::HTMLMediaElement::registerWithDocument):
(WebCore::HTMLMediaElement::unregisterWithDocument):
(WebCore::HTMLMediaElement::parseAttribute):

  • html/HTMLMediaElement.h:
  • page/Page.cpp:

(WebCore::Page::setIsVisibleInternal):
(WebCore::Page::visibilityState):
(WebCore::Page::hiddenPageCSSAnimationSuspensionStateChanged):

  • page/Page.h:
  • page/PageVisibilityState.cpp:
  • page/PageVisibilityState.h:
  • page/Settings.cpp:

(WebCore::Settings::Settings):
(WebCore::Settings::setHiddenPageCSSAnimationSuspensionEnabled):

  • page/Settings.h:
  • platform/audio/MediaSession.cpp:

(WebCore::MediaSession::updateClientDataBuffering):

  • platform/audio/MediaSession.h:

Source/WebKit/efl:

  • ewk/ewk_view.cpp:

(ewk_view_visibility_state_set):
(ewk_view_visibility_state_get):

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:
  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):
(-[WebView _visibilityState]):

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

Source/WTF:

  • wtf/FeatureDefines.h:

Tools:

  • Scripts/webkitperl/FeatureList.pm:

WebKitLibraries:

  • win/tools/vsprops/FeatureDefines.props:
  • win/tools/vsprops/FeatureDefinesCairo.props:
1:46 AM Changeset in webkit [170234] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

ARM traditional buildfix after r169942.
https://bugs.webkit.org/show_bug.cgi?id=134100

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-06-21
Reviewed by Zoltan Herczeg.

  • assembler/MacroAssemblerARM.h:

(JSC::MacroAssemblerARM::abortWithReason): Added.

1:07 AM Changeset in webkit [170233] by fred.wang@free.fr
  • 2 edits in trunk/Source/WebCore

[GTK][EFL] Use OpenType MATH fonts by default.
https://bugs.webkit.org/show_bug.cgi?id=133604

Reviewed by Chris Fleizach.

In order to support stretching of horizontal operators and large
operators in display mode as well as to improve the drawing of radicals,
we need to use an OpenType MATH table. This commit makes the MathML code
try "Latin Modern Math" first, which is an OpenType version of Knuth's
popular Computer Modern font and is packaged with most TeX
distributions (e.g. TeX Live on Linux). This should work well on the
EFL & GTK ports for which the initial OpenType MATH support has been
tested. Other ports will be handled later.

No new tests. This is already tested in LayoutTests/mathml/opentype/.

  • css/mathml.css:

(math): Add "Latin Modern Math" as the first font-family of the <math> element.

Jun 20, 2014:

11:04 PM Changeset in webkit [170232] by fred.wang@free.fr
  • 6 edits
    23 moves
    1 add
    11 deletes in trunk/LayoutTests

Remove latinmodern-math.woff from LayoutTests/mathml/opentype
https://bugs.webkit.org/show_bug.cgi?id=134094

Reviewed by Martin Robinson.

We remove latinmodern-math.woff from the source and make mathml/opentype/*LatinModern* tests not font-specific, so that each platform will use whatever OpenType MATH is available.
Until bug 133604 is fixed and Latin Modern Math installed on the Linux bots, the tests are marked as failed. More generally, we need to fix bug 133603.
The test mathml/opentype/roots-LatinModern is removed since it will duplicate mathml/presentation/roots.xhtml when OpenType MATH fonts are available.

  • mathml/opentype/LICENSE-LatinModern.txt: Removed.
  • mathml/opentype/horizontal-munderover.html: Renamed from LayoutTests/mathml/opentype/horizontal-LatinModern-munderover.html.
  • mathml/opentype/horizontal.html: Renamed from LayoutTests/mathml/opentype/horizontal-LatinModern.html.
  • mathml/opentype/large-operators-LatinModern.html: Removed.
  • mathml/opentype/large-operators.html: Added.
  • mathml/opentype/latinmodern-math.woff: Removed.
  • mathml/opentype/opentype-stretchy-horizontal.html:
  • mathml/opentype/roots-LatinModern.html: Removed.
  • mathml/opentype/vertical.html: Renamed from LayoutTests/mathml/opentype/vertical-LatinModern.html.
  • platform/efl/TestExpectations:
  • platform/efl/mathml/opentype/horizontal-expected.txt: Renamed from LayoutTests/platform/efl/mathml/opentype/horizontal-LatinModern-expected.txt.
  • platform/efl/mathml/opentype/horizontal-munderover-expected.txt: Renamed from LayoutTests/platform/efl/mathml/opentype/horizontal-LatinModern-munderover-expected.txt.
  • platform/efl/mathml/opentype/large-operators-expected.png: Renamed from LayoutTests/platform/gtk/mathml/opentype/large-operators-LatinModern-expected.png.
  • platform/efl/mathml/opentype/large-operators-expected.txt: Renamed from LayoutTests/platform/efl/mathml/opentype/large-operators-LatinModern-expected.txt.
  • platform/efl/mathml/opentype/roots-LatinModern-expected.txt: Removed.
  • platform/efl/mathml/opentype/vertical-expected.png: Renamed from LayoutTests/platform/gtk/mathml/opentype/vertical-LatinModern-expected.png.
  • platform/efl/mathml/opentype/vertical-expected.txt: Renamed from LayoutTests/platform/efl/mathml/opentype/vertical-LatinModern-expected.txt.
  • platform/gtk/TestExpectations:
  • platform/gtk/mathml/opentype/horizontal-expected.png: Renamed from LayoutTests/platform/gtk/mathml/opentype/horizontal-LatinModern-expected.png.
  • platform/gtk/mathml/opentype/horizontal-expected.txt: Renamed from LayoutTests/platform/gtk/mathml/opentype/horizontal-LatinModern-expected.txt.
  • platform/gtk/mathml/opentype/horizontal-munderover-expected.png: Renamed from LayoutTests/platform/gtk/mathml/opentype/horizontal-LatinModern-munderover-expected.png.
  • platform/gtk/mathml/opentype/horizontal-munderover-expected.txt: Renamed from LayoutTests/platform/gtk/mathml/opentype/horizontal-LatinModern-munderover-expected.txt.
  • platform/gtk/mathml/opentype/large-operators-expected.png: Renamed from LayoutTests/platform/efl/mathml/opentype/large-operators-LatinModern-expected.png.
  • platform/gtk/mathml/opentype/large-operators-expected.txt: Renamed from LayoutTests/platform/gtk/mathml/opentype/large-operators-LatinModern-expected.txt.
  • platform/gtk/mathml/opentype/roots-LatinModern-expected.png: Removed.
  • platform/gtk/mathml/opentype/roots-LatinModern-expected.txt: Removed.
  • platform/gtk/mathml/opentype/vertical-expected.png: Renamed from LayoutTests/platform/efl/mathml/opentype/vertical-LatinModern-expected.png.
  • platform/gtk/mathml/opentype/vertical-expected.txt: Renamed from LayoutTests/platform/gtk/mathml/opentype/vertical-LatinModern-expected.txt.
  • platform/mac-wk2/mathml/opentype/large-operators-LatinModern-expected.txt: Removed.
  • platform/mac-wk2/mathml/opentype/vertical-LatinModern-expected.txt: Removed.
  • platform/mac/TestExpectations:
  • platform/mac/mathml/opentype/horizontal-expected.txt: Renamed from LayoutTests/platform/mac/mathml/opentype/horizontal-LatinModern-expected.txt.
  • platform/mac/mathml/opentype/horizontal-munderover-expected.txt: Renamed from LayoutTests/platform/mac/mathml/opentype/horizontal-LatinModern-munderover-expected.txt.
  • platform/mac/mathml/opentype/large-operators-expected.txt: Renamed from LayoutTests/platform/mac/mathml/opentype/large-operators-LatinModern-expected.txt.
  • platform/mac/mathml/opentype/roots-LatinModern-expected.txt: Removed.
  • platform/mac/mathml/opentype/vertical-expected.txt: Renamed from LayoutTests/platform/mac/mathml/opentype/vertical-LatinModern-expected.txt.
  • platform/win/TestExpectations:
  • platform/win/mathml/opentype/horizontal-expected.txt: Renamed from LayoutTests/platform/win/mathml/opentype/horizontal-LatinModern-expected.txt.
  • platform/win/mathml/opentype/horizontal-munderover-expected.txt: Renamed from LayoutTests/platform/win/mathml/opentype/horizontal-LatinModern-munderover-expected.txt.
  • platform/win/mathml/opentype/roots-LatinModern-expected.txt: Removed.
11:00 PM Changeset in webkit [170231] by ryuan.choi@samsung.com
  • 1 edit
    1 delete in trunk/LayoutTests

[EFL] Remove WebKit1 test results
https://bugs.webkit.org/show_bug.cgi?id=134137

Reviewed by Daniel Bates.

  • platform/efl-wk1: Removed entire directory which contains the WebKit1 EFL test results.
10:53 PM Changeset in webkit [170230] by ryuan.choi@samsung.com
  • 3 edits
    2 copies
    3 deletes in trunk/Tools

[EFL] Remove DumpRenderTree/efl and EWebLauncher
https://bugs.webkit.org/show_bug.cgi?id=134138

Reviewed by Gyuyoung Kim.

DumpRenderTree/efl and EWebLauncher are not necessary anymore because WebKit1 EFL will be removed.

  • CMakeLists.txt:
  • DumpRenderTree/PlatformEfl.cmake: Removed.
  • DumpRenderTree/efl: Removed entire directory.
  • EWebLauncher: Ditto.
  • WebKitTestRunner/InjectedBundle/efl/FontManagement.cpp: Renamed from Tools/DumpRenderTree/efl/FontManagement.cpp.

(buildPath):
(getCoreFontFiles):
(addFontDirectory):
(addFontFiles):
(getCustomBuildDir):
(getPlatformFontsPath):
(addFontsToEnvironment):

  • WebKitTestRunner/InjectedBundle/efl/FontManagement.h: Renamed from Tools/DumpRenderTree/efl/FontManagement.h.
  • WebKitTestRunner/PlatformEfl.cmake:
10:09 PM Changeset in webkit [170229] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WebCore

Unreviewed EFL build fix since r170224.

Add retainPlatformLayer() and releasePlatformLayer() in ScrollingStateNodeCoordinatedGraphics.cpp
as well. Thouse functions were missed in r170224.

  • page/scrolling/ScrollingStateNode.h:
  • page/scrolling/coordinatedgraphics/ScrollingStateNodeCoordinatedGraphics.cpp:

(WebCore::LayerRepresentation::retainPlatformLayer):
(WebCore::LayerRepresentation::releasePlatformLayer):

8:10 PM Changeset in webkit [170228] by dino@apple.com
  • 38 edits in trunk

[Mac] Margins for new form controls need tweaking
https://bugs.webkit.org/show_bug.cgi?id=134135
<rdar://problem/17262164>

Reviewed by Sam Weinig.

Source/WebCore:
With the newer animated controls in OS X Yosemite, we need
to tweak the fudge-factor margins for positioning. In a recent
patch I added another fudge, which I'm removing with this. I'm
not sure where the older values came from, but I've checked with
the latest AppKit sources and am using the sizes they implement
for the controls.

This will rebaseline a lot of tests, since I've made small tweaks
to the form layout.

  • platform/mac/ThemeMac.mm:

(WebCore::checkboxMargins): New margin amounts.
(WebCore::radioSizes): New sizes.
(WebCore::radioMargins): New margin amounts.
(WebCore::paintToggleButton): No need to call the positioning fudge any more.
(WebCore::checkboxOffsets): Deleted.
(WebCore::radioOffsets): Deleted.

LayoutTests:
Rebaseline a bunch of results since some <input> dimensions
changed slightly.

  • platform/mac/css1/box_properties/acid_test-expected.png:
  • platform/mac/css1/box_properties/acid_test-expected.txt:
  • platform/mac/css2.1/t09-c5526c-display-00-e-expected.png:
  • platform/mac/css2.1/t09-c5526c-display-00-e-expected.txt:
  • platform/mac/fast/block/basic/011-expected.png:
  • platform/mac/fast/block/basic/011-expected.txt:
  • platform/mac/fast/block/margin-collapse/103-expected.png:
  • platform/mac/fast/block/margin-collapse/103-expected.txt:
  • platform/mac/fast/forms/basic-inputs-expected.png:
  • platform/mac/fast/forms/basic-inputs-expected.txt:
  • platform/mac/fast/forms/box-shadow-override-expected.png:
  • platform/mac/fast/forms/box-shadow-override-expected.txt:
  • platform/mac/fast/forms/form-element-geometry-expected.png:
  • platform/mac/fast/forms/form-element-geometry-expected.txt:
  • platform/mac/fast/forms/formmove-expected.txt:
  • platform/mac/fast/forms/formmove2-expected.png:
  • platform/mac/fast/forms/formmove2-expected.txt:
  • platform/mac/fast/forms/input-appearance-height-expected.png:
  • platform/mac/fast/forms/input-appearance-height-expected.txt:
  • platform/mac/fast/forms/input-value-expected.png:
  • platform/mac/fast/forms/input-value-expected.txt:
  • platform/mac/fast/inline/positionedLifetime-expected.txt:
  • platform/mac/fast/replaced/replaced-breaking-expected.png:
  • platform/mac/fast/replaced/replaced-breaking-expected.txt:
  • platform/mac/fast/replaced/width100percent-radio-expected.txt:
  • platform/mac/http/tests/navigation/javascriptlink-frames-expected.png:
  • platform/mac/http/tests/navigation/javascriptlink-frames-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug1318-expected.png:
  • platform/mac/tables/mozilla/bugs/bug1318-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug4527-expected.png:
  • platform/mac/tables/mozilla/bugs/bug4527-expected.txt:
  • platform/mac/tables/mozilla_expected_failures/core/captions1-expected.png:
  • platform/mac/tables/mozilla_expected_failures/core/captions1-expected.txt:
  • platform/mac/tables/mozilla_expected_failures/core/captions2-expected.png:
  • platform/mac/tables/mozilla_expected_failures/core/captions2-expected.txt:
7:33 PM Changeset in webkit [170227] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix css jit on armv7.
https://bugs.webkit.org/show_bug.cgi?id=134143
<rdar://problem/17348060>

Patch by Alex Christensen <achristensen@webkit.org> on 2014-06-20
Reviewed by Benjamin Poulain.

This fixes the acid3 test.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorCodeGenerator::addFlagsToElementStyleFromContext):
Correct high and low bits.

5:11 PM Changeset in webkit [170226] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Implement more of LegacySessionStateDecoder
https://bugs.webkit.org/show_bug.cgi?id=134145

Reviewed by Sam Weinig.

  • Shared/SessionState.h:
  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::LegacySessionStateDecoder::decodeSessionHistoryEntry):
(WebKit::HistoryEntryDataDecoder::HistoryEntryDataDecoder):
(WebKit::HistoryEntryDataDecoder::finishDecoding):
(WebKit::LegacySessionStateDecoder::decodeSessionHistoryEntryData):

  • UIProcess/mac/LegacySessionStateCoding.h:
4:48 PM Changeset in webkit [170225] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

Implement more of LegacySessionStateDecoder
https://bugs.webkit.org/show_bug.cgi?id=134144

Reviewed by Sam Weinig.

  • Shared/SessionState.cpp:

(WebKit::BackForwardListState::encode):
(WebKit::SessionState::encode): Deleted.

  • Shared/SessionState.h:
  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::LegacySessionStateDecoder::decodeSessionState):
(WebKit::LegacySessionStateDecoder::decodeSessionHistory):
(WebKit::LegacySessionStateDecoder::decodeV0SessionHistory):
(WebKit::LegacySessionStateDecoder::decodeV1SessionHistory):
(WebKit::LegacySessionStateDecoder::decodeSessionHistoryEntries):
(WebKit::LegacySessionStateDecoder::decodeSessionHistoryEntry):

  • UIProcess/mac/LegacySessionStateCoding.h:
4:44 PM Changeset in webkit [170224] by Beth Dakin
  • 5 edits
    1 move
    1 add in trunk/Source/WebCore

https://bugs.webkit.org/show_bug.cgi?id=134117
Unreproducible crashes under WebCore::ScrollingTree::updateTreeFromStateNode()
from messaging a deleted Obj-C object
-and corresponding-
<rdar://problem/17149252>

Reviewed by Simon Fraser.

This is a speculative fix. It makes LayerRepresentation retain m_platformLayer.

  • WebCore.exp.in:
  • page/scrolling/ScrollingStateNode.h:

(WebCore::LayerRepresentation::LayerRepresentation):
(WebCore::LayerRepresentation::~LayerRepresentation):
(WebCore::LayerRepresentation::operator=):
(WebCore::LayerRepresentation::operator==):
(WebCore::LayerRepresentation::operator ==): Deleted.

Make this ASSERT an ASSERT_WITH_SECURITY_IMPLICATION

  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::updateTreeFromStateNode):

Moved ScrollingStateNodeMac.mm, which was empty anyway, to cocoa/
ScrollingStateNode.mm so that iOS can use it too.

  • page/scrolling/cocoa: Added.
  • page/scrolling/cocoa/ScrollingStateNode.mm: Copied from page/scrolling/mac/ScrollingStateNodeMac.mm.

Actual implementation for retain and release.
(WebCore::LayerRepresentation::retainPlatformLayer):
(WebCore::LayerRepresentation::releasePlatformLayer):

Deleted.

  • page/scrolling/mac/ScrollingStateNodeMac.mm: Removed.
4:40 PM Changeset in webkit [170223] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed. build fix for the cmake based ports since r170188

  • CMakeLists.txt: Added LegacySessionState.cpp in source list.
4:37 PM Changeset in webkit [170222] by mitz@apple.com
  • 4 edits in trunk/Source/WebKit2

[Cocoa] No way to get the main frame’s main resource’s data
https://bugs.webkit.org/show_bug.cgi?id=134113

Reviewed by Sam Weinig.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _getMainResourceDataWithCompletionHandler:]): Added. Calls
WebPageProxy::getMainResourceDataOfFrame and invokes the completion handler form the
callback.

  • UIProcess/API/Cocoa/WKWebViewPrivate.h: Declared new method.
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::getMainResourceDataOfFrame): Made it safe to pass a NULL frame into
this function.

4:21 PM Changeset in webkit [170221] by Alan Bujtas
  • 2 edits in trunk/Tools

Name moving. Unreviewed.

  • Scripts/webkitpy/common/config/contributors.json:
3:57 PM Changeset in webkit [170220] by Alan Bujtas
  • 6 edits in trunk/Source/WebCore

Introduce RenderLayer::offsetFromAncestorLayer() to make convertToLayerCoords() calls with
LayoutPoint(0, 0) as parameter more explicit.
https://bugs.webkit.org/show_bug.cgi?id=134092

Reviewed by Simon Fraser.

Most of the RenderLayer::convertToLayerCoords() callers are only interested in
the offset from the ancestor layer by passing LayoutPoint(0, 0) as the coordinate to convert.
Introducing offsetFromAncestorLayer() makes those calls more explicit/self-explanatory.
It helps simplifying the callsite's code.

No change in functionality.

  • rendering/RenderGeometryMap.cpp:

(WebCore::RenderGeometryMap::mapToContainer):
(WebCore::RenderGeometryMap::pushMappingsToAncestor):
(WebCore::RenderGeometryMap::push):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::computeOffsetFromRoot):
(WebCore::RenderLayer::updateLayerPositions):
(WebCore::expandClipRectForRegionAndReflection):
(WebCore::expandClipRectForDescendantsAndReflection):
(WebCore::transparencyClipBox):
(WebCore::RenderLayer::convertToPixelSnappedLayerCoords):
(WebCore::accumulateOffsetTowardsAncestor):
(WebCore::RenderLayer::convertToLayerCoords):
(WebCore::RenderLayer::offsetFromAncestorLayer):
(WebCore::RenderLayer::clipToRect):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::paintLayerByApplyingTransform):
(WebCore::RenderLayer::collectFragments):
(WebCore::RenderLayer::paintTransformedLayerIntoFragments):
(WebCore::RenderLayer::createLocalTransformState):
(WebCore::RenderLayer::hitTestTransformedLayerInFragments):
(WebCore::RenderLayer::calculateClipRects):

  • rendering/RenderLayer.h:
  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateCompositedBounds):
(WebCore::RenderLayerBacking::updateGeometry):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::repaintInCompositedAncestor):

3:46 PM Changeset in webkit [170219] by andersca@apple.com
  • 7 edits
    6 copies in trunk/Source/WebKit2

Introduce a WKSessionStateRef object
https://bugs.webkit.org/show_bug.cgi?id=134136

Reviewed by Tim Horton.

WKSessionStateRef is going to hold session state, making it possible to migrate state from one
webpage to another without having to do any serialization/deserialization.

  • Shared/API/c/WKBase.h:
  • Shared/APIObject.h:
  • Shared/SessionState.cpp:

(WebKit::SessionState::encode):

  • Shared/SessionState.h:
  • UIProcess/API/APISessionState.cpp: Added.

(API::SessionState::create):
(API::SessionState::SessionState):
(API::SessionState::~SessionState):

  • UIProcess/API/APISessionState.h:
  • UIProcess/API/C/WKAPICast.h:
  • UIProcess/API/C/WKSessionStateRef.cpp:

(WKSessionStateCreateFromData):

  • UIProcess/API/C/WKSessionStateRef.h:
  • UIProcess/mac/LegacySessionStateCoding.cpp:

(WebKit::LegacySessionStateDecoder::LegacySessionStateDecoder):
(WebKit::LegacySessionStateDecoder::~LegacySessionStateDecoder):
(WebKit::LegacySessionStateDecoder::decodeSessionState):

  • UIProcess/mac/LegacySessionStateCoding.h:
  • WebKit2.xcodeproj/project.pbxproj:
3:42 PM Changeset in webkit [170218] by enrica@apple.com
  • 4 edits in trunk/Source/WebKit2

iOS WebKit2: selection handles become too large when zooming a page.
https://bugs.webkit.org/show_bug.cgi?id=134084
<rdar://problem/16799164>

Reviewed by Benjamin Poulain.

Since the document view is zoomed, we add a subview that has the inverse transform
of the document view. This new view becomes the root for the selection hierarchy.
The new view has zero size, not to interfere with the existing gestures on the WKContenView
therefore we implement hitTest to detect interaction with the selection elements.

  • UIProcess/ios/WKContentView.mm:

(-[WKContentView didUpdateVisibleRect:unobscuredRect:unobscuredRectInScrollViewCoordinates:scale:minimumScale:inStableState:isChangingObscuredInsetsInteractively:]):

  • UIProcess/ios/WKContentViewInteraction.h:
  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView setupInteraction]):
(-[WKContentView cleanupInteraction]):
(-[WKContentView unscaledView]):
(-[WKContentView inverseScale]):
(-[WKContentView _updateUnscaledView]):
(-[WKContentView hitTest:withEvent:::]):
(-[WKContentView selectedTextRange]):

3:40 PM Changeset in webkit [170217] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Snapshotting WKThumbnailViews should not tell Web processes backing unparented WKViews that they're in window
https://bugs.webkit.org/show_bug.cgi?id=134134
<rdar://problem/17402119>

Reviewed by Anders Carlsson.

  • UIProcess/API/mac/WKView.mm:

(-[WKView _setThumbnailView:]):
Re-evaluating our in-window state is only useful if we're going to use the live layer tree;
snapshots can be taken of unparented views with no trouble. Plus, doing so sets off a chain of
expensive things in the Web process which we can avoid if using snapshots.

3:38 PM Changeset in webkit [170216] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

WKThumbnailView should only use live layer trees before the snapshot arrives for parented WKViews
https://bugs.webkit.org/show_bug.cgi?id=134129
<rdar://problem/17401591>

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/_WKThumbnailView.mm:

(-[_WKThumbnailView initWithFrame:fromWKView:]):
Add a white background to WKThumbnailView, so that if we have no snapshot and no layer tree,
the view isn't transparent.

  • UIProcess/API/mac/WKView.mm:

(-[WKView _updateThumbnailViewLayer]):
We currently pull the live layer tree into the WKThumbnailView even in snapshot mode,
before the snapshot arrives, to avoid flashing when transitioning a live WKView to a thumbnail view.
This is, however, not useful for unparented WKViews, because their layer tree will be detached
and we'll flash anyway. So, only do that when the WKView is parented.

3:27 PM Changeset in webkit [170215] by mhahnenberg@apple.com
  • 5 edits in branches/ftlopt/Source/JavaScriptCore

Merge r169903 to the branch.

2014-06-12 Mark Hahnenberg <mhahnenberg@apple.com>


Move structureHasRareData out of TypeInfo
https://bugs.webkit.org/show_bug.cgi?id=133800


Reviewed by Andreas Kling.


StructureHasRareData was originally put in TypeInfo to avoid making Structure bigger,
but we have a few spare bits in Structure so it would be nice to remove this hack.


  • runtime/JSTypeInfo.h: (JSC::TypeInfo::newImpurePropertyFiresWatchpoints): (JSC::TypeInfo::structureHasRareData): Deleted.
  • runtime/Structure.cpp: (JSC::Structure::Structure): (JSC::Structure::allocateRareData): (JSC::Structure::cloneRareDataFrom):
  • runtime/Structure.h: (JSC::Structure::previousID): (JSC::Structure::objectToStringValue): (JSC::Structure::setObjectToStringValue): (JSC::Structure::setPreviousID): (JSC::Structure::clearPreviousID): (JSC::Structure::previous): (JSC::Structure::rareData):
  • runtime/StructureInlines.h: (JSC::Structure::setEnumerationCache): (JSC::Structure::enumerationCache):
3:10 PM Changeset in webkit [170214] by ggaren@apple.com
  • 3 edits in trunk/Source/WebKit2

WebKit delegate methods should document their default behaviors
https://bugs.webkit.org/show_bug.cgi?id=134132

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKNavigationDelegate.h:
  • UIProcess/API/Cocoa/WKUIDelegate.h:
3:06 PM Changeset in webkit [170213] by Simon Fraser
  • 2 edits in trunk/Source/WebKit2

Fix lots of WK2 test crashes.

We don't always have a ScrollingCoordinator.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::flushLayers):

3:05 PM Changeset in webkit [170212] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Always use XPC on iOS
https://bugs.webkit.org/show_bug.cgi?id=134130

Reviewed by Sam Weinig.

  • UIProcess/ios/WebProcessProxyIOS.mm:

(WebKit::WebProcessProxy::platformGetLaunchOptions):
(WebKit::shouldUseXPC): Deleted.

3:00 PM Changeset in webkit [170211] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix build.

  • Shared/SessionState.cpp:
2:55 PM Changeset in webkit [170210] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Add ArgumentEncoder support to PageState and friends
https://bugs.webkit.org/show_bug.cgi?id=134128

Reviewed by Andreas Kling.

Change the classes to structs, get rid of the constructors/destructors
and add encode member functions.

  • Shared/SessionState.cpp:

(WebKit::HTTPBody::Element::encode):
(WebKit::HTTPBody::encode):
(WebKit::FrameState::encode):
(WebKit::PageState::encode):
(WebKit::HTTPBody::Element::Element): Deleted.
(WebKit::HTTPBody::Element::~Element): Deleted.
(WebKit::FrameState::FrameState): Deleted.
(WebKit::FrameState::~FrameState): Deleted.
(WebKit::PageState::PageState): Deleted.
(WebKit::PageState::~PageState): Deleted.

  • Shared/SessionState.h:

(WebKit::HTTPBody::Element::type): Deleted.

2:36 PM Changeset in webkit [170209] by andersca@apple.com
  • 4 edits in trunk/Source

Add encoding and decoding support for WTF::Optional
https://bugs.webkit.org/show_bug.cgi?id=134125

Reviewed by Andreas Kling.

Source/WebKit2:

  • Platform/IPC/ArgumentCoders.h:

(IPC::ArgumentCoder<WTF::Optional<T>>::encode):
(IPC::ArgumentCoder<WTF::Optional<T>>::decode):

Source/WTF:

  • wtf/Optional.h:

(WTF::Optional::operator=):

2:21 PM Changeset in webkit [170208] by mmaxfield@apple.com
  • 4 edits
    30 deletes in trunk/Source/WebCore

Removing dead code in platform/graphics/gpu
https://bugs.webkit.org/show_bug.cgi?id=134065

Reviewed by Simon Fraser.

No new tests because there is no behavior change.

  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/gpu/LoopBlinnClassifier.cpp: Removed.
  • platform/graphics/gpu/LoopBlinnClassifier.h: Removed.
  • platform/graphics/gpu/LoopBlinnConstants.h: Removed.
  • platform/graphics/gpu/LoopBlinnLocalTriangulator.cpp: Removed.
  • platform/graphics/gpu/LoopBlinnLocalTriangulator.h: Removed.
  • platform/graphics/gpu/LoopBlinnMathUtils.cpp: Removed.
  • platform/graphics/gpu/LoopBlinnMathUtils.h: Removed.
  • platform/graphics/gpu/LoopBlinnPathCache.cpp: Removed.
  • platform/graphics/gpu/LoopBlinnPathCache.h: Removed.
  • platform/graphics/gpu/LoopBlinnPathProcessor.h: Removed.
  • platform/graphics/gpu/LoopBlinnShader.cpp: Removed.
  • platform/graphics/gpu/LoopBlinnShader.h: Removed.
  • platform/graphics/gpu/LoopBlinnSolidFillShader.cpp: Removed.
  • platform/graphics/gpu/LoopBlinnSolidFillShader.h: Removed.
  • platform/graphics/gpu/LoopBlinnTextureCoords.cpp: Removed.
  • platform/graphics/gpu/LoopBlinnTextureCoords.h: Removed.
  • platform/graphics/gpu/Shader.cpp: Removed.
  • platform/graphics/gpu/Shader.h: Removed.
  • platform/graphics/gpu/SharedGraphicsContext3D.cpp: Removed.
  • platform/graphics/gpu/SharedGraphicsContext3D.h: Removed.
  • platform/graphics/gpu/mac/DrawingBufferMac.mm: Removed.
  • platform/graphics/gpu/opencl/FilterContextOpenCL.cpp: Removed.
  • platform/graphics/gpu/opencl/FilterContextOpenCL.h: Removed.
  • platform/graphics/gpu/opencl/OpenCLFEColorMatrix.cpp: Removed.
  • platform/graphics/gpu/opencl/OpenCLFEFlood.cpp: Removed.
  • platform/graphics/gpu/opencl/OpenCLFEImage.cpp: Removed.
  • platform/graphics/gpu/opencl/OpenCLFEMerge.cpp: Removed.
  • platform/graphics/gpu/opencl/OpenCLFESourceAlpha.cpp: Removed.
  • platform/graphics/gpu/opencl/OpenCLFESourceGraphic.cpp: Removed.
  • platform/graphics/gpu/opencl/OpenCLFETurbulence.cpp: Removed.
  • platform/graphics/gpu/opencl/OpenCLHandle.h: Removed.
2:17 PM Changeset in webkit [170207] by mmaxfield@apple.com
  • 3 edits
    3 adds in trunk

[iOS] Support Khmer and Lao fallback fonts
https://bugs.webkit.org/show_bug.cgi?id=134114

Reviewed by Enrica Casucci.

Source/WebCore:
iOS has fonts which have glyphs for the Khmer and Lao languages.

This patch also does a little refactoring of the language-specific fallback
font path to increase readability.

Test: fast/text/khmer-lao-font.html

  • platform/graphics/ios/FontCacheIOS.mm:

(WebCore::languageSpecificFallbackFont):
(WebCore::FontCache::systemFallbackForCharacters):

LayoutTests:
Simply dump the render tree of a page that includes Khmer and Lao text. The success
of this test depends on font font metrics being different than system fallback font
(which just shows rectangles instead of glyphs).

  • fast/text/khmer-lao-font.html: Added.
  • platform/ios-sim/fast/text/khmer-lao-font-expected.txt: Added.
  • platform/mac/fast/text/khmer-lao-font-expected.txt: Added.
2:08 PM Changeset in webkit [170206] by jfernandez@igalia.com
  • 2 edits in trunk/Tools

Unreviewed. Adding myself to committers.

  • Scripts/webkitpy/common/config/contributors.json:
2:03 PM Changeset in webkit [170205] by andersca@apple.com
  • 4 edits in trunk/Source

Give NPAPI post requests a default content type
https://bugs.webkit.org/show_bug.cgi?id=134120

Reviewed by Andreas Kling.

Source/WebCore:

  • WebCore.exp.in:

Source/WebKit2:

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::loadURL):

2:00 PM Changeset in webkit [170204] by Simon Fraser
  • 2 edits in trunk/Source/WebKit2

Always commit the scrolling tree when we flush layers
https://bugs.webkit.org/show_bug.cgi?id=134115

Reviewed by Beth Dakin.

The scrolling state tree contains bare pointers to GraphicsLayers, which get
converted to CALayers at commit time. To avoid a window of time where those
GraphicsLayer pointers go stale, commit the scrolling tree whenever we flush the
compositing layer tree.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::flushLayers):

1:56 PM Changeset in webkit [170203] by Simon Fraser
  • 4 edits
    2 adds in trunk

REGRESSION (r169972): fix issue when removing masks from compositing layers
https://bugs.webkit.org/show_bug.cgi?id=134118
<rdar://problem/17366654>

Reviewed by Dean Jackson.

Source/WebCore:
After r169972 when removing the mask, we could destroy the mask
layer before the call into m_graphicsLayer->setMaskLayer(), which would
try to call functions on the old mask. Fix by clearing the mask layer
on the GraphicsLayer before the mask layer gets destroyed.

Test: compositing/masks/toggle-mask.html

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateConfiguration):
(WebCore::RenderLayerBacking::updateMaskLayer):

  • rendering/RenderLayerBacking.h:

LayoutTests:
Test that toggles the mask on a composited element.

  • compositing/masks/toggle-mask-expected.txt: Added.
  • compositing/masks/toggle-mask.html: Added.
1:54 PM Changeset in webkit [170202] by andersca@apple.com
  • 2 edits in trunk/Source/WTF

Add copy/move constructors and assignment operators to WTF::Optional
https://bugs.webkit.org/show_bug.cgi?id=134119

Reviewed by Andreas Kling.

  • wtf/Optional.h:

(WTF::Optional::Optional):
(WTF::Optional::operator=):

1:48 PM Changeset in webkit [170201] by akling@apple.com
  • 4 edits in trunk/Source

[Cocoa] Release freed up blocks from the JS heap after simulated memory pressure.
<https://webkit.org/b/134112>

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

  • heap/BlockAllocator.h:

Source/WebCore:

  • platform/cocoa/MemoryPressureHandlerCocoa.mm:

(WebCore::MemoryPressureHandler::install):

1:36 PM Changeset in webkit [170200] by Alan Bujtas
  • 3 edits in trunk/Source/WebCore

Remove redundant RenderLayer::computeOffsetFromRoot() function.
https://bugs.webkit.org/show_bug.cgi?id=134088

Reviewed by Benjamin Poulain.

No change in functionality.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateClipRects):
(WebCore::RenderLayer::computeOffsetFromRoot): Deleted.

  • rendering/RenderLayer.h:
1:22 PM Changeset in webkit [170199] by Yusuke Suzuki
  • 2 edits in trunk/Tools

Unreviewed. Adding myself to committers.

  • Scripts/webkitpy/common/config/contributors.json:
12:16 PM Changeset in webkit [170198] by Simon Fraser
  • 11 edits
    6 adds in trunk

[iOS WebKit2] Make -webkit-overflow-scrolling:touch work in iframes (breaks MSWord previews)
https://bugs.webkit.org/show_bug.cgi?id=134085

Source/WebCore:
<rdar://problem/16440586>

Reviewed by Tim Horton.

When nodes were detached from the scrolling tree, we would previously throw away
all descendant nodes, expecting that they would be re-attached as we walk the compositing
layer tree in RenderLayerCompositor.

However, this doesn't work across frame boundaries; the subframe may never update
its compositing layers again, so would lose all its scrolling nodes.

Fix by having ScrollingStateTree::detachNode() by default set aside subframe nodes
into a hash map. On reattach, we'll look in the hash map and pull out an existing node
(with its children intact) if possible.

Tests: platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-gain-scrolling-ancestor.html

platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-lose-scrolling-ancestor.html
platform/mac-wk2/tiled-drawing/scrolling/frames/remove-coordinated-frame.html

  • page/scrolling/ScrollingStateNode.cpp:

(WebCore::ScrollingStateNode::ScrollingStateNode):

  • page/scrolling/ScrollingStateTree.cpp:

(WebCore::ScrollingStateTree::attachNode):
(WebCore::ScrollingStateTree::detachNode):
(WebCore::ScrollingStateTree::clear):
(WebCore::ScrollingStateTree::removeNodeAndAllDescendants):
(WebCore::ScrollingStateTree::recursiveNodeWillBeRemoved):

  • page/scrolling/ScrollingStateTree.h:
  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::commitNewTreeState): Go back to removing the deleted
nodes from m_nodeMap first.
(WebCore::ScrollingTree::removeDestroyedNodes): There is no need for this to
actually make use of ScrollingTreeNode* any more; the ASSERT(!node->parent())
is bogus because it can fire when whole subtrees are removed, and to clear the
latched node we just need the ID.

Source/WebKit2:
<rdar://problem/16440586>

Reviewed by Tim Horton.

Add some debug-only assertions that check that the number of nodes we encoded is
the expected number.

  • Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:

(WebKit::encodeNodeAndDescendants):
(WebKit::RemoteScrollingCoordinatorTransaction::encode):

LayoutTests:

Reviewed by Tim Horton.

Tests that add and remove a fixed container of a scroll-coordinated iframe.

  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-gain-scrolling-ancestor-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-gain-scrolling-ancestor.html: Added.
  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-in-fixed-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-lose-scrolling-ancestor-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-lose-scrolling-ancestor.html: Added.
  • platform/mac-wk2/tiled-drawing/scrolling/frames/remove-coordinated-frame-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/scrolling/frames/remove-coordinated-frame.html: Added.
  • platform/mac-wk2/tiled-drawing/scrolling/frames/resources/doc-with-sticky.html:
12:14 PM Changeset in webkit [170197] by Simon Fraser
  • 9 edits in trunk/Source

Handle scrolling tree modifications which remove intermediate nodes
https://bugs.webkit.org/show_bug.cgi?id=134082

Reviewed by Tim Horton.

When updating the scrolling tree from the state tree, we failed to maintain
the children arrays correctly. Fix by removing all children on scrolling nodes,
and allowing the calls on children to add them back. A temporary hash map
keeps the nodes alive.

The state tree's m_nodesRemovedSinceLastCommit was also made into a HashSet,
to make it easier to handle removal followed by re-insertion.

Source/WebCore:

  • WebCore.exp.in:
  • page/scrolling/ScrollingStateTree.cpp:

(WebCore::ScrollingStateTree::attachNode): If a node is (possibly re-)added,
remove it from m_nodesRemovedSinceLastCommit.remove.
(WebCore::ScrollingStateTree::willRemoveNode):
(WebCore::ScrollingStateTree::setRemovedNodes):

  • page/scrolling/ScrollingStateTree.h:

(WebCore::ScrollingStateTree::removedNodes):

  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::commitNewTreeState):
(WebCore::ScrollingTree::updateTreeFromStateNode): Clean up to have only one call
to updateBeforeChildren(), and remove all children from the scrolling node
before visiting state children.
(WebCore::ScrollingTree::removeDestroyedNodes): It was very wrong to assume
that all non-root nodes were parented in the root! Now we don't need to
remove from the parent anyway.

  • page/scrolling/ScrollingTree.h:
  • page/scrolling/ScrollingTreeNode.h:

(WebCore::ScrollingTreeNode::children):

Source/WebKit2:

  • Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:

(WebKit::RemoteScrollingCoordinatorTransaction::decode):
(WebKit::RemoteScrollingTreeTextStream::dump):

12:14 PM Changeset in webkit [170196] by Simon Fraser
  • 29 edits in trunk/Source

Make ScrollingTreeNodes refounted, for easier tree reconfiguration
https://bugs.webkit.org/show_bug.cgi?id=134075

Reviewed by Tim Horton.

Make ScrollingTreeNode be ref-counted.

Source/WebCore:

  • page/scrolling/AsyncScrollingCoordinator.h:
  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::handleWheelEvent):
(WebCore::ScrollingTree::updateTreeFromStateNode):

  • page/scrolling/ScrollingTree.h:

(WebCore::ScrollingTree::rootNode):

  • page/scrolling/ScrollingTreeNode.cpp:

(WebCore::ScrollingTreeNode::appendChild):

  • page/scrolling/ScrollingTreeNode.h:
  • page/scrolling/ThreadedScrollingTree.cpp:

(WebCore::ThreadedScrollingTree::createNode):

  • page/scrolling/ThreadedScrollingTree.h:
  • page/scrolling/ios/ScrollingCoordinatorIOS.h:
  • page/scrolling/ios/ScrollingCoordinatorIOS.mm:

(WebCore::ScrollingCoordinatorIOS::createScrollingTreeNode):

  • page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.h:
  • page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.mm:

(WebCore::ScrollingTreeFrameScrollingNodeIOS::create):

  • page/scrolling/ios/ScrollingTreeIOS.cpp:

(WebCore::ScrollingTreeIOS::createNode):

  • page/scrolling/ios/ScrollingTreeIOS.h:
  • page/scrolling/mac/ScrollingCoordinatorMac.h:
  • page/scrolling/mac/ScrollingCoordinatorMac.mm:

(WebCore::ScrollingCoordinatorMac::createScrollingTreeNode):

  • page/scrolling/mac/ScrollingTreeFixedNode.h:
  • page/scrolling/mac/ScrollingTreeFixedNode.mm:

(WebCore::ScrollingTreeFixedNode::create):

  • page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.h:
  • page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:

(WebCore::ScrollingTreeFrameScrollingNodeMac::create):

  • page/scrolling/mac/ScrollingTreeStickyNode.h:
  • page/scrolling/mac/ScrollingTreeStickyNode.mm:

(WebCore::ScrollingTreeStickyNode::create):

Source/WebKit2:

  • UIProcess/Scrolling/RemoteScrollingTree.cpp:

(WebKit::RemoteScrollingTree::createNode):

  • UIProcess/Scrolling/RemoteScrollingTree.h:
  • UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.h:
  • UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.mm:

(WebKit::ScrollingTreeOverflowScrollingNodeIOS::create):

  • WebProcess/Scrolling/RemoteScrollingCoordinator.h:
  • WebProcess/Scrolling/RemoteScrollingCoordinator.mm:

(WebKit::RemoteScrollingCoordinator::createScrollingTreeNode):

12:05 PM Changeset in webkit [170195] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] No way to get the MIME type of the main frame
https://bugs.webkit.org/show_bug.cgi?id=134111

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _MIMEType]): Added. Returns the MIME type of the main frame, or nil.

  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
11:32 AM Changeset in webkit [170194] by timothy_horton@apple.com
  • 8 edits in trunk/Tools

Make WebKit2 more accessible in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=134099

Reviewed by Anders Carlsson.

  • MiniBrowser/mac/AppDelegate.h:
  • MiniBrowser/mac/AppDelegate.m:

(-[BrowserAppDelegate newWindow:]):
(-[BrowserAppDelegate applicationDidFinishLaunching:]):
(-[BrowserAppDelegate toggleUseWebKit2ByDefault:]):
(-[BrowserAppDelegate _useWebKit2ByDefault]):
(-[BrowserAppDelegate _updateNewWindowKeyEquivalents]):
(-[BrowserAppDelegate validateMenuItem:]):

  • MiniBrowser/mac/MainMenu.xib:

Add a "Use WebKit2 By Default" menu item to the top of the Debug menu.
When switched on, Cmd-N will make WebKit2 windows (and the default window will be WebKit2).
Make the non-default new-window menu item always show up, because people often don't find it
when you have to press option to have it show up.

  • MiniBrowser/mac/BrowserWindowController.h:
  • MiniBrowser/mac/BrowserWindowController.m:

(-[BrowserWindowController initWithWindow:]):

  • MiniBrowser/mac/WK1BrowserWindowController.m:

(-[WK1BrowserWindowController validateMenuItem:]):

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController validateMenuItem:]):
Use the cached [menuItem action] like the earlier cases do.

11:29 AM Changeset in webkit [170193] by enrica@apple.com
  • 3 edits in trunk/Source/WebCore

iOS build fix after http://trac.webkit.org/changeset/170167.

Reviewed by Geoff Garen.

  • bindings/js/JSDeviceMotionEventCustom.cpp:
  • bindings/js/JSDeviceOrientationEventCustom.cpp:
10:58 AM Changeset in webkit [170192] by Joseph Pecoraro
  • 2 edits in trunk/Source/WebKit2

[iOS]: Overrelease of RetainPtr object in file upload
https://bugs.webkit.org/show_bug.cgi?id=134072

Reviewed by Brady Eidson.

This ivar is a RetainPtr, the release will be done automatically
for us when we assign to nil or destruct.

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView fileUploadPanelDidDismiss:]):

10:57 AM Changeset in webkit [170191] by andersca@apple.com
  • 2 edits
    2 adds in trunk/Source/WebKit2

Begin stubbing out new session state classes
https://bugs.webkit.org/show_bug.cgi?id=134110

Reviewed by Geoffrey Garen.

The basic idea is that these classes will replace the data blobs representing HistoryItems
that we currently send back and forth between the web and UI processes.

  • Shared/SessionState.cpp: Added.

(WebKit::HTTPBody::Element::Element):
(WebKit::HTTPBody::Element::~Element):
(WebKit::FrameState::FrameState):
(WebKit::FrameState::~FrameState):
(WebKit::PageState::PageState):
(WebKit::PageState::~PageState):

  • Shared/SessionState.h: Added.

(WebKit::HTTPBody::Element::type):

  • WebKit2.xcodeproj/project.pbxproj:
10:25 AM Changeset in webkit [170190] by psolanki@apple.com
  • 2 edits in trunk/Source/WebCore

Enable synchronous willSendRequest on iOS
https://bugs.webkit.org/show_bug.cgi?id=134081
<rdar://problem/17350927>

Reviewed by Andreas Kling.

We lost the call to make willSendrequest callbacks be synchronous if possible during code
refactoring. The call is present in ResourceHandleMac.mm but that code is not called when
we use the CFNetwork based loader. Call the SPI in setupRequest().

No new tests because existing tests should cover this functionality.

  • platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.cpp:

(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::setupRequest):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::willSendRequest):

10:20 AM Changeset in webkit [170189] by dbates@webkit.org
  • 4 edits in trunk/Tools

Teach run-{safari, webkit-app} about iOS Simulator
https://bugs.webkit.org/show_bug.cgi?id=133986

Reviewed by David Kilzer.

Extract the logic from old-run-webkit-tests to install and launch {DumpRenderTree, WebKitTestRunnerApp}.app
into general-purpose routines in webkitdirs.pm so that they can be used both by script old-run-webkit-tests
and run-safari.

  • Scripts/old-run-webkit-tests:

(installAndLaunchDumpToolAppUsingNotification): Extracted logic to install and launch {DumpRenderTree,
WebKitTestRunnerApp}.app into webkitdirs::installAndLaunchIOSWebKitAppInSimulator() and modified code
to call it.
(openIPhoneSimulator): Deleted; moved logic to webkitdirs::openIOSSimulator().
(quitIPhoneSimulator): Deleted; moved logic to webkitdirs::quitIOSSimulator().

  • Scripts/run-webkit-app: Modified to call runIOSWebKitApp() when the iOS simulator SDK is used

(say, by specifying the optional command-line argument --simulator). For now, die() with an error
when the iOS device SDK is used as we don't support launching an app on the device at this time.

  • Scripts/webkitdirs.pm:

(xcodeSDKVersion): Added.
(setupIOSWebKitEnvironment): Added.
(installedMobileSafariBundle): Added.
(mobileSafariBundle): Added.
(plistPathFromBundle): Added.
(appIdentiferFromBundle): Added.
(appDisplayNameFromBundle): Added.
(loadIPhoneSimulatorNotificationIfNeeded): Added.
(openIOSSimulator): Added.
(quitIOSSimulator): Added.
(iosSimulatorDeviceByName): Added.
(iosSimulatorRuntime): Added.
(findOrCreateSimulatorForIOSDevice): Added.
(runIOSWebKitAppInSimulator): Added.
(installAndLaunchIOSWebKitAppInSimulator): Added.
(runIOSWebKitApp): Added.
(runSafari): Modified to call runIOSWebKitAppInSimulator() the iOS simulator SDK is used. For now,
die() with an error when the iOS device SDK is used as we don't support launching Safari on the
device at this time.

10:16 AM Changeset in webkit [170188] by andersca@apple.com
  • 8 edits
    2 moves in trunk/Source/WebKit2

Rename SessionState to LegacySessionState
https://bugs.webkit.org/show_bug.cgi?id=134107

Reviewed by Dan Bernstein.

  • Shared/LegacySessionState.cpp: Renamed from Source/WebKit2/Shared/SessionState.cpp.

(IPC::ArgumentCoder<RefPtr<T>>::encode):
(IPC::ArgumentCoder<RefPtr<T>>::decode):
(WebKit::LegacySessionState::LegacySessionState):
(WebKit::LegacySessionState::isEmpty):
(WebKit::LegacySessionState::encode):
(WebKit::LegacySessionState::decode):

  • Shared/LegacySessionState.h: Renamed from Source/WebKit2/Shared/SessionState.h.

(WebKit::LegacySessionState::list):
(WebKit::LegacySessionState::currentIndex):

  • Shared/WebPageCreationParameters.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::creationParameters):

  • UIProcess/cf/WebPageProxyCF.cpp:

(WebKit::WebPageProxy::restoreFromSessionStateData):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::restoreSession):
(WebKit::WebPage::restoreSessionAndNavigateToCurrentItem):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
9:35 AM Changeset in webkit [170187] by andersca@apple.com
  • 4 edits
    2 adds in trunk

Add WTF::Optional class
https://bugs.webkit.org/show_bug.cgi?id=134083

Reviewed by Andreas Kling.

Source/WTF:

  • WTF.xcodeproj/project.pbxproj:
  • wtf/Optional.h: Added.

(WTF::Optional::Optional):
(WTF::Optional::~Optional):
(WTF::Optional::operator bool):
(WTF::Optional::value):

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WTF/Optional.cpp: Added.

(TestWebKitAPI::TEST):

8:39 AM Changeset in webkit [170186] by Ion Rosca
  • 2 edits in trunk/Tools

Adding myself to Commiters list.

6:47 AM Changeset in webkit [170185] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Document the underlying types of the WKWindowFeatures rect properties
https://bugs.webkit.org/show_bug.cgi?id=134103

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKWindowFeatures.h:
3:24 AM Changeset in webkit [170184] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebCore

[GTK] Do not build quota files when QUOTA is disabled
https://bugs.webkit.org/show_bug.cgi?id=134101

Reviewed by Philippe Normand.

  • CMakeLists.txt: Remove exception for GTK+ that is no longer

required since r170173.

  • PlatformGTK.cmake: Generate GObject DOM bindings for Quota when enabled.
1:49 AM Changeset in webkit [170183] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit2

PluginProcessMainUnix should only scan for plugins when X11 plugin architecture is enabled
https://bugs.webkit.org/show_bug.cgi?id=134098

Reviewed by Carlos Garcia Campos.

  • PluginProcess/unix/PluginProcessMainUnix.cpp: Guard the call to NetscapePluginModule::scanPlugin()

with PLUGIN_ARCHITECTURE(X11) since the declaration has the same build guard. In case the X11 plugin
architecture is not enabled the program exits with EXIT_FAILURE.

1:28 AM Changeset in webkit [170182] by Manuel Rego Casasnovas
  • 4 edits in trunk/Source/WebCore

[CSS Grid Layout] Add GridSpan::iterator
https://bugs.webkit.org/show_bug.cgi?id=134058

Reviewed by Bem Jones-Bey.

Once that GridResolvedPosition has been introduced in r169934, this
patch adds a GridSpan::iterator which allows to simplify the loops over
GridResolvedPositions.
From now on we could use range-based for loops.

No new tests as it is already covered by current tests
(fast/css-grid-layout/).

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::computeNormalizedFractionBreadth): Change loop to
ranged-based for.
(WebCore::RenderGrid::insertItemIntoGrid): Ditto.
(WebCore::RenderGrid::gridAreaBreadthForChild): Ditto.

  • rendering/style/GridCoordinate.h: Define GridSpan::iterator.

(WebCore::GridSpan::begin): Return resolved initial position.
(WebCore::GridSpan::end): Return next to resolved final position.

  • rendering/style/GridResolvedPosition.h:

(WebCore::GridResolvedPosition::operator*): Add operator required by
range-based for loops.
(WebCore::GridResolvedPosition::operator!=): Add not equal operator.

12:55 AM Changeset in webkit [170181] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

[EFL] Add gstreamer as dependecy of EFL after r169785
https://bugs.webkit.org/show_bug.cgi?id=134066

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-06-20
Reviewed by Gyuyoung Kim.

  • efl/jhbuild.modules:
12:35 AM Changeset in webkit [170180] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebCore

Unreviewed. Fix GTK+ debug build after r170174.

  • bindings/gobject/WebKitDOMNodeFilter.cpp:

(WebKit::nodeFilterObjectDestroyedCallback):

12:33 AM Changeset in webkit [170179] by timothy_horton@apple.com
  • 15 edits in trunk/Source

LayerPool’d PlatformCALayerRemote/RemoteLayerBackingStore can have stale context pointers
https://bugs.webkit.org/show_bug.cgi?id=134050
<rdar://problem/17315114>

Reviewed by Simon Fraser.

  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(WebKit::PlatformCALayerRemote::recursiveBuildTransaction):
(WebKit::PlatformCALayerRemote::layerPool):

  • WebProcess/WebPage/mac/PlatformCALayerRemote.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeContext.h:

(WebKit::RemoteLayerTreeContext::layerPool):

  • WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:

(WebKit::RemoteLayerTreeContext::buildTransaction):
Ensure that layers being committed are always in the context that is committing them.
Use a LayerPool per RemoteLayerTreeContext, to avoid moving layers between contexts.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/cocoa/MemoryPressureHandlerCocoa.mm:

(WebCore::MemoryPressureHandler::platformReleaseMemory):
Drain all LayerPools upon memory pressure.

  • platform/graphics/ca/LayerPool.cpp:

(WebCore::LayerPool::LayerPool):
(WebCore::LayerPool::~LayerPool):
(WebCore::LayerPool::allLayerPools):
(WebCore::LayerPool::sharedPool): Deleted.

  • platform/graphics/ca/LayerPool.h:
  • platform/graphics/ca/PlatformCALayer.cpp:

(WebCore::PlatformCALayer::createCompatibleLayerWithSize):
Add createCompatibleLayerWithSize, which optionally tries to take said layer from the LayerPool.

(WebCore::PlatformCALayer::moveToLayerPool):
Add moveToLayerPool, which moves the layer to the LayerPool.

(WebCore::PlatformCALayer::layerPool):
The LayerPool for each layer is obtained via PlatformCALayer::layerPool(), which subclasses can override for special behaviors.
The base class uses a global LayerPool.

  • platform/graphics/ca/PlatformCALayer.h:
  • platform/graphics/ca/TileController.cpp:

(WebCore::TileController::createTileLayer):

  • platform/graphics/ca/TileGrid.cpp:

(WebCore::TileGrid::removeTiles):

12:31 AM Changeset in webkit [170178] by timothy_horton@apple.com
  • 4 edits in trunk/Source/WebKit2

WKContentViewInteraction isn't cleaned up when the Web Content process crashes
https://bugs.webkit.org/show_bug.cgi?id=134080
<rdar://problem/17387652> and <rdar://problem/16848360>

Reviewed by Benjamin Poulain.

  • UIProcess/ios/WKContentView.mm:

(-[WKContentView _processDidExit]):
Tear down WKContentViewInteraction when the process crashes.

(-[WKContentView _didRelaunchProcess]):
Set WKContentViewInteraction back up when the process is relaunched.

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView cleanupInteraction]):
Clear the SmartMagnificationController, which is a message receiver and thus must be re-created with the new page.
Remove all gesture recognizers from the content view.
Clear _fileUploadPanel, else we'll get an assert the next time we try to open one.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::resetStateAfterProcessExited):
Give the PageClient a chance to clean up *before* we clean up internals;
it is at a higher level and some cleanup depends on WebPageProxy members
not having been cleared yet.

12:10 AM Changeset in webkit [170177] by ryuan.choi@samsung.com
  • 3 edits in trunk/Tools

[EFL] Merge url_utils.c to MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=134095

Reviewed by Csaba Osztrogonác.

url_utils.c is simple code to share between EWebLauncher and MiniBrowser.
This patch removes the dependency of url_utils.c from MiniBrowser to drop WebKit1 EFL port.

  • MiniBrowser/efl/CMakeLists.txt:

Remove the EWebLauncher/ from the includes and url_utils.h from the source lists.

  • MiniBrowser/efl/main.c:

(has_scheme): Copied from url_utils.c
(url_from_user_input): Ditto.

12:00 AM Changeset in webkit [170176] by Csaba Osztrogonác
  • 4 edits in trunk/Tools

Fix webkitpy tests after EFL WK1 buildbot and EWS removal - r170172.

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-06-19
Reviewed by Csaba Osztrogonác.

  • Scripts/webkitpy/common/config/ports_unittest.py:

(DeprecatedPortTest.test_gtk_wk2_port):
(DeprecatedPortTest.test_efl_port): Deleted.

  • Scripts/webkitpy/style/checkers/test_expectations_unittest.py:

(TestExpectationsTestCase.test_determine_port_from_expectations_path):

  • Scripts/webkitpy/tool/commands/rebaseline_unittest.py:

(TestRebaselineExpectations.test_rebaseline_expectations):

Note: See TracTimeline for information about the timeline view.