⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Jun 27, 2015:

8:47 PM Changeset in webkit [186041] by fpizlo@apple.com
  • 4 edits in trunk/PerformanceTests

[JetStream] Raise the percentile of mandreel-latency and splay-latency
https://bugs.webkit.org/show_bug.cgi?id=146378

Reviewed by Mark Lam.

The current percentile is 95%. When I looked at the sample lists in our GC, it was
clear that the worst 5% samples completely amortize our GC pauses. Our GC pauses can
be quite bad. Clearly, splay-latency is meant to test whether we have an incremental
GC that ensures that you don't have bad worst-case pauses. But 95% is too small,
because it doesn't really capture those pauses. Raising the percentile to above 99%
appears to do the trick. 99.5% or more seems like a good bet. The trade-off there is
just that if we set it too high, then we won't have enough statistics. Doing this very
clearly rewards GCs that are incremental, and punishes GCs that aren't (like ours).
That's what we want, since in the future we want to use this test to guide any
improvements to the worst-case performance of our GC.

The way that the percentile is selected will also affect mandreel-latency. That's a
good thing, because 95% is probably too low for that test as well. That test ends up
with >10k samples. The goal of using 95% in the first place was to get enough samples
to have a stable average. But if we have >10k samples, we can push that percentile up
much higher and still get good statistics while achieving the effect we want - i.e.
getting the worst case.

I don't think that we need to do the same thing for cdjs. That test only takes 200
samples, so 95% means we report the average of the worst 10 samples. That's probably
good enough.

  • JetStream/Octane2/base.js: Raise the percentile as described above.

(BenchmarkSuite.prototype.RunSingleBenchmark):

  • JetStream/Reference.js: Tweak the reference times to bring the latency tests closer to 100ish on my machine.
  • JetStream/create.rb: Bump the version.
8:29 PM Changeset in webkit [186040] by ddkilzer@apple.com
  • 2 edits in trunk/LayoutTests

fast/canvas/webgl/tex-*.html flakily timeout on Mavericks Debug WK1

  • platform/mac-wk1/TestExpectations: Change "Slow" to

"Pass Timeout" since the tests flakily time out and fail:

  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba4444.html
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba5551.html
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-video.html
  • fast/canvas/webgl/tex-image-and-uniform-binding-bugs.html
8:29 PM Changeset in webkit [186039] by ddkilzer@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION (r186038): accessibility/aria-roledescription.html fails on Windows

  • platform/win/TestExpectations: Mark as failing on Windows:
  • accessibility/aria-roledescription.html
4:02 PM Changeset in webkit [186038] by Chris Fleizach
  • 7 edits
    2 adds in trunk

AX: implement @aria-roledescription
https://bugs.webkit.org/show_bug.cgi?id=146274

Reviewed by Darin Adler.

Source/WebCore:

Add support for aria-roledescription.

Test: accessibility/aria-roledescription.html

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::hasHighlighting):
(WebCore::AccessibilityObject::roleDescription):
(WebCore::nodeHasPresentationRole):

  • accessibility/AccessibilityObject.h:
  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper _accessibilityMaxValue]):
(-[WebAccessibilityObjectWrapper accessibilityRoleDescription]):
(-[WebAccessibilityObjectWrapper accessibilityLabel]):

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper roleDescription]):

LayoutTests:

  • accessibility/aria-roledescription-expected.txt: Added.
  • accessibility/aria-roledescription.html: Added.
3:53 PM Changeset in webkit [186037] by Darin Adler
  • 6 edits in trunk/Source/JavaScriptCore

Make converting JSString to StringView idiomatically safe
https://bugs.webkit.org/show_bug.cgi?id=146387

Reviewed by Anders Carlsson.

  • jsc.cpp:

(functionPrint): Add explicit call to SafeView::get, needed since there
is no StringView temporary.
(functionDebug): Ditto.

  • runtime/ArrayPrototype.cpp:

(JSC::holesMustForwardToPrototype): Refactored into helper function.
(JSC::join): Refactored so that StringView is a function argument, making
the lifetime simpler.
(JSC::arrayProtoFuncJoin): Ditto.
(JSC::arrayProtoFuncReverse): Use new holesMustForwardToPrototype helper.

  • runtime/JSGlobalObjectFunctions.cpp:

(JSC::encode): Add explicit call to SafeView::get.

  • runtime/JSString.h: Moved declarations of functions to the top of the

file instead of mixing them in with the function definitions. Changed
return type of the view function to return a JSString::SafeView so that
the JSString's lifetime will last as long as the StringView does in
typical coding idioms.
(JSC::JSString::getIndex): Use unsafeView so we can index into the
view; could also have used view.get but here in this class this seems fine.
(JSC::JSRopeString::unsafeView): Renamed existing view function to this.
(JSC::JSString::unsafeView): Ditto.
(JSC::JSString::SafeView::SafeView): Contains reference to an ExecState
and a JSString. The ExecState is needed to create the StringView, and the
JSString needs to be kept alive as long as the StringView is.
(JSC::JSString::SafeView::operator StringView): Call unsafeView.
(JSC::JSString::SafeView::get): Convenience for when we want to call
StringView member functions.
(JSC::JSString::view): Added. Returns a SafeView.

  • runtime/StringPrototype.cpp:

(JSC::stringProtoFuncIndexOf): Add explicit call to SafeView::get.

3:52 PM Changeset in webkit [186036] by Darin Adler
  • 3 edits in trunk/Source/WebCore

Fix the build.

  • platform/network/cf/ResourceErrorCF.cpp: (WebCore::ResourceError::cfError): Take out log statement. Add FIXME comment that explains part of the reason we may get null here.
  • platform/network/mac/ResourceErrorMac.mm: (WebCore::createNSErrorFromResourceErrorBase): Ditto.
2:38 PM Changeset in webkit [186035] by ddkilzer@apple.com
  • 3 edits in trunk/Source/WebCore

Crash in WebCore::ResourceError::cfError() after provisional load failed
<http://webkit.org/b/146384>

Reviewed by Darin Adler.

This is a speculative fix based on the crashing stack.

  • platform/network/cf/ResourceErrorCF.cpp:

(WebCore::ResourceError::cfError): Add NULL check.

  • platform/network/mac/ResourceErrorMac.mm:

(WebCore::createNSErrorFromResourceErrorBase): Add nil check in
case we ever turn off USE(CFNETWORK) for iOS.

2:37 PM Changeset in webkit [186034] by mmaxfield@apple.com
  • 3 edits in trunk/LayoutTests

REGRESSION (r186001): fast/text/han-generic-font-families.html always fails on Yosemite
https://bugs.webkit.org/show_bug.cgi?id=146385

Unreviewed.

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2015-06-27

  • platform/mac-yosemite/fast/text/han-generic-font-families-expected.html:
  • platform/mac/TestExpectations:
2:31 PM Changeset in webkit [186033] by rniwa@webkit.org
  • 7 edits in trunk/Websites/perf.webkit.org

build-requests should use conform to JSON API format
https://bugs.webkit.org/show_bug.cgi?id=146375

Reviewed by Stephanie Lewis.

Instead of returning single dictionary that maps root set id to a dictionary of repository names
to revisions, timestamps, simply return root sets and roots "rows" or "objects" as defined in
JSON API (http://jsonapi.org/). This API change makes it easier to resolve the bug 146374 and
matches what we do in /api/test-groups.

Also add the support for /api/build-requests/?id=<id> to fetch the build request with <id>.
This is useful for debugging purposes.

  • public/api/build-requests.php:

(main): Added the support for $_GETid. Also return "rootSets" and "roots".
(update_builds): Extracted from main.

  • public/include/build-requests-fetcher.php:

(BuildRequestFetcher::fetch_request): Added. Used for /api/build-requests/?id=<id>.
(BuildRequestFetcher::results_internal): Always call fetch_roots_for_set_if_needed.
(BuildRequestFetcher::fetch_roots_for_set_if_needed): Renamed from fetch_roots_for_set.
Moved the logic to exit early when the root set had already been fetched here.

  • public/v2/analysis.js:

(App.TestGroup._fetchTestResults): Fixed the bug that test groups without any successful results
won't be shown.

  • tools/pull-os-versions.py:

(main):
(setup_auth): Moved to util.py

  • tools/sync-with-buildbot.py:

(main): Replaced a bunch of perf dashboard related options by --server-config-json.
(update_and_fetch_build_requests): No longer takes build_request_auth since that's now taken care
of by setup_auth.
(organize_root_sets_by_id_and_repository_names): Added. Builds the old rootsSets directory based
on "roots" and "rootSets" dictionaries returned by /api/build-requests.
(config_for_request): Fixed a bug that the script blows up when the build request is missing
the repository specified in the configuration. This tolerance is necessary when a new repository
dependency is added but we want to run A/B tests for old builds without the dependency.
(fetch_json): No longer takes auth.

  • tools/util.py:

(setup_auth): Moved from pull-os-versions.py to be shared with sync-with-buildbot.py.

2:11 PM Changeset in webkit [186032] by eric.carlson@apple.com
  • 4 edits in trunk/Source/WebCore

[Mac] Only flag a video element as eligible for auto-play to AppleTV one time
https://bugs.webkit.org/show_bug.cgi?id=146386

Reviewed by Brent Fulgham.

  • Modules/mediasession/WebMediaSessionManager.cpp:

(WebCore::WebMediaSessionManager::removeAllPlaybackTargetPickerClients): Drive-by fix - early

return when there are no clients.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::pendingActionTimerFired): Set m_failedToPlayToWirelessTarget if the

media engine is still unable to play to the wireless target.

(WebCore::HTMLMediaElement::prepareForLoad): Clear m_failedToPlayToWirelessTarget.
(WebCore::HTMLMediaElement::mediaState): Don't set the ExternalDeviceAutoPlayCandidate flag

if m_failedToPlayToWirelessTarget is true.

  • html/HTMLMediaElement.h:
10:59 AM Changeset in webkit [186031] by ddkilzer@apple.com
  • 1 edit
    3 adds in trunk/LayoutTests

REGRESSION (r186029): fast/text/justify-ideograph-{complex,simple,vertical}.html fail on Yosemite

The results replaced in r186029 were the Yosemite results, so
Yosemite started failing when they were rebaselined for
El Capitan.

  • platform/mac-yosemite/fast/text/justify-ideograph-complex-expected.txt: Copied from platform/mac/fast/text/justify-ideograph-complex-expected.txt in r186028.
  • platform/mac-yosemite/fast/text/justify-ideograph-simple-expected.txt: Copied from platform/mac/fast/text/justify-ideograph-simple-expected.txt in r186028.
  • platform/mac-yosemite/fast/text/justify-ideograph-vertical-expected.txt: Copied from platform/mac/fast/text/justify-ideograph-vertical-expected.txt in r186028.
10:04 AM Changeset in webkit [186030] by ddkilzer@apple.com
  • 1 edit
    1 add in trunk/LayoutTests

Add missing image results for platform/mac/platform/mac/fast/text/vertical-surrogate-pair.html

  • platform/mac/platform/mac/fast/text/vertical-surrogate-pair-expected.png: Added.
10:04 AM Changeset in webkit [186029] by ddkilzer@apple.com
  • 7 edits
    1 add in trunk/LayoutTests

Rebaseline El Capitan results for fast/text/justify-ideograph-{complex,simple,vertical}.html

  • platform/mac/TestExpectations: Removed expectations.
  • platform/mac/fast/text/justify-ideograph-complex-expected.png: Updated.
  • platform/mac/fast/text/justify-ideograph-complex-expected.txt: Updated.
  • platform/mac/fast/text/justify-ideograph-simple-expected.png: Updated.
  • platform/mac/fast/text/justify-ideograph-simple-expected.txt: Updated.
  • platform/mac/fast/text/justify-ideograph-vertical-expected.png: Added.
  • platform/mac/fast/text/justify-ideograph-vertical-expected.txt: Updated.
10:00 AM Changeset in webkit [186028] by ddkilzer@apple.com
  • 2 edits in trunk/LayoutTests

Document more slow fast/canvas/webgl tests on Mavericks Debug WK1

See Flakiness Dashboard:
<http://webkit-test-results.appspot.com/dashboards/flakiness_dashboard.html#showAllRuns=true&tests=fast%2Fcanvas%2Fwebgl%2Ftex-image-and-sub-image-2d-with-video-rgba4444.html>
<http://webkit-test-results.appspot.com/dashboards/flakiness_dashboard.html#showAllRuns=true&tests=fast%2Fcanvas%2Fwebgl%2Ftex-image-and-sub-image-2d-with-video-rgba5551.html>

  • platform/mac-wk1/TestExpectations: Add slow expectations for:
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba4444.html
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba5551.html
8:54 AM Changeset in webkit [186027] by ddkilzer@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION (r186001): fast/text/han-generic-font-families.html always fails on Yosemite

Fix tracked by: <http://webkit.org/b/146385>

  • platform/mac/TestExpectations: Mark as failing on Yosemite:
  • fast/text/han-generic-font-families.html
8:54 AM Changeset in webkit [186026] by ddkilzer@apple.com
  • 2 edits in trunk/LayoutTests

editing/undo/remove-css-property-and-remove-style.html is flaky on Debug WK2

As seen on Flakiness Dashboard:
<http://webkit-test-results.appspot.com/dashboards/flakiness_dashboard.html#showAllRuns=true&tests=editing%2Fundo%2Fremove-css-property-and-remove-style.html>

  • platform/mac-wk2/TestExpectations: Add:
  • editing/undo/remove-css-property-and-remove-style.html
1:52 AM Changeset in webkit [186025] by Antti Koivisto
  • 6 edits in trunk/Source/WebKit2

Make NetworkCache::traverse faster
https://bugs.webkit.org/show_bug.cgi?id=146354

Reviewed by Anders Carlsson.

  • NetworkProcess/cache/NetworkCacheIOChannel.h:

(WebKit::NetworkCache::IOChannel::path):
(WebKit::NetworkCache::IOChannel::type):

  • NetworkProcess/cache/NetworkCacheIOChannelCocoa.mm:

(WebKit::NetworkCache::IOChannel::open):
(WebKit::NetworkCache::IOChannel::read):
(WebKit::NetworkCache::IOChannel::write):
(WebKit::NetworkCache::IOChannel::readSync): Deleted.

Not needed anymore.

  • NetworkProcess/cache/NetworkCacheStorage.cpp:

(WebKit::NetworkCache::Storage::WriteOperation::WriteOperation):
(WebKit::NetworkCache::Storage::TraverseOperation::TraverseOperation):

Add TraverseOperation, similar to Read/Write.

(WebKit::NetworkCache::Storage::open):
(WebKit::NetworkCache::Storage::traverse):

Use async I/O.
Use condition variable to allow maximum 5 parallel file reads.

  • NetworkProcess/cache/NetworkCacheStorage.h:
1:04 AM Changeset in webkit [186024] by youenn.fablet@crf.canon.fr
  • 6 edits in trunk

[Streams API] Implement ReadableStreamController.desiredSize property
https://bugs.webkit.org/show_bug.cgi?id=146311

Reviewed by Darin Adler.

Source/WebCore:

Covered by rebased tests.

  • Modules/streams/ReadableStreamController.h: Adding desiredSize getter.

(WebCore::ReadableStreamController::desiredSize): Ditto.

  • Modules/streams/ReadableStreamController.idl: Added desiredSize attribute.

LayoutTests:

  • streams/reference-implementation/count-queuing-strategy-expected.txt:
  • streams/reference-implementation/readable-stream-expected.txt:
12:45 AM Changeset in webkit [186023] by Carlos Garcia Campos
  • 6 edits
    2 adds in trunk

[GTK][SOUP] Implement WebCore::PublicSuffix for soup and enable PUBLIC_SUFFIX_LIST for GTK+
https://bugs.webkit.org/show_bug.cgi?id=146318

Reviewed by Sergio Villar Senin.

.:

Enable PUBLIC_SUFFIX_LIST for GTK+.

  • Source/cmake/OptionsGTK.cmake:

Source/WebCore:

This is covered by unit tests.

  • PlatformGTK.cmake:
  • platform/soup/PublicSuffixSoup.cpp: Added.

(WebCore::isPublicSuffix):
(WebCore::topPrivatelyControlledDomain):

Tools:

Copy mac PublicSuffix test to the common directory and add it to
the GTK+ build.

  • TestWebKitAPI/PlatformGTK.cmake:
  • TestWebKitAPI/Tests/WebCore/PublicSuffix.cpp: Added.

(TestWebKitAPI::TEST_F):

12:42 AM Changeset in webkit [186022] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

[SOUP] NetworkCache: Make NetworkProcess::clearDiskCache actually clear the the resources depending on the date
https://bugs.webkit.org/show_bug.cgi?id=146316

Reviewed by Sergio Villar Senin.

And make sure the completion handler is called, as well. This
functionality is already implemented in Storage::clear(), so we
just need to pass the time point and completion handler to Cache::clear().

  • NetworkProcess/soup/NetworkProcessSoup.cpp:

(WebKit::NetworkProcess::clearDiskCache):

Jun 26, 2015:

7:04 PM Changeset in webkit [186021] by mmaxfield@apple.com
  • 6 edits
    3 adds in trunk

[iOS] AppleGothic has been superseded by Apple SD Gothic Neo
https://bugs.webkit.org/show_bug.cgi?id=146372
<rdar://problem/21574004>

Reviewed by Dean Jackson.

Source/WebCore:

Test: fast/text/hangul-generic-font-families.html

  • page/mac/SettingsMac.mm:

(WebCore::Settings::initializeDefaultFontFamilies):

LayoutTests:

  • fast/text/hangul-generic-font-families.html: Added.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/ios-simulator/fast/text/hangul-generic-font-families-expected.html: Added.
  • platform/mac/fast/text/hangul-generic-font-families-expected.html: Added.
  • platform/win/TestExpectations:
6:43 PM Changeset in webkit [186020] by commit-queue@webkit.org
  • 15 edits
    3 adds in trunk

Supporting getStartDate and added tests
https://bugs.webkit.org/show_bug.cgi?id=145676
<rdar://problem/20876076>

Patch by Matt Daiter <mdaiter@apple.com> on 2015-06-26
Reviewed by Brent Fulgham.

Source/WebCore:

Test: http/tests/media/hls/video-controller-getStartDate.html

  • bindings/js/JSDOMBinding.cpp:

(WebCore::jsDateOrNaN):

  • bindings/js/JSDOMBinding.h:
  • bindings/scripts/CodeGeneratorJS.pm: Added features to return

NaN for Date

  • bindings/scripts/CodeGeneratorGObject.pm: Needed to add

type checking code for GObject (no date)
(NativeToJSValue):

  • bindings/scripts/IDLAttributes.txt:
  • html/HTMLMediaElement.cpp: Added getStartDate function

(WebCore::HTMLMediaElement::getStartDate):

  • html/HTMLMediaElement.h: Needed to add declarations
  • html/HTMLMediaElement.idl: Needed to modify for returning NaN
  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::getStartDate):

  • platform/graphics/MediaPlayer.h:
  • platform/graphics/MediaPlayerPrivate.h: Added in Mac-specific platform

(WebCore::MediaPlayerPrivateInterface::getStartDate):

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

(WebCore::MediaPlayerPrivateAVFoundationObjC::getStartDate):

LayoutTests:

  • http/tests/media/hls/video-controller-getStartDate-expected.txt: Added.
  • http/tests/media/hls/video-controller-getStartDate.html: Added.
  • http/tests/media/resources/hls/test-vod-date-time.m3u8: Added.
4:50 PM Changeset in webkit [186019] by Beth Dakin
  • 2 edits in trunk/Source/WebKit2

Rubber-stamped by Tim Horton.

As Dan pointed out in https://bugs.webkit.org/show_bug.cgi?id=146350 , this way of
getting the screen size was problematic on multiple counts. Fixed here by using
UIScreen.

  • UIProcess/WKImagePreviewViewController.mm:

(-[WKImagePreviewViewController initWithCGImage:]):

4:48 PM Changeset in webkit [186018] by Beth Dakin
  • 4 edits in trunk/Source

WebPage::getPositionInformation() should not copy an image that is larger than the
screen
https://bugs.webkit.org/show_bug.cgi?id=146367

Reviewed by Tim Horton.

Source/WebCore:

Export the rect version of this function too.

  • platform/graphics/GraphicsContext.h:

Source/WebKit2:

Maintain aspectRatio, but scale down the buffer size if the image is larger than
the screen.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::getPositionInformation):

4:46 PM Changeset in webkit [186017] by mark.lam@apple.com
  • 2 edits in trunk/Source/WebKit2

Re-instating the #import and assertion removed in r186014.
https://bugs.webkit.org/show_bug.cgi?id=146358

Not reviewed.

  • UIProcess/API/Cocoa/WKUserContentController.mm:
  • Speculative fix: should have used <wtf/MainThread.h> instead of <WTF/MainThread.h>.
4:33 PM Changeset in webkit [186016] by eric.carlson@apple.com
  • 4 edits in trunk/Source/WebCore

[Mac] Muted videos should not automatically play to AppleTV
https://bugs.webkit.org/show_bug.cgi?id=146366

Reviewed by Dean Jackson.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_initiallyMuted.
(WebCore::HTMLMediaElement::scheduleDelayedAction): Support CheckMediaState.
(WebCore::HTMLMediaElement::setReadyState): Set m_initiallyMuted to true if the element is

muted or the volume is less than 5%.

(WebCore::HTMLMediaElement::setMuted): Update media state asynchronously so multiple state

changes can be coalesced.

(WebCore::HTMLMediaElement::mediaPlayerEngineUpdated): Ditto.
(WebCore::HTMLMediaElement::setPlaying): Ditto.
(WebCore::HTMLMediaElement::mediaPlayerCurrentPlaybackTargetIsWirelessChanged): Ditto.
(WebCore::HTMLMediaElement::removeEventListener): Ditto.
(WebCore::HTMLMediaElement::enqueuePlaybackTargetAvailabilityChangedEvent): Ditto.
(WebCore::HTMLMediaElement::updateMediaState): Update after a timer when passed UpdateMediaState::Asynchronously.
(WebCore::HTMLMediaElement::mediaState): Don't set the ExternalDeviceAutoPlayCandidate flag if

m_initiallyMuted is true.

  • html/HTMLMediaElement.h:
  • html/HTMLMediaElementEnums.h:
3:55 PM Changeset in webkit [186015] by dino@apple.com
  • 2 edits in trunk/LayoutTests

No audio on animated page with the attached fixed layout epub
https://bugs.webkit.org/show_bug.cgi?id=146365
<rdar://problem/21360354>

Updated results.

  • media/audio-playback-restriction-play-expected.txt:
3:47 PM Changeset in webkit [186014] by mark.lam@apple.com
  • 2 edits in trunk/Source/WebKit2

Gardeining: remove an assertion and a #import to green the bot.
https://bugs.webkit.org/show_bug.cgi?id=146358

Not reviewed.

  • UIProcess/API/Cocoa/WKUserContentController.mm:
  • Not sure why the <WTF/MainThread.h> cannot be found on some bots, but I'm removing it (and the assertion that needed it) for now while I investigate further.
3:28 PM Changeset in webkit [186013] by peavo@outlook.com
  • 2 edits in trunk/WebKitLibraries

[WinCairo] Enable WEB_TIMING.
https://bugs.webkit.org/show_bug.cgi?id=146357

Reviewed by Brent Fulgham.

  • win/tools/vsprops/FeatureDefinesCairo.props:
3:18 PM Changeset in webkit [186012] by dbates@webkit.org
  • 9 edits
    2 deletes in trunk

Rolling out r184660
https://bugs.webkit.org/show_bug.cgi?id=145200

Reverting r184660 because it caused a regression.

Source/WebCore:

  • English.lproj/Localizable.strings:
  • html/TextFieldInputType.cpp:

(WebCore::TextFieldInputType::createAutoFillButton): Deleted.

  • platform/LocalizedStrings.cpp:

(WebCore::AXAutoFillButtonText): Deleted.

  • platform/LocalizedStrings.h:
  • platform/efl/LocalizedStringsEfl.cpp:

(WebCore::AXAutoFillButtonText): Deleted.

  • platform/gtk/LocalizedStringsGtk.cpp:

(WebCore::AXAutoFillButtonText): Deleted.

LayoutTests:

  • accessibility/input-auto-fill-button-expected.txt: Removed.
  • accessibility/input-auto-fill-button.html: Removed.
  • platform/win/TestExpectations:
3:18 PM Changeset in webkit [186011] by dbates@webkit.org
  • 6 edits
    7 deletes in trunk

Rolling out r185881
https://bugs.webkit.org/show_bug.cgi?id=146243
And
r185828
https://bugs.webkit.org/show_bug.cgi?id=145241

Reverting r185881 and r185828 because the latter caused a regression.

Source/WebCore:

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::accessibilityTextFieldDecorationHitTest): Deleted.
(WebCore::AccessibilityRenderObject::accessibilityHitTest): Deleted.

  • accessibility/AccessibilityRenderObject.h:

LayoutTests:

  • accessibility/hit-test-input-auto-fill-button-expected.txt: Removed.
  • accessibility/hit-test-input-auto-fill-button.html: Removed.
  • accessibility/hit-test-input-search-cancel-button-expected.txt: Removed.
  • accessibility/hit-test-input-search-cancel-button.html: Removed.
  • accessibility/input-search-cancel-button-expected.txt: Removed.
  • accessibility/input-search-cancel-button.html: Removed.
  • accessibility/resources/shouldBeAccessibleByCursor.js: Removed.
  • platform/win/TestExpectations:
  • platform/wk2/TestExpectations:
3:14 PM Changeset in webkit [186010] by mark.lam@apple.com
  • 2 edits in trunk/Source/WebKit2

ScriptMessageHandlerDelegate::didPostMessage() should reuse its JSContext instance.
https://bugs.webkit.org/show_bug.cgi?id=146358

Reviewed by Anders Carlsson.

Currently, ScriptMessageHandlerDelegate::didPostMessage() creates a new JSContext each
time it is called. This JSContext is used only once to deserialized a JSON object
and then destroyed. We will change ScriptMessageHandlerDelegate to cache the JSContext
and reuse it in all subsequent calls to didPostMessage().

Also added a @autoreleasepool scope in didPostMessage() so that transient ObjC objects
will be release sooner.

  • UIProcess/API/Cocoa/WKUserContentController.mm:
2:33 PM Changeset in webkit [186009] by dino@apple.com
  • 4 edits in trunk

No audio on animated page with the attached fixed layout epub
https://bugs.webkit.org/show_bug.cgi?id=146365
Source/WebCore:

Reviewed by Eric Carlson.

The new restriction RequireUserGestureForAudioRateChange conflicted
with existing clients who expected RequireUserGestureForRateChange
to allow autoplaying audio. Update the logic to ensure that
RequireUserGestureForRateChange covers all media when set to
false.

This may require a revisit once we're using RequireUserGestureForAudioRateChange
in production, because the global setting will trump that, and
most clients have the global setting to false. We'll need to come
up with a way to allow legacy clients to preserve their behaviour.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement): Only restrict audio
if RequireUserGestureForRateChange is also false.

LayoutTests:

<rdar://problem/21360354>

Reviewed by Eric Carlson.

The test to ensure audio needs a user gesture now needs to also
restrict the general case.

  • media/audio-playback-restriction-play.html:
2:24 PM Changeset in webkit [186008] by Beth Dakin
  • 5 edits
    2 adds in trunk/Source/WebKit2

Add support for image previews
https://bugs.webkit.org/show_bug.cgi?id=146350
-and corresponding-
rdar://problem/20640234

Reviewed by Tim Horton.

For images, use the actual image instead of a snapshot.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::getPositionInformation):

ViewController for image preview.

  • UIProcess/WKImagePreviewViewController.h: Added.
  • UIProcess/WKImagePreviewViewController.mm: Added.

(-[WKImagePreviewViewController loadView]):
(-[WKImagePreviewViewController initWithCGImage:]):
(-[WKImagePreviewViewController viewDidLayoutSubviews]):
(_scaleSizeWithinSize):

New enum and member variable to keep track of preview type.

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

Only apply the http restriction to non-image links since we can still preview the
image of a non-http image link.
(-[WKContentView gestureRecognizerShouldBegin:]):

Handle links and images.
(-[WKContentView previewViewControllerForPosition:inSourceView:]):

Return early for non-link previews.
(-[WKContentView commitPreviewViewController:]):

New files.

  • WebKit2.xcodeproj/project.pbxproj:

Just use the actual image in the PositionInformation for image elements rather
than taking a screen shot.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::getPositionInformation):

1:42 PM Changeset in webkit [186007] by andersca@apple.com
  • 9 edits
    1 delete in trunk/Source/WebCore

Get rid of ScrollbarThemeClient now that it's unused
https://bugs.webkit.org/show_bug.cgi?id=146327

Reviewed by Beth Dakin.

  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/Scrollbar.cpp:

(WebCore::Scrollbar::scrollbarOverlayStyle): Deleted.
(WebCore::Scrollbar::isScrollableAreaActive): Deleted.
(WebCore::Scrollbar::isScrollViewScrollbar): Deleted.
(WebCore::Scrollbar::root): Deleted.

  • platform/Scrollbar.h:

(WebCore::Scrollbar::isCustomScrollbar):
(WebCore::Scrollbar::orientation):
(WebCore::Scrollbar::value):
(WebCore::Scrollbar::currentPos):
(WebCore::Scrollbar::visibleSize):
(WebCore::Scrollbar::totalSize):
(WebCore::Scrollbar::maximum):
(WebCore::Scrollbar::controlSize):
(WebCore::Scrollbar::lineStep):
(WebCore::Scrollbar::pageStep):
(WebCore::Scrollbar::pressedPart):
(WebCore::Scrollbar::hoveredPart):
(WebCore::Scrollbar::enabled):
(WebCore::Scrollbar::styleChanged):
(WebCore::Scrollbar::isAlphaLocked):
(WebCore::Scrollbar::setIsAlphaLocked):

  • platform/ScrollbarTheme.h:
  • platform/ScrollbarThemeClient.h: Removed.

(WebCore::ScrollbarThemeClient::~ScrollbarThemeClient): Deleted.

  • platform/mac/ScrollbarThemeMac.mm:

(WebCore::ScrollbarThemeMac::updateScrollbarOverlayStyle):

  • rendering/RenderScrollbarTheme.cpp:
12:21 PM Changeset in webkit [186006] by Antti Koivisto
  • 3 edits
    1 add in trunk

Network process hangs fetching disk cache entries
https://bugs.webkit.org/show_bug.cgi?id=146348
<rdar://problem/21528072>

Reviewed by Anders Carlsson.

RunLoop::dispatch may deadlock if invoked with std::function that captures an object that calls RunLoop::dispatch in destructor.

  • wtf/RunLoop.cpp:

(WTF::RunLoop::performWork):

Don't reuse std::function variable in loop. We may end up destroying previously held std::function in assignment
while holding the runloop mutex. With this change std::function is always destroyed with mutex unlocked.

11:26 AM Changeset in webkit [186005] by Chris Dumez
  • 8 edits in trunk/Source/WebCore

Prevent new loads while in PageCache (or being added to PageCache)
https://bugs.webkit.org/show_bug.cgi?id=146299
<rdar://problem/21523788>

Reviewed by Darin Adler.

Generalize the change in r185337 to prevent new loads while in the
PageCache (or being added to the PageCache), instead of merely
preventing new loads in pagehide event handlers. We should never
have any pages that are still loading inside the PageCache.

The fix in r185337 was apparently insufficient to address the
problem so generalizing the check / policy will hopefully catch
more cases where content is able to start loads while being added
to the PageCache. This patch also removes some of the complexity
added in r185337 as it is no longer needed.

No new tests, already covered by:
http/tests/navigation/image-load-in-pagehide-handler.html
http/tests/navigation/subframe-pagehide-handler-starts-load.html
http/tests/navigation/subframe-pagehide-handler-starts-load2.html

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::stopLoading):
(WebCore::FrameLoader::loadURL):
(WebCore::FrameLoader::loadWithDocumentLoader):
(WebCore::FrameLoader::stopAllLoaders):
(WebCore::FrameLoader::handleBeforeUnloadEvent):
(WebCore::FrameLoader::FrameLoader): Deleted.

  • loader/FrameLoader.h:

(WebCore::FrameLoader::pageDismissalEventBeingDispatched):

  • loader/ImageLoader.cpp:

(WebCore::pageIsBeingDismissed):

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::load):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::requestImage):

  • page/Page.cpp:

(WebCore::Page::inPageCache):

  • page/Page.h:

(WebCore::Page::group): Deleted.

11:23 AM Changeset in webkit [186004] by peavo@outlook.com
  • 9 edits
    2 adds in trunk

WinLauncher fails to download files.
https://bugs.webkit.org/show_bug.cgi?id=146242

Reviewed by Alex Christensen.

Source/WebKit/win:

Don't start download when there is no download delegate.

  • WebView.cpp:

(WebView::downloadURL):

Tools:

Added WinLauncher download delegate.

  • WinLauncher/Common.cpp:
  • WinLauncher/WebDownloadDelegate.cpp: Added.

(WebDownloadDelegate::WebDownloadDelegate):
(WebDownloadDelegate::~WebDownloadDelegate):
(WebDownloadDelegate::QueryInterface):
(WebDownloadDelegate::AddRef):
(WebDownloadDelegate::Release):
(WebDownloadDelegate::decideDestinationWithSuggestedFilename):
(WebDownloadDelegate::didCancelAuthenticationChallenge):
(WebDownloadDelegate::didCreateDestination):
(WebDownloadDelegate::didFailWithError):
(WebDownloadDelegate::didReceiveAuthenticationChallenge):
(WebDownloadDelegate::didReceiveDataOfLength):
(WebDownloadDelegate::didReceiveResponse):
(WebDownloadDelegate::shouldDecodeSourceDataOfMIMEType):
(WebDownloadDelegate::willResumeWithResponse):
(WebDownloadDelegate::willSendRequest):
(WebDownloadDelegate::didBegin):
(WebDownloadDelegate::didFinish):

  • WinLauncher/WebDownloadDelegate.h: Added.
  • WinLauncher/WinLauncher.cpp:

(WinLauncher::setAccessibilityDelegate):
(WinLauncher::setResourceLoadDelegate):
(WinLauncher::setDownloadDelegate):
(WinLauncher::mainFrame):

  • WinLauncher/WinLauncher.h:

(WinLauncher::standardPreferences):
(WinLauncher::privatePreferences):

  • WinLauncher/WinLauncher.vcxproj/WinLauncherLib.vcxproj:
  • WinLauncher/WinLauncher.vcxproj/WinLauncherLib.vcxproj.filters:
  • WinLauncher/WinMain.cpp:

(wWinMain):

11:17 AM Changeset in webkit [186003] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

[OS X] Change the layer tiling threshold from 2000 to 2048 pixels
https://bugs.webkit.org/show_bug.cgi?id=146353

Reviewed by Tim Horton.

Programmers love powers of two.

  • platform/graphics/ca/GraphicsLayerCA.cpp:
10:42 AM Changeset in webkit [186002] by mrajca@apple.com
  • 2 edits in trunk/Source/WebKit2

Wireless Playback Target-related #import should be a #include
https://bugs.webkit.org/show_bug.cgi?id=146283

Reviewed by Eric Carlson.

  • Shared/WebCoreArgumentCoders.cpp:
10:27 AM Changeset in webkit [186001] by mmaxfield@apple.com
  • 6 edits
    5 adds in trunk

[Cocoa] Sans-serif generic font family should map to PingFang
https://bugs.webkit.org/show_bug.cgi?id=146333
<rdar://problem/21521217>

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2015-06-26
Reviewed by Alexey Proskuryakov.

Source/WebCore:

Also performs a little bit of cleanup.

Test: fast/text/han-generic-font-families.html

  • page/mac/SettingsMac.mm:

(WebCore::sansSerifTraditionalHanFontFamily):
(WebCore::sansSerifSimplifiedHanFontFamily):
(WebCore::Settings::initializeDefaultFontFamilies):

LayoutTests:

  • fast/text/han-generic-font-families.html: Added.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/ios-simulator/fast/text/han-generic-font-families-expected.html: Added.
  • platform/mac-mavericks/fast/text/han-generic-font-families-expected.html: Added.
  • platform/mac-yosemite/fast/text/han-generic-font-families-expected.html: Added.
  • platform/mac/fast/text/han-generic-font-families-expected.html: Added.
  • platform/win/TestExpectations:
10:09 AM Changeset in webkit [186000] by peavo@outlook.com
  • 2 edits in trunk/Source/WebCore

[Curl] Compile errors; ResourceResponseBase::resourceLoadTiming() has changed return type.
https://bugs.webkit.org/show_bug.cgi?id=146343

Reviewed by Brent Fulgham.

  • platform/network/curl/ResourceHandleManager.cpp:

(WebCore::calculateWebTimingInformations):
(WebCore::headerCallback):
(WebCore::ResourceHandleManager::initializeHandle):
(WebCore::ResourceHandleManager::initCookieSession):
(WebCore::sockoptfunction): Deleted.

9:45 AM Changeset in webkit [185999] by commit-queue@webkit.org
  • 11 edits
    2 moves
    1 add in trunk/Source/WebKit

[Win] Implement WebViewGroup to support WebView::addxxxToGroup().
https://bugs.webkit.org/show_bug.cgi?id=145908

Patch by Hyungwook Lee <hyungwook.lee@navercorp.com> on 2015-06-26
Reviewed by Brent Fulgham.

Make WebViewGroup class sharing on Mac and Win port.

Source/WebKit:

  • WebCoreSupport: Added.
  • WebCoreSupport/WebViewGroup.cpp: Added.

(webViewGroups):
(WebViewGroup::getOrCreate):
(WebViewGroup::get):
(WebViewGroup::WebViewGroup):
(WebViewGroup::~WebViewGroup):
(WebViewGroup::addWebView):
(WebViewGroup::removeWebView):
(WebViewGroup::storageNamespaceProvider):

  • WebCoreSupport/WebViewGroup.h: Added.

(WebViewGroup::userContentController):
(WebViewGroup::visitedLinkStore):

  • WebKit.vcxproj/WebKit/WebKit.vcxproj:
  • WebKit.vcxproj/WebKit/WebKit.vcxproj.filters:
  • WebKit.vcxproj/WebKit/WebKitCommon.props:
  • WebKit.xcodeproj/project.pbxproj:

Source/WebKit/mac:

  • WebCoreSupport/WebViewGroup.h: Removed.
  • WebCoreSupport/WebViewGroup.mm: Removed.

Source/WebKit/win:

  • WebCoreSupport/WebVisitedLinkStore.cpp:

(visitedLinkStores):
(WebVisitedLinkStore::create):
(WebVisitedLinkStore::WebVisitedLinkStore):
(WebVisitedLinkStore::~WebVisitedLinkStore):
(WebVisitedLinkStore::setShouldTrackVisitedLinks):
(WebVisitedLinkStore::removeAllVisitedLinks):
(WebVisitedLinkStore::singleton): Deleted.

  • WebCoreSupport/WebVisitedLinkStore.h:
  • WebView.cpp:

(toURL):
(localStorageDatabasePath):
(WebView::WebView):
(WebView::~WebView):
(WebView::shouldInitializeTrackPointHack):
(WebView::initWithFrame):
(WebView::setGroupName):
(WebView::addVisitedLinks):

  • WebView.h:
9:42 AM Changeset in webkit [185998] by Csaba Osztrogonác
  • 3 edits
    1 delete in trunk/Source/JavaScriptCore

Remove ARMv7Assembler.cpp
https://bugs.webkit.org/show_bug.cgi?id=146340

Reviewed by Filip Pizlo.

  • CMakeLists.txt:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • assembler/ARMv7Assembler.cpp: Removed.
8:17 AM Changeset in webkit [185997] by Chris Fleizach
  • 2 edits in trunk/Source/WebCore

iOS speech synthesizer should expose names
https://bugs.webkit.org/show_bug.cgi?id=146319

Reviewed by Mario Sanchez Prada.

Use newer API to get the name and identifier of each voice asset.

  • platform/ios/PlatformSpeechSynthesizerIOS.mm:

(WebCore::PlatformSpeechSynthesizer::initializeVoiceList):

6:24 AM Changeset in webkit [185996] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

Fix the !ENABLE(ES6_ARROWFUNCTION_SYNTAX) build after r185989
https://bugs.webkit.org/show_bug.cgi?id=146344

Reviewed by Yusuke Suzuki.

  • parser/Parser.cpp:

(JSC::Parser<LexerType>::parseSourceElements):

6:05 AM Changeset in webkit [185995] by Csaba Osztrogonác
  • 3 edits in trunk/Source/WebCore

[EFL] Remove unnecessary overriden methods from ScrollBarEfl
https://bugs.webkit.org/show_bug.cgi?id=146342

Reviewed by Gyuyoung Kim.

  • platform/efl/ScrollbarEfl.cpp:

(WebCore::ScrollbarEfl::setParent): Deleted.
(WebCore::ScrollbarEfl::setFrameRect): Deleted.
(WebCore::ScrollbarEfl::frameRectsChanged): Deleted.
(WebCore::ScrollbarEfl::invalidate): Deleted.

  • platform/efl/ScrollbarEfl.h:
6:01 AM Changeset in webkit [185994] by Csaba Osztrogonác
  • 6 edits in trunk/Source/WebCore

Convert some of WebCore/dom over to range-for loops
https://bugs.webkit.org/show_bug.cgi?id=126250

Reviewed by Darin Adler.

Based on the original patch of Sam Weinig <sam@webkit.org>.

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::replaceChild):
(WebCore::willRemoveChildren):
(WebCore::ContainerNode::appendChild):

  • dom/MutationObserver.cpp:

(WebCore::MutationObserver::disconnect):
(WebCore::MutationObserver::getObservedNodes):
(WebCore::MutationObserver::deliver):

  • dom/MutationObserverInterestGroup.cpp:

(WebCore::MutationObserverInterestGroup::isOldValueRequested):
(WebCore::MutationObserverInterestGroup::enqueueMutationRecord):

  • dom/MutationObserverRegistration.cpp:

(WebCore::MutationObserverRegistration::clearTransientRegistrations):
(WebCore::MutationObserverRegistration::addRegistrationNodesToSet):

  • dom/Node.cpp:

(WebCore::Node::dumpStatistics):
(WebCore::collectMatchingObserversForMutation):
(WebCore::Node::notifyMutationObserversNodeWillDetach):

4:37 AM Changeset in webkit [185993] by Csaba Osztrogonác
  • 2 edits in trunk/WebKitLibraries

Unreviewed buildfix after r185971, disable WEB_TIMING.

  • win/tools/vsprops/FeatureDefinesCairo.props:
4:05 AM Changeset in webkit [185992] by Csaba Osztrogonác
  • 3 edits
    1 delete in trunk/Tools

[EFL] Bump libseccomp version to 2.2.1
https://bugs.webkit.org/show_bug.cgi?id=146341

Reviewed by Gyuyoung Kim.

  • efl/jhbuild.modules:
  • efl/jhbuildrc: Enabled libseccomp build on AArch64.
  • efl/patches/libseccomp-pick-up-CC.patch: Removed, we don't need it anymore.
1:49 AM Changeset in webkit [185991] by bshafiei@apple.com
  • 2 edits in tags/Safari-601.1.37/Source/WebCore

Merged r185988.

12:10 AM Changeset in webkit [185990] by ddkilzer@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION (r185971): js/dom/global-constructors-attributes.html fails on Windows

  • platform/win/js/dom/global-constructors-attributes-expected.txt:

Update results after enabling WEB_TIMING API for Windows.

Note: See TracTimeline for information about the timeline view.