Title: [267408] trunk/Source/WebCore
Revision
267408
Author
wei...@apple.com
Date
2020-09-22 08:28:32 -0700 (Tue, 22 Sep 2020)

Log Message

[WebIDL] Split up Performance.idl into component partials
https://bugs.webkit.org/show_bug.cgi?id=216729

Reviewed by Darin Adler.

Split additions to the Peformance interface from the Navagation Timing,
Resource Timing, User Timing and Performance Timeline specs into their
own IDL files. Trying something new with the naming (using Performance
'+' name of the spec supplying the addition) for these partials to test
the waters.

* CMakeLists.txt:
* DerivedSources-input.xcfilelist:
* DerivedSources-output.xcfilelist:
* DerivedSources.make:
* WebCore.xcodeproj/project.pbxproj:
* page/Performance+NavigationTiming.idl: Added.
* page/Performance+PerformanceTimeline.idl: Added.
* page/Performance+ResourceTiming.idl: Added.
* page/Performance+UserTiming.idl: Added.
* page/Performance.idl:

Modified Paths

Added Paths

Diff

Modified: trunk/Source/WebCore/CMakeLists.txt (267407 => 267408)


--- trunk/Source/WebCore/CMakeLists.txt	2020-09-22 15:15:15 UTC (rev 267407)
+++ trunk/Source/WebCore/CMakeLists.txt	2020-09-22 15:28:32 UTC (rev 267408)
@@ -1049,6 +1049,10 @@
     page/NavigatorPlugins.idl
     page/NavigatorServiceWorker.idl
     page/NavigatorShare.idl
+    page/Performance+NavigationTiming.idl
+    page/Performance+PerformanceTimeline.idl
+    page/Performance+ResourceTiming.idl
+    page/Performance+UserTiming.idl
     page/Performance.idl
     page/PerformanceEntry.idl
     page/PerformanceMark.idl

Modified: trunk/Source/WebCore/ChangeLog (267407 => 267408)


--- trunk/Source/WebCore/ChangeLog	2020-09-22 15:15:15 UTC (rev 267407)
+++ trunk/Source/WebCore/ChangeLog	2020-09-22 15:28:32 UTC (rev 267408)
@@ -1,3 +1,27 @@
+2020-09-22  Sam Weinig  <wei...@apple.com>
+
+        [WebIDL] Split up Performance.idl into component partials
+        https://bugs.webkit.org/show_bug.cgi?id=216729
+
+        Reviewed by Darin Adler.
+
+        Split additions to the Peformance interface from the Navagation Timing,
+        Resource Timing, User Timing and Performance Timeline specs into their
+        own IDL files. Trying something new with the naming (using Performance
+        '+' name of the spec supplying the addition) for these partials to test
+        the waters.
+
+        * CMakeLists.txt:
+        * DerivedSources-input.xcfilelist:
+        * DerivedSources-output.xcfilelist:
+        * DerivedSources.make:
+        * WebCore.xcodeproj/project.pbxproj:
+        * page/Performance+NavigationTiming.idl: Added.
+        * page/Performance+PerformanceTimeline.idl: Added.
+        * page/Performance+ResourceTiming.idl: Added.
+        * page/Performance+UserTiming.idl: Added.
+        * page/Performance.idl:
+
 2020-09-22  Zalan Bujtas  <za...@apple.com>
 
         [LFC][IFC] TextUtil::split needs logical left

Modified: trunk/Source/WebCore/DerivedSources-input.xcfilelist (267407 => 267408)


--- trunk/Source/WebCore/DerivedSources-input.xcfilelist	2020-09-22 15:15:15 UTC (rev 267407)
+++ trunk/Source/WebCore/DerivedSources-input.xcfilelist	2020-09-22 15:28:32 UTC (rev 267408)
@@ -1027,6 +1027,10 @@
 $(PROJECT_DIR)/page/NavigatorPlugins.idl
 $(PROJECT_DIR)/page/NavigatorServiceWorker.idl
 $(PROJECT_DIR)/page/NavigatorShare.idl
+$(PROJECT_DIR)/page/Performance+NavigationTiming.idl
+$(PROJECT_DIR)/page/Performance+PerformanceTimeline.idl
+$(PROJECT_DIR)/page/Performance+ResourceTiming.idl
+$(PROJECT_DIR)/page/Performance+UserTiming.idl
 $(PROJECT_DIR)/page/Performance.idl
 $(PROJECT_DIR)/page/PerformanceEntry.idl
 $(PROJECT_DIR)/page/PerformanceMark.idl

Modified: trunk/Source/WebCore/DerivedSources-output.xcfilelist (267407 => 267408)


--- trunk/Source/WebCore/DerivedSources-output.xcfilelist	2020-09-22 15:15:15 UTC (rev 267407)
+++ trunk/Source/WebCore/DerivedSources-output.xcfilelist	2020-09-22 15:28:32 UTC (rev 267408)
@@ -1384,6 +1384,14 @@
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSPaymentValidationErrors.h
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSPbkdf2Params.cpp
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSPbkdf2Params.h
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSPerformance+NavigationTiming.cpp
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSPerformance+NavigationTiming.h
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSPerformance+PerformanceTimeline.cpp
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSPerformance+PerformanceTimeline.h
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSPerformance+ResourceTiming.cpp
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSPerformance+ResourceTiming.h
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSPerformance+UserTiming.cpp
+$(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSPerformance+UserTiming.h
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSPerformance.cpp
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSPerformance.h
 $(BUILT_PRODUCTS_DIR)/DerivedSources/WebCore/JSPerformanceEntry.cpp

Modified: trunk/Source/WebCore/DerivedSources.make (267407 => 267408)


--- trunk/Source/WebCore/DerivedSources.make	2020-09-22 15:15:15 UTC (rev 267407)
+++ trunk/Source/WebCore/DerivedSources.make	2020-09-22 15:28:32 UTC (rev 267408)
@@ -1038,6 +1038,10 @@
     $(WebCore)/page/NavigatorPlugins.idl \
     $(WebCore)/page/NavigatorServiceWorker.idl \
     $(WebCore)/page/NavigatorShare.idl \
+    $(WebCore)/page/Performance+NavigationTiming.idl \
+    $(WebCore)/page/Performance+PerformanceTimeline.idl \
+    $(WebCore)/page/Performance+ResourceTiming.idl \
+    $(WebCore)/page/Performance+UserTiming.idl \
     $(WebCore)/page/Performance.idl \
     $(WebCore)/page/PerformanceEntry.idl \
     $(WebCore)/page/PerformanceMark.idl \

Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (267407 => 267408)


--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj	2020-09-22 15:15:15 UTC (rev 267407)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj	2020-09-22 15:28:32 UTC (rev 267408)
@@ -10238,6 +10238,10 @@
 		7C6579EE1E00856600E3A27A /* JSApplePayShippingMethod.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSApplePayShippingMethod.h; sourceTree = "<group>"; };
 		7C6752BA1B06E82000C279CB /* NonElementParentNode.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = NonElementParentNode.idl; sourceTree = "<group>"; };
 		7C6EFEEA1F946A2E00FFAD41 /* SettingsDefaultValues.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SettingsDefaultValues.h; sourceTree = "<group>"; };
+		7C72471A2516744C00C363CD /* Performance+UserTiming.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = "Performance+UserTiming.idl"; sourceTree = "<group>"; };
+		7C72471C251674CE00C363CD /* Performance+PerformanceTimeline.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = "Performance+PerformanceTimeline.idl"; sourceTree = "<group>"; };
+		7C72471D2516752C00C363CD /* Performance+ResourceTiming.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = "Performance+ResourceTiming.idl"; sourceTree = "<group>"; };
+		7C72471E2516758800C363CD /* Performance+NavigationTiming.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = "Performance+NavigationTiming.idl"; sourceTree = "<group>"; };
 		7C73FB05191EF416007DE061 /* UserMessageHandlersNamespace.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UserMessageHandlersNamespace.cpp; sourceTree = "<group>"; };
 		7C73FB06191EF417007DE061 /* UserMessageHandlersNamespace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserMessageHandlersNamespace.h; sourceTree = "<group>"; };
 		7C73FB09191EF49F007DE061 /* UserMessageHandlersNamespace.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = UserMessageHandlersNamespace.idl; sourceTree = "<group>"; };
@@ -21572,6 +21576,10 @@
 				2D5C9CFE19C7B52E00B3C5C1 /* PageOverlayController.h */,
 				371E65CD13661EED00BEEDB0 /* PageSerializer.cpp */,
 				371E65CB13661EDC00BEEDB0 /* PageSerializer.h */,
+				7C72471E2516758800C363CD /* Performance+NavigationTiming.idl */,
+				7C72471C251674CE00C363CD /* Performance+PerformanceTimeline.idl */,
+				7C72471D2516752C00C363CD /* Performance+ResourceTiming.idl */,
+				7C72471A2516744C00C363CD /* Performance+UserTiming.idl */,
 				E526AF3E1727F8F200E41781 /* Performance.cpp */,
 				8A844D0211D3C18E0014065C /* Performance.h */,
 				8A844D0311D3C18E0014065C /* Performance.idl */,

Added: trunk/Source/WebCore/page/Performance+NavigationTiming.idl (0 => 267408)


--- trunk/Source/WebCore/page/Performance+NavigationTiming.idl	                        (rev 0)
+++ trunk/Source/WebCore/page/Performance+NavigationTiming.idl	2020-09-22 15:28:32 UTC (rev 267408)
@@ -0,0 +1,32 @@
+/*
+ * Copyright (C) 2020 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+// https://w3c.github.io/navigation-timing/#extensions-to-the-performance-interface
+[
+    Exposed=Window
+] partial interface Performance {
+    [SameObject] readonly attribute PerformanceNavigation navigation;
+    [SameObject] readonly attribute PerformanceTiming timing;
+};

Added: trunk/Source/WebCore/page/Performance+PerformanceTimeline.idl (0 => 267408)


--- trunk/Source/WebCore/page/Performance+PerformanceTimeline.idl	                        (rev 0)
+++ trunk/Source/WebCore/page/Performance+PerformanceTimeline.idl	2020-09-22 15:28:32 UTC (rev 267408)
@@ -0,0 +1,33 @@
+/*
+ * Copyright (C) 2020 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+// https://w3c.github.io/performance-timeline/#extensions-to-the-performance-interface
+partial interface Performance {
+    PerformanceEntryList getEntries();
+    PerformanceEntryList getEntriesByType(DOMString type);
+    PerformanceEntryList getEntriesByName(DOMString name, optional DOMString type);
+};
+
+typedef sequence<PerformanceEntry> PerformanceEntryList;

Added: trunk/Source/WebCore/page/Performance+ResourceTiming.idl (0 => 267408)


--- trunk/Source/WebCore/page/Performance+ResourceTiming.idl	                        (rev 0)
+++ trunk/Source/WebCore/page/Performance+ResourceTiming.idl	2020-09-22 15:28:32 UTC (rev 267408)
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2020 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+// https://w3c.github.io/resource-timing/#sec-extensions-performance-interface
+partial interface Performance {
+    undefined clearResourceTimings();
+    undefined setResourceTimingBufferSize(unsigned long maxSize);
+    attribute EventHandler onresourcetimingbufferfull;
+};

Added: trunk/Source/WebCore/page/Performance+UserTiming.idl (0 => 267408)


--- trunk/Source/WebCore/page/Performance+UserTiming.idl	                        (rev 0)
+++ trunk/Source/WebCore/page/Performance+UserTiming.idl	2020-09-22 15:28:32 UTC (rev 267408)
@@ -0,0 +1,32 @@
+/*
+ * Copyright (C) 2020 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+// https://w3c.github.io/user-timing/#extensions-performance-interface
+partial interface Performance {
+    [MayThrowException, CallWith=GlobalObject] PerformanceMark mark(DOMString markName, optional PerformanceMarkOptions markOptions);
+    undefined clearMarks(optional DOMString markName);
+    [MayThrowException, CallWith=GlobalObject] PerformanceMeasure measure(DOMString measureName, optional (DOMString or PerformanceMeasureOptions) startOrMeasureOptions, optional DOMString endMark);
+    undefined clearMeasures(optional DOMString measureName);
+};

Modified: trunk/Source/WebCore/page/Performance.idl (267407 => 267408)


--- trunk/Source/WebCore/page/Performance.idl	2020-09-22 15:15:15 UTC (rev 267407)
+++ trunk/Source/WebCore/page/Performance.idl	2020-09-22 15:28:32 UTC (rev 267408)
@@ -41,26 +41,4 @@
     // FIXME: Implement 'timeOrigin' - https://webkit.org/b/174862
     // readonly attribute DOMHighResTimeStamp timeOrigin;
     [Default] object toJSON();
-
-    // https://w3c.github.io/navigation-timing/#extensions-to-the-performance-interface
-    [Exposed=Window] readonly attribute PerformanceNavigation navigation;
-    [Exposed=Window] readonly attribute PerformanceTiming timing;
-
-    // https://w3c.github.io/performance-timeline/#extensions-to-the-performance-interface
-    PerformanceEntryList getEntries();
-    PerformanceEntryList getEntriesByType(DOMString entryType);
-    PerformanceEntryList getEntriesByName(DOMString name, optional DOMString entryType);
-
-    // https://w3c.github.io/resource-timing/#sec-extensions-performance-interface
-    undefined clearResourceTimings();
-    undefined setResourceTimingBufferSize(unsigned long maxSize);
-    attribute EventHandler onresourcetimingbufferfull;
-
-    // https://w3c.github.io/user-timing/#extensions-performance-interface
-    [MayThrowException, CallWith=GlobalObject] PerformanceMark mark(DOMString markName, optional PerformanceMarkOptions markOptions);
-    undefined clearMarks(optional DOMString markName);
-    [MayThrowException, CallWith=GlobalObject] PerformanceMeasure measure(DOMString measureName, optional (DOMString or PerformanceMeasureOptions) startOrMeasureOptions, optional DOMString endMark);
-    undefined clearMeasures(optional DOMString measureName);
 };
-
-typedef sequence<PerformanceEntry> PerformanceEntryList;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to