Title: [163638] trunk/Source/WebCore
Revision
163638
Author
ander...@apple.com
Date
2014-02-07 11:57:09 -0800 (Fri, 07 Feb 2014)

Log Message

Convert ProgressTracker to std::chrono
https://bugs.webkit.org/show_bug.cgi?id=128377

Reviewed by Andreas Kling.

* loader/ProgressTracker.cpp:
(WebCore::ProgressTracker::ProgressTracker):
(WebCore::ProgressTracker::reset):
(WebCore::ProgressTracker::progressStarted):
(WebCore::ProgressTracker::finalProgressComplete):
(WebCore::ProgressTracker::incrementProgress):
* loader/ProgressTracker.h:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (163637 => 163638)


--- trunk/Source/WebCore/ChangeLog	2014-02-07 19:49:41 UTC (rev 163637)
+++ trunk/Source/WebCore/ChangeLog	2014-02-07 19:57:09 UTC (rev 163638)
@@ -1,3 +1,18 @@
+2014-02-07  Anders Carlsson  <ander...@apple.com>
+
+        Convert ProgressTracker to std::chrono
+        https://bugs.webkit.org/show_bug.cgi?id=128377
+
+        Reviewed by Andreas Kling.
+
+        * loader/ProgressTracker.cpp:
+        (WebCore::ProgressTracker::ProgressTracker):
+        (WebCore::ProgressTracker::reset):
+        (WebCore::ProgressTracker::progressStarted):
+        (WebCore::ProgressTracker::finalProgressComplete):
+        (WebCore::ProgressTracker::incrementProgress):
+        * loader/ProgressTracker.h:
+
 2014-02-07  Alexey Proskuryakov  <a...@apple.com>
 
         32-bit build fix.

Modified: trunk/Source/WebCore/loader/ProgressTracker.cpp (163637 => 163638)


--- trunk/Source/WebCore/loader/ProgressTracker.cpp	2014-02-07 19:49:41 UTC (rev 163637)
+++ trunk/Source/WebCore/loader/ProgressTracker.cpp	2014-02-07 19:57:09 UTC (rev 163638)
@@ -80,16 +80,14 @@
     , m_totalPageAndResourceBytesToLoad(0)
     , m_totalBytesReceived(0)
     , m_lastNotifiedProgressValue(0)
-    , m_lastNotifiedProgressTime(0)
     , m_progressNotificationInterval(0.02)
-    , m_progressNotificationTimeInterval(0.1)
+    , m_progressNotificationTimeInterval(std::chrono::milliseconds(100))
     , m_finalProgressChangedSent(false)
     , m_progressValue(0)
     , m_numProgressTrackedFrames(0)
     , m_progressHeartbeatTimer(this, &ProgressTracker::progressHeartbeatTimerFired)
     , m_heartbeatsWithNoProgress(0)
     , m_totalBytesReceivedBeforePreviousHeartbeat(0)
-    , m_mainLoadCompletionTimeStamp(0)
     , m_isMainLoad(false)
 {
 }
@@ -112,7 +110,7 @@
     m_totalBytesReceived = 0;
     m_progressValue = 0;
     m_lastNotifiedProgressValue = 0;
-    m_lastNotifiedProgressTime = 0;
+    m_lastNotifiedProgressTime = std::chrono::steady_clock::time_point();
     m_finalProgressChangedSent = false;
     m_numProgressTrackedFrames = 0;
     m_originatingProgressFrame = 0;
@@ -137,9 +135,9 @@
         m_originatingProgressFrame->loader().loadProgressingStatusChanged();
 
         bool isMainFrame = !m_originatingProgressFrame->tree().parent();
-        double elapsedTimeSinceMainLoadComplete = monotonicallyIncreasingTime() - m_mainLoadCompletionTimeStamp;
+        auto elapsedTimeSinceMainLoadComplete = std::chrono::steady_clock::now() - m_mainLoadCompletionTime;
 
-        static const double subframePartOfMainLoadThreshold = 1;
+        static const auto subframePartOfMainLoadThreshold = std::chrono::seconds(1);
         m_isMainLoad = isMainFrame || elapsedTimeSinceMainLoadComplete < subframePartOfMainLoadThreshold;
 
         m_client.progressStarted(*m_originatingProgressFrame);
@@ -182,7 +180,7 @@
     reset();
 
     if (m_isMainLoad)
-        m_mainLoadCompletionTimeStamp = monotonicallyIncreasingTime();
+        m_mainLoadCompletionTime = std::chrono::steady_clock::now();
 
     frame->loader().client().setMainFrameDocumentReady(true);
     m_client.progressFinished(*frame);
@@ -255,8 +253,8 @@
     
     m_totalBytesReceived += bytesReceived;
     
-    double now = monotonicallyIncreasingTime();
-    double notifiedProgressTimeDelta = now - m_lastNotifiedProgressTime;
+    auto now = std::chrono::steady_clock::now();
+    auto notifiedProgressTimeDelta = now - m_lastNotifiedProgressTime;
     
     LOG(Progress, "Progress incremented (%p) - value %f, tracked frames %d", this, m_progressValue, m_numProgressTrackedFrames);
     double notificationProgressDelta = m_progressValue - m_lastNotifiedProgressValue;

Modified: trunk/Source/WebCore/loader/ProgressTracker.h (163637 => 163638)


--- trunk/Source/WebCore/loader/ProgressTracker.h	2014-02-07 19:49:41 UTC (rev 163637)
+++ trunk/Source/WebCore/loader/ProgressTracker.h	2014-02-07 19:57:09 UTC (rev 163638)
@@ -27,10 +27,10 @@
 #define ProgressTracker_h
 
 #include "Timer.h"
+#include <chrono>
 #include <wtf/Forward.h>
 #include <wtf/HashMap.h>
 #include <wtf/Noncopyable.h>
-#include <wtf/OwnPtr.h>
 #include <wtf/RefPtr.h>
 
 namespace WebCore {
@@ -74,9 +74,9 @@
     long long m_totalPageAndResourceBytesToLoad;
     long long m_totalBytesReceived;
     double m_lastNotifiedProgressValue;
-    double m_lastNotifiedProgressTime;
+    std::chrono::steady_clock::time_point m_lastNotifiedProgressTime;
     double m_progressNotificationInterval;
-    double m_progressNotificationTimeInterval;
+    std::chrono::milliseconds m_progressNotificationTimeInterval;
     bool m_finalProgressChangedSent;    
     double m_progressValue;
     RefPtr<Frame> m_originatingProgressFrame;
@@ -87,7 +87,7 @@
     Timer<ProgressTracker> m_progressHeartbeatTimer;
     unsigned m_heartbeatsWithNoProgress;
     long long m_totalBytesReceivedBeforePreviousHeartbeat;
-    double m_mainLoadCompletionTimeStamp;
+    std::chrono::steady_clock::time_point m_mainLoadCompletionTime;
     bool m_isMainLoad;
 };
     
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to