Add a guarded window.timing binding.
Created attachment 55736 [details] Patch
Attachment 55736 [details] did not pass style-queue: Failed to run "['WebKitTools/Scripts/check-webkit-style', '--no-squash']" exit_code: 1 WebCore/ChangeLog:9: Line contains tab character. [whitespace/tab] [5] Total errors found: 1 in 17 files If any of these errors are false positives, please file a bug against check-webkit-style.
I've been working to get the final issues ironed out of the Web Timing spec and am interested in driving the WebCore implementation forward. This patch is intended to install the minimum amount of code to add the window.timing binding while still remaining disabled-by-default. Once this is in place, I can tackle the implementation piece-by-piece.
Created attachment 55762 [details] Patch
Comment on attachment 55762 [details] Patch WebCore/ChangeLog:27 + Don't forget FeatureDefines.xcconfig (in four places) -- see http://trac.webkit.org/changeset/59174 :) WebCore/page/DOMWindow.cpp:448 + Typically, we guard these entirely. WebCore/page/DOMWindow.cpp:581 + Ditto. WebCore/page/NavigationTiming.cpp:31 + #include "config.h" And this one, too. See SVG or Inspector files for an example. WebCore/page/NavigationTiming.h:33 + And that one.
Created attachment 55801 [details] Patch
(In reply to comment #5) > (From update of attachment 55762 [details]) > WebCore/ChangeLog:27 > + > Don't forget FeatureDefines.xcconfig (in four places) -- see http://trac.webkit.org/changeset/59174 :) Good catch. Done. > > > WebCore/page/DOMWindow.cpp:448 > + > Typically, we guard these entirely. Done. > > WebCore/page/DOMWindow.cpp:581 > + > Ditto. Done. > > WebCore/page/NavigationTiming.cpp:31 > + #include "config.h" > And this one, too. See SVG or Inspector files for an example. Done. > > WebCore/page/NavigationTiming.h:33 > + > And that one. Done.
Attachment 55801 [details] did not build on qt: Build output: http://webkit-commit-queue.appspot.com/results/2207158
Created attachment 55868 [details] Patch
Created attachment 55887 [details] Patch
Created attachment 56107 [details] Patch
The ChangeLogs are updated per our offline discussion.
Comment on attachment 56107 [details] Patch This does look good to me. Maciej, do you have any problems with adding this?
(In reply to comment #13) > (From update of attachment 56107 [details]) > This does look good to me. Maciej, do you have any problems with adding this? Maciej, if you have any questions about Web Timing, I'm happy to answer them.
Created attachment 56938 [details] Patch
Attachment 56938 [details] did not build on win: Build output: http://webkit-commit-queue.appspot.com/results/2269565
Comment on attachment 56938 [details] Patch Given that IE9 implements this, I think we should forge full-steam ahead.
Created attachment 59660 [details] Patch
I synced this up and added some missing files. Probably worth scanning for review again. The major differences: 1. window.timing is now window.performance.timing. 2. I was missing a lot of platform-specific build files. Hopefully I have them all now. Here is the mozilla patch: https://bugzilla.mozilla.org/show_bug.cgi?id=570341 And here is window.msPerformance.timing in the IE9 PP3: http://ie.microsoft.com/testdrive/Performance/msPerformance/Default.html
Attachment 59660 [details] did not build on mac: Build output: http://webkit-commit-queue.appspot.com/results/3321724
Comment on attachment 59660 [details] Patch The mac fail might be pointing to something being wrong with the xcodeproj changes. Can you look?
(In reply to comment #21) > (From update of attachment 59660 [details]) > The mac fail might be pointing to something being wrong with the xcodeproj changes. Can you look? Just patched it in on my mac. Will upload a fix shortly.
Comment on attachment 59660 [details] Patch Based on comment about uploading a new patch to fix mac build.
Created attachment 59676 [details] Fix xcode project
Comment on attachment 59676 [details] Fix xcode project yay.
Comment on attachment 59676 [details] Fix xcode project Rejecting patch 59676 from commit-queue. Failed to run "[u'/Users/eseidel/Projects/CommitQueue/WebKitTools/Scripts/svn-apply', u'--reviewer', u'Dimitri Glazkov', u'--force']" exit_code: 1 Last 500 characters of output: mac/ChangeLog Hunk #1 succeeded at 1 with fuzz 3. patching file WebKit/mac/Configurations/FeatureDefines.xcconfig patching file WebKit2/ChangeLog Hunk #1 succeeded at 1 with fuzz 3. patching file WebKit2/Configurations/FeatureDefines.xcconfig patching file WebKitLibraries/ChangeLog patching file WebKitLibraries/win/tools/vsprops/FeatureDefines.vsprops patching file WebKitTools/ChangeLog Hunk #1 succeeded at 1 with fuzz 3. patching file WebKitTools/Scripts/build-webkit patching file configure.ac Full output: http://webkit-commit-queue.appspot.com/results/3278765
Created attachment 59824 [details] Patch for landing
Comment on attachment 59824 [details] Patch for landing Clearing flags on attachment: 59824 Committed r61950: <http://trac.webkit.org/changeset/61950>
All reviewed patches have been landed. Closing bug.
I think this may have caused a delayed Windows break: http://build.webkit.org/builders/Windows%20Release%20(Build)/builds/953/steps/compile-webkit/logs/stdio C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\obj\WebCore\DerivedSources\JSDOMWindow.cpp(1462) : error C2039: 'performance' : is not a member of 'WebCore::DOMWindow' c:\cygwin\home\buildbot\slave\win-release\build\WebCore\page\DOMWindow.h(84) : see declaration of 'WebCore::DOMWindow'
Looks like this turned on WebTiming support on windows: http://trac.webkit.org/changeset/61950/trunk/WebKitLibraries/win/tools/vsprops/FeatureDefines.vsprops Even though it's not implemented for JSC. That seems like the error.
(In reply to comment #31) > Looks like this turned on WebTiming support on windows: > http://trac.webkit.org/changeset/61950/trunk/WebKitLibraries/win/tools/vsprops/FeatureDefines.vsprops > > Even though it's not implemented for JSC. That seems like the error. I failed to understand how that file works. Not sure how this is caused. May need to roll this out?
(In reply to comment #32) > (In reply to comment #31) > > Looks like this turned on WebTiming support on windows: > > http://trac.webkit.org/changeset/61950/trunk/WebKitLibraries/win/tools/vsprops/FeatureDefines.vsprops > > > > Even though it's not implemented for JSC. That seems like the error. Steve fixed this in r61980. > I failed to understand how that file works. All ENABLE flags are listed in this file, whether turned on or off. Flags that are turned on look like this: <UserMacro Name="ENABLE_CHANNEL_MESSAGING" Value="ENABLE_CHANNEL_MESSAGING" PerformEnvironmentSet="true" /> Flags that are turned off look like this: <UserMacro Name="ENABLE_BLOB_SLICE" Value="" PerformEnvironmentSet="true" /> This is pretty similar to how FeatureDefines.xcconfig works.
(In reply to comment #33) > (In reply to comment #32) > > (In reply to comment #31) > > > Looks like this turned on WebTiming support on windows: > > > http://trac.webkit.org/changeset/61950/trunk/WebKitLibraries/win/tools/vsprops/FeatureDefines.vsprops > > > > > > Even though it's not implemented for JSC. That seems like the error. > > Steve fixed this in r61980. Sorry for the breakage. Thank you for the fix and explanation! > > > I failed to understand how that file works. > > All ENABLE flags are listed in this file, whether turned on or off. Flags that are turned on look like this: > > <UserMacro > Name="ENABLE_CHANNEL_MESSAGING" > Value="ENABLE_CHANNEL_MESSAGING" > PerformEnvironmentSet="true" > /> > > Flags that are turned off look like this: > > <UserMacro > Name="ENABLE_BLOB_SLICE" > Value="" > PerformEnvironmentSet="true" > /> > > This is pretty similar to how FeatureDefines.xcconfig works.