<rdar://problem/16765765> Use JSON::PP in perl scripts instead of JSON.

Rubber stamped by Jessie Berlin.

JSON.pm was removed from our tools setup.

* Scripts/generate-coverage-data:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@167981 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[New Multicolumn] Multiple tests assert in RenderGeometryMap
https://bugs.webkit.org/show_bug.cgi?id=132285

Reviewed by Simon Fraser.

Implement offsetFromContainer for RenderMultiColumnFlowThread so that the
geometry map gets the right offsets. This is really only relevant for the 
geometry map, since I already overrode mapAbsoluteToLocalPoint and multicolumn
flow threads are repaint containers (so mapLocalToAbsolute never needs offsetFromContainer).

* rendering/RenderMultiColumnFlowThread.cpp:
(WebCore::RenderMultiColumnFlowThread::offsetFromContainer):
* rendering/RenderMultiColumnFlowThread.h:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@167982 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r167962 and r167975.
https://bugs.webkit.org/show_bug.cgi?id=132376

Mysteriously broke many tests (Requested by ap on #webkit).

Reverted changesets:

"[Mac, iOS] Support caption activation via JS
webkitHasClosedCaptions method"
https://bugs.webkit.org/show_bug.cgi?id=132320
http://trac.webkit.org/changeset/167962

"Unreviewed test fix after r167962."
http://trac.webkit.org/changeset/167975

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@167983 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: reduce per-protocol method function creation in InspectorBackend
https://bugs.webkit.org/show_bug.cgi?id=130701

Reviewed by Timothy Hatcher.

Instead of creating 4 bound functions for every backend method on startup, we
can share common functionality on the InspectorBackendCommand prototype. This
also splits the various client-facing protocol introspection mechanisms from
the message encoding/decoding code.

We use a workaround to make the command instances themselves callable as well
as having .invoke, .promise, and .supports. InspectorAgent.methodName returns a
trampoline function that performs the default method invocation. The trampoline's
__proto__ is patched to point to InspectorBackendClass.prototype, and the command
instance is saved in the closure and on the trampoline function itself.

* UserInterface/Protocol/InspectorBackend.js:
(InspectorBackendClass.prototype._registerPendingResponse):
(InspectorBackendClass.prototype._invokeMethod):
(InspectorBackendClass.prototype.registerCommand):
(InspectorBackendClass.prototype.registerEvent):
(InspectorBackendCommand):
(.callable):
(InspectorBackendCommand.create):
(InspectorBackendCommand.prototype.invoke):
(InspectorBackendCommand.prototype.promise):
(InspectorBackendCommand.prototype.supports):
(InspectorBackendCommand.prototype._invokeWithArguments):
(InspectorBackendClass.prototype._wrap): Deleted.
(InspectorBackendClass.prototype._invoke): Deleted.
(InspectorBackendClass.prototype._promise): Deleted.
(InspectorBackendClass.prototype._supports): Deleted.
(InspectorBackendClass.prototype._sendMessageToBackend): Deleted.
(InspectorBackendClass.prototype._wrapCallbackAndSendMessageObject): Deleted.
(InspectorBackendClass.prototype.sendMessageObjectToBackend): Deleted.


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