dom/webidl/Performance.webidl
author Valentin Gosu <valentin.gosu@gmail.com>
Mon, 21 Apr 2014 09:34:31 -0400
changeset 197882 f27f91556752114079be188a8ce883052883298d
parent 197881 0a4b034ec82c887772625dec8e9f3acffa6c18e1
child 201727 9fda399b4e88f707c976c79081e1de829078be4b
permissions -rw-r--r--
Bug 822480 - Put getEntries* webidl methods behind the dom.enable_resource_timing pref. r=bz

/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
 * You can obtain one at http://mozilla.org/MPL/2.0/.
 *
 * The origin of this IDL file is
 * http://www.w3.org/TR/hr-time/
 *
 * Copyright © 2012 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C
 * liability, trademark and document use rules apply.
 */

typedef double DOMHighResTimeStamp;
typedef sequence <PerformanceEntry> PerformanceEntryList;

interface Performance {
  DOMHighResTimeStamp now();

  [Constant]
  readonly attribute PerformanceTiming timing;
  [Constant]
  readonly attribute PerformanceNavigation navigation;

  jsonifier;
};

// http://www.w3c-test.org/webperf/specs/PerformanceTimeline/#sec-window.performance-attribute
partial interface Performance {
  [Pref="dom.enable_resource_timing"]
  PerformanceEntryList getEntries();
  [Pref="dom.enable_resource_timing"]
  PerformanceEntryList getEntriesByType(DOMString entryType);
  [Pref="dom.enable_resource_timing"]
  PerformanceEntryList getEntriesByName(DOMString name, optional DOMString
    entryType);
};

// http://w3c-test.org/webperf/specs/ResourceTiming/#extensions-performance-interface
partial interface Performance {
  [Pref="dom.enable_resource_timing"]
  void clearResourceTimings();
  [Pref="dom.enable_resource_timing"]
  void setResourceTimingBufferSize(unsigned long maxSize);
};