Commit Graph

65 Commits

Author SHA1 Message Date
Cosmin Sabou
47aeae737d Backed out 7 changesets (bug 1518999) for causing browsertime failures. CLOSED TREE
Backed out changeset d93cb254eef5 (bug 1518999)
Backed out changeset a9715e73e862 (bug 1518999)
Backed out changeset e28081d16e3c (bug 1518999)
Backed out changeset c9d88f3f1f5b (bug 1518999)
Backed out changeset 9836adcc4e83 (bug 1518999)
Backed out changeset 9f01755d327f (bug 1518999)
Backed out changeset ef494065b8e2 (bug 1518999)
2020-08-28 06:27:11 +03:00
Sean Feng
d004d374c6 Bug 1518999 - Implement PerformancePaintTiming for FirstContentfulPaint r=smaug,mstange
Spec: https://w3c.github.io/paint-timing/#sec-PerformancePaintTiming
We only support FirstContentfulPaint at the moment.

Differential Revision: https://phabricator.services.mozilla.com/D66463
2020-08-27 14:50:43 +00:00
Cosmin Sabou
cb292d6727 Backed out 6 changesets (bug 1518999) for geckoview failures on scrollToVerticalOnZoomedContentAuto.
Backed out changeset 10bf1552e301 (bug 1518999)
Backed out changeset e62cd63e3595 (bug 1518999)
Backed out changeset 1bf0b02bb0e0 (bug 1518999)
Backed out changeset 2203a9c52afa (bug 1518999)
Backed out changeset 10f07ca7a246 (bug 1518999)
Backed out changeset b90cf6b54c09 (bug 1518999)
2020-08-25 01:02:36 +03:00
Sean Feng
4e475992e5 Bug 1518999 - Implement PerformancePaintTiming for FirstContentfulPaint r=smaug,mstange
Spec: https://w3c.github.io/paint-timing/#sec-PerformancePaintTiming
We only support FirstContentfulPaint at the moment.

Differential Revision: https://phabricator.services.mozilla.com/D66463
2020-08-24 16:03:31 +00:00
Csoregi Natalia
7ed84ce7af Backed out 6 changesets (bug 1518999) for marionette failures on test_refresh_firefox.py. CLOSED TREE
Backed out changeset eb8e5411868e (bug 1518999)
Backed out changeset 0924e0169dcb (bug 1518999)
Backed out changeset b7de245b329c (bug 1518999)
Backed out changeset f2a6a3797ef1 (bug 1518999)
Backed out changeset 123403a14312 (bug 1518999)
Backed out changeset 1968b8ca14d7 (bug 1518999)
2020-08-18 23:53:26 +03:00
Sean Feng
dc060b5793 Bug 1518999 - Implement PerformancePaintTiming for FirstContentfulPaint r=smaug,mstange
Spec: https://w3c.github.io/paint-timing/#sec-PerformancePaintTiming
We only support FirstContentfulPaint at the moment.

Differential Revision: https://phabricator.services.mozilla.com/D66463
2020-08-06 16:13:44 +00:00
Sean Feng
6dffb11c62 Bug 1653165 - Update PerformanceNavigationTiming before load event fires r=baku
Currently, we are not only updating the timing, but also sending
the timing to observers, which is not correct. According
to the Processing Modal of PerformanceNavigationTiming
(https://www.w3.org/TR/navigation-timing-2/#processing-model),
Queuing the task should be happened after user agent completes
the load event.

Differential Revision: https://phabricator.services.mozilla.com/D85507
2020-08-13 07:49:50 +00:00
Simon Giesecke
a69d79b6db Bug 1648010 - Replace uses of NS_LITERAL_STRING/NS_LITERAL_CSTRING macros by _ns literals. r=geckoview-reviewers,jgilbert,agi,hsivonen,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80860
2020-07-01 08:29:29 +00:00
Emilio Cobos Álvarez
be8985274d Bug 1599160 - Add a performance resource entry when hitting the cache for the first time in a document. r=mayhemer,valentin
This matches other browsers, our current behavior, and the test
expectations from various WPTs.

Differential Revision: https://phabricator.services.mozilla.com/D77842
2020-06-12 19:05:56 +00:00
Razvan Maries
36281afc64 Backed out 7 changesets (bug 1599160) for damp failures. CLOSED TREE
Backed out changeset edb0e17f3c98 (bug 1599160)
Backed out changeset 64b42ac358e6 (bug 1599160)
Backed out changeset ce1521b895e1 (bug 1599160)
Backed out changeset 0b0ff0ad8db7 (bug 1599160)
Backed out changeset c7ef05dae614 (bug 1599160)
Backed out changeset 466cfd0ad5db (bug 1599160)
Backed out changeset b3f28494f0e7 (bug 1599160)
2020-06-12 02:40:38 +03:00
Emilio Cobos Álvarez
d2fd2c1674 Bug 1599160 - Add a performance resource entry when hitting the cache for the first time in a document. r=mayhemer,valentin
This matches other browsers, our current behavior, and the test
expectations from various WPTs.

Differential Revision: https://phabricator.services.mozilla.com/D77842
2020-06-11 11:41:59 +00:00
Steve Fink
42252d48c1 Bug 1633625 - move performance.mozMemory -> performance.mozMemory.gc to match the JS shell, and because performance.mozMemory.mallocBytes is deceptive when it only refers to GC-controlled malloc bytes r=jonco,smaug
Differential Revision: https://phabricator.services.mozilla.com/D74447
2020-05-19 21:54:24 +00:00
sanketh
563ff82731 Bug 1511941 - Don't expose PerformanceNavigationTiming in RFP mode r=tjr,baku
In RFP mode, we do not support `PerformanceNavigationTiming`, so don't expose
it. In particular, `window.PerformanceNavigationTiming` should return
`undefined`.

Added a new method `PerformanceNavigationTiming::Enabled` which when used with
the WebIDL `Func` attribute allows us to toggle whether
`window.PerformanceNavigationTiming` is exposed.

Created
`dom/tests/mochitest/general/test_toggling_performance_navigation_timing.html`
to test whether the toggling works. Updated
`browser/components/resistfingerprinting/test/browser/browser_performanceAPI.js`
to create a new window each time `privacy.resistFingerprinting` is flipped so
this behavior does not leak into other tests.

Differential Revision: https://phabricator.services.mozilla.com/D73528
2020-05-07 16:33:38 +00:00
Simon Giesecke
9f12c0f7c2 Bug 1626570 - Improve handling of copying arrays in dom/performance/. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D73655
2020-05-05 14:15:00 +00:00
Tom Tung
8ba641aeaf Bug 1586761 - P3 - Use new methods in dom/performance; r=tjr,baku
Note that this patch implements a member function CrossOriginIsIsolated in
PerformanceWorker and PerformanceMainThread. In PerformanceMainThread, we need
to cache boolean for CrossOriginIsIsolated() so that we don't need to find the
owning global on every callsites.

Differential Revision: https://phabricator.services.mozilla.com/D63904
2020-03-25 14:09:42 +00:00
Gabriele Svelto
eb403b8785 Bug 1600545 - Remove useless inclusions of header files generated from IDL files in dom/ r=Ehsan
The inclusions were removed with the following very crude script and the
resulting breakage was fixed up by hand. The manual fixups did either
revert the changes done by the script, replace a generic header with a more
specific one or replace a header with a forward declaration.

find . -name "*.idl" | grep -v web-platform | grep -v third_party | while read path; do
    interfaces=$(grep "^\(class\|interface\).*:.*" "$path" | cut -d' ' -f2)
    if [ -n "$interfaces" ]; then
        if [[ "$interfaces" == *$'\n'* ]]; then
          regexp="\("
          for i in $interfaces; do regexp="$regexp$i\|"; done
          regexp="${regexp%%\\\|}\)"
        else
          regexp="$interfaces"
        fi
        interface=$(basename "$path")
        rg -l "#include.*${interface%%.idl}.h" . | while read path2; do
            hits=$(grep -v "#include.*${interface%%.idl}.h" "$path2" | grep -c "$regexp" )
            if [ $hits -eq 0 ]; then
                echo "Removing ${interface} from ${path2}"
                grep -v "#include.*${interface%%.idl}.h" "$path2" > "$path2".tmp
                mv -f "$path2".tmp "$path2"
            fi
        done
    fi
done

Differential Revision: https://phabricator.services.mozilla.com/D55442
2019-12-06 09:24:56 +00:00
Dorel Luca
67889e1013 Backed out changeset f6e53d1c6518 (bug 1600545) for Android build bustage. CLOSED TREE 2019-12-04 17:32:27 +02:00
Gabriele Svelto
dc6fa2e86c Bug 1600545 - Remove useless inclusions of header files generated from IDL files in dom/ r=Ehsan
The inclusions were removed with the following very crude script and the
resulting breakage was fixed up by hand. The manual fixups did either
revert the changes done by the script, replace a generic header with a more
specific one or replace a header with a forward declaration.

find . -name "*.idl" | grep -v web-platform | grep -v third_party | while read path; do
    interfaces=$(grep "^\(class\|interface\).*:.*" "$path" | cut -d' ' -f2)
    if [ -n "$interfaces" ]; then
        if [[ "$interfaces" == *$'\n'* ]]; then
          regexp="\("
          for i in $interfaces; do regexp="$regexp$i\|"; done
          regexp="${regexp%%\\\|}\)"
        else
          regexp="$interfaces"
        fi
        interface=$(basename "$path")
        rg -l "#include.*${interface%%.idl}.h" . | while read path2; do
            hits=$(grep -v "#include.*${interface%%.idl}.h" "$path2" | grep -c "$regexp" )
            if [ $hits -eq 0 ]; then
                echo "Removing ${interface} from ${path2}"
                grep -v "#include.*${interface%%.idl}.h" "$path2" > "$path2".tmp
                mv -f "$path2".tmp "$path2"
            fi
        done
    fi
done

Differential Revision: https://phabricator.services.mozilla.com/D55442
2019-12-04 15:01:19 +00:00
Tom Ritter
6d22676756 Bug 1571219 - Refactor PerformanceMeasure to avoid double-reducing timestamps r=baku
Differential Revision: https://phabricator.services.mozilla.com/D50127
2019-10-23 11:42:10 +00:00
Nicholas Nethercote
c4aacd8403 Bug 1563139 - Remove StaticPrefs.h. r=glandium
This requires replacing inclusions of it with inclusions of more specific prefs
files.

The exception is that StaticPrefsAll.h, which is equivalent to StaticPrefs.h,
and is used in `Codegen.py` because doing something smarter is tricky and
suitable for a follow-up. As a result, any change to StaticPrefList.yaml will
still trigger recompilation of all the generated DOM bindings files, but that's
still a big improvement over trigger recompilation of every file that uses
static prefs.

Most of the changes in this commit are very boring. The only changes that are
not boring are modules/libpref/*, Codegen.py, and ServoBindings.toml.

Differential Revision: https://phabricator.services.mozilla.com/D39138
2019-07-26 01:10:23 +00:00
Andrea Marchesini
084597577b Bug 1548253 - Port pref cache variables of nsContentUtils to StaticPrefs - dom.performance.enable_notify_performance_timing, r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D29513
2019-05-01 21:09:31 +00:00
Andrea Marchesini
b47296e557 Bug 1548253 - Port pref cache variables of nsContentUtils to StaticPrefs - dom.enable_performance_navigation_timing, r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D29507
2019-05-01 21:08:40 +00:00
Sylvestre Ledru
e5a134f73a Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset
2018-11-30 11:46:48 +01:00
Andrea Marchesini
c9f44fe794 Bug 1489844 - Port DOMPrefs to StaticPrefs - part 4 - dom.performance.enable_user_timing_logging, r=ehsan 2018-09-10 20:36:15 +02:00
Andrea Marchesini
31fca2e981 Bug 1462879 - PerformanceNavigationTiming must be notified correctly - part 3 - Update the channel properties before notify, r=valentin 2018-08-04 08:54:58 +02:00
Andrea Marchesini
b769c15369 Bug 1462879 - PerformanceNavigationTiming must be notified correctly - part 2 - getEntryByName, r=valentin 2018-08-04 08:54:58 +02:00
Andrea Marchesini
7f71d838ab Bug 1462879 - PerformanceNavigationTiming must be notified correctly - part 1 - notify, r=smaug, r=valentin 2018-08-04 08:54:58 +02:00
Andrea Marchesini
48bd55973e Bug 1462883 - Update PerformanceTimingData::mReportCrossOriginRedirect in SetPropertiesFromHttpChannel, r=bz 2018-08-03 13:08:32 +02:00
Andi-Bogdan Postelnicu
63320a1ffe Bug 1453795 - DOM - Initialize member fields in classes/ structures. r=peterv 2018-06-16 17:21:46 +03:00
Emilio Cobos Álvarez
4b8b5e1717 Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj
This was done automatically replacing:

  s/mozilla::Move/std::move/
  s/ Move(/ std::move(/
  s/(Move(/(std::move(/

Removing the 'using mozilla::Move;' lines.

And then with a few manual fixups, see the bug for the split series..

MozReview-Commit-ID: Jxze3adipUh
2018-06-01 10:45:27 +02:00
Andrea Marchesini
9428571fda Bug 1462605 - PerformanceNavigationTiming.name must be the value of the address of the current document, r=valentin 2018-05-18 16:20:19 +02:00
Kershaw Chang
ae4dd4d9b7 Bug 1423495 - Part4: Create doc entry form http channel if server timing headers are found for a document load r=baku
Currently, the document entry is created at the first time when some JS code tries to access it. But for the case when server timing headers exist for a document loading channel, we need to create the document entry and save the server timing data in the document entry.
If we don’t do this, the server timing data would be lost since the http channel will be deleted.

MozReview-Commit-ID: B5ksAZvZACq
2018-01-12 03:13:00 +01:00
Boris Zbarsky
d54406240d Bug 1449631 part 6. Remove nsIDOMEventTarget::DispatchEvent. r=smaug
MozReview-Commit-ID: 8YMgmMwZkAL
2018-04-05 13:42:41 -04:00
Tom Ritter
e19e7123c5 Bug 1440195 Add a random context seed to the Performance APIs r=baku
We attach it to WorkerPrivate and DOMNavigationTiming so it will be re-used
when it should.

WorkerPrivate is used in the Performance APIs, Performance Storage Worker,
and Event.

DOMNavigationTiming is used only in the Performance APIs, but the crucial
part is that when the individual DOMNavigationTiming object is re-used,
so will the context seed. This in particular came up with the
nav2_test_document_open.html Web Platform Test which illustrated the fact
that even if you .open() a new document, the performance navigation data
is not supposed to change.

MozReview-Commit-ID: GIv6biEo2jY
2018-03-13 12:36:34 -05:00
Tom Ritter
728b7eb478 Bug 1443943 Port the performance APIs only to only clamping/jittering on non-System Principal r=baku
MozReview-Commit-ID: FKYLI5Yc1kX
2018-03-09 09:29:33 -06:00
Andrea Marchesini
e78cbcb82c Bug 1425458 - Resource timing entries Workers - part 3 - PerformanceStorageWorker, r=smaug 2018-01-24 17:17:32 +01:00
Andrea Marchesini
170e7db772 Bug 1425458 - Resource timing entries Workers - part 2 - PerformanceTimingData, r=smaug 2018-01-24 17:17:31 +01:00
Brindusan Cristian
1153f2c09e Backed out 12 changesets (bug 1425458) for mochitest failures on WorkerPrivate.cpp on a CLOSED TREE
Backed out changeset 11997de13778 (bug 1425458)
Backed out changeset 100b9d4f36bc (bug 1425458)
Backed out changeset a29e9dbb8c42 (bug 1425458)
Backed out changeset b96d58fd945c (bug 1425458)
Backed out changeset f140da44ba68 (bug 1425458)
Backed out changeset af56400233d9 (bug 1425458)
Backed out changeset 7034af4332e4 (bug 1425458)
Backed out changeset f70500179140 (bug 1425458)
Backed out changeset 793bbfc23257 (bug 1425458)
Backed out changeset 2efb375a8ffc (bug 1425458)
Backed out changeset 07e781e37451 (bug 1425458)
Backed out changeset e875f3702a5f (bug 1425458)
2018-01-24 20:47:48 +02:00
Andrea Marchesini
1c39f5bdcd Bug 1425458 - Resource timing entries Workers - part 9 - Fixing a compilation issue, r=me CLOSED TREE 2018-01-24 18:19:12 +01:00
Andrea Marchesini
7441e0cd2e Bug 1425458 - Resource timing entries Workers - part 3 - PerformanceStorageWorker, r=smaug 2018-01-24 17:17:32 +01:00
Andrea Marchesini
73da7daec1 Bug 1425458 - Resource timing entries Workers - part 2 - PerformanceTimingData, r=smaug 2018-01-24 17:17:31 +01:00
Andrea Marchesini
1e505c646d Bug 1419771 - Introduce DOMPrefs, a thread-safe access to preferences for DOM - part 5 - Performance logging enabled, r=asuth 2018-01-08 14:05:04 +01:00
Jonathan Watt
d3027ccb8d Bug 1180145, part 3 - Block resource timing reporting for channels that are tainted. r=jwatt
MozReview-Commit-ID: FdlbJ2YYMaG
2017-11-08 18:13:46 +00:00
Cosmin Sabou
369f0175e7 Backed out 23 changesets (bug 1419771) for frequently failing service workers related devtools tests, e.g. devtools/client/aboutdebugging/test/browser_service_workers_push.js. r=backout on a CLOSED TREE
Backed out changeset 2242edc902a5 (bug 1419771)
Backed out changeset 9cc3c29a9e36 (bug 1419771)
Backed out changeset c39ee002c825 (bug 1419771)
Backed out changeset caf7428013f2 (bug 1419771)
Backed out changeset c03970363433 (bug 1419771)
Backed out changeset 7f9de012861e (bug 1419771)
Backed out changeset ed146ac42a7f (bug 1419771)
Backed out changeset a8154698f782 (bug 1419771)
Backed out changeset 8a54c1c8d45d (bug 1419771)
Backed out changeset e32cd55b4c96 (bug 1419771)
Backed out changeset b7f342f436ef (bug 1419771)
Backed out changeset 60464b3e468f (bug 1419771)
Backed out changeset 108806f14ad8 (bug 1419771)
Backed out changeset 65998b0740f3 (bug 1419771)
Backed out changeset 0d23880842d8 (bug 1419771)
Backed out changeset 862aeaa2fefd (bug 1419771)
Backed out changeset cbc192478bf5 (bug 1419771)
Backed out changeset c58ef2a91bad (bug 1419771)
Backed out changeset 2b0a4bfd654f (bug 1419771)
Backed out changeset f182eba574f9 (bug 1419771)
Backed out changeset d9999a624097 (bug 1419771)
Backed out changeset 4050a1b8db2b (bug 1419771)
Backed out changeset a1a68e6500d9 (bug 1419771)
2017-11-30 22:35:32 +02:00
Andrea Marchesini
e0c43ef19a Bug 1419771 - Introduce DOMPreferences, a thread-safe access to preferences for DOM - part 5 - Performance logging enabled, r=asuth 2017-11-30 18:16:44 +01:00
Valentin Gosu
9e8429d4aa Bug 1403926 - Make the PerformanceNavigationTiming timestamps be relative to startTime r=baku
MozReview-Commit-ID: 7lvSsde9dzh
2017-10-04 02:48:36 +02:00
Valentin Gosu
7a72de7108 Bug 1403926 - Add pref for PerformanceNavigationTiming r=baku
MozReview-Commit-ID: 9f6fcCk8mh
2017-10-04 02:48:33 +02:00
Valentin Gosu
536dee98ef Bug 1263722 - Implement performance navigation timing r=baku
MozReview-Commit-ID: 9rJ3J6SqiDX
* * *
[mq]: test.patch

MozReview-Commit-ID: IYXp5G3iNSi
2016-04-17 22:03:28 +02:00
Sebastian Hengst
361ec74aaa Backed out changeset 6827b7bf9116 (bug 1263722) for leaks detected on mochitest shutdown. r=backout 2017-09-25 09:57:13 +02:00
Valentin Gosu
4cece373e4 Bug 1263722 - Implement performance navigation timing r=baku
MozReview-Commit-ID: 9rJ3J6SqiDX
* * *
[mq]: test.patch

MozReview-Commit-ID: IYXp5G3iNSi
2016-04-17 22:03:28 +02:00