Title: [109300] trunk/Source
- Revision
- 109300
- Author
- [email protected]
- Date
- 2012-02-29 20:08:54 -0800 (Wed, 29 Feb 2012)
Log Message
[chromium] Fix navigation start time on cross-renderer navigation
https://bugs.webkit.org/show_bug.cgi?id=75922
Reviewed by Darin Fisher.
Source/WebCore:
* loader/DocumentLoadTiming.cpp:
(WebCore::DocumentLoadTiming::setNavigationStart): Added.
* loader/DocumentLoadTiming.h:
Source/WebKit/chromium:
* public/WebDataSource.h:
* src/WebDataSource.cpp:
(WebKit::WebDataSource::setNavigationStartTime): Added.
* src/WebDataSource.h:
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (109299 => 109300)
--- trunk/Source/WebCore/ChangeLog 2012-03-01 03:54:24 UTC (rev 109299)
+++ trunk/Source/WebCore/ChangeLog 2012-03-01 04:08:54 UTC (rev 109300)
@@ -1,3 +1,14 @@
+2012-02-29 James Simonsen <[email protected]>
+
+ [chromium] Fix navigation start time on cross-renderer navigation
+ https://bugs.webkit.org/show_bug.cgi?id=75922
+
+ Reviewed by Darin Fisher.
+
+ * loader/DocumentLoadTiming.cpp:
+ (WebCore::DocumentLoadTiming::setNavigationStart): Added.
+ * loader/DocumentLoadTiming.h:
+
2012-02-29 Stephen Chenney <[email protected]>
SVG <use> element allows invalid contents
Modified: trunk/Source/WebCore/loader/DocumentLoadTiming.cpp (109299 => 109300)
--- trunk/Source/WebCore/loader/DocumentLoadTiming.cpp 2012-03-01 03:54:24 UTC (rev 109299)
+++ trunk/Source/WebCore/loader/DocumentLoadTiming.cpp 2012-03-01 04:08:54 UTC (rev 109300)
@@ -72,6 +72,12 @@
}
}
+void DocumentLoadTiming::setNavigationStart(double navigationStart)
+{
+ ASSERT(m_referenceMonotonicTime && m_referenceWallTime);
+ m_navigationStart = navigationStart;
+}
+
void DocumentLoadTiming::addRedirect(const KURL& redirectingUrl, const KURL& redirectedUrl)
{
m_redirectCount++;
Modified: trunk/Source/WebCore/loader/DocumentLoadTiming.h (109299 => 109300)
--- trunk/Source/WebCore/loader/DocumentLoadTiming.h 2012-03-01 03:54:24 UTC (rev 109299)
+++ trunk/Source/WebCore/loader/DocumentLoadTiming.h 2012-03-01 04:08:54 UTC (rev 109300)
@@ -38,6 +38,7 @@
DocumentLoadTiming();
void markNavigationStart(Frame*);
+ void setNavigationStart(double);
void addRedirect(const KURL& redirectingUrl, const KURL& redirectedUrl);
double convertMonotonicTimeToDocumentTime(double monotonicTime) const;
Modified: trunk/Source/WebKit/chromium/ChangeLog (109299 => 109300)
--- trunk/Source/WebKit/chromium/ChangeLog 2012-03-01 03:54:24 UTC (rev 109299)
+++ trunk/Source/WebKit/chromium/ChangeLog 2012-03-01 04:08:54 UTC (rev 109300)
@@ -1,3 +1,15 @@
+2012-02-29 James Simonsen <[email protected]>
+
+ [chromium] Fix navigation start time on cross-renderer navigation
+ https://bugs.webkit.org/show_bug.cgi?id=75922
+
+ Reviewed by Darin Fisher.
+
+ * public/WebDataSource.h:
+ * src/WebDataSource.cpp:
+ (WebKit::WebDataSource::setNavigationStartTime): Added.
+ * src/WebDataSource.h:
+
2012-02-29 Ian Vollick <[email protected]>
[chromium] Add impl-thread support for animation-timing-function
Modified: trunk/Source/WebKit/chromium/public/WebDataSource.h (109299 => 109300)
--- trunk/Source/WebKit/chromium/public/WebDataSource.h 2012-03-01 03:54:24 UTC (rev 109299)
+++ trunk/Source/WebKit/chromium/public/WebDataSource.h 2012-03-01 04:08:54 UTC (rev 109300)
@@ -103,6 +103,14 @@
// testing.
virtual void setDeferMainResourceDataLoad(bool) = 0;
+ // Sets the navigation start time for this datasource. Ordinarily,
+ // navigation start is determined in WebCore. But, in some situations,
+ // the embedder might have a better value and can override it here. This
+ // should be called before WebFrameClient::didCommitProvisionalLoad.
+ // Calling it later may confuse users, because _javascript_ may have run and
+ // the user may have already recorded the original value.
+ virtual void setNavigationStartTime(double) = 0;
+
protected:
~WebDataSource() { }
};
Modified: trunk/Source/WebKit/chromium/src/WebDataSourceImpl.cpp (109299 => 109300)
--- trunk/Source/WebKit/chromium/src/WebDataSourceImpl.cpp 2012-03-01 03:54:24 UTC (rev 109299)
+++ trunk/Source/WebKit/chromium/src/WebDataSourceImpl.cpp 2012-03-01 04:08:54 UTC (rev 109300)
@@ -129,6 +129,11 @@
DocumentLoader::setDeferMainResourceDataLoad(defer);
}
+void WebDataSourceImpl::setNavigationStartTime(double navigationStart)
+{
+ timing()->setNavigationStart(navigationStart);
+}
+
WebNavigationType WebDataSourceImpl::toWebNavigationType(NavigationType type)
{
switch (type) {
Modified: trunk/Source/WebKit/chromium/src/WebDataSourceImpl.h (109299 => 109300)
--- trunk/Source/WebKit/chromium/src/WebDataSourceImpl.h 2012-03-01 03:54:24 UTC (rev 109299)
+++ trunk/Source/WebKit/chromium/src/WebDataSourceImpl.h 2012-03-01 04:08:54 UTC (rev 109300)
@@ -70,6 +70,7 @@
virtual void setExtraData(ExtraData*);
virtual WebApplicationCacheHost* applicationCacheHost();
virtual void setDeferMainResourceDataLoad(bool);
+ virtual void setNavigationStartTime(double);
static WebNavigationType toWebNavigationType(WebCore::NavigationType type);
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes