Timeline
Mar 4, 2019:
- 11:58 PM Changeset in webkit [242412] by
-
- 2 edits in trunk/LayoutTests
[GTK] Unreviewed test gardening
https://bugs.webkit.org/show_bug.cgi?id=195272
Unreviewed test gardening.
- platform/gtk/TestExpectations:
- 11:55 PM Changeset in webkit [242411] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed, rolling out r242376.
Broke some tests
Reverted changeset:
"Correctly handle sandbox extensions when the same WKWebView
loads multiple file:// URLs."
https://bugs.webkit.org/show_bug.cgi?id=195291
https://trac.webkit.org/changeset/242376
- 8:27 PM Changeset in webkit [242410] by
-
- 3 edits in trunk/Source/WebInspectorUI
Web Inspector: Reload actions from second level inspector should properly reload the inspected inspector
https://bugs.webkit.org/show_bug.cgi?id=195306
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2019-03-04
Reviewed by Matt Baker.
- UserInterface/Base/Main.js:
Provide a better reload for a Nth level inspector.
- UserInterface/Debug/Bootstrap.js:
(WI.runBootstrapOperations):
Simplify, should not need to check for InspectorFrontendHost.
- 8:24 PM Changeset in webkit [242409] by
-
- 2 edits in trunk/Source/WebKit
Use a SQLite database to hold the ResourceLoadStatistics data
https://bugs.webkit.org/show_bug.cgi?id=194867
<rdar://problem/24240854>
Unreviewed build fix for WinCairo.
ResourceLoadStatisticsDebug and RELEASE_LOG_INFO_IF are not
defined because WinCairo port defines RELEASE_LOG_DISABLED.
- NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp:
(WebKit::ResourceLoadStatisticsDatabaseStore::requestStorageAccess): Enclosed RELEASE_LOG_INFO_IF with #if !RELEASE_LOG_DISABLED.
(WebKit::ResourceLoadStatisticsDatabaseStore::requestStorageAccessUnderOpener): Ditto.
(WebKit::ResourceLoadStatisticsDatabaseStore::updateCookieBlocking): Ditto.
- 8:22 PM Changeset in webkit [242408] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: MediaSource logging not initialized properly
https://bugs.webkit.org/show_bug.cgi?id=195307
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2019-03-04
Reviewed by Matt Baker.
- UserInterface/Controllers/ConsoleManager.js:
(WI.ConsoleManager.prototype.initializeLogChannels):
Typo caused undefined to be included and trigger assertions.
- 8:00 PM Changeset in webkit [242407] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed build fix for High Sierra.
- platform/graphics/gpu/cocoa/GPUBufferMetal.mm: Should fix "global constructor" error.
- 7:00 PM Changeset in webkit [242406] by
-
- 22 edits1 move4 adds in trunk/Source
Use a SQLite database to hold the ResourceLoadStatistics data
https://bugs.webkit.org/show_bug.cgi?id=194867
<rdar://problem/24240854>
Reviewed by Chris Dumez.
Source/WebCore:
Add a new runtime feature flag to support use of an experimental database
back-end. Also expose some SQLite function calls for use outside of WebCore.
No change in functionality, so no new tests.
- page/RuntimeEnabledFeatures.h:
(WebCore::RuntimeEnabledFeatures::setItpDatabaseModeEnabled):
(WebCore::RuntimeEnabledFeatures::itpDatabaseModeEnabled const):
- platform/sql/SQLiteDatabase.h:
- platform/sql/SQLiteStatement.h:
Source/WebKit:
The ResourceLoadStatistics database plist is inefficient. It requires more memory use
than it needs, and forces lots of looping and string comparisons to find information.
This problem has already been solved in the form of relational databases. We use them
elsewhere in WebKit, and should do so for this storage as well.
This patch creates an optional SQLite database to handle ITP operations.
- It adds a new internal experimental feature flag to activate it. It requires the user exit and restart the process to take effect.
- It populates itself from the existing plist file (if it exists).
- It stops using the plist in favor of the database.
- It does queries and other operations using the database instead of the old hash table implementation.
This patch refactors the exisiting ResourceLoadStatisticsMemoryStore class into a base
ResourceLoadStatisticsStore class, which ResourceLoadStatisticsMemoryStore is based on.
It adds a new ResourceLoadStatisticsDatabaseStore that is implemented in terms of SQL
operations.
These code changes should not have any impact on existing operations, and when enabled
should produce the same test results.
- NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp: Added.
(WebKit::ResourceLoadStatisticsDatabaseStore::ResourceLoadStatisticsDatabaseStore):
(WebKit::ResourceLoadStatisticsDatabaseStore::createSchema):
(WebKit::ResourceLoadStatisticsDatabaseStore::prepareStatements):
(WebKit::ResourceLoadStatisticsDatabaseStore::insertObservedDomain):
(WebKit::ResourceLoadStatisticsDatabaseStore::relationshipExists const):
(WebKit::ResourceLoadStatisticsDatabaseStore::insertDomainRelationship):
(WebKit::ResourceLoadStatisticsDatabaseStore::confirmDomainDoesNotExist const):
(WebKit::ResourceLoadStatisticsDatabaseStore::domainIDFromString const):
(WebKit::ResourceLoadStatisticsDatabaseStore::insertDomainRelationships):
(WebKit::ResourceLoadStatisticsDatabaseStore::databaseIsEmpty const):
(WebKit::ResourceLoadStatisticsDatabaseStore::populateFromMemoryStore):
(WebKit::ResourceLoadStatisticsDatabaseStore::calculateAndSubmitTelemetry const):
(WebKit::ResourceLoadStatisticsDatabaseStore::incrementRecordsDeletedCountForDomains):
(WebKit::ResourceLoadStatisticsDatabaseStore::recursivelyFindNonPrevalentDomainsThatRedirectedToThisDomain):
(WebKit::buildList):
(WebKit::ResourceLoadStatisticsDatabaseStore::markAsPrevalentIfHasRedirectedToPrevalent):
(WebKit::listToString):
(WebKit::ResourceLoadStatisticsDatabaseStore::findNotVeryPrevalentResources):
(WebKit::ResourceLoadStatisticsDatabaseStore::reclassifyResources):
(WebKit::ResourceLoadStatisticsDatabaseStore::classifyPrevalentResources):
(WebKit::ResourceLoadStatisticsDatabaseStore::syncStorageIfNeeded):
(WebKit::ResourceLoadStatisticsDatabaseStore::syncStorageImmediately):
(WebKit::ResourceLoadStatisticsDatabaseStore::hasStorageAccess):
(WebKit::ResourceLoadStatisticsDatabaseStore::requestStorageAccess):
(WebKit::ResourceLoadStatisticsDatabaseStore::requestStorageAccessUnderOpener):
(WebKit::ResourceLoadStatisticsDatabaseStore::grantStorageAccess):
(WebKit::ResourceLoadStatisticsDatabaseStore::grantStorageAccessInternal):
(WebKit::ResourceLoadStatisticsDatabaseStore::grandfatherDataForDomains):
(WebKit::ResourceLoadStatisticsDatabaseStore::ensurePrevalentResourcesForDebugMode):
(WebKit::ResourceLoadStatisticsDatabaseStore::logFrameNavigation):
(WebKit::ResourceLoadStatisticsDatabaseStore::logSubresourceLoading):
(WebKit::ResourceLoadStatisticsDatabaseStore::logSubresourceRedirect):
(WebKit::ResourceLoadStatisticsDatabaseStore::setUserInteraction):
(WebKit::ResourceLoadStatisticsDatabaseStore::logUserInteraction):
(WebKit::ResourceLoadStatisticsDatabaseStore::clearUserInteraction):
(WebKit::ResourceLoadStatisticsDatabaseStore::hasHadUserInteraction):
(WebKit::ResourceLoadStatisticsDatabaseStore::setPrevalentResource):
(WebKit::ResourceLoadStatisticsDatabaseStore::setDomainsAsPrevalent):
(WebKit::ResourceLoadStatisticsDatabaseStore::dumpResourceLoadStatistics const):
(WebKit::ResourceLoadStatisticsDatabaseStore::predicateValueForDomain const):
(WebKit::ResourceLoadStatisticsDatabaseStore::isPrevalentResource const):
(WebKit::ResourceLoadStatisticsDatabaseStore::isVeryPrevalentResource const):
(WebKit::ResourceLoadStatisticsDatabaseStore::isRegisteredAsSubresourceUnder const):
(WebKit::ResourceLoadStatisticsDatabaseStore::isRegisteredAsSubFrameUnder const):
(WebKit::ResourceLoadStatisticsDatabaseStore::isRegisteredAsRedirectingTo const):
(WebKit::ResourceLoadStatisticsDatabaseStore::clearPrevalentResource):
(WebKit::ResourceLoadStatisticsDatabaseStore::setGrandfathered):
(WebKit::ResourceLoadStatisticsDatabaseStore::isGrandfathered const):
(WebKit::ResourceLoadStatisticsDatabaseStore::setSubframeUnderTopFrameOrigin):
(WebKit::ResourceLoadStatisticsDatabaseStore::setSubresourceUnderTopFrameOrigin):
(WebKit::ResourceLoadStatisticsDatabaseStore::setSubresourceUniqueRedirectTo):
(WebKit::ResourceLoadStatisticsDatabaseStore::setSubresourceUniqueRedirectFrom):
(WebKit::ResourceLoadStatisticsDatabaseStore::setTopFrameUniqueRedirectTo):
(WebKit::ResourceLoadStatisticsDatabaseStore::setTopFrameUniqueRedirectFrom):
(WebKit::ResourceLoadStatisticsDatabaseStore::ensureResourceStatisticsForPrimaryDomain):
(WebKit::ResourceLoadStatisticsDatabaseStore::clear):
(WebKit::ResourceLoadStatisticsDatabaseStore::cookieTreatmentForOrigin const):
(WebKit::ResourceLoadStatisticsDatabaseStore::hasUserGrantedStorageAccessThroughPrompt):
(WebKit::ResourceLoadStatisticsDatabaseStore::domainsToBlock const):
(WebKit::ResourceLoadStatisticsDatabaseStore::updateCookieBlocking):
(WebKit::ResourceLoadStatisticsDatabaseStore::updateCookieBlockingForDomains):
(WebKit::ResourceLoadStatisticsDatabaseStore::clearBlockingStateForDomains):
(WebKit::ResourceLoadStatisticsDatabaseStore::processStatistics const):
(WebKit::ResourceLoadStatisticsDatabaseStore::prevalentDomains const):
(WebKit::ResourceLoadStatisticsDatabaseStore::findExpiredUserInteractions const):
(WebKit::ResourceLoadStatisticsDatabaseStore::clearExpiredUserInteractions):
(WebKit::ResourceLoadStatisticsDatabaseStore::clearGrandfathering):
(WebKit::ResourceLoadStatisticsDatabaseStore::topPrivatelyControlledDomainsToRemoveWebsiteDataFor):
(WebKit::ResourceLoadStatisticsDatabaseStore::pruneStatisticsIfNeeded):
(WebKit::ResourceLoadStatisticsDatabaseStore::updateLastSeen):
(WebKit::ResourceLoadStatisticsDatabaseStore::setLastSeen):
(WebKit::ResourceLoadStatisticsDatabaseStore::setVeryPrevalentResource):
(WebKit::ResourceLoadStatisticsDatabaseStore::removeAllStorageAccess):
- NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.h: Added.
(WebKit::ResourceLoadStatisticsDatabaseStore::isEmpty const):
- NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp:
(WebKit::ResourceLoadStatisticsMemoryStore::ResourceLoadStatisticsMemoryStore):
(WebKit::ResourceLoadStatisticsMemoryStore::incrementRecordsDeletedCountForDomains):
(WebKit::ResourceLoadStatisticsMemoryStore::classifyPrevalentResources):
(WebKit::ResourceLoadStatisticsMemoryStore::syncStorageIfNeeded):
(WebKit::ResourceLoadStatisticsMemoryStore::syncStorageImmediately):
(WebKit::ResourceLoadStatisticsMemoryStore::grandfatherDataForDomains):
(WebKit::domainsToString): Deleted.
(WebKit::OperatingDate::fromWallTime): Deleted.
(WebKit::OperatingDate::today): Deleted.
(WebKit::OperatingDate::secondsSinceEpoch const): Deleted.
(WebKit::OperatingDate::operator== const): Deleted.
(WebKit::OperatingDate::operator< const): Deleted.
(WebKit::OperatingDate::operator<= const): Deleted.
(WebKit::OperatingDate::OperatingDate): Deleted.
(WebKit::mergeOperatingDates): Deleted.
(WebKit::computeImportance): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::~ResourceLoadStatisticsMemoryStore): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::setNotifyPagesWhenDataRecordsWereScanned): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::setShouldClassifyResourcesBeforeDataRecordsRemoval): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::setShouldSubmitTelemetry): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::removeDataRecords): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::processStatisticsAndDataRecords): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::grandfatherExistingWebsiteData): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::setResourceLoadStatisticsDebugMode): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::setPrevalentResourceForDebugMode): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::scheduleStatisticsProcessingRequestIfNecessary): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::cancelPendingStatisticsProcessingRequest): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::setTimeToLiveUserInteraction): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::setMinimumTimeBetweenDataRecordsRemoval): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::setGrandfatheringTime): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::setCacheMaxAgeCap): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::updateCacheMaxAgeCap): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::setAgeCapForClientSideCookies): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::updateClientSideCookiesAgeCap): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::shouldRemoveDataRecords const): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::setDataRecordsBeingRemoved): Deleted.
(WebKit::debugLogDomainsInBatches): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::includeTodayAsOperatingDateIfNecessary): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::hasStatisticsExpired const): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::setMaxStatisticsEntries): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::setPruneEntriesDownTo): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::resetParametersToDefaultValues): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::logTestingEvent): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::didCreateNetworkProcess): Deleted.
- NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.h:
(WebKit::ResourceLoadStatisticsMemoryStore::data const):
(WebKit::ResourceLoadStatisticsMemoryStore::isDebugModeEnabled const): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::store const): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::setStorageAccessPromptsEnabled): Deleted.
(WebKit::ResourceLoadStatisticsMemoryStore::setDebugLogggingEnabled): Deleted.
(): Deleted.
- NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp: Added.
(WebKit::domainsToString):
(WebKit::OperatingDate::fromWallTime):
(WebKit::OperatingDate::today):
(WebKit::OperatingDate::secondsSinceEpoch const):
(WebKit::OperatingDate::operator== const):
(WebKit::OperatingDate::operator< const):
(WebKit::OperatingDate::operator<= const):
(WebKit::ResourceLoadStatisticsStore::ResourceLoadStatisticsStore):
(WebKit::ResourceLoadStatisticsStore::~ResourceLoadStatisticsStore):
(WebKit::ResourceLoadStatisticsStore::calculateAndSubmitTelemetry const):
(WebKit::ResourceLoadStatisticsStore::computeImportance):
(WebKit::ResourceLoadStatisticsStore::setNotifyPagesWhenDataRecordsWereScanned):
(WebKit::ResourceLoadStatisticsStore::setShouldClassifyResourcesBeforeDataRecordsRemoval):
(WebKit::ResourceLoadStatisticsStore::setShouldSubmitTelemetry):
(WebKit::ResourceLoadStatisticsStore::removeDataRecords):
(WebKit::ResourceLoadStatisticsStore::processStatisticsAndDataRecords):
(WebKit::ResourceLoadStatisticsStore::grandfatherExistingWebsiteData):
(WebKit::ResourceLoadStatisticsStore::setResourceLoadStatisticsDebugMode):
(WebKit::ResourceLoadStatisticsStore::setPrevalentResourceForDebugMode):
(WebKit::ResourceLoadStatisticsStore::scheduleStatisticsProcessingRequestIfNecessary):
(WebKit::ResourceLoadStatisticsStore::cancelPendingStatisticsProcessingRequest):
(WebKit::ResourceLoadStatisticsStore::setTimeToLiveUserInteraction):
(WebKit::ResourceLoadStatisticsStore::setMinimumTimeBetweenDataRecordsRemoval):
(WebKit::ResourceLoadStatisticsStore::setGrandfatheringTime):
(WebKit::ResourceLoadStatisticsStore::setCacheMaxAgeCap):
(WebKit::ResourceLoadStatisticsStore::updateCacheMaxAgeCap):
(WebKit::ResourceLoadStatisticsStore::setAgeCapForClientSideCookies):
(WebKit::ResourceLoadStatisticsStore::updateClientSideCookiesAgeCap):
(WebKit::ResourceLoadStatisticsStore::shouldRemoveDataRecords const):
(WebKit::ResourceLoadStatisticsStore::setDataRecordsBeingRemoved):
(WebKit::ResourceLoadStatisticsStore::updateCookieBlockingForDomains):
(WebKit::ResourceLoadStatisticsStore::clearBlockingStateForDomains):
(WebKit::ResourceLoadStatisticsStore::processStatistics const):
(WebKit::ResourceLoadStatisticsStore::statisticsEpirationTime const):
(WebKit::ResourceLoadStatisticsStore::mergeOperatingDates):
(WebKit::ResourceLoadStatisticsStore::includeTodayAsOperatingDateIfNecessary):
(WebKit::ResourceLoadStatisticsStore::hasStatisticsExpired const):
(WebKit::ResourceLoadStatisticsStore::setMaxStatisticsEntries):
(WebKit::ResourceLoadStatisticsStore::setPruneEntriesDownTo):
(WebKit::ResourceLoadStatisticsStore::resetParametersToDefaultValues):
(WebKit::ResourceLoadStatisticsStore::logTestingEvent):
(WebKit::ResourceLoadStatisticsStore::removeAllStorageAccess):
(WebKit::ResourceLoadStatisticsStore::didCreateNetworkProcess):
(WebKit::ResourceLoadStatisticsStore::debugLogDomainsInBatches):
- NetworkProcess/Classifier/ResourceLoadStatisticsStore.h: Copied from Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.h.
(WebKit::OperatingDate::OperatingDate):
(WebKit::ResourceLoadStatisticsStore::isEmpty const):
(WebKit::ResourceLoadStatisticsStore::data const):
(WebKit::ResourceLoadStatisticsStore::isDebugModeEnabled const):
(WebKit::ResourceLoadStatisticsStore::store const):
(WebKit::ResourceLoadStatisticsStore::setStorageAccessPromptsEnabled):
(WebKit::ResourceLoadStatisticsStore::setDebugLogggingEnabled):
- NetworkProcess/Classifier/ResourceLoadStatisticsStoreCocoa.mm: Renamed from Source/WebKit/UIProcess/Cocoa/ResourceLoadStatisticsMemoryStoreCocoa.mm.
(WebKit::ResourceLoadStatisticsStore::registerUserDefaultsIfNeeded):
- NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp:
(WebKit::WebResourceLoadStatisticsStore::setNotifyPagesWhenDataRecordsWereScanned):
(WebKit::WebResourceLoadStatisticsStore::setShouldClassifyResourcesBeforeDataRecordsRemoval):
(WebKit::WebResourceLoadStatisticsStore::setShouldSubmitTelemetry):
(WebKit::WebResourceLoadStatisticsStore::WebResourceLoadStatisticsStore):
(WebKit::WebResourceLoadStatisticsStore::flushAndDestroyPersistentStore):
(WebKit::WebResourceLoadStatisticsStore::setResourceLoadStatisticsDebugMode):
(WebKit::WebResourceLoadStatisticsStore::setPrevalentResourceForDebugMode):
(WebKit::WebResourceLoadStatisticsStore::scheduleStatisticsAndDataRecordsProcessing):
(WebKit::WebResourceLoadStatisticsStore::hasStorageAccess):
(WebKit::WebResourceLoadStatisticsStore::requestStorageAccess):
(WebKit::WebResourceLoadStatisticsStore::requestStorageAccessUnderOpener):
(WebKit::WebResourceLoadStatisticsStore::grantStorageAccess):
(WebKit::WebResourceLoadStatisticsStore::performDailyTasks):
(WebKit::WebResourceLoadStatisticsStore::logFrameNavigation):
(WebKit::WebResourceLoadStatisticsStore::logWebSocketLoading):
(WebKit::WebResourceLoadStatisticsStore::logSubresourceLoading):
(WebKit::WebResourceLoadStatisticsStore::logSubresourceRedirect):
(WebKit::WebResourceLoadStatisticsStore::logUserInteraction):
(WebKit::WebResourceLoadStatisticsStore::clearUserInteraction):
(WebKit::WebResourceLoadStatisticsStore::hasHadUserInteraction):
(WebKit::WebResourceLoadStatisticsStore::setLastSeen):
(WebKit::WebResourceLoadStatisticsStore::setPrevalentResource):
(WebKit::WebResourceLoadStatisticsStore::setVeryPrevalentResource):
(WebKit::WebResourceLoadStatisticsStore::isPrevalentResource):
(WebKit::WebResourceLoadStatisticsStore::isVeryPrevalentResource):
(WebKit::WebResourceLoadStatisticsStore::isRegisteredAsSubresourceUnder):
(WebKit::WebResourceLoadStatisticsStore::isRegisteredAsSubFrameUnder):
(WebKit::WebResourceLoadStatisticsStore::isRegisteredAsRedirectingTo):
(WebKit::WebResourceLoadStatisticsStore::clearPrevalentResource):
(WebKit::WebResourceLoadStatisticsStore::setGrandfathered):
(WebKit::WebResourceLoadStatisticsStore::isGrandfathered):
(WebKit::WebResourceLoadStatisticsStore::setSubframeUnderTopFrameOrigin):
(WebKit::WebResourceLoadStatisticsStore::setSubresourceUnderTopFrameOrigin):
(WebKit::WebResourceLoadStatisticsStore::setSubresourceUniqueRedirectTo):
(WebKit::WebResourceLoadStatisticsStore::setSubresourceUniqueRedirectFrom):
(WebKit::WebResourceLoadStatisticsStore::setTopFrameUniqueRedirectTo):
(WebKit::WebResourceLoadStatisticsStore::setTopFrameUniqueRedirectFrom):
(WebKit::WebResourceLoadStatisticsStore::scheduleCookieBlockingUpdate):
(WebKit::WebResourceLoadStatisticsStore::scheduleCookieBlockingUpdateForDomains):
(WebKit::WebResourceLoadStatisticsStore::scheduleClearBlockingStateForDomains):
(WebKit::WebResourceLoadStatisticsStore::scheduleClearInMemoryAndPersistent):
(WebKit::WebResourceLoadStatisticsStore::setTimeToLiveUserInteraction):
(WebKit::WebResourceLoadStatisticsStore::setMinimumTimeBetweenDataRecordsRemoval):
(WebKit::WebResourceLoadStatisticsStore::setGrandfatheringTime):
(WebKit::WebResourceLoadStatisticsStore::setMaxStatisticsEntries):
(WebKit::WebResourceLoadStatisticsStore::setPruneEntriesDownTo):
(WebKit::WebResourceLoadStatisticsStore::resetParametersToDefaultValues):
- NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h:
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::initializeNetworkProcess):
- NetworkProcess/NetworkProcessCreationParameters.cpp:
(WebKit::NetworkProcessCreationParameters::encode const):
(WebKit::NetworkProcessCreationParameters::decode):
- NetworkProcess/NetworkProcessCreationParameters.h:
- Platform/classifier/ResourceLoadStatisticsClassifier.cpp:
(WebKit::ResourceLoadStatisticsClassifier::calculateResourcePrevalence):
- Platform/classifier/ResourceLoadStatisticsClassifier.h:
- Shared/WebPreferences.yaml:
- Sources.txt:
- SourcesCocoa.txt:
- UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::WebProcessPool::platformInitializeNetworkProcess):
- UIProcess/WebProcessPool.cpp:
- WebKit.xcodeproj/project.pbxproj:
- 5:34 PM Changeset in webkit [242405] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: CSS: class input isn't fully centered
https://bugs.webkit.org/show_bug.cgi?id=195297
Reviewed by Matt Baker.
- UserInterface/Views/GeneralStyleDetailsSidebarPanel.css:
(.sidebar > .panel.details.css-style > .content ~ .class-list-container > .new-class > .class-name-input):
(body[dir=ltr] .sidebar > .panel.details.css-style > .content ~ .class-list-container > .new-class > .class-name-input): Deleted.
(body[dir=rtl] .sidebar > .panel.details.css-style > .content ~ .class-list-container > .new-class > .class-name-input): Deleted.
- 4:55 PM Changeset in webkit [242404] by
-
- 25 edits2 copies4 adds in trunk
[Web GPU] Blitting function prototypes
https://bugs.webkit.org/show_bug.cgi?id=195224
<rdar://problem/48538902>
Reviewed by Dean Jackson.
Source/WebCore:
Implement barebones GPUCommandBuffer::copy* prototypes while rounding out GPUTexture implementation details.
Test: webgpu/blit-commands.html
- Modules/webgpu/GPUOrigin3D.h: Added.
- Modules/webgpu/GPUOrigin3D.idl: Added.
- Modules/webgpu/WebGPUCommandBuffer.cpp: Add copy view struct implementations.
(WebCore::WebGPUBufferCopyView::asGPUBufferCopyView const): Added.
(WebCore::WebGPUTextureCopyView::asGPUTextureCopyView const): Added.
(WebCore::WebGPUCommandBuffer::copyBufferToBuffer): Added.
(WebCore::WebGPUCommandBuffer::copyBufferToTexture): Added.
(WebCore::WebGPUCommandBuffer::copyTextureToBuffer): Added.
(WebCore::WebGPUCommandBuffer::copyTextureToTexture): Added.
- Modules/webgpu/WebGPUCommandBuffer.h: Add new functions and supporting structs.
- Modules/webgpu/WebGPUCommandBuffer.idl: Ditto.
- Modules/webgpu/WebGPURenderPassDescriptor.cpp: Refactor constructors to copy the entire base class.
(WebCore::GPURenderPassColorAttachmentDescriptor::GPURenderPassColorAttachmentDescriptor):
(WebCore::GPURenderPassDepthStencilAttachmentDescriptor::GPURenderPassDepthStencilAttachmentDescriptor):
(WebCore::WebGPURenderPassDescriptor::asGPURenderPassDescriptor const):
(WebCore::attachment): Deleted.
- Modules/webgpu/WebGPUTexture.h:
(WebCore::WebGPUTexture::texture const): Added.
- platform/graphics/gpu/GPUBuffer.h:
(WebCore::GPUBuffer::byteLength const): Added.
(WebCore::GPUBuffer::isTransferSource const): Added.
(WebCore::GPUBuffer::isTransferDestination const): Renamed from isTransferDst. Refactored for OptionSet API.
(WebCore::GPUBuffer::isVertex const): Ditto.
(WebCore::GPUBuffer::isUniform const): Ditto.
(WebCore::GPUBuffer::isStorage const): Ditto.
(WebCore::GPUBuffer::isMappable const): Ditto.
(WebCore::GPUBuffer::isMapWrite const): Ditto.
(WebCore::GPUBuffer::isMapRead const): Ditto.
- platform/graphics/gpu/GPUBufferUsage.h: Refactored for better bit flag style.
- platform/graphics/gpu/GPUCommandBuffer.h:
(WebCore::GPUCommandBuffer::blitEncoder const): Added.
- platform/graphics/gpu/GPURenderPassDescriptor.h:
- platform/graphics/gpu/GPUTexture.h: Cache usage flags for reference.
(WebCore::GPUTexture::isTransferSrc const): Added.
(WebCore::GPUTexture::isTransferDst const): Added.
(WebCore::GPUTexture::isOutputAttachment const): Added.
- platform/graphics/gpu/GPUTextureUsage.h: Refactor to match GPUBufferUsage.h.
- platform/graphics/gpu/cocoa/GPUBufferMetal.mm:
(WebCore::GPUBuffer::validateBufferUsage): Renamed from validateBufferCreate, refactored for OptionSet.
(WebCore::GPUBuffer::tryCreate):
(WebCore::GPUBuffer::GPUBuffer):
(WebCore::GPUBuffer::isReadOnly const):
(WebCore::GPUBuffer::setSubData): Add alignment check according to Metal docs.
- platform/graphics/gpu/cocoa/GPUCommandBufferMetal.mm:
(WebCore::GPUCommandBuffer::create): No need to use this alias here.
(WebCore::GPUCommandBuffer::GPUCommandBuffer): Ditto.
(WebCore::GPUCommandBuffer::copyBufferToBuffer): Added.
(WebCore::GPUCommandBuffer::copyBufferToTexture): Added.
(WebCore::GPUCommandBuffer::copyTextureToBuffer): Added.
(WebCore::GPUCommandBuffer::copyTextureToTexture): Added.
- platform/graphics/gpu/cocoa/GPUQueueMetal.mm:
(WebCore::GPUQueue::submit): End encoding on the MTLCommandBuffer's blitCommandEncoder if it was used.
- platform/graphics/gpu/cocoa/GPUSwapChainMetal.mm:
(WebCore::GPUSwapChain::getNextTexture): Now provide usage flags to texture creation.
- platform/graphics/gpu/cocoa/GPUTextureMetal.mm:
(WebCore::mtlTextureUsageForGPUTextureUsageFlags): Refactor validation.
(WebCore::tryCreateMtlTextureDescriptor): Ditto.
(WebCore::GPUTexture::tryCreate): Now provide usage flags to texture creation.
(WebCore::GPUTexture::create): Ditto.
(WebCore::GPUTexture::GPUTexture): Ditto.
(WebCore::GPUTexture::createDefaultTextureView): Ditto.
LayoutTests:
Add basic test to copy data with all new blitting functions and verify the result.
- webgpu/blit-commands-expected.html: Added.
- webgpu/blit-commands.html: Added.
- webgpu/buffer-command-buffer-races.html: Fixed typo.
- webgpu/resources/green-400.png: Added.
- 4:43 PM Changeset in webkit [242403] by
-
- 6 edits2 adds in trunk
[ContentChangeObserver] Introduce fixed duration content observation
https://bugs.webkit.org/show_bug.cgi?id=195295
<rdar://problem/48579913>
Reviewed by Simon Fraser.
Source/WebCore:
Some pages have a runloop-like scheduling setup where the content triggering change happens at a nested timer firing.
This patch helps finding cases like that using a 32ms long fixed window. Currently nested timers get dropped on the floor and
we stop observing for content changes before they even get fired.
Test: fast/events/touch/ios/visibility-change-happens-on-timer-hops.html
- page/ios/ContentChangeObserver.cpp:
(WebCore::ContentChangeObserver::ContentChangeObserver):
(WebCore::ContentChangeObserver::startContentObservationForDuration):
(WebCore::ContentChangeObserver::stopDurationBasedContentObservation):
(WebCore::ContentChangeObserver::hasDeterminateState const):
(WebCore::ContentChangeObserver::adjustObservedState):
- page/ios/ContentChangeObserver.h:
(WebCore::ContentChangeObserver::isObservingContentChanges const):
(WebCore::ContentChangeObserver::hasPendingActivity const):
Source/WebKit:
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::handleSyntheticClick):
LayoutTests:
- fast/events/touch/ios/visibility-change-happens-on-timer-hops-expected.txt: Added.
- fast/events/touch/ios/visibility-change-happens-on-timer-hops.html: Added.
- 4:42 PM Changeset in webkit [242402] by
-
- 1 copy in tags/Safari-607.1.40.0.4
Tag Safari-607.1.40.0.4.
- 4:31 PM Changeset in webkit [242401] by
-
- 5 edits2 adds in trunk
Native text selection UI is incorrectly suppressed in Microsoft Visio
https://bugs.webkit.org/show_bug.cgi?id=195178
<rdar://problem/48519394>
Reviewed by Darin Adler.
Source/WebCore:
Currently, our heuristics for detecting hidden editable areas attempt to search for empty parent renderers with
"overflow: hidden". It does this by ascending the layer tree in search of renderers that have an empty content
size, and whose renderers' styles indicate that they have overflow: hidden in the X or Y directions. This fails
in the case where a child renderer is positioned out of flow, relative to one of its parent layers, since the
child will be visible, but we'll incorrectly believe that it is hidden. This leads to selection UI unexpectedly
disappearing in the online version of Microsoft Visio.
To fix this, we check whether the enclosing layer around the editable element has an empty clip rect; if the
element is inside of a subframe, we additionally walk up to each enclosing frame's layer and check if that
frame's layer has an empty clip rect.
Test: editing/selection/ios/do-not-hide-selection-in-visible-container.html
- rendering/RenderObject.cpp:
(WebCore::RenderObject::isTransparentOrFullyClippedRespectingParentFrames const):
LayoutTests:
Add a new layout test that focuses several different text fields and checks whether or not editing UI is shown:
- A text field inside an overflow: hidden container, all within an absolutely positioned iframe, such that the
text field is not visible. The caret should be hidden.
- A text field inside an absolutely positioned iframe, inside an overflow: hidden container, such that the
text field is visible. The caret should be visible.
- A text field inside a relatively positioned iframe in an overflow: hidden container, such that the text field
is not visible. The caret should be hidden.
- A text field that is position: fixed inside an overflow: hidden container, such that the text field is
visible. The caret should be visible.
- editing/selection/ios/do-not-hide-selection-in-visible-container-expected.txt: Added.
- editing/selection/ios/do-not-hide-selection-in-visible-container.html: Added.
- editing/selection/ios/hide-selection-in-empty-overflow-hidden-container.html:
- resources/ui-helper.js:
(window.UIHelper.activateElementAndWaitForInputSession):
Add a convenience function in UIHelper that taps a given element and waits for the keyboard to show.
- 4:09 PM Changeset in webkit [242400] by
-
- 9 edits in trunk/Source/WebKit
Unreviewed, rolling out r242396.
Found issue to be unrelated. reverting my rollout.
Reverted changeset:
"Unreviewed, rolling out r242222."
https://bugs.webkit.org/show_bug.cgi?id=193683
https://trac.webkit.org/changeset/242396
- 3:51 PM Changeset in webkit [242399] by
-
- 2 edits in trunk/Source/JavaScriptCore
Unreviewed, build fix for debug builds after r242397
- runtime/JSString.h:
- 3:49 PM Changeset in webkit [242398] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed, a followup after r242336
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::webViewDidMoveToWindow):
Copy the list of observers before iterating it to avoid observers modifying the list.
- 3:27 PM Changeset in webkit [242397] by
-
- 11 edits1 add in trunk
[JSC] Store bits for JSRopeString in 3 stores
https://bugs.webkit.org/show_bug.cgi?id=195234
Reviewed by Saam Barati.
JSTests:
- stress/null-rope-and-collectors.js: Added.
Source/JavaScriptCore:
This patch cleans up the initialization of JSRopeString fields in DFG and FTL.
Previously, we store some part of data separately. Instead, this patch calculates
the data first by bit operations and store calculated data with fewer stores.
This patch also cleans up is8Bit and isSubstring flags. We put them in lower bits
of the first fiber instead of the upper 16 bits. Since we only have 3 bit flags, (isRope, is8Bit, isSubstring),
we can put them into the lower 3 bits, they are always empty due to alignment.
- bytecode/AccessCase.cpp:
(JSC::AccessCase::generateImpl): A bit clean up of StringLength IC to give a chance of unnecessary mov removal.
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::canBeRope):
(JSC::DFG::SpeculativeJIT::compileGetArrayLength):
(JSC::DFG::SpeculativeJIT::compileMakeRope):
- dfg/DFGSpeculativeJIT.h:
- ftl/FTLAbstractHeapRepository.cpp:
(JSC::FTL::AbstractHeapRepository::AbstractHeapRepository):
- ftl/FTLAbstractHeapRepository.h:
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileMakeRope):
(JSC::FTL::DFG::LowerDFGToB3::isRopeString):
(JSC::FTL::DFG::LowerDFGToB3::isNotRopeString):
- runtime/JSString.cpp:
(JSC::JSString::visitChildren):
- runtime/JSString.h:
(JSC::JSString::is8Bit const):
(JSC::JSString::isSubstring const):
- tools/JSDollarVM.cpp:
(JSC::functionCreateNullRopeString):
(JSC::JSDollarVM::finishCreation):
- 3:11 PM Changeset in webkit [242396] by
-
- 9 edits in trunk/Source/WebKit
Unreviewed, rolling out r242222.
Broke internal debug testing
Reverted changeset:
"[iOS] Move calls to [UIKeyboard isInHardwareKeyboardMode] to
the UI process."
https://bugs.webkit.org/show_bug.cgi?id=193683
https://trac.webkit.org/changeset/242222
- 2:57 PM Changeset in webkit [242395] by
-
- 4 edits in trunk/Source/WebInspectorUI
Web Inspector: Audit: show the version number in the UI
https://bugs.webkit.org/show_bug.cgi?id=195292
Reviewed by Matt Baker.
- UserInterface/Views/AuditNavigationSidebarPanel.js:
(WI.AuditNavigationSidebarPanel.prototype.showDefaultContentView):
(WI.AuditNavigationSidebarPanel.prototype._updateNoAuditsPlaceholder):
Fix the logic for showing a placeholder when editing or with only disabled tests.
- UserInterface/Views/AuditNavigationSidebarPanel.css:
(.sidebar > .panel.navigation.audit > .content > .message-text-view): Added.
(.audit-version): Added.
Don't obstruct the "Edit" button when showing a placeholder.
- Localizations/en.lproj/localizedStrings.js:
- 2:36 PM Changeset in webkit [242394] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed build fix after r242378
- UIProcess/ios/EditableImageController.mm:
(WebKit::EditableImageController::associateWithAttachment):
- 2:09 PM Changeset in webkit [242393] by
-
- 2 edits in branches/safari-608.1.5.1-branch/Source/WebKit
Cherry-pick r242376. rdar://problem/47820581
Correctly handle sandbox extensions when the same WKWebView loads multiple file:// URLs.
<rdar://problem/47820581> and https://bugs.webkit.org/show_bug.cgi?id=195291
Reviewed by Andy Estes.
- WebProcess/WebPage/WebPage.cpp: (WebKit::shouldReuseCommittedSandboxExtension): Only retain the previous sandbox extension if the file URL we're currently loading is functionally equivalent to the previous one.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@242376 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 2:08 PM Changeset in webkit [242392] by
-
- 7 edits in branches/safari-608.1.5.1-branch/Source
Versioning.
- 2:00 PM Changeset in webkit [242391] by
-
- 3 edits in trunk/Source/WebCore
gPictureOwnerMap is unnecessary
https://bugs.webkit.org/show_bug.cgi?id=195228
Reviewed by Zalan Bujtas.
Just store in HTMLImageElement. An extra pointer isn't going to affect the memory use here.
If anything, we should worry about m_editableImage and m_pendingClonedAttachmentID instead.
- html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::pictureElement const):
(WebCore::HTMLImageElement::setPictureElement):
- html/HTMLImageElement.h:
- 1:59 PM Changeset in webkit [242390] by
-
- 2 edits in tags/Safari-608.1.7.1.1/Source/WebKit
Cherry-pick r242376. rdar://problem/47820581
Correctly handle sandbox extensions when the same WKWebView loads multiple file:// URLs.
<rdar://problem/47820581> and https://bugs.webkit.org/show_bug.cgi?id=195291
Reviewed by Andy Estes.
- WebProcess/WebPage/WebPage.cpp: (WebKit::shouldReuseCommittedSandboxExtension): Only retain the previous sandbox extension if the file URL we're currently loading is functionally equivalent to the previous one.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@242376 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 1:57 PM Changeset in webkit [242389] by
-
- 2 edits in trunk/Source/WebCore
[iOS] Caret x-position in empty text area does not match text field
https://bugs.webkit.org/show_bug.cgi?id=195125
<rdar://problem/47161070>
Remove the word "use" in the added comment to make it read well.
- css/html.css:
(textarea):
- 1:53 PM Changeset in webkit [242388] by
-
- 10 edits in branches/safari-607-branch
Cherry-pick r242302. rdar://problem/48572673
Add setters on WKWebsiteDataStore for sourceApplicationBundleIdentifier and sourceApplicationSecondaryIdentifier
https://bugs.webkit.org/show_bug.cgi?id=195229
<rdar://problem/48520362>
Reviewed by Chris Dumez.
Source/WebKit:
Just like _setBoundInterfaceIdentifier, we need a way to set these properties after instantiation of a WKWebsiteDataStore,
but we need to make sure we don't set it after the parameters have been copied to the NetworkProcess.
Functionality verified by manual testing. See radar.
Added an API test that verifies the setter restrictions work as expected.
- UIProcess/API/Cocoa/WKWebsiteDataStore.mm: (-[WKWebsiteDataStore _sourceApplicationBundleIdentifier]): (-[WKWebsiteDataStore _setSourceApplicationBundleIdentifier:]): (-[WKWebsiteDataStore _sourceApplicationSecondaryIdentifier]): (-[WKWebsiteDataStore _setSourceApplicationSecondaryIdentifier:]):
- UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:
- UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm: (WebKit::toPKPaymentRequest):
- UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm: (WebKit::WebsiteDataStore::parameters):
- UIProcess/WebsiteData/WebsiteDataStore.cpp: (WebKit::WebsiteDataStore::WebsiteDataStore): (WebKit::WebsiteDataStore::setSourceApplicationSecondaryIdentifier): (WebKit::WebsiteDataStore::setSourceApplicationBundleIdentifier):
- UIProcess/WebsiteData/WebsiteDataStore.h: (WebKit::WebsiteDataStore::sourceApplicationBundleIdentifier): (WebKit::WebsiteDataStore::sourceApplicationSecondaryIdentifier):
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm: (TEST):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@242302 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 1:52 PM Changeset in webkit [242387] by
-
- 10 edits1 add in trunk
Add WeakHashSet
https://bugs.webkit.org/show_bug.cgi?id=195152
Reviewed by Antti Koivisto.
Source/WTF:
Added WeakHashSet which is a HashSet of WeakPtr. When the object pointed by WeakPtr is deleted,
WeakHashSet treats the key to be no longer in the set. That is, WeakHashSet::contains returns false
and const_iterator skips such a WeakPtr in the set.
We decided not to make HashSet<WeahPtr<T>> work because it involves weird semantics such as making
find(X) delete the table entry as remove(find(X)) would be a no-op otherwise as find(X) would return
necessarily need to return HashSet<WeakPtr<T>>::end().
Furthermore, we cannot determine the true size of this set in O(1) because the objected pointed by
some of WeakPtr in the set may have already been deleted. This has implications that we can't have
size(), isEmpty(), random(), etc... as O(1) operation.
WeakHashSet is implemented as HashSet<WeakReference<T>>. HashTable::rehash has been updated to delete
WeakReference<T>'s whose m_ptr has become null, and HashTable::expand first deletes any such entry
before deciding an actual expansion is needed. This is accomplished via newly added hash trait,
hasIsReleasedWeakValueFunction, and HashTraits<Ref<WeakReference<T>>>::isReleasedWeakValue which
returns true for when WeakReference<T> pointed by Ref<WeakReference<T>> has null m_ptr, not to be
confused with Ref<WeakReference<T>> itself pointing to a null WeakReference<T>.
- WTF.xcodeproj/project.pbxproj:
- wtf/CMakeLists.txt:
- wtf/Forward.h:
- wtf/HashSet.h:
(WTF::HashSet<T, U, V>::checkConsistency const): Added.
- wtf/HashTable.h:
(WTF::HashTable::isReleasedWeakBucket): Added.
(WTF::HashTable::expand): Delete WeakReference<T> with null m_ptr first. This updates m_keyCount
and may make mustRehashInPlace() return true.
(WTF::HashTable::deleteReleasedWeakBuckets): Added.
(WTF::HashTable::rehash): Delete WeakReference<T> with null m_ptr. Also refactored the code a bit
to avoid keep repeating oldTable[i].
- wtf/HashTraits.h:
(WTF::HashTraits<T>::isHashTraitsReleasedWeakValue): Added.
(WTF::RefHashTraits<T>): Extracted from HashTraits<Ref<P>> to share code with
HashTraits<Ref<WeakReference<T>>>.
(WTF::HashTraitsReleasedWeakValueChecker<Traits, hasIsReleasedWeakValueFunction>): Added.
(WTF::isHashTraitsReleasedWeakValue<Traits, hasIsReleasedWeakValueFunction>): Added.
- wtf/WeakHashSet.h: Added.
(WTF::WeakHashSet): Added.
(WTF::WeakHashSet::WeakHashSetConstIterator::WeakHashSetConstIterator):
(WTF::WeakHashSet::WeakHashSetConstIterator::get const):
(WTF::WeakHashSet::WeakHashSetConstIterator::operator* const):
(WTF::WeakHashSet::WeakHashSetConstIterator::operator-> const):
(WTF::WeakHashSet::WeakHashSetConstIterator::operator++):
(WTF::WeakHashSet::WeakHashSetConstIterator::skipEmptyBuckets):
(WTF::WeakHashSet::WeakHashSetConstIterator::operator== const):
(WTF::WeakHashSet::WeakHashSetConstIterator::operator!= const):
(WTF::WeakHashSet::WeakHashSet):
(WTF::WeakHashSet::begin const):
(WTF::WeakHashSet::end const):
(WTF::WeakHashSet::add):
(WTF::WeakHashSet::remove):
(WTF::WeakHashSet::contains const):
(WTF::WeakHashSet::capacity const):
(WTF::WeakHashSet::computeSize const): Deletes any WeakReference<T> with null m_ptr first.
(WTF::WeakHashSet::checkConsistency const):
(WTF::HashTraits<Ref<WeakReference<T>>>): Added. This hash traits triggers the new code in HashTable's
expand and rehash methods to delete WeakReference<T> with null m_ptr.
(WTF::HashTraits<Ref<WeakReference<T>>>::isReleasedWeakValue):
- wtf/WeakPtr.h:
(WTF::WeakReference::~WeakReference): Added so that we can keep track the number of live WeakReference
in API tests by template specializations.
Tools:
Added tests for WeakHashSet.
- TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
(TestWebKitAPI::Base::Base): Moved.
(TestWebKitAPI::Derived::foo): Moved.
(WTF::WeakReference<TestWebKitAPI::Base>): Added to track the number of live WeakReference.
(WTF::WeakReference<TestWebKitAPI::Base>::WeakReference):
(WTF::WeakReference<TestWebKitAPI::Base>::~WeakReference):
(TestWebKitAPI::computeSizeOfWeakHashSet): Added.
- 1:48 PM Changeset in webkit [242386] by
-
- 10 edits in trunk/Source
ITMLKit Inspector: Data Bindings / Associated Data for nodes
https://bugs.webkit.org/show_bug.cgi?id=195290
<rdar://problem/48304019>
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2019-03-04
Reviewed by Devin Rousso.
Source/JavaScriptCore:
- inspector/protocol/DOM.json:
Source/WebCore:
- inspector/agents/InspectorDOMAgent.h:
- inspector/agents/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::getDataBindingsForNode):
(WebCore::InspectorDOMAgent::getAssociatedDataForNode):
Stub these for web pages, they will only be used for ITMLKit right now.
Source/WebInspectorUI:
- Localizations/en.lproj/localizedStrings.js:
New title and empty message strings.
- UserInterface/Views/DOMNodeDetailsSidebarPanel.css:
(.sidebar > .panel.dom-node-details .details-section.dom-node-associated-data > .content .row):
- UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
(WI.DOMNodeDetailsSidebarPanel.prototype.initialLayout):
(WI.DOMNodeDetailsSidebarPanel.prototype.layout):
(WI.DOMNodeDetailsSidebarPanel.prototype._refreshDataBindings):
(WI.DOMNodeDetailsSidebarPanel.prototype._refreshAssociatedData):
(WI.DOMNodeDetailsSidebarPanel.prototype._attributesChanged):
New Node sections only enabled for ITMLKitWI.sharedApp.hasExtraDomains
.
- UserInterface/Views/ObjectTreeView.js:
(WI.ObjectTreeView):
Provide a way, like TreeElement/View to access the ObjectTreeView from an element.
- 1:37 PM Changeset in webkit [242385] by
-
- 7 edits in tags/Safari-608.1.7.1.1/Source
Versioning.
- 1:33 PM Changeset in webkit [242384] by
-
- 1 copy in tags/Safari-608.1.7.1.1
New tag.
- 1:26 PM Changeset in webkit [242383] by
-
- 10 edits in branches/safari-607.1.40.0-branch
Cherry-pick r242302. rdar://problem/48572657
Add setters on WKWebsiteDataStore for sourceApplicationBundleIdentifier and sourceApplicationSecondaryIdentifier
https://bugs.webkit.org/show_bug.cgi?id=195229
<rdar://problem/48520362>
Reviewed by Chris Dumez.
Source/WebKit:
Just like _setBoundInterfaceIdentifier, we need a way to set these properties after instantiation of a WKWebsiteDataStore,
but we need to make sure we don't set it after the parameters have been copied to the NetworkProcess.
Functionality verified by manual testing. See radar.
Added an API test that verifies the setter restrictions work as expected.
- UIProcess/API/Cocoa/WKWebsiteDataStore.mm: (-[WKWebsiteDataStore _sourceApplicationBundleIdentifier]): (-[WKWebsiteDataStore _setSourceApplicationBundleIdentifier:]): (-[WKWebsiteDataStore _sourceApplicationSecondaryIdentifier]): (-[WKWebsiteDataStore _setSourceApplicationSecondaryIdentifier:]):
- UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:
- UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm: (WebKit::toPKPaymentRequest):
- UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm: (WebKit::WebsiteDataStore::parameters):
- UIProcess/WebsiteData/WebsiteDataStore.cpp: (WebKit::WebsiteDataStore::WebsiteDataStore): (WebKit::WebsiteDataStore::setSourceApplicationSecondaryIdentifier): (WebKit::WebsiteDataStore::setSourceApplicationBundleIdentifier):
- UIProcess/WebsiteData/WebsiteDataStore.h: (WebKit::WebsiteDataStore::sourceApplicationBundleIdentifier): (WebKit::WebsiteDataStore::sourceApplicationSecondaryIdentifier):
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm: (TEST):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@242302 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 1:20 PM Changeset in webkit [242382] by
-
- 8 edits in trunk/Source/JavaScriptCore
[JSC] Make Reflect lazily-allocated by dropping @Reflect references from builtin JS
https://bugs.webkit.org/show_bug.cgi?id=195250
Reviewed by Saam Barati.
By removing @Reflect from builtin JS, we can make Reflect object allocation lazy.
We move @ownKeys function from @Reflect to @Object to remove @Reflect reference.
We also remove m_intlObject field from JSGlobalObject since we no longer use it.
- builtins/BuiltinNames.h:
- builtins/GlobalOperations.js:
(globalPrivate.copyDataProperties):
(globalPrivate.copyDataPropertiesNoExclusions):
- runtime/JSGlobalObject.cpp:
(JSC::createReflectProperty):
(JSC::JSGlobalObject::init):
(JSC::JSGlobalObject::visitChildren):
- runtime/JSGlobalObject.h:
- runtime/ObjectConstructor.cpp:
(JSC::ObjectConstructor::finishCreation):
(JSC::objectConstructorOwnKeys):
- runtime/ReflectObject.cpp:
(JSC::ReflectObject::finishCreation):
- 1:17 PM Changeset in webkit [242381] by
-
- 7 edits in tags/Safari-608.1.7.3/Source
Versioning.
- 1:13 PM Changeset in webkit [242380] by
-
- 1 copy in tags/Safari-608.1.7.3
New tag.
- 1:07 PM Changeset in webkit [242379] by
-
- 40 edits3 adds in trunk
[iOS] Caret x-position in empty text area does not match text field
https://bugs.webkit.org/show_bug.cgi?id=195125
<rdar://problem/47161070>
Reviewed by Darin Adler.
Source/WebCore:
Fix up User Agent styles for <textarea> on iOS such that they have the same left padding
width and same text-indent as <input type="text">. This makes the x-position of the caret
in an empty textarea match the position of the caret in an empty text field.
Test: fast/forms/textarea/ios/caret-x-position-in-textarea-matches-textfield.html
- css/html.css:
(textarea): For iOS Family, do not use the padding shorthand property. Instead explicitly specify
padding-top and padding-bottom to be 2px to keep our current behavior (because it looks reasonable)
and do not specify left and right padding so that we inherit the padding set earlier in this file.
(textarea::placeholder): Deleted. This was added to "try" to make fix up the position of the placeholder
text so as to match the position of the textarea's inner text and the position of a text field's inner
text. This fix up may have worked out visually when it was added, but based on the discovery of the
hardcoded 3px left and right padding (see below remark) it looks like it was always one pixel too short.
- html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::createInnerTextStyle): Remove hardcoded 3px left and right padding.
LayoutTests:
Update expected results due to changes in padding.
- TestExpectations: Remove some tests that are now passing.
- editing/selection/ios/show-selection-in-empty-overflow-hidden-document-expected.txt:
- editing/selection/ios/show-selection-in-empty-overflow-hidden-document.html:
- fast/forms/textarea/ios/caret-x-position-in-textarea-matches-textfield-expected.txt: Added.
- fast/forms/textarea/ios/caret-x-position-in-textarea-matches-textfield.html: Added.
- platform/ios-wk2/editing/input/reveal-caret-of-multiline-input-expected.txt:
- platform/ios-wk2/editing/inserting/4960120-1-expected.txt:
- platform/ios-wk2/editing/pasteboard/pasting-tabs-expected.txt:
- platform/ios-wk2/fast/block/float/overhanging-tall-block-expected.txt:
- platform/ios-wk2/fast/block/margin-collapse/103-expected.txt:
- platform/ios-wk2/fast/dom/HTMLTextAreaElement/reset-textarea-expected.txt:
- platform/ios-wk2/fast/dynamic/008-expected.txt:
- platform/ios-wk2/fast/forms/basic-textareas-expected.txt:
- platform/ios-wk2/fast/forms/textAreaLineHeight-expected.txt:
- platform/ios-wk2/fast/forms/textarea-align-expected.txt:
- platform/ios-wk2/fast/forms/textarea-placeholder-pseudo-style-expected.txt:
- platform/ios-wk2/fast/forms/textarea-placeholder-visibility-1-expected.txt:
- platform/ios-wk2/fast/forms/textarea-placeholder-visibility-2-expected.txt:
- platform/ios-wk2/fast/forms/textarea-scroll-height-expected.txt:
- platform/ios-wk2/fast/forms/textarea-scrollbar-expected.txt:
- platform/ios-wk2/fast/forms/textarea-scrolled-type-expected.txt:
- platform/ios-wk2/fast/forms/textarea-setinnerhtml-expected.txt:
- platform/ios-wk2/fast/hidpi/resize-corner-hidpi-expected.txt:
- platform/ios-wk2/fast/overflow/overflow-x-y-expected.txt:
- platform/ios-wk2/fast/text/international/rtl-white-space-pre-wrap-expected.txt:
- platform/ios-wk2/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.txt:
- platform/ios/TestExpectations:
- platform/ios/compositing/overflow/textarea-scroll-touch-expected.txt:
- platform/ios/fast/forms/form-element-geometry-expected.txt:
- platform/ios/fast/forms/linebox-overflow-in-textarea-padding-expected.txt:
- platform/ios/fast/forms/negativeLineHeight-expected.txt:
- platform/ios/fast/forms/text-control-intrinsic-widths-expected.txt:
- platform/ios/fast/forms/textarea-width-expected.txt:
- platform/ios/fast/replaced/width100percent-textarea-expected.txt:
- platform/ios/fast/scrolling/ios/textarea-scroll-touch-expected.txt:
- platform/ios/tables/mozilla/bugs/bug194024-expected.txt:
- platform/ios/tables/mozilla/bugs/bug30559-expected.txt:
- platform/ios/tables/mozilla/bugs/bug30692-expected.txt:
- 1:01 PM Changeset in webkit [242378] by
-
- 5 edits in trunk/Source/WebKit
Check contextIDs when handling WebContent messages
https://bugs.webkit.org/show_bug.cgi?id=195289
<rdar://problem/48475870>
Reviewed by Alex Christensen.
The WebContent process is untrusted because it handles arbitrary markup and javascript from untrusted sources.
We should handle its messages with suspicion, and make sure the arguments are valid and usable before honoring them.
This patch hardens the message passing layer by performing MESSAGE_CHECK in places that had been overlooked.
- UIProcess/Cocoa/PlaybackSessionManagerProxy.mm:
(WebKit::PlaybackSessionManagerProxy::setUpPlaybackControlsManagerWithID):
(WebKit::PlaybackSessionManagerProxy::currentTimeChanged):
(WebKit::PlaybackSessionManagerProxy::bufferedTimeChanged):
(WebKit::PlaybackSessionManagerProxy::seekableRangesVectorChanged):
(WebKit::PlaybackSessionManagerProxy::canPlayFastReverseChanged):
(WebKit::PlaybackSessionManagerProxy::audioMediaSelectionOptionsChanged):
(WebKit::PlaybackSessionManagerProxy::legibleMediaSelectionOptionsChanged):
(WebKit::PlaybackSessionManagerProxy::audioMediaSelectionIndexChanged):
(WebKit::PlaybackSessionManagerProxy::legibleMediaSelectionIndexChanged):
(WebKit::PlaybackSessionManagerProxy::externalPlaybackPropertiesChanged):
(WebKit::PlaybackSessionManagerProxy::wirelessVideoPlaybackDisabledChanged):
(WebKit::PlaybackSessionManagerProxy::mutedChanged):
(WebKit::PlaybackSessionManagerProxy::volumeChanged):
(WebKit::PlaybackSessionManagerProxy::durationChanged):
(WebKit::PlaybackSessionManagerProxy::playbackStartedTimeChanged):
(WebKit::PlaybackSessionManagerProxy::rateChanged):
(WebKit::PlaybackSessionManagerProxy::pictureInPictureSupportedChanged):
(WebKit::PlaybackSessionManagerProxy::pictureInPictureActiveChanged):
(WebKit::PlaybackSessionManagerProxy::handleControlledElementIDResponse const):
- UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp:
(WebKit::UserMediaCaptureManagerProxy::createMediaSourceForCaptureDeviceWithConstraints):
(WebKit::UserMediaCaptureManagerProxy::startProducingData):
(WebKit::UserMediaCaptureManagerProxy::stopProducingData):
(WebKit::UserMediaCaptureManagerProxy::end):
(WebKit::UserMediaCaptureManagerProxy::capabilities):
(WebKit::UserMediaCaptureManagerProxy::setMuted):
(WebKit::UserMediaCaptureManagerProxy::applyConstraints):
- UIProcess/Cocoa/VideoFullscreenManagerProxy.mm:
(WebKit::VideoFullscreenManagerProxy::setupFullscreenWithID):
(WebKit::VideoFullscreenManagerProxy::setHasVideo):
(WebKit::VideoFullscreenManagerProxy::setVideoDimensions):
(WebKit::VideoFullscreenManagerProxy::enterFullscreen):
(WebKit::VideoFullscreenManagerProxy::exitFullscreen):
(WebKit::VideoFullscreenManagerProxy::exitFullscreenWithoutAnimationToMode):
(WebKit::VideoFullscreenManagerProxy::setInlineRect):
(WebKit::VideoFullscreenManagerProxy::setHasVideoContentLayer):
(WebKit::VideoFullscreenManagerProxy::cleanupFullscreen):
(WebKit::VideoFullscreenManagerProxy::preparedToReturnToInline):
(WebKit::VideoFullscreenManagerProxy::preparedToExitFullscreen):
- UIProcess/ios/EditableImageController.mm:
(WebKit::EditableImageController::didCreateEditableImage):
(WebKit::EditableImageController::didDestroyEditableImage):
(WebKit::EditableImageController::associateWithAttachment):
- 12:54 PM Changeset in webkit [242377] by
-
- 2 edits in trunk/Source/WebKit
Fix crashes when NetworkResourceLoader/NetworkLoadChecker are destroyed during HTTPS upgrade check
https://bugs.webkit.org/show_bug.cgi?id=195238
<rdar://problem/47598656>
Patch by Alex Christensen <achristensen@webkit.org> on 2019-03-04
Reviewed by Chris Dumez.
- NetworkProcess/NetworkLoadChecker.cpp:
(WebKit::NetworkLoadChecker::checkRequest):
- 12:39 PM Changeset in webkit [242376] by
-
- 2 edits in trunk/Source/WebKit
Correctly handle sandbox extensions when the same WKWebView loads multiple file:// URLs.
<rdar://problem/47820581> and https://bugs.webkit.org/show_bug.cgi?id=195291
Reviewed by Andy Estes.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::shouldReuseCommittedSandboxExtension): Only retain the previous sandbox extension if the file URL
we're currently loading is functionally equivalent to the previous one.
- 12:36 PM Changeset in webkit [242375] by
-
- 10 edits in trunk/Source/WebKit
Drop legacy userAgentForURL injected bundle SPI
https://bugs.webkit.org/show_bug.cgi?id=195222
<rdar://problem/46734147>
Reviewed by Darin Adler.
Drop legacy userAgentForURL injected bundle SPI. There are no longer any clients, and using
WebsitePolicies.customUserAgent is the way to go nowadays.
- WebProcess/InjectedBundle/API/APIInjectedBundlePageLoaderClient.h:
(API::InjectedBundle::PageLoaderClient::willDestroyFrame):
(API::InjectedBundle::PageLoaderClient::userAgentForURL const): Deleted.
- WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h:
- WebProcess/InjectedBundle/API/c/WKBundlePageLoaderClient.h:
- WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
(setUpPageLoaderClient):
(userAgentForURL): Deleted.
- WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
(WebKit::InjectedBundlePageLoaderClient::userAgentForURL const): Deleted.
- WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::userAgent const):
- 12:35 PM Changeset in webkit [242374] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Canvas: protocol error on first open
https://bugs.webkit.org/show_bug.cgi?id=195059
<rdar://problem/48407871>
Reviewed by Joseph Pecoraro.
- UserInterface/Controllers/CanvasManager.js:
(WI.CanvasManager.prototype.initializeTarget):
(WI.CanvasManager.prototype.static supportsRecordingAutoCapture):
(WI.CanvasManager.prototype.setRecordingAutoCaptureFrameCount):
If targets aren't available, wait until they are and then set the auto-capture frame count.
- 12:33 PM Changeset in webkit [242373] by
-
- 2 edits1 add in trunk/PerformanceTests
Add a detailed summary page for JetStream 2
https://bugs.webkit.org/show_bug.cgi?id=195014
Rubber-stamped by Darin Adler.
- JetStream2/JetStream.css:
(a:link, a:visited):
- JetStream2/in-depth.html: Added.
- 12:30 PM Changeset in webkit [242372] by
-
- 5 edits in trunk/Source/WebCore
Make sure to correctly notify of end of a ServiceWorkerJob when the context is stopped
https://bugs.webkit.org/show_bug.cgi?id=195195
Reviewed by Chris Dumez.
Before the patch, we were notifying that some jobs were finished too aggressively at context stop time.
This was confusing the Network Process.
Only notify such jobs that have pending loads.
Improve the tracking of jobs doing registration resolution to ensure the Network Process gets notified
in case of a registration promise being resolved but the settling callback being not yet called while the context is stopped.
Covered by existing tests not crashing anymore, in particular imported/w3c/web-platform-tests/service-workers/service-worker/skip-waiting.https.html.
- workers/service/ServiceWorkerContainer.cpp:
(WebCore::ServiceWorkerContainer::jobResolvedWithRegistration):
(WebCore::ServiceWorkerContainer::notifyRegistrationIsSettled):
(WebCore::ServiceWorkerContainer::stop):
- workers/service/ServiceWorkerContainer.h:
- workers/service/ServiceWorkerJob.cpp:
(WebCore::ServiceWorkerJob::cancelPendingLoad):
- workers/service/ServiceWorkerJob.h:
(WebCore::ServiceWorkerJob::isLoading const):
- 12:26 PM Changeset in webkit [242371] by
-
- 14 edits in trunk
Do not share WebProcesses between private and regular sessions
https://bugs.webkit.org/show_bug.cgi?id=195189
<rdar://problem/48421064>
Reviewed by Alex Christensen.
Source/WebKit:
Do not share WebProcesses between private and regular sessions. There are some privacy concerns.
Also, some of the WebsiteDataStore informations are passed via WebProcessCreationParameters (e.g.
ApplicationCache path) and cannot be updated later.
There were 2 cases where this could happen and that are fixed in the patch:
- A process may be prewarmed with a given website data store and then later on used for a page associated with a different data store. We now prevent this. While this is not necessary for privacy reasons, it is still useful because our code currently does not support well uses different sessions inside a single WebProcess, as mentioned above.
- The client can force a WebsiteDataStore swap when responding to the decidePolicyForNavigationAction, via the WebsitePolicies. To address the issue, we now force a process swap whenever the client makes such a change.
As a result, WebProcessProxy::websiteDataStore() now makes sense and is always correct. It can
also only contains pages whose WebPageProxy::websiteDataStore() returns the same store.
- UIProcess/API/C/WKContext.cpp:
(WKContextWarmInitialProcess):
- UIProcess/API/Cocoa/WKProcessPool.mm:
(-[WKProcessPool _warmInitialProcess]):
- UIProcess/ProvisionalPageProxy.cpp:
(WebKit::ProvisionalPageProxy::ProvisionalPageProxy):
(WebKit::ProvisionalPageProxy::~ProvisionalPageProxy):
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::notifyProcessPoolToPrewarm):
(WebKit::WebPageProxy::reattachToWebProcess):
(WebKit::WebPageProxy::swapToWebProcess):
(WebKit::WebPageProxy::close):
(WebKit::WebPageProxy::receivedNavigationPolicyDecision):
(WebKit::WebPageProxy::commitProvisionalPage):
(WebKit::WebPageProxy::creationParameters):
- UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::websiteDataStore):
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::ensureNetworkProcess):
(WebKit::WebProcessPool::tryTakePrewarmedProcess):
(WebKit::WebProcessPool::prewarmProcess):
(WebKit::WebProcessPool::createWebPage):
(WebKit::WebProcessPool::pageBeginUsingWebsiteDataStore):
(WebKit::WebProcessPool::pageEndUsingWebsiteDataStore):
(WebKit::WebProcessPool::didReachGoodTimeToPrewarm):
(WebKit::WebProcessPool::processForNavigation):
(WebKit::WebProcessPool::processForNavigationInternal):
(WebKit::WebProcessPool::findReusableSuspendedPageProcess):
- UIProcess/WebProcessPool.h:
(WebKit::WebProcessPool::sendToOneProcess):
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::createWebPage):
(WebKit::WebProcessProxy::addExistingWebPage):
(WebKit::WebProcessProxy::removeWebPage):
- UIProcess/WebProcessProxy.h:
Tools:
Add API test coverage.
- TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
- TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
- 12:23 PM Changeset in webkit [242370] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Toggling Timeline "Stop when page loads" to on should stop (immediately or soon) any active recording if already past the load event
https://bugs.webkit.org/show_bug.cgi?id=195239
Reviewed by Joseph Pecoraro.
- UserInterface/Controllers/TimelineManager.js:
(WI.TimelineManager.prototype._handleTimelinesAutoStopSettingChanged):
- 12:20 PM Changeset in webkit [242369] by
-
- 5 edits in trunk/Source
[iOS] Improve our file picker
https://bugs.webkit.org/show_bug.cgi?id=195284
<rdar://problem/45655856>
Reviewed by Tim Horton and Wenson Hsieh.
Source/WebCore:
Export UTIUtilities.h so that it can be used from WebKit2.
- WebCore.xcodeproj/project.pbxproj:
Source/WebKit:
Improve our file picker on iOS so that:
- Accepted file extensions specified in the HTML (e.g. <input type="file"> accept=".pdf">) are now properly reflected in the file picker. Previously, we only we only supported MIME types in the accept attribute that only Image / Video ones.
- If accepted types are specified in the HTML and not of them are Video or Image types, then bypass the UIDocumentMenuViewController and show the file picker directly (as if the user had tapped on "Browse..." on that menu). Other menu items such as "Take Photo or Video" and "Photo Library" do not make sense if the page only accepts PDF files for example.
Things that we should do but are not fixed in this patch:
- Stop using UIDocumentMenuViewController entirely since it was deprecated in favor of using UIDocumentPickerViewController directly.
- Add multiple selection support, which is supported both on the HTML side and in the UIDocumentPickerViewController API.
- UIProcess/ios/forms/WKFileUploadPanel.mm:
(arrayContainsUTIThatConformsTo):
(-[WKFileUploadPanel dealloc]):
(-[WKFileUploadPanel presentWithParameters:resultListener:]):
(UTIsForMIMETypes):
(-[WKFileUploadPanel _mediaTypesForPickerSourceType:]):
(-[WKFileUploadPanel _cameraButtonLabelAllowingPhoto:allowingVideo:]):
(-[WKFileUploadPanel _showDocumentPickerMenu]):
- 11:58 AM Changeset in webkit [242368] by
-
- 3 edits in trunk/Source/WebCore/PAL
Improper use of PLATFORM(TVOS) in PAL
https://bugs.webkit.org/show_bug.cgi?id=195215
Reviewed by Darin Adler.
There are a couple stray uses of PLATFORM(TVOS) in PAL. The correct usage is
PLATFORM(APPLETV).
- pal/spi/cocoa/NSKeyedArchiverSPI.h:
- pal/spi/cocoa/NSProgressSPI.h:
- 11:54 AM Changeset in webkit [242367] by
-
- 4 edits in trunk/Source/WebKit
REGRESSION: ( r240978-r240985 ) [ iOS Release ] Layout Test imported/w3c/web-platform-tests/xhr/send-redirect-post-upload.htm is crashing
https://bugs.webkit.org/show_bug.cgi?id=194523
Reviewed by Ryosuke Niwa.
Attempt to work around a CFNetwork bug in the timing of tearing down tasks with upload streams.
See rdar://problem/28233746.
- NetworkProcess/cocoa/NetworkDataTaskCocoa.h:
- NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:
(WebKit::NetworkDataTaskCocoa::~NetworkDataTaskCocoa):
- NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(-[WKNetworkSessionDelegate URLSession:task:needNewBodyStream:]):
- 11:33 AM Changeset in webkit [242366] by
-
- 3 edits in trunk/Source/WebCore
[ContentChangeObserver] Decouple mouseMoved event and the "is observing content change" status.
https://bugs.webkit.org/show_bug.cgi?id=195286
Reviewed by Simon Fraser.
Now isObservingContentChanges returns true only when we are actively observing content change during timer firing and/or style recalculating.
This patch also renames a couple of functions to follow the didStart/didFinish pattern.
- page/ios/ContentChangeObserver.cpp:
(WebCore::ContentChangeObserver::domTimerExecuteDidStart):
(WebCore::ContentChangeObserver::domTimerExecuteDidFinish):
(WebCore::ContentChangeObserver::styleRecalcDidStart):
(WebCore::ContentChangeObserver::styleRecalcDidFinish):
(WebCore::ContentChangeObserver::mouseMovedDidStart):
(WebCore::ContentChangeObserver::mouseMovedDidFinish):
(WebCore::ContentChangeObserver::setShouldObserveNextStyleRecalc):
(WebCore::ContentChangeObserver::StyleChangeScope::StyleChangeScope):
(WebCore::ContentChangeObserver::MouseMovedScope::MouseMovedScope):
(WebCore::ContentChangeObserver::MouseMovedScope::~MouseMovedScope):
(WebCore::ContentChangeObserver::StyleRecalcScope::StyleRecalcScope):
(WebCore::ContentChangeObserver::StyleRecalcScope::~StyleRecalcScope):
(WebCore::ContentChangeObserver::DOMTimerScope::DOMTimerScope):
(WebCore::ContentChangeObserver::DOMTimerScope::~DOMTimerScope):
(WebCore::ContentChangeObserver::startObservingDOMTimerExecute): Deleted.
(WebCore::ContentChangeObserver::stopObservingDOMTimerExecute): Deleted.
(WebCore::ContentChangeObserver::startObservingStyleRecalc): Deleted.
(WebCore::ContentChangeObserver::stopObservingStyleRecalc): Deleted.
(WebCore::ContentChangeObserver::startObservingMouseMoved): Deleted.
(WebCore::ContentChangeObserver::stopObservingMouseMoved): Deleted.
(WebCore::ContentChangeObserver::setShouldObserveStyleRecalc): Deleted.
- page/ios/ContentChangeObserver.h:
(WebCore::ContentChangeObserver::setShouldObserveDOMTimerScheduling):
(WebCore::ContentChangeObserver::isObservingDOMTimerScheduling const):
(WebCore::ContentChangeObserver::isObservingStyleRecalc const):
(WebCore::ContentChangeObserver::isObservingContentChanges const):
(WebCore::ContentChangeObserver::startObservingDOMTimerScheduling): Deleted.
(WebCore::ContentChangeObserver::stopObservingDOMTimerScheduling): Deleted.
(WebCore::ContentChangeObserver::shouldObserveStyleRecalc const): Deleted.
- 10:56 AM Changeset in webkit [242365] by
-
- 18 edits in trunk/Source
[JSC] Offer @makeTypeError instead of exposing @TypeError
https://bugs.webkit.org/show_bug.cgi?id=193858
Reviewed by Mark Lam.
Source/JavaScriptCore:
Instead of exposing @TypeError, we expose @makeTypeError function.
And we make TypeError and Error lazily-allocated objects in non JIT environment.
In JIT environment, only TypeError becomes lazily-allocated since WebAssembly errors
touch Error prototype anyway. But we can make them lazy in a subsequent patch.
- builtins/AsyncFromSyncIteratorPrototype.js:
- builtins/AsyncGeneratorPrototype.js:
(globalPrivate.asyncGeneratorEnqueue):
- builtins/BuiltinNames.h:
- builtins/PromiseOperations.js:
(globalPrivate.createResolvingFunctions.resolve):
- runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::initializeErrorConstructor):
(JSC::JSGlobalObject::init):
(JSC::JSGlobalObject::visitChildren):
- runtime/JSGlobalObject.h:
(JSC::JSGlobalObject::errorPrototype const):
(JSC::JSGlobalObject::errorStructure const):
- runtime/JSGlobalObjectFunctions.cpp:
(JSC::globalFuncMakeTypeError):
- runtime/JSGlobalObjectFunctions.h:
Source/WebCore:
Use @makeTypeError instead.
- Modules/mediastream/RTCPeerConnection.js:
- Modules/mediastream/RTCPeerConnectionInternals.js:
- Modules/streams/ReadableByteStreamInternals.js:
(readableByteStreamControllerClose):
(readableByteStreamControllerPullInto):
- Modules/streams/ReadableStream.js:
(cancel):
(pipeTo):
- Modules/streams/ReadableStreamBYOBReader.js:
(cancel):
(read):
- Modules/streams/ReadableStreamDefaultReader.js:
(cancel):
(read):
- Modules/streams/ReadableStreamInternals.js:
(readableStreamReaderGenericRelease):
- Modules/streams/WritableStream.js:
(abort):
(close):
(write):
(getter.closed):
(getter.ready):
- 10:06 AM Changeset in webkit [242364] by
-
- 5 edits in trunk/Source/WebKit
[CoordinatedGraphics] The compositing loop is still running even after exiting AC mode
https://bugs.webkit.org/show_bug.cgi?id=195270
Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2019-03-04
Reviewed by Don Olmstead.
Suspend the threaded compositor when the painting is paused or layer flush disabled, and resume it again when
painting is resumed and layer flush enabled.
- Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:
(WebKit::ThreadedCompositor::suspend): Increment the suspend counter and mark the scene as inactive if it was suspended.
(WebKit::ThreadedCompositor::resume): Decrement the suspend counter and mark the scene as active if it's now resumed.
- Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h:
- WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.cpp:
(WebKit::DrawingAreaCoordinatedGraphics::forceRepaint): Return early if layer tree state is frozen.
(WebKit::DrawingAreaCoordinatedGraphics::forceRepaintAsync): Ditto.
- WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.cpp:
(WebKit::LayerTreeHost::setLayerFlushSchedulingEnabled): Call ThreadedCompositor::suspend()/resume().
(WebKit::LayerTreeHost::pauseRendering): Call ThreadedCompositor::suspend.
(WebKit::LayerTreeHost::resumeRendering): Call ThreadedCompositor::resume().
- 9:28 AM Changeset in webkit [242363] by
-
- 4 edits in branches/safari-607-branch/Source
Cherry-pick r242355. rdar://problem/48563894
[iOS] Fullscreen "stay in page" option breaks video playback
https://bugs.webkit.org/show_bug.cgi?id=195277
<rdar://problem/48537317>
Reviewed by Eric Carlson.
Source/WebCore:
Add a LOG entry when playback is rejected due to media playback suspension.
- html/MediaElementSession.cpp: (WebCore::MediaElementSession::playbackPermitted const):
Source/WebKit:
Make sure we resume media playback when the user chooses "stay in page" from the deceptive
website warning dialog.
- UIProcess/ios/fullscreen/WKFullScreenViewController.mm: (-[WKFullScreenViewController _showPhishingAlert]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@242355 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 9:25 AM Changeset in webkit [242362] by
-
- 4 edits in branches/safari-607.1.40.0-branch/Source
Cherry-pick r242355. rdar://problem/48563891
[iOS] Fullscreen "stay in page" option breaks video playback
https://bugs.webkit.org/show_bug.cgi?id=195277
<rdar://problem/48537317>
Reviewed by Eric Carlson.
Source/WebCore:
Add a LOG entry when playback is rejected due to media playback suspension.
- html/MediaElementSession.cpp: (WebCore::MediaElementSession::playbackPermitted const):
Source/WebKit:
Make sure we resume media playback when the user chooses "stay in page" from the deceptive
website warning dialog.
- UIProcess/ios/fullscreen/WKFullScreenViewController.mm: (-[WKFullScreenViewController _showPhishingAlert]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@242355 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 9:21 AM Changeset in webkit [242361] by
-
- 7 edits in branches/safari-607.1.40.0-branch/Source
Versioning.
- 8:58 AM Changeset in webkit [242360] by
-
- 15 edits in trunk
Prepare to improve handling of conversion of float to strings
https://bugs.webkit.org/show_bug.cgi?id=195262
Reviewed by Daniel Bates.
Source/WTF:
- wtf/dtoa.cpp:
(WTF::truncateTrailingZeros): Renamed from
formatStringTruncatingTrailingZerosIfNeeded and removed the calls
to double_conversion::StringBuilder::Finalizer, since the caller
already does that.
(WTF::numberToFixedPrecisionString): Added an overload for float
and updated to use the new truncateTrailingZeros.
(WTF::numberToFixedWidthString): Added an overload for float.
- wtf/text/AtomicString.cpp:
(WTF::AtomicString::number): Added float overload. This is a
behavior change, but in all cases for the better. The old behavior
was to convert to double first and then do "shortest form"
conversion, and it's always better to just do that as float.
- wtf/text/AtomicString.h: Added float overload of AtomicString::number.
- wtf/text/StringBuilder.cpp:
(WTF::StringBuilder::appendFixedPrecisionNumber): Added float
overload.
(WTF::StringBuilder::appendShortestFormNumber): Renamed from
appendECMAScriptNumber and did the above.
(WTF::StringBuilder::appendFixedWidthNumber): Ditto.
- wtf/text/StringBuilder.h: Added overloads for float and
appendShortestFormNumber. The appendNumber and appendECMAScriptNumber
functions are now inlines in the header, since they are expressed
entirely in terms of the other functions.
- wtf/text/WTFString.cpp:
(WTF::String::numberToStringFixedPrecision): Added float overload.
Removed unnecessary explicit conversion to String.
(WTF::String::numberToStringShortest): Renamed from
numberToStringECMAScript and did the above.
(WTF::String::numberToStringFixedWidth): Ditto.
- wtf/text/WTFString.h: Added overloads for float and
numberToStringShortest. The number and numberToStringECMAScript
functions are now inlines in the header, since they are expressed
entirely in terms of the other functions.
LayoutTests:
- svg/dom/SVGAngle-expected.txt:
- svg/dom/SVGAngle.html:
- svg/dom/SVGLength-px-expected.txt:
- svg/dom/SVGLength-px-with-context-expected.txt:
- svg/dom/SVGLength-px-with-context.html:
- svg/dom/SVGLength-px.html:
Remove checks that depend on the precision and number of serialization.
The current tests depend on behavior that we'd like to change in the future and
some of them had already been updated since the behavior is different in different
web browsers. Tricky issue because of the mix of single and double precision in
the SVG engine and the JavaScript language, and straightforward to keep the tests
useful without this unnecessary dependency. Generally we check the units of the
result of valueAsString, and not the numeric result. Another idea would be to
check the numeric part of the result by converting it back to a number and
comparing it as a number rather than as a string.
- 8:57 AM Changeset in webkit [242359] by
-
- 26 edits2 copies1 move in trunk/Source
Share more code between overflow and frame scrolling nodes, fixing overflow scrollbar display
https://bugs.webkit.org/show_bug.cgi?id=195258
Reviewed by Antti Koivisto.
This patch moves management of scrollbar layers and scrollbar painters ("NSScrollerImp") down to
ScrollingStateScrollingNode to be shared between frame and overflow nodes, allowing for
scrolling thread updates of overflow scrollbars. It also moves some scrolling tree-side code
to ScrollingTreeScrollingNodeDelegateMac to be shared between the "tree" nodes for overflow and frames.
Layers for scrollbars are given to scrolling state nodes via setNodeLayers() now, and
RenderLayerCompositor::updateScrollingNodeLayers() is added to provide a bottleneck to call that.
At some point AsyncScrollingCoordinator::scrollableAreaScrollbarLayerDidChange() should be relieved
of the responsibility of pushing scrollbar layers (but the scrolling state tree needs to hold
references to GraphicsLayers before that becomes safe).
The actual fix that allows overflow scrollbars to show is the change in
AsyncScrollingCoordinator::scrollableAreaScrollbarLayerDidChange() that calls scrollableArea.*ScrollbarLayerDidChange()
for all ScrollableAreas. This ensures that the CALayer is pushed onto the NSScrollerImp.
Source/WebCore:
- SourcesCocoa.txt:
- WebCore.xcodeproj/project.pbxproj:
- page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::scrollableAreaScrollbarLayerDidChange):
(WebCore::AsyncScrollingCoordinator::setNodeLayers):
(WebCore::AsyncScrollingCoordinator::setFrameScrollingNodeState):
(WebCore::AsyncScrollingCoordinator::setScrollingNodeScrollableAreaGeometry):
- page/scrolling/ScrollingCoordinator.h:
- page/scrolling/ScrollingStateFrameScrollingNode.cpp:
(WebCore::ScrollingStateFrameScrollingNode::ScrollingStateFrameScrollingNode):
(WebCore::ScrollingStateFrameScrollingNode::setAllPropertiesChanged):
(WebCore::ScrollingStateFrameScrollingNode::setVerticalScrollbarLayer): Deleted.
(WebCore::ScrollingStateFrameScrollingNode::setHorizontalScrollbarLayer): Deleted.
(WebCore::ScrollingStateFrameScrollingNode::setScrollerImpsFromScrollbars): Deleted.
- page/scrolling/ScrollingStateFrameScrollingNode.h:
- page/scrolling/ScrollingStateScrollingNode.cpp:
(WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
(WebCore::ScrollingStateScrollingNode::setAllPropertiesChanged):
(WebCore::ScrollingStateScrollingNode::setHorizontalScrollbarLayer):
(WebCore::ScrollingStateScrollingNode::setVerticalScrollbarLayer):
(WebCore::ScrollingStateScrollingNode::setScrollerImpsFromScrollbars):
- page/scrolling/ScrollingStateScrollingNode.h:
(WebCore::ScrollingStateScrollingNode::horizontalScrollbarLayer const):
(WebCore::ScrollingStateScrollingNode::verticalScrollbarLayer const):
(WebCore::ScrollingStateScrollingNode::verticalScrollerImp const):
(WebCore::ScrollingStateScrollingNode::horizontalScrollerImp const):
- page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::setOrClearLatchedNode):
(WebCore::ScrollingTree::handleWheelEvent):
- page/scrolling/mac/ScrollingStateScrollingNodeMac.mm: Renamed from Source/WebCore/page/scrolling/mac/ScrollingStateFrameScrollingNodeMac.mm.
(WebCore::ScrollingStateScrollingNode::setScrollerImpsFromScrollbars):
- page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.h:
- page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:
(WebCore::ScrollingTreeFrameScrollingNodeMac::commitStateBeforeChildren):
(WebCore::ScrollingTreeFrameScrollingNodeMac::handleWheelEvent):
(WebCore::ScrollingTreeFrameScrollingNodeMac::repositionRelatedLayers):
(WebCore::ScrollingTreeFrameScrollingNodeMac::~ScrollingTreeFrameScrollingNodeMac): Deleted.
(WebCore::ScrollingTreeFrameScrollingNodeMac::releaseReferencesToScrollerImpsOnTheMainThread): Deleted.
- page/scrolling/mac/ScrollingTreeOverflowScrollingNodeMac.h:
- page/scrolling/mac/ScrollingTreeOverflowScrollingNodeMac.mm:
(WebCore::ScrollingTreeOverflowScrollingNodeMac::commitStateBeforeChildren):
(WebCore::ScrollingTreeOverflowScrollingNodeMac::handleWheelEvent):
(WebCore::ScrollingTreeOverflowScrollingNodeMac::repositionRelatedLayers):
- page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.h:
- page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm:
(WebCore::ScrollingTreeScrollingNodeDelegateMac::~ScrollingTreeScrollingNodeDelegateMac):
(WebCore::ScrollingTreeScrollingNodeDelegateMac::updateFromStateNode):
(WebCore::ScrollingTreeScrollingNodeDelegateMac::handleWheelEvent):
(WebCore::ScrollingTreeScrollingNodeDelegateMac::updateScrollbarPainters):
(WebCore::ScrollingTreeScrollingNodeDelegateMac::releaseReferencesToScrollerImpsOnTheMainThread):
- platform/ScrollbarThemeComposite.h:
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::didChangePlatformLayerForLayer):
(WebCore::RenderLayerCompositor::updateScrollingNodeLayers):
(WebCore::RenderLayerCompositor::updateScrollingNodeForScrollingRole):
- rendering/RenderLayerCompositor.h:
Source/WebKit:
- Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp:
(ArgumentCoder<ScrollingStateScrollingNode>::encode):
(ArgumentCoder<ScrollingStateFrameScrollingNode>::encode):
(ArgumentCoder<ScrollingStateScrollingNode>::decode):
(ArgumentCoder<ScrollingStateFrameScrollingNode>::decode):
- SourcesCocoa.txt:
- UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp:
(WebKit::RemoteScrollingCoordinatorProxy::connectStateNodeLayers):
- UIProcess/RemoteLayerTree/RemoteScrollingTree.cpp:
(WebKit::RemoteScrollingTree::createScrollingTreeNode):
- UIProcess/RemoteLayerTree/mac/ScrollingTreeFrameScrollingNodeRemoteMac.cpp:
(WebKit::ScrollingTreeFrameScrollingNodeRemoteMac::commitStateBeforeChildren):
(WebKit::ScrollingTreeFrameScrollingNodeRemoteMac::repositionRelatedLayers):
(WebKit::ScrollingTreeFrameScrollingNodeRemoteMac::handleMouseEvent):
- UIProcess/RemoteLayerTree/mac/ScrollingTreeOverflowScrollingNodeRemoteMac.cpp: Copied from Source/WebKit/UIProcess/RemoteLayerTree/mac/ScrollingTreeFrameScrollingNodeRemoteMac.cpp.
(WebKit::ScrollingTreeOverflowScrollingNodeRemoteMac::create):
(WebKit::ScrollingTreeOverflowScrollingNodeRemoteMac::ScrollingTreeOverflowScrollingNodeRemoteMac):
(WebKit::ScrollingTreeOverflowScrollingNodeRemoteMac::~ScrollingTreeOverflowScrollingNodeRemoteMac):
(WebKit::ScrollingTreeOverflowScrollingNodeRemoteMac::commitStateBeforeChildren):
(WebKit::ScrollingTreeOverflowScrollingNodeRemoteMac::repositionRelatedLayers):
(WebKit::ScrollingTreeOverflowScrollingNodeRemoteMac::handleWheelEvent):
(WebKit::ScrollingTreeOverflowScrollingNodeRemoteMac::handleMouseEvent):
- WebKit.xcodeproj/project.pbxproj:
- 8:57 AM Changeset in webkit [242358] by
-
- 2 edits in trunk/LayoutTests
webkit.org/b/195210 resolve by r242308, unskipping tests.
https://bugs.webkit.org/show_bug.cgi?id=195210
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 8:51 AM Changeset in webkit [242357] by
-
- 2 edits in trunk/Source/WebCore
Remove HEVC as a codec requiring hardware support.
https://bugs.webkit.org/show_bug.cgi?id=194960
<rdar://problem/47741432>
Reviewed by Eric Carlson.
- page/cocoa/SettingsBaseCocoa.mm:
(WebCore::SettingsBase::defaultMediaContentTypesRequiringHardwareSupport):
- 8:47 AM Changeset in webkit [242356] by
-
- 13 edits7 copies4 adds1 delete in trunk/Source
[Apple Pay] Move WebPaymentCoordinatorProxy from Source/WebKit/UIProcess to Source/WebKit/Shared
https://bugs.webkit.org/show_bug.cgi?id=195080
<rdar://problem/48421558>
Reviewed by Antti Koivisto.
Source/WebKit:
- CMakeLists.txt:
- DerivedSources-input.xcfilelist:
- DerivedSources.make:
- Shared/ApplePay/WebPaymentCoordinatorProxy.cpp: Renamed from Source/WebKit/UIProcess/ApplePay/WebPaymentCoordinatorProxy.cpp.
- Shared/ApplePay/WebPaymentCoordinatorProxy.h: Renamed from Source/WebKit/UIProcess/ApplePay/WebPaymentCoordinatorProxy.h.
- Shared/ApplePay/WebPaymentCoordinatorProxy.messages.in: Renamed from Source/WebKit/UIProcess/ApplePay/WebPaymentCoordinatorProxy.messages.in.
- Shared/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.h: Renamed from Source/WebKit/UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.h.
- Shared/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm: Renamed from Source/WebKit/UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm.
- Shared/ApplePay/ios/WebPaymentCoordinatorProxyIOS.mm: Renamed from Source/WebKit/UIProcess/ApplePay/ios/WebPaymentCoordinatorProxyIOS.mm.
- Shared/ApplePay/mac/WebPaymentCoordinatorProxyMac.mm: Renamed from Source/WebKit/UIProcess/ApplePay/mac/WebPaymentCoordinatorProxyMac.mm.
- Shared/mac/WebHitTestResultData.mm:
- SourcesCocoa.txt:
- UIProcess/RemoteLayerTree/ios/ScrollingTreeFrameScrollingNodeRemoteIOS.h:
- UIProcess/RemoteLayerTree/ios/ScrollingTreeFrameScrollingNodeRemoteIOS.mm:
- UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.h:
- UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm:
- WebKit.xcodeproj/project.pbxproj:
Source/WTF:
- wtf/FeatureDefines.h:
- 8:44 AM Changeset in webkit [242355] by
-
- 4 edits in trunk/Source
[iOS] Fullscreen "stay in page" option breaks video playback
https://bugs.webkit.org/show_bug.cgi?id=195277
<rdar://problem/48537317>
Reviewed by Eric Carlson.
Source/WebCore:
Add a LOG entry when playback is rejected due to media playback suspension.
- html/MediaElementSession.cpp:
(WebCore::MediaElementSession::playbackPermitted const):
Source/WebKit:
Make sure we resume media playback when the user chooses "stay in page" from the deceptive
website warning dialog.
- UIProcess/ios/fullscreen/WKFullScreenViewController.mm:
(-[WKFullScreenViewController _showPhishingAlert]):
- 7:25 AM Changeset in webkit [242354] by
-
- 10 edits1 add in trunk
[WPE] Enable web process sandbox
https://bugs.webkit.org/show_bug.cgi?id=195169
Reviewed by Daniel Bates.
.:
- Source/cmake/BubblewrapSandboxChecks.cmake: Added.
- Source/cmake/OptionsGTK.cmake:
- Source/cmake/OptionsWPE.cmake:
Source/WebKit:
- PlatformWPE.cmake:
- UIProcess/Launcher/glib/BubblewrapLauncher.cpp:
(WebKit::bubblewrapSpawn):
- UIProcess/glib/WebProcessPoolGLib.cpp:
(WebKit::WebProcessPool::platformInitialize):
Tools:
- wpe/install-dependencies:
- wpe/jhbuild.modules:
- 7:18 AM Changeset in webkit [242353] by
-
- 2 edits in trunk/Source/WTF
URLHelpers should use unorm2_quickCheck before converting to NFC
https://bugs.webkit.org/show_bug.cgi?id=194272
Reviewed by Darin Adler.
If the string is already in normalization form C, don't try to normalize it.
- wtf/URLHelpers.cpp:
(WTF::URLHelpers::toNormalizationFormC):
- 6:30 AM Changeset in webkit [242352] by
-
- 2 edits in trunk/Source/WebDriver
WebDriver: fix String not terminated with null caracter
https://bugs.webkit.org/show_bug.cgi?id=195274
Patch by Karl Leplat <karl.leplat_ext@softathome.com> on 2019-03-04
Reviewed by Carlos Garcia Campos.
This has been detected by an exception returned by the function
evaluateJavaScriptFunction with the message :
[native code]: JS ERROR SyntaxError: Unexpected keyword 'function'. Expected ')' to end a compound expression.
keyword 'function' has been initialized with a string that come from char array, not a null-terminated string.
- Session.cpp:
(WebDriver::Session::fullscreenWindow):
(WebDriver::Session::findElements):
(WebDriver::Session::isElementSelected):
(WebDriver::Session::isElementDisplayed):
(WebDriver::Session::getElementAttribute):
(WebDriver::Session::elementClear):
- 6:23 AM Changeset in webkit [242351] by
-
- 5 edits in trunk/Source/WebKit
[GTK][WPE] Wrong license header in WebKit{,WebExtension}Autocleanups.h
https://bugs.webkit.org/show_bug.cgi?id=195245
Reviewed by Carlos Garcia Campos.
Changed license headers to contain the LGPL, which is the correct one for the GTK
and WPE ports. The change was agreed by the contributors to the files involved.
- UIProcess/API/gtk/WebKitAutocleanups.h:
- UIProcess/API/wpe/WebKitAutocleanups.h:
- WebProcess/InjectedBundle/API/gtk/WebKitWebExtensionAutocleanups.h:
- WebProcess/InjectedBundle/API/wpe/WebKitWebExtensionAutocleanups.h:
- 5:24 AM WebKitGTK/2.24.x edited by
- (diff)
- 4:03 AM Changeset in webkit [242350] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed, rolling out r242045.
https://bugs.webkit.org/show_bug.cgi?id=195273
WE not ready to enable PSON yet (Requested by KaL on #webkit).
Reverted changeset:
"[GTK] Enable PSON"
https://bugs.webkit.org/show_bug.cgi?id=194979
https://trac.webkit.org/changeset/242045
- 2:34 AM Changeset in webkit [242349] by
-
- 4 edits in trunk
[GLib] Returning G_TYPE_OBJECT from a constructor does not work
https://bugs.webkit.org/show_bug.cgi?id=195206
Reviewed by Žan Doberšek.
Source/JavaScriptCore:
We are freeing the newly created object before returning from the constructor.
- API/glib/JSCCallbackFunction.cpp:
(JSC::JSCCallbackFunction::construct):
Tools:
Add a new test case.
- TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
(testJSCClass):
- 2:32 AM WebKitGTK/2.24.x edited by
- (diff)
- 2:30 AM Changeset in webkit [242348] by
-
- 2 edits in trunk/Source/WebCore/platform/gtk/po
Unreviewed. Update POTFILES.in after r239627.
- POTFILES.in:
- 2:28 AM Changeset in webkit [242347] by
-
- 2 edits in releases/WebKitGTK/webkit-2.24/Source/WebKit
Unreviewed build fix after r242163
This fixes WPE aftyer the backport for r242055 wrongly added a piece of code which is
needed only in trunk and depends on changes introduced by a patch that is not being
merged for 2.24.
- UIProcess/glib/WebProcessPoolGLib.cpp:
(WebKit::WebProcessPool::platformInitializeWebProcess): Remove unneeded code.
- 1:58 AM Changeset in webkit [242346] by
-
- 15 edits2 moves3 adds6 deletes in trunk/Source/WebKit
[CoordinatedGraphics] Unify DrawingArea classes
https://bugs.webkit.org/show_bug.cgi?id=195167
Reviewed by Žan Doberšek.
Add DrawingAreaProxyCoordinatedGraphics and DrawingAreaCoordinatedGraphics.
- PlatformGTK.cmake:
- PlatformWPE.cmake:
- PlatformWin.cmake:
- Shared/DrawingAreaInfo.h:
- SourcesGTK.txt:
- SourcesWPE.txt:
- UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::createDrawingAreaProxy):
(WebKit::PageClientImpl::viewSize):
- UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseRealize):
(webkitWebViewBaseUnrealize):
(webkitWebViewBaseDraw):
(webkitWebViewBaseSizeAllocate):
(webkitWebViewBaseDidRelaunchWebProcess):
(webkitWebViewBasePageClosed):
- UIProcess/API/wpe/PageClientImpl.cpp:
(WebKit::PageClientImpl::createDrawingAreaProxy):
- UIProcess/AcceleratedDrawingAreaProxy.cpp: Removed.
- UIProcess/CoordinatedGraphics/DrawingAreaProxyCoordinatedGraphics.cpp: Added.
(WebKit::DrawingAreaProxyCoordinatedGraphics::DrawingAreaProxyCoordinatedGraphics):
(WebKit::DrawingAreaProxyCoordinatedGraphics::~DrawingAreaProxyCoordinatedGraphics):
(WebKit::DrawingAreaProxyCoordinatedGraphics::paint):
(WebKit::DrawingAreaProxyCoordinatedGraphics::sizeDidChange):
(WebKit::DrawingAreaProxyCoordinatedGraphics::deviceScaleFactorDidChange):
(WebKit::DrawingAreaProxyCoordinatedGraphics::waitForBackingStoreUpdateOnNextPaint):
(WebKit::DrawingAreaProxyCoordinatedGraphics::setBackingStoreIsDiscardable):
(WebKit::DrawingAreaProxyCoordinatedGraphics::update):
(WebKit::DrawingAreaProxyCoordinatedGraphics::didUpdateBackingStoreState):
(WebKit::DrawingAreaProxyCoordinatedGraphics::enterAcceleratedCompositingMode):
(WebKit::DrawingAreaProxyCoordinatedGraphics::exitAcceleratedCompositingMode):
(WebKit::DrawingAreaProxyCoordinatedGraphics::updateAcceleratedCompositingMode):
(WebKit::DrawingAreaProxyCoordinatedGraphics::incorporateUpdate):
(WebKit::DrawingAreaProxyCoordinatedGraphics::alwaysUseCompositing const):
(WebKit::DrawingAreaProxyCoordinatedGraphics::backingStoreStateDidChange):
(WebKit::DrawingAreaProxyCoordinatedGraphics::sendUpdateBackingStoreState):
(WebKit::DrawingAreaProxyCoordinatedGraphics::waitForAndDispatchDidUpdateBackingStoreState):
(WebKit::DrawingAreaProxyCoordinatedGraphics::discardBackingStoreSoon):
(WebKit::DrawingAreaProxyCoordinatedGraphics::discardBackingStore):
(WebKit::DrawingAreaProxyCoordinatedGraphics::setNativeSurfaceHandleForCompositing):
(WebKit::DrawingAreaProxyCoordinatedGraphics::destroyNativeSurfaceHandleForCompositing):
(WebKit::DrawingAreaProxyCoordinatedGraphics::DrawingMonitor::DrawingMonitor):
(WebKit::DrawingAreaProxyCoordinatedGraphics::DrawingMonitor::~DrawingMonitor):
(WebKit::DrawingAreaProxyCoordinatedGraphics::DrawingMonitor::webViewDrawCallback):
(WebKit::DrawingAreaProxyCoordinatedGraphics::DrawingMonitor::start):
(WebKit::DrawingAreaProxyCoordinatedGraphics::DrawingMonitor::stop):
(WebKit::DrawingAreaProxyCoordinatedGraphics::DrawingMonitor::didDraw):
(WebKit::DrawingAreaProxyCoordinatedGraphics::dispatchAfterEnsuringDrawing):
- UIProcess/CoordinatedGraphics/DrawingAreaProxyCoordinatedGraphics.h: Renamed from Source/WebKit/UIProcess/AcceleratedDrawingAreaProxy.h.
- UIProcess/DrawingAreaProxyImpl.cpp: Removed.
- UIProcess/DrawingAreaProxyImpl.h: Removed.
- UIProcess/gtk/AcceleratedBackingStoreX11.cpp:
(WebKit::AcceleratedBackingStoreX11::update):
- UIProcess/win/PageClientImpl.cpp:
(WebKit::PageClientImpl::createDrawingAreaProxy):
- UIProcess/win/WebView.cpp:
(WebKit::WebView::paint):
- WebProcess/WebPage/AcceleratedDrawingArea.cpp: Removed.
- WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.cpp: Added.
(WebKit::DrawingAreaCoordinatedGraphics::DrawingAreaCoordinatedGraphics):
(WebKit::DrawingAreaCoordinatedGraphics::~DrawingAreaCoordinatedGraphics):
(WebKit::DrawingAreaCoordinatedGraphics::setNeedsDisplay):
(WebKit::DrawingAreaCoordinatedGraphics::setNeedsDisplayInRect):
(WebKit::DrawingAreaCoordinatedGraphics::scroll):
(WebKit::DrawingAreaCoordinatedGraphics::forceRepaint):
(WebKit::DrawingAreaCoordinatedGraphics::forceRepaintAsync):
(WebKit::DrawingAreaCoordinatedGraphics::setLayerTreeStateIsFrozen):
(WebKit::DrawingAreaCoordinatedGraphics::updatePreferences):
(WebKit::DrawingAreaCoordinatedGraphics::mainFrameContentSizeChanged):
(WebKit::DrawingAreaCoordinatedGraphics::deviceOrPageScaleFactorChanged):
(WebKit::DrawingAreaCoordinatedGraphics::didChangeViewportAttributes):
(WebKit::DrawingAreaCoordinatedGraphics::graphicsLayerFactory):
(WebKit::DrawingAreaCoordinatedGraphics::setRootCompositingLayer):
(WebKit::DrawingAreaCoordinatedGraphics::scheduleCompositingLayerFlush):
(WebKit::DrawingAreaCoordinatedGraphics::layerHostDidFlushLayers):
(WebKit::DrawingAreaCoordinatedGraphics::createDisplayRefreshMonitor):
(WebKit::DrawingAreaCoordinatedGraphics::setNativeSurfaceHandleForCompositing):
(WebKit::DrawingAreaCoordinatedGraphics::destroyNativeSurfaceHandleForCompositing):
(WebKit::DrawingAreaCoordinatedGraphics::activityStateDidChange):
(WebKit::DrawingAreaCoordinatedGraphics::attachViewOverlayGraphicsLayer):
(WebKit::DrawingAreaCoordinatedGraphics::updateBackingStoreState):
(WebKit::DrawingAreaCoordinatedGraphics::didUpdate):
(WebKit::DrawingAreaCoordinatedGraphics::sendDidUpdateBackingStoreState):
(WebKit::DrawingAreaCoordinatedGraphics::exitAcceleratedCompositingModeSoon):
(WebKit::DrawingAreaCoordinatedGraphics::exitAcceleratedCompositingModeNow):
(WebKit::DrawingAreaCoordinatedGraphics::discardPreviousLayerTreeHost):
(WebKit::DrawingAreaCoordinatedGraphics::suspendPainting):
(WebKit::DrawingAreaCoordinatedGraphics::resumePainting):
(WebKit::DrawingAreaCoordinatedGraphics::enterAcceleratedCompositingMode):
(WebKit::DrawingAreaCoordinatedGraphics::exitAcceleratedCompositingMode):
(WebKit::DrawingAreaCoordinatedGraphics::scheduleDisplay):
(WebKit::DrawingAreaCoordinatedGraphics::displayTimerFired):
(WebKit::DrawingAreaCoordinatedGraphics::display):
(WebKit::shouldPaintBoundsRect):
- WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.h: Renamed from Source/WebKit/WebProcess/WebPage/AcceleratedDrawingArea.h.
- WebProcess/WebPage/DrawingArea.cpp:
(WebKit::DrawingArea::create):
- WebProcess/WebPage/DrawingArea.h:
(WebKit::DrawingArea::layerFlushThrottlingIsActive const):
- WebProcess/WebPage/DrawingAreaImpl.cpp: Removed.
- WebProcess/WebPage/DrawingAreaImpl.h: Removed.
- 1:21 AM Changeset in webkit [242345] by
-
- 2 edits in releases/WebKitGTK/webkit-2.24/Tools
Merged r242344 - [WPE] Inline wl_array_for_each to workaround C++ compatibility issue
https://bugs.webkit.org/show_bug.cgi?id=194898
Reviewed by Žan Doberšek.
- wpe/backends/WindowViewBackend.cpp: wl_array_for_each relies on
a GCC extension that permits arithmetic on void* pointer. Inline
the macro until this issue is fixed upstream.
- 12:32 AM Changeset in webkit [242344] by
-
- 2 edits in trunk/Tools
[WPE] Inline wl_array_for_each to workaround C++ compatibility issue
https://bugs.webkit.org/show_bug.cgi?id=194898
Reviewed by Žan Doberšek.
- wpe/backends/WindowViewBackend.cpp: wl_array_for_each relies on
a GCC extension that permits arithmetic on void* pointer. Inline
the macro until this issue is fixed upstream.
- 12:20 AM Changeset in webkit [242343] by
-
- 2 edits in trunk/LayoutTests
Fix typo in previous gardening commit
Unreviewed.
- platform/wpe/TestExpectations:
- 12:18 AM Changeset in webkit [242342] by
-
- 2 edits in trunk/LayoutTests
[WPE][EME] Mark two flaky EME tests
Unreviewed gardening.
- platform/wpe/TestExpectations:
- 12:07 AM Changeset in webkit [242341] by
-
- 2 edits in trunk/Source/WebCore
Fix the build.
- dom/Document.h:
Mar 3, 2019:
- 10:05 PM Changeset in webkit [242340] by
-
- 16 edits in trunk/Source
[ContentChangeObserver] Content observation should be limited to the current document.
https://bugs.webkit.org/show_bug.cgi?id=195256
<rdar://problem/48544402>
Source/WebCore:
Move ContentChangeObserver from Page to Document.
It limits content observation to the target node's owner document.
Reviewed by Simon Fraser.
- dom/Document.cpp:
(WebCore::m_contentChangeObserver):
(WebCore::Document::updateStyleIfNeeded):
(WebCore::Document::willDetachPage):
(WebCore::Document::platformSuspendOrStopActiveDOMObjects):
(WebCore::m_undoManager): Deleted.
- dom/Document.h:
(WebCore::Document::contentChangeObserver):
- page/DOMTimer.cpp:
(WebCore::DOMTimer::install):
(WebCore::DOMTimer::removeById):
(WebCore::DOMTimer::fired):
- page/Frame.cpp:
(WebCore::Frame::willDetachPage):
- page/Page.cpp:
(WebCore::Page::Page):
- page/Page.h:
(WebCore::Page::pointerLockController const):
(WebCore::Page::contentChangeObserver): Deleted.
- page/ios/ContentChangeObserver.cpp:
(WebCore::ContentChangeObserver::ContentChangeObserver):
(WebCore::ContentChangeObserver::didInstallDOMTimer):
(WebCore::ContentChangeObserver::stopObservingDOMTimerExecute):
(WebCore::ContentChangeObserver::stopObservingStyleRecalc):
(WebCore::ContentChangeObserver::clearTimersAndReportContentChange):
(WebCore::ContentChangeObserver::startObservingMouseMoved):
(WebCore::ContentChangeObserver::hasDeterminateState const):
(WebCore::ContentChangeObserver::adjustObservedState):
(WebCore::ContentChangeObserver::notifyContentChangeIfNeeded):
(WebCore::ContentChangeObserver::StyleChangeScope::StyleChangeScope):
(WebCore::ContentChangeObserver::StyleChangeScope::~StyleChangeScope):
(WebCore::ContentChangeObserver::MouseMovedScope::MouseMovedScope):
(WebCore::ContentChangeObserver::MouseMovedScope::~MouseMovedScope):
(WebCore::ContentChangeObserver::StyleRecalcScope::StyleRecalcScope):
(WebCore::ContentChangeObserver::StyleRecalcScope::~StyleRecalcScope):
(WebCore::ContentChangeObserver::DOMTimerScope::DOMTimerScope):
(WebCore::ContentChangeObserver::DOMTimerScope::~DOMTimerScope):
(WebCore::hasPendingStyleRecalc): Deleted.
- page/ios/ContentChangeObserver.h:
- page/ios/EventHandlerIOS.mm:
(WebCore::EventHandler::mouseMoved):
- rendering/updating/RenderTreeUpdater.cpp:
(WebCore::RenderTreeUpdater::updateElementRenderer):
Source/WebKit:
Reviewed by Simon Fraser.
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::handleSyntheticClick):
(WebKit::WebPage::completePendingSyntheticClickForContentChangeObserver):
(WebKit::WebPage::completeSyntheticClick):
(WebKit::WebPage::handleTap):
(WebKit::WebPage::handleTwoFingerTapAtPoint):
(WebKit::WebPage::commitPotentialTap):
Source/WebKitLegacy/ios:
Reviewed by Simon Fraser.
- WebCoreSupport/WebChromeClientIOS.mm:
(WebChromeClientIOS::observedContentChange):
- 9:12 PM Changeset in webkit [242339] by
-
- 675 edits in trunk
Rid the world of WK_API_ENABLED
https://bugs.webkit.org/show_bug.cgi?id=195263
Reviewed by Dan Bernstein.
List of changed files elided because it's useless.
- 9:09 PM Changeset in webkit [242338] by
-
- 2 edits in trunk/Tools
Unreviewed follow-up to r242292.
By Darin's suggestion, adopt an approach that uses EXPECT_STREQ without scattering utf8().data() everywhere.
- TestWebKitAPI/Tests/WebKit/EnvironmentUtilitiesTest.cpp:
(TestWebKitAPI::testStrip): Renamed from strip.
(TestWebKitAPI::TEST):
- 8:47 PM Changeset in webkit [242337] by
-
- 2 edits in tags/Safari-608.1.7.2/Source/WebKit
Cherry-pick r242233. rdar://problem/48139481
Disable Web Animations in Safari Technology Preview
https://bugs.webkit.org/show_bug.cgi?id=194748
<rdar://problem/48139481>
Patch by Antoine Quint <Antoine Quint> on 2019-02-28
Reviewed by Dean Jackson.
The test runners already opt into that feature explicitly, so all that is needed is to turn
the default setting value to false.
- Shared/WebPreferences.yaml:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@242233 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 8:38 PM Changeset in webkit [242336] by
-
- 6 edits1 add in trunk/Source/WebKit
Add a WebViewDidMoveToWindowObserver for WKWebView
https://bugs.webkit.org/show_bug.cgi?id=195223
<rdar://problem/48520161>
Reviewed by Darin Adler.
The load optimizer would only allow itself to optimize loads whenever the web view
who owns the page is (visible && focused), otherwises it will wait until the web view
becomes (visible && focused). Therefore, we need a way to notify the load optimizer
changes of statuses.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView didMoveToWindow]):
- UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::viewDidMoveToWindow):
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::addWebViewDidMoveToWindowObserver):
(WebKit::WebPageProxy::removeWebViewDidMoveToWindowObserver):
(WebKit::WebPageProxy::webViewDidMoveToWindow):
- UIProcess/WebPageProxy.h:
- UIProcess/WebViewDidMoveToWindowObserver.h: Added.
- WebKit.xcodeproj/project.pbxproj:
- 8:37 PM Changeset in webkit [242335] by
-
- 7 edits in tags/Safari-608.1.7.2/Source
Versioning.
- 8:32 PM Changeset in webkit [242334] by
-
- 1 copy in tags/Safari-608.1.7.2
New tag.
- 4:36 PM Changeset in webkit [242333] by
-
- 45 edits in trunk
Share more code for updating the state of frame scrolling nodes
https://bugs.webkit.org/show_bug.cgi?id=195254
Reviewed by Antti Koivisto.
Source/WebCore:
Responsibility for updating state on ScrollingStateFrameScrolling nodes was split between
AsyncScrollingCoordinator::frameViewLayoutUpdated(), which is called post-layout, and
RenderLayerCompositor. This patch gives that responsibility entirely to RenderLayerCompositor,
ensuring that we update frame scrolling nodes at the same time as the rest of the scrolling
state tree.
We also share code between updating ScrollingStateFrameScrollingNodes and
ScrollingStateOverflowScrollingNodews, since both can be updated from a ScrollableArea.
Some minor cleanup of ScrollableArea is doing to help. For the first time, we're pushing
ScrollableAreaParameters for overflow scrolling nodes, allowing rubber-banding to work
on macOS.
- page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::frameViewLayoutUpdated):
(WebCore::AsyncScrollingCoordinator::setRectRelativeToParentNode):
(WebCore::AsyncScrollingCoordinator::setFrameScrollingNodeState):
(WebCore::AsyncScrollingCoordinator::setScrollingNodeScrollableAreaGeometry):
(WebCore::AsyncScrollingCoordinator::setViewportConstraintedNodeConstraints):
(WebCore::AsyncScrollingCoordinator::setScrollingNodeGeometry): Deleted.
(WebCore::AsyncScrollingCoordinator::setViewportConstraintedNodeGeometry): Deleted.
- page/scrolling/AsyncScrollingCoordinator.h:
- page/scrolling/ScrollingCoordinator.h:
(WebCore::ScrollingCoordinator::setRectRelativeToParentNode):
(WebCore::ScrollingCoordinator::setScrollingNodeScrollableAreaGeometry):
(WebCore::ScrollingCoordinator::setFrameScrollingNodeState):
(WebCore::ScrollingCoordinator::setViewportConstraintedNodeConstraints):
(WebCore::ScrollingCoordinator::setScrollingNodeGeometry): Deleted.
(WebCore::ScrollingCoordinator::setViewportConstraintedNodeGeometry): Deleted.
- platform/ScrollView.h:
(WebCore::ScrollView::horizontalScrollbarMode const): Deleted.
(WebCore::ScrollView::verticalScrollbarMode const): Deleted.
- platform/ScrollableArea.cpp:
(WebCore::ScrollableArea::reachableTotalContentsSize const):
- platform/ScrollableArea.h:
(WebCore::ScrollableArea::horizontalScrollbarMode const):
(WebCore::ScrollableArea::verticalScrollbarMode const):
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::overhangAmount const):
(WebCore::RenderLayer::reachableTotalContentsSize const):
(WebCore::RenderLayer::scrollableContentsSize const): Deleted.
- rendering/RenderLayer.h:
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateCompositingLayers):
(WebCore::RenderLayerCompositor::updateBackingAndHierarchy):
(WebCore::RenderLayerCompositor::updateScrollingNodeForViewportConstrainedRole):
(WebCore::RenderLayerCompositor::rootParentRelativeScrollableRect const):
(WebCore::RenderLayerCompositor::parentRelativeScrollableRect const):
(WebCore::RenderLayerCompositor::updateScrollingNodeForScrollingRole):
(WebCore::RenderLayerCompositor::updateScrollingNodeForFrameHostingRole):
(WebCore::RenderLayerCompositor::computeFrameScrollingGeometry const): Deleted.
(WebCore::RenderLayerCompositor::computeFrameHostingGeometry const): Deleted.
(WebCore::RenderLayerCompositor::computeOverflowScrollingGeometry const): Deleted.
- rendering/RenderLayerCompositor.h:
LayoutTests:
New baselines. Overflow nodes get some state from ScrollableAreaParameters now, and
frame nodes get the current scroll position (which is good, since they already have
the new layout viewport).
- fast/scrolling/ios/change-scrollability-on-content-resize-expected.txt:
- fast/scrolling/ios/change-scrollability-on-content-resize-nested-expected.txt:
- platform/ios-wk2/scrollingcoordinator/scrolling-tree/coordinated-frame-expected.txt:
- platform/ios-wk2/scrollingcoordinator/scrolling-tree/coordinated-frame-gain-scrolling-ancestor-expected.txt:
- platform/ios-wk2/scrollingcoordinator/scrolling-tree/coordinated-frame-in-fixed-expected.txt:
- platform/ios-wk2/scrollingcoordinator/scrolling-tree/coordinated-frame-lose-scrolling-ancestor-expected.txt:
- platform/ios-wk2/scrollingcoordinator/scrolling-tree/gain-scrolling-node-parent-expected.txt:
- platform/ios-wk2/scrollingcoordinator/scrolling-tree/lose-scrolling-node-parent-expected.txt:
- platform/ios-wk2/scrollingcoordinator/scrolling-tree/overflow-in-fixed-expected.txt:
- platform/ios-wk2/scrollingcoordinator/scrolling-tree/remove-scrolling-role-expected.txt:
- platform/ios-wk2/scrollingcoordinator/scrolling-tree/reparent-across-compositing-layers-expected.txt:
- platform/ios-wk2/scrollingcoordinator/scrolling-tree/reparent-with-layer-removal-expected.txt:
- scrollingcoordinator/scrolling-tree/gain-scrolling-node-parent-expected.txt:
- scrollingcoordinator/scrolling-tree/lose-scrolling-node-parent-expected.txt:
- scrollingcoordinator/scrolling-tree/overflow-in-fixed-expected.txt:
- scrollingcoordinator/scrolling-tree/remove-scrolling-role-expected.txt:
- scrollingcoordinator/scrolling-tree/reparent-across-compositing-layers-expected.txt:
- scrollingcoordinator/scrolling-tree/reparent-with-layer-removal-expected.txt:
- tiled-drawing/scrolling/clamp-out-of-bounds-scrolls-expected.txt:
- tiled-drawing/scrolling/fixed/absolute-inside-fixed-expected.txt:
- tiled-drawing/scrolling/fixed/absolute-inside-out-of-view-fixed-expected.txt:
- tiled-drawing/scrolling/fixed/fixed-in-overflow-expected.txt:
- tiled-drawing/scrolling/fixed/four-bars-expected.txt:
- tiled-drawing/scrolling/fixed/four-bars-with-header-and-footer-expected.txt:
- tiled-drawing/scrolling/fixed/four-bars.html:
- tiled-drawing/scrolling/fixed/nested-fixed-expected.txt:
- tiled-drawing/scrolling/fixed/percentage-inside-fixed-expected.txt:
- tiled-drawing/scrolling/sticky/sticky-horizontal-expected.txt:
- tiled-drawing/scrolling/sticky/sticky-vertical-expected.txt:
- 2:16 PM Changeset in webkit [242332] by
-
- 13 edits in trunk/Source/WebKit
[Apple Pay] Untangle WebPageProxy and WebPaymentCoordinatorProxy
https://bugs.webkit.org/show_bug.cgi?id=195219
<rdar://problem/48518082>
Reviewed by Darin Adler.
Rather than having WebPaymentCoordinatorProxy know about WebPageProxy, give
WebPaymentCoordinatorProxy a client interface that WebPageProxy conforms to.
In a follow-on patch, WebPaymentCoordinatorProxy will have a non-WebPageProxy client.
- UIProcess/ApplePay/WebPaymentCoordinatorProxy.cpp:
(WebKit::WebPaymentCoordinatorProxy::WebPaymentCoordinatorProxy): Replaced use of
m_webPageProxy with m_client.
(WebKit::WebPaymentCoordinatorProxy::~WebPaymentCoordinatorProxy): Ditto.
(WebKit::WebPaymentCoordinatorProxy::messageSenderConnection const): Implemented
IPC::MessageSender via m_client.
(WebKit::WebPaymentCoordinatorProxy::messageSenderDestinationID const): Ditto.
(WebKit::WebPaymentCoordinatorProxy::canMakePaymentsWithActiveCard): Replaced use of
m_webPageProxy with m_client.
(WebKit::WebPaymentCoordinatorProxy::openPaymentSetup): Ditto.
(WebKit::WebPaymentCoordinatorProxy::didCancelPaymentSession): Called our own
MessageSender::send rather than going through m_webPageProxy.
(WebKit::WebPaymentCoordinatorProxy::validateMerchant): Ditto.
(WebKit::WebPaymentCoordinatorProxy::didAuthorizePayment): Ditto.
(WebKit::WebPaymentCoordinatorProxy::didSelectShippingMethod): Ditto.
(WebKit::WebPaymentCoordinatorProxy::didSelectShippingContact): Ditto.
(WebKit::WebPaymentCoordinatorProxy::didSelectPaymentMethod): Ditto.
- UIProcess/ApplePay/WebPaymentCoordinatorProxy.h: Defined the Client abstract class and
changed m_webPageProxy to m_client.
- UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.h:
- UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm:
(WebKit::WebPaymentCoordinatorProxy::platformCanMakePaymentsWithActiveCard): Replaced use of
m_webPageProxy with m_client.
(WebKit::WebPaymentCoordinatorProxy::platformPaymentRequest): Renamed from toPKPaymentRequest.
(WebKit::toPKPaymentRequest): Renamed to WebPaymentCoordinatorProxy::platformPaymentRequest.
- UIProcess/ApplePay/ios/WebPaymentCoordinatorProxyIOS.mm:
(WebKit::WebPaymentCoordinatorProxy::platformShowPaymentUI): Replaced use of m_webPageProxy
with m_client.
- UIProcess/ApplePay/mac/WebPaymentCoordinatorProxyMac.mm:
(WebKit::WebPaymentCoordinatorProxy::platformShowPaymentUI): Ditto.
- UIProcess/AuxiliaryProcessProxy.h:
(WebKit::AuxiliaryProcessProxy::messageReceiverMap): Added.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::paymentCoordinatorConnection): Implemented WebPaymentCoordinatorProxy::Client.
(WebKit::WebPageProxy::paymentCoordinatorMessageReceiver): Ditto.
(WebKit::WebPageProxy::paymentCoordinatorSourceApplicationBundleIdentifier): Ditto.
(WebKit::WebPageProxy::paymentCoordinatorSourceApplicationSecondaryIdentifier): Ditto.
(WebKit::WebPageProxy::paymentCoordinatorDestinationID): Ditto.
- UIProcess/WebPageProxy.h: Made WebPageProxy derive from WebPaymentCoordinatorProxy::Client.
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::paymentCoordinatorPresentingViewController): Implemented WebPaymentCoordinatorProxy::Client.
(WebKit::WebPageProxy::paymentCoordinatorCTDataConnectionServiceType): Ditto.
- UIProcess/mac/WebPageProxyMac.mm:
(WebKit::WebPageProxy::paymentCoordinatorPresentingWindow): Ditto.
- WebKit.xcodeproj/project.pbxproj:
- 2:08 PM Changeset in webkit [242331] by
-
- 2 edits in trunk/LayoutTests
[GTK] Unreviewed test gardening
https://bugs.webkit.org/show_bug.cgi?id=195261
Unreviewed test gardening.
- platform/gtk/TestExpectations:
- 12:43 PM Changeset in webkit [242330] by
-
- 23 edits2 deletes in trunk
Retire legacy dtoa function and DecimalNumber class
https://bugs.webkit.org/show_bug.cgi?id=195253
Reviewed by Daniel Bates.
LayoutTests/imported/w3c:
- web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-iteration-composite-operation-expected.txt:
Rebaseline still-failing part of this test that dumps super-small numbers that are formatted
differently by the new code (exponential style).
Source/JavaScriptCore:
- runtime/NumberPrototype.cpp:
(JSC::numberProtoFuncToExponential): Removed dependency on NumberToStringBufferLength,
using NumberToStringBuffer instead. Also tweaked style of implementation a bit.
Source/WebCore:
- css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::formatNumberValue const): Use makeString instead
of DecimalNumber. Also changed return type to String and use StringView and
removed special handling of literals.
(WebCore::CSSPrimitiveValue::formatNumberForCustomCSSText const): Removed an
unnecessary use of StringBuilder.
- css/CSSPrimitiveValue.h: Updated for changes to formatNumberValue.
Source/WTF:
- WTF.xcodeproj/project.pbxproj: Removed DecimalNumber.cpp/h.
- wtf/CMakeLists.txt: Ditto.
- wtf/DecimalNumber.cpp: Removed.
- wtf/DecimalNumber.h: Removed.
- wtf/JSONValues.cpp:
(WTF::JSONImpl::Value::writeJSON const): Use
StringBuilder::appendECMAScriptNumber instead of custom logic
using the DecimalNumber class.
- wtf/dtoa.cpp:
(WTF::storeInc): Deleted.
(WTF::BigInt): Deleted.
(WTF::multadd): Deleted.
(WTF::hi0bits): Deleted.
(WTF::lo0bits): Deleted.
(WTF::i2b): Deleted.
(WTF::mult): Deleted.
(WTF::P5Node::P5Node): Deleted.
(WTF::pow5mult): Deleted.
(WTF::lshift): Deleted.
(WTF::cmp): Deleted.
(WTF::diff): Deleted.
(WTF::d2b): Deleted.
(WTF::quorem): Deleted.
(WTF::dtoa): Deleted.
- wtf/dtoa.h: Removed DtoaBuffer, dtoa, and NumberToStringBufferLength.
LayoutTests:
- fast/css/large-value-csstext-expected.txt:
- media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-volume-styles-expected.txt:
- media/modern-media-controls/macos-inline-media-controls/macos-inline-media-controls-volume-styles.html:
Updated expected value to expect exponential syntax for super-small numbers that are formatted
differently by the new code.
- platform/ios/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt:
- platform/ios/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt:
- platform/ios/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt:
- platform/mac/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt:
- platform/mac/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt:
- platform/mac/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt:
Rebaseline still-failing parts of these tests that dump super-small numbers that are formatted
differently by the new code. Still probably needs to be done for 4 other platforms.
- 11:11 AM Changeset in webkit [242329] by
-
- 1 edit1 delete in trunk/Tools
Unreviewed, remove accidentally-committed URLHelpers.cpp test
This test isn't built by any port and was committed in r240962 by mistake. See bug #174816
and bug #194272 for details.
- TestWebKitAPI/Tests/WTF/URLHelpers.cpp: Removed.
- 9:51 AM Changeset in webkit [242328] by
-
- 2 edits in trunk/Source/WebCore
[SOUP] Cleanups in SoupNetworkSession
https://bugs.webkit.org/show_bug.cgi?id=195247
Reviewed by Daniel Bates.
This renames clientCertificates to allowedCertificates, since they are not client
certificates at all, but server certificates. It also adds a using statement to avoid
repeating the long type of the map, and avoids an unnecessary copy.
- platform/network/soup/SoupNetworkSession.cpp:
(WebCore::allowedCertificates):
(WebCore::SoupNetworkSession::checkTLSErrors):
(WebCore::SoupNetworkSession::allowSpecificHTTPSCertificateForHost):
(WebCore::clientCertificates): Deleted.
- 8:45 AM Changeset in webkit [242327] by
-
- 2 edits in trunk/Source/WebCore
-Wformat error in SharedBuffer::tryCreateArrayBuffer
https://bugs.webkit.org/show_bug.cgi?id=195004
Reviewed by Darin Adler.
Seems C++ has no format specifier appropriate for printing the result of sizeof. We should
just not try to print it. Anyway, that's easy in this case, because sizeof(char) is
guaranteed to be 1. This code was an attempt to be pedantic to account for mythical systems
with char larger than one byte, but perhaps it didn't realize sizeof always returns
multiples of char and so sizeof(char) is always one even on such mythical systems.
Note the sizeof(char) use two lines up is left since it's not clear that switching it to 1
would actually be more readable.
- platform/SharedBuffer.cpp:
(WebCore::SharedBuffer::tryCreateArrayBuffer const):
- 4:30 AM Changeset in webkit [242326] by
-
- 4 edits2 adds in releases/WebKitGTK/webkit-2.24/Source/WebKit
[WPE] Public API headers are missing autocleanup definitions
https://bugs.webkit.org/show_bug.cgi?id=195211
Reviewed by Philippe Normand.
- PlatformWPE.cmake: List new API headers as installable.
- UIProcess/API/wpe/WebKitAutocleanups.h: Added. This is a copy of the header from the GTK
port, adapted to fit the WPE port.
- UIProcess/API/wpe/webkit.h: Add inclusion of WebKitAutocleanups.h
- WebProcess/InjectedBundle/API/wpe/WebKitWebExtensionAutocleanups.h: Added. Also adapted
from the equivalent header of the GTK port.
- WebProcess/InjectedBundle/API/wpe/webkit-web-extension.h: Add inclusion of
WebKitWebExtensionAutocleanups.h
- 2:35 AM Changeset in webkit [242325] by
-
- 46 edits4 deletes in trunk
Remove some more unused 32-bit code
https://bugs.webkit.org/show_bug.cgi?id=195255
Reviewed by Darin Adler.
Source/WebCore:
- platform/gamepad/cocoa/GameControllerGamepad.h:
- platform/gamepad/cocoa/GameControllerGamepad.mm:
- platform/gamepad/cocoa/GameControllerGamepadProvider.h:
- platform/gamepad/cocoa/GameControllerGamepadProvider.mm:
- platform/graphics/cocoa/FontCascadeCocoa.mm:
- platform/mac/PlatformEventFactoryMac.mm:
(WebCore::globalPointForEvent):
(WebCore::pointForEvent):
(WebCore::mouseButtonForEvent):
(WebCore::PlatformMouseEventBuilder::PlatformMouseEventBuilder):
- rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::servicesRolloverButtonCell const):
(WebCore::RenderThemeMac::paintImageControlsButton):
(WebCore::RenderThemeMac::imageControlsButtonSize const):
(WebCore::RenderThemeMac::imageControlsButtonPositionOffset const):
Source/WebCore/PAL:
- PAL.xcodeproj/project.pbxproj:
- pal/PlatformMac.cmake:
- pal/spi/cocoa/IOKitSPI.h:
- pal/spi/mac/QuickDrawSPI.h: Removed.
Source/WebKit:
- Platform/Module.cpp:
(WebKit::Module::Module):
- Platform/Module.h:
- Platform/cf/ModuleCF.cpp:
(WebKit::Module::unload):
(WebKit::Module::bundleResourceMap): Deleted.
- PluginProcess/mac/PluginProcessMac.mm:
(WebKit::initializeShim):
(WebKit::PluginProcess::platformInitializeProcess):
(WebKit::shouldCallRealDebugger): Deleted.
(WebKit::isWindowActive): Deleted.
(WebKit::getCurrentEventButtonState): Deleted.
(WebKit::carbonWindowShown): Deleted.
(WebKit::carbonWindowHidden): Deleted.
(WebKit::openCFURLRef): Deleted.
(WebKit::isMallocTinyMemoryTag): Deleted.
(WebKit::shouldMapMemoryExecutable): Deleted.
- PluginProcess/mac/PluginProcessShim.h:
- PluginProcess/mac/PluginProcessShim.mm:
(WebKit::shimDebugger): Deleted.
(WebKit::shimGetCurrentEventButtonState): Deleted.
(WebKit::shimIsWindowActive): Deleted.
(WebKit::shimModalDialog): Deleted.
(WebKit::shimAlert): Deleted.
(WebKit::shimShowWindow): Deleted.
(WebKit::shimHideWindow): Deleted.
(WebKit::shimLSOpenCFURLRef): Deleted.
(WebKit::shimMachVMMap): Deleted.
- Shared/API/Cocoa/WKFoundation.h:
- Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm:
(WebKit::XPCServiceMain):
- Shared/Plugins/Netscape/NetscapePluginModule.cpp:
(WebKit::NetscapePluginModule::tryLoad):
- Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
(WebKit::getPluginArchitecture):
(WebKit::NetscapePluginModule::determineQuirks):
- Shared/Plugins/PluginQuirks.h:
- Shared/cf/ArgumentCodersCF.cpp:
(IPC::sizeForNumberType):
- Shared/mac/WebEventFactory.mm:
(WebKit::mouseButtonForEvent):
(WebKit::globalPointForEvent):
(WebKit::pointForEvent):
(WebKit::WebEventFactory::createWebMouseEvent):
- UIProcess/API/C/mac/WKPagePrivateMac.h:
- UIProcess/API/C/mac/WKPagePrivateMac.mm:
(WKPageLoadFileReturningNavigation):
- UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::pressureChangeWithEvent):
- UIProcess/Gamepad/cocoa/UIGamepadProviderCocoa.mm:
(WebKit::UIGamepadProvider::platformSetDefaultGamepadProvider):
- UIProcess/mac/ServicesController.mm:
(WebKit::ServicesController::ServicesController):
- UIProcess/mac/WebContextMenuProxyMac.mm:
(WebKit::WebContextMenuProxyMac::setupServicesMenu):
- WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
(WebKit::NPN_GetValue):
- WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
(WebKit::NetscapePlugin::NetscapePlugin):
- WebProcess/Plugins/Netscape/NetscapePlugin.h:
(WebKit::NetscapePlugin::isWindowActive const): Deleted.
- WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
(WebKit::NetscapePlugin::setDrawingModel):
(WebKit::NetscapePlugin::setEventModel):
(WebKit::NetscapePlugin::platformPostInitialize):
(WebKit::NetscapePlugin::platformDestroy):
(WebKit::NetscapePlugin::platformGeometryDidChange):
(WebKit::NetscapePlugin::platformPaint):
(WebKit::NetscapePlugin::platformHandleMouseEvent):
(WebKit::NetscapePlugin::platformHandleWheelEvent):
(WebKit::NetscapePlugin::platformHandleMouseEnterEvent):
(WebKit::NetscapePlugin::platformHandleMouseLeaveEvent):
(WebKit::NetscapePlugin::platformHandleKeyboardEvent):
(WebKit::NetscapePlugin::platformSetFocus):
(WebKit::NetscapePlugin::windowFocusChanged):
(WebKit::NetscapePlugin::windowAndViewFramesChanged):
(WebKit::NetscapePlugin::sendComplexTextInput):
(): Deleted.
(WebKit::windowMap): Deleted.
(WebKit::NetscapePlugin::netscapePluginFromWindow): Deleted.
(WebKit::NetscapePlugin::windowRef const): Deleted.
(WebKit::NetscapePlugin::updateFakeWindowBounds): Deleted.
(WebKit::NetscapePlugin::buttonState): Deleted.
(WebKit::initializeEventRecord): Deleted.
(WebKit::anyMouseButtonIsDown): Deleted.
(WebKit::rightMouseButtonIsDown): Deleted.
(WebKit::modifiersForEvent): Deleted.
(WebKit::convertStringToKeyCodes): Deleted.
(WebKit::scriptCodeFromCurrentKeyboardInputSource): Deleted.
(WebKit::NetscapePlugin::nullEventTimerFired): Deleted.
Source/WebKitLegacy/mac:
- Plugins/WebNetscapePluginEventHandler.mm:
(WebNetscapePluginEventHandler::create):
- Plugins/WebNetscapePluginView.h:
- Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]):
(-[WebNetscapePluginView restorePortState:]):
(-[WebNetscapePluginView sendEvent:isDrawRect:]):
(-[WebNetscapePluginView isNewWindowEqualToOldWindow]):
(-[WebNetscapePluginView updateAndSetWindow]):
(-[WebNetscapePluginView setWindowIfNecessary]):
(-[WebNetscapePluginView createPlugin]):
(-[WebNetscapePluginView fini]):
(-[WebNetscapePluginView drawRect:]):
(-[WebNetscapePluginView invalidateRegion:]):
(-[WebNetscapePluginView getVariable:value:]):
(-[WebNetscapePluginView setVariable:value:]):
(isDrawingModelQuickDraw): Deleted.
(-[WebNetscapePluginView fixWindowPort]): Deleted.
(getQDPixelFormatForBitmapContext): Deleted.
(-[WebNetscapePluginView tellQuickTimeToChill]): Deleted.
(-[WebNetscapePluginView _printedPluginBitmap]): Deleted.
- WebView/WebDelegateImplementationCaching.mm:
Tools:
- DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
- DumpRenderTree/TestNetscapePlugIn/Tests/mac/SupportsCarbonEventModel.cpp: Removed.
- DumpRenderTree/TestNetscapePlugIn/main.cpp:
(NPP_New):
(NPP_HandleEvent):
(handleEventCarbon): Deleted.
LayoutTests:
- platform/mac/plugins/supports-carbon-event-model-expected.txt: Removed.
- platform/mac/plugins/supports-carbon-event-model.html: Removed.
Mar 2, 2019:
- 6:50 PM Changeset in webkit [242324] by
-
- 6 edits in trunk/Source
[ContentChangeObserver] Introduce ContentChangeObserver::MouseMovedScope
https://bugs.webkit.org/show_bug.cgi?id=195252
<rdar://problem/48539446>
Reviewed by Simon Fraser.
Source/WebCore:
Scope the mouse-moved event to make the callsites less error-prone.
- page/ios/ContentChangeObserver.cpp:
(WebCore::ContentChangeObserver::startObservingMouseMoved):
(WebCore::ContentChangeObserver::stopObservingMouseMoved):
(WebCore::ContentChangeObserver::MouseMovedScope::MouseMovedScope):
(WebCore::ContentChangeObserver::MouseMovedScope::~MouseMovedScope):
(WebCore::ContentChangeObserver::startObservingContentChanges): Deleted.
(WebCore::ContentChangeObserver::stopObservingContentChanges): Deleted.
- page/ios/ContentChangeObserver.h:
- page/ios/EventHandlerIOS.mm:
(WebCore::EventHandler::mouseMoved):
Source/WebKit:
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::handleSyntheticClick):
- 5:03 PM Changeset in webkit [242323] by
-
- 2 edits in trunk/Tools
Unreviewed follow-up to r242292. Keep EXPECT_STREQ in tests per Darin's request.
- TestWebKitAPI/Tests/WebKit/EnvironmentUtilitiesTest.cpp:
(TestWebKitAPI::TEST):
- 4:18 PM Changeset in webkit [242322] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Unexpectedly frequent flashing of DOM node attributes
https://bugs.webkit.org/show_bug.cgi?id=148049
<rdar://problem/22296830>
Reviewed by Joseph Pecoraro.
Save a timestamp of when the CSS animation began, so that if the attribute's node is replaced,
we can "resume" the CSS animation at the same point with the attribute's new node.
- UserInterface/Views/DOMTreeElement.js:
(WI.DOMTreeElement):
(WI.DOMTreeElement.prototype.attributeDidChange):
(WI.DOMTreeElement.prototype._buildAttributeDOM):
(WI.DOMTreeElement.prototype._createModifiedAnimation):
(WI.DOMTreeElement.prototype._markNodeChanged): Deleted.
(WI.DOMTreeElement.prototype._nodeChangedAnimationEnd): Deleted.
(WI.DOMTreeElement.prototype._fireDidChange): Deleted.
- 4:15 PM Changeset in webkit [242321] by
-
- 4 edits2 adds in trunk
[ContentChangeObserver] Introduce ContentChangeObserver::adjustObservedState
https://bugs.webkit.org/show_bug.cgi?id=195244
<rdar://problem/48536737>
Reviewed by Simon Fraser.
Source/WebCore:
Move state change handling code to adjustObservedState() and introduce signalContentChangeIfNeeded() to
let the client know about the state change (or lack of state change).
Test: fast/events/touch/ios/visibility-change-happens-at-the-second-timer.html
- page/ios/ContentChangeObserver.cpp:
(WebCore::ContentChangeObserver::didInstallDOMTimer):
(WebCore::ContentChangeObserver::didRemoveDOMTimer):
(WebCore::ContentChangeObserver::stopObservingDOMTimerExecute):
(WebCore::ContentChangeObserver::stopObservingStyleRecalc):
(WebCore::ContentChangeObserver::clearTimersAndReportContentChange):
(WebCore::ContentChangeObserver::didContentVisibilityChange):
(WebCore::ContentChangeObserver::addObservedDOMTimer):
(WebCore::ContentChangeObserver::removeObservedDOMTimer):
(WebCore::ContentChangeObserver::setShouldObserveStyleRecalc):
(WebCore::ContentChangeObserver::adjustObservedState):
(WebCore::ContentChangeObserver::signalContentChangeIfNeeded):
- page/ios/ContentChangeObserver.h:
(WebCore::ContentChangeObserver::isObservingDOMTimerScheduling const):
(WebCore::ContentChangeObserver::addObservedDOMTimer): Deleted.
(WebCore::ContentChangeObserver::setShouldObserveStyleRecalc): Deleted.
LayoutTests:
- fast/events/touch/ios/visibility-change-happens-at-the-second-timer-expected.txt: Added.
- fast/events/touch/ios/visibility-change-happens-at-the-second-timer.html: Added.
- 4:02 PM Changeset in webkit [242320] by
-
- 6 edits1 add in trunk/Source/WebKit
Move EditingRange <-> Range methods to EditingRange instead of WebPage
https://bugs.webkit.org/show_bug.cgi?id=195201
Reviewed by Sam Weinig.
- Shared/EditingRange.h:
- Shared/EditingRange.cpp:
Also, modernize the coders.
- Sources.txt:
- WebKit.xcodeproj/project.pbxproj:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::insertTextAsync):
(WebKit::WebPage::getMarkedRangeAsync):
(WebKit::WebPage::getSelectedRangeAsync):
(WebKit::WebPage::characterIndexForPointAsync):
(WebKit::WebPage::firstRectForCharacterRangeAsync):
(WebKit::WebPage::setCompositionAsync):
(WebKit::WebPage::rangeFromEditingRange): Deleted.
- WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::insertDictatedTextAsync):
(WebKit::WebPage::attributedSubstringForCharacterRangeAsync):
- 2:57 PM Changeset in webkit [242319] by
-
- 3 edits in trunk/Source/WebCore
[ContentChangeObserver] Move away from WKContentChange values
https://bugs.webkit.org/show_bug.cgi?id=195240
<rdar://problem/48532358>
Reviewed by Simon Fraser.
This is in preparation for moving towards a state machine-like implementation.
- page/ios/ContentChangeObserver.cpp:
(WebCore::ContentChangeObserver::didInstallDOMTimer): Do not install the timer if we are already in "hover" state.
(WebCore::ContentChangeObserver::didRemoveDOMTimer):
(WebCore::ContentChangeObserver::startObservingDOMTimerExecute):
(WebCore::ContentChangeObserver::stopObservingDOMTimerExecute):
(WebCore::ContentChangeObserver::startObservingStyleRecalc): No need to start observing the style recalc if we are already in "hover" state.
(WebCore::ContentChangeObserver::stopObservingStyleRecalc):
(WebCore::ContentChangeObserver::clearTimersAndReportContentChange):
(WebCore::ContentChangeObserver::didContentVisibilityChange):
(WebCore::ContentChangeObserver::startObservingContentChanges):
(WebCore::ContentChangeObserver::observedContentChange const):
(WebCore::ContentChangeObserver::removeObservedDOMTimer):
(WebCore::ContentChangeObserver::hasDeterminedState const):
(WebCore::ContentChangeObserver::observedContentChange): Deleted.
(WebCore::ContentChangeObserver::resetObservedContentChange): Deleted.
(WebCore::ContentChangeObserver::setObservedContentChange): Deleted.
(WebCore::ContentChangeObserver::addObservedDOMTimer): Deleted.
- page/ios/ContentChangeObserver.h:
(WebCore::ContentChangeObserver::addObservedDOMTimer):
(WebCore::ContentChangeObserver::clearObservedDOMTimers):
(WebCore::ContentChangeObserver::hasVisibleChangeState const):
(WebCore::ContentChangeObserver::hasObservedDOMTimer const):
(WebCore::ContentChangeObserver::setHasNoChangeState):
(WebCore::ContentChangeObserver::setHasIndeterminateState):
(WebCore::ContentChangeObserver::setHasVisibleChangeState):
(WebCore::ContentChangeObserver::countOfObservedDOMTimers const): Deleted.
- 2:40 PM Changeset in webkit [242318] by
-
- 11 edits in trunk/Source/WebInspectorUI
Web Inspector: Debugger: DOM, URL, and Event breakpoints don't grey out when all breakpoints are disabled
https://bugs.webkit.org/show_bug.cgi?id=195170
<rdar://problem/48478193>
Reviewed by Joseph Pecoraro.
- UserInterface/Views/DOMBreakpointTreeElement.js:
(WI.DOMBreakpointTreeElement):
(WI.DOMBreakpointTreeElement.prototype.onattach):
(WI.DOMBreakpointTreeElement.prototype.ondetach):
(WI.DOMBreakpointTreeElement.prototype._updateStatus):
- UserInterface/Views/EventBreakpointTreeElement.js:
(WI.EventBreakpointTreeElement):
(WI.EventBreakpointTreeElement.prototype.onattach):
(WI.EventBreakpointTreeElement.prototype.ondetach):
(WI.EventBreakpointTreeElement.prototype._updateStatus):
- UserInterface/Views/URLBreakpointTreeElement.js:
(WI.URLBreakpointTreeElement):
(WI.URLBreakpointTreeElement.prototype.onattach):
(WI.URLBreakpointTreeElement.prototype.ondetach):
(WI.URLBreakpointTreeElement.prototype._updateStatus):
Remove the"resolved"
class when the global "breakpoints enabled" state is changed.
- UserInterface/Controllers/DOMDebuggerManager.js:
(WI.DOMDebuggerManager):
(WI.DOMDebuggerManager.prototype._handleDOMBreakpointDisabledStateChanged): Added.
(WI.DOMDebuggerManager.prototype._handleEventBreakpointDisabledStateChanged): Added.
(WI.DOMDebuggerManager.prototype._handleURLBreakpointDisabledStateChanged): Added.
(WI.DOMDebuggerManager.prototype._updateEventBreakpoint):
(WI.DOMDebuggerManager.prototype._updateURLBreakpoint):
(WI.DOMDebuggerManager.prototype._resolveEventBreakpoint):
(WI.DOMDebuggerManager.prototype._resolveURLBreakpoint):
(WI.DOMDebuggerManager.prototype._updateEventBreakpoint.breakpointUpdated): Deleted.
(WI.DOMDebuggerManager.prototype._updateURLBreakpoint.breakpointUpdated): Deleted.
- UserInterface/Models/DOMBreakpoint.js:
(WI.DOMBreakpoint):
(WI.DOMBreakpoint.deserialize): Added.
(WI.DOMBreakpoint.prototype.set disabled):
(WI.DOMBreakpoint.prototype.set domNodeIdentifier):
- UserInterface/Models/EventBreakpoint.js:
(WI.EventBreakpoint.deserialize): Added.
(WI.EventBreakpoint.prototype.set disabled):
(WI.EventBreakpoint.fromPayload): Deleted.
- UserInterface/Models/URLBreakpoint.js:
(WI.URLBreakpoint.deserialize): Added.
(WI.URLBreakpoint.prototype.set disabled):
- UserInterface/Views/DOMTreeContentView.js:
(WI.DOMTreeContentView):
(WI.DOMTreeContentView.prototype._handleDOMBreakpointDisabledStateChanged): Added.
(WI.DOMTreeContentView.prototype._handleDOMBreakpointDOMNodeChanged): Added.
- UserInterface/Views/DebuggerSidebarPanel.js:
(WI.DebuggerSidebarPanel.prototype._handleDOMBreakpointResolvedStateChanged): Added.
- UserInterface/Views/SourcesNavigationSidebarPanel.js:
(WI.SourcesNavigationSidebarPanel):
(WI.SourcesNavigationSidebarPanel.prototype._handleDOMBreakpointResolvedStateChanged): Added.
Drive-by: rename all events with the name*DidChange
to*Changed
.
Drive-by: create staticdeserialize
helper functions.
- 1:50 PM Changeset in webkit [242317] by
-
- 40 edits2 copies1 move in trunk
[iOS] Programmatic paste access should be granted when copying and pasting within the same origin
https://bugs.webkit.org/show_bug.cgi?id=195053
<rdar://problem/48134710>
Reviewed by Ryosuke Niwa.
Source/WebCore:
Plumb the document pasteboard identifier through the client when making a DOM paste access request. See WebKit
ChangeLog for more details.
Test: editing/pasteboard/ios/dom-paste-same-origin.html
- WebCore.xcodeproj/project.pbxproj:
- dom/DOMPasteAccess.h: Renamed from Source/WebCore/dom/DOMPasteAccessPolicy.h.
Introduce DOMPasteAccessResponse, which is either DeniedForGesture, GrantedForCommand, or GrantedForGesture. In
particular, when pasteboard identifiers match, we only grant access for the current paste command, rather than
throughout the user gesture.
- dom/UserGestureIndicator.h:
(WebCore::UserGestureToken::didRequestDOMPasteAccess):
- loader/EmptyClients.cpp:
- page/EditorClient.h:
- page/Frame.cpp:
(WebCore::Frame::requestDOMPasteAccess):
Source/WebKit:
Add support for automatically granting programmatic pasteboard access when the pasteboard identifier of the
document requesting programmatic paste matches the identifier in the custom pasteboard data blob in the
UIPasteboard. To do this, we send the pasteboard identifier of the document requesting the DOM paste to the UI
process, and check this against the pasteboard identifiers for each item on the platform pasteboard. If all
items in the platform pasteboard match the given pasteboard identifier (since we don't support writing multiple
pasteboard items via bindings, this should only be a single item), we skip showing the paste callout and
immediately invoke the programmatic paste handler.
- Scripts/webkit/messages.py:
- UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::requestDOMPasteAccess):
- UIProcess/API/gtk/PageClientImpl.h:
- UIProcess/API/wpe/PageClientImpl.cpp:
(WebKit::PageClientImpl::requestDOMPasteAccess):
- UIProcess/API/wpe/PageClientImpl.h:
- UIProcess/PageClient.h:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::requestDOMPasteAccess):
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
Add plumbing to deliver the pasteboard identifier to the client when requesting DOM paste.
- UIProcess/ios/PageClientImplIOS.h:
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::requestDOMPasteAccess):
- UIProcess/ios/WKContentViewInteraction.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView cleanupInteraction]):
(-[WKContentView resignFirstResponderForWebView]):
(-[WKContentView _webTouchEventsRecognized:]):
(-[WKContentView _willHideMenu:]):
(-[WKContentView pasteForWebView:]):
(-[WKContentView _handleDOMPasteRequestWithResult:]):
(-[WKContentView _willPerformAction:sender:]):
(-[WKContentView _didPerformAction:sender:]):
(-[WKContentView handleKeyWebEvent:withCompletionHandler:]):
(allPasteboardItemOriginsMatchOrigin):
(-[WKContentView _requestDOMPasteAccessWithElementRect:originIdentifier:completionHandler:]):
(-[WKContentView _requestDOMPasteAccessWithElementRect:completionHandler:]): Deleted.
Bail early in the case where all items' pasteboard identifiers (read via custom pasteboard data) match. When
this happens, we only grant access for the current paste command, rather than granting access for the user
gesture token.
- UIProcess/mac/PageClientImplMac.h:
- UIProcess/win/PageClientImpl.cpp:
(WebKit::PageClientImpl::requestDOMPasteAccess):
- UIProcess/win/PageClientImpl.h:
- WebProcess/WebCoreSupport/WebEditorClient.cpp:
(WebKit::WebEditorClient::requestDOMPasteAccess):
- WebProcess/WebCoreSupport/WebEditorClient.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::requestDOMPasteAccess):
- WebProcess/WebPage/WebPage.h:
Source/WebKitLegacy/mac:
- WebCoreSupport/WebEditorClient.h:
Source/WebKitLegacy/win:
- WebCoreSupport/WebEditorClient.h:
LayoutTests:
Adjust several existing DOM paste tests to copy text from a child frame that has a different origin as the main
frame, such that we'll trigger the paste callout menu when performing a programmatic paste. Also add a new
layout test that copies and programmatically pastes within the same document, to verify that no paste callout is
displayed and the paste is allowed.
- editing/pasteboard/ios/dom-paste-confirmation-expected.txt:
- editing/pasteboard/ios/dom-paste-confirmation.html:
- editing/pasteboard/ios/dom-paste-consecutive-confirmations-expected.txt:
- editing/pasteboard/ios/dom-paste-consecutive-confirmations.html:
- editing/pasteboard/ios/dom-paste-rejection-expected.txt:
- editing/pasteboard/ios/dom-paste-rejection.html:
- editing/pasteboard/ios/dom-paste-requires-user-gesture-expected.txt:
- editing/pasteboard/ios/dom-paste-requires-user-gesture.html:
- editing/pasteboard/ios/dom-paste-same-origin-expected.txt: Copied from LayoutTests/editing/pasteboard/ios/dom-paste-confirmation-expected.txt.
- editing/pasteboard/ios/dom-paste-same-origin.html: Copied from LayoutTests/editing/pasteboard/ios/dom-paste-confirmation.html.
- 12:54 PM Changeset in webkit [242316] by
-
- 11 edits in trunk/Source
Fixed makeString(float) to do shortest-form serialization without first converting to double
https://bugs.webkit.org/show_bug.cgi?id=195142
Reviewed by Daniel Bates.
Source/WebCore:
- platform/graphics/Color.cpp: Removed unneeded include of DecimalNumber.h.
Source/WebKit:
- UIProcess/PerActivityStateCPUUsageSampler.cpp: Removed unneeded include of DecimalNumber.h.
Source/WTF:
- wtf/DecimalNumber.cpp: Removed unneeded includes.
- wtf/DecimalNumber.h: Removed unused constructors; over time we will be
deprecating DecimalNumber, so we should removed the unused parts. Also
marked the constructor explicit, removed types used only for arguments for
the constructors, and removed the sign, exponent, significand, and precision
member functions.
- wtf/JSONValues.cpp:
(WTF::JSONImpl::Value::writeJSON const): Updated for changes to DecimalNumber
switched from NumberToLStringBuffer to NumberToStringBuffer, and for use of
std::array instead of C arrays.
- wtf/dtoa.cpp: Removed unused dtoaRoundSF and dtoaRoundDP functions.
(WTF::dtoa): Updated to use std::array instead of C arrays.
(WTF::dtoaRoundSF): Removed.
(WTF::dtoaRoundDP): Removed.
(WTF::numberToString): Added an overload for float and updated to use std::array.
(WTF::formatStringTruncatingTrailingZerosIfNeeded): Updated to use std::array.
(WTF::numberToFixedPrecisionString): Ditto.
(WTF::numberToFixedWidthString): Ditto.
- wtf/dtoa.h: Changed arrays to be std::array instead of C arrays so the
array types will be checked. Removed dtoaRoundSF and dtoaRoundDP.
Added float overloads for numberToString, numberToFixedPrecisionString,
and numberToFixedWidthString. The only one of these that is called at this
time is numberToString, called by the floating point StringTypeAdapter in
StringConcatenateNummbers.h.
- wtf/text/StringConcatenateNumbers.h: Updated for std::array.
- 12:50 PM Changeset in webkit [242315] by
-
- 4 edits in trunk/Source/WebInspectorUI
Web Inspector: Sources: breakpoints should be disabled when an audit is running
https://bugs.webkit.org/show_bug.cgi?id=195105
<rdar://problem/48441373>
Reviewed by Joseph Pecoraro.
- UserInterface/Views/SourcesNavigationSidebarPanel.js:
(WI.SourcesNavigationSidebarPanel):
(WI.SourcesNavigationSidebarPanel.prototype.closed):
(WI.SourcesNavigationSidebarPanel.prototype._updateTemporarilyDisabledBreakpointsButtons): Added.
(WI.SourcesNavigationSidebarPanel.prototype._updateBreakpointsDisabledBanner):
(WI.SourcesNavigationSidebarPanel.prototype._handleTimelineCapturingWillStart):
(WI.SourcesNavigationSidebarPanel.prototype._handleTimelineCapturingStopped):
(WI.SourcesNavigationSidebarPanel.prototype._handleAuditManagerTestScheduled): Added.
(WI.SourcesNavigationSidebarPanel.prototype._handleAuditManagerTestCompleted): Added.
- UserInterface/Views/SourcesNavigationSidebarPanel.css:
(.sidebar > .panel.navigation.sources > .content > .warning-banner + .warning-banner): Added.
- UserInterface/Views/DebuggerSidebarPanel.js:
(WI.DebuggerSidebarPanel):
- 12:32 PM Changeset in webkit [242314] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Debugger: don't enable breakpoints when source location changes
https://bugs.webkit.org/show_bug.cgi?id=195081
<rdar://problem/48422701>
Reviewed by Joseph Pecoraro.
- UserInterface/Controllers/DebuggerManager.js:
(WI.DebuggerManager.prototype._breakpointDisplayLocationDidChange):
(WI.DebuggerManager.prototype._breakpointEditablePropertyDidChange):
- 11:15 AM Changeset in webkit [242313] by
-
- 5 edits3 adds in trunk
REGRESSION (r242132): Incorrect positioning with multiple position:fixed elements
https://bugs.webkit.org/show_bug.cgi?id=195246
Reviewed by Frederic Wang.
Source/WebCore:
r242132 introduced a bug where the management of 'cumulativeDelta' in ScrollingTree::notifyRelatedNodesRecursive
was incorrect. This value should propagate from ancestors to descendants, but not between siblings in the scrolling
tree, which it did, causing sibling position:fixed to behave incorrectly.
Test: scrollingcoordinator/mac/multiple-fixed.html
- page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::notifyRelatedNodesRecursive):
- page/scrolling/ScrollingTree.h:
LayoutTests:
Test that uses eventSender to scroll (and is thus macOS-only).
- platform/ios-wk2/TestExpectations:
- scrollingcoordinator/mac/multiple-fixed-expected.html: Added.
- scrollingcoordinator/mac/multiple-fixed.html: Added.
- 9:50 AM Changeset in webkit [242312] by
-
- 4 edits2 adds in trunk/Source/WebKit
[WPE] Public API headers are missing autocleanup definitions
https://bugs.webkit.org/show_bug.cgi?id=195211
Reviewed by Philippe Normand.
- PlatformWPE.cmake: List new API headers as installable.
- UIProcess/API/wpe/WebKitAutocleanups.h: Added. This is a copy of the header from the GTK
port, adapted to fit the WPE port.
- UIProcess/API/wpe/webkit.h: Add inclusion of WebKitAutocleanups.h
- WebProcess/InjectedBundle/API/wpe/WebKitWebExtensionAutocleanups.h: Added. Also adapted
from the equivalent header of the GTK port.
- WebProcess/InjectedBundle/API/wpe/webkit-web-extension.h: Add inclusion of
WebKitWebExtensionAutocleanups.h
- 9:33 AM Changeset in webkit [242311] by
-
- 4 edits in trunk/Source/WebCore
Improve some comments
https://bugs.webkit.org/show_bug.cgi?id=195243
Reviewed by Daniel Bates.
- accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper _addAccessibilityObject:toTextMarkerArray:]):
Fix a typo in a comment.
- dom/RadioButtonGroups.cpp: Fix a typo in a comment.
(WebCore::RadioButtonGroups::checkedButtonForGroup const): Use nullptr instead of 0.
- html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::~HTMLInputElement): Improved a comment, but sadly made
it a bit longer. Use nullptr instead of 0.
(WebCore::HTMLInputElement::didMoveToNewDocument): Added a comment.
- 8:28 AM Changeset in webkit [242310] by
-
- 3 edits in trunk/Source/WebKit
Remove unused WebPageProxy::m_navigationID
https://bugs.webkit.org/show_bug.cgi?id=195209
Reviewed by Darin Adler.
WebPageProxy::m_navigationID is never assigned to and is only used once by mistake in a
debug LOG(). It must be a refactoring mistake.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didCommitLoadForFrame):
- UIProcess/WebPageProxy.h:
Mar 1, 2019:
- 10:09 PM Changeset in webkit [242309] by
-
- 5 edits in trunk
[Datalist] fast/forms/datalist/datalist-child-validation.html crashes with a debug assertion in isValidFormControlElement()
https://bugs.webkit.org/show_bug.cgi?id=190620
<rdar://problem/19226679>
Reviewed by Ryosuke Niwa.
Source/WebCore:
Fixes and re-enables an existing layout test that is asserting on debug builds (and failing on release builds).
To understand why we hit this assertion, we first note several observations:
- The validity of a form control (
isValid()
) depends on the value ofwillValidate()
. - Both of these results are cached in member variables:
m_isValid
andm_willValidate
, respectively. -
willValidate()
changes the cached value ofm_willValidate
if necessary, butisValid()
uses the
cached value without update.
Now, consider the following scenario:
- Something changes in the DOM that changes the result of
willValidate()
. This can happen as a result of
several things:
- The form control changes readonly state
- The form control changes disabled state
- The form control is added to a datalist element
- The form control is removed from a datalist element
- Call
willValidate()
. - Call
isValid()
.
In scenarios (a) - (c), we ensure that cached form control validity (
m_isValid
) is updated alongside
m_willValidate
by invokingsetNeedsWillValidateCheck()
, such that the result ofisValid()
matches the
result ofm_isValid
in step (3). However, in the last scenario (d), we don't do this, which causes form
control validity to fall out of sync with the result ofisValid()
. To fix the bug, we update willValidate and
isValid when a form control is removed from an ancestor, only if one of its ancestors is a datalist element.
- html/HTMLFormControlElement.cpp:
(WebCore::HTMLFormControlElement::insertedIntoAncestor):
(WebCore::HTMLFormControlElement::removedFromAncestor):
Make a couple of minor tweaks:
- Currently, we always invalidate
m_dataListAncestorState
by resetting the state toUnknown
when the form control is removed from an ancestor or inserted. Instead, we only need to reset it when the form control already has an ancestor that is a datalist (in the case where it's being removed) or when the form control does not yet have an ancestor (in the case where it is being added). - If the form control was inside a datalist prior to removal, recompute its cached value of
m_willValidate
, as well as its cached validity (m_isValid
).
LayoutTests:
Re-enables a crashing layout test. See WebCore ChangeLog for more details.
- platform/ios/TestExpectations:
- platform/mac/TestExpectations:
- 9:45 PM Changeset in webkit [242308] by
-
- 29 edits in trunk
Finish removing String::format
https://bugs.webkit.org/show_bug.cgi?id=194893
Reviewed by Daniel Bates.
Source/JavaScriptCore:
- bytecode/CodeBlock.cpp:
(JSC::CodeBlock::nameForRegister): Use makeString instead of String::format,
using the new "pad" function.
Source/WebCore:
- dom/Document.cpp:
(WebCore::Document::lastModified const): Use makeString and pad.
- html/FTPDirectoryDocument.cpp:
(WebCore::processFileDateString): Ditto.
- mathml/MathMLElement.cpp:
(WebCore::convertToPercentageIfNeeded): Use makeString and FormattedNumber.
- page/cocoa/ResourceUsageOverlayCocoa.mm:
(WebCore::ResourceUsageOverlay::platformDraw): Use makeString and pad.
- page/linux/ResourceUsageOverlayLinux.cpp:
(WebCore::cpuUsageString): Use makeString, FormattedNumber, and pad.
(WebCore::gcTimerString): Use String::number.
- platform/DateComponents.cpp:
(WebCore::DateComponents::toStringForTime const): Use makeString and pad.
(WebCore::DateComponents::toString const): Ditto.
- platform/LocalizedStrings.cpp: Removed comment that mentioned String::format,
and that was also inaccurate.
- platform/audio/HRTFElevation.cpp:
(WebCore::HRTFElevation::calculateKernelsForAzimuthElevation):
Use makeString and pad.
- platform/mock/MockRealtimeVideoSource.cpp:
(WebCore::MockRealtimeVideoSource::drawText): Ditto.
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::logLayerInfo): Ditto.
- rendering/RenderTheme.cpp:
(WebCore::RenderTheme::formatMediaControlsTime const): Ditto.
Source/WebKit:
- UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm:
(WebKit::LocalAuthenticator::getAssertion): Use makeString, attempting to fix
a problem where we passed an NSData * to format with a "%s"."
Source/WebKitLegacy/win:
- FullscreenVideoController.cpp:
(timeToString): Use makeString and pad.
Source/WTF:
- wtf/Assertions.cpp:
(WTF::createWithFormatAndArguments): Moved this here from WTFString.cpp.
(WTFLog): Use WTF::createWithFormatAndArguments instead of String::format.
- wtf/HexNumber.h: Deleted unneeded toString function.
- wtf/text/StringConcatenate.h: Got rid of unneeded forward declaration of
StringTypeAdapter, since that's now in Forward.h. Tweaked formatting of templates
a bit. Use function templates for writeTo functions rather than having two of each.
Removed unused toString functions. Optimized case where we use have a UChar* and
a length of zero to not force the result to be 16-bit. Also gets rid of a small
NO_RETURN_DUE_TO_CRASH mess that we don't need. Refactored constructors to use some
static member helper functions to compute string lengths. Added the pad function
and the PaddingSpecification struct template, so we can add padding to anything
we can turn into a string. Got rid of the special case overload for single
arguments, since it only worked for things that the String constructor can handle.
Instead we will now use StringTypeAdapter, which works for more types. Possibly
less optimal for some special cases, which we could specialize for later if we like.
- wtf/text/StringConcatenateNumbers.h: Ditto.
- wtf/text/StringOperators.h: Ditto.
- wtf/text/StringView.h: Ditto.
- wtf/text/WTFString.cpp:
(WTF::createWithFormatAndArguments): Deleted.
(WTF::String::format): Deleted.
- wtf/text/WTFString.h: Deleted declaration of String::format.
- 7:44 PM Changeset in webkit [242307] by
-
- 3 edits in trunk/Source/WebCore
Do not attempt to set WAL Journal mode on a readonly SQLite database
https://bugs.webkit.org/show_bug.cgi?id=195237
Reviewed by Simon Fraser.
This avoids logging errors when opening the database.
- platform/sql/SQLiteDatabase.cpp:
(WebCore::SQLiteDatabase::open):
(WebCore::SQLiteDatabase::useWALJournalMode):
- platform/sql/SQLiteDatabase.h:
- 7:27 PM Changeset in webkit [242306] by
-
- 6 edits1 move14 adds in trunk/Source
[PlayStation] Upstream playstation's remote inspector server
https://bugs.webkit.org/show_bug.cgi?id=193806
Reviewed by Joseph Pecoraro.
Upstreaming PlayStation's Remote Inspector implementation.
It is using a JSON RPC protocol over TCP sockets.
This inspector implementation is planned to also support running on a WinCairo Client and Server.
- PlatformPlayStation.cmake:
- SourcesGTK.txt:
- SourcesWPE.txt:
- inspector/remote/RemoteConnectionToTarget.cpp: Renamed from Source/JavaScriptCore/inspector/remote/glib/RemoteConnectionToTargetGlib.cpp.
- inspector/remote/RemoteInspector.h:
- inspector/remote/playstation/RemoteInspectorConnectionClient.h: Added.
- inspector/remote/playstation/RemoteInspectorConnectionClientPlayStation.cpp: Added.
- inspector/remote/playstation/RemoteInspectorMessageParser.h: Added.
- inspector/remote/playstation/RemoteInspectorMessageParserPlayStation.cpp: Added.
- inspector/remote/playstation/RemoteInspectorPlayStation.cpp: Added.
- inspector/remote/playstation/RemoteInspectorServer.h: Added.
- inspector/remote/playstation/RemoteInspectorServerPlayStation.cpp: Added.
- inspector/remote/playstation/RemoteInspectorSocket.h: Added.
- inspector/remote/playstation/RemoteInspectorSocketClient.h: Added.
- inspector/remote/playstation/RemoteInspectorSocketClientPlayStation.cpp: Added.
- inspector/remote/playstation/RemoteInspectorSocketPlayStation.cpp: Added.
- inspector/remote/playstation/RemoteInspectorSocketServer.h: Added.
- inspector/remote/playstation/RemoteInspectorSocketServerPlayStation.cpp: Added.
- 7:12 PM Changeset in webkit [242305] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed Windows build fix after r242302.
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::ensureNetworkProcess):
- 6:41 PM Changeset in webkit [242304] by
-
- 3 edits in trunk/Source/WebKit
NetworkDataTask redirection should not keep alive its NetworkSession
https://bugs.webkit.org/show_bug.cgi?id=194927
Reviewed by Darin Adler.
This should fix rdar://problem/47580502
- NetworkProcess/NetworkDataTask.h:
- NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:
(WebKit::NetworkDataTaskCocoa::willPerformHTTPRedirection):
- 6:29 PM Changeset in webkit [242303] by
-
- 15 edits in trunk/Source
Revert r241223, r241235, and r241287
https://bugs.webkit.org/show_bug.cgi?id=194427
<rdar://48045861>
Source/WebKit:
This caused crashes, and feature design has evolved away from needing the daemon in this form.
- NetworkProcess/EntryPoint/Cocoa/Daemon/DaemonEntryPoint.mm:
(WebKit::DaemonMain):
- Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceEntryPoint.h:
- Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm:
(WebKit::XPCServiceEventHandler):
(WebKit::XPCServiceMain):
(WebKit::XPCEventHandler): Deleted.
(WebKit::XPCInitializationHandler): Deleted.
- UIProcess/API/APIProcessPoolConfiguration.h:
- UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h:
- UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm:
(-[_WKProcessPoolConfiguration usesNetworkingDaemon]): Deleted.
(-[_WKProcessPoolConfiguration setUsesNetworkingDaemon:]): Deleted.
- UIProcess/AuxiliaryProcessProxy.cpp:
(WebKit::AuxiliaryProcessProxy::getLaunchOptions):
- UIProcess/Launcher/ProcessLauncher.h:
- UIProcess/Launcher/mac/ProcessLauncherMac.mm:
(WebKit::serviceName):
(WebKit::ProcessLauncher::launchProcess):
- UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::getLaunchOptions):
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::usesNetworkingDaemon const): Deleted.
- UIProcess/WebProcessPool.h:
Source/WTF:
- wtf/spi/darwin/XPCSPI.h:
- 6:27 PM Changeset in webkit [242302] by
-
- 10 edits in trunk
Add setters on WKWebsiteDataStore for sourceApplicationBundleIdentifier and sourceApplicationSecondaryIdentifier
https://bugs.webkit.org/show_bug.cgi?id=195229
<rdar://problem/48520362>
Reviewed by Chris Dumez.
Source/WebKit:
Just like _setBoundInterfaceIdentifier, we need a way to set these properties after instantiation of a WKWebsiteDataStore,
but we need to make sure we don't set it after the parameters have been copied to the NetworkProcess.
Functionality verified by manual testing. See radar.
Added an API test that verifies the setter restrictions work as expected.
- UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
(-[WKWebsiteDataStore _sourceApplicationBundleIdentifier]):
(-[WKWebsiteDataStore _setSourceApplicationBundleIdentifier:]):
(-[WKWebsiteDataStore _sourceApplicationSecondaryIdentifier]):
(-[WKWebsiteDataStore _setSourceApplicationSecondaryIdentifier:]):
- UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:
- UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm:
(WebKit::toPKPaymentRequest):
- UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
(WebKit::WebsiteDataStore::parameters):
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::WebsiteDataStore):
(WebKit::WebsiteDataStore::setSourceApplicationSecondaryIdentifier):
(WebKit::WebsiteDataStore::setSourceApplicationBundleIdentifier):
- UIProcess/WebsiteData/WebsiteDataStore.h:
(WebKit::WebsiteDataStore::sourceApplicationBundleIdentifier):
(WebKit::WebsiteDataStore::sourceApplicationSecondaryIdentifier):
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
(TEST):
- 5:33 PM Changeset in webkit [242301] by
-
- 5 edits in trunk/Source/JavaScriptCore
Create SPI to crash if a JSC VM is created
https://bugs.webkit.org/show_bug.cgi?id=195231
<rdar://problem/47717990>
Reviewed by Mark Lam.
- API/JSVirtualMachine.mm:
(+[JSVirtualMachine setCrashOnVMCreation:]):
- API/JSVirtualMachinePrivate.h:
- runtime/VM.cpp:
(JSC::VM::VM):
(JSC::VM::setCrashOnVMCreation):
- runtime/VM.h:
- 5:18 PM Changeset in webkit [242300] by
-
- 8 edits2 adds in trunk/Source/WebInspectorUI
Web Inspector: CPU Usage - Energy Impact Section
https://bugs.webkit.org/show_bug.cgi?id=195151
Reviewed by Devin Rousso.
- Localizations/en.lproj/localizedStrings.js:
- UserInterface/Main.html:
New strings and resources.
- UserInterface/Views/CPUTimelineView.css:
(.timeline-view.cpu > .content .subtitle > .info):
(@media (prefers-color-scheme: dark)):
(.energy-info-popover-content):
(.timeline-view.cpu > .content > .overview > .divider):
(body[dir=ltr] .timeline-view.cpu > .content > .overview > .divider):
(body[dir=rtl] .timeline-view.cpu > .content > .overview > .divider):
(.timeline-view.cpu :matches(.area-chart, .stacked-area-chart) svg > path):
(.timeline-view.cpu .gauge-chart:not(.empty) > svg > path.low):
(.timeline-view.cpu .gauge-chart:not(.empty) > svg > path.medium):
(.timeline-view.cpu .gauge-chart:not(.empty) > svg > path.high):
(.timeline-view.cpu .gauge-chart:not(.empty) > svg > polygon.needle):
(.timeline-view.cpu .energy):
(.timeline-view.cpu .energy .energy-impact):
(.timeline-view.cpu .energy .energy-impact.low):
(.timeline-view.cpu .energy .energy-impact.medium):
(.timeline-view.cpu .energy .energy-impact.high):
(.timeline-view.cpu .energy .energy-impact-number):
Styling the chart and text for the different energy impact levels.
- UserInterface/Views/CPUTimelineView.js:
(WI.CPUTimelineView.prototype.get lowEnergyValue):
(WI.CPUTimelineView.prototype.get highEnergyValue):
(WI.CPUTimelineView.prototype.initialLayout):
(WI.CPUTimelineView.prototype.layout):
(WI.CPUTimelineView.prototype._layoutEnergyChart.mapWithBias):
(WI.CPUTimelineView.prototype._layoutEnergyChart.valuesForGauge):
(WI.CPUTimelineView.prototype._layoutEnergyChart):
(WI.CPUTimelineView.prototype._clearEnergyImpactText):
New gauge chart and associated popover.
We do a bit of biasing of the data for each of the sections
in the gauge chart. Each section biases toward the cap of the
section so that:
- we encourage lower power usage (sub 3%)
- the gauge needle quickly moves past the low value of a range
- UserInterface/Views/GaugeChart.css: Added.
(.gauge-chart):
(body[dir=rtl] .gauge-chart):
(.gauge-chart > svg > path,):
(.gauge-chart > svg > polygon.needle):
(.gauge-chart.empty > svg > polygon.needle):
(@media (prefers-color-scheme: dark)):
- UserInterface/Views/GaugeChart.js: Added.
(WI.GaugeChart.prototype.get size):
(WI.GaugeChart.prototype.get segments):
(WI.GaugeChart.prototype.get value):
(WI.GaugeChart.prototype.set value):
(WI.GaugeChart.prototype.clear):
(WI.GaugeChart.prototype.initialLayout):
(WI.GaugeChart.prototype.layout):
(WI.GaugeChart.prototype._validateSegments):
(WI.GaugeChart.prototype._createSegmentPathData):
GaugeChart with variable number of sections and a
current value needle. It has a bit of customization
when drawing the arc at the start of each segment.
- UserInterface/Views/Variables.css:
(:root):
(@media (prefers-color-scheme: dark)):
New CPU colors for the different energy impact levels.
- 5:05 PM Changeset in webkit [242299] by
-
- 2 edits in trunk/Source/JavaScriptCore
[JSC] Fix FTL build on ARM32_64 by adding stubs for JSRopeString::offsetOfXXX
https://bugs.webkit.org/show_bug.cgi?id=195235
Reviewed by Saam Barati.
This is a workaround until https://bugs.webkit.org/show_bug.cgi?id=195234 is done.
- runtime/JSString.h:
- 5:04 PM Changeset in webkit [242298] by
-
- 1 copy in tags/Safari-607.1.40.0.3
Tag Safari-607.1.40.0.3.
- 4:50 PM Changeset in webkit [242297] by
-
- 4 edits in trunk/Source
[iOS] Turn mouse event simulation on by default
https://bugs.webkit.org/show_bug.cgi?id=195218
<rdar://problem/48516794>
Patch by Antoine Quint <Antoine Quint> on 2019-03-01
Reviewed by Dean Jackson.
Source/WebCore:
- page/RuntimeEnabledFeatures.h:
Source/WebKit:
- Shared/WebPreferences.yaml:
- 4:37 PM Changeset in webkit [242296] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Data grid border colors don't match accent colors
https://bugs.webkit.org/show_bug.cgi?id=195232
Reviewed by Matt Baker.
- UserInterface/Views/DataGrid.css:
(.data-grid:focus tr.selected td:not(:last-child)):
(body[dir=ltr] .data-grid:focus tr.selected td:not(:last-child)):
(body[dir=rtl] .data-grid:focus tr.selected td:not(:last-child)):
- 4:30 PM Changeset in webkit [242295] by
-
- 2 edits in trunk/Source/WebCore
Disable NetworkStateNotifier::singleton()'s isMainThread() assertion when the WebThread is enabled
https://bugs.webkit.org/show_bug.cgi?id=195230
<rdar://problem/47925359>
Reviewed by Ryosuke Niwa.
Disable NetworkStateNotifier::singleton()'s isMainThread() assertion when the WebThread is enabled
to address crashes on iOS WK1.
- platform/network/NetworkStateNotifier.cpp:
(WebCore::shouldSuppressThreadSafetyCheck):
(WebCore::NetworkStateNotifier::singleton):
- 4:23 PM Changeset in webkit [242294] by
-
- 4 edits in trunk
Add a system trace scope for event region building
https://bugs.webkit.org/show_bug.cgi?id=195226
Reviewed by Jon Lee.
This trace scope measures the time spend converting element rects into Region objects,
which can be large on some pages.
The value for "Display Refresh Dispatch to main thread" was wrong and I fixed it.
Source/WTF:
- wtf/SystemTracing.h:
Tools:
- Tracing/SystemTracePoints.plist:
- 4:23 PM Changeset in webkit [242293] by
-
- 2 edits in trunk/Source/WebCore
Show mouse event regions in the overlay
https://bugs.webkit.org/show_bug.cgi?id=195227
Reviewed by Tim Horton.
Enhance event region overlays to show more kinds of events.
- page/DebugPageOverlays.cpp:
(WebCore::touchEventRegionColors):
(WebCore::NonFastScrollableRegionOverlay::drawRect):
- 3:30 PM Changeset in webkit [242292] by
-
- 8 edits in trunk
EnvironmentUtilities::stripValuesEndingWithString isn't thread-safe
https://bugs.webkit.org/show_bug.cgi?id=194612
Reviewed by Alex Christensen.
Source/WebKit:
This API test really shouldn't be verifying that the actual environment was successfully modified.
At its core, stripValuesEndingWithString is really just split-filter-join. By replacing it with a pair of
simple functions -- one for string processing, one for environment processing -- the API test only needs to
worry about the former.
- Platform/unix/EnvironmentUtilities.cpp:
(WebKit::EnvironmentUtilities::stripEntriesEndingWith):
(WebKit::EnvironmentUtilities::removeValuesEndingWith):
(WebKit::EnvironmentUtilities::stripValuesEndingWithString): Deleted.
- Platform/unix/EnvironmentUtilities.h:
Replace old function with a pair of simpler ones.
- NetworkProcess/EntryPoint/Cocoa/XPCService/NetworkServiceEntryPoint.mm:
(NetworkServiceInitializer):
- PluginProcess/EntryPoint/Cocoa/XPCService/PluginServiceEntryPoint.mm:
(PluginServiceInitializer):
- WebProcess/EntryPoint/Cocoa/XPCService/WebContentServiceEntryPoint.mm:
(WebContentServiceInitializer):
Update function name.
Tools:
- TestWebKitAPI/Tests/WebKit/EnvironmentUtilitiesTest.cpp:
Just test the new string-processing function and don't touch the actual environment.
(Test cases are all as before, but based on operator== instead of strcmp.)
- 3:09 PM Changeset in webkit [242291] by
-
- 7 edits in trunk/Tools
[ews-app] Update primary keys for handling multiple Buildbot instances
https://bugs.webkit.org/show_bug.cgi?id=195120
Reviewed by Stephanie Lewis.
Use a new primary key uid for build and step tables. Previous primary keys build_id and step_id
were not enough to handle multiple buildbot instances. This new primary key uid would be generated
by a combination of buildbot_instance_id and current primary key. e.g.: buildbot_instance_id + build_id
- BuildSlaveSupport/ews-app/ews/models/build.py: Added new primary key uid.
- BuildSlaveSupport/ews-app/ews/models/step.py: Ditto.
- BuildSlaveSupport/ews-app/ews/models/buildbotinstance.py: Generate uid and instance_id.
- BuildSlaveSupport/ews-app/ews/views/results.py: Updated to receive hostname in events.
- BuildSlaveSupport/ews-build/events.py: Send hostname along-with events.
- BuildSlaveSupport/ews-build/master.cfg: Ditto.
- 2:48 PM Changeset in webkit [242290] by
-
- 5 edits2 adds in trunk
[ContentChangeObserver] Check for pending style recalcs at the end of each timer run.
https://bugs.webkit.org/show_bug.cgi?id=195220
<rdar://problem/48518979>
Reviewed by Simon Fraser.
Source/WebCore:
didScheduleStyleRecalc callback was introduced to see if a style recalc is scheduled while firing the DOM timer. However it does not handle the case
when in addition to this style recalc scheduling, something later (though during the same timer firing) triggers a sync style recalc.
Let's just check if we've got a pending style recalc when the DOM timer comes back.
Test: fast/events/touch/ios/style-recalc-schedule-and-force-relalc.html
- dom/Document.cpp:
(WebCore::Document::scheduleStyleRecalc):
- page/ios/ContentChangeObserver.cpp:
(WebCore::hasPendingStyleRecalc):
(WebCore::ContentChangeObserver::startObservingDOMTimerExecute):
(WebCore::ContentChangeObserver::stopObservingDOMTimerExecute):
(WebCore::ContentChangeObserver::startObservingContentChanges):
(WebCore::ContentChangeObserver::didScheduleStyleRecalc): Deleted.
- page/ios/ContentChangeObserver.h:
(WebCore::ContentChangeObserver::startObservingStyleRecalcScheduling): Deleted.
(WebCore::ContentChangeObserver::stopObservingStyleRecalcScheduling): Deleted.
(WebCore::ContentChangeObserver::isObservingStyleRecalcScheduling const): Deleted.
LayoutTests:
- fast/events/touch/ios/style-recalc-schedule-and-force-relalc-expected.txt: Added.
- fast/events/touch/ios/style-recalc-schedule-and-force-relalc.html: Added.
- 2:18 PM Changeset in webkit [242289] by
-
- 5 edits in trunk/Source/WebKit
Unify WebsiteDataStore::defaultDataStoreConfiguration across ports
https://bugs.webkit.org/show_bug.cgi?id=194844
Reviewed by Youenn Fablet.
Move the Cocoa implementation into APIWebsiteDataStore.cpp as the source of truth and
append configuration for Glib's DeviceIdHashSalts storage directory. This also fixes
a crash in Windows when running a Service Worker.
- UIProcess/API/APIWebsiteDataStore.cpp:
(API::WebsiteDataStore::defaultDeviceIdHashSaltsStorageDirectory):
(API::WebsiteDataStore::defaultDataStoreConfiguration):
- UIProcess/API/Cocoa/APIWebsiteDataStoreCocoa.mm:
(API::WebsiteDataStore::defaultDeviceIdHashSaltsStorageDirectory): Deleted.
(API::WebsiteDataStore::defaultDataStoreConfiguration): Deleted.
- UIProcess/API/glib/APIWebsiteDataStoreGLib.cpp:
(API::WebsiteDataStore::defaultDataStoreConfiguration): Deleted.
- UIProcess/API/win/APIWebsiteDataStoreWin.cpp:
(API::WebsiteDataStore::defaultDeviceIdHashSaltsStorageDirectory): Deleted.
(API::WebsiteDataStore::defaultDataStoreConfiguration): Deleted.
- 2:11 PM Changeset in webkit [242288] by
-
- 20 edits10 adds in trunk
Resource Load Statistics: Further restrict client-side cookie persistence after cross-site navigations with link decoration
https://bugs.webkit.org/show_bug.cgi?id=195196
<rdar://problem/48006419>
Reviewed by Brent Fulgham.
Source/WebCore:
Tests: http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-with-link-decoration-same-site.html
http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-with-link-fragment-from-prevalent-resource.html
http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-with-link-query-and-fragment-from-prevalent-resource.html
http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-with-link-query-from-prevalent-resource.html
http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-without-link-decoration-from-prevalent-resource.html
Trackers abuse link query parameters to transport user identifiers cross-site.
This patch detects such navigations and applies further restrictions to
client-site cookies on the destination page.
- platform/network/NetworkStorageSession.cpp:
(WebCore::NetworkStorageSession::setAgeCapForClientSideCookies):
Now sets the regular 7-day cap and a reduced 1-day cap.
(WebCore::NetworkStorageSession::clearPageSpecificDataForResourceLoadStatistics):
Renamed NetworkStorageSession::removeStorageAccessForAllFramesOnPage() to
NetworkStorageSession::clearPageSpecificDataForResourceLoadStatistics since
it now clears out two types of page-specific data.
(WebCore::NetworkStorageSession::committedCrossSiteLoadWithLinkDecoration):
This function receives a cross-site navigation and checks if the originating
site is a prevalent resource. If so, it marks the page or stricter cookie
rules.
(WebCore::NetworkStorageSession::resetCrossSiteLoadsWithLinkDecorationForTesting):
Test infrastructure. This sets a state that overrides the regular per-page
clear of data. The reason is that the double clear was racy and caused test
failures.
(WebCore::NetworkStorageSession::clientSideCookieCap const):
New function that returns the current cookie lifetime cap.
(WebCore::NetworkStorageSession::removeStorageAccessForAllFramesOnPage): Deleted.
Renamed to NetworkStorageSession::clearPageSpecificDataForResourceLoadStatistics().
- platform/network/NetworkStorageSession.h:
- platform/network/cocoa/NetworkStorageSessionCocoa.mm:
(WebCore::NetworkStorageSession::setCookiesFromDOM const):
Now calls NetworkStorageSession::clientSideCookieCap() to set the cap.
Source/WebKit:
Trackers abuse link query parameters to transport user identifiers cross-site.
This patch detects such navigations and applies further restrictions to
client-site cookies on the destination page.
- NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::clearPageSpecificDataForResourceLoadStatistics):
(WebKit::NetworkConnectionToWebProcess::removeStorageAccessForAllFramesOnPage): Deleted.
Renamed NetworkConnectionToWebProcess::clearPageSpecificDataForResourceLoadStatistics().
- NetworkProcess/NetworkConnectionToWebProcess.h:
- NetworkProcess/NetworkConnectionToWebProcess.messages.in:
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::committedCrossSiteLoadWithLinkDecoration):
Reporting IPC message when a link decorated cross-site navigation happens.
(WebKit::NetworkProcess::resetCrossSiteLoadsWithLinkDecorationForTesting):
- NetworkProcess/NetworkProcess.h:
- NetworkProcess/NetworkProcess.messages.in:
- UIProcess/API/C/WKWebsiteDataStoreRef.cpp:
(WKWebsiteDataStoreStatisticsResetToConsistentState):
Added clearing of the new state between test runs.
- UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::resetCrossSiteLoadsWithLinkDecorationForTesting):
Test infrastructure.
- UIProcess/Network/NetworkProcessProxy.h:
- UIProcess/WebPageProxy.cpp:
(WebKit::isNonUniqueNavigationWithLinkDecoration):
Convenience function.
(WebKit::WebPageProxy::didCommitLoadForFrame):
This function now reports to the network process when a link decorated
cross-site navigation happens.
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::resetCrossSiteLoadsWithLinkDecorationForTesting):
Test infrastructure.
- UIProcess/WebsiteData/WebsiteDataStore.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::close):
Name change of function called.
LayoutTests:
- http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-with-link-decoration-same-site-expected.txt: Added.
- http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-with-link-decoration-same-site.html: Added.
- http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-with-link-fragment-from-prevalent-resource-expected.txt: Added.
- http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-with-link-fragment-from-prevalent-resource.html: Added.
- http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-with-link-query-and-fragment-from-prevalent-resource-expected.txt: Added.
- http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-with-link-query-and-fragment-from-prevalent-resource.html: Added.
- http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-with-link-query-from-prevalent-resource-expected.txt: Added.
- http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-with-link-query-from-prevalent-resource.html: Added.
- http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-without-link-decoration-from-prevalent-resource-expected.txt: Added.
- http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-without-link-decoration-from-prevalent-resource.html: Added.
- http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js.html:
Now clears cookies after the test.
- 1:58 PM Changeset in webkit [242287] by
-
- 5 edits1 delete in trunk/Source
Remove unused code in WebKitLegacy
https://bugs.webkit.org/show_bug.cgi?id=189614
Reviewed by Simon Fraser.
Source/WebKit:
- mac/MigrateHeadersFromWebKitLegacy.make:
Source/WebKitLegacy:
- WebKitLegacy.xcodeproj/project.pbxproj:
Source/WebKitLegacy/mac:
- Carbon/CarbonUtils.h: Removed.
- Carbon/CarbonUtils.m: Removed.
- Carbon/CarbonWindowAdapter.h: Removed.
- Carbon/CarbonWindowAdapter.mm: Removed.
- Carbon/CarbonWindowContentView.h: Removed.
- Carbon/CarbonWindowContentView.m: Removed.
- Carbon/CarbonWindowFrame.h: Removed.
- Carbon/CarbonWindowFrame.m: Removed.
- Carbon/HIViewAdapter.h: Removed.
- Carbon/HIViewAdapter.m: Removed.
- Carbon/HIWebView.h: Removed.
- Carbon/HIWebView.mm: Removed.
- Configurations/WebKitLegacy.xcconfig:
- WebKit.mac.exp:
- 1:46 PM Changeset in webkit [242286] by
-
- 4 edits in trunk/Source/JavaScriptCore
[JSC] Use runtime calls for DFG MakeRope if !CPU(ADDRESS64)
https://bugs.webkit.org/show_bug.cgi?id=195221
Reviewed by Mark Lam.
ARM32_64 builds DFG 64bit, but the size of address is 32bit. Make DFG MakeRope a runtime call not only for DFG 32_64,
but also DFG 64 with !CPU(ADDRESS64). This patch unifies compileMakeRope again, and use a runtime call for !CPU(ADDRESS64).
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileMakeRope):
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compileMakeRope): Deleted.
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compileMakeRope): Deleted.
- 1:37 PM Changeset in webkit [242285] by
-
- 5 edits in trunk/Source/WebKit
Modernize WebKit::AttributedString a little bit
https://bugs.webkit.org/show_bug.cgi?id=195200
Reviewed by Wenson Hsieh.
- Shared/mac/AttributedString.h:
(WebKit::AttributedString::AttributedString):
(WebKit::AttributedString::operator NSAttributedString * const):
- Shared/mac/AttributedString.mm:
(IPC::ArgumentCoder<WebKit::AttributedString>::encode):
(IPC::ArgumentCoder<WebKit::AttributedString>::decode):
(WebKit::AttributedString::encode const): Deleted.
(WebKit::AttributedString::decode): Deleted.
- UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::attributedSubstringForProposedRange):
- WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::attributedSubstringForCharacterRangeAsync):
Modern coders, and a constructor and cast operator to/from NSAttributedString.
Also adopt those in a few places just for fun.
- 1:32 PM Changeset in webkit [242284] by
-
- 9 edits in trunk
Adjust XMLHttpRequest Content-Type handling
https://bugs.webkit.org/show_bug.cgi?id=184645
Patch by Rob Buis <rbuis@igalia.com> on 2019-03-01
Reviewed by Youenn Fablet.
LayoutTests/imported/w3c:
Sync test and update test expectation (all PASSes).
- web-platform-tests/xhr/send-content-type-charset-expected.txt:
- web-platform-tests/xhr/send-content-type-charset.htm:
Source/WebCore:
Implement steps 4.4.1.2 and 4.4.1.3 of send() [1].
Test: web-platform-tests/xhr/send-content-type-charset.htm
[1] https://xhr.spec.whatwg.org/#dom-xmlhttprequest-send
- platform/network/ParsedContentType.cpp:
(WebCore::ParsedContentType::setCharset):
- platform/network/ParsedContentType.h:
- xml/XMLHttpRequest.cpp:
(WebCore::replaceCharsetInMediaTypeIfNeeded):
(WebCore::XMLHttpRequest::send):
(WebCore::replaceCharsetInMediaType): Deleted.
LayoutTests:
Fix 2 subtest expectations.
- http/tests/xmlhttprequest/request-encoding2.html:
- 1:31 PM Changeset in webkit [242283] by
-
- 2 edits in trunk/Source/WebCore
Update originsMatch to handle the case of file origins which enforce file path separation
https://bugs.webkit.org/show_bug.cgi?id=195216
Reviewed by Brady Eidson.
Covered by the assertion and existing tests like fast/xmlhttprequest/xmlhttprequest-no-file-access.html.
Make sure originsMatch returns true if either compared origins are the same object
or they have the same file path separation behavior.
- page/SecurityOrigin.cpp:
(WebCore::areOriginsMatching):
(WebCore::originsMatch):
- 1:00 PM Changeset in webkit [242282] by
-
- 2 edits in trunk/LayoutTests
Continued gardening of storage/indexeddb/ crashes after r242189
https://bugs.webkit.org/show_bug.cgi?id=195210
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 12:36 PM Changeset in webkit [242281] by
-
- 8 edits in trunk/Source
Serialize IndexedDB::ObjectStoreOverwriteMode as an enum
https://bugs.webkit.org/show_bug.cgi?id=195213
Reviewed by Alex Christensen.
Source/WebCore:
Add traits to enable enum IPC encoding.
No change of behavior.
- Modules/indexeddb/IndexedDB.h:
Source/WebKit:
Make use of enum trait to automatically check for correct enum value when receiving a putOrAdd message.
- NetworkProcess/IndexedDB/WebIDBConnectionToClient.cpp:
(WebKit::WebIDBConnectionToClient::putOrAdd):
- NetworkProcess/IndexedDB/WebIDBConnectionToClient.h:
- NetworkProcess/IndexedDB/WebIDBConnectionToClient.messages.in:
- Scripts/webkit/messages.py:
- WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.cpp:
(WebKit::WebIDBConnectionToServer::putOrAdd):
- 12:18 PM Changeset in webkit [242280] by
-
- 2 edits in trunk/JSTests
Unskip test read-dead-bytecode-locals-in-must-have-handle-values2.js on ARM/MIPS
https://bugs.webkit.org/show_bug.cgi?id=195207
Unreviewed. After test runtime was reduced in r242213, test can be
run again on ARM/MIPS.
- stress/read-dead-bytecode-locals-in-must-handle-values2.js:
- 11:58 AM Changeset in webkit [242279] by
-
- 17 edits in trunk
[WinCairo] Enable service worker
https://bugs.webkit.org/show_bug.cgi?id=188318
Reviewed by Youenn Fablet.
.:
- Source/cmake/OptionsWin.cmake:
Source/WebCore:
- WebCorePrefix.h:
- testing/ServiceWorkerInternals.h:
- workers/service/context/SWContextManager.cpp:
(WebCore::SWContextManager::serviceWorkerFailedToTerminate):
- workers/service/context/SWContextManager.h:
Source/WebKit:
- WebProcess/Storage/WebSWContextManagerConnection.cpp:
(WebKit::WebSWContextManagerConnection::terminateProcess):
- WebProcess/Storage/WebSWContextManagerConnection.h:
- config.h:
Tools:
- DumpRenderTree/DumpRenderTreePrefix.h:
- TestWebKitAPI/PlatformWin.cmake:
- TestWebKitAPI/win/TestWebKitAPIPrefix.h:
- WebKitTestRunner/InjectedBundle/win/TestRunnerInjectedBundlePrefix.h:
- WebKitTestRunner/WebKitTestRunnerPrefix.h:
- 11:55 AM Changeset in webkit [242278] by
-
- 7 edits in trunk/Source/WebCore
Add a quirk for bostongloble.com and latimes.com
https://bugs.webkit.org/show_bug.cgi?id=195155
Reviewed by Geoffrey Garen.
Covered by manual testing.
- Modules/webdatabase/DOMWindowWebDatabase.idl:
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateRuntimeEnableConditionalString):
- bindings/scripts/IDLAttributes.json:
- bindings/scripts/preprocess-idls.pl:
(GenerateConstructorAttributes):
- page/Quirks.cpp:
(WebCore::Quirks::hasWebSQLSupportQuirk const):
- page/Quirks.h:
- 11:33 AM Changeset in webkit [242277] by
-
- 2 edits in trunk/Source/WebKit
Flaky API Test TestWebKitAPI.ProcessSwap.LoadUnload
https://bugs.webkit.org/show_bug.cgi?id=195110
Reviewed by Ryosuke Niwa.
The test was attempting to disable PageCache via view preferences instead of using the
process pool configuration flag. This would fail to disable PageCache because the
usesPageCache preference would not prevent the creation of SuspendedPageProxy objects.
As a result, the firing on the unload event would get delayed until the SuspendedPageProxy
objects would get destroyed, which would lead to flakiness.
This patch updates WebPageProxy::suspendCurrentPageIfPossible() to not create suspended
pages proxies when the usesPageCache preference is set to false.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::suspendCurrentPageIfPossible):
- 11:24 AM Changeset in webkit [242276] by
-
- 3 edits1 add in trunk
DFG: Loop-invariant code motion (LICM) should not hoist dead code
https://bugs.webkit.org/show_bug.cgi?id=194945
<rdar://problem/48311657>
Reviewed by Saam Barati.
- dfg/DFGLICMPhase.cpp:
(JSC::DFG::LICMPhase::run):
- 11:23 AM Changeset in webkit [242275] by
-
- 3 edits in trunk/Source/WebCore
[ContentChangeObserver] Rename members and move implementation to header.
https://bugs.webkit.org/show_bug.cgi?id=195198
<rdar://problem/48499967>
Reviewed by Simon Fraser.
- page/ios/ContentChangeObserver.cpp:
(WebCore::ContentChangeObserver::startObservingDOMTimerExecute):
(WebCore::ContentChangeObserver::stopObservingDOMTimerExecute):
(WebCore::ContentChangeObserver::startObservingStyleRecalc):
(WebCore::ContentChangeObserver::stopObservingStyleRecalc):
(WebCore::ContentChangeObserver::startObservingContentChanges):
(WebCore::ContentChangeObserver::stopObservingContentChanges):
(WebCore::ContentChangeObserver::StyleRecalcScope::StyleRecalcScope):
(WebCore::ContentChangeObserver::StyleRecalcScope::~StyleRecalcScope):
(WebCore::ContentChangeObserver::startObservingStyleResolve): Deleted.
(WebCore::ContentChangeObserver::stopObservingStyleResolve): Deleted.
(WebCore::ContentChangeObserver::isObservingContentChanges): Deleted.
(WebCore::ContentChangeObserver::startObservingDOMTimerScheduling): Deleted.
(WebCore::ContentChangeObserver::stopObservingDOMTimerScheduling): Deleted.
(WebCore::ContentChangeObserver::isObservingDOMTimerScheduling): Deleted.
(WebCore::ContentChangeObserver::startObservingStyleRecalcScheduling): Deleted.
(WebCore::ContentChangeObserver::stopObservingStyleRecalcScheduling): Deleted.
(WebCore::ContentChangeObserver::isObservingStyleRecalcScheduling): Deleted.
(WebCore::ContentChangeObserver::setShouldObserveNextStyleRecalc): Deleted.
(WebCore::ContentChangeObserver::shouldObserveNextStyleRecalc): Deleted.
(WebCore::ContentChangeObserver::countOfObservedDOMTimers): Deleted.
(WebCore::ContentChangeObserver::clearObservedDOMTimers): Deleted.
(WebCore::ContentChangeObserver::containsObservedDOMTimer): Deleted.
- page/ios/ContentChangeObserver.h:
(WebCore::ContentChangeObserver::startObservingDOMTimerScheduling):
(WebCore::ContentChangeObserver::stopObservingDOMTimerScheduling):
(WebCore::ContentChangeObserver::isObservingDOMTimerScheduling const):
(WebCore::ContentChangeObserver::containsObservedDOMTimer const):
(WebCore::ContentChangeObserver::startObservingStyleRecalcScheduling):
(WebCore::ContentChangeObserver::stopObservingStyleRecalcScheduling):
(WebCore::ContentChangeObserver::isObservingStyleRecalcScheduling const):
(WebCore::ContentChangeObserver::setShouldObserveStyleRecalc):
(WebCore::ContentChangeObserver::shouldObserveStyleRecalc const):
(WebCore::ContentChangeObserver::isObservingContentChanges const):
(WebCore::ContentChangeObserver::countOfObservedDOMTimers const):
(WebCore::ContentChangeObserver::clearObservedDOMTimers):
- 11:21 AM Changeset in webkit [242274] by
-
- 6 edits4 adds in branches/safari-607.1.40.0-branch
Cherry-pick r242248. rdar://problem/48503712
[iOS] Dark flash when opening Google AMP pages
https://bugs.webkit.org/show_bug.cgi?id=195193
rdar://problem/48326442
Reviewed by Zalan Bujtas.
Source/WebCore:
After the incremental compositing updates changes, it was possible for a change in the size
of an overflow:hidden element to fail to update the "ancestor clipping layer" geometry on
a composited descendant that is not a descendant in z-order. When Google search results
create the <iframe> that contain AMP contents, we'd fail to update a zero-sized clipping layer,
leaving the #222 background of an intermediate element visible.
Fix by setting a flag in RenderLayer::updateLayerPosition() (which is called in containing block order)
that sets the "needs geometry update" dirty bit on containing-block-descendant layers. Currently
this flag affects all descendants; in future, we might be able to clear it for grand-children.
Tests: compositing/geometry/ancestor-clip-change-interleaved-stacking-context.html
compositing/geometry/ancestor-clip-change.html
- rendering/RenderLayer.cpp: (WebCore::RenderLayer::updateLayerPositions): (WebCore::RenderLayer::updateLayerPosition):
- rendering/RenderLayer.h:
- rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::updateAfterLayout):
- rendering/RenderLayerBacking.h:
LayoutTests:
Tests that change the size of a clipping layer with non-z-order composited descendant, with
a couple of layer tree configurations.
- compositing/geometry/ancestor-clip-change-expected.html: Added.
- compositing/geometry/ancestor-clip-change-interleaved-stacking-context-expected.html: Added.
- compositing/geometry/ancestor-clip-change-interleaved-stacking-context.html: Added.
- compositing/geometry/ancestor-clip-change.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@242248 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 11:21 AM Changeset in webkit [242273] by
-
- 2 edits in trunk/Websites/webkit.org
Codify the naming convention for fooIfExists
https://bugs.webkit.org/show_bug.cgi?id=194930
Reviewed by Darin Adler.
Updating the coding style guideline after the discussion following
https://lists.webkit.org/pipermail/webkit-dev/2013-June/025056.html
- code-style.md:
- 11:19 AM Changeset in webkit [242272] by
-
- 7 edits in branches/safari-607.1.40.0-branch/Source
Versioning.
- 11:14 AM Changeset in webkit [242271] by
-
- 3 edits in trunk/Source/WebCore
[ContentChangeObserver] ContentChangeObserver::StyleChangeScope should not set WKContentVisibilityChange directly
https://bugs.webkit.org/show_bug.cgi?id=195197
<rdar://problem/48498332>
Reviewed by Simon Fraser.
Add didContentVisibilityChange to hide WKContentVisibilityChange value. We might also want to add some logic to didContentVisibilityChange at some point.
- page/ios/ContentChangeObserver.cpp:
(WebCore::ContentChangeObserver::didContentVisibilityChange):
(WebCore::ContentChangeObserver::StyleChangeScope::~StyleChangeScope):
- page/ios/ContentChangeObserver.h:
- 11:10 AM Changeset in webkit [242270] by
-
- 2 edits in trunk/Source/WebCore
[EME] Make sure the hasSessionSemaphore is set even if HAVE(AVSTREAMSESSION) is false
https://bugs.webkit.org/show_bug.cgi?id=195217
Reviewed by Eric Carlson.
- platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(WebCore::SourceBufferPrivateAVFObjC::didProvideContentKeyRequestInitializationDataForTrackID):
- 11:03 AM Changeset in webkit [242269] by
-
- 1 copy in releases/WebKitGTK/webkit-2.22.7
WebKitGTK 2.22.7
- 11:02 AM Changeset in webkit [242268] by
-
- 1 copy in releases/WPE WebKit/webkit-2.22.5
WPE WebKit 2.22.5
- 10:59 AM Changeset in webkit [242267] by
-
- 6 edits in releases/WebKitGTK/webkit-2.22
Unreviewed. Release WebKitGTK 2.22.7 and WPE WebKit 2.22.5
.:
- Source/cmake/OptionsGTK.cmake: Bump version to 2.22.7
- Source/cmake/OptionsWPE.cmake: Bump version to 2.22.5
Source/WebKit:
- gtk/NEWS: Add release notes for 2.22.7
- wpe/NEWS: Add release notes for 2.22.5
- 10:08 AM Changeset in webkit [242266] by
-
- 3 edits in trunk/Source/WebKit
[ThreadedCompositor] Simply the compositing run loop worker thread
https://bugs.webkit.org/show_bug.cgi?id=195208
Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2019-03-01
Reviewed by Don Olmstead.
We can remove the WorkQueuePool, since we never really supported more than one thread, and now that single
process model non longer exists it doesn't even make sense. We can simply use a RunLoop instead of a WorkQueue
so that the implementation is not specific to the generic WorkQueue implementation.
- Shared/CoordinatedGraphics/threadedcompositor/CompositingRunLoop.cpp:
(WebKit::createRunLoop): Helper function to create the RunLoop in a worker thread before m_updateTimer is initialized.
(WebKit::CompositingRunLoop::CompositingRunLoop): Use createRunLoop().
(WebKit::CompositingRunLoop::~CompositingRunLoop): Stop the worker thread run loop in the next main run loop iteration.
(WebKit::CompositingRunLoop::performTask): Use m_runLoop.
(WebKit::CompositingRunLoop::performTaskSync): Ditto.
(WebKit::WorkQueuePool::singleton): Deleted.
(WebKit::WorkQueuePool::dispatch): Deleted.
(WebKit::WorkQueuePool::runLoop): Deleted.
(WebKit::WorkQueuePool::invalidate): Deleted.
(WebKit::WorkQueuePool::WorkQueuePool): Deleted.
(WebKit::WorkQueuePool::getOrCreateWorkQueueForContext): Deleted.
(): Deleted.
- Shared/CoordinatedGraphics/threadedcompositor/CompositingRunLoop.h:
- 9:57 AM Changeset in webkit [242265] by
-
- 5 edits in trunk/LayoutTests
Enable WPT Pointer Events tests
https://bugs.webkit.org/show_bug.cgi?id=195204
<rdar://problem/48502751>
Patch by Antoine Quint <Antoine Quint> on 2019-03-01
Reviewed by Dean Jackson.
The touch-action property has been enabled as part of the work on webkit.org/b/195008 but the WPT tests
LayoutTests/imported/w3c:
had not been enabled yet, so we're now adding the progressions made.
- web-platform-tests/pointerevents/extension/pointerevent_touch-action-verification-expected.txt:
- web-platform-tests/pointerevents/pointerevent_touch-action-verification-expected.txt:
LayoutTests:
had not been enabled yet.
- platform/mac/TestExpectations:
- 9:08 AM Changeset in webkit [242264] by
-
- 2 edits in trunk/LayoutTests
REGRESSION: (r242189): Six Layout Tests in storage/indexeddb/ are crashing after r242189
https://bugs.webkit.org/show_bug.cgi?id=195210
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 9:05 AM Changeset in webkit [242263] by
-
- 12 edits in trunk
[Web GPU] 32-bit builds broken by attempt to disable WebGPU on 32-bit
https://bugs.webkit.org/show_bug.cgi?id=195191
Rubber-stamped by Dean Jackson.
Dropping support for 32-bit entirely, so I'm intentionally leaving 32-bit broken.
Source/JavaScriptCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebCore/PAL:
- Configurations/FeatureDefines.xcconfig:
Source/WebKit:
- Configurations/FeatureDefines.xcconfig:
Source/WebKitLegacy/mac:
- Configurations/FeatureDefines.xcconfig:
Tools:
- TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
- 3:43 AM Changeset in webkit [242262] by
-
- 2 edits in trunk/Source/JavaScriptCore
Fix debug builds with GCC
https://bugs.webkit.org/show_bug.cgi?id=195205
Unreviewed. Fix debug builds in GCC by removing
the constexpr-keyword for this function.
- runtime/CachedTypes.cpp:
(JSC::tagFromSourceCodeType):
- 1:55 AM WikiStart edited by
- Renamed GTK+ to GTK. (diff)
- 1:53 AM CoordinatedGraphicsSystem edited by
- Added PageOutline (diff)
- 1:51 AM WebKitGTK edited by
- GTK+ → GTK (diff)
- 1:50 AM Changeset in webkit [242261] by
-
- 2 edits in trunk/Source/JavaScriptCore
[ARM] Fix assembler warnings in ctiMasmProbeTrampoline
https://bugs.webkit.org/show_bug.cgi?id=195164
Reviewed by Mark Lam.
Short branches in IT blocks are deprecated in AArch32. In addition the
the conditional branch was the only instruction in the IT block. Short
branches are able to encode the condition code themselves, the additional
IT instruction is not needed.
The assembler was also warning that writing into APSR without a bitmask
was deprecated. Therefore use APSR_nzcvq instead, this generates the same
instruction encoding.
- assembler/MacroAssemblerARMv7.cpp:
- 1:34 AM CoordinatedGraphicsSystem edited by
- Coordinated Compositing (diff)
- 1:09 AM CoordinatedGraphicsSystem edited by
- Removed TextureMapperGL's obsolete future plan. (diff)
- 1:02 AM CoordinatedGraphicsSystem edited by
- (diff)
- 1:01 AM CoordinatedGraphicsSystem edited by
- Fixed BitmapTexture path (diff)
- 12:41 AM Changeset in webkit [242260] by
-
- 2 edits in trunk/Tools
Unreviewed, fix lldb webkitpy tests
https://bugs.webkit.org/show_bug.cgi?id=194375
Since we changed the value of Is8Bit flag in StringImpl, we change lldb webkitpy tests accordingly.
- lldb/lldb_webkit.py:
(WTFStringImplProvider.is_8bit):
- 12:39 AM Changeset in webkit [242259] by
-
- 7 edits in branches/safari-607-branch/Source
Versioning.
- 12:38 AM Changeset in webkit [242258] by
-
- 6 edits4 adds in branches/safari-607-branch
Cherry-pick r242248. rdar://problem/48503715
[iOS] Dark flash when opening Google AMP pages
https://bugs.webkit.org/show_bug.cgi?id=195193
rdar://problem/48326442
Reviewed by Zalan Bujtas.
Source/WebCore:
After the incremental compositing updates changes, it was possible for a change in the size
of an overflow:hidden element to fail to update the "ancestor clipping layer" geometry on
a composited descendant that is not a descendant in z-order. When Google search results
create the <iframe> that contain AMP contents, we'd fail to update a zero-sized clipping layer,
leaving the #222 background of an intermediate element visible.
Fix by setting a flag in RenderLayer::updateLayerPosition() (which is called in containing block order)
that sets the "needs geometry update" dirty bit on containing-block-descendant layers. Currently
this flag affects all descendants; in future, we might be able to clear it for grand-children.
Tests: compositing/geometry/ancestor-clip-change-interleaved-stacking-context.html
compositing/geometry/ancestor-clip-change.html
- rendering/RenderLayer.cpp: (WebCore::RenderLayer::updateLayerPositions): (WebCore::RenderLayer::updateLayerPosition):
- rendering/RenderLayer.h:
- rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::updateAfterLayout):
- rendering/RenderLayerBacking.h:
LayoutTests:
Tests that change the size of a clipping layer with non-z-order composited descendant, with
a couple of layer tree configurations.
- compositing/geometry/ancestor-clip-change-expected.html: Added.
- compositing/geometry/ancestor-clip-change-interleaved-stacking-context-expected.html: Added.
- compositing/geometry/ancestor-clip-change-interleaved-stacking-context.html: Added.
- compositing/geometry/ancestor-clip-change.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@242248 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 12:30 AM CoordinatedGraphicsSystem edited by
- Coordinated Compositing (diff)
- 12:28 AM CoordinatedGraphicsSystem edited by
- Texture Mapper (diff)
- 12:12 AM CoordinatedGraphicsSystem edited by
- Overview (diff)
- 12:05 AM CoordinatedGraphicsSystem edited by
- (diff)
Feb 28, 2019:
- 11:45 PM CoordinatedGraphicsSystem edited by
- (diff)
- 11:44 PM CoordinatedGraphicsSystem edited by
- (diff)
- 11:31 PM Changeset in webkit [242257] by
-
- 2 edits in trunk/Source/JavaScriptCore
Remove CachedPtr::m_isEmpty and CachedOptional::m_isEmpty fields
https://bugs.webkit.org/show_bug.cgi?id=194999
Reviewed by Saam Barati.
These fields are unnecessary, since we can just check that m_offset
has not been initialized (I added VariableLengthObject::isEmpty for
that). They also add 7-byte padding to these classes, which is pretty
bad given how frequently CachedPtr is used.
- runtime/CachedTypes.cpp:
(JSC::CachedObject::operator new[]):
(JSC::VariableLengthObject::allocate):
(JSC::VariableLengthObject::isEmpty const):
(JSC::CachedPtr::encode):
(JSC::CachedPtr::decode const):
(JSC::CachedPtr::get const):
(JSC::CachedOptional::encode):
(JSC::CachedOptional::decode const):
(JSC::CachedOptional::decodeAsPtr const):
- 8:40 PM Changeset in webkit [242256] by
-
- 2 edits in trunk/Source/WebCore
HTTPSUpgradeList.db database should be opened in readonly mode
https://bugs.webkit.org/show_bug.cgi?id=195194
<rdar://problem/47103889>
Unreviewed build fix for curl.
- platform/network/curl/CookieJarDB.cpp:
(WebCore::CookieJarDB::openDatabase): Removed the second arguemnt of SQLiteDatabase::open.
- 7:41 PM Changeset in webkit [242255] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed Windows build fix after r242251.
- platform/win/SearchPopupMenuDB.cpp:
(WebCore::SearchPopupMenuDB::openDatabase):
- 7:35 PM Changeset in webkit [242254] by
-
- 2 edits in trunk
[WinCairo] Turn ENABLE_RESOURCE_LOAD_STATISTICS on
https://bugs.webkit.org/show_bug.cgi?id=194267
Reviewed by Brent Fulgham.
- Source/cmake/OptionsWin.cmake:
- 7:15 PM Changeset in webkit [242253] by
-
- 5 edits in trunk/Source/WebCore
[ContentChangeObserver] Move timer removal code from DOMWindow::clearTimeout to DOMTimer::removeById
https://bugs.webkit.org/show_bug.cgi?id=195143
<rdar://problem/48462351>
Reviewed by Simon Fraser.
Currently DOMWindow::clearTimeout() is the only callsite that we are interested in, but this is more future-proof.
- page/DOMTimer.cpp:
(WebCore::DOMTimer::removeById):
- page/DOMWindow.cpp:
(WebCore::DOMWindow::clearTimeout):
- page/ios/ContentChangeObserver.cpp:
(WebCore::ContentChangeObserver::startObservingDOMTimerExecute):
(WebCore::ContentChangeObserver::stopObservingDOMTimerExecute):
(WebCore::ContentChangeObserver::didRemoveDOMTimer):
(WebCore::ContentChangeObserver::removeDOMTimer): Deleted.
- page/ios/ContentChangeObserver.h:
- 7:13 PM Changeset in webkit [242252] by
-
- 40 edits2 adds in trunk
[JSC] sizeof(JSString) should be 16
https://bugs.webkit.org/show_bug.cgi?id=194375
Reviewed by Saam Barati.
JSTests:
- microbenchmarks/make-rope.js: Added.
(makeRope):
- stress/to-lower-case-intrinsic-on-empty-rope.js: We no longer allow 0 length JSString except for jsEmptyString singleton per VM.
(returnRope.helper): Deleted.
(returnRope): Deleted.
Source/JavaScriptCore:
This patch reduces sizeof(JSString) from 24 to 16 to fit it into GC heap cell atom. And it also reduces sizeof(JSRopeString) from 48 to 32.
Both classes cut 16 bytes per instance in GC allocation. This new layout is used in 64bit architectures which has little endianess.
JSString no longer has length and flags directly. JSString has String, and we query information to this String instead of holding duplicate
information in JSString. We embed isRope bit into this String's pointer so that we can convert JSRopeString to JSString in an atomic manner.
We emit store-store fence before we put String pointer. This should exist even before this patch, so this patch also fixes one concurrency issue.
The old JSRopeString separately had JSString* fibers along with String. In this patch, we merge the first JSString* fiber and String pointer
storage into one to reduce the size of JSRopeString. JSRopeString has three pointer width storage. We pick 48bit effective address of JSString*
fibers to compress three fibers + length + flags into three pointer width storage.
In 64bit architecture, JSString and JSRopeString have the following memory layout to make sizeof(JSString) == 16 and sizeof(JSRopeString) == 32.
JSString has only one pointer. We use it for String. length() and is8Bit() queries go to StringImpl. In JSRopeString, we reuse the above pointer
place for the 1st fiber. JSRopeString has three fibers so its size is 48. To keep length and is8Bit flag information in JSRopeString, JSRopeString
encodes these information into the fiber pointers. is8Bit flag is encoded in the 1st fiber pointer. length is embedded directly, and two fibers
are compressed into 12bytes. isRope information is encoded in the first fiber's LSB.
Since length of JSRopeString should be frequently accessed compared to each fiber, we put length in contiguous 32byte field, and compress 2nd
and 3rd fibers into the following 80byte fields. One problem is that now 2nd and 3rd fibers are split. Storing and loading 2nd and 3rd fibers
are not one pointer load operation. To make concurrent collector work correctly, we must initialize 2nd and 3rd fibers at JSRopeString creation
and we must not modify these part later.
0 8 10 16 32 48
JSString [ ID ][ header ][ String pointer 0]
JSRopeString [ ID ][ header ][ flags ][ 1st fiber 1][ length ][2nd lower32][2nd upper16][3rd lower16][3rd upper32]
isRope bit
Since fibers in JSRopeString are not initialized in atomic pointer store manner, we must initialize all the fiber fields at JSRopeString creation.
To achieve this, we modify our JSRopeString::RopeBuilder implementation not to create half-baked JSRopeString.
This patch also makes an empty JSString singleton per VM. This makes evaluation of JSString in boolean context one pointer comparison. This is
critical in this change since this patch enlarges the code necessary to get length from JSString in JIT. Without this guarantee, our code of boolean
context evaluation is bloated. This patch hides all the JSString::create and JSRopeString::create in the private permission. JSString and JSRopeString
creation is only allowed from jsString and related helper functions and they return a singleton empty JSString if the length is zero. We also change
JSRopeString::RopeBuilder not to construct an empty JSRopeString.
This patch is performance neutral in Speedometer2 and JetStream2. And it improves RAMification by 2.7%.
- JavaScriptCore.xcodeproj/project.pbxproj:
- assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::storeZero16):
- assembler/MacroAssemblerX86Common.h:
(JSC::MacroAssemblerX86Common::storeZero16):
(JSC::MacroAssemblerX86Common::store16):
- bytecode/AccessCase.cpp:
(JSC::AccessCase::generateImpl):
- bytecode/InlineAccess.cpp:
(JSC::InlineAccess::dumpCacheSizesAndCrash):
(JSC::linkCodeInline):
(JSC::InlineAccess::isCacheableStringLength):
(JSC::InlineAccess::generateStringLength):
- bytecode/InlineAccess.h:
(JSC::InlineAccess::sizeForPropertyAccess):
(JSC::InlineAccess::sizeForPropertyReplace):
(JSC::InlineAccess::sizeForLengthAccess):
- dfg/DFGOperations.cpp:
- dfg/DFGOperations.h:
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileStringSlice):
(JSC::DFG::SpeculativeJIT::compileToLowerCase):
(JSC::DFG::SpeculativeJIT::compileGetCharCodeAt):
(JSC::DFG::SpeculativeJIT::compileGetByValOnString):
(JSC::DFG::SpeculativeJIT::compileStringEquality):
(JSC::DFG::SpeculativeJIT::compileStringZeroLength):
(JSC::DFG::SpeculativeJIT::compileLogicalNotStringOrOther):
(JSC::DFG::SpeculativeJIT::emitStringBranch):
(JSC::DFG::SpeculativeJIT::emitStringOrOtherBranch):
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):
(JSC::DFG::SpeculativeJIT::compileGetArrayLength):
(JSC::DFG::SpeculativeJIT::emitPopulateSliceIndex):
(JSC::DFG::SpeculativeJIT::compileArraySlice):
(JSC::DFG::SpeculativeJIT::compileArrayIndexOf):
(JSC::DFG::SpeculativeJIT::speculateStringIdentAndLoadStorage):
(JSC::DFG::SpeculativeJIT::emitSwitchCharStringJump):
(JSC::DFG::SpeculativeJIT::emitSwitchStringOnString):
(JSC::DFG::SpeculativeJIT::compileMakeRope): Deleted.
- dfg/DFGSpeculativeJIT.h:
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::compileMakeRope):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::compileMakeRope):
- ftl/FTLAbstractHeapRepository.cpp:
(JSC::FTL::AbstractHeapRepository::AbstractHeapRepository):
- ftl/FTLAbstractHeapRepository.h:
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileGetIndexedPropertyStorage):
(JSC::FTL::DFG::LowerDFGToB3::compileGetArrayLength):
(JSC::FTL::DFG::LowerDFGToB3::compileMakeRope):
(JSC::FTL::DFG::LowerDFGToB3::compileStringCharAt):
(JSC::FTL::DFG::LowerDFGToB3::compileStringCharCodeAt):
(JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq):
(JSC::FTL::DFG::LowerDFGToB3::compileStringToUntypedStrictEquality):
(JSC::FTL::DFG::LowerDFGToB3::compileSwitch):
(JSC::FTL::DFG::LowerDFGToB3::mapHashString):
(JSC::FTL::DFG::LowerDFGToB3::compileMapHash):
(JSC::FTL::DFG::LowerDFGToB3::compileHasOwnProperty):
(JSC::FTL::DFG::LowerDFGToB3::compileStringSlice):
(JSC::FTL::DFG::LowerDFGToB3::compileToLowerCase):
(JSC::FTL::DFG::LowerDFGToB3::stringsEqual):
(JSC::FTL::DFG::LowerDFGToB3::boolify):
(JSC::FTL::DFG::LowerDFGToB3::switchString):
(JSC::FTL::DFG::LowerDFGToB3::isRopeString):
(JSC::FTL::DFG::LowerDFGToB3::isNotRopeString):
(JSC::FTL::DFG::LowerDFGToB3::speculateStringIdent):
- jit/AssemblyHelpers.cpp:
(JSC::AssemblyHelpers::emitConvertValueToBoolean):
(JSC::AssemblyHelpers::branchIfValue):
- jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::branchIfRopeStringImpl):
(JSC::AssemblyHelpers::branchIfNotRopeStringImpl):
- jit/JITInlines.h:
(JSC::JIT::emitLoadCharacterString):
- jit/Repatch.cpp:
(JSC::tryCacheGetByID):
- jit/ThunkGenerators.cpp:
(JSC::stringGetByValGenerator):
(JSC::stringCharLoad):
- llint/LowLevelInterpreter.asm:
- llint/LowLevelInterpreter32_64.asm:
- llint/LowLevelInterpreter64.asm:
- runtime/JSString.cpp:
(JSC::JSString::createEmptyString):
(JSC::JSRopeString::RopeBuilder<RecordOverflow>::expand):
(JSC::JSString::dumpToStream):
(JSC::JSString::estimatedSize):
(JSC::JSString::visitChildren):
(JSC::JSRopeString::resolveRopeInternal8 const):
(JSC::JSRopeString::resolveRopeInternal8NoSubstring const):
(JSC::JSRopeString::resolveRopeInternal16 const):
(JSC::JSRopeString::resolveRopeInternal16NoSubstring const):
(JSC::JSRopeString::resolveRopeToAtomicString const):
(JSC::JSRopeString::convertToNonRope const):
(JSC::JSRopeString::resolveRopeToExistingAtomicString const):
(JSC::JSRopeString::resolveRopeWithFunction const):
(JSC::JSRopeString::resolveRope const):
(JSC::JSRopeString::resolveRopeSlowCase8 const):
(JSC::JSRopeString::resolveRopeSlowCase const):
(JSC::JSRopeString::outOfMemory const):
(JSC::JSRopeString::visitFibers): Deleted.
(JSC::JSRopeString::clearFibers const): Deleted.
- runtime/JSString.h:
(JSC::JSString::uninitializedValueInternal const):
(JSC::JSString::valueInternal const):
(JSC::JSString::JSString):
(JSC::JSString::finishCreation):
(JSC::JSString::create):
(JSC::JSString::offsetOfValue):
(JSC::JSString::isRope const):
(JSC::JSString::is8Bit const):
(JSC::JSString::length const):
(JSC::JSString::tryGetValueImpl const):
(JSC::JSString::toAtomicString const):
(JSC::JSString::toExistingAtomicString const):
(JSC::JSString::value const):
(JSC::JSString::tryGetValue const):
(JSC::JSRopeString::unsafeView const):
(JSC::JSRopeString::viewWithUnderlyingString const):
(JSC::JSString::unsafeView const):
(JSC::JSString::viewWithUnderlyingString const):
(JSC::JSString::offsetOfLength): Deleted.
(JSC::JSString::offsetOfFlags): Deleted.
(JSC::JSString::setIs8Bit const): Deleted.
(JSC::JSString::setLength): Deleted.
(JSC::JSString::string): Deleted.
(JSC::jsStringBuilder): Deleted.
- runtime/JSStringInlines.h:
(JSC::JSString::~JSString):
(JSC::JSString::equal const):
- runtime/ObjectPrototype.cpp:
(JSC::objectProtoFuncToString):
- runtime/RegExpMatchesArray.h:
(JSC::createRegExpMatchesArray):
- runtime/RegExpObjectInlines.h:
(JSC::collectMatches):
- runtime/RegExpPrototype.cpp:
(JSC::regExpProtoFuncSplitFast):
- runtime/SmallStrings.cpp:
(JSC::SmallStrings::initializeCommonStrings):
(JSC::SmallStrings::createEmptyString): Deleted.
- runtime/SmallStrings.h:
- runtime/StringPrototype.cpp:
(JSC::stringProtoFuncSlice):
- runtime/StringPrototypeInlines.h: Added.
(JSC::stringSlice):
Source/WTF:
- wtf/text/StringImpl.h:
(WTF::StringImpl::flagIs8Bit):
(WTF::StringImpl::flagIsAtomic):
(WTF::StringImpl::flagIsSymbol):
(WTF::StringImpl::maskStringKind):
- wtf/text/WTFString.cpp:
(WTF::nullString):
- wtf/text/WTFString.h:
- 6:47 PM Changeset in webkit [242251] by
-
- 8 edits in trunk/Source
HTTPSUpgradeList.db database should be opened in readonly mode
https://bugs.webkit.org/show_bug.cgi?id=195194
<rdar://problem/47103889>
Reviewed by Youenn Fablet.
Source/WebCore:
Add parameter to SQLiteDatabase::open() to specific the open flags.
- Modules/webdatabase/Database.cpp:
(WebCore::Database::performOpenAndVerify):
- platform/sql/SQLiteDatabase.cpp:
(WebCore::SQLiteDatabase::open):
- platform/sql/SQLiteDatabase.h:
- platform/sql/SQLiteFileSystem.cpp:
- platform/sql/SQLiteFileSystem.h:
Source/WebKit:
HTTPSUpgradeList.db database should be opened in readonly mode since it is not meant to be
modified by WebKit. Opening it in ReadWrite mode causes sandbox violations.
- NetworkProcess/NetworkHTTPSUpgradeChecker.cpp:
(WebKit::NetworkHTTPSUpgradeChecker::NetworkHTTPSUpgradeChecker):
- 6:22 PM Changeset in webkit [242250] by
-
- 1 copy in tags/Safari-607.1.40.2.1
Tag Safari-607.1.40.2.1.
- 6:10 PM Changeset in webkit [242249] by
-
- 2 edits in trunk/Source/WebCore
Followup to:
Universal links from Google search results pages don't open the app
https://bugs.webkit.org/show_bug.cgi?id=195126
Unreviewed.
- page/SecurityOrigin.cpp:
(WebCore::originsMatch): Remove a bogus assertion (reasoning in bugzilla)
- 5:54 PM Changeset in webkit [242248] by
-
- 6 edits4 adds in trunk
[iOS] Dark flash when opening Google AMP pages
https://bugs.webkit.org/show_bug.cgi?id=195193
rdar://problem/48326442
Reviewed by Zalan Bujtas.
Source/WebCore:
After the incremental compositing updates changes, it was possible for a change in the size
of an overflow:hidden element to fail to update the "ancestor clipping layer" geometry on
a composited descendant that is not a descendant in z-order. When Google search results
create the <iframe> that contain AMP contents, we'd fail to update a zero-sized clipping layer,
leaving the #222 background of an intermediate element visible.
Fix by setting a flag in RenderLayer::updateLayerPosition() (which is called in containing block order)
that sets the "needs geometry update" dirty bit on containing-block-descendant layers. Currently
this flag affects all descendants; in future, we might be able to clear it for grand-children.
Tests: compositing/geometry/ancestor-clip-change-interleaved-stacking-context.html
compositing/geometry/ancestor-clip-change.html
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateLayerPositions):
(WebCore::RenderLayer::updateLayerPosition):
- rendering/RenderLayer.h:
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateAfterLayout):
- rendering/RenderLayerBacking.h:
LayoutTests:
Tests that change the size of a clipping layer with non-z-order composited descendant, with
a couple of layer tree configurations.
- compositing/geometry/ancestor-clip-change-expected.html: Added.
- compositing/geometry/ancestor-clip-change-interleaved-stacking-context-expected.html: Added.
- compositing/geometry/ancestor-clip-change-interleaved-stacking-context.html: Added.
- compositing/geometry/ancestor-clip-change.html: Added.
- 5:44 PM Changeset in webkit [242247] by
-
- 2 edits in trunk/Source/JavaScriptCore
Unreviewed. Attempt windows build fix after r242239.
- runtime/CachedTypes.cpp:
(JSC::tagFromSourceCodeType):
- 5:30 PM Changeset in webkit [242246] by
-
- 1 copy in tags/Safari-607.1.40.1.2
Tag Safari-607.1.40.1.2.
- 5:29 PM Changeset in webkit [242245] by
-
- 1 copy in tags/Safari-607.1.40.0.2
Tag Safari-607.1.40.0.2.
- 5:11 PM Changeset in webkit [242244] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Timelines: don't show the auto-stop UI when not inspecting a page
https://bugs.webkit.org/show_bug.cgi?id=195192
Reviewed by Joseph Pecoraro.
- UserInterface/Views/TimelineRecordingContentView.js:
(WI.TimelineRecordingContentView):
(WI.TimelineRecordingContentView.prototype.get navigationItems):
- 4:48 PM Changeset in webkit [242243] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: CPU Usage: Worker thread that dies might stay at a high value forever
https://bugs.webkit.org/show_bug.cgi?id=195148
Reviewed by Matt Baker.
- UserInterface/Views/CPUTimelineView.js:
(CPUTimelineView.prototype.layout):
Handle workers dieing or at least zeroing out between records.
- 4:48 PM Changeset in webkit [242242] by
-
- 5 edits in trunk/Source/WebInspectorUI
Web Inspector: CPU Usage Timeline - Make Threads section expandable / collapsable
https://bugs.webkit.org/show_bug.cgi?id=195085
Reviewed by Matt Baker.
- UserInterface/Base/Setting.js:
New setting to save the Threads expanded/collapsed state.
- UserInterface/Views/CPUTimelineView.css:
(.timeline-view.cpu > .content > .details > .subtitle):
(.timeline-view.cpu > .content > .details > details > .subtitle.threads):
(.timeline-view.cpu > .content > .details > .subtitle): Deleted.
(.timeline-view.cpu > .content > .details > .subtitle.threads): Deleted.
Ensure subtitle styles apply now that one of the subtitles is inside
of a <details> / <summary> element.
- UserInterface/Views/CPUTimelineView.js:
(WI.CPUTimelineView.prototype.initialLayout):
Make the Threads group a <details> / <summary> expandable / collapsed element.
- UserInterface/Views/Main.css:
(summary):
(summary::-webkit-details-marker):
Default styles for <summary>.
- 4:48 PM Changeset in webkit [242241] by
-
- 5 edits in trunk
Web Inspector: View.removeSubview not removing the element properly when not parented
https://bugs.webkit.org/show_bug.cgi?id=195146
Reviewed by Matt Baker.
Source/WebInspectorUI:
- UserInterface/Views/View.js:
(WI.View.prototype.removeSubview):
Since the element may not be a direct child, just use Element.prototype.remove.
LayoutTests:
- inspector/view/basics-expected.txt:
- inspector/view/basics.html:
- 4:04 PM Changeset in webkit [242240] by
-
- 2 edits in trunk/Source/JavaScriptCore
In cloop.rb, rename :int and :uint to :intptr and :uintptr.
https://bugs.webkit.org/show_bug.cgi?id=195183
Reviewed by Yusuke Suzuki.
Also changed intMemRef and uintMemRef to intptrMemRef and uintptrMemRef respectively.
- offlineasm/cloop.rb:
- 3:58 PM Changeset in webkit [242239] by
-
- 9 edits in trunk/Source/JavaScriptCore
Make JSScript:cacheBytecodeWithError update the cache when the script changes
https://bugs.webkit.org/show_bug.cgi?id=194912
Reviewed by Mark Lam.
Prior to this patch, the JSScript SPI would never check if its cached
bytecode were still valid. This would lead the cacheBytecodeWithError
succeeding even if the underlying cache were stale. This patch fixes
that by making JSScript check if the cache is still valid. If it's not,
we will cache bytecode when cacheBytecodeWithError is invoked.
- API/JSScript.mm:
(-[JSScript readCache]):
(-[JSScript writeCache:]):
- API/tests/testapi.mm:
(testBytecodeCacheWithSameCacheFileAndDifferentScript):
(testObjectiveCAPI):
- runtime/CachedTypes.cpp:
(JSC::Decoder::Decoder):
(JSC::VariableLengthObject::buffer const):
(JSC::CachedPtr::decode const):
(JSC::tagFromSourceCodeType):
(JSC::GenericCacheEntry::isUpToDate const):
(JSC::CacheEntry::isStillValid const):
(JSC::GenericCacheEntry::decode const):
(JSC::GenericCacheEntry::isStillValid const):
(JSC::encodeCodeBlock):
(JSC::decodeCodeBlockImpl):
(JSC::isCachedBytecodeStillValid):
- runtime/CachedTypes.h:
- runtime/CodeCache.cpp:
(JSC::sourceCodeKeyForSerializedBytecode):
(JSC::sourceCodeKeyForSerializedProgram):
(JSC::sourceCodeKeyForSerializedModule):
(JSC::serializeBytecode):
- runtime/CodeCache.h:
(JSC::CodeCacheMap::fetchFromDiskImpl):
- runtime/Completion.cpp:
(JSC::generateProgramBytecode):
(JSC::generateBytecode): Deleted.
- runtime/Completion.h:
- 3:57 PM Changeset in webkit [242238] by
-
- 2 edits in tags/Safari-608.1.7.1/Source/WTF
Cherry-pick r242235. rdar://problem/48464665
Change CheckedArithmetic to not use std::enable_if_t.
https://bugs.webkit.org/show_bug.cgi?id=195187
<rdar://problem/48464665>
Reviewed by Keith Miller.
Because C++11 does not like std::enable_if_t and there's a need to use this file with C++11.
- wtf/CheckedArithmetic.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@242235 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 3:42 PM Changeset in webkit [242237] by
-
- 4 edits2 adds in trunk
Use-after-move in RenderCombineText::combineTextIfNeeded()
https://bugs.webkit.org/show_bug.cgi?id=195188
Reviewed by Zalan Bujtas.
Source/WebCore:
r241288 uncovered an existing problem with our text-combine code. r242204 alleviated the
symptom, but this patch fixes the source of the problem (and reverts r242204).
The code in RenderCombineText::combineTextIfNeeded() has a bit that’s like:
FontDescription bestFitDescription;
while (...) {
FontCascade compressedFont(WTFMove(bestFitDescription), ...);
...
}
Clearly this is wrong.
Test: fast/text/text-combine-crash-2.html
- platform/graphics/cocoa/FontDescriptionCocoa.cpp:
(WebCore::FontDescription::platformResolveGenericFamily):
- rendering/RenderCombineText.cpp:
(WebCore::RenderCombineText::combineTextIfNeeded):
LayoutTests:
- fast/text/text-combine-crash-2-expected.html: Added.
- fast/text/text-combine-crash-2.html: Added.
- 3:37 PM Changeset in webkit [242236] by
-
- 5 edits1 add in trunk
Expose APINavigationAction.shouldPerformDownload() on WKNavigationAction
https://bugs.webkit.org/show_bug.cgi?id=195121
rdar://problem/48450302
Reviewed by Alex Christensen.
Source/WebKit:
- UIProcess/API/Cocoa/WKNavigationAction.mm:
(-[WKNavigationAction _shouldPerformDownload]):
- UIProcess/API/Cocoa/WKNavigationActionPrivate.h:
Tools:
Add API tests for -WKNavigationAction._shouldPerformDownload in various
configurations where the 'download' attribute is absent, blank, or populated
with a filename, and where the anchor element is same-origin or cross-origin
(meaning the 'download' attribute shouldn't be honored).
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKitCocoa/NavigationAction.mm: Added.
(-[NavigationActionTestDelegate init]):
(-[NavigationActionTestDelegate navigationAction]):
(-[NavigationActionTestDelegate waitForNavigationActionCallback]):
(-[NavigationActionTestDelegate waitForDidFinishNavigation]):
(-[NavigationActionTestDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
(-[NavigationActionTestDelegate webView:didFinishNavigation:]):
(TEST):
- 3:33 PM Changeset in webkit [242235] by
-
- 2 edits in trunk/Source/WTF
Change CheckedArithmetic to not use std::enable_if_t.
https://bugs.webkit.org/show_bug.cgi?id=195187
<rdar://problem/48464665>
Reviewed by Keith Miller.
Because C++11 does not like std::enable_if_t and there's a need to use this file with C++11.
- wtf/CheckedArithmetic.h:
- 3:18 PM Changeset in webkit [242234] by
-
- 6 edits in trunk/Source/WebCore
[ContentChangeObserver] Introduce observer subclasses to scope content change observing.
https://bugs.webkit.org/show_bug.cgi?id=195172
<rdar://problem/48479259>
Reviewed by Simon Fraser.
Let's scope start/stopObserving call pairs.
- dom/Document.cpp:
(WebCore::Document::updateStyleIfNeeded):
- page/DOMTimer.cpp:
(WebCore::DOMTimer::fired):
- page/ios/ContentChangeObserver.cpp:
(WebCore::ContentChangeObserver::StyleChangeObserver::StyleChangeObserver):
(WebCore::ContentChangeObserver::StyleChangeObserver::~StyleChangeObserver):
(WebCore::ContentChangeObserver::StyleRecalcObserver::StyleRecalcObserver):
(WebCore::ContentChangeObserver::StyleRecalcObserver::~StyleRecalcObserver):
(WebCore::ContentChangeObserver::DOMTimerObserver::DOMTimerObserver):
(WebCore::ContentChangeObserver::DOMTimerObserver::~DOMTimerObserver):
(WebCore::ContentChangeObserver::StyleChange::StyleChange): Deleted.
(WebCore::ContentChangeObserver::StyleChange::~StyleChange): Deleted.
- page/ios/ContentChangeObserver.h:
- rendering/updating/RenderTreeUpdater.cpp:
(WebCore::RenderTreeUpdater::updateElementRenderer):
- 3:04 PM Changeset in webkit [242233] by
-
- 2 edits in trunk/Source/WebKit
Disable Web Animations in Safari Technology Preview
https://bugs.webkit.org/show_bug.cgi?id=194748
<rdar://problem/48139481>
Patch by Antoine Quint <Antoine Quint> on 2019-02-28
Reviewed by Dean Jackson.
The test runners already opt into that feature explicitly, so all that is needed is to turn
the default setting value to false.
- Shared/WebPreferences.yaml:
- 2:59 PM Changeset in webkit [242232] by
-
- 8 edits in trunk
Enable the Pointer Events runtime flag by default
https://bugs.webkit.org/show_bug.cgi?id=195156
Patch by Antoine Quint <Antoine Quint> on 2019-02-28
Reviewed by Dean Jackson.
Source/WebCore:
- page/RuntimeEnabledFeatures.h:
Source/WebKit:
- Shared/WebPreferences.yaml:
Source/WebKitLegacy/mac:
- WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
Tools:
- DumpRenderTree/mac/DumpRenderTree.mm:
(enableExperimentalFeatures):
- 2:54 PM Changeset in webkit [242231] by
-
- 3 edits in trunk/LayoutTests
REGRESSION (r240644): Layout Test inspector/page/overrideSetting-ICECandidateFilteringEnabled.html is a flaky timeout
https://bugs.webkit.org/show_bug.cgi?id=194437
<rdar://problem/48008005>
Reviewed by Joseph Pecoraro.
- inspector/page/overrideSetting-ICECandidateFilteringEnabled.html:
- inspector/page/overrideSetting-ICECandidateFilteringEnabled-expected.txt:
Make sure to close the peer connection and data channel after each phase of the test.
Also add failure logging.
- 2:45 PM Changeset in webkit [242230] by
-
- 7 edits in trunk/Source/WebKit
Revert r232263: it caused processes to crash because process was suspended with locked file
https://bugs.webkit.org/show_bug.cgi?id=195122
<rdar://problem/48444599>
Reviewed by Geoffrey Garen.
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::NetworkProcess):
- NetworkProcess/NetworkProcess.h:
- Shared/WebSQLiteDatabaseTracker.cpp:
(WebKit::WebSQLiteDatabaseTracker::WebSQLiteDatabaseTracker):
(WebKit::WebSQLiteDatabaseTracker::hysteresisUpdated):
- Shared/WebSQLiteDatabaseTracker.h:
- WebProcess/WebProcess.cpp:
(WebKit::m_webSQLiteDatabaseTracker):
(WebKit::m_nonVisibleProcessCleanupTimer): Deleted.
- WebProcess/WebProcess.h:
- 2:34 PM Changeset in webkit [242229] by
-
- 7 edits in tags/Safari-608.1.7.1/Source
Versioning.
- 2:32 PM Changeset in webkit [242228] by
-
- 5 edits in trunk/Source/WebInspectorUI
Web Inspector: Debugger: disabled breakpoint color is too dark
https://bugs.webkit.org/show_bug.cgi?id=195103
<rdar://problem/48440678>
Reviewed by Devin Rousso.
Increase the disabled breakpoint contrast, as well as the contrast between
disabled and auto-continue breakpoints. Disabled breakpoints stand out by
being somewhat brighter and less saturated. Using the same strategy for
auto-continue breakpoints is too subtle to provide sufficient contrast.
We can adopt the technique used by Xcode, and overlay a white triangle
marker on the breakpoint arrow to indicate an auto-continue breakpoint.
- UserInterface/Views/BreakpointTreeElement.css:
(.item.breakpoint .status > .status-image):
(.item.breakpoint.selected .status > .status-image.resolved):
Add white outline to make selected breakpoint button stand out.
(.item.breakpoint .status > .status-image.auto-continue::after):
(.item.breakpoint .status > .status-image.disabled):
(.item.breakpoint .status > .status-image.auto-continue): Deleted.
- UserInterface/Views/DOMTreeContentView.css:
(.content-view.dom-tree .tree-outline.dom li .status-image.breakpoint):
(.content-view.dom-tree .tree-outline.dom li .status-image.breakpoint.disabled):
(.content-view.dom-tree .tree-outline.dom li .status-image.breakpoint.subtree):
(.content-view.dom-tree .tree-outline.dom li .status-image.breakpoint.disabled,): Deleted.
- UserInterface/Views/TextEditor.css:
(.text-editor > .CodeMirror .has-breakpoint .CodeMirror-linenumber::before):
(.text-editor > .CodeMirror .breakpoint-auto-continue:not(.execution-line.primary) .CodeMirror-linenumber::after):
(.text-editor > .CodeMirror .breakpoint-disabled .CodeMirror-linenumber::before):
(.text-editor > .CodeMirror .breakpoint-auto-continue:not(.breakpoint-disabled) .CodeMirror-linenumber::before): Deleted.
- UserInterface/Views/Variables.css:
(:root):
Add breakpoint color variables to use across all breakpoint controls.
Use system colors if available, otherwise fall back to hard-coded values
based on sampling the default (blue) accent color on Mojave.
- 2:29 PM Changeset in webkit [242227] by
-
- 3 edits in trunk/Source/WebCore
[ContentChangeObserver] Make observed state reset explicit.
https://bugs.webkit.org/show_bug.cgi?id=195185
<rdar://problem/48488342>
Reviewed by Simon Fraser.
Use setObservedContentChange only for setting the observed change while observing.
- page/ios/ContentChangeObserver.cpp:
(WebCore::ContentChangeObserver::startObservingContentChanges):
(WebCore::ContentChangeObserver::resetObservedContentChange):
(WebCore::ContentChangeObserver::removeObservedDOMTimer):
- page/ios/ContentChangeObserver.h:
- 2:13 PM Changeset in webkit [242226] by
-
- 1 copy in tags/Safari-608.1.7.1
New tag.
- 2:01 PM Changeset in webkit [242225] by
-
- 17 edits in trunk/LayoutTests
Web Inspector: Canvas: change tests to not print out dataURLs
https://bugs.webkit.org/show_bug.cgi?id=195136
<rdar://problem/48248697>
Reviewed by Matt Baker.
- inspector/canvas/resources/recording-utilities.js:
(TestPage.registerInitializer.async logRecording):
(TestPage.registerInitializer.window.startRecording):
- inspector/canvas/recording-2d-expected.txt:
- inspector/canvas/recording-bitmaprenderer-expected.txt:
- inspector/canvas/recording-webgl-expected.txt:
- inspector/canvas/recording-webgl-snapshots.html:
- inspector/canvas/recording-webgl-snapshots-expected.txt:
- inspector/canvas/requestContent-2d.html:
- inspector/canvas/requestContent-2d-expected.txt:
- inspector/canvas/requestContent-bitmaprenderer.html:
- inspector/canvas/requestContent-bitmaprenderer-expected.txt:
- inspector/canvas/requestContent-webgl.html:
- inspector/canvas/requestContent-webgl-expected.txt:
- inspector/canvas/requestContent-webgl2.html:
- inspector/canvas/requestContent-webgl2-expected.txt:
- inspector/canvas/setShaderProgramHighlighted.html:
- inspector/canvas/setShaderProgramHighlighted-expected.txt:
- 1:53 PM Changeset in webkit [242224] by
-
- 7 edits in branches/safari-607.1.40.0-branch/Source
Versioning.
- 1:41 PM Changeset in webkit [242223] by
-
- 2 edits in branches/safari-607.1.40.0-branch/Source/WebCore
Cherry-pick r242204. rdar://problem/48483749
Locale names can be nullptr
https://bugs.webkit.org/show_bug.cgi?id=195171
<rdar://problem/48262376>
Reviewed by Dean Jackson.
Nullptr can't be used in keys to HashMaps, so take an early out in this case.
This is a partial revert of r241288.
- platform/graphics/cocoa/FontDescriptionCocoa.cpp: (WebCore::FontDescription::platformResolveGenericFamily):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@242204 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 1:39 PM Changeset in webkit [242222] by
-
- 9 edits in trunk/Source/WebKit
[iOS] Move calls to [UIKeyboard isInHardwareKeyboardMode] to the UI process.
https://bugs.webkit.org/show_bug.cgi?id=193683
<rdar://problem/47634345>
Reviewed by Brent Fulgham.
When a keyboard is attached/deattached or the application becomes foreground, send a message from
the UI process to the WebContent process, notifying whether a keyboard is attached or not. Also,
cache the value of [UIKeyboard isInHardwareKeyboardMode] in the UI process, since this call seems
to be expensive.
- UIProcess/API/Cocoa/WKWebView.mm:
(hardwareKeyboardAvailabilityChangedCallback):
- UIProcess/WebPageProxy.h:
- UIProcess/WebProcessProxy.h:
(WebKit::WebProcessProxy::setKeyboardIsAttached):
(WebKit::WebProcessProxy::keyboardIsAttached const):
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _elementDidFocus:userIsInteracting:blurPreviousNode:changingActivityState:userObject:]):
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::applicationWillEnterForeground):
(WebKit::WebPageProxy::hardwareKeyboardAvailabilityChanged):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::platformEditorState const):
(WebKit::WebPage::hardwareKeyboardAvailabilityChanged):
- 1:27 PM Changeset in webkit [242221] by
-
- 7 edits in branches/safari-607.1.40.1-branch/Source
Versioning.
- 1:24 PM Changeset in webkit [242220] by
-
- 2 edits in branches/safari-607.1.40.1-branch/Source/WebCore
Cherry-pick r242204. rdar://problem/48483747
Locale names can be nullptr
https://bugs.webkit.org/show_bug.cgi?id=195171
<rdar://problem/48262376>
Reviewed by Dean Jackson.
Nullptr can't be used in keys to HashMaps, so take an early out in this case.
This is a partial revert of r241288.
- platform/graphics/cocoa/FontDescriptionCocoa.cpp: (WebCore::FontDescription::platformResolveGenericFamily):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@242204 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 1:24 PM Changeset in webkit [242219] by
-
- 2 edits in branches/safari-607.1.40.1-branch/Source/WebCore
Apply patch. rdar://problem/48464969
- 1:19 PM Changeset in webkit [242218] by
-
- 4 edits in trunk/Source/WebInspectorUI
Web Inspector: Styles: Control-Space should force completion
https://bugs.webkit.org/show_bug.cgi?id=194796
<rdar://problem/48180822>
Reviewed by Matt Baker.
Pressing Control-Space when editing CSS property should show completion popover,
even if the value is empty.
- UserInterface/Models/CSSCompletions.js:
(WI.CSSCompletions.prototype.startsWith):
Performance optimization: exit early whenprefix
is empty.
- UserInterface/Views/SpreadsheetStyleProperty.js:
(WI.SpreadsheetStyleProperty.prototype._nameCompletionDataProvider):
(WI.SpreadsheetStyleProperty.prototype._valueCompletionDataProvider):
- UserInterface/Views/SpreadsheetTextField.js:
(WI.SpreadsheetTextField):
(WI.SpreadsheetTextField.prototype._handleKeyDown):
(WI.SpreadsheetTextField.prototype._updateCompletions):
- 1:06 PM Changeset in webkit [242217] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Canvas: enabling auto-capture if the frame count is empty triggers an assertion
https://bugs.webkit.org/show_bug.cgi?id=195060
Reviewed by Matt Baker.
- UserInterface/Views/CanvasOverviewContentView.js:
(WI.CanvasOverviewContentView.prototype._setRecordingAutoCaptureFrameCount):
(WI.CanvasOverviewContentView.prototype._updateRecordingAutoCaptureCheckboxLabel):
(WI.CanvasOverviewContentView.prototype._handleRecordingAutoCaptureCheckedDidChange):
- 12:52 PM Changeset in webkit [242216] by
-
- 2 edits in trunk/Tools
Several PasteImage API tests are flaky
https://bugs.webkit.org/show_bug.cgi?id=195160
Reviewed by Tim Horton.
Some of these tests, such as PasteTIFFImage, don't wait for the inserted image element to finish loading before
querying the image element's size; a few other tests, such as PastePNGFile, are racy since they may begin
listening for a "load" event after image load is already complete.
To address this, make these tests first register a "load" event handler, then run script to insert an image
element into the document, and finally wait until the load event is observed before checking image size.
- TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm:
- 12:48 PM Changeset in webkit [242215] by
-
- 2 edits in trunk/Source/JavaScriptCore
cloop.rb shift mask should depend on the word size being shifted.
https://bugs.webkit.org/show_bug.cgi?id=195181
<rdar://problem/48484164>
Reviewed by Yusuke Suzuki.
Previously, we're always masking the shift amount with 0x1f. This is only correct
for 32-bit words. For 64-bit words, the mask should be 0x3f. For pointer sized
shifts, the mask depends on sizeof(uintptr_t).
- offlineasm/cloop.rb:
- 12:44 PM Changeset in webkit [242214] by
-
- 2 edits in branches/safari-607-branch/Source/WebCore
Cherry-pick r242204. rdar://problem/48483754
Locale names can be nullptr
https://bugs.webkit.org/show_bug.cgi?id=195171
<rdar://problem/48262376>
Reviewed by Dean Jackson.
Nullptr can't be used in keys to HashMaps, so take an early out in this case.
This is a partial revert of r241288.
- platform/graphics/cocoa/FontDescriptionCocoa.cpp: (WebCore::FontDescription::platformResolveGenericFamily):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@242204 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 12:17 PM Changeset in webkit [242213] by
-
- 2 edits in trunk/JSTests
Unreviewed, reduce the count in the stress/read-dead-bytecode-locals-in-must-handle-values2.js
https://bugs.webkit.org/show_bug.cgi?id=195144
1e8 takes too much time in the Debug build. I tried 1e5 with the old Debug build and it successfully reproduced the issue.
Change the number from 1e8 to 1e5.
- stress/read-dead-bytecode-locals-in-must-handle-values2.js:
(foo):
- 11:58 AM Changeset in webkit [242212] by
-
- 5 edits in trunk/Source/WebCore
Unreviewed, rolling out r242210.
https://bugs.webkit.org/show_bug.cgi?id=195179
it broke hover menus on losaltosonline.com (Requested by zalan
on #webkit).
Reverted changeset:
"[ContentChangeObserver] Move timer removal code from
DOMWindow::clearTimeout to DOMTimer::removeById"
https://bugs.webkit.org/show_bug.cgi?id=195143
https://trac.webkit.org/changeset/242210
Patch by Commit Queue <commit-queue@webkit.org> on 2019-02-28
- 11:25 AM Changeset in webkit [242211] by
-
- 2 edits in branches/safari-607-branch/Source/WebCore
Apply patch. rdar://problem/48464974
- 11:19 AM Changeset in webkit [242210] by
-
- 5 edits in trunk/Source/WebCore
[ContentChangeObserver] Move timer removal code from DOMWindow::clearTimeout to DOMTimer::removeById
https://bugs.webkit.org/show_bug.cgi?id=195143
<rdar://problem/48462351>
Reviewed by Simon Fraser.
Currently DOMWindow::clearTimeout() is the only callsite that we are interested in, but this is more future-proof.
- page/DOMTimer.cpp:
(WebCore::DOMTimer::removeById):
- page/DOMWindow.cpp:
(WebCore::DOMWindow::clearTimeout):
- page/ios/ContentChangeObserver.cpp:
(WebCore::ContentChangeObserver::startObservingDOMTimerExecute):
(WebCore::ContentChangeObserver::stopObservingDOMTimerExecute):
(WebCore::ContentChangeObserver::didRemoveDOMTimer):
(WebCore::ContentChangeObserver::removeDOMTimer): Deleted.
- page/ios/ContentChangeObserver.h:
- 11:09 AM Changeset in webkit [242209] by
-
- 7 edits1 add in trunk
Fix Resource Timing buffer edge cases for WPT
https://bugs.webkit.org/show_bug.cgi?id=193213
Patch by Charles Vazac <cvazac@akamai.com> on 2019-02-28
Reviewed by Youenn Fablet.
LayoutTests/imported/w3c:
- web-platform-tests/resource-timing/buffer-full-add-after-full-event.html:
- web-platform-tests/resource-timing/buffer-full-add-entries-during-callback-that-drop-expected.txt:
- web-platform-tests/resource-timing/buffer-full-add-then-clear-expected.txt:
- web-platform-tests/resource-timing/buffer-full-then-increased-expected.txt:
Source/WebCore:
Test coverage by LayoutTests/imported/w3c/web-platform-tests/resource-timing/buffer*.html
- page/Performance.cpp:
(WebCore::Performance::resourceTimingBufferFullTimerFired): Only dispatch the
resourcetimingbufferfull event if the buffer is still full (as it may have been cleared or
expanded). Also, avoid infinite loops if we aren't able to decrease the number of entries in
the secondary buffer.
- 10:51 AM Changeset in webkit [242208] by
-
- 2 edits in trunk/Tools
Flaky API Test: TestWebKitAPI.ProcessSwap.PageZoomLevelAfterSwap
https://bugs.webkit.org/show_bug.cgi?id=195107
Reviewed by Alex Christensen.
Give some time for the zoom level to get restored.
- TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
- 10:44 AM Changeset in webkit [242207] by
-
- 5 edits1 add in trunk
[Curl] HTTP Body is missing with redirection.
https://bugs.webkit.org/show_bug.cgi?id=191651
Patch by Takashi Komori <Takashi.Komori@sony.com> on 2019-02-28
Reviewed by Don Olmstead.
Source/WebCore:
Implement updateFromDelegatePreservingOldProperties for curl port.
Tests: http/tests/navigation/post-301-response.html
http/tests/navigation/post-302-response.html
http/tests/navigation/post-303-response.html
http/tests/navigation/post-307-response.html
http/tests/navigation/post-308-response.html
- platform/Curl.cmake:
- platform/network/curl/ResourceRequest.h:
(WebCore::ResourceRequest::updateFromDelegatePreservingOldProperties): Deleted.
- platform/network/curl/ResourceRequestCurl.cpp: Added.
(WebCore::ResourceRequest::updateFromDelegatePreservingOldProperties):
LayoutTests:
- platform/wincairo/TestExpectations:
- 10:41 AM Changeset in webkit [242206] by
-
- 14 edits in branches/safari-607.1.40.2-branch
Cherry-pick r242200. rdar://problem/48464986
[watchOS] Disable Parental Controls content filtering
<rdar://problem/48464986>
Rubber-stamped by Beth Dakin.
Source/JavaScriptCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebCore/PAL:
- Configurations/FeatureDefines.xcconfig:
Source/WebKit:
- Configurations/FeatureDefines.xcconfig:
Source/WebKitLegacy/mac:
- Configurations/FeatureDefines.xcconfig:
Source/WTF:
- wtf/Platform.h:
Tools:
- TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
git-svn-id: https://svn.webkit.org/repository/webkit/branches/safari-607-branch@242200 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 10:28 AM Changeset in webkit [242205] by
-
- 43 edits in trunk
[CoordinatedGraphics] Remove COORDINATED_GRAPHICS_THREADED option
https://bugs.webkit.org/show_bug.cgi?id=195159
Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2019-02-28
Reviewed by Don Olmstead.
.:
- Source/cmake/OptionsGTK.cmake:
- Source/cmake/OptionsPlayStation.cmake:
- Source/cmake/OptionsWPE.cmake:
Source/WebCore:
Use COORDINATED_GRAPHICS instead.
- platform/graphics/GraphicsContext3D.h:
- platform/graphics/PlatformLayer.h:
- platform/graphics/cairo/ImageBufferCairo.cpp:
(WebCore::ImageBufferData::ImageBufferData):
(WebCore::ImageBufferData::~ImageBufferData):
- platform/graphics/cairo/ImageBufferDataCairo.h:
- platform/graphics/nicosia/NicosiaPaintingEngineThreaded.cpp:
- platform/graphics/nicosia/NicosiaPaintingEngineThreaded.h:
- platform/graphics/nicosia/texmap/NicosiaGC3DLayer.cpp:
(Nicosia::GC3DLayer::swapBuffersIfNeeded):
- platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
(WebCore::GraphicsContext3D::reshapeFBOs):
- platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
(WebCore::GraphicsContext3D::prepareTexture):
- platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:
(WebCore::GraphicsContext3D::reshapeFBOs):
- platform/graphics/texmap/GraphicsContext3DTextureMapper.cpp:
(WebCore::GraphicsContext3D::GraphicsContext3D):
(WebCore::GraphicsContext3D::~GraphicsContext3D):
- platform/graphics/texmap/TextureMapperGC3DPlatformLayer.cpp:
(WebCore::TextureMapperGC3DPlatformLayer::TextureMapperGC3DPlatformLayer):
(WebCore::TextureMapperGC3DPlatformLayer::~TextureMapperGC3DPlatformLayer):
- platform/graphics/texmap/TextureMapperGC3DPlatformLayer.h:
- platform/graphics/texmap/TextureMapperPlatformLayerBuffer.cpp:
- platform/graphics/texmap/TextureMapperPlatformLayerBuffer.h:
- platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp:
- platform/graphics/texmap/TextureMapperPlatformLayerProxy.h:
- platform/graphics/texmap/TextureMapperPlatformLayerProxyProvider.h:
- platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::setContentsNeedsDisplay):
(WebCore::CoordinatedGraphicsLayer::setContentsToPlatformLayer):
(WebCore::CoordinatedGraphicsLayer::updatePlatformLayer):
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::paintsIntoWindow const):
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::shouldCompositeOverflowControls const):
Source/WebKit:
Use COORDINATED_GRAPHICS instead.
- Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
(WebKit::CoordinatedGraphicsScene::onNewBufferAvailable):
- Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h:
- Shared/CoordinatedGraphics/SimpleViewportController.cpp:
- Shared/CoordinatedGraphics/SimpleViewportController.h:
- Shared/CoordinatedGraphics/threadedcompositor/CompositingRunLoop.cpp:
- Shared/CoordinatedGraphics/threadedcompositor/CompositingRunLoop.h:
- Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:
- Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h:
- Shared/CoordinatedGraphics/threadedcompositor/ThreadedDisplayRefreshMonitor.cpp:
- Shared/CoordinatedGraphics/threadedcompositor/ThreadedDisplayRefreshMonitor.h:
- WebProcess/WebPage/AcceleratedDrawingArea.cpp:
(WebKit::AcceleratedDrawingArea::mainFrameContentSizeChanged):
(WebKit::AcceleratedDrawingArea::enterAcceleratedCompositingMode):
- WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.cpp:
- WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.h:
- WebProcess/WebPage/DrawingAreaImpl.cpp:
(WebKit::DrawingAreaImpl::updatePreferences):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::sendViewportAttributesChanged):
(WebKit::WebPage::viewportPropertiesDidChange):
- WebProcess/gtk/WebProcessMainGtk.cpp:
- 10:22 AM Changeset in webkit [242204] by
-
- 2 edits in trunk/Source/WebCore
Locale names can be nullptr
https://bugs.webkit.org/show_bug.cgi?id=195171
<rdar://problem/48262376>
Reviewed by Dean Jackson.
Nullptr can't be used in keys to HashMaps, so take an early out in this case.
This is a partial revert of r241288.
- platform/graphics/cocoa/FontDescriptionCocoa.cpp:
(WebCore::FontDescription::platformResolveGenericFamily):
- 10:15 AM Changeset in webkit [242203] by
-
- 9 edits in trunk
Stop using legacy IDB path by default when creating WebProcessPool from websiteDataStore
https://bugs.webkit.org/show_bug.cgi?id=194958
Reviewed by Geoffrey Garen.
Source/WebKit:
ProcessPoolConfiguration::createWithWebsiteDataStoreConfiguration should not use fixed IDB path.
- UIProcess/API/APIProcessPoolConfiguration.cpp:
(API::ProcessPoolConfiguration::createWithWebsiteDataStoreConfiguration):
- UIProcess/API/APIWebsiteDataStore.cpp:
(API::WebsiteDataStore::createLegacy):
(API::indexedDBDatabaseDirectory):
- UIProcess/API/APIWebsiteDataStore.h:
- UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
(-[WKWebsiteDataStore _indexedDBDatabaseDirectory]):
- UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:
- UIProcess/WebProcessPool.cpp:
(WebKit::legacyWebsiteDataStoreConfiguration):
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/IndexedDBUserDelete.mm:
(TEST):
- 9:45 AM Changeset in webkit [242202] by
-
- 11 edits in trunk/LayoutTests
Fix timing out tests following r241747
(https://bugs.webkit.org/show_bug.cgi?id=193599)
Fix up the path to ui-helper.js so that we actually load it.
- fast/forms/ios/focus-button.html:
- fast/forms/ios/focus-checkbox.html:
- fast/forms/ios/focus-checked-checkbox.html:
- fast/forms/ios/focus-checked-radio.html:
- fast/forms/ios/focus-radio.html:
- fast/forms/ios/focus-reset-button.html:
- fast/forms/ios/focus-search-field.html:
- fast/forms/ios/focus-submit-button.html:
- fast/forms/ios/focus-text-field.html:
- fast/forms/ios/focus-textarea.html:
- 9:34 AM Changeset in webkit [242201] by
-
- 2 edits in trunk/JSTests
Test times out on ARM/MIPS
https://bugs.webkit.org/show_bug.cgi?id=195168
Unreviewed. Skip test on ARM/MIPS.
- stress/read-dead-bytecode-locals-in-must-handle-values2.js:
- 9:31 AM Changeset in webkit [242200] by
-
- 14 edits in branches/safari-607-branch
[watchOS] Disable Parental Controls content filtering
<rdar://problem/48464986>
Rubber-stamped by Beth Dakin.
Source/JavaScriptCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebCore/PAL:
- Configurations/FeatureDefines.xcconfig:
Source/WebKit:
- Configurations/FeatureDefines.xcconfig:
Source/WebKitLegacy/mac:
- Configurations/FeatureDefines.xcconfig:
Source/WTF:
- wtf/Platform.h:
Tools:
- TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
- 5:17 AM Changeset in webkit [242199] by
-
- 8 edits1 move1 add5 deletes in trunk/Source/WebKit
[CoordinatedGraphics] Unify all LayerTreeHost classes
https://bugs.webkit.org/show_bug.cgi?id=195094
Reviewed by Žan Doberšek.
There's no reason to have 3 classes, since currently LayerTreeHost is only used by coordinated graphics based
ports.
- PlatformWin.cmake:
- SourcesGTK.txt:
- SourcesWPE.txt:
- WebProcess/WebPage/AcceleratedDrawingArea.cpp:
(WebKit::AcceleratedDrawingArea::enterAcceleratedCompositingMode):
(WebKit::AcceleratedDrawingArea::exitAcceleratedCompositingModeNow):
- WebProcess/WebPage/AcceleratedDrawingArea.h:
- WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp: Removed.
- WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h: Removed.
- WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.cpp: Renamed from Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp.
(WebKit::LayerTreeHost::LayerTreeHost):
(WebKit::LayerTreeHost::~LayerTreeHost):
(WebKit::LayerTreeHost::setLayerFlushSchedulingEnabled):
(WebKit::LayerTreeHost::scheduleLayerFlush):
(WebKit::LayerTreeHost::cancelPendingLayerFlush):
(WebKit::LayerTreeHost::layerFlushTimerFired):
(WebKit::LayerTreeHost::setRootCompositingLayer):
(WebKit::LayerTreeHost::setViewOverlayRootLayer):
(WebKit::LayerTreeHost::invalidate):
(WebKit::LayerTreeHost::scrollNonCompositedContents):
(WebKit::LayerTreeHost::forceRepaint):
(WebKit::LayerTreeHost::forceRepaintAsync):
(WebKit::LayerTreeHost::sizeDidChange):
(WebKit::LayerTreeHost::pauseRendering):
(WebKit::LayerTreeHost::resumeRendering):
(WebKit::LayerTreeHost::graphicsLayerFactory):
(WebKit::LayerTreeHost::contentsSizeChanged):
(WebKit::LayerTreeHost::didChangeViewportAttributes):
(WebKit::LayerTreeHost::didChangeViewport):
(WebKit::LayerTreeHost::setIsDiscardable):
(WebKit::LayerTreeHost::setNativeSurfaceHandleForCompositing):
(WebKit::LayerTreeHost::deviceOrPageScaleFactorChanged):
(WebKit::LayerTreeHost::createDisplayRefreshMonitor):
(WebKit::LayerTreeHost::didFlushRootLayer):
(WebKit::LayerTreeHost::commitSceneState):
(WebKit::LayerTreeHost::frameComplete):
(WebKit::LayerTreeHost::nativeSurfaceHandleForCompositing):
(WebKit::LayerTreeHost::didDestroyGLContext):
(WebKit::LayerTreeHost::willRenderFrame):
(WebKit::LayerTreeHost::didRenderFrame):
(WebKit::LayerTreeHost::requestDisplayRefreshMonitorUpdate):
(WebKit::LayerTreeHost::handleDisplayRefreshMonitorUpdate):
(WebKit::LayerTreeHost::renderNextFrame):
- WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.h: Renamed from Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.h.
- WebProcess/WebPage/DrawingAreaImpl.cpp:
(WebKit::DrawingAreaImpl::setNeedsDisplay):
(WebKit::DrawingAreaImpl::setNeedsDisplayInRect):
- WebProcess/WebPage/LayerTreeHost.cpp: Removed.
- WebProcess/WebPage/LayerTreeHost.h: Removed.
- WebPage/win/LayerTreeHost.h: Added.
- 4:28 AM Changeset in webkit [242198] by
-
- 3 edits in trunk/Tools
[ews-app] Update method to save build to handle builder_display_name
https://bugs.webkit.org/show_bug.cgi?id=195047
Reviewed by Dewei Zhu.
- BuildSlaveSupport/ews-app/ews/models/build.py: Updated to handle builder_name and builder_display_name.
- BuildSlaveSupport/ews-app/ews/views/results.py: Ditto.
- 1:02 AM Changeset in webkit [242197] by
-
- 5 edits in trunk/Source/WebInspectorUI
Web Inspector: Revert -webkit-border-end changes that are unreliable
https://bugs.webkit.org/show_bug.cgi?id=195149
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2019-02-28
Reviewed by Matt Baker.
- UserInterface/Views/CPUUsageIndicatorView.css:
(.cpu-usage-indicator-view > .details):
(body[dir=ltr] .cpu-usage-indicator-view > .details):
(body[dir=rtl] .cpu-usage-indicator-view > .details):
- UserInterface/Views/CPUUsageStackedView.css:
(.cpu-usage-stacked-view > .details):
(body[dir=ltr] .cpu-usage-stacked-view > .details):
(body[dir=rtl] .cpu-usage-stacked-view > .details):
- UserInterface/Views/CPUUsageView.css:
(.cpu-usage-view > .details):
(body[dir=ltr] .cpu-usage-view > .details):
(body[dir=rtl] .cpu-usage-view > .details):
- UserInterface/Views/MemoryCategoryView.css:
(.memory-category-view > .details):
(body[dir=ltr] .memory-category-view > .details):
(body[dir=rtl] .memory-category-view > .details):
- 12:27 AM Changeset in webkit [242196] by
-
- 12 edits in trunk
[Web GPU] Enable Web GPU only on 64-bit
https://bugs.webkit.org/show_bug.cgi?id=195139
Because Metal is only supported on 64 bit apps.
Unreviewed build fix.
Source/JavaScriptCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebCore/PAL:
- Configurations/FeatureDefines.xcconfig:
Source/WebKit:
- Configurations/FeatureDefines.xcconfig:
Source/WebKitLegacy/mac:
- Configurations/FeatureDefines.xcconfig:
Tools:
- TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
- 12:07 AM Changeset in webkit [242195] by
-
- 3 edits in trunk/Source/WebInspectorUI
Web Inspector: Cleanup some Chart code
https://bugs.webkit.org/show_bug.cgi?id=195147
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2019-02-28
Reviewed by Matt Baker.
- UserInterface/Views/RangeChart.js:
(WI.RangeChart.prototype.layout):
(WI.RangeChart):
- UserInterface/Views/StackedColumnChart.js:
(WI.StackedColumnChart.prototype.layout):
(WI.StackedColumnChart):