Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 06aee1bb5b2bc44986fb8e3fb2589b267984e764 https://github.com/WebKit/WebKit/commit/06aee1bb5b2bc44986fb8e3fb2589b267984e764 Author: Brent Fulgham <bfulg...@apple.com> Date: 2024-11-19 (Tue, 19 Nov 2024)
Changed paths: M Source/WebCore/Headers.cmake M Source/WebCore/WebCore.xcodeproj/project.pbxproj M Source/WebCore/page/Quirks.cpp M Source/WebCore/page/Quirks.h A Source/WebCore/page/QuirksData.h Log Message: ----------- Move Quirk flags to a common struct https://bugs.webkit.org/show_bug.cgi?id=283181 <rdar://problem/139976751> Reviewed by Wenson Hsieh. As a first step in building a more dynamic quirk system, move the various flags representing quirks into a single structure. This will allow us to message these flags from the UIProcess in a future patch. This patch also makes the flag use as consistent as possible, since there were a handful of places the domain was checked every time the quirk was consulted, rather than caching the result as is done elsewhere. This patch makes no changes in behavior, and does not add any new quirks. It does remove two std::optional<bool> flags in the Quirks.h file that were unused. * Source/WebCore/Headers.cmake: * Source/WebCore/WebCore.xcodeproj/project.pbxproj: * Source/WebCore/page/Quirks.cpp: (WebCore::Quirks::hasBrokenEncryptedMediaAPISupportQuirk const): (WebCore::Quirks::shouldDisableElementFullscreenQuirk const): (WebCore::Quirks::shouldDispatchSimulatedMouseEvents const): (WebCore::Quirks::needsGMailOverflowScrollQuirk const): (WebCore::Quirks::needsIPadSkypeOverflowScrollQuirk const): (WebCore::Quirks::needsYouTubeOverflowScrollQuirk const): (WebCore::Quirks::needsPrimeVideoUserSelectNoneQuirk const): (WebCore::Quirks::needsScrollbarWidthThinDisabledQuirk const): (WebCore::Quirks::needsBodyScrollbarWidthNoneDisabledQuirk const): (WebCore::Quirks::needsFullscreenDisplayNoneQuirk const): (WebCore::Quirks::needsFullscreenObjectFitQuirk const): (WebCore::Quirks::needsGoogleMapsScrollingQuirk const): (WebCore::Quirks::shouldSilenceResizeObservers const): (WebCore::Quirks::shouldSilenceWindowResizeEvents const): (WebCore::Quirks::shouldSilenceMediaQueryListChangeEvents const): (WebCore::Quirks::shouldAvoidScrollingWhenFocusedContentIsVisible const): (WebCore::Quirks::shouldUseLegacySelectPopoverDismissalBehaviorInDataActivation const): (WebCore::Quirks::shouldIgnoreAriaForFastPathContentObservationCheck const): (WebCore::Quirks::shouldIgnoreViewportArgumentsToAvoidExcessiveZoom const): (WebCore::Quirks::needsPreloadAutoQuirk const): (WebCore::Quirks::shouldBypassAsyncScriptDeferring const): (WebCore::Quirks::shouldEnableLegacyGetUserMediaQuirk const): (WebCore::Quirks::shouldDisableImageCaptureQuirk const): (WebCore::Quirks::needsCanPlayAfterSeekedQuirk const): (WebCore::Quirks::shouldLayOutAtMinimumWindowWidthWhenIgnoringScalingConstraints const): (WebCore::Quirks::shouldAvoidPastingImagesAsWebContent const): (WebCore::Quirks::needsVP9FullRangeFlagQuirk const): (WebCore::Quirks::requiresUserGestureToPauseInPictureInPicture const): (WebCore::Quirks::returnNullPictureInPictureElementDuringFullscreenChange const): (WebCore::Quirks::requiresUserGestureToLoadInPictureInPicture const): (WebCore::Quirks::blocksReturnToFullscreenFromPictureInPictureQuirk const): (WebCore::Quirks::blocksEnteringStandardFullscreenFromPictureInPictureQuirk const): (WebCore::Quirks::shouldDisableEndFullscreenEventWhenEnteringPictureInPictureFromFullscreenQuirk const): (WebCore::Quirks::shouldDelayFullscreenEventWhenExitingPictureInPictureQuirk const): (WebCore::Quirks::allowLayeredFullscreenVideos const): (WebCore::Quirks::shouldDisableFullscreenVideoAspectRatioAdaptiveSizing const): (WebCore::Quirks::shouldEnableFontLoadingAPIQuirk const): (WebCore::Quirks::needsVideoShouldMaintainAspectRatioQuirk const): (WebCore::Quirks::shouldExposeShowModalDialog const): (WebCore::Quirks::shouldNavigatorPluginsBeEmpty const): (WebCore::Quirks::shouldDisableLazyIframeLoadingQuirk const): (WebCore::Quirks::shouldDisableFetchMetadata const): (WebCore::Quirks::shouldStarBePermissionsPolicyDefaultValue const): (WebCore::Quirks::shouldDisableDataURLPaddingValidation const): (WebCore::Quirks::needsDisableDOMPasteAccessQuirk const): (WebCore::Quirks::shouldPreventOrientationMediaQueryFromEvaluatingToLandscape const): (WebCore::Quirks::shouldFlipScreenDimensions const): (WebCore::Quirks::shouldAllowDownloadsInSpiteOfCSP const): (WebCore::Quirks::shouldIgnorePlaysInlineRequirementQuirk const): (WebCore::Quirks::needsRelaxedCorsMixedContentCheckQuirk const): (WebCore::Quirks::shouldIgnoreTextAutoSizing const): (WebCore::Quirks::shouldHideCoarsePointerCharacteristics const): (WebCore::Quirks::implicitMuteWhenVolumeSetToZero const): (WebCore::Quirks::shouldDispatchPointerOutAfterHandlingSyntheticClick const): (WebCore::Quirks::needsZeroMaxTouchPointsQuirk const): (WebCore::Quirks::needsChromeMediaControlsPseudoElement const): (WebCore::Quirks::shouldIgnoreContentObservationForClick const): (WebCore::Quirks::needsMozillaFileTypeForDataTransfer const): * Source/WebCore/page/Quirks.h: * Source/WebCore/page/QuirksData.h: Added. Canonical link: https://commits.webkit.org/286807@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes