Timeline



Oct 25, 2014:

10:47 PM Changeset in webkit [175209] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove a useless variable from SelectorCodeGenerator::generateElementMatchesSelectorList()
https://bugs.webkit.org/show_bug.cgi?id=138076

Reviewed by Alexey Proskuryakov.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatchesSelectorList):
The variable elementAddressRegisterIndex was just needed for debugging, it is useless now.

9:47 PM WebKitGTK/KeepingTheTreeGreen edited by yoon@igalia.com
(diff)
9:44 PM Changeset in webkit [175208] by yoon@igalia.com
  • 2 edits in trunk/LayoutTests

[GTK] Unreviewed GTK gardening after r174685.

  • platform/gtk/TestExpectations: Report new failures and update expectations.
9:12 PM Changeset in webkit [175207] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Fix link to Arch Linux Wiki
https://bugs.webkit.org/show_bug.cgi?id=138010

Patch by Raniere Silva <raniere@ime.unicamp.br> on 2014-10-25
Reviewed by Benjamin Poulain.

  • gtk/install-dependencies:
8:52 PM Changeset in webkit [175206] by Brian Burg
  • 4 edits in trunk/Source

Web Inspector: timelines should not count time elapsed while paused in the debugger
https://bugs.webkit.org/show_bug.cgi?id=136351

Unreviewed, follow-up fix after r175203. The debugger agent should not assume
that the inspector environment's stopwatch has already been started.

Source/JavaScriptCore:

  • inspector/agents/InspectorDebuggerAgent.cpp:

(Inspector::InspectorDebuggerAgent::didPause): Check if the stopwatch isActive() before stopping.

Source/WTF:

  • wtf/Stopwatch.h:

(WTF::Stopwatch::isActive): Added. Allow peeking at the stopwatch state.

8:25 PM Changeset in webkit [175205] by ap@apple.com
  • 7 edits
    6 copies
    6 adds in trunk/LayoutTests

Land Yosemite results for six editing/selection/vertical* tests.

These failures used to be mostly hidden because of bug 138070, now they are visible.
The change is due to different fonts.

  • platform/mac-mavericks/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.txt: Copied from LayoutTests/platform/mac/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.txt.
  • platform/mac-mavericks/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.txt: Copied from LayoutTests/platform/mac/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.txt.
  • platform/mac-mavericks/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.txt: Copied from LayoutTests/platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.txt.
  • platform/mac-mavericks/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.txt: Copied from LayoutTests/platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.txt.
  • platform/mac-mavericks/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.txt: Copied from LayoutTests/platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.txt.
  • platform/mac-mavericks/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.txt: Copied from LayoutTests/platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.txt.
  • platform/mac/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.png: Added.
  • platform/mac/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.txt:
  • platform/mac/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.png: Added.
  • platform/mac/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.txt:
  • platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.png: Added.
  • platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.txt:
  • platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.png: Added.
  • platform/mac/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.txt:
  • platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.png: Added.
  • platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.txt:
  • platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.png: Added.
  • platform/mac/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.txt:
4:29 PM Changeset in webkit [175204] by ap@apple.com
  • 5 edits in trunk/Tools

Test regressions are not detected when image result is missing
https://bugs.webkit.org/show_bug.cgi?id=138070

Reviewed by Simon Fraser.

  • Scripts/webkitpy/layout_tests/models/test_run_results.py:
  • Scripts/webkitpy/layout_tests/views/buildbot_results.py:

Count these as regressions, not as flaky tests.

  • Scripts/webkitpy/port/test.py:
  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

Test it.

3:05 PM Changeset in webkit [175203] by Brian Burg
  • 39 edits
    1 add in trunk/Source

Web Inspector: timelines should not count time elapsed while paused in the debugger
https://bugs.webkit.org/show_bug.cgi?id=136351

Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

Now that we have a stopwatch to provide pause-aware timing data, we can remove the
profiler's handling of debugger pause/continue callbacks. The debugger agent accounts
for suspended execution by pausing and resuming the stopwatch.

  • API/JSProfilerPrivate.cpp:

(JSStartProfiling): Use a fresh stopwatch when profiling from the JSC API.

  • inspector/InspectorEnvironment.h:
  • inspector/JSGlobalObjectInspectorController.cpp:

(Inspector::JSGlobalObjectInspectorController::JSGlobalObjectInspectorController):
(Inspector::JSGlobalObjectInspectorController::executionStopwatch):

  • inspector/JSGlobalObjectInspectorController.h:
  • inspector/ScriptDebugServer.cpp:

(Inspector::ScriptDebugServer::handlePause):

  • inspector/agents/InspectorDebuggerAgent.cpp:

(Inspector::InspectorDebuggerAgent::didPause):
(Inspector::InspectorDebuggerAgent::breakpointActionProbe):
(Inspector::InspectorDebuggerAgent::didContinue):

  • inspector/agents/InspectorDebuggerAgent.h:
  • profiler/LegacyProfiler.cpp:

(JSC::LegacyProfiler::profiler): Use nullptr.
(JSC::LegacyProfiler::startProfiling): Hand off a stopwatch to the profile generator.
(JSC::LegacyProfiler::stopProfiling): Use nullptr.
(JSC::LegacyProfiler::didPause): Deleted.
(JSC::LegacyProfiler::didContinue): Deleted.

  • profiler/LegacyProfiler.h:
  • profiler/Profile.cpp: The root node should always have a start time of 0.0.

(JSC::Profile::Profile):

  • profiler/ProfileGenerator.cpp: Remove debugger pause/continue callbacks and the

timestamp member that was used to track time elapsed by the debugger. Just use the
stopwatch's elapsed times to generate start/elapsed times for function calls.

(JSC::ProfileGenerator::create):
(JSC::ProfileGenerator::ProfileGenerator):
(JSC::AddParentForConsoleStartFunctor::operator()): The parent node of |console.profile|
should have a start time of 0.0, since it represents the starting node of profiling.

(JSC::ProfileGenerator::beginCallEntry):
(JSC::ProfileGenerator::endCallEntry):
(JSC::ProfileGenerator::didPause): Deleted.
(JSC::ProfileGenerator::didContinue): Deleted.

  • profiler/ProfileGenerator.h:

Source/WebCore:

To avoid counting time elapsed while the debugger is paused, timeline records should
keep track of time elapsed since the start of timeline capturing, rather than wall clock
timestamps. We can easily compute elapsed time by sharing a Stopwatch instance through the
inspector environment. The stopwatch runs with timelines and is paused with the debugger,
so subsequent time measurements will not include time elapsed while the debugger is paused.

This refactoring is safe because start and end times are only used to graph records; the
timestamp's actual value is irrelevant and is not displayed in the user interface. Date
timestamps are still included with network-related records as part of their header data.

No new tests, because we cannot reliably test timing changes induced by debugger pauses.
It is possible for records to accrue time before the debugger pauses or after it resumes.

  • inspector/InspectorCSSAgent.cpp: Remove unnecessary include.
  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):
(WebCore::InspectorController::executionStopwatch): Add a shared stopwatch.

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

(WebCore::InspectorPageAgent::timestamp): Redirect to the shared stopwatch.
(WebCore::InspectorPageAgent::domContentEventFired):
(WebCore::InspectorPageAgent::loadEventFired):

  • inspector/InspectorPageAgent.h:
  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::timestamp): Redirect to the shared stopwatch.
(WebCore::InspectorResourceAgent::willSendRequest):
(WebCore::InspectorResourceAgent::didReceiveResponse):
(WebCore::InspectorResourceAgent::didReceiveData):
(WebCore::InspectorResourceAgent::didFinishLoading):
(WebCore::InspectorResourceAgent::didFailLoading):
(WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
(WebCore::InspectorResourceAgent::willSendWebSocketHandshakeRequest):
(WebCore::InspectorResourceAgent::didReceiveWebSocketHandshakeResponse):
(WebCore::InspectorResourceAgent::didCloseWebSocket):
(WebCore::InspectorResourceAgent::didReceiveWebSocketFrame):
(WebCore::InspectorResourceAgent::didSendWebSocketFrame):
(WebCore::InspectorResourceAgent::didReceiveWebSocketFrameError):

  • inspector/InspectorResourceAgent.h:
  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::internalStart): Start and stop the stopwatch with timelines.
(WebCore::InspectorTimelineAgent::internalStop):
(WebCore::InspectorTimelineAgent::timestamp): Redirect to the shared stopwatch.
(WebCore::startProfiling):
(WebCore::InspectorTimelineAgent::startFromConsole):
(WebCore::InspectorTimelineAgent::willCallFunction):
(WebCore::InspectorTimelineAgent::willEvaluateScript):
(WebCore::TimelineTimeConverter::reset): Deleted.

  • inspector/InspectorTimelineAgent.h:

(WebCore::TimelineTimeConverter::TimelineTimeConverter): Deleted.
(WebCore::TimelineTimeConverter::fromMonotonicallyIncreasingTime): Deleted.
(WebCore::InspectorTimelineAgent::timeConverter): Deleted.

  • inspector/TimelineRecordFactory.cpp:
  • inspector/WorkerInspectorController.cpp:

(WebCore::WorkerInspectorController::WorkerInspectorController):
(WebCore::WorkerInspectorController::executionStopwatch): Add a shared stopwatch.

  • inspector/WorkerInspectorController.h:

Source/WebInspectorUI:

Don't update the timeline's current time when the debugger is paused.

Start and end times for timeline records are now in seconds elapsed since timeline
recording started, rather than milliseconds since the epoch. Also convert code that
tracks page/resource load timings to use elapsed times rather than timestamps.

Add a workaround to preserve compatibility with old backends. Convert legacy timestamps
in multiple agents to elapsed times.

  • UserInterface/Controllers/FrameResourceManager.js:

(WebInspector.FrameResourceManager.prototype.resourceRequestWillBeSent):
(WebInspector.FrameResourceManager.prototype.resourceRequestWasServedFromMemoryCache):
(WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveResponse):
(WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveData):
(WebInspector.FrameResourceManager.prototype.resourceRequestDidFinishLoading):
(WebInspector.FrameResourceManager.prototype.resourceRequestDidFailLoading):
(WebInspector.FrameResourceManager.prototype._addNewResourceToFrame):

  • UserInterface/Controllers/ProbeManager.js:
  • UserInterface/Controllers/TimelineManager.js:

(WebInspector.TimelineManager.prototype.computeElapsedTime): Forward to the active TimelineRecording.
(WebInspector.TimelineManager.prototype.eventRecorded.processRecord):
(WebInspector.TimelineManager.prototype.eventRecorded):
(WebInspector.TimelineManager.prototype.pageDidLoad):
(WebInspector.TimelineManager.prototype._loadNewRecording):

  • UserInterface/Models/Probe.js:

(WebInspector.ProbeSample):

  • UserInterface/Models/Resource.js:

(WebInspector.Resource.prototype.updateForRedirectResponse):
(WebInspector.Resource.prototype.updateForResponse):
(WebInspector.Resource.prototype.increaseSize):
(WebInspector.Resource.prototype.markAsFinished):
(WebInspector.Resource.prototype.markAsFailed):
(WebInspector.Resource.prototype.revertMarkAsFinished):

  • UserInterface/Models/TimelineRecording.js:

(WebInspector.TimelineRecording.prototype.computeElapsedTime):

  • UserInterface/Views/TimelineContentView.js:

(WebInspector.TimelineContentView.prototype._debuggerPaused):
(WebInspector.TimelineContentView.prototype._debuggerResumed):

Source/WTF:

  • WTF.vcxproj/WTF.vcxproj:
  • WTF.vcxproj/WTF.vcxproj.filters:
  • WTF.xcodeproj/project.pbxproj:
  • wtf/CMakeLists.txt:
  • wtf/Stopwatch.h: Added. This implements a refcounted monotonic stopwatch.

(WTF::Stopwatch::create):
(WTF::Stopwatch::Stopwatch):
(WTF::Stopwatch::reset):
(WTF::Stopwatch::start):
(WTF::Stopwatch::stop):
(WTF::Stopwatch::elapsedTime):

12:58 PM Changeset in webkit [175202] by ap@apple.com
  • 1 edit
    1 add in trunk/LayoutTests

Add Mavericks results for platform/mac/editing/spelling/delete-autocorrected-word-2.html, too.

Yosemite, Mavericks and Mountain Lion all have different results.

  • platform/mac-mavericks/platform/mac/editing/spelling/delete-autocorrected-word-2-expected.txt: Added.
12:25 PM Changeset in webkit [175201] by ap@apple.com
  • 3 edits in trunk/LayoutTests

Update Yosemite results for platform/mac/editing/spelling/delete-autocorrected-word-2.html.

Looks like this got confused during Yosemite tests landing.

This test is currently marked as failing on WK2, but it passed for me, so maybe we
can mark it as passing there too. Tracked as bug 105616.

  • platform/mac/editing/spelling/delete-autocorrected-word-2-expected.png:
  • platform/mac/editing/spelling/delete-autocorrected-word-2-expected.txt:
12:21 PM Changeset in webkit [175200] by mitz@apple.com
  • 2 edits in trunk/Source/WebCore

Fix builds using the public SDK.

  • platform/spi/cocoa/NSExtensionSPI.h:
12:10 PM Changeset in webkit [175199] by ap@apple.com
  • 2 edits
    1 copy
    2 deletes in trunk/LayoutTests

Update results for compositing/rtl/rtl-fixed-overflow-scrolled.html.

Prior to Yosemite results landing, this test was marked as failing on WK2, and its
results matched WK1. It got changed several times during the merge, so it ended
up being marked as failing on WK1, but with WK1 results landed.

Let's land WK2 results and keep testing on WK2. Also, Mavericks results were no different
from Yosemite.

  • platform/mac-mavericks/compositing/rtl/rtl-fixed-overflow-scrolled-expected.png: Removed.
  • platform/mac-mavericks/compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt: Removed.
  • platform/mac/compositing/rtl/rtl-fixed-overflow-scrolled-expected.png: Copied from LayoutTests/compositing/rtl/rtl-fixed-overflow-scrolled-expected.png.
  • platform/mac/compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt:
2:42 AM WebKitGTK/KeepingTheTreeGreen edited by yoon@igalia.com
(diff)

Oct 24, 2014:

8:18 PM Changeset in webkit [175198] by Lucas Forschler
  • 5 edits in branches/safari-600.3-branch/Source

Versioning.

7:37 PM Changeset in webkit [175197] by Alan Bujtas
  • 5 edits
    2 adds in trunk

Clamp wordSpacing percentage value.
https://bugs.webkit.org/show_bug.cgi?id=129350.

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2014-10-24
Reviewed by Zalan Bujtas.

Source/WebCore:

When the CSS wordSpacing property is percentage, its value has to be within the
pre-defined min/max values for the CSS length type. This is done the same way
the wordSpacing of type <length> is handled.

Tests: css3/infinite-word-spacing.html.

Move the definitions of minValueForCssLength and maxValueForCssLength from the
.cpp file to the .h file.

  • css/CSSPrimitiveValue.cpp:
  • css/CSSPrimitiveValue.h:

Clamp the wordSpacing value to minValueForCssLength and maxValueForCssLength when
its type is percentage.

  • css/DeprecatedStyleBuilder.cpp:

(WebCore::ApplyPropertyWordSpacing::applyValue):

LayoutTests:

Make sure that setting the CSS style wordSpacing property to very huge percentage
value and blending this value with other values for animating key frames does
not assert or crash. The expectation is to have this huge value to be clamped to
the pre-defined min/max values for the CSS length type. So when blending the clamped
value with other wordSpacing values, the result can't be NaN. This should be very
similar to the case when it is set to a huge <length> value.

  • css3/infinite-word-spacing-expected.txt: Added.
  • css3/infinite-word-spacing.html: Added.
7:15 PM Changeset in webkit [175196] by benjamin@webkit.org
  • 5 edits in trunk/Source

Fix the iOS build

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-10-24

Source/WebKit/mac:

  • Configurations/WebKitLegacy.xcconfig:
  • WebView/WebView.mm:

Source/WebKit2:

  • Configurations/WebKit.xcconfig:
5:50 PM Changeset in webkit [175195] by Lucas Forschler
  • 1 copy in tags/Safari-600.3.1

New Tag.

5:12 PM Changeset in webkit [175194] by ap@apple.com
  • 2 edits
    2 copies
    1 add in trunk/LayoutTests

Update Yosemite results for fast/block/float/overhanging-tall-block.html for
font size differences.

The test fails pixel results, filed bug 138065 to track that.

  • platform/mac-mavericks/fast/block/float: Added.
  • platform/mac-mavericks/fast/block/float/overhanging-tall-block-expected.png: Copied from LayoutTests/platform/mac/fast/block/float/overhanging-tall-block-expected.png.
  • platform/mac-mavericks/fast/block/float/overhanging-tall-block-expected.txt: Copied from LayoutTests/platform/mac/fast/block/float/overhanging-tall-block-expected.txt.
  • platform/mac/fast/block/float/overhanging-tall-block-expected.txt:
4:51 PM Changeset in webkit [175193] by Beth Dakin
  • 6 edits
    1 add in trunk/Source/WebKit2

_actionMenuItemsForHitTestResult should also take a type indicating what the menu
was built for
https://bugs.webkit.org/show_bug.cgi?id=138063

Reviewed by Dan Bernstein.

New type enum that can be used by clients.

  • Shared/API/c/WKActionMenuTypes.h: Added.

Remove the old SPI and add the new.

  • UIProcess/API/Cocoa/WKViewPrivate.h:
  • UIProcess/API/mac/WKView.mm:

(-[WKView _actionMenuItemsForHitTestResult:withType:defaultActionMenuItems:]):
(-[WKView _actionMenuItemsForHitTestResult:defaultActionMenuItems:]): Deleted.

Now keep an ivar for the type.

  • UIProcess/mac/WKActionMenuController.h:

Create a category for the old SPI so that we can still call it if clients have
implemented it.

  • UIProcess/mac/WKActionMenuController.mm:

(-[WKActionMenuController initWithPage:view:]):
(-[WKActionMenuController didCloseMenu:withEvent:]):
(imageForResource:name::if):
(-[WKActionMenuController _updateActionMenuItems]):

  • WebKit2.xcodeproj/project.pbxproj:
4:51 PM Changeset in webkit [175192] by ap@apple.com
  • 5 edits
    4 copies in trunk/LayoutTests

Update media test results for Yosemite.

media/controls-styling.html appears to actually fail, filed bug 138064 about that.
media/video-zoom-controls.html results are not great; Dean reportedly has a fix for that.

  • platform/mac-mavericks/media/controls-styling-expected.png: Copied from LayoutTests/platform/mac/media/controls-styling-expected.png.
  • platform/mac-mavericks/media/controls-styling-expected.txt: Copied from LayoutTests/platform/mac/media/controls-styling-expected.txt.
  • platform/mac-mavericks/media/video-zoom-controls-expected.png: Copied from LayoutTests/platform/mac/media/video-zoom-controls-expected.png.
  • platform/mac-mavericks/media/video-zoom-controls-expected.txt: Copied from LayoutTests/platform/mac/media/video-zoom-controls-expected.txt.
  • platform/mac/media/controls-styling-expected.png:
  • platform/mac/media/controls-styling-expected.txt:
  • platform/mac/media/video-zoom-controls-expected.png:
  • platform/mac/media/video-zoom-controls-expected.txt:
4:13 PM Changeset in webkit [175191] by ap@apple.com
  • 1 edit
    2 deletes in trunk/LayoutTests

Remove MountainLion results that I incorrectly copied. These are the same as Mavericks.

  • platform/mac-mountainlion/fast/writing-mode: Removed.
  • platform/mac-mountainlion/fast/writing-mode/Kusa-Makura-background-canvas-expected.png: Removed.
  • platform/mac-mountainlion/fast/writing-mode/Kusa-Makura-background-canvas-expected.txt: Removed.
  • platform/mac-mountainlion/mathml: Removed.
  • platform/mac-mountainlion/mathml/opentype: Removed.
  • platform/mac-mountainlion/mathml/opentype/opentype-stretchy-horizontal-expected.txt: Removed.
4:10 PM Changeset in webkit [175190] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

Share sheet doesn't attach to the window
https://bugs.webkit.org/show_bug.cgi?id=138062
<rdar://problem/18767397>

Reviewed by Beth Dakin.

  • UIProcess/mac/WKActionMenuController.h:

WKActionMenuController is now a NSSharingService{Picker}Delegate.

  • UIProcess/mac/WKActionMenuController.mm:

(-[WKActionMenuController _defaultMenuItemsForImage]):
Set us up as the NSSharingServicePicker delegate.

(-[WKActionMenuController sharingServicePicker:delegateForSharingService:]):
Set us up as the NSSharingService delegate.

(-[WKActionMenuController sharingService:sourceWindowForShareItems:sharingContentScope:]):
Return the appropriate window to attach to.

4:03 PM Changeset in webkit [175189] by timothy_horton@apple.com
  • 2 edits in trunk/Tools

Add Conrad Shultz to the contributors list.

  • Scripts/webkitpy/common/config/contributors.json:
4:01 PM Changeset in webkit [175188] by jer.noble@apple.com
  • 7 edits
    1 add in trunk/Source/WebKit2

Abstractify WebOriginDataManager to support arbitrary ChildProcess supplements.
https://bugs.webkit.org/show_bug.cgi?id=137993

Reviewed by Brady Eidson.

To allow different ChildProcess subclasses to handle listing and deletion of origin
data, make WebOriginDataManager more generic by having a supplement implement the
details, leaving WebOriginDataManager to deal with cross-process messaging.

De-virtualize AsyncTask, allowing a task to be created by passing in a
function<void()>, rather than an object, method, and arguments.

  • Shared/AsyncTask.h:

(WebKit::AsyncTask::AsyncTask):
(WebKit::AsyncTask::performTask):
(WebKit::AsyncTask::~AsyncTask): Deleted.

Add a new virtual base class, to be implemented by various ChildProcesses, which
WebOriginDataManager will use to implement listing and deletion requests.

  • WebProcess/OriginData/WebOriginDataManager.h:
  • WebProcess/OriginData/WebOriginDataManagerSupplement.h: Added.

(WebKit::WebOriginDataManagerSupplement::WebOriginDataManagerSupplement):
(WebKit::WebOriginDataManagerSupplement::~WebOriginDataManagerSupplement):
(WebKit::WebOriginDataManagerSupplement::getOrigins):
(WebKit::WebOriginDataManagerSupplement::deleteEntriesForOrigin):
(WebKit::WebOriginDataManagerSupplement::deleteEntriesModifiedBetweenDates):
(WebKit::WebOriginDataManagerSupplement::deleteAllEntries):

  • WebKit2.xcodeproj/project.pbxproj:

WebOriginDataManager doesn't need to be a ChildSupplement. Remove the DatabaseProcess-
specific implementations for its message handlers and replace with clean, generic calls
to its supplement. Because these supplements may want to respond to the request
asynchronously, pass a completion function in to be called by the supplement once its
work is complete.

  • WebProcess/OriginData/WebOriginDataManager.cpp:

(WebKit::WebOriginDataManager::WebOriginDataManager):
(WebKit::WebOriginDataManager::getOrigins):
(WebKit::WebOriginDataManager::deleteEntriesForOrigin):
(WebKit::WebOriginDataManager::deleteEntriesModifiedBetweenDates):
(WebKit::WebOriginDataManager::deleteAllEntries):
(WebKit::WebOriginDataManager::supplementName): Deleted.

DatabaseProcess already uses WebOriginDataManager, so it will be the first process
to fall under the heel of the new regime. DatabaseProcess will subclass
WebOriginDataManagerSupplement, and pass itself in twice to the WebOriginDataManager
constructor. Create a lambda-based AsyncTask for each request, and call the completion
function when each request is complete.

  • DatabaseProcess/DatabaseProcess.cpp:

(WebKit::DatabaseProcess::DatabaseProcess):
(WebKit::DatabaseProcess::getIndexedDatabaseOrigins):
(WebKit::DatabaseProcess::deleteIndexedDatabaseEntriesForOrigin):
(WebKit::DatabaseProcess::deleteIndexedDatabaseEntriesModifiedBetweenDates):
(WebKit::DatabaseProcess::deleteAllIndexedDatabaseEntries):
(WebKit::DatabaseProcess::getOrigins):
(WebKit::DatabaseProcess::deleteEntriesForOrigin):
(WebKit::DatabaseProcess::deleteEntriesModifiedBetweenDates):
(WebKit::DatabaseProcess::deleteAllEntries):
(WebKit::DatabaseProcess::doGetIndexedDatabaseOrigins): Deleted.
(WebKit::DatabaseProcess::doDeleteIndexedDatabaseEntriesForOrigin): Deleted.
(WebKit::DatabaseProcess::doDeleteIndexedDatabaseEntriesModifiedBetweenDates): Deleted.
(WebKit::DatabaseProcess::doDeleteAllIndexedDatabaseEntries): Deleted.

  • DatabaseProcess/DatabaseProcess.h:
3:27 PM Changeset in webkit [175187] by Beth Dakin
  • 3 edits in trunk/Source/WebKit2

Very large images crash in action menu code
https://bugs.webkit.org/show_bug.cgi?id=138059
-and corresponding-
rdar://problem/18767859

Reviewed by Tim Horton.

If the HitTestResult failed to create and image, then don’t go for the image
action menu.

  • UIProcess/mac/WKActionMenuController.mm:

(-[WKActionMenuController _defaultMenuItems]):

ShareableBitmap::createShareable() can fail. The result needs to be null-checked.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::performActionMenuHitTestAtLocation):

3:24 PM Changeset in webkit [175186] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

[Mac] Use modern loops in ResourceRequestCocoa.mm
https://bugs.webkit.org/show_bug.cgi?id=138052

Reviewed by Darin Adler.

Use modern loops in ResourceRequestCocoa.mm and leverage Objective-C's
fast enumeration.

No new tests, no behavior change.

  • platform/network/cocoa/ResourceRequestCocoa.mm:

(WebCore::ResourceRequest::doUpdateResourceRequest):

  • Use NSDictionary's block-based enumeration as we enumerate both keys and values and this is faster than using fast enumeration of the keys then calling [NSDictionary objectForKey:]
  • Use Objective C's fast enumeration for contentDispositionEncodingFallbackArray as this is faster and shorter than index based access. Also use reserveCapacity() / uncheckedAppend() for m_responseContentDispositionEncodingFallbackArray as we know how many elements were are going to append in the common case.

(WebCore::ResourceRequest::doUpdatePlatformRequest):

  • Use fast enumeration for [nsRequest allHTTPHeaderFields] dictionary keys instead of calling [NSDictionary allKeys] and then doing index-based iteration, to avoid copying the keys to a new array. Also do a forward enumeration instead of a reverse one. I don't see why a backward enumeration would be necessary here. We are not modifying the NSDictionary we are iterating over as [nsRequest allHTTPHeaderFields] makes a copy.
  • Use a modern C++ loop for m_responseContentDispositionEncodingFallbackArray.
3:01 PM Changeset in webkit [175185] by Beth Dakin
  • 3 edits in trunk/Source/WebKit2

Build fix.

  • UIProcess/mac/WKActionMenuController.h:
  • UIProcess/mac/WKActionMenuController.mm:
2:51 PM Changeset in webkit [175184] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

Blindly try to fix all the builds.

  • UIProcess/mac/WKActionMenuController.h:
  • UIProcess/mac/WKActionMenuController.mm:
2:49 PM Changeset in webkit [175183] by Beth Dakin
  • 2 edits in trunk/Source/WebKit/mac

Build fix.

  • WebView/WebActionMenuController.mm:

(-[WebActionMenuController _openURLFromActionMenu:]):
(-[WebActionMenuController _addToReadingListFromActionMenu:]):
(-[WebActionMenuController _quickLookURLFromActionMenu:]):

2:45 PM Changeset in webkit [175182] by Beth Dakin
  • 6 edits
    6 adds in trunk/Source/WebKit

WebKit1 should support action menus
https://bugs.webkit.org/show_bug.cgi?id=138032

Reviewed by Tim Horton.

This patch adds basic support for action menus and adds actions for links.

Helper class takes care of all of the action menu work. WebView will forward the
prepareForMenu: message, and then the helper class takes it from there.

  • WebView/WebActionMenuController.h: Added.
  • WebView/WebActionMenuController.mm: Added.

(-[WebActionMenuController webViewClosed]):
(-[WebActionMenuController prepareForMenu:withEvent:]):

Selectors for link actions.
(-[WebActionMenuController _openURLFromActionMenu:]):
(-[WebActionMenuController _addToReadingListFromActionMenu:]):
(-[WebActionMenuController _elementBoundingBoxFromDOMElement:]):
(-[WebActionMenuController _quickLookURLFromActionMenu:]):
(-[WebActionMenuController _createActionMenuItemForTag:withHitTestResult:]):
(webKitBundleImageNamed):
(-[WebActionMenuController _defaultMenuItemsForLink:]):
(-[WebActionMenuController _defaultMenuItemsForHitTestResult:]):

Tags for the action menu items.

  • WebView/WebUIDelegatePrivate.h:
  • WebView/WebView.mm:

Set the action menu if possible and create the controller.
(-[WebView _initWithFrame:frameName:groupName:]):
(-[WebView _close]):
(-[WebView prepareForMenu:withEvent:]):

WebViewData stores the WebActionMenuHelper

  • WebView/WebViewData.h:
  • WebView/WebViewData.mm:

(-[WebViewPrivate dealloc]):

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

Blindly try to fix all the builds.

  • UIProcess/mac/WKActionMenuController.h:
2:39 PM Changeset in webkit [175180] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

Blindly try to fix the 32-bit build.

  • UIProcess/mac/WKActionMenuController.h:
  • UIProcess/mac/WKActionMenuController.mm:
2:13 PM Changeset in webkit [175179] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

[Mac][WebKit2] Move action menu code into its own file
https://bugs.webkit.org/show_bug.cgi?id=138034
<rdar://problem/18758758>

  • UIProcess/mac/WKActionMenuController.mm:

(-[WKActionMenuController prepareForMenu:withEvent:]):
(-[WKActionMenuController _addImageToPhotos:]):
Review comments that were not previously addressed.

2:08 PM Changeset in webkit [175178] by timothy_horton@apple.com
  • 3 edits
    2 adds in trunk/Source/WebKit2

[Mac][WebKit2] Move action menu code into its own file
https://bugs.webkit.org/show_bug.cgi?id=138034
<rdar://problem/18758758>

Reviewed by Dan Bernstein.

  • UIProcess/API/mac/WKView.mm:

(-[WKView initWithFrame:context:configuration:webView:]):
Make a WKActionMenuController if needed.

(-[WKView prepareForMenu:withEvent:]):
(-[WKView willOpenMenu:withEvent:]):
(-[WKView didCloseMenu:withEvent:]):
(-[WKView _didPerformActionMenuHitTest:]):
Forward these to WKActionMenuController.

(-[WKView _openURLFromActionMenu:]): Deleted.
(-[WKView _addToReadingListFromActionMenu:]): Deleted.
(-[WKView _quickLookURLFromActionMenu:]): Deleted.
(-[WKView _createActionMenuItemForTag:]): Deleted.
(webKitBundleImageNamed): Deleted.
(-[WKView _copyImage:]): Deleted.
(-[WKView _saveImageToDownloads:]): Deleted.
(temporaryPhotosDirectoryPath): Deleted.
(pathToPhotoOnDisk): Deleted.
(-[WKView _addImageToPhotos:]): Deleted.
(-[WKView _defaultMenuItemsForImage]): Deleted.
(-[WKView _defaultMenuItems]): Deleted.
(-[WKView _updateActionMenu]): Deleted.
Moved to WKActionMenuController.

  • UIProcess/mac/WKActionMenuController.h: Added.
  • UIProcess/mac/WKActionMenuController.mm: Added.

(-[WKActionMenuController initWithPage:view:]):
(-[WKActionMenuController prepareForMenu:withEvent:]):
(-[WKActionMenuController willOpenMenu:withEvent:]):
(-[WKActionMenuController didCloseMenu:withEvent:]):
(-[WKActionMenuController didPerformActionMenuHitTest:]):
(-[WKActionMenuController _defaultMenuItemsForLink]):
(-[WKActionMenuController _openURLFromActionMenu:]):
(-[WKActionMenuController _addToReadingListFromActionMenu:]):
(-[WKActionMenuController _quickLookURLFromActionMenu:]):
(-[WKActionMenuController _defaultMenuItemsForImage]):
(-[WKActionMenuController _copyImage:]):
(-[WKActionMenuController _saveImageToDownloads:]):
(temporaryPhotosDirectoryPath):
(pathToPhotoOnDisk):
(-[WKActionMenuController _addImageToPhotos:]):
(-[WKActionMenuController _createActionMenuItemForTag:]):
(webKitBundleImageNamed):
(imageForResource:name::if):
(-[WKActionMenuController _updateActionMenuItems]):
Moved from WKView.

  • WebKit2.xcodeproj/project.pbxproj:
1:59 PM Changeset in webkit [175177] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

Replace INT_MIN/MAX / kFixedPointDenominator with intMin/MaxForLayoutUnit.
https://bugs.webkit.org/show_bug.cgi?id=138047

Reviewed by Andreas Kling.

No change in functionality.

  • css/CSSPrimitiveValue.cpp:
1:26 PM Changeset in webkit [175176] by roger_fong@apple.com
  • 4 edits
    8 adds in trunk/LayoutTests

[Win] More unreviewed gardening/rebaselining of Windows tests.

  • platform/win/TestExpectations:
  • platform/win/fast/repaint/select-option-background-color-expected.txt:
  • platform/win/fast/repaint/slider-thumb-drag-release-expected.txt: Added.
  • platform/win/fast/repaint/slider-thumb-float-expected.txt: Added.
  • platform/win/fast/replaced/table-percent-height-expected.txt: Added.
  • platform/win/fast/replaced/three-selects-break-expected.txt: Added.
  • platform/win/fast/table/remove-td-display-none-expected.txt:
  • platform/win/fast/transforms: Added.
  • platform/win/fast/transforms/transformed-focused-text-input-expected.txt: Added.
  • platform/win/platform/win/accessibility: Added.
  • platform/win/platform/win/accessibility/option-element-position-and-size-expected.txt: Added.
1:23 PM Changeset in webkit [175175] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

REGRESSION(r174877): WebProcess sends an empty Cookies HTTP header
https://bugs.webkit.org/show_bug.cgi?id=138053

Reviewed by Chris Dumez.

Fixes existing tests.

  • platform/network/mac/CookieJarMac.mm: (WebCore::cookiesForSession): Restore the

behavior of returning a null string when there are no cookies.

1:12 PM Changeset in webkit [175174] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

[Mac] Use NSString API in QuickLookMac::computeNeedsQuickLookResourceCachingQuirks()
https://bugs.webkit.org/show_bug.cgi?id=138039

Reviewed by Darin Adler.

Use NSString API in QuickLookMac::computeNeedsQuickLookResourceCachingQuirks()
for case-insensitive string comparison instead of converting to UTF-8 and then
using strcasecmp().

No new tests, no behavior change.

  • platform/mac/QuickLookMac.mm:

(WebCore::QuickLookMac::computeNeedsQuickLookResourceCachingQuirks):

12:28 PM Changeset in webkit [175173] by ap@apple.com
  • 6 edits
    7 copies
    4 adds
    1 delete in trunk/LayoutTests

Update some results that were incorrect for Yosemite.

  • platform/mac-mavericks/fast/text/international/hindi-spacing-expected.png: Copied from LayoutTests/platform/mac/fast/text/international/hindi-spacing-expected.png.
  • platform/mac-mavericks/fast/text/international/hindi-spacing-expected.txt: Copied from LayoutTests/platform/mac/fast/text/international/hindi-spacing-expected.txt.
  • platform/mac-mavericks/fast/writing-mode: Added.
  • platform/mac-mavericks/fast/writing-mode/Kusa-Makura-background-canvas-expected.png: Copied from LayoutTests/platform/mac/fast/writing-mode/Kusa-Makura-background-canvas-expected.png.
  • platform/mac-mavericks/fast/writing-mode/Kusa-Makura-background-canvas-expected.txt: Copied from LayoutTests/platform/mac/fast/writing-mode/Kusa-Makura-background-canvas-expected.txt.
  • platform/mac-mountainlion/fast/writing-mode: Added.
  • platform/mac-mountainlion/fast/writing-mode/Kusa-Makura-background-canvas-expected.png: Copied from LayoutTests/platform/mac/fast/writing-mode/Kusa-Makura-background-canvas-expected.png.
  • platform/mac-mountainlion/fast/writing-mode/Kusa-Makura-background-canvas-expected.txt: Copied from LayoutTests/platform/mac/fast/writing-mode/Kusa-Makura-background-canvas-expected.txt.
  • platform/mac-mountainlion/mathml: Added.
  • platform/mac-mountainlion/mathml/opentype: Added.
  • platform/mac-mountainlion/mathml/opentype/opentype-stretchy-horizontal-expected.txt: Copied from LayoutTests/platform/mac/mathml/opentype/opentype-stretchy-horizontal-expected.txt.
  • platform/mac-wk2/fast/writing-mode/Kusa-Makura-background-canvas-expected.png: Removed.
  • platform/mac/fast/text/international/hindi-spacing-expected.png:
  • platform/mac/fast/text/international/hindi-spacing-expected.txt:
  • platform/mac/fast/writing-mode/Kusa-Makura-background-canvas-expected.png:
  • platform/mac/fast/writing-mode/Kusa-Makura-background-canvas-expected.txt:
  • platform/mac/mathml/opentype/opentype-stretchy-horizontal-expected.txt:
12:16 PM Changeset in webkit [175172] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Simplified IndexingType's hasAnyArrayStorage().
<https://webkit.org/b/138051>

Reviewed by Michael Saboff.

IndexingType's hasAnyArrayStorage() currently does subtraction of ArrayStorageShape
with the purpose of making non-ArrayStorage types underflow (with that subtraction)
and have a result that exceeds SlowPutArrayStorageShape. What it is doing is
basically checking for a shape value that is greater equal to ArrayStorageShape.
We can just simplify the code as such.

Also added a comment to describe the structure of the bits in IndexingType.

  • runtime/IndexingType.h:

(JSC::hasAnyArrayStorage):

12:13 PM Changeset in webkit [175171] by Chris Dumez
  • 3 edits in trunk/Source/WebCore

Avoid unnecessary NSURLRequest copies in ResourceRequest::doUpdatePlatformRequest() / doUpdatePlatformHTTPBody()
https://bugs.webkit.org/show_bug.cgi?id=138049

Reviewed by Alexey Proskuryakov.

Avoid unnecessary NSURLRequest copies in ResourceRequest::doUpdatePlatformRequest()
/ doUpdatePlatformHTTPBody(). It turns out that about half the time, the
m_nsRequest member is already mutable so it is unnecessary to call
[NSURLRequest mutableCopy], we can just cast it to an NSMutableURLRequest* and
avoid copying.

This patch also moves the code to a new ensureMutableNSURLRequest() method to
avoid duplicating the logic.

I see that we spend ~21% less time in these 2 functions when loading
http://flickr.com/explore/ (39.6ms -> 31.2ms).

No new tests, no behavior change.

  • platform/network/cf/ResourceRequest.h:
  • platform/network/cocoa/ResourceRequestCocoa.mm:

(WebCore::ResourceRequest::ensureMutableNSURLRequest):
(WebCore::ResourceRequest::doUpdatePlatformRequest):
(WebCore::ResourceRequest::doUpdatePlatformHTTPBody):

12:11 PM Changeset in webkit [175170] by ap@apple.com
  • 3 edits in trunk/LayoutTests

fast/multicol/fixed-stack.html failing since introduction.
https://bugs.webkit.org/show_bug.cgi?id=132421

  • platform/mac-wk1/TestExpectations: As of Yosemite, it's failing on mac-wk1 too.
  • platform/gtk/TestExpectations: [ Pass ] is no longer needed, because we don't have

an entry in global TestExpectations now.

11:32 AM Changeset in webkit [175169] by Chris Dumez
  • 4 edits in trunk/Source/WebCore

Move ComputeLength CSS properties to the new StyleBuilder
https://bugs.webkit.org/show_bug.cgi?id=138036

Reviewed by Andreas Kling.

Move ComputeLength CSS properties from DeprecatedStyleBuilder to the
new StyleBuilder so that they are now generated. 3 Converters are
provided for these properties: ComputedLength / LineWidth / Spacing.

This is inspired by the following Blink revision by
<timloh@chromium.org>:
https://src.chromium.org/viewvc/blink?view=rev&revision=154012

No new tests, no behavior change.

  • css/CSSPropertyNames.in:
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
(WebCore::ApplyPropertyComputeLength::setValue): Deleted.
(WebCore::ApplyPropertyComputeLength::applyValue): Deleted.
(WebCore::ApplyPropertyComputeLength::createHandler): Deleted.

  • css/StyleBuilderConverter.h:

(WebCore::StyleBuilderConverter::convertComputedLength):
(WebCore::StyleBuilderConverter::convertLineWidth):
(WebCore::StyleBuilderConverter::convertSpacing):

11:13 AM Changeset in webkit [175168] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

Make ScriptWrappable's destructor protected instead of public
https://bugs.webkit.org/show_bug.cgi?id=138037

Reviewed by Andreas Kling.

Make ScriptWrappable's destructor protected instead of public as it is
not virtual and this class is subclassed a lot.

No new tests, no behavior change.

  • bindings/js/ScriptWrappable.h:

(WebCore::ScriptWrappable::~ScriptWrappable):

10:25 AM Changeset in webkit [175167] by ap@apple.com
  • 2 edits in trunk/Source/WebKit

All plug-in tests fail on Yosemite WK1
https://bugs.webkit.org/show_bug.cgi?id=138040

Reviewed by Dan Bernstein.

Fix a symlink for WebKitPluginHost.app. There is also a broken symlink for WebKitPluginAgent,
which I don't know what to do about, but that seems harmless.

  • WebKit.xcodeproj/project.pbxproj:
10:03 AM Changeset in webkit [175166] by mitz@apple.com
  • 2 edits in trunk/Tools

build.webkit.org/dashboard immediately retries a request to buildbot when the response is 404
https://bugs.webkit.org/show_bug.cgi?id=138046

Reviewed by Alexey Proskuryakov.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:

(BuildbotQueue.prototype._load): Only consider retrying immediately if the error code was

  1. Otherwise, we’ll retry normally in 45 seconds.
2:12 AM Changeset in webkit [175165] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

[Windows] Skip tests after removing SafariTheme that fail because background renders too dark.
https://bugs.webkit.org/show_bug.cgi?id=138042.

  • platform/win/TestExpectations:

24 Roger Fong <roger_fong@apple.com>

2:04 AM Changeset in webkit [175164] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

[Windows] Skip tests after removing SafariTheme that fail because borders now render too dark.
https://bugs.webkit.org/show_bug.cgi?id=138041.

  • platform/win/TestExpectations:
1:59 AM Changeset in webkit [175163] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

[Windows] More unreviewed gardening after getting rid of SafariTheme.

  • platform/win/TestExpectations: Skip a handful of tests that were failing

on the Windows bots after removing SafariTheme for miscellaneous reasons.

1:51 AM Changeset in webkit [175162] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

[Windows] More unreviewed gardening after getting rid of SafariTheme.
https://bugs.webkit.org/show_bug.cgi?id=138025

  • platform/win/TestExpectations: These tests fail seemingly due to text size difference,

which consequently cause the text containers to be too larger as well.

1:43 AM Changeset in webkit [175161] by roger_fong@apple.com
  • 9 edits
    9 adds in trunk/LayoutTests

[Windows] More rebaselining of Windows tests after removing SafariTheme.

  • platform/win/editing/selection/select-across-readonly-input-1-expected.txt:
  • platform/win/editing/selection/select-across-readonly-input-2-expected.txt:
  • platform/win/editing/selection/select-across-readonly-input-3-expected.txt:
  • platform/win/fast/block/positioning/inline-block-relposition-expected.txt:
  • platform/win/fast/canvas/fallback-content-expected.txt: Added.
  • platform/win/fast/css/button-height-expected.txt:
  • platform/win/fast/dom/HTMLInputElement: Added.
  • platform/win/fast/dom/HTMLInputElement/input-slider-update-expected.txt: Added.
  • platform/win/fast/dom/HTMLInputElement/input-slider-update-styled-expected.txt: Added.
  • platform/win/fast/dom/tabindex-clamp-expected.txt: Added.
  • platform/win/fast/dynamic/positioned-movement-with-positioned-children-expected.txt:
  • platform/win/fast/html/details-no-summary4-expected.txt: Added.
  • platform/win/fast/html/details-open-javascript-expected.txt: Added.
  • platform/win/fast/html/details-open2-expected.txt: Added.
  • platform/win/fast/html/details-open4-expected.txt: Added.
  • platform/win/fast/html/details-replace-summary-child-expected.txt:
  • platform/win/fast/html/details-replace-text-expected.txt:
12:09 AM Changeset in webkit [175160] by commit-queue@webkit.org
  • 10 edits in trunk

[GTK] Implement is_selected method on WebKitHitTestResult
https://bugs.webkit.org/show_bug.cgi?id=137110

Patch by Marcos Chavarría Teijeiro <chavarria1991@gmail.com> on 2014-10-24
Reviewed by Tim Horton.

Source/WebKit2:

Expose CONTEXT_SELECTION for WebKitHitTestResult.

  • Shared/WebHitTestResult.cpp: Add is_selected field and getter for this field.

(WebKit::WebHitTestResult::Data::Data):
(WebKit::WebHitTestResult::Data::encode):
(WebKit::WebHitTestResult::Data::decode):

  • Shared/WebHitTestResult.h:

(WebKit::WebHitTestResult::isSelected):

  • UIProcess/API/gtk/WebKitHitTestResult.cpp: Add WEBKIT_HIT_TEST_RESULT_CONTEXT_SELECTION context and method to check it.

(webkitHitTestResultCreate):
(webkitHitTestResultCompare):
(webkit_hit_test_result_context_is_selection):

  • UIProcess/API/gtk/WebKitHitTestResult.h:
  • UIProcess/API/gtk/WebKitWebView.cpp: Modify context-menu callback to set the new context option.

(webkitWebViewPopulateContextMenu):

  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add documentation about new function.

Tools:

Add tests for new context SELECTION on WebKitHitTestResult.

  • TestWebKitAPI/Tests/WebKit2Gtk/TestContextMenu.cpp:

(testContextMenuDefaultMenu):

  • TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:

(testWebViewMouseTarget):

Oct 23, 2014:

11:58 PM Changeset in webkit [175159] by Carlos Garcia Campos
  • 8 edits
    2 copies
    2 moves
    1 add
    1 delete in trunk/Source

[GTK][Cairo] Remove GTK dependency of WidgetBackingStoreGtkX11
https://bugs.webkit.org/show_bug.cgi?id=138004

Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Rename all WidgetBackingStore* classes as
BackingStoreBackendCairo* since all of them are actually
BackingStore backends based on cairo, and move them from
platform/cairo and platform/gtk to platform/graphics/cairo.
BackingStoreBackendCairo is the base class that contains common
members like the surface and size. BackingStoreBackendCairoImpl is
the implementation using only cairo, and BackingStoreBackendCairoX11
using xlib. BackingStoreBackendCairoX11 receives all the X11
information it needs as constructor parameters, instead of using a
GtkWidget and GTK+ X11 API. BackingStoreBackendCairoImpl receives
the surface already created as constructor parameter, so that it
doesn't have any platform specific code now.

  • PlatformEfl.cmake: Update compilation files.
  • PlatformGTK.cmake: Ditto.
  • platform/cairo/WidgetBackingStoreCairo.cpp: Removed.
  • platform/graphics/cairo/BackingStoreBackendCairo.h: Renamed from Source/WebCore/platform/cairo/WidgetBackingStore.h.

(WebCore::BackingStoreBackendCairo::~BackingStoreBackendCairo):
(WebCore::BackingStoreBackendCairo::surface):
(WebCore::BackingStoreBackendCairo::size):
(WebCore::BackingStoreBackendCairo::BackingStoreBackendCairo):

  • platform/graphics/cairo/BackingStoreBackendCairoImpl.cpp: Added.

(WebCore::BackingStoreBackendCairoImpl::BackingStoreBackendCairoImpl):
(WebCore::BackingStoreBackendCairoImpl::~BackingStoreBackendCairoImpl):
(WebCore::BackingStoreBackendCairoImpl::scroll):

  • platform/graphics/cairo/BackingStoreBackendCairoImpl.h: Renamed from Source/WebCore/platform/cairo/WidgetBackingStoreCairo.h.
  • platform/graphics/cairo/BackingStoreBackendCairoX11.cpp: Renamed from Source/WebCore/platform/gtk/WidgetBackingStoreGtkX11.cpp.

(WebCore::BackingStoreBackendCairoX11::BackingStoreBackendCairoX11):
(WebCore::BackingStoreBackendCairoX11::~BackingStoreBackendCairoX11):
(WebCore::BackingStoreBackendCairoX11::scroll):

  • platform/graphics/cairo/BackingStoreBackendCairoX11.h: Renamed from Source/WebCore/platform/gtk/WidgetBackingStoreGtkX11.h.
  • platform/graphics/cairo/CairoUtilities.cpp:

(WebCore::cairoSurfaceGetDeviceScale):

  • platform/graphics/cairo/CairoUtilities.h:

Source/WebKit2:

  • UIProcess/BackingStore.h: Rename m_backingStore as m_backend,

since it's a bit confusing that a BackingStore class has a
m_backingStore member and WidgetBackingStore has been renamed as
BackingStoreBackendCairo.

  • UIProcess/cairo/BackingStoreCairo.cpp:

(WebKit::BackingStore::createBackend): Helper function to create
the BackingStore backend depending on the platform.
(WebKit::BackingStore::paint): Use m_backend instead of m_backingStore.
(WebKit::BackingStore::incorporateUpdate): Ditto.
(WebKit::BackingStore::scroll): Ditto.
(WebKit::createBackingStoreForGTK): Deleted.

8:35 PM Changeset in webkit [175158] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

WebContent crash at WebCore::RenderTextControl::textFormControlElement const.
https://bugs.webkit.org/show_bug.cgi?id=138035

Reviewed by Antti Koivisto.

NULL-check element().renderer() before using it.

  • html/SearchInputType.cpp:

(WebCore::SearchInputType::didSetValueByUserEdit):

8:00 PM Changeset in webkit [175157] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebKit2

Fix a bad find-and-replace in r175153

Looks like I messed up the commit on landing.

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-10-23

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::didCommitLoadForFrame):

7:12 PM Changeset in webkit [175156] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/Source/WebCore

Remove HarfBuzzRun::create() factory function
https://bugs.webkit.org/show_bug.cgi?id=137945

Reviewed by Ryosuke Niwa.

As a step to use std::unique_ptr<>, this patch applies std::unique_ptr<> and std::make_unique<>.
Thus HarfBuzzRun::create() is needed no longer.

No new tests, no behavior changes.

  • platform/graphics/harfbuzz/HarfBuzzShaper.cpp:

(WebCore::HarfBuzzShaper::collectHarfBuzzRuns):

  • platform/graphics/harfbuzz/HarfBuzzShaper.h:

(WebCore::HarfBuzzShaper::HarfBuzzRun::create): Deleted.

6:32 PM Changeset in webkit [175155] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed iOS build fix

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2014-10-23

  • editing/FrameSelection.cpp:
6:29 PM Changeset in webkit [175154] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

[Mac] Optimize URL::createCFURL() for the common case
https://bugs.webkit.org/show_bug.cgi?id=138030

Reviewed by Alexey Proskuryakov.

Optimize URL::createCFURL() for the common case by adding a fast path
for when the URL String is already 8-bit (common case).
When the string is 8-bit, we don't need to copy the bytes into a
temporary buffer and we can construct the CFURLRef directly from it.

This makes URL::createCFURL() ~34% faster on my machine.

No new tests, no behavior change.

  • platform/mac/URLMac.mm:

(WebCore::URL::createCFURL):

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

[iOS WK2] If a page has the exact same VisibleContentRect as the page before, its VisibleContentRectUpdate can be ignored
https://bugs.webkit.org/show_bug.cgi?id=138031
rdar://problem/18739335

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

Since any VisibleContentRectUpdate is costly for the WebProcess, we avoid sending updates
if none of the important parameters have changed (scale and geometry).

One unintended side effect is that the update of a page can be blocked if the parameters
of the previous page were identical.

What happen is this:
1) Page [A] sends its content rect update as needed. WebPageProxy saves the last update

in m_lastVisibleContentRectUpdate and use that value to avoid useless updates.

2) Page [B] load after page [A] and have the exact VisibleContentRect. When receiving the first

layer tree commit after didCommitLoadForFrame, WKWebView sends its VisibleContentRect
to WebPageProxy to synchronize the state of the WebProcess with what is on screen.

3) Since the two VisibleContentRect update has the same value as the ones of page [A], WebPageProxy

discards the update. The WebProcess has its initialization viewport and is not udpated until
a major parameter changes (scale or position).

In rdar://problem/18739335, the problem is the similar but with a different failure point:
1) Everything above happened already.
2) The layer tree transaction has a scrolling request. This is processed by WKWebView.
3) Since the scrolling position is invalid, the request is ignored and we send the last

VisibleContentRect to the WebProcess with WebPageProxy::resendLastVisibleContentRects().

4) Since the VisibleContentRect was never updated after didCommitLoadForFrame, the one we send

is for the previous page, which the web process correctly ignores.

This patch solves the problem by nuking the cached m_lastVisibleContentRectUpdate before
any valid VisibleContentRectUpdate for a new page.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::didCommitLoadForFrame):

  • UIProcess/WebPageProxy.h:
  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::didCommitLayerTree):

4:49 PM Changeset in webkit [175152] by mmaxfield@apple.com
  • 3 edits
    2 adds in trunk

Carets in GMail and iCloud compositions are the foreground text color
https://bugs.webkit.org/show_bug.cgi?id=138029

Reviewed by Simon Fraser.

Source/WebCore:

Previously, we were only checking whether the background colors of the foreground and background
elements were the same, rather than taking validity and opacity into consideration.

Test: editing/caret/color-span-inside-editable-background.html

  • editing/FrameSelection.cpp:

(WebCore::disappearsIntoBackground):
(WebCore::CaretBase::paintCaret):

LayoutTests:

Test the case where the content editable root has a background color specified.

  • editing/caret/color-span-inside-editable-background-expected.html: Added.
  • editing/caret/color-span-inside-editable-background.html: Added.
4:43 PM Changeset in webkit [175151] by Joseph Pecoraro
  • 31 edits
    6 adds in trunk/Source

Web Inspector: Provide a way to have alternate inspector agents
https://bugs.webkit.org/show_bug.cgi?id=137901

Reviewed by Brian Burg.

Source/JavaScriptCore:

Provide a way to use alternate inspector agents debugging a JSContext.
Expose a very slim private API that a client could use to know when
an inspector has connected/disconnected, and a way to register its
augmentative agents.

  • Configurations/FeatureDefines.xcconfig:
  • JavaScriptCore.xcodeproj/project.pbxproj:

New feature guard. New files.

  • API/JSContextRef.cpp:

(JSGlobalContextGetAugmentableInspectorController):

  • API/JSContextRefInspectorSupport.h: Added.

Access to the private interface from a JSContext.

  • inspector/JSGlobalObjectInspectorController.cpp:

(Inspector::JSGlobalObjectInspectorController::JSGlobalObjectInspectorController):
(Inspector::JSGlobalObjectInspectorController::connectFrontend):
(Inspector::JSGlobalObjectInspectorController::disconnectFrontend):

  • inspector/JSGlobalObjectInspectorController.h:
  • inspector/augmentable/AugmentableInspectorController.h: Added.

(Inspector::AugmentableInspectorController::~AugmentableInspectorController):
(Inspector::AugmentableInspectorController::connected):

  • inspector/augmentable/AugmentableInspectorControllerClient.h: Added.

(Inspector::AugmentableInspectorControllerClient::~AugmentableInspectorControllerClient):

  • inspector/augmentable/AlternateDispatchableAgent.h: Added.

(Inspector::AlternateDispatchableAgent::AlternateDispatchableAgent):
Provide the private APIs a client could use to add alternate agents using alternate backend dispatchers.

  • inspector/scripts/codegen/init.py:
  • inspector/scripts/generate-inspector-protocol-bindings.py:

(generate_from_specification):
New includes, and use the new generator.

  • inspector/scripts/codegen/generate_alternate_backend_dispatcher_header.py: Added.

(AlternateBackendDispatcherHeaderGenerator):
(AlternateBackendDispatcherHeaderGenerator.init):
(AlternateBackendDispatcherHeaderGenerator.output_filename):
(AlternateBackendDispatcherHeaderGenerator.generate_output):
(AlternateBackendDispatcherHeaderGenerator._generate_handler_declarations_for_domain):
(AlternateBackendDispatcherHeaderGenerator._generate_handler_declaration_for_command):
Generate the abstract AlternateInspectorBackendDispatcher interfaces.

  • inspector/scripts/codegen/generate_backend_dispatcher_header.py:

(BackendDispatcherHeaderGenerator.generate_output):
(BackendDispatcherHeaderGenerator._generate_alternate_handler_forward_declarations_for_domains):
(BackendDispatcherHeaderGenerator._generate_alternate_handler_forward_declarations_for_domains.AlternateInspector):
Forward declare alternate dispatchers, and allow setting an alternate dispatcher on a domain dispatcher.

  • inspector/scripts/codegen/generate_backend_dispatcher_implementation.py:

(BackendDispatcherImplementationGenerator.generate_output):
(BackendDispatcherImplementationGenerator._generate_dispatcher_implementation_for_command):
Check for and dispatch on an AlternateInspectorBackendDispatcher if there is one for this domain.

  • inspector/scripts/codegen/generator_templates.py:

(AlternateInspectorBackendDispatcher):
(AlternateInspector):
Template boilerplate for prelude and postlude.

  • inspector/scripts/tests/expected/commands-with-async-attribute.json-result:
  • inspector/scripts/tests/expected/commands-with-optional-call-return-parameters.json-result:
  • inspector/scripts/tests/expected/domains-with-varying-command-sizes.json-result:
  • inspector/scripts/tests/expected/events-with-optional-parameters.json-result:
  • inspector/scripts/tests/expected/generate-domains-with-feature-guards.json-result:
  • inspector/scripts/tests/expected/same-type-id-different-domain.json-result:
  • inspector/scripts/tests/expected/shadowed-optional-type-setters.json-result:
  • inspector/scripts/tests/expected/type-declaration-aliased-primitive-type.json-result:
  • inspector/scripts/tests/expected/type-declaration-array-type.json-result:
  • inspector/scripts/tests/expected/type-declaration-enum-type.json-result:
  • inspector/scripts/tests/expected/type-declaration-object-type.json-result:
  • inspector/scripts/tests/expected/type-requiring-runtime-casts.json-result:

Rebaseline tests.

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:

  • wtf/FeatureDefines.h:
4:36 PM Changeset in webkit [175150] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Don't assume that style.overflowX() == style.overflowY()
https://bugs.webkit.org/show_bug.cgi?id=138028

Reviewed by Zalan Bujtas.

WebKit doesn't support independent overflow scroll/hidden on different axes,
but the RenderStyle does report the correct values. So check both overflowX()
and overflowY() in a couple of places where we need to.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::styleHasTouchScrolling):
(WebCore::styleChangeRequiresLayerRebuild):

4:30 PM Changeset in webkit [175149] by Chris Dumez
  • 15 edits in trunk/Source/WebCore

Get rid of unnecessary vtables in WebKit
https://bugs.webkit.org/show_bug.cgi?id=138024

Reviewed by Benjamin Poulain.

Get rid of unnecessary vtables in WebKit by de-virtualizing destructors
when possible and marking the class as final to make sure people don't
subclass it.

No new tests, no behavior change.

  • WebCore.exp.in:
  • css/WebKitCSSMatrix.h:
  • css/WebKitCSSMatrix.idl:
  • html/canvas/WebGLContextGroup.h:
  • html/canvas/WebGLGetInfo.h:
  • html/canvas/WebGLUniformLocation.h:

(WebCore::WebGLUniformLocation::~WebGLUniformLocation): Deleted.

  • html/canvas/WebGLUniformLocation.idl:
  • inspector/DOMPatchSupport.h:
  • inspector/InspectorHistory.h:
  • inspector/InspectorStyleSheet.h:
  • page/WheelEventDeltaTracker.h:
  • page/scrolling/ScrollLatchingState.h:
  • platform/audio/Biquad.h:
  • platform/graphics/Pattern.h:
4:26 PM Changeset in webkit [175148] by Chris Dumez
  • 41 edits in trunk/Source

Clean up virtual functions in dom/
https://bugs.webkit.org/show_bug.cgi?id=138019

Reviewed by Benjamin Poulain.

Clean up virtual functions in dom/ by:

  • Making virtual functions final when possible
  • Making classes final when possible
  • Using 'override' when appropriate
  • Explicitly marking functions / destructors as virtual when they are inherently virtual
  • Making isXXX() virtual functions private on XXX classes to avoid unnecessary type checks
  • Dropping final for virtual functions in classes already marked as final

No new tests, no behavior change.

  • WebCore.exp.in:
  • dom/AutocompleteErrorEvent.h:
  • dom/BeforeLoadEvent.h:

(WebCore::BeforeLoadEventInit::BeforeLoadEventInit):

  • dom/BeforeTextInsertedEvent.h:
  • dom/ClipboardEvent.h:
  • dom/CompositionEvent.h:
  • dom/CustomEvent.h:
  • dom/DeviceMotionController.h:

(WebCore::DeviceMotionController::~DeviceMotionController): Deleted.

  • dom/DeviceMotionEvent.h:
  • dom/DeviceOrientationController.h:

(WebCore::DeviceOrientationController::~DeviceOrientationController): Deleted.

  • dom/DeviceOrientationEvent.h:
  • dom/Document.h:
  • dom/DocumentFragment.h:
  • dom/ErrorEvent.h:
  • dom/FocusEvent.h:
  • dom/HashChangeEvent.h:
  • dom/KeyboardEvent.h:
  • dom/LiveNodeList.h:
  • dom/MessageEvent.h:
  • dom/MessagePort.h:
  • dom/MouseEvent.h:
  • dom/MouseRelatedEvent.h:
  • dom/MutationEvent.h:
  • dom/NamedFlowCollection.h:
  • dom/OverflowEvent.h:
  • dom/PageTransitionEvent.h:
  • dom/PendingScript.h:
  • dom/PopStateEvent.h:
  • dom/RawDataDocumentParser.h:

(WebCore::RawDataDocumentParser::finish): Deleted.
(WebCore::RawDataDocumentParser::flush): Deleted.
(WebCore::RawDataDocumentParser::insert): Deleted.
(WebCore::RawDataDocumentParser::append): Deleted.

  • dom/ScriptableDocumentParser.h:
  • dom/SecurityPolicyViolationEvent.h:
  • dom/TextEvent.h:
  • dom/TouchEvent.h:
  • dom/TransitionEvent.h:
  • dom/UIEvent.h:
  • dom/WebKitAnimationEvent.h:
  • dom/WebKitTransitionEvent.h:
  • dom/WheelEvent.h:
  • page/DeviceController.h:

(WebCore::DeviceController::~DeviceController):

4:00 PM Changeset in webkit [175147] by timothy_horton@apple.com
  • 12 edits
    3 adds in trunk/Source

Add some SPI headers for NSExtension and NSSharingService{Picker}
https://bugs.webkit.org/show_bug.cgi?id=138027

Reviewed by Anders Carlsson.

  • WebCore.xcodeproj/project.pbxproj:
  • platform/spi/cocoa/NSExtensionSPI.h: Added.
  • platform/spi/mac/NSSharingServicePickerSPI.h: Added.
  • platform/spi/mac/NSSharingServiceSPI.h: Added.

Add modern SPI headers for NSExtension, and NSSharingService{Picker}.

  • rendering/RenderThemeMac.mm:

Replace redefinitions with an SPI header #import.

  • UIProcess/API/mac/WKView.mm:
  • UIProcess/mac/ServicesController.mm:
  • UIProcess/mac/WebContextMenuProxyMac.mm:

Replace redefinitions with SPI header #imports.

  • Misc/WebSharingServicePickerController.h:
  • Misc/WebSharingServicePickerController.mm:
  • WebCoreSupport/WebSelectionServiceController.mm:
  • WebCoreSupport/WebContextMenuClient.mm:

Fix a sorting issue.
Replace redefinitions with SPI header #imports.

3:58 PM Changeset in webkit [175146] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

[Windows] Unreviewed gardening after removing SafariTheme.
https://bugs.webkit.org/show_bug.cgi?id=138025.

  • platform/win/TestExpectations:
3:22 PM Changeset in webkit [175145] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebKit2

[iOS WK2] Make sure any dynamic viewport update schedules a layer tree commit
https://bugs.webkit.org/show_bug.cgi?id=138021

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

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::dynamicViewportSizeUpdate):
Sometimes, the clients can do a dynamic viewport update but only change the minimum
layout size (see rdar://problem/18755250).

When that happens, it is possible to do the full state update without ever scheduling
a layer tree commit. For example, if the new minimum layout height is only a few pixels
smaller than the old value and the layout of the page is equal or larger than the old value,
the layout is done without any side effect to the content (assuming a viewport configuration
based on width).

The contract with the client is that the next layer tree commit after a dynamic viewport update
carries all the valid parameters for the new viewport size. Since the new layout never scheduled
a layer tree commit, the UIProcess is just waiting for one, discarding all input.

This patch solves the issue by explicitely scheduling a layer flush after updating all the layout
and view parameters to their final values. In most cases, this makes no difference since a layer
tree commit was already scheduled. In the rare cases where nothing was scheduled, scheduling
the layer tree commit ensure we unlock the UIProcess.

3:01 PM Changeset in webkit [175144] by roger_fong@apple.com
  • 14 edits
    51 adds in trunk/LayoutTests

[Win] Rebaseline a bunch of forms tests that no longer match after removing SafariTheme.
https://bugs.webkit.org/show_bug.cgi?id=138022.

  • platform/win/fast/forms/HTMLOptionElement_label06-expected.txt: Added.
  • platform/win/fast/forms/basic-inputs-expected.txt:
  • platform/win/fast/forms/basic-textareas-expected.txt: Added.
  • platform/win/fast/forms/basic-textareas-quirks-expected.txt: Added.
  • platform/win/fast/forms/blankbuttons-expected.txt:
  • platform/win/fast/forms/button-generated-content-expected.txt:
  • platform/win/fast/forms/button-inner-block-reuse-expected.txt: Added.
  • platform/win/fast/forms/control-clip-expected.txt: Added.
  • platform/win/fast/forms/fieldset-align-expected.txt: Added.
  • platform/win/fast/forms/fieldset-legend-padding-unclipped-fieldset-border-expected.txt: Added.
  • platform/win/fast/forms/fieldset-with-float-expected.txt: Added.
  • platform/win/fast/forms/float-before-fieldset-expected.txt: Added.
  • platform/win/fast/forms/focus-selection-textarea-expected.txt: Added.
  • platform/win/fast/forms/indeterminate-expected.txt: Added.
  • platform/win/fast/forms/input-appearance-readonly-expected.txt: Added.
  • platform/win/fast/forms/input-appearance-visibility-expected.txt: Added.
  • platform/win/fast/forms/input-first-letter-expected.txt: Added.
  • platform/win/fast/forms/input-readonly-dimmed-expected.txt: Added.
  • platform/win/fast/forms/input-spaces-expected.txt: Added.
  • platform/win/fast/forms/input-text-click-outside-expected.txt: Added.
  • platform/win/fast/forms/input-type-text-min-width-expected.txt: Added.
  • platform/win/fast/forms/input-width-expected.txt: Added.
  • platform/win/fast/forms/listbox-onchange-expected.txt: Added.
  • platform/win/fast/forms/menulist-clip-expected.txt:
  • platform/win/fast/forms/menulist-option-wrap-expected.txt: Added.
  • platform/win/fast/forms/menulist-separator-painting-expected.txt: Added.
  • platform/win/fast/forms/menulist-width-change-expected.txt:
  • platform/win/fast/forms/negativeLineHeight-expected.txt: Added.
  • platform/win/fast/forms/onselect-textarea-expected.txt: Added.
  • platform/win/fast/forms/option-script-expected.txt:
  • platform/win/fast/forms/option-text-clip-expected.txt:
  • platform/win/fast/forms/placeholder-pseudo-style-expected.txt: Added.
  • platform/win/fast/forms/range/input-appearance-range-expected.txt: Added.
  • platform/win/fast/forms/range/range-thumb-height-percentage-expected.txt: Added.
  • platform/win/fast/forms/range/slider-padding-expected.txt: Added.
  • platform/win/fast/forms/range/slider-thumb-shared-style-expected.txt: Added.
  • platform/win/fast/forms/range/slider-thumb-stylability-expected.txt: Added.
  • platform/win/fast/forms/range/thumbslider-no-parent-slider-expected.txt: Added.
  • platform/win/fast/forms/search-cancel-button-style-sharing-expected.txt: Added.
  • platform/win/fast/forms/search-display-none-cancel-button-expected.txt: Added.
  • platform/win/fast/forms/search-rtl-expected.txt: Added.
  • platform/win/fast/forms/search-styled-expected.txt:
  • platform/win/fast/forms/search-vertical-alignment-expected.txt: Added.
  • platform/win/fast/forms/select-background-none-expected.txt: Added.
  • platform/win/fast/forms/select-empty-option-height-expected.txt: Added.
  • platform/win/fast/forms/select-size-expected.txt: Added.
  • platform/win/fast/forms/select-style-expected.txt: Added.
  • platform/win/fast/forms/select-visual-hebrew-expected.txt: Added.
  • platform/win/fast/forms/select-writing-direction-natural-expected.txt:
  • platform/win/fast/forms/selectlist-minsize-expected.txt: Added.
  • platform/win/fast/forms/stuff-on-my-optgroup-expected.txt: Added.
  • platform/win/fast/forms/textAreaLineHeight-expected.txt: Added.
  • platform/win/fast/forms/textarea-align-expected.txt: Added.
  • platform/win/fast/forms/textarea-metrics-expected.txt: Added.
  • platform/win/fast/forms/textarea-placeholder-pseudo-style-expected.txt: Added.
  • platform/win/fast/forms/textarea-placeholder-visibility-1-expected.txt:
  • platform/win/fast/forms/textarea-placeholder-visibility-2-expected.txt:
  • platform/win/fast/forms/textarea-scroll-height-expected.txt: Added.
  • platform/win/fast/forms/textarea-scrollbar-expected.txt:
  • platform/win/fast/forms/textarea-scrolled-type-expected.txt: Added.
  • platform/win/fast/forms/textarea-setinnerhtml-expected.txt: Added.
  • platform/win/fast/forms/textarea-width-expected.txt:
  • platform/win/fast/forms/textfield-overflow-by-value-update-expected.txt: Added.
  • platform/win/fast/forms/textfield-overflow-expected.txt: Added.
2:51 PM Changeset in webkit [175143] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit2

WebContent crash in WebKit::WebPage::expandedRangeFromHandle
https://bugs.webkit.org/show_bug.cgi?id=138023

Reviewed by Enrica Casucci.

The crashes are caused by rangeForBlockAtPoint returning a null Range.
Exit early or continue if a range is null in various places.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::expandedRangeFromHandle): Continue looking for another point if the range returned by
rangeForBlockAtPoint is null.
(WebKit::WebPage::contractedRangeFromHandle): Ditto.
(WebKit::WebPage::computeExpandAndShrinkThresholdsForHandle): Removed the FIXME now that Enrica has
verified that this early exit added in r173788 is correct.

2:04 PM Changeset in webkit [175142] by roger_fong@apple.com
  • 2 edits in trunk/Tools

[Win] Skip failing JSC tests following r175078
https://bugs.webkit.org/show_bug.cgi?id=130967.

  • Scripts/run-javascriptcore-tests:
1:54 PM Changeset in webkit [175141] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

offsets.rb:183:in `buildOffsetsMap': unhandled exception - is offlineasm dependency tracking broken? (132668)
https://bugs.webkit.org/show_bug.cgi?id=138017

Reviewed by Mark Lam.

Removed from the nput file $(SRCROOT)/llint/LowLevelAssembler.asm and output file
$(BUILT_PRODUCTS_DIR)/LLIntOffsets/LLIntDesiredOffsets.h from the Generate Derived Sources
build phase in the LLInt Offset target. There is no need for Xcode to do any dependency
checking with these files as the ruby script offlineasm/generate_offset_extractor.rb will
do that for us.

1:29 PM Changeset in webkit [175140] by bshafiei@apple.com
  • 1 copy in tags/Safari-600.1.4.12.2

New tag.

1:27 PM Changeset in webkit [175139] by eric.carlson@apple.com
  • 3 edits in trunk/Source/WebCore

[Mac] don't update caption user style sheet during parsing
https://bugs.webkit.org/show_bug.cgi?id=137983
rdar://problem/18735366

Reviewed by Jer Noble.

No new tests, existing tests cover the changes.

  • page/CaptionUserPreferencesMediaAF.cpp:

(WebCore::CaptionUserPreferencesMediaAF::CaptionUserPreferencesMediaAF): Initialize m_updateStyleSheetTimer.
(WebCore::CaptionUserPreferencesMediaAF::updateTimerFired): Call updateCaptionStyleSheetOveride.
(WebCore::CaptionUserPreferencesMediaAF::setInterestedInCaptionPreferenceChanges): Prime a timer to update

the captions style sheet after a slight delay.

12:56 PM Changeset in webkit [175138] by jonowells@apple.com
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Double border appearing in node sidebar in expanded items in OS X Mavericks.
https://bugs.webkit.org/show_bug.cgi?id=138011

Reviewed by Timothy Hatcher.

Selector added for OS X Mavericks and earlier versions using .mac-platform.legacy.

  • UserInterface/Views/DetailsSection.css:

(body.mac-platform.legacy .details-section .details-section:first-child):

12:51 PM Changeset in webkit [175137] by Chris Dumez
  • 4 edits in trunk/Source/WebCore

Move remaining Length-type properties to the new StyleBuilder
https://bugs.webkit.org/show_bug.cgi?id=138012

Reviewed by Antti Koivisto.

Move remaining Length-type properties from DeprecatedStyleBuilder to
the new StyleBuilder so that they are now generated from
CSSPropertyNames.in as well. The patch introduces a couple of type
converters for those: "LengthSizing / LengthMaxSizing".

No new tests, no behavior change.

  • css/CSSPropertyNames.in:
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):

  • css/StyleBuilderConverter.h:

(WebCore::StyleBuilderConverter::convertLengthSizing):
(WebCore::StyleBuilderConverter::convertLengthMaxSizing):

12:42 PM Changeset in webkit [175136] by ddkilzer@apple.com
  • 1 edit in trunk/Websites/bugs.webkit.org/Bugzilla/Install/Filesystem.pm

Teach Bugzilla how to set permissions for *.js files correctly

  • Bugzilla/Install/Filesystem.pm:

(Bugzilla::Install::Filesystem::FILESYSTEM): Set permissions for
*.js files correctly when checksetup.pl is run.

12:38 PM Changeset in webkit [175135] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[iOS] iPhone unselecting items in <select multiple> shows incorrect values selected
https://bugs.webkit.org/show_bug.cgi?id=137989

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-10-23
Reviewed by Alexey Proskuryakov.

  • UIProcess/ios/forms/WKFormSelectPicker.mm:

(-[WKMultipleSelectPicker pickerView:row:column:checked:]):
The second argument is "allowsMultipleSelection" and should only be set
when we are making a selection in a <select multiple>.

12:26 PM Changeset in webkit [175134] by bshafiei@apple.com
  • 2 edits in tags/Safari-601.1.5/Source/JavaScriptCore

Merged r175058. <rdar://problem/18739720>

12:17 PM Changeset in webkit [175133] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.3-branch/Source/WebKit2

Correcting the merge for r175075. <rdar://problem/18717767>

12:03 PM Changeset in webkit [175132] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Crashes under WebSelectionServiceController::hasRelevantSelectionServices
https://bugs.webkit.org/show_bug.cgi?id=138013

Reviewed by Dan Bernstein.

  • WebCoreSupport/WebSelectionServiceController.mm:

(WebSelectionServiceController::hasRelevantSelectionServices):
Don't adopt this autoreleased object.

11:28 AM Changeset in webkit [175131] by jer.noble@apple.com
  • 4 edits
    2 adds in trunk

[Mac] Safari cannot play 'audio/amr' content.
https://bugs.webkit.org/show_bug.cgi?id=137894

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/media-can-play-case-insensitive.html

Sites are returning 'video/amr' for AMR audio content, but the IANA spec says 'audio/AMR', which is also what
AVFoundation claims to support. However, MIME types are supposed to be case-insensitive. When creating our
mime type cache, case-fold to lower all MIME types given to us by our media frameworks.

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

(WebCore::mimeTypeCache):

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:

(WebCore::addFileTypesToCache):

LayoutTests:

  • media/media-can-play-case-insensitive-expected.txt: Added.
  • media/media-can-play-case-insensitive.html: Added.
11:01 AM Changeset in webkit [175130] by bshafiei@apple.com
  • 2 edits in branches/safari-600.1.4.12-branch/Source/WebCore

Merged r174827. rdar://problem/18742369

10:55 AM Changeset in webkit [175129] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.3-branch/Source/WebKit2

Merge r175127. <rdar://problem/18717767>

10:52 AM Changeset in webkit [175128] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.3-branch/Source/WebKit2

Correcting the merge for r175075. <rdar://problem/18717767>

10:46 AM Changeset in webkit [175127] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Assertion failures in ImageKit soft linking
https://bugs.webkit.org/show_bug.cgi?id=138009

Reviewed by Anders Carlsson.

  • UIProcess/API/mac/WKView.mm:

Soft-link ImageKit correctly.
ImageKit is inside the Quartz umbrella framework.

10:19 AM Changeset in webkit [175126] by bshafiei@apple.com
  • 3 edits in branches/safari-600.1.4.12-branch/Source/WebKit2

Merge patch for r174799. <rdar://problem/18742380>

9:34 AM Changeset in webkit [175125] by dbates@webkit.org
  • 3 edits in trunk/Source/WebKit2

[iOS] Fix the build after <http://trac.webkit.org/changeset/175079>
(https://bugs.webkit.org/show_bug.cgi?id=137995)

Rubber-stamped by Anders Carlsson.

Remove PageClientImpl::didPerformActionMenuHitTest() for iOS.

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

(WebKit::PageClientImpl::didPerformActionMenuHitTest): Deleted.

9:19 AM Changeset in webkit [175124] by matthew_hanson@apple.com
  • 16 edits
    6 copies in branches/safari-600.3-branch/Source/WebKit2

Merge r175075. <rdar://problem/18717767>

9:14 AM Changeset in webkit [175123] by Chris Dumez
  • 8 edits
    1 add in trunk/Source/WebCore

Move Length-type CSS properties from DeprecatedStyleBuilder to the new Style Builder
https://bugs.webkit.org/show_bug.cgi?id=138000

Reviewed by Andreas Kling.

Move most Length-type CSS properties from DeprecatedStyleBuilder to the
new Style Builder so that they are now generated. This patch adds
support for a "Converter" option in CSSPropertyNames.in that can be
used to specify a type converter function in
css/StyleBuilderConverter.h. This patch adds support for Length and
LengthOrAuto converters so that most Length-type properties can now be
generated.

Another converter (likely called "LengthSizing") will be needed to
generate the remaining Length-type properties. This will be taken care
of in a follow-up patch.

This patch is inspired by the following Blink revision by
<timloh@chromium.org>:
https://src.chromium.org/viewvc/blink?view=rev&revision=150500

No new tests, no behavior change.

  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSPropertyNames.in:
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):

  • css/SVGCSSPropertyNames.in:
  • css/StyleBuilder.h:
  • css/StyleBuilderConverter.h: Added.

(WebCore::StyleBuilderConverter::convertLength):
(WebCore::StyleBuilderConverter::convertLengthOrAuto):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyProperty):

  • css/makeprop.pl:
9:09 AM Changeset in webkit [175122] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.3-branch/Source/WebKit2

Merge r175016. <rdar://problem/18731860>

8:56 AM Changeset in webkit [175121] by matthew_hanson@apple.com
  • 3 edits
    1 copy in branches/safari-600.3-branch/Source/WebKit2

Merge r174913. <rdar://problem/18712808>

8:52 AM Changeset in webkit [175120] by matthew_hanson@apple.com
  • 5 edits in branches/safari-600.3-branch/Source/WebKit2

Merge r175061. <rdar://problem/18694470>

8:50 AM Changeset in webkit [175119] by matthew_hanson@apple.com
  • 12 edits
    1 copy
    3 adds in branches/safari-600.3-branch/Source

Merge r174908. <rdar://problem/18694470>

6:19 AM WebKitGTK/2.4.x edited by berto@igalia.com
(diff)
6:15 AM Changeset in webkit [175118] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Change CallFrame::lexicalGlobalObject() to use Callee instead of JSScope
https://bugs.webkit.org/show_bug.cgi?id=136901

Reviewed by Mark Lam.

Implement ExecState::lexicalGlobalObject() using Callee.

  • runtime/JSScope.h:

(JSC::ExecState::lexicalGlobalObject):

5:20 AM Changeset in webkit [175117] by zandobersek@gmail.com
  • 17 edits in trunk/Source/WebCore

Const-ify static s_resourceType members in RenderSVGResource* classes
https://bugs.webkit.org/show_bug.cgi?id=137911

Reviewed by Andreas Kling.

Make s_resourceType static members in RenderSVGResource* classes const.
Also update the resourceType() methods, where necessary, so that they
return the s_resourceType constant.

  • rendering/svg/RenderSVGResourceClipper.cpp:
  • rendering/svg/RenderSVGResourceClipper.h:
  • rendering/svg/RenderSVGResourceFilter.cpp:
  • rendering/svg/RenderSVGResourceFilter.h:
  • rendering/svg/RenderSVGResourceLinearGradient.cpp:
  • rendering/svg/RenderSVGResourceLinearGradient.h:
  • rendering/svg/RenderSVGResourceMarker.cpp:
  • rendering/svg/RenderSVGResourceMarker.h:
  • rendering/svg/RenderSVGResourceMasker.cpp:
  • rendering/svg/RenderSVGResourceMasker.h:
  • rendering/svg/RenderSVGResourcePattern.cpp:
  • rendering/svg/RenderSVGResourcePattern.h:
  • rendering/svg/RenderSVGResourceRadialGradient.cpp:
  • rendering/svg/RenderSVGResourceRadialGradient.h:
  • rendering/svg/RenderSVGResourceSolidColor.cpp:
  • rendering/svg/RenderSVGResourceSolidColor.h:
4:17 AM Changeset in webkit [175116] by zandobersek@gmail.com
  • 3 edits in trunk/Source/WebCore

[TexMap] Clean up virtual method declarations in GraphicsLayerTextureMapper
https://bugs.webkit.org/show_bug.cgi?id=137957

Reviewed by Martin Robinson.

Added override notation to the GraphicsLayerTextureMapper methods that are
overriding the base methods from the GraphicsLayer class and don't have it yet.
Also reordered these methods to follow the order of declaration in the
GraphicsLayer class.

Removed ::setName() and ::willBeDestroyed() methods since they just called
the base class' methods.

Also removed the ::solidColor() and ::changeMask() methods. The first one was
only called in one place which can reference the m_solidColor member directly,
and the second one wasn't used at all.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::commitLayerChanges):
(WebCore::GraphicsLayerTextureMapper::setName): Deleted.
(WebCore::GraphicsLayerTextureMapper::willBeDestroyed): Deleted.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.h:

(WebCore::GraphicsLayerTextureMapper::solidColor): Deleted.
(WebCore::GraphicsLayerTextureMapper::usesContentsLayer): Deleted.
(WebCore::GraphicsLayerTextureMapper::platformLayer): Deleted.
(WebCore::GraphicsLayerTextureMapper::changeMask): Deleted.

2:55 AM Changeset in webkit [175115] by berto@igalia.com
  • 3 edits in trunk/Source/WTF

[GTK] Fix build on Hurd
https://bugs.webkit.org/show_bug.cgi?id=138003

Reviewed by Carlos Garcia Campos.

  • wtf/InlineASM.h:
  • wtf/Platform.h:
2:53 AM WebKitGTK/2.6.x edited by berto@igalia.com
(diff)
2:50 AM WebKitGTK/2.6.x edited by berto@igalia.com
(diff)
2:35 AM Changeset in webkit [175114] by k.czech@samsung.com
  • 2 edits in trunk/Source/WebKit2

[EFL] Fix build problem after r175098
https://bugs.webkit.org/show_bug.cgi?id=138002

Reviewed by Gyuyoung Kim.

Add ECORE_X dependency to avoid linking problems while building unit tests.

  • PlatformEfl.cmake:

Change-Id: I9228d141456c3b34b61424aa4715cef85534104f

2:33 AM Changeset in webkit [175113] by bshafiei@apple.com
  • 11 edits in branches/safari-600.3-branch/Source/WebCore

Merged r174040. rdar://problem/18428706

2:30 AM Changeset in webkit [175112] by bshafiei@apple.com
  • 12 edits in branches/safari-600.3-branch/Source

Merged r173694. rdar://problem/18428706

2:29 AM Changeset in webkit [175111] by bshafiei@apple.com
  • 4 edits in branches/safari-600.3-branch/Source/WebCore

Merged r173208. rdar://problem/18428706

2:28 AM Changeset in webkit [175110] by bshafiei@apple.com
  • 4 edits in branches/safari-600.3-branch/Source/WebCore

Merged r173133. rdar://problem/18428706

2:26 AM Changeset in webkit [175109] by bshafiei@apple.com
  • 2 edits in branches/safari-600.3-branch/Source/WebCore

Merged r173132. rdar://problem/18428706

2:25 AM Changeset in webkit [175108] by bshafiei@apple.com
  • 2 edits in branches/safari-600.3-branch/Source/WebCore

Merged r172964. rdar://problem/18428706

2:24 AM Changeset in webkit [175107] by bshafiei@apple.com
  • 6 edits in branches/safari-600.3-branch/Source/WebCore

Merged r172963. rdar://problem/18428706

2:23 AM Changeset in webkit [175106] by bshafiei@apple.com
  • 3 edits in branches/safari-600.3-branch/Source/WebKit2

Merged r172653. rdar://problem/18428706

2:22 AM Changeset in webkit [175105] by bshafiei@apple.com
  • 3 edits in branches/safari-600.3-branch/Source/WebKit2

Merged r172646. rdar://problem/18428706

2:21 AM Changeset in webkit [175104] by bshafiei@apple.com
  • 3 edits in branches/safari-600.3-branch/Source/WebKit2

Merged r172645. rdar://problem/18428706

2:20 AM Changeset in webkit [175103] by bshafiei@apple.com
  • 12 edits in branches/safari-600.3-branch/Source/WebKit2

Merged r172637. rdar://problem/18428706

2:18 AM Changeset in webkit [175102] by bshafiei@apple.com
  • 2 edits in branches/safari-600.3-branch/Source/WebKit2

Merged r172634. rdar://problem/18428706

2:17 AM Changeset in webkit [175101] by bshafiei@apple.com
  • 8 edits in branches/safari-600.3-branch/Source/WebKit2

Merged r172629. rdar://problem/18428706

2:02 AM Changeset in webkit [175100] by k.czech@samsung.com
  • 4 edits in trunk/Source/WebCore

AX: Do the early return when role is different than UnknownRole
https://bugs.webkit.org/show_bug.cgi?id=137880

Reviewed by Chris Fleizach.

We do not need to call ariaRoleAttribute() to check whether m_ariaRole is different than UnknownRole.
Just check m_ariaRole instead.

No new tests, no behavior change, just some cleanup

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::determineAccessibilityRole):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::determineAccessibilityRole):

  • accessibility/AccessibilityTableRow.cpp:

(WebCore::AccessibilityTableRow::determineAccessibilityRole):

1:21 AM Changeset in webkit [175099] by k.czech@samsung.com
  • 2 edits in trunk/Source/WebKit2

[EFL] Set proper default value for WebPageAccessibilityObject
https://bugs.webkit.org/show_bug.cgi?id=137951

Reviewed by Csaba Osztrogonác.

Initial value for WebPageAccessibilityObject should be nullptr.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):

1:02 AM Changeset in webkit [175098] by k.czech@samsung.com
  • 8 edits
    3 adds in trunk/Source/WebKit2

[EFL] Introduce EFL Accessibility in WebKit
https://bugs.webkit.org/show_bug.cgi?id=137819

Reviewed by Gyuyoung Kim.

EFL Accessibility provides an API that is used to notify clients that certain
Accessibility events occur. Utilizing it makes WebKit-EFL coherent with EFL native
accessibility approach.

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

(EwkView::EwkView):

  • UIProcess/API/efl/EwkView.h:

(EwkView::webAccessibility):

  • UIProcess/API/efl/WebAccessibility.cpp: Added.

(WebKit::WebAccessibility::WebAccessibility):
(WebKit::WebAccessibility::~WebAccessibility):
(WebKit::WebAccessibility::eventHandler):
(WebKit::WebAccessibility::executeGestureAction):
(WebKit::WebAccessibility::activate):
(WebKit::WebAccessibility::read):
(WebKit::WebAccessibility::readNext):
(WebKit::WebAccessibility::readPrev):
(WebKit::WebAccessibility::up):
(WebKit::WebAccessibility::down):
(WebKit::WebAccessibility::scroll):
(WebKit::WebAccessibility::mouse):
(WebKit::WebAccessibility::enable):
(WebKit::WebAccessibility::disable):

  • UIProcess/API/efl/WebAccessibility.h: Added.

(WebKit::WebAccessibility::activateAction):
(WebKit::WebAccessibility::nextAction):
(WebKit::WebAccessibility::prevAction):
(WebKit::WebAccessibility::readAction):

  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_accessibility_action_activate_get):
(ewk_view_accessibility_action_next_get):
(ewk_view_accessibility_action_prev_get):
(ewk_view_accessibility_action_read_by_point_get):

  • UIProcess/API/efl/ewk_view.h:
  • UIProcess/API/efl/tests/test_ewk2_accessibility.cpp: Added.

(EWK2Accessibility::xwindow):
(TEST_F):

  • UIProcess/WebPageProxy.h:
  • UIProcess/efl/WebPageProxyEfl.cpp:

(WebKit::WebPageProxy::accessibilityObjectReadByPoint):
(WebKit::WebPageProxy::accessibilityObjectReadPrevious):
(WebKit::WebPageProxy::accessibilityObjectReadNext):

12:27 AM Changeset in webkit [175097] by Yusuke Suzuki
  • 3 edits
    4 adds in trunk

CSS JIT: Implement :matches
https://bugs.webkit.org/show_bug.cgi?id=137947

Reviewed by Benjamin Poulain.

Source/WebCore:

Initial patch for supporting :matches in CSS JIT.
In this patch, we implement :matches
by leveraging the generalized nested backtracking implementation.

Tests: fast/selectors/matches-backtracking.html

fast/selectors/matches-complex.html

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::addPseudoClassType):
(WebCore::SelectorCompiler::hasAnyCombinators):
(WebCore::SelectorCompiler::computeBacktrackingMemoryRequirements):
(WebCore::SelectorCompiler::computeBacktrackingInformation):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatchesMatchesPseudoClass):

LayoutTests:

  • fast/selectors/matches-backtracking-expected.txt: Added.
  • fast/selectors/matches-backtracking.html: Added.
  • fast/selectors/matches-complex-expected.txt: Added.
  • fast/selectors/matches-complex.html: Added.
    • nested :matches
    • multiple :matches
    • :matches with CannotMatchAnything
    • :matches with :not
    • :matches(with a lot of selectors) are tested.
12:17 AM Changeset in webkit [175096] by bshafiei@apple.com
  • 2 edits in branches/safari-600.1.4.12-branch/Source/WebKit2

Merged r175081. rdar://problem/17785162

12:17 AM Changeset in webkit [175095] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

RenderThemeGtk::mediaControlsScript() is not defined when VIDEO is disabled.
<https://webkit.org/b/137970>.

Patch by Milan Crha <mcrha@redhat.com> on 2014-10-23
Reviewed by Carlos Garcia Campos.

  • rendering/RenderThemeGtk.cpp:
12:15 AM Changeset in webkit [175094] by bshafiei@apple.com
  • 2 edits in branches/safari-600.1.4.12-branch/Source/WebCore

Merged r174846. rdar://problem/18742390

12:08 AM Changeset in webkit [175093] by bshafiei@apple.com
  • 3 edits in branches/safari-600.1.4.12-branch/Source/WebKit2

Merged r174788. rdar://problem/17916459

12:06 AM Changeset in webkit [175092] by bshafiei@apple.com
  • 4 edits in branches/safari-600.1.4.12-branch/Source/WebCore

Merged r174787. rdar://problem/18742395

12:03 AM Changeset in webkit [175091] by bshafiei@apple.com
  • 2 edits in branches/safari-600.1.4.12-branch/Source/WebKit2

Merged r174512. rdar://problem/18742317

12:01 AM Changeset in webkit [175090] by bshafiei@apple.com
  • 3 edits in branches/safari-600.1.4.12-branch/Source/WebCore

Merged r173974. rdar://problem/18742384

Oct 22, 2014:

11:54 PM Changeset in webkit [175089] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Prefix isnan() with std::.
<https://webkit.org/b/137966>.

Patch by Milan Crha <mcrha@redhat.com> on 2014-10-22
Reviewed by Carlos Garcia Campos.

  • profiler/ProfileNode.h:

(JSC::ProfileNode::Call::setStartTime):
(JSC::ProfileNode::Call::setElapsedTime):

11:45 PM Changeset in webkit [175088] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Do not include GraphicsContext3D.h when 3D_GRAPHICS is not used.
<https://webkit.org/b/137969>.

Patch by Milan Crha <mcrha@redhat.com> on 2014-10-22
Reviewed by Carlos Garcia Campos.

  • platform/graphics/cairo/GraphicsContext3DCairo.cpp:
11:41 PM Changeset in webkit [175087] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Do not build WidgetBackingStoreGtkX11 when not used.
<https://webkit.org/b/137972>.

Patch by Milan Crha <mcrha@redhat.com> on 2014-10-22
Reviewed by Carlos Garcia Campos.

  • platform/gtk/WidgetBackingStoreGtkX11.cpp:
  • platform/gtk/WidgetBackingStoreGtkX11.h:
11:37 PM Changeset in webkit [175086] by bshafiei@apple.com
  • 2 edits in branches/safari-600.1.4.12-branch/Source/WebCore

Merged r173848. rdar://problem/18427833

11:15 PM Changeset in webkit [175085] by Simon Fraser
  • 3 edits
    5 adds in trunk

[iOS] Toggling overflow:scroll to hidden on element with -webkit-overflow-scrolling:touch can cause children to disappear
https://bugs.webkit.org/show_bug.cgi?id=137999
rdar://problem/18425550

Reviewed by Zalan Bujtas.

Source/WebCore:

When toggling overflow from scroll to hidden on an element with -webkit-overflow-scrolling:touch,
we'd fail to do a compositing layer rebuild, which caused various issues like unparented
descendants, and misplaced and unrepainted content.

This happened because we'd get to RenderLayerBacking::updateConfiguration() via styleChanged
with the view needing layout, so never hit the updateScrollingLayers() code, and the subsequent
updateCompositingLayers() would be a no-op.

Fix by explicitly triggering a layer rebuild when style changes such that the touch-scrollability
of an element changes, as we do for changes in clip.

Test: compositing/scrolling/touch-scroll-to-clip.html

  • rendering/RenderLayerCompositor.cpp:

(WebCore::isScrollableOverflow):
(WebCore::styleHasTouchScrolling):
(WebCore::styleChangeRequiresLayerRebuild):

LayoutTests:

Test that toggles overflow on a touch scrolling div, and dumps layers.

  • compositing/scrolling/touch-scroll-to-clip-expected.txt: Added.
  • compositing/scrolling/touch-scroll-to-clip.html: Added.
  • platform/ios-simulator/compositing/scrolling/touch-scroll-to-clip-expected.txt: Added.
9:32 PM Changeset in webkit [175084] by Chris Dumez
  • 80 edits in trunk/Source/WebCore

Clean up virtual functions in rendering/
https://bugs.webkit.org/show_bug.cgi?id=137984

Reviewed by Darin Adler.

Clean up virtual functions in rendering/ by:

  • Making virtual functions final when possible
  • Making classes final when possible
  • Using 'override' when appropriate
  • Explicitly marking functions / destructors as virtual when they are inherently virtual
  • Dropping virtual destructors when the class does not have subclasses and mark the class as final, to get rid of unnecessary vtables
  • Making isXXX() virtual functions private on XXX classes to avoid unnecessary type checks
  • De-virtualizing some functions that do not need to be virtual
  • Dropping final for virtual functions in classes already marked as final

No new tests, no behavior change.

  • html/shadow/SliderThumbElement.cpp:
  • rendering/AutoTableLayout.h:
  • rendering/ClipPathOperation.h:

(WebCore::ClipPathOperation::type):
(WebCore::ClipPathOperation::isSameType):

  • rendering/EllipsisBox.h:
  • rendering/FixedTableLayout.h:
  • rendering/InlineElementBox.h:
  • rendering/RenderBlockFlow.h:
  • rendering/RenderCombineText.h:
  • rendering/RenderCounter.h:
  • rendering/RenderDeprecatedFlexibleBox.h:
  • rendering/RenderFlexibleBox.h:
  • rendering/RenderFullScreen.h:
  • rendering/RenderGrid.h:
  • rendering/RenderLayer.h:
  • rendering/RenderLayerBacking.h:
  • rendering/RenderLayerCompositor.h:
  • rendering/RenderLayerFilterInfo.h:
  • rendering/RenderLineBreak.h:
  • rendering/RenderMarquee.h:
  • rendering/RenderMediaControlElements.h:
  • rendering/RenderMultiColumnFlowThread.h:
  • rendering/RenderMultiColumnSet.h:
  • rendering/RenderMultiColumnSpannerPlaceholder.h:
  • rendering/RenderNamedFlowFragment.h:
  • rendering/RenderNamedFlowThread.h:
  • rendering/RenderQuote.h:
  • rendering/RenderRegion.h:

(WebCore::RenderRegion::renderName): Deleted.

  • rendering/RenderReplica.h:
  • rendering/RenderRubyBase.h:
  • rendering/RenderRubyRun.h:
  • rendering/RenderScrollbar.h:
  • rendering/RenderScrollbarPart.h:
  • rendering/RenderScrollbarTheme.h:

(WebCore::RenderScrollbarTheme::~RenderScrollbarTheme): Deleted.
(WebCore::RenderScrollbarTheme::scrollbarThickness): Deleted.
(WebCore::RenderScrollbarTheme::buttonsPlacement): Deleted.
(WebCore::RenderScrollbarTheme::supportsControlTints): Deleted.
(WebCore::RenderScrollbarTheme::shouldCenterOnThumb): Deleted.
(WebCore::RenderScrollbarTheme::initialAutoscrollTimerDelay): Deleted.
(WebCore::RenderScrollbarTheme::autoscrollTimerDelay): Deleted.
(WebCore::RenderScrollbarTheme::registerScrollbar): Deleted.
(WebCore::RenderScrollbarTheme::unregisterScrollbar): Deleted.

  • rendering/RenderSnapshottedPlugIn.h:
  • rendering/RenderTextControlMultiLine.h:
  • rendering/RenderTextFragment.h:
  • rendering/RenderThemeGtk.h:
  • rendering/RenderThemeIOS.h:
  • rendering/RenderThemeWin.h:
  • rendering/RenderVideo.h:
  • rendering/TextAutosizer.h:
  • rendering/TrailingFloatsRootInlineBox.h:
  • rendering/mathml/RenderMathMLBlock.h:
  • rendering/mathml/RenderMathMLMenclose.h:
  • rendering/mathml/RenderMathMLOperator.h:
  • rendering/mathml/RenderMathMLRadicalOperator.h:
  • rendering/mathml/RenderMathMLRoot.h:
  • rendering/mathml/RenderMathMLRow.h:
  • rendering/mathml/RenderMathMLScripts.h:
  • rendering/mathml/RenderMathMLToken.h:
  • rendering/mathml/RenderMathMLUnderOver.h:
  • rendering/shapes/BoxShape.h:
  • rendering/shapes/PolygonShape.h:
  • rendering/shapes/RasterShape.h:
  • rendering/shapes/RectangleShape.h:
  • rendering/style/BasicShapes.h:
  • rendering/style/StylePendingImage.h:

(WebCore::StylePendingImage::computeIntrinsicDimensions): Deleted.

  • rendering/svg/RenderSVGBlock.h:
  • rendering/svg/RenderSVGContainer.h:
  • rendering/svg/RenderSVGEllipse.h:
  • rendering/svg/RenderSVGForeignObject.h:
  • rendering/svg/RenderSVGImage.h:
  • rendering/svg/RenderSVGPath.h:
  • rendering/svg/RenderSVGRect.h:
  • rendering/svg/RenderSVGResourceClipper.h:
  • rendering/svg/RenderSVGResourceFilter.h:
  • rendering/svg/RenderSVGResourceFilterPrimitive.h:
  • rendering/svg/RenderSVGResourceLinearGradient.h:
  • rendering/svg/RenderSVGResourceMarker.h:
  • rendering/svg/RenderSVGResourceMasker.h:
  • rendering/svg/RenderSVGResourcePattern.h:
  • rendering/svg/RenderSVGResourceRadialGradient.h:
  • rendering/svg/RenderSVGRoot.h:
  • rendering/svg/RenderSVGTSpan.h:
  • rendering/svg/RenderSVGText.h:
  • rendering/svg/RenderSVGTransformableContainer.h:
  • rendering/svg/RenderSVGViewportContainer.h:
  • rendering/svg/SVGInlineTextBox.h:
  • rendering/svg/SVGRootInlineBox.h:
8:49 PM Changeset in webkit [175083] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

REGRESSION(r175000): Crash in SourceBufferPrivateAVFObjC::destroyParser()
https://bugs.webkit.org/show_bug.cgi?id=137990

Reviewed by Alexey Proskuryakov.

NULL-check m_mediaSource before using.

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

(WebCore::SourceBufferPrivateAVFObjC::destroyParser):

7:54 PM Changeset in webkit [175082] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

commitqueuetask_unittest.py should be made more concise.
https://bugs.webkit.org/show_bug.cgi?id=137985

Patch by Jake Nielsen <jacob_nielsen@apple.com> on 2014-10-22
Reviewed by Alexey Proskuryakov.

  • Scripts/webkitpy/tool/bot/commitqueuetask_unittest.py:

Refactors tests to use MockSimpleTestPlanCommitQueue where possible.
(MockCommitQueue.init):
(MockCommitQueue.report_flaky_tests):
(MockCommitQueue):
(MockCommitQueue.get_reported_flaky_tests):
(MockSimpleTestPlanCommitQueue.init):
(MockSimpleTestPlanCommitQueue.run_command):
(MockSimpleTestPlanCommitQueue.did_run_clean_tests):
(CommitQueueTaskTest._run_and_expect_patch_analysis_result):
(test_land_failure):
(test_failed_archive):
(test_double_flaky_test_failure):
(test_test_failure):
(test_red_test_failure):
(test_very_red_tree_retry):
(test_red_tree_patch_rejection):
(test_one_flaky_test):
(test_tree_more_red_than_patch):
(MockCommitQueue.test_results): Deleted.
(test_simple_flaky_test_failure): Deleted.
(_expect_validate): Deleted.
(_expect_validate.MockDelegate): Deleted.
(_expect_validate.MockDelegate.refetch_patch): Deleted.
(_expect_validate.MockDelegate.expected_failures): Deleted.
(_mock_patch): Deleted.
(test_validate): Deleted.

  • Scripts/webkitpy/tool/bot/patchanalysistask.py:

Fixes a bug that slipped through the cracks prior to this change.
(PatchAnalysisTask._test_patch):

7:40 PM Changeset in webkit [175081] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebKit2

[iOS WK2] Protect WKWebView dynamic viewport change against empty sizes
https://bugs.webkit.org/show_bug.cgi?id=137988
rdar://problem/17785162

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

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _beginAnimatedResizeWithUpdates:]):
The algorithm behind dynamic size update finds the best content area to put in the viewport
after a viewport change. If an initial size or a target size is empty, it is impossible to
compute a reasonable area to keep in the view. We end up handling NaN scales
and/or sizes and CoreAnimation raises an exception when applying that value.

This patch add early exits when that occurs and fallback to the common code.

On Input, things are easy. If any of the initial values is empty, we just execute the updateBlock
without attempting any of the dynamic behaviors.

For the target values, things are trickier. We do not know what the values are going to be before we execute
the block. But once we executed the block, we have already skipped all the setters that call the web process.

To handle that, every value is set manually on WebPageProxy. This is a bit unfortunate because the setters
get yet another entry point.

7:39 PM Changeset in webkit [175080] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Refactoring to simplify some code in DatePrototype.cpp.
<https://webkit.org/b/137997>

Reviewed by Filip Pizlo.

A bunch of functions in DatePrototype.cpp have the pattern of loading a
constant into a local variable only to pass it to a callee function
immediately after. There is no other use for that variable. This adds
additional verbosity with no added benefit.

This patch refactors those functions to just pass the constant arg directly.

  • runtime/DatePrototype.cpp:

(JSC::dateProtoFuncSetMilliSeconds):
(JSC::dateProtoFuncSetUTCMilliseconds):
(JSC::dateProtoFuncSetSeconds):
(JSC::dateProtoFuncSetUTCSeconds):
(JSC::dateProtoFuncSetMinutes):
(JSC::dateProtoFuncSetUTCMinutes):
(JSC::dateProtoFuncSetHours):
(JSC::dateProtoFuncSetUTCHours):
(JSC::dateProtoFuncSetDate):
(JSC::dateProtoFuncSetUTCDate):
(JSC::dateProtoFuncSetMonth):
(JSC::dateProtoFuncSetUTCMonth):
(JSC::dateProtoFuncSetFullYear):
(JSC::dateProtoFuncSetUTCFullYear):

6:37 PM Changeset in webkit [175079] by gyuyoung.kim@samsung.com
  • 8 edits in trunk/Source/WebKit2

EFL and GTK ports have broken since r175075
https://bugs.webkit.org/show_bug.cgi?id=137995

Unreviewed, EFL and GTK ports build fix.

Need to use PLATFORM(MAC) guard for ActionMenuHitTest functions.

  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::removeNavigationGestureSnapshot):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebPage/WebPage.cpp:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
6:15 PM Changeset in webkit [175078] by commit-queue@webkit.org
  • 13 edits in trunk

String(new Date(Mar 30 2014 01:00:00)) is wrong in CET
https://bugs.webkit.org/show_bug.cgi?id=130967

Patch by Byungseon Shin <sun.shin@lge.com> on 2014-10-22
Reviewed by Mark Lam.

Source/JavaScriptCore:

By definition of calculateLocalTimeOffset, input time should be UTC time.
But there are many cases when input time is based on local time.
So, it gives erroneous results while calculating offset of DST boundary time.
By adding a argument to distinguish UTC and local time, we can get the correct offset.

(JSC::constructDate):
(JSC::callDate):
(JSC::dateUTC):

  • runtime/DateInstance.cpp:

(JSC::DateInstance::calculateGregorianDateTime):
(JSC::DateInstance::calculateGregorianDateTimeUTC):

  • runtime/DatePrototype.cpp:

(JSC::setNewValueFromTimeArgs):
(JSC::setNewValueFromDateArgs):
(JSC::dateProtoFuncSetMilliSeconds):
(JSC::dateProtoFuncSetUTCMilliseconds):
(JSC::dateProtoFuncSetSeconds):
(JSC::dateProtoFuncSetUTCSeconds):
(JSC::dateProtoFuncSetMinutes):
(JSC::dateProtoFuncSetUTCMinutes):
(JSC::dateProtoFuncSetHours):
(JSC::dateProtoFuncSetUTCHours):
(JSC::dateProtoFuncSetDate):
(JSC::dateProtoFuncSetUTCDate):
(JSC::dateProtoFuncSetMonth):
(JSC::dateProtoFuncSetUTCMonth):
(JSC::dateProtoFuncSetFullYear):
(JSC::dateProtoFuncSetUTCFullYear):
(JSC::dateProtoFuncSetYear):

  • runtime/JSDateMath.cpp:

(JSC::localTimeOffset):
(JSC::gregorianDateTimeToMS):
(JSC::msToGregorianDateTime):
(JSC::parseDateFromNullTerminatedCharacters):

  • runtime/JSDateMath.h:
  • runtime/VM.h:

(JSC::LocalTimeOffsetCache::LocalTimeOffsetCache):
(JSC::LocalTimeOffsetCache::reset):
Passing TimeType argument to distingush UTC time and local time.

Source/WTF:

By definition of calculateLocalTimeOffset, input time should be UTC time.
But there are many cases when input time is based on local time.
So, it gives erroneous results while calculating offset of DST boundary time.
By adding a argument to distinguish UTC and local time, we can get the correct offset.

  • wtf/DateMath.cpp:

(WTF::calculateLocalTimeOffset):
(WTF::parseDateFromNullTerminatedCharacters):
Compensate time offset depends on UTC time or local time.

  • wtf/DateMath.h:

Add argument to differenciate UTC or local time.

LayoutTests:

Set latest DST timezone boundary values on
<http://www.timeanddate.com/time/zone/usa/los-angeles>

  • js/dom/script-tests/date-DST-time-cusps.js:
6:13 PM Changeset in webkit [175077] by Brent Fulgham
  • 28 edits
    55 adds in trunk/LayoutTests

[Win] Rebaseline various tests after switching to Windows rendering for native controls.

  • platform/win/editing/inserting/before-after-input-element-expected.txt: Added.
  • platform/win/editing/pasteboard/4806874-expected.txt: Added.
  • platform/win/editing/pasteboard/pasting-tabs-expected.txt:
  • platform/win/editing/selection/4397952-expected.txt:
  • platform/win/editing/selection/4895428-3-expected.txt: Added.
  • platform/win/editing/selection/select-across-readonly-input-4-expected.txt:
  • platform/win/editing/selection/select-across-readonly-input-5-expected.txt:
  • platform/win/fast/block/basic: Added.
  • platform/win/fast/block/basic/fieldset-stretch-to-legend-expected.txt: Added.
  • platform/win/fast/block/float/032-expected.txt: Added.
  • platform/win/fast/css/text-input-with-webkit-border-radius-expected.txt:
  • platform/win/fast/dom/isindex-001-expected.txt: Added.
  • platform/win/fast/dom/isindex-002-expected.txt: Added.
  • platform/win/fast/forms/007-expected.txt: Added.
  • platform/win/fast/forms/button-align-expected.txt: Added.
  • platform/win/fast/forms/button-cannot-be-nested-expected.txt: Added.
  • platform/win/fast/forms/button-default-title-expected.txt:
  • platform/win/fast/forms/button-table-styles-expected.txt:
  • platform/win/fast/forms/button-white-space-expected.txt: Added.
  • platform/win/fast/forms/encoding-test-expected.txt: Added.
  • platform/win/fast/forms/floating-textfield-relayout-expected.txt: Added.
  • platform/win/fast/forms/input-align-expected.txt: Added.
  • platform/win/fast/forms/input-appearance-bkcolor-expected.txt: Added.
  • platform/win/fast/forms/input-appearance-default-bkcolor-expected.txt: Added.
  • platform/win/fast/forms/input-appearance-disabled-expected.txt: Added.
  • platform/win/fast/forms/input-appearance-preventDefault-expected.txt: Added.
  • platform/win/fast/forms/input-appearance-width-expected.txt: Added.
  • platform/win/fast/forms/input-baseline-expected.txt: Added.
  • platform/win/fast/forms/input-disabled-color-expected.txt: Added.
  • platform/win/fast/forms/input-field-text-truncated-expected.txt: Added.
  • platform/win/fast/forms/input-placeholder-visibility-1-expected.txt: Added.
  • platform/win/fast/forms/input-placeholder-visibility-3-expected.txt: Added.
  • platform/win/fast/forms/input-readonly-empty-expected.txt: Added.
  • platform/win/fast/forms/input-table-expected.txt: Added.
  • platform/win/fast/forms/input-text-click-inside-expected.txt: Added.
  • platform/win/fast/forms/input-text-option-delete-expected.txt: Added.
  • platform/win/fast/forms/input-text-scroll-left-on-blur-expected.txt: Added.
  • platform/win/fast/forms/input-text-self-emptying-click-expected.txt: Added.
  • platform/win/fast/forms/input-text-word-wrap-expected.txt: Added.
  • platform/win/fast/forms/menulist-restrict-line-height-expected.txt: Added.
  • platform/win/fast/forms/menulist-style-color-expected.txt:
  • platform/win/fast/forms/minWidthPercent-expected.txt: Added.
  • platform/win/fast/forms/placeholder-position-expected.txt: Added.
  • platform/win/fast/forms/select-listbox-multiple-no-focusring-expected.txt:
  • platform/win/fast/forms/select-overflow-scroll-expected.txt:
  • platform/win/fast/forms/select-overflow-scroll-inherited-expected.txt:
  • platform/win/fast/forms/text-style-color-expected.txt: Added.
  • platform/win/fast/forms/textfield-focus-ring-expected.txt: Added.
  • platform/win/fast/forms/textfield-outline-expected.txt: Added.
  • platform/win/fast/forms/visual-hebrew-text-field-expected.txt: Added.
  • platform/win/fast/lists/dynamic-marker-crash-expected.txt: Added.
  • platform/win/fast/table/spanOverlapRepaint-expected.txt: Added.
  • platform/win/fast/table/text-field-baseline-expected.txt: Added.
  • platform/win/fast/text/textIteratorNilRenderer-expected.txt:
  • platform/win/svg/custom/inline-svg-in-html-expected.txt: Added.
  • platform/win/svg/hixie/mixed: Added.
  • platform/win/svg/hixie/mixed/003-expected.txt: Added.
  • platform/win/tables/mozilla/bugs/45621-expected.txt: Added.
  • platform/win/tables/mozilla/bugs/bug138725-expected.txt:
  • platform/win/tables/mozilla/bugs/bug194024-expected.txt: Added.
  • platform/win/tables/mozilla/bugs/bug24200-expected.txt: Added.
  • platform/win/tables/mozilla/bugs/bug2479-3-expected.txt:
  • platform/win/tables/mozilla/bugs/bug2479-4-expected.txt:
  • platform/win/tables/mozilla/bugs/bug39209-expected.txt:
  • platform/win/tables/mozilla/bugs/bug4527-expected.txt:
  • platform/win/tables/mozilla/bugs/bug46368-1-expected.txt:
  • platform/win/tables/mozilla/bugs/bug46368-2-expected.txt:
  • platform/win/tables/mozilla/bugs/bug51727-expected.txt:
  • platform/win/tables/mozilla/bugs/bug52505-expected.txt:
  • platform/win/tables/mozilla/bugs/bug52506-expected.txt:
  • platform/win/tables/mozilla/bugs/bug59354-expected.txt: Added.
  • platform/win/tables/mozilla/bugs/bug60749-expected.txt:
  • platform/win/tables/mozilla/bugs/bug68912-expected.txt: Added.
  • platform/win/tables/mozilla/bugs/bug7342-expected.txt:
  • platform/win/tables/mozilla/bugs/bugs28928-expected.txt: Added.
  • platform/win/tables/mozilla/collapsing_borders/bug41262-4-expected.txt:
  • platform/win/tables/mozilla_expected_failures/bugs/bug92647-1-expected.txt: Added.
  • platform/win/tables/mozilla_expected_failures/collapsing_borders: Added.
  • platform/win/tables/mozilla_expected_failures/collapsing_borders/bug41262-5-expected.txt: Added.
  • platform/win/tables/mozilla_expected_failures/collapsing_borders/bug41262-6-expected.txt: Added.
  • platform/win/tables/mozilla_expected_failures/core/captions1-expected.txt:
  • platform/win/tables/mozilla_expected_failures/core/captions2-expected.txt:
5:05 PM Changeset in webkit [175076] by ap@apple.com
  • 4 edits in trunk/Tools

Flakiness dashboard should support OS X Yosemite
https://bugs.webkit.org/show_bug.cgi?id=137986

Reviewed by Ryosuke Niwa.

  • TestResultServer/app.yaml:
  • TestResultServer/static-dashboards/builders.jsonp:
  • TestResultServer/static-dashboards/flakiness_dashboard.js:
4:48 PM Changeset in webkit [175075] by timothy_horton@apple.com
  • 17 edits
    6 adds in trunk/Source/WebKit2

Add action menu support for images
https://bugs.webkit.org/show_bug.cgi?id=137987
<rdar://problem/18717767>

Reviewed by Anders Carlsson, Sam Weinig, and Beth Dakin.

  • Resources/AddImageToPhotos.pdf: Added.
  • Resources/CopyImage.pdf: Added.
  • Resources/SaveImageToDownloads.pdf: Added.
  • Resources/ShareImage.pdf: Added.

Add some temporary artwork.

  • Scripts/webkit/messages.py:

(struct_or_class):
ActionMenuHitTestResult is a struct.

  • Shared/API/c/WKActionMenuItemTypes.h:

Add new items for image menus.

  • Shared/mac/ActionMenuHitTestResult.cpp:

(WebKit::ActionMenuHitTestResult::encode):
(WebKit::ActionMenuHitTestResult::decode):
For now, pass the hit image data across to the UI process as a ShareableBitmap.

  • Shared/mac/ActionMenuHitTestResult.h:
  • UIProcess/API/mac/WKView.mm:

(-[WKView _createActionMenuItemForTag:]):
Refactor action menu item creation into a single function, so that
callers can share code and be much simpler.

(webKitBundleImageNamed):
Add a helper to acquire an image from the WebKit2 bundle.

(-[WKView _copyImage:]):
(-[WKView _saveImageToDownloads:]):
(temporaryPhotosDirectoryPath):
(pathToPhotoOnDisk):
(-[WKView _addImageToPhotos:]):
Add rudimentary implementations of image actions.

(-[WKView _defaultMenuItemsForImage]):
Support the image menu, plus a submenu acquired from NSSharingServicePicker
for the Share menu.

(-[WKView _defaultMenuItems]):
Call _defaultMenuItemsForImage if needed.

(-[WKView _updateActionMenu]):
Refactor _updateActionMenu out of prepareForMenu:withEvent:.

(-[WKView prepareForMenu:withEvent:]):
Ask the Web process to re-hit-test under the location that the menu
will appear. Mark the menu as pending.

(-[WKView _didPerformActionMenuHitTest:]):
When we get the hit test reply, record the result for future use.

(-[WKView willOpenMenu:withEvent:]):
If we got a hit test reply, rebuild the menu immediately. If not, wait
up to 500ms for the reply to come in. This eventually needs to be
cancellable if the menu is rejected in the interim.

(-[WKView didCloseMenu:withEvent:]):
Clear all state when the menu closes.

  • UIProcess/API/mac/WKViewInternal.h:
  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::performActionMenuHitTestAtLocation):
(WebKit::WebPageProxy::didPerformActionMenuHitTest):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/mac/PageClientImpl.h:
  • UIProcess/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::didPerformActionMenuHitTest):

  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:

Plumb didPerformActionMenuHitTest back from WebPageProxy to WKView.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::performActionMenuHitTestAtLocation):
Hit test at the given location, recording the image data if there is any,
and return the result to the UI process.

  • WebKit2.xcodeproj/project.pbxproj:

Add the PDFs.

4:43 PM Changeset in webkit [175074] by dbates@webkit.org
  • 3 edits
    9 adds in trunk

SVG loaded through html <img> can't request to load any external resources.
https://bugs.webkit.org/show_bug.cgi?id=137762.

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2014-10-22
Reviewed by Daniel Bates.

Source/WebCore:

SVG images have unique security rules that prevent them from loading any external
resources. This patch enforces these rules in CachedResourceLoader::canRequest for
all non-data-uri resources.

The fix and the tests are ported but modified a little from the chromium fix:
http://src.chromium.org/viewvc/blink?view=rev&rev=176084

Test: http/tests/security/svg-image-with-cached-remote-image.html

http/tests/security/svg-image-with-css-cross-domain.html

For the SVG image, prevent loading any external sub-resource except for data urls.

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::canRequest):

LayoutTests:

Ensure that SVG images, which are loaded through the <img> tag or through the
CSS background image, cannot load any external sub-resource except for data-
URL resources (though this doesn't work at the time of writing, see bug #137941).
Also ensure the same rule is enforced on cached resources.

The tests are ported but modified a little from the chromium fix:
http://src.chromium.org/viewvc/blink?view=rev&rev=176084

Set the circle background to orange

  • http/tests/security/resources/image-with-css-cross-domain-circle.css: Added.

(circle):

Set the circle stroke-width = 2 and the circle stroke = red

  • http/tests/security/resources/image-with-css-cross-domain-circle2.css: Added.

(circle):

This svg references the two css files: one is relative path and the other is absolute path

  • http/tests/security/resources/image-with-css-cross-domain.svg: Added.

This svg references an external image.

  • http/tests/security/resources/image-with-remote-image.svg: Added.

A helper css which sets the formatting style for some html tags

  • http/tests/security/svg-image-with-css-cross-domain.css: Added.

(span):
(span.circle-css-cross-domain):
(embed):
(iframe):

Test the svg which is referenced as a cached image by an <object> tag, does not load
external sub-resource.

  • http/tests/security/svg-image-with-cached-remote-image-expected.html: Added.
  • http/tests/security/svg-image-with-cached-remote-image.html: Added.

Test loading sub-resources for an svg which is included in the html by different ways
and which references external css files.
Ensure the image object does not load any external sub-resources.

  • http/tests/security/svg-image-with-css-cross-domain-expected.html: Added.
  • http/tests/security/svg-image-with-css-cross-domain.html: Added.
4:27 PM Changeset in webkit [175073] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

commitqueuetask should include more tests to ensure that the behavior
of PatchAnalysisTask._test_patch() is well defined
https://bugs.webkit.org/show_bug.cgi?id=137977

Patch by Jake Nielsen <jacob_nielsen@apple.com> on 2014-10-22
Reviewed by Alexey Proskuryakov.

  • Scripts/webkitpy/tool/bot/commitqueuetask_unittest.py:

Adds the MockSimpleTestPlanCommitQueue class, which makes it easier
and more readable to define tests that are meant to test the behaviour
of PatchAnalysisTask._test_patch(), and adds several unit tests.
(FailingTestCommitQueue.test_results):
(PatchAnalysisResult):
(MockSimpleTestPlanCommitQueue):
(MockSimpleTestPlanCommitQueue.init):
(MockSimpleTestPlanCommitQueue.run_command):
(MockSimpleTestPlanCommitQueue._mock_test_result):
(MockSimpleTestPlanCommitQueue.test_results):
(CommitQueueTaskTest._run_and_expect_patch_analysis_result):
(test_flaky_test_failure):
(test_failed_archive):
(test_two_flaky_tests):
(test_one_flaky_test):
(test_very_flaky_patch):
(test_very_flaky_patch_with_some_tree_redness):
(test_different_test_failures):
(test_different_test_failures_with_some_tree_redness):
(test_mildly_flaky_patch):
(test_mildly_flaky_patch_with_some_tree_redness):
(test_tree_more_red_than_patch):

4:18 PM Changeset in webkit [175072] by adachan@apple.com
  • 6 edits
    2 adds in trunk

MediaPlayerPrivateAVFoundation::hasAudio() returns false even when there is an audible AVMediaSelectionOption selected
https://bugs.webkit.org/show_bug.cgi?id=137935

Reviewed by Eric Carlson.

Source/WebCore:

Set hasAudio to true if there's a selected audible AVMediaSelectionOption
after the call to updateAudioTracks(). Ditto for video.

Test: http/tests/media/hls/hls-audio-tracks-has-audio.html

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

(WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged):

  • testing/Internals.cpp:

(WebCore::Internals::mediaElementHasCharacteristic):

  • testing/Internals.h:
  • testing/Internals.idl:

Add internals.mediaElementHasCharacteristic for the new test.

LayoutTests:

  • http/tests/media/hls/hls-audio-tracks-has-audio-expected.txt: Added.
  • http/tests/media/hls/hls-audio-tracks-has-audio.html: Added.
4:03 PM Changeset in webkit [175071] by gyuyoung.kim@samsung.com
  • 8 edits in trunk/Source

Remove WidgetBackingStoreCairo::create() factory function
https://bugs.webkit.org/show_bug.cgi?id=137943

Reviewed by Darin Adler.

WidgetBackingStoreCairo::create() can be replaced by std::make_unique<>.
Thus this patch removes it, then use std::make_unique<>|std::unique_ptr<>.

Source/WebCore:

No new tests, no behavior changes.

  • platform/cairo/WidgetBackingStoreCairo.cpp:

(WebCore::WidgetBackingStoreCairo::create): Deleted.

  • platform/cairo/WidgetBackingStoreCairo.h:
  • platform/gtk/WidgetBackingStoreGtkX11.cpp:

(WebCore::WidgetBackingStoreGtkX11::create): Deleted.

  • platform/gtk/WidgetBackingStoreGtkX11.h:

Source/WebKit2:

  • UIProcess/BackingStore.h:
  • UIProcess/cairo/BackingStoreCairo.cpp:

(WebKit::createBackingStoreForGTK):
(WebKit::BackingStore::incorporateUpdate):

4:01 PM Changeset in webkit [175070] by gyuyoung.kim@samsung.com
  • 7 edits in trunk/Source

Remove TextCheckerEnchant::create() factory function
https://bugs.webkit.org/show_bug.cgi?id=137944

Reviewed by Darin Adler.

TextCheckerEnchant::create() can be replaced by std::make_unique<> and std::unique_ptr<>.

Source/WebCore:

No new tests, no behavior change.

  • platform/text/enchant/TextCheckerEnchant.h:

(WebCore::TextCheckerEnchant::create): Deleted.

Source/WebKit2:

  • UIProcess/API/gtk/WebKitTextChecker.cpp:

(WebKitTextChecker::WebKitTextChecker):

  • UIProcess/API/gtk/WebKitTextChecker.h:
  • UIProcess/efl/TextCheckerClientEfl.cpp:

(TextCheckerClientEfl::TextCheckerClientEfl):

  • UIProcess/efl/TextCheckerClientEfl.h:
3:53 PM Changeset in webkit [175069] by bshafiei@apple.com
  • 5 edits in branches/safari-600.1.25-branch/Source

Versioning.

2:45 PM Changeset in webkit [175068] by Chris Dumez
  • 18 edits in trunk/Source/WebCore

Avoid confusion between AccessibilityObject::isTable() / isAccessibilityTable()
https://bugs.webkit.org/show_bug.cgi?id=137899

Reviewed by Darin Adler.

Avoid confusion between AccessibilityObject::isTable() and
isAccessibilityTable(). isTable() is equivalent to
is<AccessibilityTable>(), while isAccessibilityTable() is an
AccessibilityTable that is exposed as an AccessibilityTable to the
platform.

This patch is renaming isAccessibilityTable() to
isExposableThroughAccessibility(), makes it non-virtual and defines it
on AccessibilityTable only, for clarity.

This patch also renames isTableExposableThroughAccessibility() to
computeIisTableExposableThroughAccessibility() as it is called only
once to initialize the m_isExposableThroughAccessibility data member.

No new tests, no behavior change.

  • accessibility/AccessibilityARIAGrid.cpp:

(WebCore::AccessibilityARIAGrid::addChildren):

  • accessibility/AccessibilityARIAGrid.h:
  • accessibility/AccessibilityARIAGridCell.cpp:

(WebCore::AccessibilityARIAGridCell::parentTable):
(WebCore::AccessibilityARIAGridCell::rowIndexRange):
(WebCore::AccessibilityARIAGridCell::columnIndexRange):

  • accessibility/AccessibilityARIAGridRow.cpp:

(WebCore::AccessibilityARIAGridRow::disclosedRows):
(WebCore::AccessibilityARIAGridRow::disclosedByRow):
(WebCore::AccessibilityARIAGridRow::parentTable):

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::shouldUseAccessiblityObjectInnerText):

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::isAccessibilityObjectSearchMatchAtIndex):
(WebCore::appendChildrenToArray):

  • accessibility/AccessibilityObject.h:

(WebCore::AccessibilityObject::isAccessibilityTable): Deleted.

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::ariaSelectedRows):

  • accessibility/AccessibilityTable.cpp:

(WebCore::AccessibilityTable::AccessibilityTable):
(WebCore::AccessibilityTable::init):
(WebCore::AccessibilityTable::isExposableThroughAccessibility):
(WebCore::AccessibilityTable::computeIsTableExposableThroughAccessibility):
(WebCore::AccessibilityTable::addChildren):
(WebCore::AccessibilityTable::tableLevel):
(WebCore::AccessibilityTable::roleValue):
(WebCore::AccessibilityTable::computeAccessibilityIsIgnored):
(WebCore::AccessibilityTable::title):
(WebCore::AccessibilityTable::isAccessibilityTable): Deleted.
(WebCore::AccessibilityTable::isTableExposableThroughAccessibility): Deleted.

  • accessibility/AccessibilityTable.h:
  • accessibility/AccessibilityTableCell.cpp:

(WebCore::AccessibilityTableCell::isTableCell):

  • accessibility/AccessibilityTableColumn.cpp:

(WebCore::AccessibilityTableColumn::headerObject):
(WebCore::AccessibilityTableColumn::addChildren):

  • accessibility/AccessibilityTableHeaderContainer.cpp:

(WebCore::AccessibilityTableHeaderContainer::addChildren):

  • accessibility/AccessibilityTableRow.cpp:

(WebCore::AccessibilityTableRow::isTableRow):
(WebCore::AccessibilityTableRow::parentTable):

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(webkitAccessibleGetNChildren):
(webkitAccessibleRefChild):
(webkitAccessibleGetAttributes):

  • accessibility/mac/AXObjectCacheMac.mm:

(WebCore::AXObjectCache::postPlatformNotification):

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
(-[WebAccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
(-[WebAccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):

2:16 PM Changeset in webkit [175067] by Chris Dumez
  • 4 edits in trunk/Source/WebCore

Avoid repeated is<MutableStyleProperties>() checks in StyleProperties
https://bugs.webkit.org/show_bug.cgi?id=137978

Reviewed by Andreas Kling.

Reduce the amount of is<MutableStyleProperties>() checks in
StyleProperties by:

  • Removing the checks in each method of StyleProperties::PropertyReference, and replace them by a single check in StyleProperties::propertyAt().
  • Providing faster propertyCount() / propertyAt() / isEmpty() methods on MutableStyleProperties / ImmutableStyleProperties as a lot of callers use tight typing.
  • Using tighter typing at call sites whenever possible.

Ideally, we could be able to use iterators instead of propertyCount() /
propertyAt() but this is not trivial to do efficiently as the
representation in memory is fundamentally different for MutableStyleProperties
/ ImmutableStyleProperties. We may be able to do better longer term, but
this is already more efficient short term at least.

No new tests, no behavior change.

  • css/StyleProperties.cpp:

(WebCore::MutableStyleProperties::MutableStyleProperties):
(WebCore::StyleProperties::PropertyReference::cssText):

  • css/StyleProperties.h:

(WebCore::StyleProperties::PropertyReference::PropertyReference):
(WebCore::StyleProperties::PropertyReference::id):
(WebCore::StyleProperties::PropertyReference::shorthandID):
(WebCore::StyleProperties::PropertyReference::isImportant):
(WebCore::StyleProperties::PropertyReference::isInherited):
(WebCore::StyleProperties::PropertyReference::isImplicit):
(WebCore::StyleProperties::PropertyReference::value):
(WebCore::StyleProperties::PropertyReference::toCSSProperty):
(WebCore::StyleProperties::isEmpty):
(WebCore::ImmutableStyleProperties::isEmpty):
(WebCore::MutableStyleProperties::isEmpty):
(WebCore::ImmutableStyleProperties::propertyAt):
(WebCore::MutableStyleProperties::propertyAt):
(WebCore::StyleProperties::propertyAt):
(WebCore::StyleProperties::propertyCount):
(WebCore::StyleProperties::PropertyReference::propertyMetadata): Deleted.
(WebCore::StyleProperties::PropertyReference::propertyValue): Deleted.

  • editing/EditingStyle.cpp:

(WebCore::removePropertiesInStyle):
(WebCore::EditingStyle::removePropertiesInElementDefaultStyle):

2:14 PM Changeset in webkit [175066] by eric.carlson@apple.com
  • 8 edits in trunk/Source/WebCore

[Mac][MediaStream] clean up bit rot
https://bugs.webkit.org/show_bug.cgi?id=137976

Reviewed by Jer Noble.

No new tests, this just gets the Mac port compiling again.

  • Modules/mediastream/MediaStream.h: Add a virtual destructor to Observer since it has

a virtual method.

  • WebCore.exp.in: Export RTCPeerConnectionHandler::create and RTCPeerConnectionHandlerMock::create(WebCore::RTCPeerConnectionHandlerClient*),

they are both use by Internals for testing.

  • WebCore.xcodeproj/project.pbxproj: Add RTC and MediaStream files.
  • html/HTMLMediaElement.h: Forward declare MediaStream instead of including MediaStream.h.
  • platform/mediastream/RTCPeerConnectionHandler.h: EXPORT the create method.
  • platform/mock/MediaConstraintsMock.cpp:

(WebCore::isSupported): Make static.
(WebCore::isValid): Ditto.

  • platform/mock/RTCPeerConnectionHandlerMock.h: EXPORT the create method.
2:11 PM Changeset in webkit [175065] by bshafiei@apple.com
  • 1 copy in tags/Safari-600.1.25.1

New tag.

1:14 PM Changeset in webkit [175064] by Antti Koivisto
  • 3 edits in trunk/Source/WebKit2

Revert fix for REGRESSION (r173356): Safari can't install a profile, gets 'Download Failed error
(https://bugs.webkit.org/show_bug.cgi?id=137493)

Turns out the root cause was a bug in MIME type sniffing, https://bugs.webkit.org/show_bug.cgi?id=137855

Remove the workaround.

  • Shared/Downloads/ios/DownloadIOS.mm:

(WebKit::Download::startWithHandle):

  • Shared/Downloads/mac/DownloadMac.mm:

(WebKit::Download::startWithHandle):

1:04 PM Changeset in webkit [175063] by commit-queue@webkit.org
  • 8 edits
    2 deletes in trunk/Tools

PatchAnalysisTask._test_patch() needs refactoring
https://bugs.webkit.org/show_bug.cgi?id=137904

Patch by Jake Nielsen <jacob_nielsen@apple.com> on 2014-10-22
Reviewed by Alexey Proskuryakov.

  • Scripts/webkitpy/tool/bot/commitqueuetask_unittest.py:

Fixes several small bugs, and makes minor changes to accomodate the
changes in PatchAnalysisTask.
(MockCommitQueue.refetch_patch):
(MockCommitQueue.test_results):
(test_flaky_test_failure):
(test_failed_archive):
(test_very_red_tree_retry):
(_expect_validate.MockDelegate.refetch_patch):
(MockCommitQueue.expected_failures): Deleted.
(_expect_validate.MockDelegate.expected_failures): Deleted.

  • Scripts/webkitpy/tool/bot/expectedfailures.py: Removed.
  • Scripts/webkitpy/tool/bot/expectedfailures_unittest.py: Removed.
  • Scripts/webkitpy/tool/bot/patchanalysistask.py:

Removes the unexpected_failures member, adds the _clean_tree_results
member, adds a helper function for _test_patch, and refactors
_test_patch to be more readable.
(PatchAnalysisTask.init):
(PatchAnalysisTask._continue_testing_patch_that_exceeded_failure_limit_on_first_or_second_try):
(PatchAnalysisTask._test_patch):
(PatchAnalysisTask.results_from_test_run_without_patch):

  • Scripts/webkitpy/tool/commands/earlywarningsystem.py:

Removes AbstractEarlyWarningSystem's dependancy on ExpectedFailures.
(AbstractEarlyWarningSystem.begin_work_queue):
(AbstractEarlyWarningSystem._failing_tests_message):
(AbstractEarlyWarningSystem.command_failed):
(AbstractEarlyWarningSystem.expected_failures): Deleted.

  • Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:

Makes changes to accomodate the changes made to PatchAnalysisTask.
(AbstractEarlyWarningSystemTest.test_failing_tests_message):

  • Scripts/webkitpy/tool/commands/perfalizer.py:

Removes Perfalizer's dependancy on ExpectedFailures.
(PerfalizerTask.refetch_patch):
(PerfalizerTask.expected_failures): Deleted.

  • Scripts/webkitpy/tool/commands/queues.py:

Removes CommitQueue's dependancy on ExpectedFailures, and adds an
initializer to allow for mock injection.
(CommitQueue.init):
(CommitQueue.begin_work_queue):
(CommitQueue.process_work_item):
(CommitQueue._failing_tests_message):

  • Scripts/webkitpy/tool/commands/queues_unittest.py:

Removes dependancy on ExpectedFailures, and instead uses mock
injection.
(MockCommitQueueTask):
(MockCommitQueueTask.results_from_patch_test_run):
(MockCommitQueueTask.results_from_test_run_without_patch):
(mock_run_webkit_patch):

12:44 PM Changeset in webkit [175062] by matthew_hanson@apple.com
  • 5 edits in branches/safari-600.3-branch/Source

Versioning.

12:13 PM Changeset in webkit [175061] by Beth Dakin
  • 5 edits in trunk/Source/WebKit2

Remove action menu web preference
https://bugs.webkit.org/show_bug.cgi?id=137975

Reviewed by Tim Horton.

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

(WKPreferencesSetActionMenuSupportEnabled): Deleted.
(WKPreferencesGetActionMenuSupportEnabled): Deleted.

  • UIProcess/API/C/WKPreferencesRefPrivate.h:
  • UIProcess/API/mac/WKView.mm:

(-[WKView initWithFrame:context:configuration:webView:]):

12:12 PM Changeset in webkit [175060] by matthew_hanson@apple.com
  • 1 copy in branches/safari-600.3-branch

New Branch.

12:11 PM Changeset in webkit [175059] by commit-queue@webkit.org
  • 5 edits in trunk/Source/JavaScriptCore

Web Inspector: Fix generator importing of protocol type "any", treat as value
https://bugs.webkit.org/show_bug.cgi?id=137931

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-10-22
Reviewed by Timothy Hatcher.

Treat incoming "any" objects as InspectorValues, which can be any type.
Add the necessary boilerplate to import.

  • inspector/InspectorBackendDispatcher.cpp:

(Inspector::AsMethodBridges::asValue):
(Inspector::InspectorBackendDispatcher::getValue):

  • inspector/InspectorBackendDispatcher.h:
  • inspector/scripts/codegen/generator.py:

(Generator.keyed_get_method_for_type):

  • inspector/scripts/tests/expected/commands-with-optional-call-return-parameters.json-result:
11:59 AM Changeset in webkit [175058] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION(r174996): Broke C_LOOP
https://bugs.webkit.org/show_bug.cgi?id=137971

Reviewed by Mark Lam.

Removed incorrect move to cfr (CallFrameRegister) before we make the call to a native function.
After r174996, the source register for the move contained garbage causing the crash. The move
to cfr before making the call to the native function is wrong and should have been removed
some time ago. This brings the ARM64 / C_LOOP code path inline with the other CPU paths.
Tested on ARM64 as well as a C_LOOP build.

  • llint/LowLevelInterpreter64.asm:
10:50 AM Changeset in webkit [175057] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Unreviewed EFL gardening.
https://bugs.webkit.org/show_bug.cgi?id=137950

Some tests that are passed in latest build.

Patch by Hunseop Jeong <Hunseop Jeong> on 2014-10-22

  • platform/efl/TestExpectations: Remove passing tests from TestExceptation file.
10:45 AM Changeset in webkit [175056] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

[Win] Mark a number of tests as failing due to white selected text color.
https://bugs.webkit.org/show_bug.cgi?id=137963

  • platform/win/TestExpectations:
10:43 AM Changeset in webkit [175055] by Chris Dumez
  • 22 edits
    1 copy
    1 add in trunk/Source

[Mac][WK2] Fix applicationIsSafari() detection
https://bugs.webkit.org/show_bug.cgi?id=137893

Reviewed by Alexey Proskuryakov.

Source/WebCore:

I noticed when profiling Safari on Mac that we were exercising a code
path we shouldn't because it is meant for other applications that
Safari.

The detection relies on the applicationIsSafari() function in
RuntimeApplicationChecks.cpp. This was in some cases returning false on
my machine even though I was running Safari so I investigated a bit and
noticed that the check relies on the main bundle identifier string and
is doing:
isSafari = mainBundleIsEqualTo("com.apple.Safari")

mainBundleIsEqualTo("com.apple.WebProcess");

This WebProcess detection is very unreliable because:

  • It matches other apps than Safari's WebProcesses
  • The bundle name for the WebProcess is sometimes

"com.apple.WebKit.WebContent" or
"com.apple.WebKit.WebContent.Development".

The solution used in this patch is to move the applicationIsSafari()
check to the UIProcess so that the check actually succeeds reliably.
The call site for applicationIsSafari() was in
ResourceRequest::useQuickLookResourceCachingQuirks(). This match
removes that logic from ResourceRequest and move it to
FrameLoaderClient as only the FrameLoader is interested in this
information. The logic to determine if we should use QuickLook
resource caching quirks is moved to a new QuickLook class under
platform/ as the code needs to be shared between WebKit and WebKit2.
On WebKit2, we make use that code on the UIProcess side and pass
the flag as a parameter when constructing the WebProcess. The flag
is then stored on the WebProcess and queried by WebFrameLoaderClient.

Previously, we would spend ~1% of the WebProcess cpu time (when loading
apple.com) trying to detect if we should use QuickLook resource caching
quirks even though that check was supposed to be disabled and return
early when running Safari.

No new tests, not easily testable.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • loader/EmptyClients.h:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::subresourceCachePolicy):

  • loader/FrameLoaderClient.h:
  • platform/RuntimeApplicationChecks.cpp:

(WebCore::applicationIsSafari):
Remove "com.apple.WebProcess" bundle name matching as this causes false
positives (matches other applications than Safari's WebProcesses) and
it is no longer needed now that applicationIsSafari() is always called
from the UIProcess.

  • platform/mac/QuickLookMac.h: Added.
  • platform/mac/QuickLookMac.mm: Copied from Source/WebCore/platform/network/mac/ResourceRequestMac.mm.

(WebCore::QuickLookMac::computeNeedsQuickLookResourceCachingQuirks):

  • platform/network/cf/ResourceRequest.h:
  • platform/network/ios/ResourceRequestIOS.mm:

(WebCore::ResourceRequest::useQuickLookResourceCachingQuirks): Deleted.

  • platform/network/mac/ResourceRequestMac.mm:

(WebCore::initQuickLookResourceCachingQuirks): Deleted.
(WebCore::ResourceRequest::useQuickLookResourceCachingQuirks): Deleted.

Source/WebKit/mac:

Provide an implementation for FrameLoaderClient's new
needsQuickLookResourceCachingQuirks() that returns
a static flag initialized using
QuickLookMac::computeNeedsQuickLookResourceCachingQuirks().

  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebCoreSupport/WebFrameLoaderClient.mm:

Source/WebKit2:

Provide an implementation for FrameLoaderClient's new
needsQuickLookResourceCachingQuirks(), which accesses the flag stored
on the WebProcess, which is initialized upon WebProcess creation.

QuickLookMac::computeNeedsQuickLookResourceCachingQuirks() is called
on UIProcess side so that it works reliably and the flag is passed as
parameter when constructing the WebProcess.

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):

  • Shared/WebProcessCreationParameters.h:
  • UIProcess/mac/WebContextMac.mm:

(WebKit::WebContext::platformInitializeWebProcess):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::needsQuickLookResourceCachingQuirks):

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

(WebKit::WebProcess::WebProcess):

  • WebProcess/WebProcess.h:

(WebKit::WebProcess::needsQuickLookResourceCachingQuirks):

  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::platformInitializeWebProcess):

10:41 AM Changeset in webkit [175054] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

[Win] Mark a number of tests as failing due to <select> bug.
https://bugs.webkit.org/show_bug.cgi?id=137962

  • platform/win/TestExpectations:
10:16 AM Changeset in webkit [175053] by commit-queue@webkit.org
  • 5 edits
    8 adds in trunk

XMLHttpRequest should support attribute responseURL as per latest XHR spec.
https://bugs.webkit.org/show_bug.cgi?id=136938

Patch by Shivakumar JM <shiva.jm@samsung.com> on 2014-10-22
Reviewed by Alexey Proskuryakov.

Source/WebCore:

Tests: http/tests/xmlhttprequest/basic-auth-responseURL.html

http/tests/xmlhttprequest/cross-origin-redirect-responseURL.html
http/tests/xmlhttprequest/redirect-credentials-responseURL.html
http/tests/xmlhttprequest/xmlhttprequest-responseURL.html

XMLHttpRequest should support attribute responseURL

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::responseURL):

  • xml/XMLHttpRequest.h:
  • xml/XMLHttpRequest.idl:

LayoutTests:

Added test to check responseURL attribute in XMLHttpRequest.

  • http/tests/xmlhttprequest/basic-auth-responseURL-expected.txt: Added.
  • http/tests/xmlhttprequest/basic-auth-responseURL.html: Added.
  • http/tests/xmlhttprequest/cross-origin-redirect-responseURL-expected.txt: Added.
  • http/tests/xmlhttprequest/cross-origin-redirect-responseURL.html: Added.
  • http/tests/xmlhttprequest/redirect-credentials-responseURL-expected.txt: Added.
  • http/tests/xmlhttprequest/redirect-credentials-responseURL.html: Added.
  • http/tests/xmlhttprequest/xmlhttprequest-responseURL-expected.txt: Added.
  • http/tests/xmlhttprequest/xmlhttprequest-responseURL.html: Added.
9:56 AM Changeset in webkit [175052] by Chris Dumez
  • 13 edits
    1 add in trunk/Source/WebCore

Add initial support for generating the StyleBuilder from CSSPropertyNames.in
https://bugs.webkit.org/show_bug.cgi?id=137910

Reviewed by Andreas Kling.

Add initial support for generating the StyleBuilder from
CSSPropertyNames.in. This is a first step towards getting rid of the
legacy DeprecatedStyleBuilder class and having everything defined in one
place (CSSPropertyNames.in).

This patch updates makeprop.pl script to generate a StyleBuilder.cpp
file that generate a the StyleBuilder::applyProperty() method
implementation using a huge switch statement for all the CSS
properties. With this patch, we are now generating the new StyleBuilder
code for all the "simple" CSS properties (i.e. those that were using
ApplyPropertyDefault<> in DeprecatedStyleBuilder.cpp). I am using a
"NewStyleBuilder" option in CSSPropertyNames.in for properties that
we generate to help with improving incrementally the generator. Once
we are able to generate all properties, this transition option will
do away and become the default.

By default, the generator will make an educated guess for the type
name, the getter, the setter and the initial function of each property.
For example, for the border-collapse property, it will use:

  • TypeName: EBorderCollapse (i.e. 'E' + PropertyId)
  • Getter: borderCollapse() (i.e. PropertyId with first letter lowercased)
  • Setter: setBorderCollapse() (i.e. 'set' + PropertyId)
  • Initial: initialBorderCollapse() (i.e. 'initial' + PropertyId)

This works for most properties. For properties that need
special-casing, developers can use the following options in
CSSPropertyNames.in:

  • TypeName: Overrides the type name
  • Getter: Overrides the getter name
  • Setter: Overrides the setter name
  • Initial: Overrides the initial function name
  • NameForMethods: Overrides the Getter / Setter / Initial function names. For e.g. "NameForMethods=OverflowWrap" will use "overflowWrap() / setOverflowWrap() / initialOverflowWrap()".

The patch is inspired by the following Blink revision by
<timloh@chromium.org>:
https://src.chromium.org/viewvc/blink?view=rev&revision=150424

No new tests, no behavior change.

  • CMakeLists.txt:
  • DerivedSources.make:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSPropertyNames.in:
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::ApplyPropertyVerticalAlign::createHandler):
(WebCore::ApplyPropertyDisplay::applyInitialValue):
(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):

  • css/StyleBuilder.h: Added.
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::adjustRenderStyle):
(WebCore::StyleResolver::applyProperty):

  • css/makeprop.pl:
  • rendering/style/RenderStyle.h:

Move the initialXXX() methods that were in NonInheritedFlags to
RenderStyle class, with the other initialXXX() methods to facilitate
code generation.

  • rendering/style/StyleMultiColData.cpp:

(WebCore::StyleMultiColData::StyleMultiColData):

  • rendering/style/StyleRareNonInheritedData.cpp:

(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):

8:56 AM Changeset in webkit [175051] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebCore

Unreviewed. Fix GStreamer debug build after r175050.

Explicitly include wtf/MainThread.h.

  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
8:12 AM Changeset in webkit [175050] by Carlos Garcia Campos
  • 12 edits
    3 adds in trunk

[GStreamer] Do not use CachedResourceLoader, SecurityOrigin, ResourceBuffer and other WebCore types
https://bugs.webkit.org/show_bug.cgi?id=137064

Reviewed by Philippe Normand.

Source/WebCore:

Move the media resource loader to a new class in WebCore/loader
that inherits from a PlatformMediaResourceLoader class defined in
the platform layer. The platform specific behaviour is implemented
using a client also defined in the platform layer, implemented by
every media backend, and used by the WebCore MediaResourceLoader.

  • CMakeLists.txt: Add new files to compilation.
  • WebCore.vcxproj/WebCore.vcxproj: Ditto.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::mediaPlayerCreateResourceLoader):
Create a MediaResourceLoader.
(WebCore::HTMLMediaElement::mediaPlayerCORSMode): Deleted. This is
no longer used.

  • html/HTMLMediaElement.h:
  • loader/MediaResourceLoader.cpp: Added.

(WebCore::MediaResourceLoader::MediaResourceLoader):
(WebCore::MediaResourceLoader::~MediaResourceLoader):
(WebCore::MediaResourceLoader::start): Start a new load for the
given request and load options.
(WebCore::MediaResourceLoader::stop): Stop the load if needed.
(WebCore::MediaResourceLoader::setDefersLoading):
(WebCore::MediaResourceLoader::responseReceived): Handle CORS
access check and notify the client about the response.
(WebCore::MediaResourceLoader::dataReceived): Notify the client.
(WebCore::MediaResourceLoader::notifyFinished): Ditto.
(WebCore::MediaResourceLoader::getOrCreateReadBuffer): Ask the
client to create the read buffer.

  • loader/MediaResourceLoader.h: Added.
  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::createResourceLoader): Call
mediaPlayerCreateResourceLoader() if there's a client.

  • platform/graphics/MediaPlayer.h:

(WebCore::MediaPlayerClient::mediaPlayerCreateResourceLoader):
(WebCore::MediaPlayerClient::mediaPlayerCORSMode): Deleted.

  • platform/graphics/PlatformMediaResourceLoader.h: Added.

(WebCore::PlatformMediaResourceLoaderClient::responseReceived):
(WebCore::PlatformMediaResourceLoaderClient::dataReceived):
(WebCore::PlatformMediaResourceLoaderClient::bufferReceived):
(WebCore::PlatformMediaResourceLoaderClient::accessControlCheckFailed):
(WebCore::PlatformMediaResourceLoaderClient::loadFailed):
(WebCore::PlatformMediaResourceLoaderClient::loadFinished):
(WebCore::PlatformMediaResourceLoaderClient::getOrCreateReadBuffer):
(WebCore::PlatformMediaResourceLoader::~PlatformMediaResourceLoader):
(WebCore::PlatformMediaResourceLoader::stop):
(WebCore::PlatformMediaResourceLoader::setDefersLoading):
(WebCore::PlatformMediaResourceLoader::didPassAccessControlCheck):
(WebCore::PlatformMediaResourceLoader::PlatformMediaResourceLoader):

  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:

(webKitWebSrcStop): Also delete the PlatformMediaResourceLoader.
(webKitWebSrcStart): Create a new resource loader using
MediaPlayer::createResourceLoader() with a new
CachedResourceStreamingClient as client.
(webKitWebSrcNeedDataMainCb): Call setDefersLoading() for the
resource loader if there's one.
(webKitWebSrcEnoughDataMainCb): Ditto.
(webKitSrcPassedCORSAccessCheck): Return didPassAccessControlCheck.
(StreamingClient::handleResponseReceived): Remove the CORS check
result parameter since that's now handled by MediaResourceLoader.
(CachedResourceStreamingClient::CachedResourceStreamingClient):
(CachedResourceStreamingClient::~CachedResourceStreamingClient):
(CachedResourceStreamingClient::getOrCreateReadBuffer):
(CachedResourceStreamingClient::responseReceived): Update didPassAccessControlCheck.
(CachedResourceStreamingClient::dataReceived):
(CachedResourceStreamingClient::accessControlCheckFailed): Log the
error and stop the load.
(CachedResourceStreamingClient::loadFailed): Log the error if it
was not a cancellation.
(CachedResourceStreamingClient::loadFinished):
(ResourceHandleStreamingClient::didReceiveResponse):
(CachedResourceStreamingClient::setDefersLoading): Deleted.
(CachedResourceStreamingClient::notifyFinished): Deleted.

LayoutTests:

Update expected results of http/tests/security/video-cross-origin-accessfailure.html, since
now the error is also logged in the console.

  • http/tests/security/video-cross-origin-accessfailure-expected.txt:
8:09 AM Changeset in webkit [175049] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL][WK2] Minibrowser : Add support for mouse middle button to open links in new window
https://bugs.webkit.org/show_bug.cgi?id=136736

Patch by Rohit Kumar <kumar.rohit@samsung.com> on 2014-10-22
Reviewed by Gyuyoung Kim.

  • MiniBrowser/efl/main.c:

(on_navigation_policy_decision): Check whether it's a link clicked with the middle mouse button and load the request in a new window.
(window_create):

7:59 AM Changeset in webkit [175048] by Alan Bujtas
  • 2 edits in trunk/PerformanceTests

Speed up line parsing for simple line layout (part I)
https://bugs.webkit.org/show_bug.cgi?id=137275

Reviewed by Antti Koivisto.

Extend simple line layout performance test with a few more cases.
Now we've got:
<div center
<div right
<div justify
<div white-space: pre (new)
<div overflow-wrap: break-word (new)
<pre
<pre white-space: pre-wrap
<pre white-space: pre-line (new)
<pre white-space: nowrap (new)
<pre white-space: pre-wrap overflow-wrap: break-word
<div + embedded <span etc.
<div + br

  • Layout/line-layout-simple.html:
7:03 AM Changeset in webkit [175047] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

Unreviewed. Fix GTK+ debug build after r175046.

Remove invalid ASSERT.

  • UIProcess/gtk/InputMethodFilter.cpp:

(WebKit::InputMethodFilter::setCursorRect):

6:00 AM Changeset in webkit [175046] by Carlos Garcia Campos
  • 9 edits
    1 move
    3 adds
    4 deletes in trunk

[GTK] Move GtkInputMethodFilter from Platform to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=137884

Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Remove GtkInputMethodFilter.

  • PlatformGTK.cmake:
  • platform/gtk/GtkInputMethodFilter.cpp: Removed.
  • platform/gtk/GtkInputMethodFilter.h: Removed.

Source/WebKit2:

Merge WebViewBaseInputMethodFilter and GtkInputMethodFilter into a
single class InputMethodFilter. The code is mostly the same, but
instead of having a setWebView method only to get the WebPageProxy,
it has a setPage method that passes the WebPageProxy. The GtkIMContext
client window is set by the WebView when it's realized/unrealized.

  • PlatformGTK.cmake:
  • Shared/NativeWebKeyboardEvent.h:
  • Shared/gtk/NativeWebKeyboardEventGtk.cpp:

(WebKit::NativeWebKeyboardEvent::NativeWebKeyboardEvent):

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseRealize):
(webkitWebViewBaseUnrealize):
(webkit_web_view_base_class_init):
(webkitWebViewBaseCreateWebPage):
(webkitWebViewBaseEnterFullScreen): Deleted.

  • UIProcess/API/gtk/WebViewBaseInputMethodFilter.cpp: Removed.
  • UIProcess/API/gtk/WebViewBaseInputMethodFilter.h: Removed.
  • UIProcess/gtk/InputMethodFilter.cpp: Added.

(WebKit::InputMethodFilter::handleCommitCallback):
(WebKit::InputMethodFilter::handlePreeditStartCallback):
(WebKit::InputMethodFilter::handlePreeditChangedCallback):
(WebKit::InputMethodFilter::handlePreeditEndCallback):
(WebKit::InputMethodFilter::InputMethodFilter):
(WebKit::InputMethodFilter::~InputMethodFilter):
(WebKit::InputMethodFilter::setEnabled):
(WebKit::InputMethodFilter::setCursorRect):
(WebKit::InputMethodFilter::handleKeyboardEvent):
(WebKit::InputMethodFilter::handleKeyboardEventWithCompositionResults):
(WebKit::InputMethodFilter::filterKeyEvent):
(WebKit::InputMethodFilter::confirmComposition):
(WebKit::InputMethodFilter::updatePreedit):
(WebKit::InputMethodFilter::notifyFocusedIn):
(WebKit::InputMethodFilter::notifyFocusedOut):
(WebKit::InputMethodFilter::notifyMouseButtonPress):
(WebKit::InputMethodFilter::confirmCurrentComposition):
(WebKit::InputMethodFilter::cancelContextComposition):
(WebKit::InputMethodFilter::sendCompositionAndPreeditWithFakeKeyEvents):
(WebKit::InputMethodFilter::handleCommit):
(WebKit::InputMethodFilter::handlePreeditStart):
(WebKit::InputMethodFilter::handlePreeditChanged):
(WebKit::InputMethodFilter::handlePreeditEnd):
(WebKit::InputMethodFilter::logHandleKeyboardEventForTesting):
(WebKit::InputMethodFilter::logHandleKeyboardEventWithCompositionResultsForTesting):
(WebKit::InputMethodFilter::logConfirmCompositionForTesting):
(WebKit::InputMethodFilter::logSetPreeditForTesting):

  • UIProcess/gtk/InputMethodFilter.h: Added.

(WebKit::InputMethodFilter::context):
(WebKit::InputMethodFilter::setPage):
(WebKit::InputMethodFilter::setTestingMode):
(WebKit::InputMethodFilter::events):

Tools:

Move InputMethodFilter test from WebCore tests to WebKit2 tests
and adapt it to use the new InputMethodFilter WebKit class. Instead
of having virtual methods just for testing, it has a testing mode
that logs the events.

  • TestWebKitAPI/PlatformGTK.cmake:
  • TestWebKitAPI/Tests/WebKit2/gtk/InputMethodFilter.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/gtk/InputMethodFilter.cpp.

(TestWebKitAPI::TestInputMethodFilter::TestInputMethodFilter):
(TestWebKitAPI::TestInputMethodFilter::~TestInputMethodFilter):
(TestWebKitAPI::TestInputMethodFilter::sendKeyEventToFilter):
(TestWebKitAPI::TestInputMethodFilter::sendPressAndReleaseKeyEventPairToFilter):
(TestWebKitAPI::TEST):
(TestWebKitAPI::temporaryGetPreeditStringOverride):
(TestWebKitAPI::temporaryResetOverride):
(TestWebKitAPI::verifyCanceledComposition):

5:27 AM Changeset in webkit [175045] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.4.7

WebKitGTK+ 2.4.7

5:22 AM Changeset in webkit [175044] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.4

Unreviewed. Update NEWS and Versions.m4 for 2.4.7 release.

.:

  • Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

  • NEWS: Added release notes for 2.4.7.
4:16 AM Changeset in webkit [175043] by commit-queue@webkit.org
  • 4 edits
    4 adds in trunk

Match spec for font-weight: bolder|lighter
https://bugs.webkit.org/show_bug.cgi?id=137919

Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-10-22
Reviewed by Andreas Kling.

This patch is a merge of Blink's
Source/WebCore:

https://chromiumcodereview.appspot.com/15994009

Currently, bolder and lighter change font-weight in a non-compliant way.
The spec (http://www.w3.org/TR/css3-fonts/#bolderlighter) defines
exactly what the computed values should be given the inherited weight values,
so we should match those.

The removed FIXME's for selecting the next lightest/heaviest weight from
the used font family seems to refer to behaviour from
CSS1 (http://www.w3.org/TR/CSS1/#font-weight), while this is replaced
with a simpler procedure for resolving bolder and lighter in font weights
in CSS2 (http://www.w3.org/TR/CSS2/fonts.html#propdef-font-weight) and CSS3 (link above).

and https://codereview.chromium.org/137813004

According to http://dev.w3.org/csswg/css-fonts/#font-weight-prop, the computed
weight of 'lighter' and 'bolder' are based on the inherited 'font-weight', so set
that inherited weight before calculating 'lighter' and 'bolder'.

Tests: css3/font-weight-multiple-selectors.html

css3/font-weight.html

  • css/DeprecatedStyleBuilder.cpp:

(WebCore::ApplyPropertyFontWeight::applyValue):

  • platform/graphics/FontDescription.cpp:

(WebCore::FontDescription::lighterWeight):
(WebCore::FontDescription::bolderWeight):

LayoutTests:

https://chromiumcodereview.appspot.com/15994009 and
https://codereview.chromium.org/137813004

  • css3/font-weight-expected.txt: Added.
  • css3/font-weight-multiple-selectors-expected.txt: Added.
  • css3/font-weight-multiple-selectors.html: Added.
  • css3/font-weight.html: Added.
3:32 AM Changeset in webkit [175042] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.4/Source/WebKit2

Merge r174927 - [SOUP] Disable SSLv3
https://bugs.webkit.org/show_bug.cgi?id=137859

Patch by Michael Catanzaro <Michael Catanzaro> on 2014-10-21
Reviewed by Carlos Garcia Campos.

Set G_TLS_GNUTLS_PRIORITY if unset.

  • NetworkProcess/EntryPoint/unix/NetworkProcessMain.cpp:

(main):

  • WebProcess/EntryPoint/unix/WebProcessMain.cpp:

(main):

3:22 AM Changeset in webkit [175041] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebKit2

Merge r174008 - [GTK] Don't include full path names in WebKitEnumTypes.h
https://bugs.webkit.org/show_bug.cgi?id=137148

Reviewed by Carlos Garcia Campos.

Replace @filename@ with @basename@ in the template, since we don't
want to include the full path name in the generated header.

  • UIProcess/API/gtk/WebKitEnumTypes.h.template:
3:20 AM Changeset in webkit [175040] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.4

Merge r174394 - [SOUP] TLS errors should take precedence over HTTP authentication
https://bugs.webkit.org/show_bug.cgi?id=137300

Reviewed by Sergio Villar Senin.

Source/WebCore:

Handle TLS errors in got-headers callback to make sure it happens
before starting the authentication process.

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCore::handleUnignoredTLSErrors): Refactored to receive the
soup message.
(WebCore::gotHeadersCallback): Return early and cancel the request in case of TLS errors.
(WebCore::sendRequestCallback): Do not handle TLS errors here, the request should have already been
cancelled at this point in case of TLS errors.

Tools:

Add a test case to check that authenticate signal is not emitted
in case of TLS errors, and the load fails instead.

  • TestWebKitAPI/Tests/WebKit2Gtk/TestSSL.cpp:

(webViewAuthenticationCallback):
(testTLSErrorsHTTPAuth):
(httpsServerCallback):
(beforeAll):

3:17 AM Changeset in webkit [175039] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.4/Source/WebKit2

Merge r174507 - [X11] Plugin process crashes in NetscapePlugin::platformPostInitialize()
https://bugs.webkit.org/show_bug.cgi?id=137426

Reviewed by Darin Adler.

For some reason flash crashes when NPP_GetValue is called with
NPPVpluginCancelSrcStream, but only in windowed mode. Not calling
NPP_GetValue and unconditionally loading the source URL in the
browser fixes the crash and plugins work normally. We can handle
this particular case with a new quirk.

  • Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:

(WebKit::NetscapePluginModule::determineQuirks): Add
DoNotCancelSrcStreamInWindowedMode quirk if it's flash plugin.

  • Shared/Plugins/PluginQuirks.h: Add

DoNotCancelSrcStreamInWindowedMode quirk.

  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::NetscapePlugin::shouldLoadSrcURL): Return early if plugin
is windowed and DoNotCancelSrcStreamInWindowedMode quirk is present.

3:12 AM Changeset in webkit [175038] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.4/Source/WebKit2

Merge r174639 - [SOUP] [WK2] WebProcess and NetworkProcess initialization clears cache contents
https://bugs.webkit.org/show_bug.cgi?id=137489

Reviewed by Carlos Garcia Campos.

Temporarily set the SoupCache's maximum size to a huge value
before calling soup_cache_load() so that the cache is not shrinked
to the default value.

  • NetworkProcess/soup/NetworkProcessSoup.cpp:

(WebKit::NetworkProcess::platformInitializeNetworkProcess):

  • WebProcess/soup/WebProcessSoup.cpp:

(WebKit::WebProcess::platformInitializeWebProcess):

3:11 AM Changeset in webkit [175037] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK]: Fix unused parameter build warnings in WebCore/platform module
https://bugs.webkit.org/show_bug.cgi?id=137921

Patch by Rohit Kumar <kumar.rohit@samsung.com> on 2014-10-22
Reviewed by Carlos Garcia Campos.

  • platform/ScrollAnimatorNone.cpp:

(WebCore::ScrollAnimatorNone::PerAxisData::PerAxisData):
(WebCore::ScrollAnimatorNone::animationTimerFired):

3:10 AM Changeset in webkit [175036] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.4/Tools

Merge r174926 - [GTK] Test TestWebKitAPI/WebKit2Gtk/TestInspectorServer fails
https://bugs.webkit.org/show_bug.cgi?id=132044

Reviewed by Brian Burg.

Tools:

  • TestWebKitAPI/Tests/WebKit2Gtk/TestInspectorServer.cpp:

(openRemoteDebuggingSession): Remove trailing slash when
concatenating base inspector URL with the page, because the
inspector returns the relative paths with a leading slash.

3:06 AM Changeset in webkit [175035] by Carlos Garcia Campos
  • 10 edits in releases/WebKitGTK/webkit-2.4/Source

Merge r174328 - [GTK] Fix build when DRAG_SUPPORT is disabled
https://bugs.webkit.org/show_bug.cgi?id=137361

Patch by Lorenzo Tilve <ltilve@igalia.com> on 2014-10-05
Reviewed by Carlos Garcia Campos.

Flag out unbuildable code without DRAG_SUPPORT.

Source/WebCore:

  • platform/gtk/GtkDragAndDropHelper.cpp:
  • platform/gtk/GtkDragAndDropHelper.h:

Source/WebKit2:

  • Shared/gtk/ArgumentCodersGtk.cpp:
  • Shared/gtk/ArgumentCodersGtk.h:
  • UIProcess/API/gtk/PageClientImpl.cpp:
  • UIProcess/API/gtk/PageClientImpl.h:
  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseConstructed):

  • UIProcess/PageClient.h:
3:01 AM Changeset in webkit [175034] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebKit2

Merge r174861 - [GTK] Improve documentation of webkit_web_view_get_tls_info()
https://bugs.webkit.org/show_bug.cgi?id=137852

Patch by Michael Catanzaro <Michael Catanzaro> on 2014-10-18
Reviewed by Martin Robinson.

  • UIProcess/API/gtk/WebKitWebView.cpp:
2:59 AM Changeset in webkit [175033] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore

Merge r174929 - [GTK] Several labels are white instead of black
https://bugs.webkit.org/show_bug.cgi?id=137803

Reviewed by Martin Robinson.

Recent GTK+ versions require to explicitly set the state before
getting a color.

  • rendering/RenderThemeGtk.cpp:

(WebCore::styleColor): Helper function to get a color from a
GtkStylecontext that explicitly sets the state before getting the color.
(WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor): Use styleColor().
(WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor): Ditto.
(WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor): Ditto.
(WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor): Ditto.
(WebCore::RenderThemeGtk::platformActiveListBoxSelectionBackgroundColor): Ditto.
(WebCore::RenderThemeGtk::platformInactiveListBoxSelectionBackgroundColor): Ditto.
(WebCore::RenderThemeGtk::platformActiveListBoxSelectionForegroundColor): Ditto.
(WebCore::RenderThemeGtk::platformInactiveListBoxSelectionForegroundColor): Ditto.
(WebCore::RenderThemeGtk::systemColor): Ditto.

2:56 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
2:50 AM Changeset in webkit [175032] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebKit2

Merge r172957 - [GTK] Translations are not initialized in the UI process
https://bugs.webkit.org/show_bug.cgi?id=136249

Reviewed by Philippe Normand.

This is breaking things like webkitContextMenuActionGetForContextMenuItem()
for non English locales in the cases where we use the action title to guess the
action, because the action title we get from the web process is translated while
the one in the UI process is in English.

  • UIProcess/API/gtk/WebKitWebContext.cpp:

(createDefaultWebContext): Initialize gettext right before
creating the default web context.

2:48 AM Changeset in webkit [175031] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore

Merge r174502 - [GTK] Netscape plugin API symbol used outside feature guards
https://bugs.webkit.org/show_bug.cgi?id=137385

Patch by Philip Chimento <philip.chimento@gmail.com> on 2014-10-09
Reviewed by Philippe Normand.

  • plugins/PluginPackage.cpp:

(WebCore::PluginPackage::unload): Add guards for Netscape Plugin
API around symbol, so that it compiles OK when the API is not
available.

2:45 AM Changeset in webkit [175030] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebKit2

Merge r174104 - [GTK] The remote web inspector shows the HTML content as plain text
https://bugs.webkit.org/show_bug.cgi?id=137250

Reviewed by Gustavo Noronha Silva.

Use GResource API directly to get the resource data, instead of
using the GFile API, and use g_content_type_guess() to get the
MIME Type.

  • UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:

(WebKit::WebInspectorServer::platformResourceForPath):

2:39 AM Changeset in webkit [175029] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4

[GTK][Stable] webkitgtk-2.4.6: fails to build with --disable-video
https://bugs.webkit.org/show_bug.cgi?id=137445

Patch by Michael Weber <xmw@gentoo.org> on 2014-10-22
Reviewed by Carlos Garcia Campos.

  • Source/autotools/SetupWebKitFeatures.m4:
2:22 AM Changeset in webkit [175028] by commit-queue@webkit.org
  • 15 edits
    8 adds in trunk

Add relList to the anchor, area and link elements
https://bugs.webkit.org/show_bug.cgi?id=137860

Patch by Dhi Aurrahman <diorahman@rockybars.com> on 2014-10-22
Reviewed by Darin Adler and Chris Dumez.

Source/WebCore:

Add relList to reflect the rel content attribute for anchor[1],
area[2] and link[3] elements.

[1] https://html.spec.whatwg.org/multipage/semantics.html#dom-a-rellist
[2] https://html.spec.whatwg.org/multipage/embedded-content.html#dom-area-rellist
[3] https://html.spec.whatwg.org/multipage/semantics.html#dom-link-rellist

Tests: fast/dom/rel-list-gc.html

fast/dom/rel-list.html
perf/rel-list-remove.html

  • CMakeLists.txt:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/SpaceSplitString.cpp:

(WebCore::SpaceSplitString::set):

  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::parseAttribute):
(WebCore::HTMLAnchorElement::relList):
(WebCore::HTMLAnchorElement::setRel): Deleted.

  • html/HTMLAnchorElement.h:
  • html/HTMLAnchorElement.idl:
  • html/HTMLAreaElement.idl:
  • html/HTMLLinkElement.cpp:

(WebCore::HTMLLinkElement::parseAttribute):
(WebCore::HTMLLinkElement::relList):

  • html/HTMLLinkElement.h:
  • html/HTMLLinkElement.idl:
  • html/RelList.cpp: Added.

(WebCore::RelList::RelList):
(WebCore::RelList::ref):
(WebCore::RelList::deref):
(WebCore::RelList::length):
(WebCore::RelList::item):
(WebCore::RelList::element):
(WebCore::RelList::updateRelAttribute):
(WebCore::RelList::containsInternal):
(WebCore::RelList::value):
(WebCore::RelList::setValue):

  • html/RelList.h: Added.

LayoutTests:

Tests relList aspects for anchor, area and list elements.
Update dom static property for-in iteration test result to include relList.

  • fast/dom/rel-list-expected.txt: Added.
  • fast/dom/rel-list-gc-expected.txt: Added.
  • fast/dom/rel-list-gc.html: Added.
  • fast/dom/rel-list.html: Added.
  • js/dom/dom-static-property-for-in-iteration-expected.txt: Updated results.
  • perf/rel-list-remove-expected.txt: Added.
  • perf/rel-list-remove.html: Added.
12:29 AM Changeset in webkit [175027] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.6.2

WebKitGTK+ 2.6.2

12:06 AM Changeset in webkit [175026] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.6

Unreviewed. Update OptionsGTK.cmake and NEWS for 2.6.2 release.

.:

  • Source/cmake/OptionsGTK.cmake: Bump version numbers.

Source/WebKit2:

  • gtk/NEWS: Add release notes for 2.6.2.

Oct 21, 2014:

11:50 PM Changeset in webkit [175025] by bshafiei@apple.com
  • 5 edits in trunk/Source

Versioning.

11:47 PM Changeset in webkit [175024] by bshafiei@apple.com
  • 1 copy in tags/Safari-601.1.5

New tag.

11:19 PM Changeset in webkit [175023] by bshafiei@apple.com
  • 5 edits in branches/safari-600.1.25-branch/Source

Versioning.

11:13 PM Changeset in webkit [175022] by bshafiei@apple.com
  • 1 copy in branches/safari-600.1.25-branch

New Branch.

10:07 PM Changeset in webkit [175021] by ryuan.choi@gmail.com
  • 2 edits in trunk

[EFL] Remove unnecessary ENABLE_3D_RENDERING definition from OptionsEfl.cmake
https://bugs.webkit.org/show_bug.cgi?id=137946

Reviewed by Gyuyoung Kim.

ENABLE_3D_RENDERING is already enabled as WEBKIT_OPTION_DEFAULT_PORT_VALUE since r135813.

  • Source/cmake/OptionsEfl.cmake:
9:47 PM Changeset in webkit [175020] by Brent Fulgham
  • 20 edits
    1 delete in trunk/LayoutTests

[Win] More rebaselines.

  • platform/win/css1/box_properties/acid_test-expected.txt:
  • platform/win/editing/selection/3690719-expected.txt:
  • platform/win/editing/selection/move-left-right-expected.txt:
  • platform/win/fast/css/continuationCrash-expected.txt:
  • platform/win/fast/css/fieldset-display-row-expected.txt:
  • platform/win/fast/css/margin-top-bottom-dynamic-expected.txt:
  • platform/win/fast/dom/HTMLTextAreaElement/reset-textarea-expected.txt:
  • platform/win/fast/forms/file/file-input-direction-expected.txt:
  • platform/win/fast/forms/file/file-input-disabled-expected.txt:
  • platform/win/fast/forms/file/input-file-re-render-expected.txt:
  • platform/win/fast/forms/formmove-expected.txt:
  • platform/win/fast/forms/formmove2-expected.txt:
  • platform/win/fast/forms/formmove3-expected.txt:
  • platform/win/fast/forms/input-appearance-height-expected.txt:
  • platform/win/fast/forms/input-button-sizes-expected.txt:
  • platform/win/fast/forms/input-step-as-double-expected.txt: Removed.
  • platform/win/fast/forms/input-text-drag-down-expected.txt:
  • platform/win/fast/forms/input-value-expected.txt:
  • platform/win/fast/forms/listbox-bidi-align-expected.txt:
  • platform/win/fast/forms/targeted-frame-submission-expected.txt:
  • platform/win/fast/forms/text-control-intrinsic-widths-expected.txt:
9:33 PM Changeset in webkit [175019] by aestes@apple.com
  • 2 edits in trunk/Source/WebCore

One more iOS build fix after r175013.

  • platform/graphics/ios/FontCacheIOS.mm:

(WebCore::FontCache::createFontPlatformData):

8:28 PM Changeset in webkit [175018] by benjamin@webkit.org
  • 5 edits
    16 adds in trunk

CSS Rule features are ignored for nested CSS Selector lists
https://bugs.webkit.org/show_bug.cgi?id=137908

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

Source/WebCore:

When Rule feature sets were collected, any selector list nested inside an other
selector list was ignored when collecting properties of the CSS Selector.

As a result, style was not invalidated properly when any property listed in
the nested selectors.

This patch fixes the issue by make RuleFeatureSet::collectFeaturesFromSelector()
recursive, evaluating every chain of every selector lists.

Tests: fast/css/class-style-invalidation-optimization.html

fast/css/direct-adjacent-style-sharing-1.html
fast/css/direct-adjacent-style-sharing-2.html
fast/css/direct-adjacent-style-sharing-3.html
fast/css/id-style-invalidation-optimization.html
fast/selectors/class-style-update-with-not.html
fast/selectors/class-style-update-with-nth-child-of.html
fast/selectors/class-style-update.html

  • css/RuleFeature.cpp:

(WebCore::recursivelyCollectFeaturesFromSelector):
(WebCore::RuleFeatureSet::collectFeaturesFromSelector):

  • css/RuleFeature.h:
  • css/RuleSet.cpp:

(WebCore::collectFeaturesFromRuleData):

LayoutTests:

  • fast/selectors/class-style-update-with-not-expected.txt: Added.
  • fast/selectors/class-style-update-with-not.html: Added.

Parts of this test fail due to a bug with specificity. This will be addressed
separately.

  • fast/css/class-style-invalidation-optimization-expected.txt: Added.
  • fast/css/class-style-invalidation-optimization.html: Added.
  • fast/css/direct-adjacent-style-sharing-1-expected.html: Added.
  • fast/css/direct-adjacent-style-sharing-1.html: Added.
  • fast/css/direct-adjacent-style-sharing-2-expected.html: Added.
  • fast/css/direct-adjacent-style-sharing-2.html: Added.
  • fast/css/direct-adjacent-style-sharing-3-expected.html: Added.
  • fast/css/direct-adjacent-style-sharing-3.html: Added.
  • fast/css/id-style-invalidation-optimization-expected.txt: Added.
  • fast/css/id-style-invalidation-optimization.html: Added.
  • fast/selectors/class-style-update-expected.txt: Added.
  • fast/selectors/class-style-update-with-nth-child-of-expected.txt: Added.
  • fast/selectors/class-style-update-with-nth-child-of.html: Added.
  • fast/selectors/class-style-update.html: Added.
7:56 PM Changeset in webkit [175017] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Try to fix the iOS build after r175013.

  • platform/graphics/ios/FontCacheIOS.mm:

(WebCore::FontCache::createFontPlatformData):

7:53 PM Changeset in webkit [175016] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Quick Look preview bubble has unnecessary controls
https://bugs.webkit.org/show_bug.cgi?id=137940
<rdar://problem/18731860>

Reviewed by Simon Fraser.

  • UIProcess/API/mac/WKView.mm:

(-[WKView _quickLookURLFromActionMenu:]):
Temporarily use more SPI to allow us to hide the preview bubble's controls.

7:01 PM Changeset in webkit [175015] by dburkart@apple.com
  • 2 edits in branches/safari-600.2-branch/Source/WebKit2

Merge r174708

6:58 PM Changeset in webkit [175014] by dburkart@apple.com
  • 4 edits in branches/safari-600.2-branch/Source/WebCore

Merged r174703

6:53 PM Changeset in webkit [175013] by gyuyoung.kim@samsung.com
  • 7 edits in trunk/Source/WebCore

Use std::unique_ptr | std::make_unique in FontCacheFoo
https://bugs.webkit.org/show_bug.cgi?id=137905

Reviewed by Darin Adler.

Clean up PassOwnPtr|OwnPtr using std::unique_ptr|std::make_unique.

No new tests, no behavior changes.

  • platform/graphics/FontCache.cpp:

(WebCore::FontCache::getCachedFontPlatformData):

  • platform/graphics/FontCache.h:
  • platform/graphics/freetype/FontCacheFreeType.cpp:

(WebCore::FontCache::createFontPlatformData):

  • platform/graphics/ios/FontCacheIOS.mm:

(WebCore::FontCache::createFontPlatformData):

  • platform/graphics/mac/FontCacheMac.mm:

(WebCore::FontCache::createFontPlatformData):

  • platform/graphics/win/FontCacheWin.cpp:

(WebCore::FontCache::createFontPlatformData):

6:50 PM Changeset in webkit [175012] by dburkart@apple.com
  • 5 edits in branches/safari-600.2-branch/Source/WebCore

Merged r174414

6:47 PM Changeset in webkit [175011] by dburkart@apple.com
  • 2 edits in branches/safari-600.2-branch/Source/WebKit2

Merge r173888

6:44 PM Changeset in webkit [175010] by dburkart@apple.com
  • 2 edits in branches/safari-600.2-branch/Source/WebCore

Merge r173848

6:40 PM Changeset in webkit [175009] by dburkart@apple.com
  • 3 edits
    2 copies in branches/safari-600.2-branch

Merge r173246

6:35 PM Changeset in webkit [175008] by dburkart@apple.com
  • 2 edits in branches/safari-600.2-branch/Source/JavaScriptCore

Merged r173238

6:17 PM Changeset in webkit [175007] by dburkart@apple.com
  • 2 edits in branches/safari-600.2-branch/Source/WebKit2

Merge r172968

5:53 PM Changeset in webkit [175006] by rniwa@webkit.org
  • 13 edits
    3 adds in trunk/Websites/perf.webkit.org

Perf dashboard should provide a way to associate bugs with a test run
https://bugs.webkit.org/show_bug.cgi?id=137857

Reviewed by Andreas Kling.

Added a "privileged" API, /privileged-api/associate-bug, to associate a bug with a test run.
/privileged-api/ is to be protected by an authentication mechanism such as DigestAuth over https by
the Apache configuration.

The Cross Site Request (CSRF) Forgery prevention for privileged APIs work as follows. When a user is
about to make a privileged API access, the front end code obtains a CSRF token generated by POST'ing
to privileged-api/generate-csrf-token; the page sets a randomly generated salt and an expiration time
via the cookie and returns a token computed from those two values as well as the remote username.

The font end code then POST's the request along with the returned token. The server side code verifies
that the specified token can be generated from the salt and the expiration time set in the cookie, and
the token hasn't expired.

  • init-database.sql: Added bug_url to bug_trackers table, and added bugs table. Each bug tracker will

have zero or exactly one bug associated with a test run.

  • public/admin/bug-trackers.php: Added the support for editing bug_url.
  • public/api/runs.php:

(fetch_runs_for_config): Modified the query to fetch bugs associated with test_runs.
(parse_bugs_array): Added. Parses the aggregated bugs and creates a dictionary that maps a tracker id to
an associated bug if there is one.
(format_run): Calls parse_bugs_array.

  • public/include/json-header.php: Added helper functions to deal for CSRF prevention.

(ensure_privileged_api_data): Added. Dies immediately if the request's method is not POST or doesn't
have a valid JSON payload.
(ensure_privileged_api_data_and_token): Ditto. Also checks that the CSRF prevention token is valid.
(compute_token): Computes a CSRF token using the REMOTE_USER (e.g. set via BasicAuth), the salt, and
the expiration time stored in the cookie.
(verify_token): Returns true iff the specified token matches what compute_token returns from the cookie.

  • public/include/manifest.php:

(ManifestGenerator::bug_trackers): Include bug_url as bugUrl in the manifest. Also use tracker_id instead
of tracker_name as the key in the manifest. This requires changes to both v1 and v2 front end.

  • public/index.html:

(Chart..showTooltipWithResults): Updated for the manifest format changed mentioned above.

  • public/privileged-api/associate-bug.php: Added.

(main): Added. Associates or dissociates a bug with a test run inside a transaction. It prevent a CSRF
attack via ensure_privileged_api_data_and_token, which calls verify_token.

  • public/privileged-api/generate-csrf-token.php: Added. Generates a CSRF token valid for one hour.
  • public/v2/app.css:

(.disabled .icon-button:hover g): Used by the "bugs" icon when a range of points or no points are
selected in a chart.

  • public/v2/app.js:

(App.PaneController.actions.toggleBugsPane): Added. Toggles the visibility of the bugs pane when exactly
one point is selected in the chart. Also hides the search pane when making the bugs pane visible since
they would overlap on each other if both of them are shown.
(App.PaneController.actions.associateBug): Makes a privileged API request to associate the specified bug
with the currently selected point (test run). Updates the bug information in "details" and colors of dots
in the charts to reflect new states. Because chart data objects aren't real Ember objects for performance
reasons, we have to use a dirty hack of modifying a dummy counter bugsChangeCount.
(App.PaneController.actions.toggleSearchPane): Renamed from toggleSearch. Also hides the bugs pane when
showing the search pane.
(App.PaneController.actions.rangeChanged): Takes all selected points as the second argument instead of
taking start and end points as the second and the third arguments so that _showDetails can enumerate all
bugs in the selected range.

(App.PaneController._detailsChanged): Added. Hide the bugs pane whenever a new point is selected.
Also update singlySelectedPoint, which is used by toggleBugsPane and associateBug.
(App.PaneController._currentItemChanged): Updated for the _showDetails change.
(App.PaneController._showDetails): Takes an array of selected points in place of old arguments.
Simplified the code to compute the revision information. Calls _updateBugs to format the associated bugs.
(App.PaneController._updateBugs): Sets details.bugTrackers to a dictionary that maps a bug tracker id to
a bug tracker proxy with an array of (bugNumber, bugUrl) pairs and also editedBugNumber, which is used by
the bugs pane to associate or dissociate a bug number, if exactly one point is selected.

(App.InteractiveChartComponent._updateDotsWithBugs): Added. Sets hasBugs class on dots as needed.
(App.InteractiveChartComponent._setCurrentSelection): Finds and passes all points in the selected range
to selectionChanged action instead of just finding the first and the last points.

  • public/v2/chart-pane.css: Updated the style.
  • public/v2/data.js:

(PrivilegedAPI): Added. A wrapper for privileged APIs' CSRF tokens.
(PrivilegedAPI.sendRequest): Makes a privileged API call. Fetches a new CSRF token if needed.
(PrivilegedAPI._generateTokenInServerIfNeeded): Makes a request to privileged-api/generate-csrf-token if
we haven't already obtained a CSRF token or if the token has already been expired.
(PrivilegedAPI._post): Makes a single POST request to /privileged-api/* with a JSON payload.

(Measurement.prototype.bugs): Added.
(Measurement.prototype.hasBugs): Returns true iff bugs has more than one bug number.
(Measurement.prototype.associateBug): Associates a bug with a test run via privileged-api/associate-bug.

  • public/v2/index.html: Added the bugs pane. Also added a list of bugs associated with the current run in

the details.

  • public/v2/manifest.js:

(App.BugTracker.bugUrl):
(App.BugTracker.newBugUrl): Added.
(App.BugTracker.repositories): Added. This was a missing back reference to repositories.
(App.MetricSerializer.normalizePayload): Now parses/loads the list of bug trackers from the manifest.
(App.Manifest.repositoriesWithReportedCommits): Now initialized to an empty array instead of null.
(App.Manifest.bugTrackers): Added.
(App.Manifest._fetchedManifest): Sets App.Manifest.bugTrackers. Also sorts the list of repositories by
their respective ids to make the ordering stable.

5:52 PM Changeset in webkit [175005] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Remove erroneous canUseJIT() in the intrinsics version of JITThunks::hostFunctionStub().
<https://webkit.org/b/137937>

Reviewed by Michael Saboff.

This version of JITThunks::hostFunctionStub() can only be called from the intrinsics
version of VM::getHostFunction() which asserts canUseJIT(). Hence, we can eliminate
the canUseJIT() check in JITThunks::hostFunctionStub(). We don't handle the
!canUseJIT() case properly there anyway.

  • jit/JITThunks.cpp:

(JSC::JITThunks::hostFunctionStub):

5:26 PM Changeset in webkit [175004] by Brent Fulgham
  • 3 edits in trunk/LayoutTests

[Win] Unreviewed test updates after switching to Windows theme for tests.
https://bugs.webkit.org/show_bug.cgi?id=137932

  • platform/win/css1/box_properties/acid_test-expected.txt:
  • platform/win/editing/inserting/4960120-1-expected.txt:
5:17 PM Changeset in webkit [175003] by adachan@apple.com
  • 2 edits in trunk/Source/WebCore

Calling WebCore::Page::setMediaVolume(0) does not mute videos as expected.
https://bugs.webkit.org/show_bug.cgi?id=137305

Reviewed by Darin Adler.

This was broken in http://trac.webkit.org/changeset/154970. To fix this (but not break
GStreamer), remove the "if (m_volumeInitialized)" check before updating the MediaPlayer's
volume to the value multiplied with the Page's mediaVolume. This should not affect GStreamer's
behavior because MediaPlayerPrivateGStreamerBase::setStreamVolumeElement does nothing unless
m_volumeInitialized is true.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::updateVolume):

4:38 PM Changeset in webkit [175002] by jeffm@apple.com
  • 3 edits in trunk/Source/WebKit2

Remove const from WKURLRequestRef parameter to WKContextDownloadURLRequest()
https://bugs.webkit.org/show_bug.cgi?id=137928

Reviewed by Darin Adler.

  • UIProcess/API/C/WKContext.cpp:

(WKContextDownloadURLRequest):

  • UIProcess/API/C/WKContext.h:
4:32 PM Changeset in webkit [175001] by ap@apple.com
  • 2 edits in trunk/Tools

build.webkit.org/dashboard: Cannot click on green tester bubbles
https://bugs.webkit.org/show_bug.cgi?id=137909

Reviewed by Darin Adler.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:

(BuildbotTesterQueueView.prototype.update.appendBuilderQueueStatus):

4:06 PM Changeset in webkit [175000] by jer.noble@apple.com
  • 8 edits in trunk/Source/WebCore

[EME][Mac] Update to match new AVStreamSession API and requirements.
https://bugs.webkit.org/show_bug.cgi?id=137923

Reviewed by Eric Carlson.

The session identifier has moved from AVStreamDataParser to -[AVStreamSession contentProtectionSessionIdentifier]
and the property is no longer KVObservable. A new notification key has been added in place of KVO.

Additionally, the requirements for using AVStreamDataParser with AVStreamSession have changed. It is now
required that AVStreamDataParsers be added to an AVStreamSession before the
-streamSession:didProvideContentKeyRequestInitializationData:forTrackID delegate method is called. A
-streamParserWillProvideContentKeyRequestInitializationData:forTrackID delegate has been added, and
an AVStreamSession must be created and the AVStreamDataParser added to it during the scope of that delegate
method.

To facilitate this, the MediaPlayerPrivateMediaSourceAVFObjC object will lazily create and own a AVStreamSession
object when requested. The SourceBufferPrivateAVFObjC object will listen for the -willProvide delegate call
and will add its AVStreamDataParser to that AVStreamSession when called.

The CDMSessionMediaSourceAVFObjC object is no longer responsible for creating the AVStreamSession, and because
the session identifier has moved from many AVStreamDataParsers to a single AVStreamSession, the
CDMSessionMediaSourceAVFObjCObserver class can become much simpler, as it only has to observe a single object.

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

(-[CDMSessionMediaSourceAVFObjCObserver dealloc]): Deleted.
(-[CDMSessionMediaSourceAVFObjCObserver beginObserving:]): Deleted.
(-[CDMSessionMediaSourceAVFObjCObserver stopObserving:]): Deleted.
(-[CDMSessionMediaSourceAVFObjCObserver invalidate]): Deleted.
(-[CDMSessionMediaSourceAVFObjCObserver observeValueForKeyPath:ofObject:change:context:]): Deleted.
(-[CDMSessionMediaSourceAVFObjCObserver contentProtectionSessionIdentifierChanged:]): Added.
(WebCore::CDMSessionMediaSourceAVFObjC::~CDMSessionMediaSourceAVFObjC): Call setStreamSession(nullptr).
(WebCore::CDMSessionMediaSourceAVFObjC::releaseKeys): The sessionId is now a value in the dictionary, not the key.
(WebCore::CDMSessionMediaSourceAVFObjC::update): No longer create an AVStreamSession.
(WebCore::CDMSessionMediaSourceAVFObjC::setStreamSession): Add and remove observers as appropriate.
(WebCore::CDMSessionMediaSourceAVFObjC::addSourceBuffer): No longer add or remove parsers from AVStreamSessions.
(WebCore::CDMSessionMediaSourceAVFObjC::removeSourceBuffer): Ditto.

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

(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::hasStreamSession): Simple getter.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::streamSession): Lazy initializing getter.
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setCDMSession): Call setStreamSession().

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

(-[WebAVStreamDataParserListener streamParserWillProvideContentKeyRequestInitializationData:forTrackID:]): Synchronously pass to SourceBufferPrivateAVFObjC.
(WebCore::SourceBufferPrivateAVFObjC::willProvideContentKeyRequestInitializationDataForTrackID): Add the parser to an AVStreamSession.
(WebCore::SourceBufferPrivateAVFObjC::didProvideContentKeyRequestInitializationDataForTrackID): Check the trackId.

  • platform/mac/SoftLinking.h:
2:37 PM Changeset in webkit [174999] by ljaehun.lim@samsung.com
  • 5 edits in trunk

'true' isn't a valid value for justify-self
https://bugs.webkit.org/show_bug.cgi?id=137913

Reviewed by Andreas Kling.

Merged from Blink (patch by dstockwell):
<https://src.chromium.org/viewvc/blink?view=rev&revision=174638>

CSS Box Alignment Module Level 3:
http://dev.w3.org/csswg/css-align/#justify-self-property

Source/WebCore:

No new tests, modify existing test case.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseJustifySelf):

LayoutTests:

Add a bad case where "justify-self: true"

  • fast/css/parse-justify-self-expected.txt:
  • fast/css/parse-justify-self.html:
2:13 PM Changeset in webkit [174998] by Brent Fulgham
  • 2 edits in trunk/Tools

[Win] Run DumpRenderTree using native controls, not SafariTheme.dll.
https://bugs.webkit.org/show_bug.cgi?id=137932

Reviewed by Simon Fraser.

This is the first step in moving over to native Windows rendering for our layout tests.
Once this change lands, approximately 300 tests will start failing on Windows. I will
rebaseline these changes against our test hardware and update this bug with the
commits related to that work.

  • DumpRenderTree/win/DumpRenderTree.cpp:

(resetDefaultsToConsistentValues): Call 'setShouldPaintNativeControls(TRUE)' so that
we use native Windows drawing style.

1:43 PM Changeset in webkit [174997] by msaboff@apple.com
  • 4 edits in trunk/Source

Add operator==(PropertyName, const char*)
https://bugs.webkit.org/show_bug.cgi?id=137925

Reviewed by Mark Lam.

Source/JavaScriptCore:

  • runtime/PropertyName.h:

(JSC::operator==): Added to simplify comparison with string literals.

Source/WebCore:

Use new == operator to compare a PropertyName with a string literal.

  • bindings/js/JSHTMLDocumentCustom.cpp:

(WebCore::JSHTMLDocument::getOwnPropertySlot):

1:03 PM Changeset in webkit [174996] by msaboff@apple.com
  • 11 edits in trunk

Change native call frames to use the scope from their Callee instead of their caller's scope
https://bugs.webkit.org/show_bug.cgi?id=137907

Source/JavaScriptCore:

Reviewed by Mark Lam.

Changed setting of scope for native CallFrames to use the scope associated with the
Callee instead of the caller's scope.

  • jit/ThunkGenerators.cpp:

(JSC::nativeForGenerator):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:

LayoutTests:

Updated tests to reflect that the results of changing where a native call frame
and therefore the lexicalGlobalObject came from. Verified that these tests changes
are consistent with the HTML standard. These changes are also closer to the behavior
of other browsers.

Reviewed by Mark Lam.

  • fast/frames/sandboxed-iframe-navigation-parent-expected.txt:
  • fast/frames/sandboxed-iframe-navigation-parent.html:

Changed the test and results to show that a sandboxed iframe can navigate its
ancesters when it is sandbox with both "allow-scripts" and "allow-same-origin".

  • http/tests/security/calling-versus-current.html:

Updated the test to really have a different domain. We do a simple string comparison
to check for that we are part of the same domain. The test expected that 0.0.1 was
from the same domain as 127.0.0.1. Changed the test to try 0.0.2 and expect a
security exception.

  • http/tests/security/frameNavigation/context-for-location-assign-expected.txt:

Updated test results.

  • traversal/node-iterator-prototype-expected.txt:
  • traversal/node-iterator-prototype.html:

Fixed as a result of this change.

12:53 PM Changeset in webkit [174995] by Chris Dumez
  • 3 edits in trunk/Source/WebCore

Unreviewed iOS build fix after r174921.

Export new symbol after function rename.

  • WebCore.exp.in:
  • WebCore.order:
12:47 PM Changeset in webkit [174994] by Chris Dumez
  • 3 edits in trunk/Source/WebCore

Unreviewed iOS build fix after r174921.

Remove symbol from export files that no longer exists.

  • WebCore.exp.in:
  • WebCore.order:
12:41 PM Changeset in webkit [174993] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Curl] Optimization; avoid string reallocation.
https://bugs.webkit.org/show_bug.cgi?id=137920

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-10-21
Reviewed by Brent Fulgham.

Profiling reveals that the cookiesForDOM function is spending time on removing a character from a string.

  • platform/network/curl/CookieJarCurl.cpp:

(WebCore::domainMatch):
(WebCore::addMatchingCurlCookie):

11:44 AM Changeset in webkit [174992] by jdiggs@igalia.com
  • 4 edits
    2 adds
    1 delete in trunk

AX: [ATK] CSS-generated text content not exposed to assistive technologies
https://bugs.webkit.org/show_bug.cgi?id=137669

Reviewed by Chris Fleizach.

Source/WebCore:

Do not use a text iterator to get the text for elements which include
pseudo elements.

Test: accessibility/css-content-attribute.html

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::textUnderElement):

LayoutTests:

Moved the Mac platform test and modified it to dump the accessible tree
and string values rather than a platform-specific hierarchy so that it
could be shared across platforms.

  • accessibility/css-content-attribute.html: Added.
  • platform/gtk/accessibility/css-content-attribute-expected.txt: Added.
  • platform/mac/accessibility/css-content-attribute-expected.txt: Modified to reflect new output.
  • platform/mac/accessibility/css-content-attribute.html: Removed.
11:19 AM Changeset in webkit [174991] by msaboff@apple.com
  • 1 edit in trunk/Source/WebCore/ChangeLog

Updated ChangeLog entry to include tests that cover r174985

11:11 AM Changeset in webkit [174990] by matthew_hanson@apple.com
  • 5 edits in branches/safari-600.2-branch/Source

Versioning.

11:09 AM Changeset in webkit [174989] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

REGRESSION(r174676): It broke the !ENABLE(VIDEO) build
https://bugs.webkit.org/show_bug.cgi?id=137916

Reviewed by Csaba Osztrogonác.

Fix the !ENABLE(VIDEO) build by adding an #if ENABLE(VIDEO) where
needed.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::isDirectlyCompositedImage):

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

WKRemoteObjectCoder should handle floats
https://bugs.webkit.org/show_bug.cgi?id=137926
<rdar://problem/18695126>

Reviewed by Beth Dakin.

  • Shared/API/Cocoa/WKRemoteObjectCoder.mm:

(encodeInvocation):
(-[WKRemoteObjectEncoder encodeFloat:forKey:]):
(decodeInvocationArguments):
(-[WKRemoteObjectDecoder decodeFloatForKey:]):

10:46 AM Changeset in webkit [174987] by jeffm@apple.com
  • 17 edits in trunk/Source/WebKit2

WKContext needs to provide an API to resume a download
https://bugs.webkit.org/show_bug.cgi?id=137507

Reviewed by Darin Adler.

This patch adds WKContextResumeDownload(), which is only supported on the Mac, and requires the
resume data from WKDownloadGetResumeData().

We have to create a sandbox extension for the partially downloaded file in the UI process so the
network or web process can resume writing to it.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::resumeDownload):
Added, calls through to DownloadManager::resumeDownload().

  • NetworkProcess/NetworkProcess.h:

Added resumeDownload().

  • NetworkProcess/NetworkProcess.messages.in:

Added ResumeDownload message.

  • Shared/Downloads/Download.h:

Added resume().

  • Shared/Downloads/DownloadManager.cpp:

(WebKit::DownloadManager::resumeDownload):
Added. The URL being downloaded is part of the opaque resumeData, so we can't specify it when the
Download is constructed.

  • Shared/Downloads/DownloadManager.h:

Added resumeDownload().

  • Shared/Downloads/ios/DownloadIOS.mm:

(WebKit::Download::resume):
Added, not implemented on this platform.

  • Shared/Downloads/mac/DownloadMac.mm:

(WebKit::Download::resume):
Added. Consumes the sandbox extension, resumes the download, and sets m_request after the
NSURLDownload has been created. Note that we already have code to revoke the sandbox extension when
the download is finished, canceled, or fails.

  • Shared/Downloads/soup/DownloadSoup.cpp:

(WebKit::Download::resume):
Added, not implemented on this platform.

  • UIProcess/API/C/WKContext.cpp:

(WKContextResumeDownload):
Added.

  • UIProcess/API/C/WKContext.h:

Added WKContextResumeDownload().

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::resumeDownload):
Added. Creates a sandbox extension for the existing file and includes it in the message to the
network or web process.

  • UIProcess/WebContext.h:

Added resumeDownload().

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::resumeDownload):
Added, calls through to DownloadManager::resumeDownload().

  • WebProcess/WebProcess.h:

Added resumeDownload().

  • WebProcess/WebProcess.messages.in:

Added ResumeDownload message.

10:32 AM Changeset in webkit [174986] by Alan Bujtas
  • 4 edits
    2 adds in trunk

REGRESSION: Google Search (mobile) video thumbnails are too large.
https://bugs.webkit.org/show_bug.cgi?id=137895

Reviewed by Simon Fraser.

This patch fixes layer clipping when an ancestor layer has border-radius clipping.

In cases, where the current layer has non-radius cliprect, while an ancestor layer
has border-radius clipping, we only use the border-radius rect to clip.

Source/WebCore:

Test: fast/clip/overflow-hidden-with-border-radius-overflow-clipping-parent.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::clipToRect):
(WebCore::RenderLayer::restoreClip):
(WebCore::RenderLayer::collectFragments):
(WebCore::RenderLayer::calculateClipRects):

  • rendering/RenderLayer.h:

(WebCore::ClipRect::ClipRect):
(WebCore::ClipRect::effectedByRadius):
(WebCore::ClipRect::setEffectedByRadius):
(WebCore::ClipRect::operator==):
(WebCore::ClipRect::operator!=):
(WebCore::ClipRect::intersect):
(WebCore::ClipRect::hasRadius): Deleted.
(WebCore::ClipRect::setHasRadius): Deleted.

LayoutTests:

  • fast/clip/overflow-hidden-with-border-radius-overflow-clipping-parent-expected.html: Added.
  • fast/clip/overflow-hidden-with-border-radius-overflow-clipping-parent.html: Added.
10:19 AM Changeset in webkit [174985] by msaboff@apple.com
  • 3 edits in trunk/Source/WebCore

Don't create cached functions for HTMLDocument.write*()
https://bugs.webkit.org/show_bug.cgi?id=137906

Reviewed by Darin Adler.

Made it so that JSHTMLDocument::write() and ::writeln() are always created for every prototype.
This is similar to the change in r174847.

  • bindings/js/JSHTMLDocumentCustom.cpp:

(WebCore::JSHTMLDocument::getOwnPropertySlot):

  • html/HTMLDocument.idl:
10:05 AM Changeset in webkit [174984] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.6/Source/WebKit2

Merge r174927 - [SOUP] Disable SSLv3
https://bugs.webkit.org/show_bug.cgi?id=137859

Patch by Michael Catanzaro <Michael Catanzaro> on 2014-10-21
Reviewed by Carlos Garcia Campos.

Set G_TLS_GNUTLS_PRIORITY if unset.

  • NetworkProcess/EntryPoint/unix/NetworkProcessMain.cpp:

(main):

  • WebProcess/EntryPoint/unix/WebProcessMain.cpp:

(main):

10:02 AM Changeset in webkit [174983] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.6

Merge r174930 - Change the default TLS errors policy to WEBKIT_TLS_ERRORS_POLICY_FAIL
https://bugs.webkit.org/show_bug.cgi?id=137832

Patch by Michael Catanzaro <Michael Catanzaro> on 2014-10-20
Reviewed by Carlos Garcia Campos.

Source/WebKit2:

Too many general-purpose browsers that really need this policy
are not selecting it, so let's do so for them.

  • UIProcess/API/gtk/WebKitWebContext.cpp:

(createDefaultWebContext):

Tools:

Ensure each test sets the TLS errors policy that it really needs.
Have each test except testTLSErrorsPolicy stash and restore the original
TLS errors policy. Update testTLSErrorsPolicy to account for the new
default policy.

  • TestWebKitAPI/Tests/WebKit2Gtk/TestSSL.cpp:

(testSSL):
(testInsecureContent):
(testTLSErrorsPolicy):
(testTLSErrorsRedirect):
(testTLSErrorsHTTPAuth):
(testLoadFailedWithTLSErrors):
(beforeAll):

10:00 AM Changeset in webkit [174982] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.6/Source/WebKit2

Merge r174861 - [GTK] Improve documentation of webkit_web_view_get_tls_info()
https://bugs.webkit.org/show_bug.cgi?id=137852

Patch by Michael Catanzaro <Michael Catanzaro> on 2014-10-18
Reviewed by Martin Robinson.

  • UIProcess/API/gtk/WebKitWebView.cpp:
9:58 AM Changeset in webkit [174981] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore

Merge r174853 - Avoid unnecessary isSVGFont() check in SimpleFontData::applyTransforms()
https://bugs.webkit.org/show_bug.cgi?id=137836

Reviewed by Andreas Kling.

Avoid unnecessary isSVGFont() check in SimpleFontData::applyTransforms().
This function is only called from WidthIterator::applyFontTransforms(),
which already makes sure to call applyTransforms() if isSVGFont()
returns false. This patch replaces the check with a simple assertion.

No new tests, no behavior change.

  • platform/graphics/SimpleFontData.h:
  • svg/SVGFontData.h:
9:50 AM Changeset in webkit [174980] by Carlos Garcia Campos
  • 3 edits
    2 adds in releases/WebKitGTK/webkit-2.6

Merge r174807 - REGRESSION (r169024): Undetermined text is not displayed in the search field of Adobe Help Website
https://bugs.webkit.org/show_bug.cgi?id=137679
rdar://problem/18450335

Reviewed by Enrica Casucci.

Source/WebCore:

Test: platform/mac/editing/input/selected-composed-text-painting.html

  • rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::paint): We do not paint

selection beckground for unconfirmed text with underlines, so we should use a regular
style for text painting, as well.

LayoutTests:

  • platform/mac/editing/input/selected-composed-text-painting-expected.html: Added.
  • platform/mac/editing/input/selected-composed-text-painting.html: Added.
9:48 AM Changeset in webkit [174979] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Add missing ENABLE(FTL_NATIVE_CALL_INLINING) guard to BundlePath.cpp after r174940
https://bugs.webkit.org/show_bug.cgi?id=137924

Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-10-21
Reviewed by Csaba Osztrogonác.

  • runtime/BundlePath.cpp:
9:46 AM Changeset in webkit [174978] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

REGRESSION(r174676): It broke the !ENABLE(VIDEO) build
https://bugs.webkit.org/show_bug.cgi?id=137916

Unreviewed build fix. Add missing header include.

  • rendering/RenderLayerBacking.cpp:
9:42 AM Changeset in webkit [174977] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore

Merge r174720 - REGRESSION (r159208): Crash when clicking scrubber after navigating away/back to video
https://bugs.webkit.org/show_bug.cgi?id=137715

Reviewed by Darin Adler.

Simple null-check of m_player in refreshCachedTime.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::refreshCachedTime):

9:41 AM Changeset in webkit [174976] by Carlos Garcia Campos
  • 3 edits
    2 adds in releases/WebKitGTK/webkit-2.6

Merge r174716 - REGRESSION (Safari 7.1/8.0): Border-radius and overflow hidden renders incorrectly.
https://bugs.webkit.org/show_bug.cgi?id=137205

Reviewed by Simon Fraser.

Child layer should not reset radius clipping behaviour.

Source/WebCore:

Test: fast/layers/parent-clipping-overflow-is-overwritten-by-child-clipping.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateClipRects):

LayoutTests:

  • fast/layers/parent-clipping-overflow-is-overwritten-by-child-clipping-expected.html: Added.
  • fast/layers/parent-clipping-overflow-is-overwritten-by-child-clipping.html: Added.
9:38 AM Changeset in webkit [174975] by Carlos Garcia Campos
  • 10 edits in releases/WebKitGTK/webkit-2.6

Merge r174712 - URLs that start with http:/// and https:/// lose two slashes when parsed, causing assertion failure and inconsistent behavior
https://bugs.webkit.org/show_bug.cgi?id=137718

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Added cases to fast/loader/url-parse-1.html.

  • platform/URL.cpp:

(WebCore::URL::parse): In hierarchical schemes other than file:, ignore any additional
slashes after the :, as prescribed by the authority-ignore-slashes state in the current
URL spec.

LayoutTests:

  • fast/loader/url-parse-1-expected.txt: Updated results.
  • fast/loader/url-parse-1.html: Added a few test cases.
  • fast/url/file-http-base-expected.txt: Updated results.
  • fast/url/host-expected.txt: Ditto.
  • fast/url/invalid-urls-utf8-expected.txt: Ditto.
  • fast/url/relative-expected.txt: Ditto.
  • fast/url/standard-url-expected.txt: Ditto.
9:34 AM Changeset in webkit [174974] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.6/Source/WebKit2

Merge r174708 - REGRESSION (r165356): Issues with Japanese text input
https://bugs.webkit.org/show_bug.cgi?id=137719
rdar://problem/18431952
rdar://problem/18483741

Reviewed by Darin Adler.

  • WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::didChangeSelection):

In sync code path, ensure consistent message delivery order by adding
a DispatchMessageEvenWhenWaitingForSyncReply flag. This way, delayed
EditorStateChanged messages won't confuse UI process.

9:32 AM Changeset in webkit [174973] by Carlos Garcia Campos
  • 9 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore

Merge r174804 - Leverage the new RenderElement::m_isCSSAnimating flag in more places
https://bugs.webkit.org/show_bug.cgi?id=137786

Reviewed by Simon Fraser.

Leverage the new RenderElement::m_isCSSAnimating flag that was introduced
in r174703 in more places, for performance. This avoids doing extra work
for renderers on which we are not running animations on. This patch also
updates the API a bit to use more references instead of pointers, making
it clear the RenderElement cannot be null and thus avoiding unnecessary
null checks.

No new tests, no behavior change.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::computeRenderStyleForProperty):

  • page/animation/AnimationController.cpp:

(WebCore::AnimationControllerPrivate::ensureCompositeAnimation):
(WebCore::AnimationControllerPrivate::clear):
(WebCore::AnimationControllerPrivate::updateAnimationTimerForRenderer):
(WebCore::AnimationControllerPrivate::isRunningAnimationOnRenderer):
(WebCore::AnimationControllerPrivate::isRunningAcceleratedAnimationOnRenderer):
(WebCore::AnimationControllerPrivate::pauseAnimationAtTime):
(WebCore::AnimationControllerPrivate::pauseTransitionAtTime):
(WebCore::AnimationControllerPrivate::getAnimatedStyleForRenderer):
(WebCore::AnimationController::cancelAnimations):
(WebCore::AnimationController::updateAnimations):
(WebCore::AnimationController::getAnimatedStyleForRenderer):
(WebCore::AnimationController::notifyAnimationStarted):
(WebCore::AnimationController::isRunningAnimationOnRenderer):
(WebCore::AnimationController::isRunningAcceleratedAnimationOnRenderer):

  • page/animation/AnimationController.h:
  • page/animation/AnimationControllerPrivate.h:
  • rendering/RenderElement.cpp:

(WebCore::RenderElement::willBeDestroyed):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::currentTransform):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateGeometry):
(WebCore::RenderLayerBacking::notifyAnimationStarted):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::requiresCompositingForAnimation):
(WebCore::RenderLayerCompositor::isRunningAcceleratedTransformAnimation):

9:28 AM Changeset in webkit [174972] by jer.noble@apple.com
  • 3 edits
    2 adds in trunk

REGRESSION (r170808): Volume slider in built-in media controls only changes volume when thumb is released, not while dragging
https://bugs.webkit.org/show_bug.cgi?id=137805

Reviewed by Dan Bernstein.

Source/WebCore:

Test: media/video-volume-slider-drag.html

Respond to the 'input' event rather than the 'change' event for the volume slider, so that
volume changes are continuous during drag operations.

Also listen for both 'input' and 'change' events for the timeline slider, doing fastSeek()
during 'input' and setting an explicit currentTime during 'change'. This is the same behavior
as current, but using 'change' instead of 'mouseup' to do the final currentTime change.

  • Modules/mediacontrols/mediaControlsApple.js:

(Controller.prototype.createControls):
(Controller.prototype.handleTimelineInput):
(Controller.prototype.handleTimelineChange):
(Controller.prototype.handleTimelineMouseUp):
(Controller.prototype.handleVolumeSliderInput):
(Controller.prototype.handlePlayButtonClicked): Deleted.
(Controller.prototype.handleMaxButtonClicked): Deleted.

LayoutTests:

  • media/video-volume-slider-drag-expected.txt: Added.
  • media/video-volume-slider-drag.html: Added.
9:23 AM Changeset in webkit [174971] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore

Merge r174703 - Introduce an isCSSAnimated flag on RenderElement for performance
https://bugs.webkit.org/show_bug.cgi?id=137583

Reviewed by Simon Fraser.

I noticed when profiling the ebay.com page load that isRunningAnimationOnRenderer()
and isRunningAcceleratedAnimationOnRenderer() were called frequently, causing
~4.7 millions m_compositeAnimations HashMap lookups.

This patch introduces an isCSSAnimated flag on RenderElement to return early if
there is no animation on the renderer, thus avoiding HashMap lookups. This reduces
the number of HashMap lookups from ~4.7 millions to ~68k. On my machine, I see
the following performance improvements:

  • isRunning*AnimationOnRenderer() / computeCompositingRequirements()
    • before: ~45ms / ~90ms
    • after: ~4ms / ~30ms

No new tests, no behavior change.

  • page/animation/AnimationController.cpp:

(WebCore::AnimationControllerPrivate::ensureCompositeAnimation):
(WebCore::AnimationControllerPrivate::clear):
(WebCore::AnimationControllerPrivate::isRunningAnimationOnRenderer):
(WebCore::AnimationControllerPrivate::isRunningAcceleratedAnimationOnRenderer):
(WebCore::AnimationController::isRunningAnimationOnRenderer):
(WebCore::AnimationController::isRunningAcceleratedAnimationOnRenderer):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::RenderElement):

  • rendering/RenderElement.h:

(WebCore::RenderElement::isCSSAnimating):
(WebCore::RenderElement::setIsCSSAnimating):

9:06 AM Changeset in webkit [174970] by Carlos Garcia Campos
  • 5 edits
    2 adds in releases/WebKitGTK/webkit-2.6

Merge r174684 - [XHR] Abort method execution when m_loader->cancel() in internalAbort() caused reentry
https://bugs.webkit.org/show_bug.cgi?id=126975

Patch by Youenn Fablet <youennf@gmail.com> on 2014-10-14
Reviewed by Alexey Proskuryakov.

Source/WebCore:

Merging https://chromium.googlesource.com/chromium/blink/+/0d75daf2053631518606ae15daaece701a25b2c4
Ensuring new test from https://codereview.chromium.org/76133002/ is passing.

Test: http/tests/xmlhttprequest/reentrant-cancel-abort.html

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::open): exit early if internalAbort asks so
(WebCore::XMLHttpRequest::abort): exit early if internalAbort asks so
(WebCore::XMLHttpRequest::internalAbort): ask calling function to exit early if a new loader is created during the cancellation of the loader (potential reentrant case through window.onload callback)
(WebCore::XMLHttpRequest::didTimeout): exit early if internalAbort asks so

  • xml/XMLHttpRequest.h:

LayoutTests:

Adding reentrant-cancel-abort.html (from https://codereview.chromium.org/76133002/)
that crashes without the patch
Updated reentrant-cancel.html test to expect the exception
that is now hit in initSend function (since a XHR open() call is aborted)

  • http/tests/xmlhttprequest/reentrant-cancel-abort-expected.txt: Added.
  • http/tests/xmlhttprequest/reentrant-cancel-abort.html: Added.
  • http/tests/xmlhttprequest/reentrant-cancel.html:
9:03 AM Changeset in webkit [174969] by Carlos Garcia Campos
  • 3 edits
    2 adds in releases/WebKitGTK/webkit-2.6

Merge r174543 - Computed style for clip is wrong with respect to auto
https://bugs.webkit.org/show_bug.cgi?id=137567

Reviewed by Simon Fraser.

Source/WebCore:

Make sure that the computed style of clip returns the
correct value when the input is "auto", or in this
case "rect(auto, auto, auto, auto)". Before this
patch it returned "rect(0px, 0px, 0px, 0px)" which
was completely wrong.

Test: fast/css/computed-clip-with-auto-rect.html

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::autoOrZoomAdjustedValue): Helper function to make the correct keyword or length.
(WebCore::specifiedValueForGridTrackBreadth): It can use the helper too.
(WebCore::ComputedStyleExtractor::propertyValue): If the
top/right/bottom/left is "auto", add that identifier
to the output rectangle.

LayoutTests:

Test that an input of clip: rect(auto, auto, auto, auto)
is the same on the way out.

  • fast/css/computed-clip-with-auto-rect-expected.txt: Added.
  • fast/css/computed-clip-with-auto-rect.html: Added.
8:51 AM Changeset in webkit [174968] by matthew_hanson@apple.com
  • 1 copy in branches/safari-600.2-branch

New branch.

8:42 AM Changeset in webkit [174967] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.6

Merge r174515 - [CSS Font Loading] Decrement the font loading count before notifying callbacks
https://bugs.webkit.org/show_bug.cgi?id=137401

Reviewed by Alexey Proskuryakov.

Source/WebCore:

In the callbacks, it should appear that font load has completed. This is
accessed through loading(), which relies on the current number of
fonts loading via JS and CSS.

Unskipping the failing test http/tests/webfont/fontloader-loading-attribute.html
test which tests this.

  • css/FontLoader.cpp:

(WebCore::LoadFontCallback::notifyLoaded):

LayoutTests:

  • platform/mac/TestExpectations: Unskip the test this bug was causing to fail.
8:39 AM Changeset in webkit [174966] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.6/Source/JavaScriptCore

Merge r174503 - Ensure that inline assembly Thunk functions don't conflict with the section designations of the compiler
https://bugs.webkit.org/show_bug.cgi?id=137434

Patch by Akos Kiss <akiss@inf.u-szeged.hu> on 2014-10-09
Reviewed by Michael Saboff.

The ARM64 version of the defineUnaryDoubleOpWrapper macro in
ThunkGenerators.cpp contains inline assembly with .text assembler
directive followed by a static variable declaration. This macro gets
expanded several times afterwards, however, only during the compilation
of the first expansion does gcc insert a .data assembler directive
before the assembled version of the static variable. Thus, only the
first variable gets allocated in the .data section, all the others
remain in .text. If JavaScriptCore is built as a shared library then
this causes a segmentation fault during dynamic linking.

This patch puts a .previous directive at the end of the inline assembly
to ensure that the assumptions of the compiler about the sections are
not broken and the following variable goes to the right place.

  • jit/ThunkGenerators.cpp:
8:36 AM Changeset in webkit [174965] by Carlos Garcia Campos
  • 5 edits
    2 adds in releases/WebKitGTK/webkit-2.6

Merge r174466 - Text drawn with an SVG font has no spaces when word-rounding hacks are enabled
https://bugs.webkit.org/show_bug.cgi?id=137463

Reviewed by Darin Adler.

Source/WebCore:

When rounding hacks are enabled, we use the "adjusted space width" instead of the
regular space width. However, the SVG-font-specific implementation of the
SimpleFontData constructor doesn't initialize this value, so it was getting set
to an undefined value (which happened to be close to 0 in my tests).

Test: svg/text/svg-font-word-rounding-hacks-spaces.html

  • css/CSSFontFaceSource.cpp:

(WebCore::CSSFontFaceSource::getFontData):
(WebCore::CSSFontFaceSource::ensureFontData):

  • loader/cache/CachedFont.cpp:

(WebCore::CachedFont::ensureCustomFontData):
(WebCore::CachedFont::getSVGFontById):

  • platform/graphics/SimpleFontData.h:
  • svg/SVGFontData.cpp:

(WebCore::SVGFontData::initializeFontData):

LayoutTests:

Make sure that spaces are present.

  • svg/text/svg-font-word-rounding-hacks-spaces.html:
  • svg/text/svg-font-word-rounding-hacks-spaces-expected.html:
8:27 AM Changeset in webkit [174964] by Carlos Garcia Campos
  • 5 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore

Merge r174451 - ASSERTION FAILED: underlyingStringIsValid()
https://bugs.webkit.org/show_bug.cgi?id=137502

Reviewed by Anders Carlsson.

  • rendering/RenderTreeAsText.cpp:

(WebCore::quoteAndEscapeNonPrintables): Take a StringView instead of a String.
(WebCore::writeTextRun): Ditto.
(WebCore::writeSimpleLine): Ditto.

  • rendering/RenderTreeAsText.h: Removed unneeded include, tweaked formatting,

changed quoteAndEscapeNonPrintables to take a StringView.

  • rendering/SimpleLineLayoutFunctions.cpp:

(WebCore::SimpleLineLayout::paintFlow): Tighten code using a modern for loop.
(WebCore::SimpleLineLayout::showLineLayoutForFlow): Update to work with a
StringView result for SimpleLineLayout::RunResolver::Run::text.

  • rendering/SimpleLineLayoutResolver.h:

(WebCore::SimpleLineLayout::RunResolver::Run::text): Changed return type to
StringView to fix the lifetime bug and also to improve performance by getting
rid of the need to allocate and destroy a StringImpl object.

8:16 AM Changeset in webkit [174963] by Carlos Garcia Campos
  • 6 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore

Merge r174405 - Defer resolution of viewport size.
https://bugs.webkit.org/show_bug.cgi?id=137376
rdar://problem/18558094

Reviewed by Benjamin Poulain.

ViewportConfiguration should resolve the viewport size on configuration update.

  • dom/Document.cpp:

(WebCore::Document::processViewport): Defer resolution of viewport size.

  • dom/ViewportArguments.cpp:

(WebCore::finalizeViewportArguments): Deleted.

  • dom/ViewportArguments.h:
  • page/ViewportConfiguration.cpp:

(WebCore::ViewportConfiguration::updateConfiguration): Resolve viewport size.
(WebCore::ViewportConfiguration::viewportArgumentsLength): Resolves width or height based on viewport arguments.

  • page/ViewportConfiguration.h:
7:56 AM Changeset in webkit [174962] by Carlos Garcia Campos
  • 3 edits
    2 adds in releases/WebKitGTK/webkit-2.6

Merge r174370 - REGRESSION (Simple Line Layout): Inline block baselines computed incorrectly
https://bugs.webkit.org/show_bug.cgi?id=137461

Reviewed by Simon Fraser.

Source/WebCore:

Added fast/inline-block/simple-line-layout.html

  • rendering/SimpleLineLayoutFunctions.h:

(WebCore::SimpleLineLayout::computeFlowFirstLineBaseline):
(WebCore::SimpleLineLayout::computeFlowLastLineBaseline):
Fix the baseline computation functions in simple line layout to
use lineCount rather than runCount.

LayoutTests:

  • fast/inline-block/simple-line-layout-expected.html: Added.
  • fast/inline-block/simple-line-layout.html: Added.
7:49 AM Changeset in webkit [174961] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.6/Source/JavaScriptCore

Merge r174361 - Fix cloop build.

7:46 AM Changeset in webkit [174960] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore

Merge r174345 - AX: Performance: Certain Web site causes Safari to hang completely while entering form data
https://bugs.webkit.org/show_bug.cgi?id=137420

Reviewed by Mario Sanchez Prada.

If a website has multiple nested tables that are not "accessibility" tables, the performance of accessibility slows to a crawl because:

1) We are re-computing accessibilityIsIgnored many times.

As a solution, we can enable the isIgnoredCache when updating children.

2) When asking if an object isTableCell, we'd go up the parent chain, asking each of those parents the same question, which exploded into calling this many times.

As a solution, I've changed our determination of isTableCell to instead check if the parent is an accessibiltyTable which should be much faster.

No new functionality. Existing tests cover changes.

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::updateChildrenIfNecessary):
(WebCore::AccessibilityObject::accessibilityIsIgnored):

  • accessibility/AccessibilityTableCell.cpp:

(WebCore::AccessibilityTableCell::parentTable):
(WebCore::AccessibilityTableCell::isTableCell):

7:27 AM Changeset in webkit [174959] by Carlos Garcia Campos
  • 7 edits
    2 adds
    4 deletes in releases/WebKitGTK/webkit-2.6/Source

Merge r174868 - [GTK] Move GtkDragAndDropHelper from Platform to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=137422

Reviewed by Martin Robinson.

Source/WebCore:

Remove ClipboardUtilitiesGtk and GtkDragAndDropHelper.

  • PlatformGTK.cmake:
  • platform/gtk/ClipboardUtilitiesGtk.cpp: Removed.
  • platform/gtk/ClipboardUtilitiesGtk.h: Removed.
  • platform/gtk/GtkDragAndDropHelper.cpp: Removed.
  • platform/gtk/GtkDragAndDropHelper.h: Removed.

Source/WebKit2:

WebKitWebViewBase is currently the only user of
GtkDragAndDropHelper, that was added to share the code with
WebKit1. Move all the drag and drop logic to a new class
DragAndDropHandler.

  • PlatformGTK.cmake: Add new files to compilation.
  • UIProcess/API/gtk/PageClientImpl.cpp:

(WebKit::PageClientImpl::startDrag):

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseConstructed):
(webkitWebViewBaseDragDataGet):
(webkitWebViewBaseDragEnd):
(webkitWebViewBaseDragDataReceived):
(webkitWebViewBaseDragMotion):
(webkitWebViewBaseDragLeave):
(webkitWebViewBaseDragDrop):
(webkitWebViewBaseDragAndDropHandler):
(dragExitedCallback): Deleted.
(webkitWebViewBaseStartDrag): Deleted.

  • UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
  • UIProcess/gtk/DragAndDropHandler.cpp: Added.

(WebKit::DragAndDropHandler::create):
(WebKit::DragAndDropHandler::DragAndDropHandler):
(WebKit::DragAndDropHandler::DroppingContext::DroppingContext):
(WebKit::dragOperationToGdkDragActions):
(WebKit::dragOperationToSingleGdkDragAction):
(WebKit::gdkDragActionToDragOperation):
(WebKit::DragAndDropHandler::startDrag):
(WebKit::DragAndDropHandler::fillDragData):
(WebKit::DragAndDropHandler::finishDrag):
(WebKit::DragAndDropHandler::dataObjectForDropData):
(WebKit::DragAndDropHandler::dragEntered):
(WebKit::DragAndDropHandler::requestDragData):
(WebKit::DragAndDropHandler::dragMotion):
(WebKit::DragAndDropHandler::dragLeave):
(WebKit::DragAndDropHandler::drop):

  • UIProcess/gtk/DragAndDropHandler.h: Added.
7:22 AM Changeset in webkit [174958] by Carlos Garcia Campos
  • 10 edits in releases/WebKitGTK/webkit-2.6/Source

Merge r174328 - [GTK] Fix build when DRAG_SUPPORT is disabled
https://bugs.webkit.org/show_bug.cgi?id=137361

Patch by Lorenzo Tilve <ltilve@igalia.com> on 2014-10-05
Reviewed by Carlos Garcia Campos.

Flag out unbuildable code without DRAG_SUPPORT.

Source/WebCore:

  • platform/gtk/GtkDragAndDropHelper.cpp:
  • platform/gtk/GtkDragAndDropHelper.h:

Source/WebKit2:

  • Shared/gtk/ArgumentCodersGtk.cpp:
  • Shared/gtk/ArgumentCodersGtk.h:
  • UIProcess/API/gtk/PageClientImpl.cpp:
  • UIProcess/API/gtk/PageClientImpl.h:
  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseConstructed):

  • UIProcess/PageClient.h:
7:18 AM Changeset in webkit [174957] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.6/Source/JavaScriptCore

Merge r174298 - Implement op_profile_type in the 32-bit baseline JIT
https://bugs.webkit.org/show_bug.cgi?id=137181

Reviewed by Michael Saboff.

Generate inline code to write to the TypeProfilerLog inside the 32-bit
baseline JIT instead of unconditionally bailing out to the slow path
for op_profile_type.

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_profile_type):

7:15 AM Changeset in webkit [174956] by Carlos Garcia Campos
  • 8 edits in releases/WebKitGTK/webkit-2.6/Source/JavaScriptCore

Merge r174294 - tearoff_arguments should always refer to the unmodified arguments register
https://bugs.webkit.org/show_bug.cgi?id=137406

Reviewed by Michael Saboff.

To simplify subsequent work, and remove unnecessary work from
actual execution this patch simply ensures that tear_off_arguments
refers to the actual unmodified arguments register.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitReturn):

  • dfg/DFGByteCodeParser.cpp:

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

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_tear_off_arguments):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_tear_off_arguments):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
7:12 AM Changeset in webkit [174955] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.6/Source

Merge r174287 - WKWebView snapshot of Daring Fireball has the wrong color in the obscured inset
https://bugs.webkit.org/show_bug.cgi?id=137383
<rdar://problem/18535439>

Reviewed by Sam Weinig.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::snapshotAtSize):
Use documentBackgroundColor instead of baseBackgroundColor if backgroundShouldExtendBeyondPage is set.

  • rendering/RenderView.cpp:

(WebCore::RenderView::paintBoxDecorations):
Use documentBackgroundColor instead of baseBackgroundColor if backgroundShouldExtendBeyondPage is set.

6:33 AM Changeset in webkit [174954] by Carlos Garcia Campos
  • 4 edits
    2 adds in releases/WebKitGTK/webkit-2.6

Merge r174273 - REGRESSION (r173531): Use after free in WebCore::RenderStyle::fontMetrics /
WebCore::CSSPrimitiveValue::computeLengthDouble
https://bugs.webkit.org/show_bug.cgi?id=136864

Reviewed by Andreas Kling.

Source/WebCore:

FontLoader previously called updateDocumentStyleIfNeeded,
which would reset styles currently in use as part of
the tabIndex calculation. The FontLoader should instead
wait for pending stylesheets to load.

Tests: fast/css/fontloader-tab-index.html

  • css/FontLoader.cpp:

(WebCore::FontLoader::notifyWhenFontsReady): Do not immediately
call loadingDone().
(WebCore::FontLoader::loadingDone): Wait for stylesheets to
finish loading rather than updating document styles.

  • css/FontLoader.h:

(WebCore::FontLoader::loading): Include JS font loads when testing
for the loading state.

LayoutTests:

Test that getting the tab index on a body element with
font-relative measurements to a local @font-face do not
cause a crash.

  • fast/css/fontloader-tab-index-expected.html: Added.
  • fast/css/fontloader-tab-index.html: Added.
6:23 AM Changeset in webkit [174953] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.6/Source/JavaScriptCore

Merge r174260 - Change how 32-bit JSValues check if they are a Boolean

Rubber stamped by Filip Pizlo.

32-bit JSValue::isBoolean can simply check if its tag corresponds
to the boolean tag instead of checking if it's either true or false.

  • runtime/JSCJSValueInlines.h:

(JSC::JSValue::isBoolean):

6:05 AM Changeset in webkit [174952] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore

Merge r174235 - XMLHttpRequestProgressEventThrottle shouldn't throttle / defer progress events if there are no listeners
https://bugs.webkit.org/show_bug.cgi?id=137346

Reviewed by Alexey Proskuryakov.

Previously XMLHttpRequestProgressEventThrottle would throttle / defer
progress events, which involves queueing events and starting timers,
even if there were no listeners for those events (which is fairly
common case).

This patch updates XMLHttpRequestProgressEventThrottle to make sure
there are actual progress event listeners *before* attempting to
throttle and do extra processing, to avoid doing unnecessary work.

This patch also makes XMLHttpRequestProgressEventThrottle::dispatchEvent()
private as this method is only called from other dispatch methods of
the class and never from the outside.

No new tests, no behavior change.

  • xml/XMLHttpRequestProgressEventThrottle.cpp:

(WebCore::XMLHttpRequestProgressEventThrottle::dispatchThrottledProgressEvent):
(WebCore::XMLHttpRequestProgressEventThrottle::dispatchProgressEvent):

6:02 AM Changeset in webkit [174951] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.6/Source/JavaScriptCore

Merge r174219 - Use variadic templates for jsMakeNontrivialString
https://bugs.webkit.org/show_bug.cgi?id=137325

Reviewed by Sam Weinig.

  • runtime/JSString.h:

(JSC::jsNontrivialString):
Add an overload that takes an rvalue reference to a String so we can transfer ownership easily.

  • runtime/JSStringBuilder.h:

(JSC::jsMakeNontrivialString):
Make this a variadic function template, with a single-parameter version that can steal the string if it's OK to do so.

5:25 AM Changeset in webkit [174950] by Carlos Garcia Campos
  • 5 edits in releases/WebKitGTK/webkit-2.6

Merge r174217 - AX: Default orientation for aria scrollbars should be vertical
https://bugs.webkit.org/show_bug.cgi?id=137341

Reviewed by Chris Fleizach.

Source/WebCore:

Default orientation for aria scrollbars regarding w3c spec should be vertical

No new tests, covering by existing one.

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::orientation):

LayoutTests:

Update expectation and test for having new test case.

  • accessibility/aria-scrollbar-role-expected.txt:
  • accessibility/aria-scrollbar-role.html:
5:23 AM Changeset in webkit [174949] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.6/Tools

Merge r174209 - [GTK] [JHBuild] Switch sourceware.org mirror to http.

Unreviewed.

The ftp access is recently failing to work as expected, and the
bots fail to download the file.
The same mirror is available via http and seems to work better.

  • gtk/jhbuild.modules:
5:22 AM Changeset in webkit [174948] by Carlos Garcia Campos
  • 6 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore

Merge r174206 - Fix minimal build warnings
https://bugs.webkit.org/show_bug.cgi?id=137066

Reviewed by Daniel Bates.

No new tests, no behavior change.

  • css/CSSParser.cpp:

(WebCore::isValidKeywordPropertyAndValue):

  • html/parser/HTMLPreloadScanner.cpp:

(WebCore::TokenPreloadScanner::StartTagScanner::processAttributes):

  • page/Page.cpp:

(WebCore::Page::setPageScaleFactor):

  • platform/graphics/WidthIterator.cpp:

(WebCore::WidthIterator::glyphDataForCharacter):

  • rendering/svg/SVGInlineTextBox.cpp:

(WebCore::SVGInlineTextBox::prepareGraphicsContextForTextPainting):

5:19 AM Changeset in webkit [174947] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.6/Source/WebKit2

Merge r174204 - Minor bug in UIClient::exceededDatabaseQuota()
https://bugs.webkit.org/show_bug.cgi?id=137213

Patch by JinYoung Hur <hurims@gmail.com> on 2014-10-02
Reviewed by Anders Carlsson.

Make sure not to call the completion handler twice if exceededDatabaseQuota is null.

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetPageUIClient):

5:11 AM Changeset in webkit [174946] by Manuel Rego Casasnovas
  • 4 edits
    2 adds in trunk

ASSERTION FAILED: !gridWasPopulated() in WebCore::RenderGrid::placeItemsOnGrid
https://bugs.webkit.org/show_bug.cgi?id=136939

Reviewed by Darin Adler.

Source/WebCore:

In some particular situations computeIntrinsicLogicalWidths() is called
in the middle of layoutGridItems(). In these cases we do not need to
populate the grid again, so we should avoid calling placeItemsOnGrid().
In addition, we do not need to clean the grid either, as that will be
done later by layoutGridItems().

Test: fast/css-grid-layout/grid-was-populated-assert.html

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::computeIntrinsicLogicalWidths): Avoid calls to
placeItemsOnGrid() and clearGrid() if the grid was already populated.

  • rendering/RenderGrid.h: Move gridWasPopulated() header out of the

debug ifdefs.

LayoutTests:

Added a test case to reproduce the crash in debug mode.

  • fast/css-grid-layout/grid-was-populated-assert-expected.txt: Added.
  • fast/css-grid-layout/grid-was-populated-assert.html: Added.
4:13 AM Changeset in webkit [174945] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore

Merge r174142 - CSS JIT: Enable multiple stack references allocation by allocateUninitialized
https://bugs.webkit.org/show_bug.cgi?id=135293

Reviewed by Benjamin Poulain.

  • cssjit/StackAllocator.h:

(WebCore::StackAllocator::stackTop):

Add stackTop method to check references are allocated easily.

(WebCore::StackAllocator::allocateUninitialized):

4:11 AM Changeset in webkit [174944] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.6/Source/JavaScriptCore

Merge r174122 - Label some asserts as having security implications.
<https://webkit.org/b/137260>

Reviewed by Filip Pizlo.

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::handleAssertionFailure):

  • runtime/JSCell.h:

(JSC::jsCast):

  • runtime/StructureIDTable.h:

(JSC::StructureIDTable::get):

3:52 AM Changeset in webkit [174943] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.6/Source/JavaScriptCore

Merge r174091 - DFG HasStructureProperty codegen should use one fewer registers
https://bugs.webkit.org/show_bug.cgi?id=137235

Reviewed by Andreas Kling.

This was an obvious source of inefficiency and it was causing us to run out of registers on
x86-32.

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

3:46 AM Changeset in webkit [174942] by Carlos Garcia Campos
  • 5 edits in releases/WebKitGTK/webkit-2.6/Source/JavaScriptCore

Merge r174090 - Don't use GPRResult unless you're flushing registers and making a runtime function call
https://bugs.webkit.org/show_bug.cgi?id=137234

Rubber stamped by Andreas Kling.

Rename GPRResult to GPRFlushedCallResult, in an attempt to dissuade people from using it for results in the
general case.

Replace GPRResult with GPRTemporary in those places where it was causing bugs: particularly in GetDirectPname it
would cause us to spill the register that has the base, and the code was assuming (rightly) that the base and the
result were in different registers. That's a valid assumption when using GPRTemporary but not with GPRResult.
Also this code wasn't getting any benefit from using GPRResult because it wasn't doing flushRegisters().

I don't know how to test this. A test would require setting up a particularly awkward register allocation state.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileIn):
(JSC::DFG::SpeculativeJIT::compileNewFunctionNoCheck):
(JSC::DFG::SpeculativeJIT::compileNewFunctionExpression):
(JSC::DFG::SpeculativeJIT::compileRegExpExec):
(JSC::DFG::SpeculativeJIT::compileAllocatePropertyStorage):
(JSC::DFG::SpeculativeJIT::compileReallocatePropertyStorage):
(JSC::DFG::SpeculativeJIT::compileToStringOnCell):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::GPRFlushedCallResult::GPRFlushedCallResult):
(JSC::DFG::GPRFlushedCallResult2::GPRFlushedCallResult2):
(JSC::DFG::GPRResult::GPRResult): Deleted.
(JSC::DFG::GPRResult2::GPRResult2): Deleted.

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranch):
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompare):
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranch):
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompare):
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::speculateDoubleRepMachineInt):

3:30 AM Changeset in webkit [174941] by Carlos Garcia Campos
  • 27 edits in releases/WebKitGTK/webkit-2.6/Source

Merge r174094 - Web Inspector: InspectorValues should use references for out parameters
https://bugs.webkit.org/show_bug.cgi?id=137190

Reviewed by Joseph Pecoraro.

Source/JavaScriptCore:

Use references for out parameters in asType() and getType() methods.
Also convert to references in some miscellaneous code where we don't
expect or handle null values.

Remove variants of asObject() and asArray() that return a nullable RefPtr.
Now, client code is forced to use out parameters and check for cast failure.

Iron out control flow in some functions and fix some style issues.

  • inspector/InjectedScript.cpp:

(Inspector::InjectedScript::getFunctionDetails):
(Inspector::InjectedScript::wrapObject):
(Inspector::InjectedScript::wrapTable):

  • inspector/InjectedScriptBase.cpp:

(Inspector::InjectedScriptBase::makeEvalCall):

  • inspector/InjectedScriptManager.cpp:

(Inspector::InjectedScriptManager::injectedScriptForObjectId): Simplify control flow.

  • inspector/InspectorBackendDispatcher.cpp:

(Inspector::InspectorBackendDispatcher::dispatch):
(Inspector::getPropertyValue):
(Inspector::AsMethodBridges::asInteger):
(Inspector::AsMethodBridges::asDouble):
(Inspector::AsMethodBridges::asString):
(Inspector::AsMethodBridges::asBoolean):
(Inspector::AsMethodBridges::asObject):
(Inspector::AsMethodBridges::asArray):

  • inspector/InspectorProtocolTypes.h:

(Inspector::Protocol::BindingTraits<Protocol::Array<T>>::runtimeCast):
(Inspector::Protocol::BindingTraits<Protocol::Array<T>>::assertValueHasExpectedType):

  • inspector/InspectorValues.cpp: Use more by-reference out parameters. Add more spacing.

(Inspector::InspectorValue::asBoolean):
(Inspector::InspectorValue::asDouble):
(Inspector::InspectorValue::asInteger):
(Inspector::InspectorValue::asString):
(Inspector::InspectorValue::asValue):
(Inspector::InspectorValue::asObject):
(Inspector::InspectorValue::asArray):
(Inspector::InspectorValue::parseJSON):
(Inspector::InspectorValue::toJSONString):
(Inspector::InspectorValue::writeJSON):
(Inspector::InspectorBasicValue::asBoolean):
(Inspector::InspectorBasicValue::asDouble):
(Inspector::InspectorBasicValue::asInteger):
(Inspector::InspectorBasicValue::writeJSON):
(Inspector::InspectorString::asString):
(Inspector::InspectorString::writeJSON):
(Inspector::InspectorObjectBase::asObject):
(Inspector::InspectorObjectBase::openAccessors):
(Inspector::InspectorObjectBase::getBoolean):
(Inspector::InspectorObjectBase::getString):
(Inspector::InspectorObjectBase::getObject):
(Inspector::InspectorObjectBase::getArray):
(Inspector::InspectorObjectBase::writeJSON):
(Inspector::InspectorArrayBase::asArray):
(Inspector::InspectorArrayBase::writeJSON):

  • inspector/InspectorValues.h:
  • inspector/agents/InspectorDebuggerAgent.cpp:

(Inspector::InspectorDebuggerAgent::breakpointActionsFromProtocol):
(Inspector::InspectorDebuggerAgent::setBreakpointByUrl):
(Inspector::parseLocation):
(Inspector::InspectorDebuggerAgent::setBreakpoint):
(Inspector::InspectorDebuggerAgent::continueToLocation):
(Inspector::InspectorDebuggerAgent::didParseSource):

  • inspector/agents/InspectorRuntimeAgent.cpp:

(Inspector::InspectorRuntimeAgent::getRuntimeTypesForVariablesAtOffsets):

  • inspector/scripts/codegen/generate_protocol_types_implementation.py:

(ProtocolTypesImplementationGenerator):
(ProtocolTypesImplementationGenerator._generate_assertion_for_enum):

  • inspector/scripts/codegen/generator_templates.py:
  • inspector/scripts/tests/expected/type-requiring-runtime-casts.json-result:
  • replay/EncodedValue.cpp:

(JSC::EncodedValue::asObject):
(JSC::EncodedValue::asArray):
(JSC::EncodedValue::convertTo<bool>):
(JSC::EncodedValue::convertTo<double>):
(JSC::EncodedValue::convertTo<float>):
(JSC::EncodedValue::convertTo<int32_t>):
(JSC::EncodedValue::convertTo<int64_t>):
(JSC::EncodedValue::convertTo<uint32_t>):
(JSC::EncodedValue::convertTo<uint64_t>):
(JSC::EncodedValue::convertTo<String>):

Source/WebCore:

Clean up some call sites to explicitly check for cast success, and simplify
some exceptional control flows.

No new tests, no behavior changed.

  • inspector/CommandLineAPIHost.cpp:

(WebCore::CommandLineAPIHost::inspectImpl):

  • inspector/InspectorCSSAgent.cpp:

(WebCore::computePseudoClassMask):

  • inspector/InspectorDOMAgent.cpp:

(WebCore::parseColor):
(WebCore::parseConfigColor):
(WebCore::parseQuad):
(WebCore::InspectorDOMAgent::performSearch):
(WebCore::InspectorDOMAgent::highlightConfigFromInspectorObject):
(WebCore::InspectorDOMAgent::innerHighlightQuad):
(WebCore::InspectorDOMAgent::highlightFrame):

  • inspector/InspectorDOMStorageAgent.cpp:

(WebCore::InspectorDOMStorageAgent::findStorageArea):

  • inspector/InspectorIndexedDBAgent.cpp: Use NeverDestroyed instead of DEPRECATED_DEFINE_STATIC_LOCAL.
  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::didClearWindowObjectInWorld):

  • inspector/InspectorReplayAgent.cpp:

(WebCore::InspectorReplayAgent::replayToPosition):

  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::willSendRequest):

  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyle::styleWithProperties):

  • inspector/InspectorStyleSheet.h:

(WebCore::InspectorCSSId::InspectorCSSId):

  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::startFromConsole):
(WebCore::InspectorTimelineAgent::stopFromConsole):

  • inspector/InspectorWorkerAgent.cpp:
3:18 AM Changeset in webkit [174940] by Dániel Bátyai
  • 13 edits
    4 adds in trunk

Fix FTL Native Inlining for EFL
https://bugs.webkit.org/show_bug.cgi?id=137774

Reviewed by Michael Saboff.

.:

Updated CMake for FTL Native Inlining.

  • CMakeLists.txt:
  • Source/cmake/FindClang.cmake: Added.
  • Source/cmake/OptionsEfl.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

Added required functionality for Native Inlining to EFL, and fixed a bug/typo in the original code,
which caused incorrect memory allocation.

  • CMakeLists.txt:
  • create-llvm-ir-from-source-file.py: Added.
  • create-symbol-table-index.py: Added.
  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::lower):
(JSC::FTL::LowerDFGToLLVM::getModuleByPathForSymbol):
(JSC::FTL::LowerDFGToLLVM::exitValueForAvailability):
(JSC::FTL::LowerDFGToLLVM::exitValueForNode):

  • runtime/BundlePath.cpp: Added.

(JSC::bundlePath):

  • runtime/JSDataViewPrototype.cpp:

(JSC::getData):
(JSC::setData):

  • runtime/MathObject.cpp:

Source/WTF:

Updated guard definition for Native Inlining, and added an attribute define for marking functions
that should not be left out of the symbol table.

  • wtf/Platform.h:

Tools:

Added Clang as an optional module to jhbuild.

  • efl/jhbuild.modules:
3:07 AM Changeset in webkit [174939] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.6/Source/WebInspectorUI

Merge r173792 - Web Inspector: Option+Click on CSS url(...) should jump to resource view
https://bugs.webkit.org/show_bug.cgi?id=136965

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-09-20
Reviewed by Timothy Hatcher.

  • UserInterface/Views/CodeMirrorAdditions.js:

When parsing CSS url(...) tokens, the contents of url(...)
are a "string" type, not "atom".

3:07 AM Changeset in webkit [174938] by Carlos Garcia Campos
  • 5 edits in releases/WebKitGTK/webkit-2.6/Source

Merge r173805 - Web Inspector: fix TypeSet hierarchy in TypeTokenView
https://bugs.webkit.org/show_bug.cgi?id=136982

Reviewed by Joseph Pecoraro.

Source/JavaScriptCore:

TypeSet was computing the set of type booleans in the Inspector::Protocol::Runtime::TypeSet
object incorrectly because it was calling TypeSet::doesTypeConformTo(T) which checks if the
type set has only been of type T. It now checks '(m_seenTypes & T) != TypeNothing' to see
if type T is in the set of seen types, but not the entire set itself.

  • runtime/TypeSet.cpp:

(JSC::TypeSet::inspectorTypeSet):

Source/WebInspectorUI:

The protocol object representation of TypeSet was being computed
incorrectly in JSC::TypeSet. This patch fixes that problem
and also asserts that the type information that the Web Inspector
receives is not empty.

  • UserInterface/Models/TypeSet.js:

(WebInspector.TypeSet):

  • UserInterface/Views/TypeTokenView.js:

(WebInspector.TypeTokenView.prototype._displayTypeName):

2:41 AM Changeset in webkit [174937] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.6

Merge r174812 - REGRESSION(CMake): [GTK] WebKitSettings:enable-smooth-scrolling does nothing
https://bugs.webkit.org/show_bug.cgi?id=137781

Reviewed by Martin Robinson.

We used to enable smooth scrolling unconditionally in autotools
(via WebKitFeatures.m4), but since the switch to CMake it's
unconditionally disabled, so changing the setting doesn't have any
effect.

  • Source/cmake/OptionsGTK.cmake: Enable smooth scrolling.
2:18 AM Changeset in webkit [174936] by Carlos Garcia Campos
  • 7 edits in releases/WebKitGTK/webkit-2.6/Source

Merge r174818 - [GLIB] Add API to GMainLoopSource to schedule sources after a delay in microseconds
https://bugs.webkit.org/show_bug.cgi?id=137782

Reviewed by Sergio Villar Senin.

Source/WebCore:

  • platform/gtk/SharedTimerGtk.cpp:

(WebCore::setSharedTimerFireInterval): Use microseconds instead of
milliseconds.

Source/WebKit2:

  • WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:

(WebKit::LayerTreeHostGtk::layerFlushTimerFired): Use microseconds
instead of milliseconds.

Source/WTF:

In some cases when we have a double with the time in seconds, the
conversion to milliseconds ends up truncating the value to 0, and
the source scheduled immediately.

  • wtf/gobject/GMainLoopSource.cpp:

(WTF::createMicrosecondsTimeoutSource): Use a custom timeout
source that handles the interval in microseconds instead of milliseconds.
(WTF::GMainLoopSource::scheduleAfterDelay): Use MicrosecondsTimeoutSource.
(WTF::GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy): Ditto.

  • wtf/gobject/GMainLoopSource.h:
2:13 AM Changeset in webkit [174935] by Carlos Garcia Campos
  • 5 edits in releases/WebKitGTK/webkit-2.6

Merge r174926 - [GTK] Test TestWebKitAPI/WebKit2Gtk/TestInspectorServer fails
https://bugs.webkit.org/show_bug.cgi?id=132044

Reviewed by Brian Burg.

Source/WebInspectorUI:

Make sure Protocol/InspectorFrontendHostStub.js is loaded before
Base/Platform.js, because Platform uses the InspectorFrontendHost
object.

  • UserInterface/Main.html:

Tools:

  • TestWebKitAPI/Tests/WebKit2Gtk/TestInspectorServer.cpp:

(openRemoteDebuggingSession): Remove trailing slash when
concatenating base inspector URL with the page, because the
inspector returns the relative paths with a leading slash.

2:08 AM Changeset in webkit [174934] by Carlos Garcia Campos
  • 5 edits in releases/WebKitGTK/webkit-2.6/Source/JavaScriptCore

Merge r174025, r174121, r174749, r174856, r174899 - DFG shouldn't insert store barriers when it has it on good authority that we're not storing a cell
https://bugs.webkit.org/show_bug.cgi?id=137161

Reviewed by Mark Hahnenberg.

This looks like a 1% Octane speed-up.

  • bytecode/SpeculatedType.h:

(JSC::isNotCellSpeculation):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::insertStoreBarrier):
(JSC::DFG::FixupPhase::insertCheck):

  • dfg/DFGNode.h:

(JSC::DFG::Node::shouldSpeculateNotCell):

REGRESSION (r174025): Invalid cast in JSC::asString
https://bugs.webkit.org/show_bug.cgi?id=137224

Reviewed by Geoffrey Garen.

Store barrier elision in fixup depends on checking the type of the value being stored. It's very important that
when we speak of "the value being stored" we are really referring to the right value.

The bug here was that the PutClosureVar case was assuming that child2 is the value being stored. It's actually
child3. So we were incorrectly removing all barriers from PutClosureVar.

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

REGRESSION(r174025): remote inspector crashes frequently when executing inspector frontend's JavaScript
https://bugs.webkit.org/show_bug.cgi?id=137758

Rubber stamped by Filip Pizlo.

Reverted r174025 for just PutByOffset Nodes.

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

Web Process crash when starting the web inspector after r174025.
<https://webkit.org/b/137340>

Reviewed by Filip Pizlo.

After r174025, we can generate a bad graph in the DFG fixup phase like so:

102:<!0:-> StoreBarrier(Check:KnownCell:@19, ..., bc#44)
60:<!0:-> PutStructure(Check:KnownCell:@19, ..., bc#44)
103:<!0:-> Check(Check:NotCell:@54, ..., bc#44)

-- PutByOffset's StoreBarrier has been elided and replaced
with a speculation check which can OSR exit.

61:<!0:-> PutByOffset(Check:KnownCell:@19, ..., bc#44)

As a result, the structure change will get executed even if we end up OSR
exiting before the PutByOffset. In the baseline JIT code, the structure now
erroneously tells the put operation that there is a value in that property
slot when it is actually uninitialized (hence, the crash).

The fix is to insert the Check at the earliest point possible:

  1. If the checked node is in the same bytecode as the PutByOffset, then the earliest point where we can insert the Check is right after the checked node.
  1. If the checked node is from a preceding bytecode (before the PutByOffset), then the earliest point where we can insert the Check is at the start of the current bytecode.

Also reverted the workaround from r174749: https://webkit.org/b/137758.

Benchmark results appear to be a wash on aggregate.

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::indexOfNode):
(JSC::DFG::FixupPhase::indexOfFirstNodeOfExitOrigin):
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::insertCheck):

  • dfg/DFGInsertionSet.h:

(JSC::DFG::InsertionSet::insertOutOfOrder):
(JSC::DFG::InsertionSet::insertOutOfOrderNode):

[Follow up] Web Process crash when starting the web inspector after r174025.
<https://webkit.org/b/137340>

Reviewed by Geoffrey Garen.

Applied Geoff's feedback to clean up some code for better clarity after
r174856.

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::insertCheck):

  • dfg/DFGInsertionSet.h:

(JSC::DFG::InsertionSet::insertOutOfOrder):

1:57 AM Changeset in webkit [174933] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Move JSC::MacroAssemblerX86Common::s_sse2CheckState definition to MacroAssemblerX86Common.cpp.
<https://webkit.org/b/137807>

Patch by Milan Crha <mcrha@redhat.com> on 2014-10-21
Reviewed by Csaba Osztrogonác.

  • assembler/MacroAssemblerX86Common.cpp:
  • jit/JIT.cpp:
1:35 AM Changeset in webkit [174932] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore

Merge r174929 - [GTK] Several labels are white instead of black
https://bugs.webkit.org/show_bug.cgi?id=137803

Reviewed by Martin Robinson.

Recent GTK+ versions require to explicitly set the state before
getting a color.

  • rendering/RenderThemeGtk.cpp:

(WebCore::styleColor): Helper function to get a color from a
GtkStylecontext that explicitly sets the state before getting the color.
(WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor): Use styleColor().
(WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor): Ditto.
(WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor): Ditto.
(WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor): Ditto.
(WebCore::RenderThemeGtk::platformActiveListBoxSelectionBackgroundColor): Ditto.
(WebCore::RenderThemeGtk::platformInactiveListBoxSelectionBackgroundColor): Ditto.
(WebCore::RenderThemeGtk::platformActiveListBoxSelectionForegroundColor): Ditto.
(WebCore::RenderThemeGtk::platformInactiveListBoxSelectionForegroundColor): Ditto.
(WebCore::RenderThemeGtk::systemColor): Ditto.

1:24 AM Changeset in webkit [174931] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

[Cairo] Make dashPattern, dotPattern in GraphicsContext::setPlatformStrokeStyle() const
https://bugs.webkit.org/show_bug.cgi?id=137912

Reviewed by Carlos Garcia Campos.

  • platform/graphics/cairo/GraphicsContextCairo.cpp:

(WebCore::GraphicsContext::setPlatformStrokeStyle): Make the two static variables
constants since their value doesn't change after initialization.

1:05 AM Changeset in webkit [174930] by Carlos Garcia Campos
  • 4 edits in trunk

Change the default TLS errors policy to WEBKIT_TLS_ERRORS_POLICY_FAIL
https://bugs.webkit.org/show_bug.cgi?id=137832

Patch by Michael Catanzaro <Michael Catanzaro> on 2014-10-20
Reviewed by Carlos Garcia Campos.

Source/WebKit2:

Too many general-purpose browsers that really need this policy
are not selecting it, so let's do so for them.

  • UIProcess/API/gtk/WebKitWebContext.cpp:

(createDefaultWebContext):

Tools:

Ensure each test sets the TLS errors policy that it really needs.
Have each test except testTLSErrorsPolicy stash and restore the original
TLS errors policy. Update testTLSErrorsPolicy to account for the new
default policy.

  • TestWebKitAPI/Tests/WebKit2Gtk/TestSSL.cpp:

(testSSL):
(testInsecureContent):
(testTLSErrorsPolicy):
(testTLSErrorsRedirect):
(testTLSErrorsHTTPAuth):
(testLoadFailedWithTLSErrors):
(beforeAll):

12:46 AM Changeset in webkit [174929] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebCore

[GTK] Several labels are white instead of black
https://bugs.webkit.org/show_bug.cgi?id=137803

Reviewed by Martin Robinson.

Recent GTK+ versions require to explicitly set the state before
getting a color.

  • rendering/RenderThemeGtk.cpp:

(WebCore::styleColor): Helper function to get a color from a
GtkStylecontext that explicitly sets the state before getting the color.
(WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor): Use styleColor().
(WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor): Ditto.
(WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor): Ditto.
(WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor): Ditto.
(WebCore::RenderThemeGtk::platformActiveListBoxSelectionBackgroundColor): Ditto.
(WebCore::RenderThemeGtk::platformInactiveListBoxSelectionBackgroundColor): Ditto.
(WebCore::RenderThemeGtk::platformActiveListBoxSelectionForegroundColor): Ditto.
(WebCore::RenderThemeGtk::platformInactiveListBoxSelectionForegroundColor): Ditto.
(WebCore::RenderThemeGtk::systemColor): Ditto.

12:41 AM Changeset in webkit [174928] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

Unreviewed. Unskip inspector server unit tests.

They should pass now.

  • Scripts/run-gtk-tests:

(TestRunner):

12:35 AM Changeset in webkit [174927] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[SOUP] Disable SSLv3
https://bugs.webkit.org/show_bug.cgi?id=137859

Patch by Michael Catanzaro <Michael Catanzaro> on 2014-10-21
Reviewed by Carlos Garcia Campos.

Set G_TLS_GNUTLS_PRIORITY if unset.

  • NetworkProcess/EntryPoint/unix/NetworkProcessMain.cpp:

(main):

  • WebProcess/EntryPoint/unix/WebProcessMain.cpp:

(main):

12:32 AM Changeset in webkit [174926] by Carlos Garcia Campos
  • 4 edits in trunk

[GTK] Test TestWebKitAPI/WebKit2Gtk/TestInspectorServer fails
https://bugs.webkit.org/show_bug.cgi?id=132044

Reviewed by Brian Burg.

Source/WebInspectorUI:

Make sure Protocol/InspectorFrontendHostStub.js is loaded before
Base/Platform.js, because Platform uses the InspectorFrontendHost
object.

  • UserInterface/Main.html:

Tools:

  • TestWebKitAPI/Tests/WebKit2Gtk/TestInspectorServer.cpp:

(openRemoteDebuggingSession): Remove trailing slash when
concatenating base inspector URL with the page, because the
inspector returns the relative paths with a leading slash.

12:04 AM Changeset in webkit [174925] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL][WK2] Minibrowser : Add support for Case sensitive and word start search
https://bugs.webkit.org/show_bug.cgi?id=137023

Patch by Tanay C <tanay.c@samsung.com> on 2014-10-20
Reviewed by Gyuyoung Kim.

  • MiniBrowser/efl/main.c: Added functionality to support case sensitive and word start search

(search_box_show): Modified.
(search_box_hide): Modified.
(on_search_field_activated): Modified.
(on_search_backward_button_clicked): Modified.
(on_search_forward_button_clicked): Modified.
(on_search_case_option_changed): Added.
(on_search_word_start_option_changed): Added.
(window_create): Modified.

Note: See TracTimeline for information about the timeline view.