AX: WK2: iOS: text editing does not work
https://bugs.webkit.org/show_bug.cgi?id=133666

Reviewed by Mario Sanchez Prada.

In WK2, all the text editing is handled by the WebProcess, so selectedTextRange and setSelectedTextRange
need to be implemented, as well as posting the right value change notification.

* accessibility/ios/AXObjectCacheIOS.mm:
(WebCore::AXObjectCache::postPlatformNotification):
* accessibility/ios/WebAccessibilityObjectWrapperIOS.h:
* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper postValueChangedNotification]):
(-[WebAccessibilityObjectWrapper _accessibilitySelectedTextRange]):
(-[WebAccessibilityObjectWrapper _accessibilitySetSelectedTextRange:]):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@169747 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[iOS] Unreviewed build fix after r169746.

* platform/cocoa/MemoryPressureHandlerCocoa.mm:
(WebCore::MemoryPressureHandler::respondToMemoryPressure):
Protect startTime with !PLATFORM(IOS) to prevent a unused variable build error.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@169748 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[iOS] Another unreviewed build fix after r169746.

* platform/cocoa/MemoryPressureHandlerCocoa.mm:
Prevent another unused value error.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@169749 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Send more context about text selection to telephone number scanner
<rdar://problem/16874385> and https://bugs.webkit.org/show_bug.cgi?id=133684

Reviewed by Enrica Casucci.

* dom/Range.cpp:
(WebCore::rangesOverlap):Add a utility to check if two ranges overlap.
* dom/Range.h:

* editing/Editor.cpp:
(WebCore::Editor::scanSelectionForTelephoneNumbers): Create a range that is wider than the
  actual selection to search for phone numbers that are not completely selected yet.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@169750 268f45cc-cd09-0410-ab3c-d52691b4dbfc
In a certain app state, Array.prototype.filter() returns incorrect results
https://bugs.webkit.org/show_bug.cgi?id=133577

Reviewed by Oliver Hunt.


Source/JavaScriptCore: 
Fixed the LLInt processing of op_put_by_val_direct to have the same hole check as op_put_by_val.

* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:

LayoutTests: 
New test to check that the llint handles writing to an array hole from a built-in
function.

* js/regress/put-by-val-direct-expected.txt: Added.
* js/regress/put-by-val-direct.html: Added.
* js/regress/script-tests/put-by-val-direct.js: Added.
(test):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@169751 268f45cc-cd09-0410-ab3c-d52691b4dbfc
fast/dom/beforeload/remove-frame-in-beforeload-listener.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=133685

* platform/wk2/TestExpectations: Skipped the test.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@169752 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: recording is overused as both noun and verb in TimelineManager
https://bugs.webkit.org/show_bug.cgi?id=132878

Reviewed by Joseph Pecoraro.

Rename most uses of the verb 'recording' to the verb 'capturing' for timelines.
Rename getter for the recording to activeRecording, and recordingEnabled to isCapturing().

When the timeline manager can handle multiple timeline data sets (i.e., 'recordings'),
it will be very confusing to have 'recording' as a plural noun and verb in the model.

* UserInterface/Controllers/TimelineManager.js:
(WebInspector.TimelineManager):
(WebInspector.TimelineManager.prototype.get activeRecording):
(WebInspector.TimelineManager.prototype.isCapturing):
(WebInspector.TimelineManager.prototype.startCapturing):
(WebInspector.TimelineManager.prototype.stopCapturing):
(WebInspector.TimelineManager.prototype.eventRecorded.processRecord):
(WebInspector.TimelineManager.prototype.eventRecorded):
(WebInspector.TimelineManager.prototype._addRecord):
(WebInspector.TimelineManager.prototype._startAutoCapturing):
(WebInspector.TimelineManager.prototype._stopAutoRecordingSoon):
(WebInspector.TimelineManager.prototype._resetAutoRecordingDeadTimeTimeout):
(WebInspector.TimelineManager.prototype._mainResourceDidChange):
(WebInspector.TimelineManager.prototype._resourceWasAdded):
(WebInspector.TimelineManager.prototype.get recording): Deleted.
(WebInspector.TimelineManager.prototype.get recordingEnabled): Deleted.
(WebInspector.TimelineManager.prototype.startRecording): Deleted.
(WebInspector.TimelineManager.prototype.stopRecording): Deleted.
(WebInspector.TimelineManager.prototype._startAutoRecording): Deleted.
* UserInterface/Models/DefaultDashboard.js:
(WebInspector.DefaultDashboard):
(WebInspector.DefaultDashboard.prototype._mainResourceDidChange):
(WebInspector.DefaultDashboard.prototype._capturingStopped):
(WebInspector.DefaultDashboard.prototype._recordingStopped): Deleted.
* UserInterface/Protocol/InspectorFrontendAPI.js:
(InspectorFrontendAPI.isTimelineProfilingEnabled):
(InspectorFrontendAPI.setTimelineProfilingEnabled):
* UserInterface/Views/TimelineContentView.js:
(WebInspector.TimelineContentView.prototype._capturingStarted):
(WebInspector.TimelineContentView.prototype._capturingStopped):
(WebInspector.TimelineContentView.prototype._recordingStarted): Deleted.
(WebInspector.TimelineContentView.prototype._recordingStopped): Deleted.
* UserInterface/Views/TimelineSidebarPanel.js:
(WebInspector.TimelineSidebarPanel.prototype.initialize):
(WebInspector.TimelineSidebarPanel.prototype._capturingStarted):
(WebInspector.TimelineSidebarPanel.prototype._capturingStopped):
(WebInspector.TimelineSidebarPanel.prototype._recordGlyphMousedOver):
(WebInspector.TimelineSidebarPanel.prototype._recordGlyphMousedOut):
(WebInspector.TimelineSidebarPanel.prototype._recordGlyphClicked):
(WebInspector.TimelineSidebarPanel.prototype._replayCaptureButtonClicked):
(WebInspector.TimelineSidebarPanel.prototype._recordingStarted): Deleted.
(WebInspector.TimelineSidebarPanel.prototype._recordingStopped): Deleted.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@169754 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Serialize ResourceRequests without platform request
https://bugs.webkit.org/show_bug.cgi?id=133679

Reviewed by Alexey Proskuryakov.


Source/WebCore: 
We create platform requests in the web process just so we can serialize them. This is unnecessary work.

* platform/network/ResourceRequestBase.h:
(WebCore::ResourceRequestBase::encodingRequiresPlatformData):
(WebCore::ResourceRequestBase::encodeWithoutPlatformData):
(WebCore::ResourceRequestBase::decodeWithoutPlatformData):
        
    Add encoding and decoding functions here to avoid exposing internals.

* platform/network/cf/ResourceRequest.h:
(WebCore::ResourceRequest::encodingRequiresPlatformData):
        
    Allow encoding without platform data if it hasn't been created yet and there is no request body.

Source/WebKit2: 
* Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<ResourceRequest>::encode):
(IPC::ArgumentCoder<ResourceRequest>::decode):
        
    Encode ResourceRequest directly if possible.



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