Diff
Modified: trunk/Source/WebCore/ChangeLog (251158 => 251159)
--- trunk/Source/WebCore/ChangeLog 2019-10-15 21:18:37 UTC (rev 251158)
+++ trunk/Source/WebCore/ChangeLog 2019-10-15 21:29:28 UTC (rev 251159)
@@ -1,5 +1,20 @@
2019-10-15 Simon Fraser <simon.fra...@apple.com>
+ Add TextStream dumping for ThemeTypes enums
+ https://bugs.webkit.org/show_bug.cgi?id=202972
+
+ Reviewed by Dean Jackson.
+
+ Make ControlPart, SelectionPart, ThemeFont and ThemeColor dumpable.
+
+ * Sources.txt:
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/ThemeTypes.cpp: Added.
+ (WebCore::operator<<):
+ * platform/ThemeTypes.h:
+
+2019-10-15 Simon Fraser <simon.fra...@apple.com>
+
Add dumping for Animation and AnimationList
https://bugs.webkit.org/show_bug.cgi?id=202973
Modified: trunk/Source/WebCore/Sources.txt (251158 => 251159)
--- trunk/Source/WebCore/Sources.txt 2019-10-15 21:18:37 UTC (rev 251158)
+++ trunk/Source/WebCore/Sources.txt 2019-10-15 21:29:28 UTC (rev 251159)
@@ -1753,6 +1753,7 @@
platform/Theme.cpp
platform/ThreadGlobalData.cpp
platform/ThreadTimers.cpp
+platform/ThemeTypes.cpp
platform/Timer.cpp
platform/UserActivity.cpp
platform/WebCoreCrossThreadCopier.cpp
Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (251158 => 251159)
--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2019-10-15 21:18:37 UTC (rev 251158)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2019-10-15 21:29:28 UTC (rev 251159)
@@ -5626,6 +5626,7 @@
0F26A7AB2054FCE10090A141 /* MathMLUnknownElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MathMLUnknownElement.cpp; sourceTree = "<group>"; };
0F26A7AC2055C8D70090A141 /* XMLDocument.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = XMLDocument.cpp; sourceTree = "<group>"; };
0F26A7AD205626100090A141 /* SVGUnknownElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SVGUnknownElement.cpp; sourceTree = "<group>"; };
+ 0F283A8D235582F8004794CA /* ThemeTypes.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = ThemeTypes.cpp; sourceTree = "<group>"; };
0F36E7361BD1837A002DB891 /* LayoutPoint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LayoutPoint.cpp; sourceTree = "<group>"; };
0F36E7381BD184B9002DB891 /* LayoutSize.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LayoutSize.cpp; sourceTree = "<group>"; };
0F37F0832202AC8F00A89C0B /* ScrollingTreeScrollingNodeDelegateMac.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = ScrollingTreeScrollingNodeDelegateMac.mm; sourceTree = "<group>"; };
@@ -25675,6 +25676,7 @@
7CC564B618BABEA6001B9652 /* TelephoneNumberDetector.h */,
BCE65D310EAD1211007E4533 /* Theme.cpp */,
BCE658FE0EA9248A007E4533 /* Theme.h */,
+ 0F283A8D235582F8004794CA /* ThemeTypes.cpp */,
BCE659A80EA927B9007E4533 /* ThemeTypes.h */,
51DF6D7D0B92A16D00C2DC85 /* ThreadCheck.h */,
E1FF57A50F01256B00891EBB /* ThreadGlobalData.cpp */,
Added: trunk/Source/WebCore/platform/ThemeTypes.cpp (0 => 251159)
--- trunk/Source/WebCore/platform/ThemeTypes.cpp (rev 0)
+++ trunk/Source/WebCore/platform/ThemeTypes.cpp 2019-10-15 21:29:28 UTC (rev 251159)
@@ -0,0 +1,178 @@
+/*
+ * Copyright (C) 2019 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. ``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
+ * 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.
+ */
+
+#include "config.h"
+#include "ThemeTypes.h"
+
+#include <wtf/text/TextStream.h>
+
+namespace WebCore {
+
+TextStream& operator<<(TextStream& ts, ControlPart controlPart)
+{
+ switch (controlPart) {
+ case NoControlPart: ts << "no-control-part"; break;
+ case CheckboxPart: ts << "checkbox-part"; break;
+ case RadioPart: ts << "radio-part"; break;
+ case PushButtonPart: ts << "push-button-part"; break;
+ case SquareButtonPart: ts << "square-button-part"; break;
+ case ButtonPart: ts << "button-part"; break;
+ case ButtonBevelPart: ts << "button-bevel-part"; break;
+ case DefaultButtonPart: ts << "default-button-part"; break;
+ case InnerSpinButtonPart: ts << "inner-spin-button-part"; break;
+ case ListboxPart: ts << "listbox-part"; break;
+ case ListItemPart: ts << "list-item-part"; break;
+ case MediaControlsBackgroundPart: ts << "media-controls-background-part"; break;
+ case MediaControlsDarkBarBackgroundPart: ts << "media-controls-dark-bar-background-part"; break;
+ case MediaControlsFullscreenBackgroundPart: ts << "media-controls-fullscreen-background-part"; break;
+ case MediaControlsLightBarBackgroundPart: ts << "media-controls-light-bar-background-part"; break;
+ case MediaCurrentTimePart: ts << "media-current-time-part"; break;
+ case MediaEnterFullscreenButtonPart: ts << "media-enter-fullscreen-button-part"; break;
+ case MediaExitFullscreenButtonPart: ts << "media-exit-fullscreen-button-part"; break;
+ case MediaFullScreenVolumeSliderPart: ts << "media-full-screen-volume-slider-part"; break;
+ case MediaFullScreenVolumeSliderThumbPart: ts << "media-full-screen-volume-slider-thumb-part"; break;
+ case MediaMuteButtonPart: ts << "media-mute-button-part"; break;
+ case MediaOverlayPlayButtonPart: ts << "media-overlay-play-button-part"; break;
+ case MediaPlayButtonPart: ts << "media-play-button-part"; break;
+ case MediaReturnToRealtimeButtonPart: ts << "media-return-to-realtime-button-part"; break;
+ case MediaRewindButtonPart: ts << "media-rewind-button-part"; break;
+ case MediaSeekBackButtonPart: ts << "media-seek-back-button-part"; break;
+ case MediaSeekForwardButtonPart: ts << "media-seek-forward-button-part"; break;
+ case MediaSliderPart: ts << "media-slider-part"; break;
+ case MediaSliderThumbPart: ts << "media-slider-thumb-part"; break;
+ case MediaTimeRemainingPart: ts << "media-time-remaining-part"; break;
+ case MediaToggleClosedCaptionsButtonPart: ts << "media-toggle-closed-captions-button-part"; break;
+ case MediaVolumeSliderPart: ts << "media-volume-slider-part"; break;
+ case MediaVolumeSliderContainerPart: ts << "media-volume-slider-container-part"; break;
+ case MediaVolumeSliderMuteButtonPart: ts << "media-volume-slider-mute-button-part"; break;
+ case MediaVolumeSliderThumbPart: ts << "media-volume-slider-thumb-part"; break;
+ case MenulistPart: ts << "menulist-part"; break;
+ case MenulistButtonPart: ts << "menulist-button-part"; break;
+ case MenulistTextPart: ts << "menulist-text-part"; break;
+ case MenulistTextFieldPart: ts << "menulist-text-field-part"; break;
+ case MeterPart: ts << "meter-part"; break;
+ case ProgressBarPart: ts << "progress-bar-part"; break;
+ case ProgressBarValuePart: ts << "progress-bar-value-part"; break;
+ case SliderHorizontalPart: ts << "slider-horizontal-part"; break;
+ case SliderVerticalPart: ts << "slider-vertical-part"; break;
+ case SliderThumbHorizontalPart: ts << "slider-thumb-horizontal-part"; break;
+ case SliderThumbVerticalPart: ts << "slider-thumb-vertical-part"; break;
+ case CaretPart: ts << "caret-part"; break;
+ case SearchFieldPart: ts << "search-field-part"; break;
+ case SearchFieldDecorationPart: ts << "search-field-decoration-part"; break;
+ case SearchFieldResultsDecorationPart: ts << "search-field-results-decoration-part"; break;
+ case SearchFieldResultsButtonPart: ts << "search-field-results-button-part"; break;
+ case SearchFieldCancelButtonPart: ts << "search-field-cancel-button-part"; break;
+ case SnapshottedPluginOverlayPart: ts << "snapshotted-plugin-overlay-part"; break;
+ case TextFieldPart: ts << "text-field-part"; break;
+ case RelevancyLevelIndicatorPart: ts << "relevancy-level-indicator-part"; break;
+ case ContinuousCapacityLevelIndicatorPart: ts << "continuous-capacity-level-indicator-part"; break;
+ case DiscreteCapacityLevelIndicatorPart: ts << "discrete-capacity-level-indicator-part"; break;
+ case RatingLevelIndicatorPart: ts << "rating-level-indicator-part"; break;
+#if ENABLE(SERVICE_CONTROLS)
+ case ImageControlsButtonPart: ts << "image-controls-button-part"; break;
+#endif
+#if ENABLE(APPLE_PAY)
+ case ApplePayButtonPart: ts << "apple-pay-button-part"; break;
+#endif
+#if ENABLE(INPUT_TYPE_COLOR)
+ case ColorWellPart: ts << "color-well-part"; break;
+#endif
+#if ENABLE(DATALIST_ELEMENT)
+ case ListButtonPart: ts << "list-button-part"; break;
+#endif
+ case TextAreaPart: ts << "text-area-part"; break;
+#if ENABLE(ATTACHMENT_ELEMENT)
+ case AttachmentPart: ts << "attachment-part"; break;
+ case BorderlessAttachmentPart: ts << "borderless-attachment-part"; break;
+#endif
+ case CapsLockIndicatorPart: ts << "caps-lock-indicator-part"; break;
+ }
+
+ return ts;
+}
+
+TextStream& operator<<(TextStream& ts, SelectionPart selectionPart)
+{
+ switch (selectionPart) {
+ case SelectionBackground: ts << "selection-background"; break;
+ case SelectionForeground: ts << "selection-foreground"; break;
+ }
+ return ts;
+}
+
+TextStream& operator<<(TextStream& ts, ThemeFont themeFont)
+{
+ switch (themeFont) {
+ case CaptionFont: ts << "caption-font"; break;
+ case IconFont: ts << "icon-font"; break;
+ case MenuFont: ts << "menu-font"; break;
+ case MessageBoxFont: ts << "messagebox-font"; break;
+ case SmallCaptionFont: ts << "small-caption-font"; break;
+ case StatusBarFont: ts << "statusbar-font"; break;
+ case MiniControlFont: ts << "minicontrol-font"; break;
+ case SmallControlFont: ts << "small-control-font"; break;
+ case ControlFont: ts << "control-font"; break;
+ }
+ return ts;
+}
+
+TextStream& operator<<(TextStream& ts, ThemeColor themeColor)
+{
+ switch (themeColor) {
+ case ActiveBorderColor: ts << "active-border-color"; break;
+ case ActiveCaptionColor: ts << "active-caption-color"; break;
+ case AppWorkspaceColor: ts << "app-workspace-color"; break;
+ case BackgroundColor: ts << "background-color"; break;
+ case ButtonFaceColor: ts << "button-face-color"; break;
+ case ButtonHighlightColor: ts << "button-highlight-color"; break;
+ case ButtonShadowColor: ts << "button-shadow-color"; break;
+ case ButtonTextColor: ts << "button-text-color"; break;
+ case CaptionTextColor: ts << "caption-text-color"; break;
+ case GrayTextColor: ts << "gray-text-color"; break;
+ case HighlightColor: ts << "highlight-color"; break;
+ case HighlightTextColor: ts << "highlight-text-color"; break;
+ case InactiveBorderColor: ts << "inactive-border-color"; break;
+ case InactiveCaptionColor: ts << "inactive-caption-color"; break;
+ case InactiveCaptionTextColor: ts << "inactive-caption-text-color"; break;
+ case InfoBackgroundColor: ts << "info-background-color"; break;
+ case InfoTextColor: ts << "info-text-color"; break;
+ case MatchColor: ts << "match-color"; break;
+ case MenuTextColor: ts << "menu-text-color"; break;
+ case ScrollbarColor: ts << "scrollbar-color"; break;
+ case ThreeDDarkShadowColor: ts << "threeD-dark-shadow-color"; break;
+ case ThreeDFaceColor: ts << "threeD-face-color"; break;
+ case ThreeDHighlightColor: ts << "threeD-highlight-color"; break;
+ case ThreeDLightShadowColor: ts << "threeD-light-shadow-color"; break;
+ case ThreeDShadowColor: ts << "threeD-shadow-color"; break;
+ case WindowColor: ts << "window-color"; break;
+ case WindowFrameColor: ts << "window-frame-color"; break;
+ case WindowTextColor: ts << "window-text-color"; break;
+ case FocusRingColor: ts << "focus-ring-color"; break;
+ }
+ return ts;
+}
+
+} // namespace WebCore
Modified: trunk/Source/WebCore/platform/ThemeTypes.h (251158 => 251159)
--- trunk/Source/WebCore/platform/ThemeTypes.h 2019-10-15 21:18:37 UTC (rev 251158)
+++ trunk/Source/WebCore/platform/ThemeTypes.h 2019-10-15 21:29:28 UTC (rev 251159)
@@ -25,6 +25,10 @@
#pragma once
+namespace WTF {
+class TextStream;
+}
+
namespace WebCore {
// Must follow CSSValueKeywords.in order
@@ -156,4 +160,9 @@
FocusRingColor
};
-}
+WTF::TextStream& operator<<(WTF::TextStream&, ControlPart);
+WTF::TextStream& operator<<(WTF::TextStream&, SelectionPart);
+WTF::TextStream& operator<<(WTF::TextStream&, ThemeFont);
+WTF::TextStream& operator<<(WTF::TextStream&, ThemeColor);
+
+} // namespace WebCore