Bug 134778

Summary: Need Setting/WKPreference that allows clients to prevent scrollbars from drawing on a secondary thread
Product: WebKit Reporter: Beth Dakin <bdakin>
Component: WebKit APIAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: bdakin, buildbot, rniwa, simon.fraser, thorton
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
buildbot: commit-queue-
Archive of layout-test-results from webkit-ews-16 for mac-mountainlion-wk2
none
Patch with new name
none
Patch thorton: review+

Description Beth Dakin 2014-07-09 14:35:32 PDT
We need Setting/WKPreference that allows clients to prevent scrollbars from drawing on a secondary thread. This is required for some types of performance tests.

<rdar://problem/17595333>
Comment 1 Beth Dakin 2014-07-09 14:44:01 PDT
Created attachment 234658 [details]
Patch
Comment 2 Tim Horton 2014-07-09 15:00:10 PDT
Comment on attachment 234658 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=234658&action=review

> Source/WebKit2/UIProcess/API/C/WKPreferences.cpp:979
> +void WKPreferencesSetAllowScrollbarUpdatesOnSecondaryThreadIfPossible(WKPreferencesRef preferencesRef, bool allow)

I don't think we need C SPI for this preference, do we? Is this just here for completeness' sake? This is a pretty special pref that nobody should flip under normal circumstances.
Comment 3 Simon Fraser (smfr) 2014-07-09 15:05:09 PDT
Comment on attachment 234658 [details]
Patch

I think it might be clearer if this were more explicitly about a "testing" mode. It's pretty unclear from the pref (whose default is true) why you'd want to change it.
Comment 4 Tim Horton 2014-07-09 15:18:36 PDT
Yeah, we should be more explicit about how special this is.
Comment 5 Build Bot 2014-07-09 15:38:57 PDT
Comment on attachment 234658 [details]
Patch

Attachment 234658 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.appspot.com/results/5416850410176512

New failing tests:
media/W3C/video/networkState/networkState_during_loadstart.html
Comment 6 Build Bot 2014-07-09 15:39:00 PDT
Created attachment 234663 [details]
Archive of layout-test-results from webkit-ews-16 for mac-mountainlion-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: webkit-ews-16  Port: mac-mountainlion-wk2  Platform: Mac OS X 10.8.5
Comment 7 Beth Dakin 2014-07-09 16:31:58 PDT
Created attachment 234666 [details]
Patch with new name
Comment 8 Tim Horton 2014-07-10 12:24:06 PDT
Windows build is broken: 

     1>..\platform\win\SearchPopupMenuWin.cpp(33): error C2259: 'WebCore::PopupMenuWin' : cannot instantiate abstract class
                 due to following members:
                 'bool WebCore::ScrollableArea::forceUpdateScrollbarsOnMainThreadForPerformanceTesting(void) const' : is abstract
                 C:\cygwin\home\buildbot\WebKit\Source\WebCore\platform\ScrollableArea.h(128) : see declaration of 'WebCore::ScrollableArea::forceUpdateScrollbarsOnMainThreadForPerformanceTesting'
Comment 9 Beth Dakin 2014-07-10 12:35:27 PDT
Created attachment 234718 [details]
Patch

This should fix windows.
Comment 10 Beth Dakin 2014-07-10 13:06:37 PDT
Thanks Tim! http://trac.webkit.org/changeset/170972