LibWeb: Implement performance.timeOrigin

This is the origin timestamp of the same monotonic clock used for the
performance.now() timestamp.

I got a little confused while implementing this, since the numbers are
very low. That's because it uses the CLOCK_MONOTONIC system clock,
which we start counting from 0 at boot. :^)
This commit is contained in:
Andreas Kling 2020-09-29 18:31:07 +02:00
parent 62785b7872
commit 18cff5e0be
Notes: sideshowbarker 2024-07-19 02:07:45 +09:00
3 changed files with 8 additions and 0 deletions

View file

@ -44,6 +44,12 @@ Performance::~Performance()
{
}
double Performance::time_origin() const
{
auto origin = m_timer.origin_time();
return (origin.tv_sec * 1000.0) + (origin.tv_usec / 1000.0);
}
void Performance::ref_event_target()
{
m_window.ref();

View file

@ -42,6 +42,7 @@ public:
~Performance();
double now() const { return m_timer.elapsed(); }
double time_origin() const;
virtual void ref_event_target() override;
virtual void unref_event_target() override;

View file

@ -1,3 +1,4 @@
interface Performance : EventTarget {
double now();
readonly attribute double timeOrigin;
}