blob: 83b890ec2544f84bdd5c4faf0cd45123ce589b29 [file] [log] [blame]
2020-03-29 Darin Adler <darin@apple.com>
Move TextIterator::rangeFromLocationAndLength off of live ranges
https://bugs.webkit.org/show_bug.cgi?id=209408
Reviewed by Antti Koivisto.
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::checkTextOfParagraph): Use CharacterRange,
resolveCharacterLocation/Range.
(WebEditorClient::checkGrammarOfString): Ditto.
(core): Ditto.
(WebEditorClient::updateSpellingUIWithGrammarString): Ditto.
(WebEditorClient::handleAcceptedCandidateWithSoftSpaces): Ditto.
* WebView/WebFrame.mm:
(-[WebFrame _convertToDOMRange:rangeIsRelativeTo:]): Ditto.
* WebView/WebView.mm:
(textCheckingResultFromNSTextCheckingResult): Ditto.
2020-03-27 Wenson Hsieh <wenson_hsieh@apple.com>
DragData::containsURL() should avoid reading URL strings from the pasteboard
https://bugs.webkit.org/show_bug.cgi?id=209642
Work towards <rdar://problem/59611585>
Reviewed by Tim Horton.
See WebCore/ChangeLog for more details.
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::containsURLStringSuitableForLoading):
(WebPlatformStrategies::urlStringSuitableForLoading):
2020-03-25 Wenson Hsieh <wenson_hsieh@apple.com>
Avoid querying pasteboard strings while dragging content over a potential drop target
https://bugs.webkit.org/show_bug.cgi?id=209531
Reviewed by Tim Horton and Ryosuke Niwa.
Add PasteboardStrategy plumbing; see WebCore for more details.
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::containsStringSafeForDOMToReadForType):
2020-03-23 Wenson Hsieh <wenson_hsieh@apple.com>
Remove the unused method PasteboardStrategy::uniqueName()
https://bugs.webkit.org/show_bug.cgi?id=209452
Reviewed by Tim Horton.
See WebCore/ChangeLog for more detail.
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::uniqueName): Deleted.
2020-03-23 Darin Adler <darin@apple.com>
Change TextIterator::rangeLength to not require a live range
https://bugs.webkit.org/show_bug.cgi?id=209207
Reviewed by Antti Koivisto.
* WebCoreSupport/WebEditorClient.mm:
(insertionPointFromCurrentSelection): Use characterCount.
(WebEditorClient::requestCandidatesForSelection): Ditto.
* WebView/WebFrame.mm:
(-[WebFrame _convertToDOMRange:rangeIsRelativeTo:]): Ditto.
2020-03-23 youenn fablet <youenn@apple.com>
Rename blankURL to aboutBlankURL
https://bugs.webkit.org/show_bug.cgi?id=209344
Reviewed by Darin Adler.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::updateGlobalHistory):
* WebView/WebFrame.mm:
(-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):
2020-03-20 Jer Noble <jer.noble@apple.com>
Ensure media cache directory is created before passing to AVURLAsset.
https://bugs.webkit.org/show_bug.cgi?id=209341
Reviewed by Eric Carlson.
MediaPlayerPrivateAVFoundaionObjC will no longer create an asset cache in a temporary
directory by default; ensure that it's media cache directory is set during initialization.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
2020-03-20 Timothy Horton <timothy_horton@apple.com>
Improve the previous build fix.
* WebCoreSupport/WebFrameLoaderClient.mm:
Darin points out that we have USE(WEB_THREAD), so might as well use it!
2020-03-20 Timothy Horton <timothy_horton@apple.com>
Fix the build.
* WebCoreSupport/WebFrameLoaderClient.mm:
2020-03-20 Tim Horton <timothy_horton@apple.com>
Upstream a variety of Cocoa-platform HAVE and ENABLE macros
https://bugs.webkit.org/show_bug.cgi?id=209307
Reviewed by Andy Estes.
* Configurations/FeatureDefines.xcconfig:
2020-03-20 Jacob Uphoff <jacob_uphoff@apple.com>
Unreviewed, reverting r258748.
This commit broke the Catalina build
Reverted changeset:
"Upstream a variety of Cocoa-platform HAVE and ENABLE macros"
https://bugs.webkit.org/show_bug.cgi?id=209307
https://trac.webkit.org/changeset/258748
2020-03-19 Tim Horton <timothy_horton@apple.com>
Upstream a variety of Cocoa-platform HAVE and ENABLE macros
https://bugs.webkit.org/show_bug.cgi?id=209307
Reviewed by Andy Estes.
* Configurations/FeatureDefines.xcconfig:
2020-03-19 youenn fablet <youenn@apple.com>
Make URL::path() return a StringView
https://bugs.webkit.org/show_bug.cgi?id=209173
Reviewed by Alex Christensen.
* Misc/WebNSURLExtras.mm:
(-[NSString _webkit_stringByReplacingValidPercentEscapes]):
2020-03-18 youenn fablet <youenn@apple.com>
FrameLoader should own its FrameLoaderClient
https://bugs.webkit.org/show_bug.cgi?id=208918
Reviewed by Geoff Garen.
Update according new Frame/FrameLoader constructors and FrameLoaderClient interface.
* WebCoreSupport/WebFrameLoaderClient.h:
(WebFrameLoaderClient::setWebFrame):
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::~WebFrameLoaderClient):
(WebFrameLoaderClient::cancelledError const):
(WebFrameLoaderClient::blockedError const):
(WebFrameLoaderClient::blockedByContentBlockerError const):
(WebFrameLoaderClient::cannotShowURLError const):
(WebFrameLoaderClient::interruptedForPolicyChangeError const):
(WebFrameLoaderClient::blockedByContentFilterError const):
(WebFrameLoaderClient::cannotShowMIMETypeError const):
(WebFrameLoaderClient::fileDoesNotExistError const):
(WebFrameLoaderClient::pluginWillHandleLoadError const):
(WebFrameLoaderClient::shouldFallBack const):
(WebFrameLoaderClient::userAgent const):
* WebView/WebFrame.mm:
(+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]):
(+[WebFrame _createMainFrameWithPage:frameName:frameView:]):
(+[WebFrame _createMainFrameWithSimpleHTMLDocumentWithPage:frameView:style:]):
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
2020-03-17 Chris Dumez <cdumez@apple.com>
REGRESSION: [ macOS wk1 ] ASSERTION FAILED: _notifications.contains(notificationID) imported/w3c/web-platform-tests/notifications/constructor-basic.html is flaky crashing
https://bugs.webkit.org/show_bug.cgi?id=207307
<rdar://problem/59206964>
Reviewed by Alex Christensen.
* WebView/WebNotification.h:
* WebView/WebNotification.mm:
(-[WebNotification finalize]):
2020-03-17 Commit Queue <commit-queue@webkit.org>
Unreviewed, reverting r258339.
https://bugs.webkit.org/show_bug.cgi?id=209179
"Is it sometimes breaking rendering" (Requested by youenn on
#webkit).
Reverted changeset:
"FrameLoader should own its FrameLoaderClient"
https://bugs.webkit.org/show_bug.cgi?id=208918
https://trac.webkit.org/changeset/258339
2020-03-15 Darin Adler <darin@apple.com>
Move most of TextIterator off of live ranges
https://bugs.webkit.org/show_bug.cgi?id=209129
Reviewed by Antti Koivisto.
* WebView/WebFrame.mm: Removed an include.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _legacyAttributedStringFrom:offset:to:offset:]):
Add casts to unsigned.
* WebView/WebTextIterator.mm:
(-[WebTextIterator initWithRange:]): Leave _private->_textIterator
as a nullptr if the passed-in range is nil since we no longer offer
a way to create an empty TextIterator; other clients don't seem to
need one.
(-[WebTextIterator advance]): Check _private->_textIterator for null.
(-[WebTextIterator atEnd]): Ditto.
(-[WebTextIterator currentRange]): Ditto.
(-[WebTextIterator currentTextPointer]): Ditto.
(-[WebTextIterator currentTextLength]): Ditto.
(-[WebTextIterator currentNode]): Ditto.
(-[WebTextIterator currentText]): Ditto.
2020-03-16 Timothy Horton <timothy_horton@apple.com>
Always include System.framework in WebKitLegacy's CPLUSPLUSFLAGS
https://bugs.webkit.org/show_bug.cgi?id=209147
Reviewed by Darin Adler.
* Configurations/Base.xcconfig:
* Configurations/WebKitLegacy.xcconfig:
Bring WebKitLegacy's xcconfigs in line with all the other projects,
adding System.framework globally, and in Base.xcconfig.
2020-03-16 Simon Fraser <simon.fraser@apple.com>
Remove FrameView::scheduleRenderingUpdate()
https://bugs.webkit.org/show_bug.cgi?id=209109
Reviewed by Antti Koivisto.
FrameView::scheduleRenderingUpdate() called through to compositor(), but that just
turned around to call scheduleRenderingUpdate() via Page. So Remove it and change
callers to call Page::scheduleRenderingUpdate() directly.
* WebView/WebView.mm:
2020-03-13 Sergio Villar Senin <svillar@igalia.com>
[WebXR] IDLs, stubs and build configuration for WPE
https://bugs.webkit.org/show_bug.cgi?id=208702
Reviewed by Dean Jackson.
* Configurations/FeatureDefines.xcconfig: Added ENABLE_WEBXR, off by default.
2020-03-15 Yusuke Suzuki <ysuzuki@apple.com>
Should not use variable-length-array (VLA)
https://bugs.webkit.org/show_bug.cgi?id=209043
Reviewed by Mark Lam.
* Configurations/Base.xcconfig:
2020-03-12 Brent Fulgham <bfulgham@apple.com>
Correct preference handling and naming conventions in AppBound browsing preferences
https://bugs.webkit.org/show_bug.cgi?id=209031
<rdar://problem/60396298>
Reviewed by John Wilander.
This patch consistently uses the correct naming scheme for WebKit Internal Debug flags.
They should be 'WebKitDebug', not 'WebKitInternal' or 'WebKitInternalDebug'.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences isInAppBrowserPrivacyEnabled]):
(-[WebPreferences setInAppBrowserPrivacyEnabled:]):
(-[WebPreferences needsInAppBrowserPrivacyQuirks]):
(-[WebPreferences setNeedsInAppBrowserPrivacyQuirks:]):
2020-03-12 youenn fablet <youenn@apple.com>
FrameLoader should own its FrameLoaderClient
https://bugs.webkit.org/show_bug.cgi?id=208918
Reviewed by Geoffrey Garen.
Update according new Frame/FrameLoader constructors and FrameLoaderClient interface.
* WebCoreSupport/WebFrameLoaderClient.h:
(WebFrameLoaderClient::setWebFrame):
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::~WebFrameLoaderClient):
(WebFrameLoaderClient::cancelledError const):
(WebFrameLoaderClient::blockedError const):
(WebFrameLoaderClient::blockedByContentBlockerError const):
(WebFrameLoaderClient::cannotShowURLError const):
(WebFrameLoaderClient::interruptedForPolicyChangeError const):
(WebFrameLoaderClient::blockedByContentFilterError const):
(WebFrameLoaderClient::cannotShowMIMETypeError const):
(WebFrameLoaderClient::fileDoesNotExistError const):
(WebFrameLoaderClient::pluginWillHandleLoadError const):
(WebFrameLoaderClient::shouldFallBack const):
(WebFrameLoaderClient::userAgent const):
* WebView/WebFrame.mm:
(+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]):
(+[WebFrame _createMainFrameWithPage:frameName:frameView:]):
(+[WebFrame _createMainFrameWithSimpleHTMLDocumentWithPage:frameView:style:]):
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
2020-03-08 Darin Adler <darin@apple.com>
Make TextIterator::range return a SimpleRange
https://bugs.webkit.org/show_bug.cgi?id=208797
Reviewed by Don Olmstead.
* WebView/WebTextIterator.mm:
(-[WebTextIterator currentRange]): Use createLiveRange.
2020-03-09 Simon Fraser <simon.fraser@apple.com>
ASSERT(!m_textCheckingRequest) on editing/spelling/spellcheck-async-remove-frame.html
https://bugs.webkit.org/show_bug.cgi?id=126606
Reviewed by Wenson Hsieh.
SpellChecker's sequence numbers need to be unique between frames, because they are sent out
to EditorClient which may be one per web view, so use a static to hold the current
sequence number.
Also convert from int to TextCheckingSequence to make them easier to find, and use
Markable and Optional in TextCheckingRequestData to represent the unset state.
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(-[WebEditorSpellCheckResponder initWithClient:identifier:results:]):
(-[WebEditorSpellCheckResponder perform]):
(WebEditorClient::didCheckSucceed):
(WebEditorClient::requestCheckingOfString):
(-[WebEditorSpellCheckResponder initWithClient:sequence:results:]): Deleted.
2020-03-09 Don Olmstead <don.olmstead@sony.com>
Remove obsolete feature flags
https://bugs.webkit.org/show_bug.cgi?id=208830
Reviewed by Alex Christensen.
Remove ENABLE_CUSTOM_SCHEME_HANDLER and ENABLE_MAC_VIDEO_TOOLBOX since they
are no longer used.
* Configurations/FeatureDefines.xcconfig:
* WebView/WebPreferences.mm: ENABLE(WIRELESS_TARGET_PLAYBACK) -> ENABLE(WIRELESS_PLAYBACK_TARGET)
(+[WebPreferences initialize]):
(-[WebPreferences allowsAirPlayForMediaPlayback]):
(-[WebPreferences setAllowsAirPlayForMediaPlayback:]):
2020-03-09 Antoine Quint <graouts@apple.com>
Remove the compile-time flag for Pointer Events
https://bugs.webkit.org/show_bug.cgi?id=208821
<rdar://problem/60223471>
Reviewed by Dean Jackson.
* Configurations/FeatureDefines.xcconfig:
2020-03-07 Darin Adler <darin@apple.com>
Begin moving off of live ranges for WebKit internals
https://bugs.webkit.org/show_bug.cgi?id=208432
Reviewed by Daniel Bates.
* WebCoreSupport/WebContextMenuClient.mm: Added include.
* WebView/WebFrame.mm: Ditto.
(-[WebFrame _convertToNSRange:]): Initialized out arguments.
2020-03-07 Brent Fulgham <bfulgham@apple.com>
Create a flag to disable in-app browser quirks
https://bugs.webkit.org/show_bug.cgi?id=208777
<rdar://problem/60062197>
Reviewed by Simon Fraser.
This patch makes the following changes:
1. Adds a new flag 'NeedsInAppBrowserPrivacyQuirks' to allow quirks to be toggled
during testing.
2. Reclassify this new flag, and the existing 'InAppBrowserPrivacyEnabled' flag from
'settings' to Internal Debug settings
The renamed flags are covered by existing tests.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]): Add new flag.
(-[WebPreferences needsInAppBrowserPrivacyQuirks]): Ditto.
(-[WebPreferences setNeedsInAppBrowserPrivacyQuirks:]): Ditto.
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
2020-03-07 Daniel Bates <dabates@apple.com>
[iOS] Implement support for dictation alternatives
https://bugs.webkit.org/show_bug.cgi?id=208720
<rdar://problem/58540114>
Reviewed by Brent Fulgham.
Part 3
Guard code that requires USE(AUTOCORRECTION_PANEL) to be enabled. Specifically, -_showDictationAlternativeUI
calls -handleAcceptedAlternativeText, but the latter is only compiled in when USE(AUTOCORRECTION_PANEL)
is enabled.
Note that I haven't enable USE_DICTATION_ALTERNATIVES on iOS. So, this code isn't being
compiled for iOS. I will do that in a subsequent change once after all the code is in place
to do so.
* WebView/WebView.mm:
2020-03-05 Sam Weinig <weinig@apple.com>
Move JavaScriptCore related feature defines from FeatureDefines.xcconfig to PlatformEnableCocoa.h
https://bugs.webkit.org/show_bug.cgi?id=207436
<rdar://problem/59296762>
Reviewed by Darin Adler.
* Configurations/FeatureDefines.xcconfig:
Remove JSC related defines.
2020-03-06 Simon Fraser <simon.fraser@apple.com>
Flaky Test: editing/spelling/spellcheck-async.html
https://bugs.webkit.org/show_bug.cgi?id=160571
Reviewed by Ryosuke Niwa.
Second try to fix this crash; the WebEditorClient can go away before all the NSSpellChecker
callbacks are done (which happens off the main thread), so store a WeakPtr<WebEditorClient>.
We have to create the WeakPtr on the main thread, and it gets copied into the first block.
* WebCoreSupport/WebEditorClient.mm:
(-[WebEditorSpellCheckResponder initWithClient:sequence:results:]):
(-[WebEditorSpellCheckResponder perform]):
(WebEditorClient::requestCheckingOfString):
2020-03-06 Simon Fraser <simon.fraser@apple.com>
Flaky Test: editing/spelling/spellcheck-async.html
https://bugs.webkit.org/show_bug.cgi?id=160571
Reviewed by Tim Horton.
The old code called -performSelector:target:... with an autoreleased target,
and nothing keeps the target alive until the call to -perform on the main thread.
Change this to a block which copies in a RetainPtr<> to make ownership clearer
and fix the crash.
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::requestCheckingOfString):
2020-03-06 Jer Noble <jer.noble@apple.com>
[GPUP] Convert CDMFactory away from platformStrategies() and use WebProcess settings instead
https://bugs.webkit.org/show_bug.cgi?id=208699
Reviewed by Youenn Fablet.
Remove Legacy CDM support from WebPlatformStrategies.
* WebCoreSupport/WebPlatformStrategies.mm:
2020-03-06 Antoine Quint <graouts@webkit.org>
Remove the experimental flag for Pointer Events
https://bugs.webkit.org/show_bug.cgi?id=208655
<rdar://problem/60090545>
Reviewed by Dean Jackson.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences syntheticEditingCommandsEnabled]):
(-[WebPreferences setSyntheticEditingCommandsEnabled:]):
(-[WebPreferences pointerEventsEnabled]): Deleted.
(-[WebPreferences setPointerEventsEnabled:]): Deleted.
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
2020-03-05 youenn fablet <youenn@apple.com>
Export NowPlaying commands to GPUProcess when media playing in GPUProcess is enabled
https://bugs.webkit.org/show_bug.cgi?id=208568
Reviewed by Eric Carlson.
Use in-process now playing implementation.
* WebCoreSupport/WebPlatformStrategies.mm:
2020-03-04 Ben Nham <nham@apple.com>
Remove initial layout throttler
https://bugs.webkit.org/show_bug.cgi?id=208285
Reviewed by Antti Koivisto.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences _setLayoutInterval:]): Deleted.
(-[WebPreferences _layoutInterval]): Deleted.
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
2020-03-03 Devin Rousso <drousso@apple.com>
Web Inspector: re-add `InspectorFrontendHost` support for moving the inspected window
https://bugs.webkit.org/show_bug.cgi?id=208555
Reviewed by Timothy Hatcher.
Partially revert r257759, as the design changed enough such that this code is still useful.
Allow the Web Inspector frontend to ask the containing app (via `InspectorFrontendClient`)
whether it supports the given docking configuration.
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::startWindowDrag): Added.
(WebInspectorFrontendClient::supportsDockSide): Added.
2020-03-03 Devin Rousso <drousso@apple.com>
Web Inspector: setting the frontend appearance doesn't update the window when undocked
https://bugs.webkit.org/show_bug.cgi?id=208503
Reviewed by Timothy Hatcher.
Notify the UIProcess when setting the forced appearance so platforms that support dark mode
are able to run native code to adjust the appearance of the undocked window.
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::setForcedAppearance): Added.
2020-03-02 Devin Rousso <drousso@apple.com>
Web Inspector: Items in the toolbar take up to much vertical space
https://bugs.webkit.org/show_bug.cgi?id=204627
<rdar://problem/59091905>
Reviewed by Timothy Hatcher.
Now that there is no toolbar area, there is nothing obstructing the ability for the window
to be moved around when dragging via the title bar area. As such, we can remove the unused
`InspectorFrontendHost` APIs.
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::startWindowDrag): Deleted.
2020-03-02 Alan Coon <alancoon@apple.com>
Add new Mac target numbers
https://bugs.webkit.org/show_bug.cgi?id=208398
Reviewed by Alexey Proskuryakov.
* Configurations/Base.xcconfig:
* Configurations/DebugRelease.xcconfig:
* Configurations/Version.xcconfig:
* Configurations/WebKitTargetConditionals.xcconfig:
2020-03-02 Rob Buis <rbuis@igalia.com>
Add referrerpolicy attribute support for anchors
https://bugs.webkit.org/show_bug.cgi?id=208424
Reviewed by Darin Adler.
Adjust to FrameLoadRequest API change.
* WebView/WebPDFView.mm:
(-[WebPDFView PDFViewWillClickOnLink:withURL:]):
2020-02-29 Yusuke Suzuki <ysuzuki@apple.com>
Remove std::lock_guard
https://bugs.webkit.org/show_bug.cgi?id=206451
Reviewed by Anders Carlsson.
* DOM/DOMInternal.mm:
(getDOMWrapper):
(addDOMWrapper):
(removeDOMWrapper):
2020-02-28 Jer Noble <jer.noble@apple.com>
[GPUP] Implement Modern EME API in the GPU Process
https://bugs.webkit.org/show_bug.cgi?id=208090
Reviewed by Eric Carlson.
Adopt changes to PlatformStrategies.
* GPUProcess/media/RemoteMediaPlayerProxy.cpp:
(WebKit::RemoteMediaPlayerProxy::mediaPlayerKeyNeeded):
* GPUProcess/media/RemoteMediaPlayerProxy.h:
* WebCoreSupport/WebPlatformStrategies.mm:
2020-02-27 Daniel Bates <dabates@apple.com>
Change HitTestRequestType to an OptionSet
https://bugs.webkit.org/show_bug.cgi?id=208334
Reviewed by Wenson Hsieh.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::actionDictionary const):
* WebView/WebFrame.mm:
(-[WebFrame elementAtPoint:]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView elementAtPoint:allowShadowContent:]):
* WebView/WebImmediateActionController.mm:
(-[WebImmediateActionController performHitTestAtPoint:]):
2020-02-26 Ryosuke Niwa <rniwa@webkit.org>
Create AudioDestination in the GPU process
https://bugs.webkit.org/show_bug.cgi?id=208179
Reviewed by Jer Noble.
Added WebMediaStrategy which is a wrapper around AudioDestination::create.
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebMediaStrategy): Added.
(WebPlatformStrategies::createMediaStrategy):
2020-02-25 Megan Gardner <megan_gardner@apple.com>
Build Fix
https://bugs.webkit.org/show_bug.cgi?id=208224
<rdar://problem/58879500>
Fix Build.
Reviewed by Tim Horton.
* WebView/WebFrameView.mm:
(+[WebFrameView _viewTypesAllowImageTypeOmission:]):
* WebView/WebView.mm:
(+[WebView _viewClass:andRepresentationClass:forMIMEType:allowingPlugins:]):
2020-02-25 Justin Michaud <justin_michaud@apple.com>
Inline Cache delete by id/val
https://bugs.webkit.org/show_bug.cgi?id=207522
Reviewed by Keith Miller and Filip Pizlo.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::removeProperty):
2020-02-25 Antti Koivisto <antti@apple.com>
Remove throttling code from RenderLayerCompositor
https://bugs.webkit.org/show_bug.cgi?id=208135
Reviewed by Zalan Bujtas.
* WebView/WebView.mm:
(-[WebView _scheduleRenderingUpdateForPendingTileCacheRepaint]):
(-[WebView _scheduleLayerFlushForPendingTileCacheRepaint]): Deleted.
2020-02-24 Simon Fraser <simon.fraser@apple.com>
Rename the clashing WebOverlayLayer classes
https://bugs.webkit.org/show_bug.cgi?id=208156
rdar://problem/59739250
Reviewed by Tim Horton.
The name WebOverlayLayer was used in two places. Rename them both to more specific names.
* WebView/WebVideoFullscreenController.mm:
(-[WebVideoFullscreenController init]):
(-[WebOverlayLayer layoutSublayers]): Deleted.
2020-02-22 Darin Adler <darin@apple.com>
Fix some include mistakes and make some coding style tweaks to WebKit and WebKitTestRunner
https://bugs.webkit.org/show_bug.cgi?id=208099
Reviewed by Antti Koivisto.
* DOM/DOMDocument.mm: Removed unneeded includes and re-sorted.
* DOM/DOMDocumentFragment.mm: Ditto.
* DOM/DOMHTMLFieldSetElement.mm: Ditto.
2020-02-22 Jer Noble <jer.noble@apple.com>
Stop using QTKit for rendering WK1 video fullscreen controls
https://bugs.webkit.org/show_bug.cgi?id=207795
<rdar://problem/48894915>
Reviewed by Jon Lee.
Switch to using AVPlayerView instead of QTHUD to render our fullscreen controls.
In addition, switch to a modern NSWindow fullscreen API, with custom, smooth animations which
move the fullscreen window to a separate space. This requires subclassing AVPlayerView so that
fullscreen toggling will signal to the controller, so that our fullscreen button and the inline
version of same don't get out of sync. Because AVPlayerView requires an AVPlayer in order to
display the video layer, and we won't necessarily have an AVPlayer for MSE-backed videos, instead
install a custom overlay view inside the AVPlayerView in which to host the fullscreen video layer.
* WebView/WebVideoFullscreenController.h:
* WebView/WebVideoFullscreenController.mm:
(-[WebOverlayLayer layoutSublayers]):
(WebAVPlayerView_delegate):
(WebAVPlayerView_setDelegate):
(WebAVPlayerView_isFullScreen):
(WebAVPlayerView_enterFullScreen):
(WebAVPlayerView_exitFullScreen):
(allocWebAVPlayerViewInstance):
(-[WebVideoFullscreenController init]):
(-[WebVideoFullscreenController dealloc]):
(-[WebVideoFullscreenController fullscreenWindow]):
(-[WebVideoFullscreenController windowDidLoad]):
(-[WebVideoFullscreenController setVideoElement:]):
(-[WebVideoFullscreenController enterFullscreen:]):
(-[WebVideoFullscreenController exitFullscreen]):
(-[WebVideoFullscreenController applicationDidResignActive:]):
(-[WebVideoFullscreenController _requestExit]):
(-[WebVideoFullscreenController _requestEnter]):
(-[WebVideoFullscreenController cancelOperation:]):
(-[WebVideoFullscreenController playerViewIsFullScreen:]):
(-[WebVideoFullscreenController playerViewRequestEnterFullscreen:]):
(-[WebVideoFullscreenController playerViewRequestExitFullscreen:]):
(-[WebVideoFullscreenController customWindowsToEnterFullScreenForWindow:]):
(-[WebVideoFullscreenController window:startCustomAnimationToEnterFullScreenWithDuration:]):
(-[WebVideoFullscreenController customWindowsToExitFullScreenForWindow:]):
(-[WebVideoFullscreenController window:startCustomAnimationToExitFullScreenWithDuration:]):
(-[WebVideoFullscreenController windowDidEnterFullScreen:]):
(-[WebVideoFullscreenController windowWillExitFullScreen:]):
(-[WebVideoFullscreenController windowDidExitFullScreen:]):
(-[WebVideoFullscreenController clearFadeAnimation]): Deleted.
(-[WebVideoFullscreenController windowDidExitFullscreen]): Deleted.
(-[WebVideoFullscreenController windowDidEnterFullscreen]): Deleted.
(frameExpandedToRatioOfFrame): Deleted.
(createBackgroundFullscreenWindow): Deleted.
(-[WebVideoFullscreenController setupFadeAnimationIfNeededAndFadeIn:]): Deleted.
(-[WebVideoFullscreenController applicationDidChangeScreenParameters:]): Deleted.
(-[WebVideoFullscreenController updateMenuAndDockForFullscreen]): Deleted.
(-[WebVideoFullscreenController requestExitFullscreenWithAnimation:]): Deleted.
(-[WebVideoFullscreenController requestExitFullscreen]): Deleted.
(-[WebVideoFullscreenController fadeHUDIn]): Deleted.
(-[WebVideoFullscreenController observeValueForKeyPath:ofObject:change:context:]): Deleted.
(-[WebVideoFullscreenController rateChanged:]): Deleted.
(-[WebVideoFullscreenWindow initWithContentRect:styleMask:backing:defer:]): Deleted.
(-[WebVideoFullscreenWindow dealloc]): Deleted.
(-[WebVideoFullscreenWindow resignFirstResponder]): Deleted.
(-[WebVideoFullscreenWindow canBecomeKeyWindow]): Deleted.
(-[WebVideoFullscreenWindow mouseDown:]): Deleted.
(-[WebVideoFullscreenWindow cancelOperation:]): Deleted.
(-[WebVideoFullscreenWindow animatedResizeDidEnd]): Deleted.
(-[WebVideoFullscreenWindow animateFromRect:toRect:withSubAnimation:controllerAction:]): Deleted.
(-[WebVideoFullscreenWindow animationDidEnd:]): Deleted.
(-[WebVideoFullscreenWindow mouseMoved:]): Deleted.
* WebView/WebVideoFullscreenHUDWindowController.h: Removed.
* WebView/WebVideoFullscreenHUDWindowController.mm: Removed.
2020-02-21 Wenson Hsieh <wenson_hsieh@apple.com>
[macOS] Large form controls are rendered at the wrong NSControlSize
https://bugs.webkit.org/show_bug.cgi?id=208043
<rdar://problem/59659134>
Reviewed by Tim Horton.
See WebCore ChangeLog for more details.
* WebCoreSupport/PopupMenuMac.mm:
(PopupMenuMac::show):
2020-02-21 Daniel Bates <dabates@apple.com>
[iOS][Legacy WebKit] Expose SPI for Page::revealCurrentSelection()
https://bugs.webkit.org/show_bug.cgi?id=207960
<rdar://problem/59604163>
Reviewed by Wenson Hsieh.
Together with <https://bugs.webkit.org/show_bug.cgi?id=207955> this allows a client to reveal
the current selection when it's ready to do so.
* WebView/WebView.mm:
(-[WebView revealCurrentSelection]): Added.
* WebView/WebViewPrivate.h:
2020-02-20 Megan Gardner <megan_gardner@apple.com>
Expose caret color for clients
https://bugs.webkit.org/show_bug.cgi?id=207963
<rdar://problem/57383170>
Reviewed by Daniel Bates.
Expose caret color for clients to use.
* WebView/WebFrame.mm:
(-[WebFrame textInsertionColor]):
* WebView/WebFramePrivate.h:
2020-02-19 Daniel Bates <dabates@apple.com>
[iOS][LegacyWebKit] Override EditorClient::shouldRevealCurrentSelectionAfterInsertion()
https://bugs.webkit.org/show_bug.cgi?id=207955
<rdar://problem/59602916>
Reviewed by Wenson Hsieh.
Wire up EditorClient::shouldRevealCurrentSelectionAfterInsertion() in Legacy WebKit. This
allows Legacy WebKit clients to toggle whether the current selection is revealed after
an insertion, which they may want to do to achieve a desired UI effect.
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::shouldRevealCurrentSelectionAfterInsertion const): Added. Ask the _UIKitDelegateForwarder
if it responds to -shouldRevealCurrentSelectionAfterInsertion. If it does then return its
response. Otherwise, return true to do what we do now: reveal the current selection after
an insertion.
2020-02-18 Simon Fraser <simon.fraser@apple.com>
Move from "layer flush" terminology to "rendering update"
https://bugs.webkit.org/show_bug.cgi?id=207870
Reviewed by Tim Horton.
Rename various functions and member variables to move away from the legacy "layer flush"
terminology and instead use "rendering update", matching Page::updateRendering(). The fact
that we have layers is an implementation detail.
Change LayerFlushThrottlingState to be an OptionSet<>.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::scheduleRenderingUpdate):
(WebChromeClient::scheduleCompositingLayerFlush): Deleted.
* WebView/WebView.mm:
(-[WebView _scheduleUpdateRendering]):
(-[WebView _scheduleCompositingLayerFlush]): Deleted.
* WebView/WebViewData.h:
* WebView/WebViewInternal.h:
2020-02-14 Jon Lee <jonlee@apple.com>
Mask WebGL strings
https://bugs.webkit.org/show_bug.cgi?id=207608
Reviewed by Dean Jackson.
Test: platform/mac/webgl/fingerprinting-strings.html
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
2020-02-13 Said Abou-Hallawa <said@apple.com>
Unreviewed, rolling out r255158, 255405 and r255486
Caused test flakiness and PLT regression.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences renderingUpdateThrottlingEnabled]): Deleted.
(-[WebPreferences setRenderingUpdateThrottlingEnabled:]): Deleted.
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2020-02-12 Truitt Savell <tsavell@apple.com>
Unreviewed, rolling out r256463.
Caused major flakiness on Mac wk2
Reverted changeset:
"REGRESSION (r255158): http/tests/frame-throttling/raf-
throttle-in-cross-origin-subframe.html is a flaky failure"
https://bugs.webkit.org/show_bug.cgi?id=206839
https://trac.webkit.org/changeset/256463
2020-02-12 Simon Fraser <simon.fraser@apple.com>
Remove CSS_DEVICE_ADAPTATION
https://bugs.webkit.org/show_bug.cgi?id=203479
Reviewed by Tim Horton.
CSS Working Group resolved to remove @viewport <https://github.com/w3c/csswg-drafts/issues/4766>,
so remove the code.
* Configurations/FeatureDefines.xcconfig:
* DOM/DOMCSS.mm:
(kitClass):
2020-02-12 Said Abou-Hallawa <said@apple.com>
REGRESSION (r255158): http/tests/frame-throttling/raf-throttle-in-cross-origin-subframe.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=206839
Reviewed by Simon Fraser.
Remove the WKPreference key 'RenderingUpdateThrottlingEnabled'.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences renderingUpdateThrottlingEnabled]): Deleted.
(-[WebPreferences setRenderingUpdateThrottlingEnabled:]): Deleted.
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2020-02-10 Daniel Bates <dabates@apple.com>
Disallow setting base URL to a data or JavaScript URL
https://bugs.webkit.org/show_bug.cgi?id=207136
Reviewed by Brent Fulgham.
Apply base URL restrictions to apps linked to a future WebKit to avoid breaking existing apps.
* Misc/WebKitVersionChecks.h:
* WebView/WebView.mm:
(shouldRestrictBaseURLSchemes): Added.
(-[WebView _commonInitializationWithFrameName:groupName:]): Update settings.
2020-02-10 Truitt Savell <tsavell@apple.com>
Unreviewed, rolling out r256091.
Broke internal builds
Reverted changeset:
"Move trivial definitions from FeatureDefines.xcconfig to
PlatformEnableCocoa.h"
https://bugs.webkit.org/show_bug.cgi?id=207155
https://trac.webkit.org/changeset/256091
2020-02-10 Truitt Savell <tsavell@apple.com>
Unreviewed, rolling out r256103.
This patch is blocking the rollout of r256091
Reverted changeset:
"Move JavaScriptCore related feature defines from
FeatureDefines.xcconfig to PlatformEnableCocoa.h"
https://bugs.webkit.org/show_bug.cgi?id=207436
https://trac.webkit.org/changeset/256103
2020-02-09 Keith Rollin <krollin@apple.com>
Re-enable LTO for ARM builds
https://bugs.webkit.org/show_bug.cgi?id=207402
<rdar://problem/49190767>
Reviewed by Sam Weinig.
Bug 190758 re-enabled LTO for Production builds for x86-family CPUs.
Enabling it for ARM was left out due to a compiler issue. That issue
has been fixed, and so now we can re-enable LTO for ARM.
* Configurations/Base.xcconfig:
2020-02-08 Sam Weinig <weinig@apple.com>
Move JavaScriptCore related feature defines from FeatureDefines.xcconfig to PlatformEnableCocoa.h
https://bugs.webkit.org/show_bug.cgi?id=207436
Reviewed by Tim Horton.
* Configurations/FeatureDefines.xcconfig:
Remove ENABLE_FAST_JIT_PERMISSIONS and ENABLE_FTL_JIT.
2020-02-08 Sam Weinig <weinig@apple.com>
Move trivial definitions from FeatureDefines.xcconfig to PlatformEnableCocoa.h
https://bugs.webkit.org/show_bug.cgi?id=207155
Reviewed by Tim Horton.
Move all trivial definitions (just ENABLE_FOO = ENABLE_FOO; or ENABLE_BAR = ;)
from the FeatureDefines.xcconfigs to PlatformEnableCocoa.h, ensuring each one
also has a default value in PlatformEnable.h
To support the move, DerivedSources.make has been updated to generate the list
of ENABLE_* features by directly from preprocessing Platform.h, rather than
just getting the partial list from the xcconfig file.
* Configurations/FeatureDefines.xcconfig:
* MigrateHeaders.make:
2020-02-07 Jon Lee <jonlee@apple.com>
Web Inspector: Revert slim toolbar
https://bugs.webkit.org/show_bug.cgi?id=207422
Reviewed by Timothy Hatcher.
The slim toolbar needs a little more work before landing.
This patch reverts r255547, r255557, r255890, r255892, r255893, r255901, r255980.
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
2020-02-07 Chris Dumez <cdumez@apple.com>
[Hardening] Validate Geolocation access permission on UIProcess side
https://bugs.webkit.org/show_bug.cgi?id=207393
<rdar://problem/56816051>
Reviewed by Brent Fulgham.
* WebCoreSupport/WebGeolocationClient.h:
* WebCoreSupport/WebGeolocationClient.mm:
(WebGeolocationClient::startUpdating):
(WebGeolocationClient::requestPermission):
(-[WebGeolocationPolicyListener allow]):
(-[WebGeolocationPolicyListener deny]):
2020-02-07 Alex Christensen <achristensen@apple.com>
Remember if we used legacy TLS in the back/forward cache like we remember if we have only secure content
https://bugs.webkit.org/show_bug.cgi?id=207409
rdar://problem/59275641
Reviewed by Chris Dumez.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchDidCommitLoad):
2020-02-07 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r256051.
Broke internal builds.
Reverted changeset:
"Move trivial definitions from FeatureDefines.xcconfig to
PlatformEnableCocoa.h"
https://bugs.webkit.org/show_bug.cgi?id=207155
https://trac.webkit.org/changeset/256051
2020-02-07 Daniel Bates <dabates@apple.com>
Legacy WebKit: Have linkedOnOrAfter() respect the NSDefault WebKitLinkedOnOrAfterEverything and opt DumpRenderTree in
https://bugs.webkit.org/show_bug.cgi?id=207366
Reviewed by Brent Fulgham.
If the user default WebKitLinkedOnOrAfterEverything is enabled then have linkedOnOrAfter()
always return true.
* Misc/WebKitVersionChecks.mm:
(linkedOnOrAfter): Read the user default WebKitLinkedOnOrAfterEverything once and cache it.
If the default is enabled then early return true. Outside of tooling this default is unlikely
to be set.
2020-02-07 Sam Weinig <weinig@apple.com>
Move trivial definitions from FeatureDefines.xcconfig to PlatformEnableCocoa.h
https://bugs.webkit.org/show_bug.cgi?id=207155
Reviewed by Tim Horton.
Move all trivial definitions (just ENABLE_FOO = ENABLE_FOO; or ENABLE_BAR = ;)
from the FeatureDefines.xcconfigs to PlatformEnableCocoa.h, ensuring each one
also has a default value in PlatformEnable.h
To support the move, DerivedSources.make has been updated to generate the list
of ENABLE_* features by directly from preprocessing Platform.h, rather than
just getting the partial list from the xcconfig file.
* Configurations/FeatureDefines.xcconfig:
* MigrateHeaders.make:
2020-02-06 Brent Fulgham <bfulgham@apple.com>
Prevent navigating top level frames to Data URLs
https://bugs.webkit.org/show_bug.cgi?id=206962
<rdar://problem/56770676>
Reviewed by Youenn Fablet.
Expose a new off-by-default preference to allow top-level navigation to Data URIs.
Tests: fast/loader/data-url-frame-allowed.html, fast/loader/data-url-load-denied.html
* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController init]):
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences allowTopNavigationToDataURLs]):
(-[WebPreferences setAllowTopNavigationToDataURLs:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2020-02-01 Devin Rousso <drousso@apple.com>
Web Inspector: move the items in the toolbar into the tab bar to save vertical space
https://bugs.webkit.org/show_bug.cgi?id=204627
Reviewed by Timothy Hatcher.
Now that there is no toolbar area, there is nothing obstructing the ability for the window
to be moved around when dragging via the title bar area. As such, we can remove the unused
`InspectorFrontendHost` APIs.
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::startWindowDrag): Deleted.
2020-01-31 Wenson Hsieh <wenson_hsieh@apple.com>
Add support for specifying background colors when setting marked text
https://bugs.webkit.org/show_bug.cgi?id=207065
<rdar://problem/57876140>
Reviewed by Tim Horton.
Adjust some call sites of Editor::setComposition().
* WebView/WebFrame.mm:
(-[WebFrame setMarkedText:selectedRange:]):
(-[WebFrame setMarkedText:forCandidates:]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView setMarkedText:selectedRange:]):
2020-01-31 Antoine Quint <graouts@apple.com>
[WK1] hiddenPageCSSAnimationSuspensionEnabled should be enabled by default for Cocoa platforms
https://bugs.webkit.org/show_bug.cgi?id=207042
<rdar://problem/58934778>
Reviewed by Zalan Bujtas.
While HiddenPageCSSAnimationSuspensionEnabled is specified in WebPreferences.yaml to default to DEFAULT_HIDDEN_PAGE_CSS_ANIMATION_SUSPENSION_ENABLED,
which is defined to be true on Cocoa platforms in WebPreferencesDefaultValues.h, it is hard-coded to @NO in WK1 although clearly the intent is for
this preference to be enabled. So we switch that default value in WK1 as well.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
2020-01-30 Alex Christensen <achristensen@webkit.org>
Add WKNavigationDelegate SPI to disable TLS 1.0 and 1.1
https://bugs.webkit.org/show_bug.cgi?id=206979
Reviewed by Brady Eidson.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
2020-01-29 Tim Horton <timothy_horton@apple.com>
Null deref under -[WebFrame isTelephoneNumberParsingAllowed]
https://bugs.webkit.org/show_bug.cgi?id=206921
Reviewed by Anders Carlsson.
* WebView/WebFrame.mm:
(-[WebFrame isTelephoneNumberParsingAllowed]):
(-[WebFrame isTelephoneNumberParsingEnabled]):
DataDetectors can hold on to a WebFrame on an operation queue before
calling into these methods. In the meantime, it is possible for the
WebView to be closed, resulting in a null core Frame.
This is not reproducible in a test app, but a speculative fix seems fine.
2020-01-27 Antoine Quint <graouts@apple.com>
[Web Animations] Make Animation.timeline read-write only if a runtime flag is enabled
https://bugs.webkit.org/show_bug.cgi?id=206173
<rdar://problem/58527432>
Reviewed by Dean Jackson.
Add a new WebAnimationsMutableTimelines runtime flag.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(-[WebPreferences webAnimationsMutableTimelinesEnabled]):
(-[WebPreferences setWebAnimationsMutableTimelinesEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2020-01-27 Simon Fraser <simon.fraser@apple.com>
REGRESSION (r253634): cricbuzz.com media controls vanish depending on page scale
https://bugs.webkit.org/show_bug.cgi?id=206788
rdar://problem/58780584
Reviewed by Tim Horton.
r253634 changed "delegatesPageScaling"'" to a flag on ScrollView. However, this changed behavior
for subframes; Settings are propagated down, but only the main ScrollView had delegatesPageScaling
set on it.
"delegatesPageScaling" is a page-level thing (subframes don't independently zoom), so it
should live on Page. Move it there.
The bug was triggered by incorrectly taking page scale into account for rects in the compositing
overlap map (see RenderLayerCompositor::addToOverlapMap()) in subframes, and those rects
changing on zoom.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::transitionToCommittedForNewPage):
2020-01-27 Devin Rousso <drousso@apple.com>
Web Inspector: unable to evaluate in the isolated world of content scripts injected by safari app extensions
https://bugs.webkit.org/show_bug.cgi?id=206110
<rdar://problem/16945643>
Reviewed by Timothy Hatcher, Joseph Pecoraro, and Brian Burg.
In addition to evaluating in subframe execution contexts, add the ability for Web Inspector
to evaluate in non-normal isolated worlds.
* WebView/WebScriptWorld.mm:
(-[WebScriptWorld init]):
Treat isolated worlds created by API calls as `User` worlds.
2020-01-27 Said Abou-Hallawa <sabouhallawa@apple.com>
Throttling requestAnimationFrame should be controlled by RenderingUpdateScheduler
https://bugs.webkit.org/show_bug.cgi?id=204713
Reviewed by Simon Fraser.
Add a WKPreference key for RenderingUpdateThrottling.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences renderingUpdateThrottlingEnabled]):
(-[WebPreferences setRenderingUpdateThrottlingEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2020-01-27 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r255131.
Caused assertion failures on iOS debug bots.
Reverted changeset:
"Throttling requestAnimationFrame should be controlled by
RenderingUpdateScheduler"
https://bugs.webkit.org/show_bug.cgi?id=204713
https://trac.webkit.org/changeset/255131
2020-01-27 Cathie Chen <cathiechen@igalia.com>
The value of AspectRatioOfImgFromWidthAndHeight for legacy mac isn't correct
https://bugs.webkit.org/show_bug.cgi?id=206822
Reviewed by Frédéric Wang.
The value should be WebKitAspectRatioOfImgFromWidthAndHeightEnabled
* WebView/WebPreferenceKeysPrivate.h:
2020-01-26 Said Abou-Hallawa <said@apple.com>
Throttling requestAnimationFrame should be controlled by RenderingUpdateScheduler
https://bugs.webkit.org/show_bug.cgi?id=204713
Reviewed by Simon Fraser.
Add a WKPreference key for RenderingUpdateThrottling.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences renderingUpdateThrottlingEnabled]):
(-[WebPreferences setRenderingUpdateThrottlingEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2020-01-25 Antti Koivisto <antti@apple.com>
[LFC][Integration] Re-enable line layout integration
https://bugs.webkit.org/show_bug.cgi?id=206795
<rdar://problem/58853907>
Reviewed by Zalan Bujtas.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
2020-01-22 Daniel Bates <dabates@apple.com>
Legacy WebKit: Add SPI variant of -setSelectedDOMRange that can perform the selection as if triggered by the user
https://bugs.webkit.org/show_bug.cgi?id=206622
Reviewed by Wenson Hsieh.
Add a new -setSelectedDOMRange SPI variant that takes a boolean to indicate whether the selection
was triggered by the user.
While I am here, I simplified and modernized the code. This includes moving the null check of
Frame::page() to the top of the function. This let me eliminate the null check for Frame::view()
because every frame that has a page must have a non-null view. I imported WebEditorClient.h
to get WebKit::core(NSSelectionAffinity) and remove a C-style cast to WebCore::EAffinity.
I also used more "auto".
* WebView/WebFrame.mm:
(-[WebFrame setSelectedDOMRange:affinity:closeTyping:]): Modified to call the newly added variant,
passing "userTriggered:NO" to keep the current behavior.
(-[WebFrame setSelectedDOMRange:affinity:closeTyping:userTriggered:]): Added.
* WebView/WebFramePrivate.h:
2020-01-22 Zalan Bujtas <zalan@apple.com>
REGRESSION (r254923): [mac-wk1] http/tests/inspector/network/har/har-page.html crashing in WebCore::Display::Box::contentBox()
https://bugs.webkit.org/show_bug.cgi?id=206600
Unreviewed.
r254923 missed this one place to turn off LFC integration.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
2020-01-21 Said Abou-Hallawa <sabouhallawa@apple.com>
Make RenderingMode and AlphaPremultiplication enum classes and move them to separate headers
https://bugs.webkit.org/show_bug.cgi?id=206516
Reviewed by Tim Horton.
* WebCoreSupport/WebContextMenuClient.mm:
(WebContextMenuClient::imageForCurrentSharingServicePickerItem):
2020-01-21 Daniel Bates <dabates@apple.com>
Add Legacy WebKit SPI and WebKit IPI to show and hide placeholder
https://bugs.webkit.org/show_bug.cgi?id=206459
<rdar://problem/58700534>
Reviewed by Wenson Hsieh.
Add Legacy WebKit SPI to allow a client to control whether the placeholder can be shown or
not when a form control is empty. This is for aesthetics.
* DOM/DOMHTMLInputElement.mm:
(-[DOMHTMLInputElement canShowPlaceholder]): Added.
(-[DOMHTMLInputElement setCanShowPlaceholder:]): Added.
* DOM/DOMHTMLInputElementPrivate.h:
* DOM/DOMHTMLTextAreaElement.mm:
(-[DOMHTMLTextAreaElement canShowPlaceholder]): Added.
(-[DOMHTMLTextAreaElement setCanShowPlaceholder:]): Added.
* DOM/DOMHTMLTextAreaElementPrivate.h:
2020-01-21 Rob Buis <rbuis@igalia.com>
Add build flag for stale-while-revalidate
https://bugs.webkit.org/show_bug.cgi?id=204169
Reviewed by Youenn Fablet.
* Configurations/FeatureDefines.xcconfig:
2020-01-21 Sihui Liu <sihui_liu@apple.com>
Disable WebSQL everywhere by default except in tests
https://bugs.webkit.org/show_bug.cgi?id=204907
Reviewed by Ryosuke Niwa.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences webSQLEnabled]):
(-[WebPreferences setWebSQLEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2020-01-20 David Kilzer <ddkilzer@apple.com>
Fix missing header guards and clean up empty files in WebCore, WebKitLegacy, WebKit, Tools
<https://webkit.org/b/206505>
Reviewed by Eric Carlson.
* Misc/WebKitStatisticsPrivate.h:
* Misc/WebLocalizableStrings.h: Modernize __OBJC__ and
__cplusplus checks.
* Misc/WebTypesInternal.h:
* WebView/WebMediaPlaybackTargetPicker.h:
- Add #pragma once statement.
2020-01-17 Cathie Chen <cathiechen@igalia.com>
Add support for scroll behavior parsing
https://bugs.webkit.org/show_bug.cgi?id=205009
Reviewed by Frédéric Wang.
Based on the patch by Frédéric Wang.
Add run time flag for CSSOMViewSmoothScrolling.
* WebView/WebPreferenceKeysPrivate.h: Handle CSSOMViewSmoothScrolling by.
* WebView/WebPreferences.mm:
([WebPreferences initialize]): Disable CSSOMViewSmoothScrolling by default.
(-[WebPreferences CSSOMViewSmoothScrollingEnabled]): Getter.
(-[WebPreferences setCSSOMViewSmoothScrollingEnabled:]): Setter.
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2020-01-16 David Kilzer <ddkilzer@apple.com>
Enable -Wconditional-uninitialized in WebInspectorUI, WebKitLegacy, WebKit projects
<https://webkit.org/b/206270>
<rdar://problem/58589767>
Reviewed by Tim Horton.
* Configurations/Base.xcconfig:
(WARNING_CFLAGS): Add -Wconditional-uninitialized switch.
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView scheduleTimerWithInterval:repeat:timerFunc:]):
Initialize `slot` stack variable.
* WebView/WebPDFDocumentExtras.mm:
(allScriptsInPDFDocument): Initialize `length` stack variable.
Also add check that `length` is non-zero.
2020-01-16 Cathie Chen <cathiechen@igalia.com>
Mapping HTML attributes width/height to the default aspect ratio of <img>
https://bugs.webkit.org/show_bug.cgi?id=201641
Reviewed by Frédéric Wang
Add experimental flag: AspectRatioOfImgFromWidthAndHeightEnabled.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
([WebPreferences initialize]):
(-[WebPreferences aspectRatioOfImgFromWidthAndHeightEnabled]):
(-[WebPreferences setAspectRatioOfImgFromWidthAndHeightEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2020-01-14 Antti Koivisto <antti@apple.com>
[LFC][Integration] Support the feature flag in DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=206218
Reviewed by Zalan Bujtas.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences layoutFormattingContextIntegrationEnabled]):
(-[WebPreferences setLayoutFormattingContextIntegrationEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2020-01-09 Tim Horton <timothy_horton@apple.com>
Adopt TARGET_OS_MACCATALYST in more places
https://bugs.webkit.org/show_bug.cgi?id=206040
<rdar://problem/57127108>
Reviewed by Simon Fraser.
* Misc/WebDownload.h:
2020-01-08 Yusuke Suzuki <ysuzuki@apple.com>
Reduce binary size by purging C++ type information in Objective-C fields and parameters
https://bugs.webkit.org/show_bug.cgi?id=205905
Reviewed by Saam Barati.
* Plugins/WebBaseNetscapePluginView.h:
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView element]):
* WebCoreSupport/WebEditorClient.mm:
(_WebCreateFragment):
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::transitionToCommittedForNewPage):
(-[WebFramePolicyListener initWithFrame:identifier:policyFunction:defaultPolicy:]):
(-[WebFramePolicyListener initWithFrame:identifier:policyFunction:defaultPolicy:appLinkURL:]):
* WebCoreSupport/WebGeolocationClient.mm:
(-[WebGeolocationPolicyListener initWithGeolocation:]):
(-[WebGeolocationPolicyListener initWithGeolocation:forWebView:]):
(-[WebGeolocationProviderInitializationListener initWithGeolocation:]):
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::resetState):
(-[WebInspectorWindowController setFrontendClient:]):
(-[WebInspectorWindowController setInspectorClient:]):
(-[WebInspectorWindowController inspectorClient]):
* WebInspector/WebInspectorFrontend.h:
* WebInspector/WebInspectorFrontend.mm:
* WebInspector/WebNodeHighlight.h:
* WebInspector/WebNodeHighlight.mm:
(-[WebNodeHighlight initWithTargetView:inspectorController:]):
* WebView/WebArchive.mm:
(-[WebArchive initWithMainResource:subresources:subframeArchives:]):
* WebView/WebDataSource.mm:
(-[WebDataSource _documentLoader]):
(-[WebDataSource addSubresource:]):
* WebView/WebDataSourceInternal.h:
* WebView/WebFrame.mm:
(getWebView):
(-[WebFrame _updateBackgroundAndUpdatesWhileOffscreen]):
(-[WebFrame _unmarkAllBadGrammar]):
(-[WebFrame _unmarkAllMisspellings]):
(-[WebFrame _hasSelection]):
(-[WebFrame _atMostOneFrameHasSelection]):
(-[WebFrame _findFrameWithSelection]):
(-[WebFrame _scrollDOMRangeToVisible:withInset:]):
(-[WebFrame _documentFragmentWithMarkupString:baseURLString:]):
(-[WebFrame _documentFragmentWithNodesAsParagraphs:]):
(-[WebFrame _canProvideDocumentSource]):
(-[WebFrame _isDescendantOfFrame:]):
(-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]):
(-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]):
(-[WebFrame setTimeoutsPaused:]):
(-[WebFrame prepareForPause]):
(-[WebFrame resumeFromPause]):
(-[WebFrame resetTextAutosizingBeforeLayout]):
(-[WebFrame _globalContextForScriptWorld:]):
(-[WebFrame _layerTreeAsText]):
(-[WebFrame _clearOpener]):
(-[WebFrame focusedNodeHasContent]):
(-[WebFrame _dispatchDidReceiveTitle:]):
(-[WebFrame jsWrapperForNode:inScriptWorld:]):
(-[WebFrame elementAtPoint:]):
(-[WebFrame name]):
(-[WebFrame DOMDocument]):
(-[WebFrame frameElement]):
(-[WebFrame provisionalDataSource]):
(-[WebFrame dataSource]):
(-[WebFrame loadRequest:]):
(-[WebFrame findFrameNamed:]):
(-[WebFrame parentFrame]):
(-[WebFrame childFrames]):
(-[WebFrame windowObject]):
(-[WebFrame globalContext]):
(-[WebFrame javaScriptContext]):
* WebView/WebFrameInternal.h:
* WebView/WebFrameView.mm:
(-[WebFrameView _web_frame]):
(-[WebFrameView _frameSizeChanged]):
(-[WebFrameView _isVerticalDocument]):
(-[WebFrameView _isFlippedDocument]):
(-[WebFrameView keyDown:keyDown:]):
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController _document]):
* WebView/WebHTMLView.mm:
(-[WebMenuTarget menuController]):
(-[WebMenuTarget setMenuController:]):
(-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]):
(-[WebHTMLView _interpretKeyEvent:savingCommands:]):
(-[WebHTMLView setPromisedDragTIFFDataSource:]):
* WebView/WebHTMLViewInternal.h:
* WebView/WebNotification.mm:
(-[WebNotification initWithCoreNotification:notificationID:]):
* WebView/WebNotificationInternal.h:
* WebView/WebResource.mm:
(-[WebResource _coreResource]):
* WebView/WebResourceInternal.h:
* WebView/WebVideoFullscreenController.h:
* WebView/WebVideoFullscreenController.mm:
(-[WebVideoFullscreenController videoElement]):
(-[WebVideoFullscreenController setVideoElement:]):
* WebView/WebVideoFullscreenHUDWindowController.h:
* WebView/WebView.mm:
(-[WebView page]):
(-[WebView _enterVideoFullscreenForVideoElement:mode:]):
(-[WebView _setUpPlaybackControlsManagerForMediaElement:]):
(-[WebView _supportsFullScreenForElement:withKeyboard:]):
(-[WebView _enterFullScreenForElement:]):
(-[WebView _exitFullScreenForElement:]):
* WebView/WebViewInternal.h:
2020-01-08 youenn fablet <youenn@apple.com>
Implement MediaRecorder backend in GPUProcess
https://bugs.webkit.org/show_bug.cgi?id=205802
Reviewed by Eric Carlson.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
2020-01-07 Said Abou-Hallawa <sabouhallawa@apple.com>
Implement css3-images image-orientation
https://bugs.webkit.org/show_bug.cgi?id=89052
Reviewed by Simon Fraser.
Remove the ENABLE_CSS_IMAGE_ORIENTATION feature flag.
* Configurations/FeatureDefines.xcconfig:
2020-01-07 Chris Dumez <cdumez@apple.com>
Remove document.origin
https://bugs.webkit.org/show_bug.cgi?id=205681
Reviewed by Geoffrey Garen.
* DOM/DOMDocument.mm:
(-[DOMDocument origin]):
2020-01-07 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r254132.
https://bugs.webkit.org/show_bug.cgi?id=205868
It is breaking WinCairo build and internal builds. (Requested
by youenn on #webkit).
Reverted changeset:
"Implement MediaRecorder backend in GPUProcess"
https://bugs.webkit.org/show_bug.cgi?id=205802
https://trac.webkit.org/changeset/254132
2020-01-07 youenn fablet <youenn@apple.com>
Implement MediaRecorder backend in GPUProcess
https://bugs.webkit.org/show_bug.cgi?id=205802
Reviewed by Eric Carlson.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
2020-01-07 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK][WPE] Add API to set purpose and hints of active editable element to input methods
https://bugs.webkit.org/show_bug.cgi?id=205605
Reviewed by Žan Doberšek.
* DOM/DOMHTMLElement.mm: Use ENABLE(AUTOCORRECT) and ENABLE(AUTOCAPITALIZE).
* WebCoreSupport/WebEditorClient.h: Update tom the new API to WebEditorClient::setInputMethodState.
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::setInputMethodState): Ditto.
2020-01-07 Chris Fleizach <cfleizach@apple.com>
AX: Enable ACCESSIBILITY_ISOLATED_TREE
https://bugs.webkit.org/show_bug.cgi?id=205535
<rdar://problem/58131075>
Reviewed by Zalan Bujtas.
* Configurations/FeatureDefines.xcconfig:
2020-01-06 Mark Lam <mark.lam@apple.com>
Convert ASSERT_DISABLED to ASSERT_ENABLED, and fix some tests of NDEBUG that should actually test for ASSERT_ENABLED.
https://bugs.webkit.org/show_bug.cgi?id=205776
Reviewed by Saam Barati.
* History/WebHistory.mm:
(-[WebHistoryPrivate removeItemForURLString:]):
* WebView/WebFrame.mm:
2020-01-06 Antoine Quint <graouts@apple.com>
[Web Animations] Enable CSS Animations via Web Animations for WebKitLegacy
https://bugs.webkit.org/show_bug.cgi?id=205791
Reviewed by Dean Jackson.
It was an oversight that it had not been done along with the WebKit change.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
2020-01-05 Simon Fraser <simon.fraser@apple.com>
Fix a souce of WebKit1 test flakiness
https://bugs.webkit.org/show_bug.cgi?id=205761
Reviewed by Darin Adler.
Some animation tests (and possibly many others) are flakey or broken in WK1 because
there was no code to guarantee that Page::updateRendering() was called at notifyDone()
time.
WK2 calls DrawingArea::forceRepaint(), which does updateRendering(), flushes layers,
and flushes a CATransaction.
In WK1, we historically relied in AppKit to call -viewWillDraw on WebView and/or WebHTMLView,
and just called [webView display] to make this happen. However, with layer backing, AppKit behavior
changes, and WebCore changes that make more things happen with HTML event loop timing, this
approach no longer works. The fix is to add WebView SPI, _forceRepaintForTesting, which emulates what
WK2 is doing.
* WebView/WebView.mm:
(-[WebView _forceRepaintForTesting]):
* WebView/WebViewPrivate.h:
2020-01-03 Chris Dumez <cdumez@apple.com>
Add support for DragEvent
https://bugs.webkit.org/show_bug.cgi?id=205758
Reviewed by Darin Adler.
* WebView/WebPDFView.mm:
(-[WebPDFView PDFViewWillClickOnLink:withURL:]):
2020-01-03 Yusuke Suzuki <ysuzuki@apple.com>
Put more WebCore/WebKit JS objects into IsoSubspace
https://bugs.webkit.org/show_bug.cgi?id=205711
Reviewed by Keith Miller.
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::getMethod):
(WebKit::ProxyRuntimeMethod::create): Deleted.
(WebKit::ProxyRuntimeMethod::createStructure): Deleted.
(WebKit::ProxyRuntimeMethod::ProxyRuntimeMethod): Deleted.
(WebKit::ProxyRuntimeMethod::finishCreation): Deleted.
* Plugins/Hosted/ProxyRuntimeObject.h:
(WebKit::ProxyRuntimeObject::create): Deleted.
(WebKit::ProxyRuntimeObject::createStructure): Deleted.
2020-01-03 Chris Dumez <cdumez@apple.com>
Align XPathEvaluator.createNSResolver() / XPathResult.snapshotItem() with the specification
https://bugs.webkit.org/show_bug.cgi?id=205699
Reviewed by Alex Christensen.
* DOM/DOMDocument.mm:
(-[DOMDocument createNSResolver:]):
2019-12-22 Jeff Miller <jeffm@apple.com>
Update user-visible copyright strings to include 2020
https://bugs.webkit.org/show_bug.cgi?id=205552
Reviewed by Darin Adler.
* Info.plist:
2019-12-20 Brian Burg <bburg@apple.com>
Web Inspector: convert some InspectorFrontendHost methods to getters
https://bugs.webkit.org/show_bug.cgi?id=205475
Reviewed by Devin Rousso.
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::localizedStringsURL const):
(WebInspectorFrontendClient::localizedStringsURL): Deleted.
2019-12-20 Alex Christensen <achristensen@webkit.org>
Allow a managed configuration to re-enable TLS 1.0 and 1.1
https://bugs.webkit.org/show_bug.cgi?id=205479
<rdar://problem/54493516>
Reviewed by Geoffrey Garen.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
2019-12-17 Kate Cheney <katherine_cheney@apple.com>
Add run-time flag for in-app browser privacy
https://bugs.webkit.org/show_bug.cgi?id=205288
<rdar://problem/57569206>
Reviewed by John Wilander.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences isInAppBrowserPrivacyEnabled]):
(-[WebPreferences setInAppBrowserPrivacyEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2019-12-16 Simon Fraser <simon.fraser@apple.com>
Change 'delegatesPageScaling' from a Setting to a flag on ScrollView
https://bugs.webkit.org/show_bug.cgi?id=205319
Reviewed by Tim Horton.
delegatesPageScaling() is never toggled at runtime (even by tests), and it should
be a flag on FrameView just like delegatesScrolling (maybe in future the flags can merge).
So remove the Setting, and have DrawingArea control whether page scaling is delegated.
In WebKit1, WebFrameLoaderClient::transitionToCommittedForNewPage() turns on delegated
page scaling for iOS.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::transitionToCommittedForNewPage):
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2019-12-16 Antti Koivisto <antti@apple.com>
Remove display:contents feature flag
https://bugs.webkit.org/show_bug.cgi?id=205276
Reviewed by Ryosuke Niwa.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences displayContentsEnabled]): Deleted.
(-[WebPreferences setDisplayContentsEnabled:]): Deleted.
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2019-12-14 David Kilzer <ddkilzer@apple.com>
Add release assert for selectedIndex in WebKit::WebPopupMenu::show()
<https://webkit.org/b/205223>
<rdar://problem/57929078>
Reviewed by Wenson Hsieh.
* WebCoreSupport/PopupMenuMac.h:
(PopupMenuMac::show):
- Rename `index` parameter to `selectedIndex`.
* WebCoreSupport/PopupMenuMac.mm:
(PopupMenuMac::show):
- Rename `index` parameter to `selectedIndex`.
2019-12-13 Brady Eidson <beidson@apple.com>
Refactor ScriptController's proliferation of ExceptionDetails*.
https://bugs.webkit.org/show_bug.cgi?id=205151
Reviewed by Alex Christensen.
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::save):
(WebInspectorFrontendClient::append):
* WebView/WebFrame.mm:
(-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
(-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
* WebView/WebView.mm:
(-[WebView aeDescByEvaluatingJavaScriptFromString:]):
2019-12-12 David Kilzer <ddkilzer@apple.com>
REGRESSION (r229930, r231063): WebKitLegacy.xcconfig overwrites OTHER_CFLAGS, OTHER_CPLUSPLUSFLAGS and OTHER_LDFLAGS from Base.xcconfig
<https://webkit.org/b/205144>
Reviewed by Alexey Proskuryakov.
* Configurations/WebKitLegacy.xcconfig:
(OTHER_CFLAGS): Add back $(inherited) to fix the bug.
(OTHER_CFLAGS_COCOA_TOUCH): Add variable to hold value.
(OTHER_CFLAGS_COCOA_TOUCH_YES): Remove unused $(inherited).
(OTHER_CFLAGS_COCOA_TOUCH_NO): Ditto.
(OTHER_CPLUSPLUSFLAGS): Add back $(inherited) to fix the
bug, and don't assume $(OTHER_CFLAGS) is identical to this.
(OTHER_LDFLAGS): Add back $(inherited) to fix the bug.
2019-12-09 Eric Carlson <eric.carlson@apple.com>
Rename media in the GPU process preference
https://bugs.webkit.org/show_bug.cgi?id=205013
<rdar://problem/57755319>
Reviewed by Tim Horton.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences useGPUProcessForMedia]):
(-[WebPreferences setUseGPUProcessForMedia:]):
(-[WebPreferences outOfProcessMediaEnabled]): Deleted.
(-[WebPreferences setOutOfProcessMediaEnabled:]): Deleted.
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2019-12-09 Alex Christensen <achristensen@webkit.org>
Re-disable TLS1.0 and TLS1.1 by default
https://bugs.webkit.org/show_bug.cgi?id=204922
<rdar://problem/57677752>
Reviewed by Youenn Fablet.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
2019-12-07 Tim Horton <timothy_horton@apple.com>
Implement encoding for DrawImage and DrawRoundedRect display list items
https://bugs.webkit.org/show_bug.cgi?id=204881
Reviewed by Simon Fraser.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
2019-12-06 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r253218.
https://bugs.webkit.org/show_bug.cgi?id=204968
Broke the build (Requested by ap on #webkit).
Reverted changeset:
"Remove various .order files."
https://bugs.webkit.org/show_bug.cgi?id=204959
https://trac.webkit.org/changeset/253218
2019-12-06 Keith Miller <keith_miller@apple.com>
Remove various .order files.
https://bugs.webkit.org/show_bug.cgi?id=204959
Reviewed by Yusuke Suzuki.
These files are all super out of date and likely don't do anything anymore.
The signatures of the functions have changed thus the mangled name has changed.
* WebKit.order: Removed.
2019-12-05 Chris Dumez <cdumez@apple.com>
PageConfiguration::dragClient should use a smart pointer
https://bugs.webkit.org/show_bug.cgi?id=204816
Reviewed by Alex Christensen.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
2019-12-04 Chris Dumez <cdumez@apple.com>
PageConfiguration::progressTrackerClient should use a smart pointer
https://bugs.webkit.org/show_bug.cgi?id=204854
Reviewed by Alex Christensen.
* WebCoreSupport/WebProgressTrackerClient.h:
* WebCoreSupport/WebProgressTrackerClient.mm:
(WebProgressTrackerClient::progressTrackerDestroyed): Deleted.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
2019-12-04 Tim Horton <timothy_horton@apple.com>
Introduce a GPU process
https://bugs.webkit.org/show_bug.cgi?id=204343
Reviewed by Simon Fraser.
* Configurations/FeatureDefines.xcconfig:
2019-12-03 Megan Gardner <megan_gardner@apple.com>
Add disabled highlight API skeleton
https://bugs.webkit.org/show_bug.cgi?id=204809
Reviewed by Ryosuke Niwa.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences highlightAPIEnabled]):
(-[WebPreferences setHighlightAPIEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2019-12-03 Eric Carlson <eric.carlson@apple.com>
Add a runtime setting for media in the GPU process
https://bugs.webkit.org/show_bug.cgi?id=204801
<rdar://problem/57596199>
Reviewed by Jer Noble.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences outOfProcessMediaEnabled]):
(-[WebPreferences setOutOfProcessMediaEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2019-12-03 Antoine Quint <graouts@apple.com>
[Web Animations] Add a runtime flag for Web Animations composite operations
https://bugs.webkit.org/show_bug.cgi?id=204718
Reviewed by Dean Jackson.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(-[WebPreferences webAnimationsCompositeOperationsEnabled]):
(-[WebPreferences setWebAnimationsCompositeOperationsEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2019-12-03 Chris Dumez <cdumez@apple.com>
PageConfiguration::alternativeTextClient should use a smart pointer
https://bugs.webkit.org/show_bug.cgi?id=204777
Reviewed by Anders Carlsson.
* WebCoreSupport/WebAlternativeTextClient.h:
* WebCoreSupport/WebAlternativeTextClient.mm:
(WebAlternativeTextClient::pageDestroyed): Deleted.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
2019-12-03 Carlos Garcia Campos <cgarcia@igalia.com>
[PSON] Tooltips from previous page shown on new page
https://bugs.webkit.org/show_bug.cgi?id=204735
Reviewed by Chris Dumez.
Update to the new ChromeClient API.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::mouseDidMoveOverElement):
(WebChromeClient::setToolTip):
2019-11-28 Fujii Hironori <Hironori.Fujii@sony.com>
Remove ENABLE_KEYBOARD_CODE_ATTRIBUTE and ENABLE_KEYBOARD_KEY_ATTRIBUTE macros
https://bugs.webkit.org/show_bug.cgi?id=204666
Reviewed by Ross Kirsling and Don Olmstead.
* Configurations/FeatureDefines.xcconfig:
2019-11-26 Chris Dumez <cdumez@apple.com>
Drop ActiveDOMObject::shouldPreventEnteringBackForwardCache_DEPRECATED()
https://bugs.webkit.org/show_bug.cgi?id=204626
Reviewed by Ryosuke Niwa.
* WebView/WebFrame.mm:
(-[WebFrame _cacheabilityDictionary]):
2019-11-21 Daniel Bates <dabates@apple.com>
Remove unneeded code that annotated DOMHTMLElement as conforming to UITextInputTraits protocol
https://bugs.webkit.org/show_bug.cgi?id=204464
Reviewed by Wenson Hsieh.
DOMHTMLElement never really conformed to the UITextInputTraits protocol. It was annotated as doing so
in order to register with the runtime as part of advertising that it implemented two UITextInputTraits_Private
messages in r222487: -acceptsAutofilledLoginCredentials and -representingPageURL. These messages were
subsequently removed in r222991 (over years ago). So, we do not need to continue advertising UITextInputTraits
conformance.
* DOM/DOMHTMLInputElement.h:
2019-11-15 Eric Carlson <eric.carlson@apple.com>
Don't use AVCapture on watchOS and tvOS
https://bugs.webkit.org/show_bug.cgi?id=204254
<rdar://problem/45508044>
Reviewed by Youenn Fablet.
* Configurations/FeatureDefines.xcconfig:
2019-11-15 Myles C. Maxfield <mmaxfield@apple.com>
[Apple] Enable variation fonts on all Apple platforms
https://bugs.webkit.org/show_bug.cgi?id=198100
Reviewed by Simon Fraser.
* Configurations/FeatureDefines.xcconfig:
2019-11-13 Myles C. Maxfield <mmaxfield@apple.com>
[Mac] Fix build
https://bugs.webkit.org/show_bug.cgi?id=204136
Reviewed by Alex Christensen.
Remove deprecation warnings.
* Plugins/WebPluginController.mm:
(-[WebPluginController webPlugInContainerSelectionColor]):
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::setCopiesOnScroll):
* WebView/WebHTMLView.mm:
(-[WebHTMLView view:stringForToolTip:point:userData:]):
(-[WebHTMLView pasteboardChangedOwner:]):
(-[WebHTMLView pasteboard:provideDataForType:]):
(-[WebHTMLView changeFont:]):
(-[WebHTMLView changeColor:]):
* WebView/WebPDFView.mm:
(-[WebPDFView _openWithFinder:]):
2019-11-08 Daniel Bates <dabates@apple.com>
Add WebKit Legacy SPI to retrieve editable elements in rect
https://bugs.webkit.org/show_bug.cgi?id=204006
<rdar://problem/57024093>
Reviewed by Wenson Hsieh.
Add SPI to retrieve all the editable elements in a rect.
* WebView/WebView.mm:
(-[WebView _editableElementsInRect:]): Added.
* WebView/WebViewPrivate.h:
2019-11-04 Alex Christensen <achristensen@webkit.org>
REGRESSION(r243947) Epson software updater fails to install new version
https://bugs.webkit.org/show_bug.cgi?id=203809
<rdar://problem/56002179>
Reviewed by Brady Eidson.
* Misc/WebDownload.mm:
(shouldCallOnNetworkThread):
(callOnDelegateThread):
(isDelegateThread):
(-[WebDownloadInternal downloadDidBegin:]):
(-[WebDownloadInternal download:willSendRequest:redirectResponse:]):
(-[WebDownloadInternal download:didReceiveAuthenticationChallenge:]):
(-[WebDownloadInternal download:didReceiveResponse:]):
(-[WebDownloadInternal download:didReceiveDataOfLength:]):
(-[WebDownloadInternal download:shouldDecodeSourceDataOfMIMEType:]):
(-[WebDownloadInternal download:decideDestinationWithSuggestedFilename:]):
(-[WebDownloadInternal download:didCreateDestination:]):
(-[WebDownloadInternal downloadDidFinish:]):
(-[WebDownloadInternal download:didFailWithError:]):
2019-11-02 Devin Rousso <drousso@apple.com>
Web Inspector: Add diagnostic logging for frontend feature usage
https://bugs.webkit.org/show_bug.cgi?id=203579
<rdar://problem/56717410>
Reviewed by Brian Burg.
Original patch by Matt Baker <mattbaker@apple.com>.
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::supportsDiagnosticLogging): Added.
(WebInspectorFrontendClient::logDiagnosticEvent): Added.
* Configurations/FeatureDefines.xcconfig:
Add `ENABLE_INSPECTOR_TELEMETRY`, which is only enabled for macOS.
2019-10-30 Peng Liu <peng.liu6@apple.com>
[Picture-in-Picture Web API] Enable the support for iOS
https://bugs.webkit.org/show_bug.cgi?id=202618
Reviewed by Jer Noble.
Enable the Picture-in-Picture API support for iOS (iPad only).
* Configurations/FeatureDefines.xcconfig:
2019-10-29 Andy Estes <aestes@apple.com>
[Quick Look] Clean up LegacyPreviewLoaderClients
https://bugs.webkit.org/show_bug.cgi?id=203472
Reviewed by Brady Eidson.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::createPreviewLoaderClient):
2019-10-26 Chris Lord <clord@igalia.com>
Put OffscreenCanvas behind a build flag
https://bugs.webkit.org/show_bug.cgi?id=203146
Reviewed by Ryosuke Niwa.
* Configurations/FeatureDefines.xcconfig:
2019-10-23 Andy Estes <aestes@apple.com>
[Quick Look] Rename PreviewLoader{,Client} to LegacyPreviewLoader{,Client}
https://bugs.webkit.org/show_bug.cgi?id=203306
Reviewed by Tim Horton.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::createPreviewLoaderClient):
* WebView/WebDataSource.mm:
(-[WebDataSource _quickLookPreviewLoaderClient]):
(-[WebDataSource _setQuickLookPreviewLoaderClient:]):
* WebView/WebDataSourceInternal.h:
2019-10-22 Alex Christensen <achristensen@webkit.org>
Re-enable legacy TLS by default, keep runtime switch
https://bugs.webkit.org/show_bug.cgi?id=203253
Reviewed by Geoffrey Garen.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
2019-10-21 Yusuke Suzuki <ysuzuki@apple.com>
[JSC] Thread JSGlobalObject* instead of ExecState*
https://bugs.webkit.org/show_bug.cgi?id=202392
Reviewed by Geoffrey Garen.
* DOM/DOMInternal.mm:
(-[WebScriptObject _initializeScriptDOMNodeImp]):
* DOM/WebDOMOperations.mm:
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::evaluate):
(WebKit::NetscapePluginInstanceProxy::invoke):
(WebKit::NetscapePluginInstanceProxy::invokeDefault):
(WebKit::NetscapePluginInstanceProxy::construct):
(WebKit::NetscapePluginInstanceProxy::getProperty):
(WebKit::NetscapePluginInstanceProxy::setProperty):
(WebKit::NetscapePluginInstanceProxy::removeProperty):
(WebKit::NetscapePluginInstanceProxy::hasProperty):
(WebKit::NetscapePluginInstanceProxy::hasMethod):
(WebKit::NetscapePluginInstanceProxy::enumerate):
(WebKit::NetscapePluginInstanceProxy::addValueToArray):
(WebKit::NetscapePluginInstanceProxy::marshalValue):
(WebKit::NetscapePluginInstanceProxy::marshalValues):
(WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray):
(WebKit::NetscapePluginInstanceProxy::demarshalValue):
(WebKit::NetscapePluginInstanceProxy::demarshalValues):
(WebKit::NetscapePluginInstanceProxy::moveGlobalExceptionToExecState):
* Plugins/Hosted/ProxyInstance.h:
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyField::valueFromInstance const):
(WebKit::ProxyField::setValueToInstance const):
(WebKit::ProxyInstance::newRuntimeObject):
(WebKit::ProxyInstance::invoke):
(WebKit::ProxyRuntimeMethod::create):
(WebKit::ProxyInstance::getMethod):
(WebKit::ProxyInstance::invokeMethod):
(WebKit::ProxyInstance::invokeDefaultMethod):
(WebKit::ProxyInstance::invokeConstruct):
(WebKit::ProxyInstance::defaultValue const):
(WebKit::ProxyInstance::stringValue const):
(WebKit::ProxyInstance::numberValue const):
(WebKit::ProxyInstance::valueOf const):
(WebKit::ProxyInstance::getPropertyNames):
(WebKit::ProxyInstance::fieldValue const):
(WebKit::ProxyInstance::setFieldValue const):
* WebView/WebFrame.mm:
(-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
(-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
(-[WebFrame _globalContextForScriptWorld:]):
(-[WebFrame jsWrapperForNode:inScriptWorld:]):
(-[WebFrame globalContext]):
* WebView/WebScriptDebugger.h:
* WebView/WebScriptDebugger.mm:
(WebScriptDebugger::sourceParsed):
* WebView/WebView.mm:
(+[WebView _reportException:inContext:]):
(aeDescFromJSValue):
(-[WebView aeDescByEvaluatingJavaScriptFromString:]):
2019-10-22 Wenson Hsieh <wenson_hsieh@apple.com>
imported/w3c/web-platform-tests/clipboard-apis/async-navigator-clipboard-basics.https.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=203181
Reviewed by Ryosuke Niwa.
Add a changeCount argument to informationForItemAtIndex and allPasteboardItemInfo, and also make then return
optional values. See WebCore ChangeLog for more details.
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::changeCount):
(WebPlatformStrategies::addTypes):
(WebPlatformStrategies::setTypes):
(WebPlatformStrategies::setBufferForType):
(WebPlatformStrategies::setURL):
(WebPlatformStrategies::setColor):
(WebPlatformStrategies::setStringForType):
(WebPlatformStrategies::writeCustomData):
(WebPlatformStrategies::informationForItemAtIndex):
(WebPlatformStrategies::allPasteboardItemInfo):
2019-10-17 Devin Rousso <drousso@apple.com>
Web Inspector: rework frontend agent construction to allow commands/events to be controlled by the related target's type
https://bugs.webkit.org/show_bug.cgi?id=200384
<rdar://problem/53850352>
Reviewed by Joseph Pecoraro.
* WebCoreSupport/WebInspectorClient.h:
(WebInspectorFrontendClient::debuggableType const): Added.
Split the `Web` debuggable type into `Page` (WebCore::Page) and `WebPage` (WebKit::WebPageProxy).
2019-10-16 Chris Dumez <cdumez@apple.com>
Unreviewed, fix iOS Debug build after r251220.
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2019-10-16 Chris Dumez <cdumez@apple.com>
Rename PageCache to BackForwardCache
https://bugs.webkit.org/show_bug.cgi?id=203048
Reviewed by Alex Christensen.
Rename PageCache to BackForwardCache for clarity and consistency with the UIProcess's WebBackForwardCache.
* History/BackForwardList.mm:
(BackForwardList::addItem):
(BackForwardList::setCapacity):
* History/WebBackForwardList.mm:
(-[WebBackForwardList pageCacheSize]):
* History/WebHistoryItem.mm:
* History/WebHistoryItemPrivate.h:
* Misc/WebCache.mm:
* Misc/WebCoreStatistics.mm:
(+[WebCoreStatistics cachedPageCount]):
(+[WebCoreStatistics cachedFrameCount]):
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::forceLayoutOnRestoreFromBackForwardCache):
(WebFrameLoaderClient::didRestoreFromBackForwardCache):
* WebCoreSupport/WebVisitedLinkStore.mm:
* WebView/WebHTMLView.mm:
(-[WebHTMLView layoutToMinimumPageWidth:height:originalPageWidth:originalPageHeight:maximumShrinkRatio:adjustingViewSize:]):
(-[WebHTMLView setNeedsLayout:]):
(-[WebHTMLView setNeedsToApplyStyles:]):
* WebView/WebView.mm:
(-[WebView _close]):
(-[WebView _preferencesChanged:]):
(+[WebView _setCacheModel:]):
2019-10-16 Chris Dumez <cdumez@apple.com>
[WK2] Move back/forward cache entry expiration from the WebProcess to the UIProcess
https://bugs.webkit.org/show_bug.cgi?id=203034
<rdar://problem/56332453>
Reviewed by Antti Koivisto.
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2019-10-15 Chris Dumez <cdumez@apple.com>
[macOS] Simplify main thread initialization
https://bugs.webkit.org/show_bug.cgi?id=203001
Reviewed by Geoff Garen.
* History/WebBackForwardList.mm:
(+[WebBackForwardList initialize]):
* History/WebHistoryItem.mm:
(+[WebHistoryItem initialize]):
* Misc/WebCache.mm:
(+[WebCache initialize]):
* Misc/WebElementDictionary.mm:
(+[WebElementDictionary initialize]):
* Misc/WebIconDatabase.mm:
* Misc/WebStringTruncator.mm:
(+[WebStringTruncator initialize]):
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(+[WebHostedNetscapePluginView initialize]):
* Plugins/WebBaseNetscapePluginView.mm:
* Plugins/WebBasePluginPackage.mm:
(+[WebBasePluginPackage initialize]):
* Plugins/WebNetscapePluginView.mm:
(+[WebNetscapePluginView initialize]):
* WebCoreSupport/WebEditorClient.mm:
(+[WebUndoStep initialize]):
* WebCoreSupport/WebFrameLoaderClient.mm:
(+[WebFramePolicyListener initialize]):
* WebView/WebArchive.mm:
(+[WebArchivePrivate initialize]):
* WebView/WebDataSource.mm:
(+[WebDataSource initialize]):
* WebView/WebHTMLView.mm:
(+[WebHTMLViewPrivate initialize]):
(+[WebHTMLView initialize]):
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
* WebView/WebResource.mm:
(+[WebResourcePrivate initialize]):
* WebView/WebTextIterator.mm:
(+[WebTextIteratorPrivate initialize]):
* WebView/WebView.mm:
(+[WebView initialize]):
* WebView/WebViewData.mm:
(+[WebViewPrivate initialize]):
2019-10-15 Peng Liu <peng.liu6@apple.com>
[Picture-in-Picture Web API] Implement HTMLVideoElement.requestPictureInPicture() / Document.exitPictureInPicture()
https://bugs.webkit.org/show_bug.cgi?id=201024
Reviewed by Eric Carlson.
Add configurations for Picture-in-Picture API and also a preference option for it.
* Configurations/FeatureDefines.xcconfig:
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences pictureInPictureAPIEnabled]):
(-[WebPreferences setPictureInPictureAPIEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2019-10-14 Chris Dumez <cdumez@apple.com>
[WK2] Have WebBackForwardCache class coordinate page caching in all WebProcesses
https://bugs.webkit.org/show_bug.cgi?id=202929
<rdar://problem/56250421>
Reviewed by Alex Christensen.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
2019-10-14 Wenson Hsieh <wenson_hsieh@apple.com>
[Clipboard API] Refactor custom pasteboard writing codepaths to handle multiple items
https://bugs.webkit.org/show_bug.cgi?id=202916
Reviewed by Tim Horton.
Adjust some method signatures.
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::writeCustomData):
2019-10-14 David Quesada <david_quesada@apple.com>
Remove WebCore::IOSApplication::isWebApp()
https://bugs.webkit.org/show_bug.cgi?id=181259
Reviewed by Alex Christensen.
* WebCoreSupport/WebApplicationCache.mm:
(applicationCacheBundleIdentifier):
2019-10-14 Wenson Hsieh <wenson_hsieh@apple.com>
[Clipboard API] Support writing multiple PasteboardCustomData with SharedBuffers to the pasteboard
https://bugs.webkit.org/show_bug.cgi?id=202851
Reviewed by Darin Adler.
See WebCore ChangeLog for more details.
* WebCoreSupport/WebPlatformStrategies.h:
2019-10-09 Wenson Hsieh <wenson_hsieh@apple.com>
[Clipboard API] Refactor Pasteboard item reading functions to work on both iOS and macOS
https://bugs.webkit.org/show_bug.cgi?id=202647
Reviewed by Tim Horton.
Refactor iOS-specific pasteboard functions to be platform-agnostic. See WebCore ChangeLog for more details.
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::informationForItemAtIndex):
(WebPlatformStrategies::allPasteboardItemInfo):
(WebPlatformStrategies::getPasteboardItemsCount):
(WebPlatformStrategies::readBufferFromPasteboard):
(WebPlatformStrategies::readURLFromPasteboard):
(WebPlatformStrategies::readStringFromPasteboard):
(WebPlatformStrategies::writeToPasteboard):
(WebPlatformStrategies::updateSupportedTypeIdentifiers):
2019-10-08 Antti Koivisto <antti@apple.com>
[CSS Shadow Parts] Enable by default
https://bugs.webkit.org/show_bug.cgi?id=202644
Reviewed by Ryosuke Niwa.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
2019-10-07 Ryosuke Niwa <rniwa@webkit.org>
Add IDL for requestIdleCallback
https://bugs.webkit.org/show_bug.cgi?id=202653
Reviewed by Geoffrey Garen.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2019-10-07 Yusuke Suzuki <ysuzuki@apple.com>
[JSC] Change signature of HostFunction to (JSGlobalObject*, CallFrame*)
https://bugs.webkit.org/show_bug.cgi?id=202569
Reviewed by Saam Barati.
* WebView/WebScriptDebugger.h:
2019-10-04 Alex Christensen <achristensen@webkit.org>
Rename SchemeRegistry to LegacySchemeRegistry
https://bugs.webkit.org/show_bug.cgi?id=202586
Reviewed by Tim Horton.
* WebView/WebView.mm:
(+[WebView _setDomainRelaxationForbidden:forURLScheme:]):
(+[WebView _registerURLSchemeAsSecure:]):
(+[WebView _registerURLSchemeAsAllowingDatabaseAccessInPrivateBrowsing:]):
(+[WebView registerURLSchemeAsLocal:]):
2019-10-04 Alex Christensen <achristensen@webkit.org>
Simplify sandbox enabling macros
https://bugs.webkit.org/show_bug.cgi?id=202536
Reviewed by Brent Fulgham.
* Configurations/FeatureDefines.xcconfig:
2019-10-02 Tim Horton <timothy_horton@apple.com>
Provide TAPI the full target triple instead of just the arch
https://bugs.webkit.org/show_bug.cgi?id=202486
Reviewed by Simon Fraser.
* MigrateHeaders.make:
For accuracy and consistency's sake, pass the whole target identifier
instead of just one piece.
2019-10-01 Tim Horton <timothy_horton@apple.com>
Clean up some includes to make the build a bit faster
https://bugs.webkit.org/show_bug.cgi?id=202444
Reviewed by Geoff Garen.
* WebView/WebFrame.mm:
* WebView/WebView.mm:
2019-10-01 Antti Koivisto <antti@apple.com>
[CSS Shadow Parts] Parse 'part' attribute
https://bugs.webkit.org/show_bug.cgi?id=202409
Reviewed by Ryosuke Niwa.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences cssShadowPartsEnabled]):
(-[WebPreferences setCSSShadowPartsEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2019-10-01 Alex Christensen <achristensen@webkit.org>
Progress towards successful CMake build on Mac
https://bugs.webkit.org/show_bug.cgi?id=202426
Rubber-stamped by Tim Horton.
* WebView/WebDataSource.mm:
2019-10-01 Alex Christensen <achristensen@webkit.org>
Unify more WebKitLegacy sources
https://bugs.webkit.org/show_bug.cgi?id=202410
Reviewed by Tim Horton.
* DOM/DOMHTML.mm:
(-[DOMHTMLElement scrollXOffset]):
(-[DOMHTMLElement scrollYOffset]):
(-[DOMHTMLElement setScrollXOffset:scrollYOffset:adjustForIOSCaret:]):
(-[DOMHTMLElement absolutePosition::::]):
(-[DOMHTMLInputElement setValueWithChangeEvent:]):
(-[DOMHTMLInputElement setValueAsNumberWithChangeEvent:]):
* DOM/DOMHTMLTextAreaElement.mm:
(unwrap):
(core):
(kit):
(-[DOMHTMLTextAreaElement autofocus]):
(-[DOMHTMLTextAreaElement setAutofocus:]):
(-[DOMHTMLTextAreaElement dirName]):
(-[DOMHTMLTextAreaElement setDirName:]):
(-[DOMHTMLTextAreaElement disabled]):
(-[DOMHTMLTextAreaElement setDisabled:]):
(-[DOMHTMLTextAreaElement form]):
(-[DOMHTMLTextAreaElement maxLength]):
(-[DOMHTMLTextAreaElement setMaxLength:]):
(-[DOMHTMLTextAreaElement name]):
(-[DOMHTMLTextAreaElement setName:]):
(-[DOMHTMLTextAreaElement placeholder]):
(-[DOMHTMLTextAreaElement setPlaceholder:]):
(-[DOMHTMLTextAreaElement readOnly]):
(-[DOMHTMLTextAreaElement setReadOnly:]):
(-[DOMHTMLTextAreaElement required]):
(-[DOMHTMLTextAreaElement setRequired:]):
(-[DOMHTMLTextAreaElement rows]):
(-[DOMHTMLTextAreaElement setRows:]):
(-[DOMHTMLTextAreaElement cols]):
(-[DOMHTMLTextAreaElement setCols:]):
(-[DOMHTMLTextAreaElement wrap]):
(-[DOMHTMLTextAreaElement setWrap:]):
(-[DOMHTMLTextAreaElement type]):
(-[DOMHTMLTextAreaElement defaultValue]):
(-[DOMHTMLTextAreaElement setDefaultValue:]):
(-[DOMHTMLTextAreaElement value]):
(-[DOMHTMLTextAreaElement setValue:]):
(-[DOMHTMLTextAreaElement textLength]):
(-[DOMHTMLTextAreaElement willValidate]):
(-[DOMHTMLTextAreaElement labels]):
(-[DOMHTMLTextAreaElement selectionStart]):
(-[DOMHTMLTextAreaElement setSelectionStart:]):
(-[DOMHTMLTextAreaElement selectionEnd]):
(-[DOMHTMLTextAreaElement setSelectionEnd:]):
(-[DOMHTMLTextAreaElement selectionDirection]):
(-[DOMHTMLTextAreaElement setSelectionDirection:]):
(-[DOMHTMLTextAreaElement accessKey]):
(-[DOMHTMLTextAreaElement setAccessKey:]):
(-[DOMHTMLTextAreaElement autocomplete]):
(-[DOMHTMLTextAreaElement setAutocomplete:]):
(-[DOMHTMLTextAreaElement select]):
(-[DOMHTMLTextAreaElement setRangeText:]):
(-[DOMHTMLTextAreaElement setRangeText:start:end:selectionMode:]):
(-[DOMHTMLTextAreaElement setSelectionRange:end:]):
* DOM/DOMUIKitExtensions.mm:
(-[DOMRange move:inDirection:]):
(-[DOMRange extend:inDirection:]):
(-[DOMNode borderRadii]):
(-[DOMNode isSelectableBlock]):
(-[DOMNode findExplodedTextNodeAtPoint:]):
(-[DOMHTMLElement structuralComplexityContribution]):
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(dataSource):
* WebView/WebDataSource.mm:
(addTypesFromClass):
2019-10-01 Alex Christensen <achristensen@webkit.org>
Fix internal build after r250549
https://bugs.webkit.org/show_bug.cgi?id=202390
Remove some more "using namespace WebCore"
* History/WebBackForwardList.mm:
(-[WebBackForwardList dictionaryRepresentation]):
(vectorToNSArray):
(-[WebBackForwardList backListWithLimit:]):
(-[WebBackForwardList forwardListWithLimit:]):
(-[WebBackForwardList description]):
(-[WebBackForwardList pageCacheSize]):
* Misc/WebSharingServicePickerController.mm:
(WebSharingServicePickerClient::pageForSharingServicePicker):
(WebSharingServicePickerClient::screenRectForCurrentSharingServicePickerItem):
(-[WebSharingServicePickerController didShareImageData:confirmDataIsValidTIFFData:]):
(-[WebSharingServicePickerController sharingService:didShareItems:]):
* Plugins/WebBasePluginPackage.mm:
(-[WebBasePluginPackage getPluginInfoFromPLists]):
(-[WebBasePluginPackage pluginInfo]):
* Plugins/WebPluginContainerCheck.mm:
(-[WebPluginContainerCheck _continueWithPolicy:]):
(-[WebPluginContainerCheck _isForbiddenFileLoad]):
* Plugins/WebPluginController.mm:
(initializeAudioSession):
(-[WebPluginController plugInViewWithArguments:fromPluginPackage:]):
(-[WebPluginController superlayerForPluginView:]):
(-[WebPluginController stopOnePlugin:]):
(-[WebPluginController stopOnePluginForPageCache:]):
(-[WebPluginController destroyOnePlugin:]):
(-[WebPluginController startAllPlugins]):
(-[WebPluginController addPlugin:]):
(-[WebPluginController destroyPlugin:]):
(-[WebPluginController destroyAllPlugins]):
(-[WebPluginController processingUserGesture]):
(-[WebPluginController webPlugInContainerLoadRequest:inFrame:]):
(-[WebPluginController webPlugInContainerSelectionColor]):
* Plugins/WebPluginDatabase.mm:
(-[WebPluginDatabase refresh]):
(-[WebPluginDatabase _removePlugin:]):
* WebCoreSupport/WebApplicationCache.mm:
(+[WebApplicationCache initializeWithBundleIdentifier:]):
(webApplicationCacheStorage):
* WebCoreSupport/WebApplicationCacheQuotaManager.mm:
2019-09-30 Alex Christensen <achristensen@webkit.org>
Resurrect Mac CMake build
https://bugs.webkit.org/show_bug.cgi?id=202384
Rubber-stamped by Tim Horton.
* DefaultDelegates/WebDefaultPolicyDelegate.m:
(-[WebDefaultPolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
2019-09-30 Alex Christensen <achristensen@webkit.org>
Unify more WebKitLegacy sources
https://bugs.webkit.org/show_bug.cgi?id=202390
Reviewed by Tim Horton.
* WebCoreSupport/WebFrameLoaderClient.mm:
(dataSource):
(WebFrameLoaderClient::pageID const):
(WebFrameLoaderClient::frameID const):
(WebFrameLoaderClient::makeRepresentation):
(WebFrameLoaderClient::forceLayoutOnRestoreFromPageCache):
(WebFrameLoaderClient::convertMainResourceLoadToDownload):
(WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
(WebFrameLoaderClient::assignIdentifierToInitialRequest):
(WebFrameLoaderClient::dispatchWillSendRequest):
(WebFrameLoaderClient::shouldUseCredentialStorage):
(WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
(WebFrameLoaderClient::canAuthenticateAgainstProtectionSpace):
(WebFrameLoaderClient::connectionProperties):
(WebFrameLoaderClient::dispatchDidReceiveResponse):
(WebFrameLoaderClient::willCacheResponse const):
(WebFrameLoaderClient::dispatchDidReceiveContentLength):
(WebFrameLoaderClient::dispatchDidFinishLoading):
(WebFrameLoaderClient::dispatchDidFailLoading):
(WebFrameLoaderClient::dispatchWillPerformClientRedirect):
(WebFrameLoaderClient::dispatchDidReceiveTitle):
(WebFrameLoaderClient::dispatchDidCommitLoad):
(WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
(WebFrameLoaderClient::dispatchDidFailLoad):
(WebFrameLoaderClient::dispatchDidReachLayoutMilestone):
(WebFrameLoaderClient::dispatchCreatePage):
(WebFrameLoaderClient::dispatchDecidePolicyForResponse):
(shouldTryAppLink):
(WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
(WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
(WebFrameLoaderClient::dispatchUnableToImplementPolicy):
(makeFormFieldValuesDictionary):
(WebFrameLoaderClient::dispatchWillSubmitForm):
(WebFrameLoaderClient::revertToProvisionalState):
(WebFrameLoaderClient::setMainDocumentError):
(WebFrameLoaderClient::startDownload):
(WebFrameLoaderClient::willChangeTitle):
(WebFrameLoaderClient::didChangeTitle):
(WebFrameLoaderClient::didReplaceMultipartContent):
(WebFrameLoaderClient::committedLoad):
(WebFrameLoaderClient::finishedLoading):
(WebFrameLoaderClient::updateGlobalHistory):
(WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
(WebFrameLoaderClient::shouldGoToHistoryItem const):
(WebFrameLoaderClient::didDisplayInsecureContent):
(WebFrameLoaderClient::didRunInsecureContent):
(WebFrameLoaderClient::cancelledError):
(WebFrameLoaderClient::blockedError):
(WebFrameLoaderClient::blockedByContentBlockerError):
(WebFrameLoaderClient::cannotShowURLError):
(WebFrameLoaderClient::interruptedForPolicyChangeError):
(WebFrameLoaderClient::blockedByContentFilterError):
(WebFrameLoaderClient::cannotShowMIMETypeError):
(WebFrameLoaderClient::fileDoesNotExistError):
(WebFrameLoaderClient::pluginWillHandleLoadError):
(WebFrameLoaderClient::shouldFallBack):
(WebFrameLoaderClient::canHandleRequest const):
(WebFrameLoaderClient::saveViewStateToItem):
(WebFrameLoaderClient::restoreViewState):
(WebFrameLoaderClient::createDocumentLoader):
(WebFrameLoaderClient::setTitle):
(WebFrameLoaderClient::savePlatformDataToCachedFrame):
(WebFrameLoaderClient::transitionToCommittedFromCachedFrame):
(WebFrameLoaderClient::transitionToCommittedForNewPage):
(WebFrameLoaderClient::setUpPolicyListener):
(WebFrameLoaderClient::actionDictionary const):
(WebFrameLoaderClient::canCachePage const):
(WebFrameLoaderClient::createFrame):
(WebFrameLoaderClient::objectContentType):
(PluginWidget::PluginWidget):
(PluginWidget::invalidateRect):
(NetscapePluginWidget::handleEvent):
(NetscapePluginWidget::notifyWidget):
(shouldBlockPlugin):
(WebFrameLoaderClient::createPlugin):
(WebFrameLoaderClient::redirectDataToPlugin):
(WebFrameLoaderClient::createJavaAppletWidget):
(shouldBlockWebGL):
(WebFrameLoaderClient::webGLPolicyForURL const):
(WebFrameLoaderClient::resolveWebGLPolicyForURL const):
(WebFrameLoaderClient::dispatchDidClearWindowObjectInWorld):
(WebFrameLoaderClient::createNetworkingContext):
(WebFrameLoaderClient::createPreviewLoaderClient):
(WebFrameLoaderClient::getLoadDecisionForIcons):
(webGetNSImage):
(WebFrameLoaderClient::finishedLoadingIcon):
(-[WebFramePolicyListener initWithFrame:identifier:policyFunction:defaultPolicy:]):
(-[WebFramePolicyListener initWithFrame:identifier:policyFunction:defaultPolicy:appLinkURL:]):
(-[WebFramePolicyListener invalidate]):
(-[WebFramePolicyListener receivedPolicyDecision:]):
(-[WebFramePolicyListener ignore]):
(-[WebFramePolicyListener download]):
(-[WebFramePolicyListener use]):
(-[WebFramePolicyListener continue]):
* WebInspector/WebInspector.mm:
(-[WebInspector showWindow]):
(-[WebInspector evaluateInFrontend:script:]):
* WebView/WebClipView.mm:
(-[WebClipView visibleRect]):
(-[WebClipView _immediateScrollToPoint:]):
* WebView/WebDataSource.mm:
(-[WebDataSource _documentFragmentWithArchive:]):
(-[WebDataSource _documentLoader]):
(-[WebDataSource initWithRequest:]):
(-[WebDataSource dealloc]):
(-[WebDataSource data]):
(-[WebDataSource webFrame]):
(-[WebDataSource initialRequest]):
(-[WebDataSource request]):
(-[WebDataSource webArchive]):
* WebView/WebFrame.mm:
(core):
(kit):
(getWebView):
(+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]):
(+[WebFrame _createMainFrameWithPage:frameName:frameView:]):
(+[WebFrame _createSubframeWithOwnerElement:frameName:frameView:]):
(+[WebFrame _createMainFrameWithSimpleHTMLDocumentWithPage:frameView:style:]):
(-[WebFrame _attachScriptDebugger]):
(-[WebFrame _updateBackgroundAndUpdatesWhileOffscreen]):
(-[WebFrame _unmarkAllBadGrammar]):
(-[WebFrame _unmarkAllMisspellings]):
(-[WebFrame _hasSelection]):
(-[WebFrame _atMostOneFrameHasSelection]):
(-[WebFrame _findFrameWithSelection]):
(-[WebFrame _nodesFromList:]):
(-[WebFrame _stringForRange:]):
(-[WebFrame _paintBehaviorForDestinationContext:]):
(-[WebFrame _drawRect:contentsOnly:]):
(-[WebFrame _getVisibleRect:]):
(-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
(-[WebFrame _caretRectAtPosition:affinity:]):
(-[WebFrame _scrollDOMRangeToVisible:]):
(-[WebFrame _scrollDOMRangeToVisible:withInset:]):
(-[WebFrame _rangeByAlteringCurrentSelection:direction:granularity:]):
(-[WebFrame _selectionGranularity]):
(-[WebFrame _convertToNSRange:]):
(-[WebFrame _convertToDOMRange:]):
(-[WebFrame _convertToDOMRange:rangeIsRelativeTo:]):
(-[WebFrame _documentFragmentWithMarkupString:baseURLString:]):
(-[WebFrame _documentFragmentWithNodesAsParagraphs:]):
(-[WebFrame _visiblePositionForPoint:]):
(-[WebFrame _characterRangeAtPoint:]):
(-[WebFrame _typingStyle]):
(-[WebFrame _setTypingStyle:withUndoAction:]):
(-[WebFrame _dragSourceEndedAt:operation:]):
(-[WebFrame _canProvideDocumentSource]):
(-[WebFrame _commitData:]):
(-[WebFrame _isDescendantOfFrame:]):
(-[WebFrame _bodyBackgroundColor]):
(-[WebFrame _isFrameSet]):
(-[WebFrame _isVisuallyNonEmpty]):
(toWebFrameLoadType):
(-[WebFrame _rectsForRange:]):
(-[WebFrame _selectionRangeForFirstPoint:secondPoint:]):
(-[WebFrame _selectionRangeForPoint:]):
(-[WebFrame _selectNSRange:]):
(-[WebFrame _isDisplayingStandaloneImage]):
(-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]):
(-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]):
(-[WebFrame setTimeoutsPaused:]):
(-[WebFrame prepareForPause]):
(-[WebFrame resumeFromPause]):
(-[WebFrame selectWithoutClosingTypingNSRange:]):
(-[WebFrame _saveViewState]):
(-[WebFrame deviceOrientationChanged]):
(-[WebFrame renderedSizeOfNode:constrainedToWidth:]):
(-[WebFrame deepestNodeAtViewportLocation:]):
(-[WebFrame scrollableNodeAtViewportLocation:]):
(-[WebFrame approximateNodeAtViewportLocation:]):
(-[WebFrame revealSelectionAtExtent:]):
(-[WebFrame setCaretColor:]):
(-[WebFrame isTelephoneNumberParsingAllowed]):
(-[WebFrame isTelephoneNumberParsingEnabled]):
(-[WebFrame setSelectedDOMRange:affinity:closeTyping:]):
(-[WebFrame selectNSRange:onElement:]):
(-[WebFrame setMarkedText:selectedRange:]):
(-[WebFrame setMarkedText:forCandidates:]):
(-[WebFrame getDictationResultRanges:andMetadatas:]):
(-[WebFrame dictationResultMetadataForRange:]):
(+[WebFrame stringWithData:textEncodingName:]):
(-[WebFrame fontForSelection:]):
(-[WebFrame _userScrolled]):
(-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:matchStyle:]):
(-[WebFrame resetTextAutosizingBeforeLayout]):
(-[WebFrame _setTextAutosizingWidth:]):
(-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
(-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:]):
(-[WebFrame _smartInsertForString:replacingRange:beforeString:afterString:]):
(-[WebFrame _cacheabilityDictionary]):
(-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
(-[WebFrame _globalContextForScriptWorld:]):
(-[WebFrame setAccessibleName:]):
(-[WebFrame enhancedAccessibilityEnabled]):
(-[WebFrame setEnhancedAccessibility:]):
(-[WebFrame _layerTreeAsText]):
(-[WebFrame accessibilityRoot]):
(-[WebFrame _clearOpener]):
(-[WebFrame _computePageRectsWithPrintScaleFactor:pageSize:]):
(-[WebFrame focusedNodeHasContent]):
(-[WebFrame _dispatchDidReceiveTitle:]):
(-[WebFrame jsWrapperForNode:inScriptWorld:]):
(-[WebFrame elementAtPoint:]):
(-[WebFrame name]):
(needsMicrosoftMessengerDOMDocumentWorkaround):
(-[WebFrame DOMDocument]):
(-[WebFrame frameElement]):
(-[WebFrame provisionalDataSource]):
(-[WebFrame dataSource]):
(-[WebFrame loadRequest:]):
(-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):
(-[WebFrame findFrameNamed:]):
(-[WebFrame parentFrame]):
(-[WebFrame childFrames]):
(-[WebFrame windowObject]):
(-[WebFrame globalContext]):
(-[WebFrame javaScriptContext]):
(dataSource): Deleted.
* WebView/WebFrameView.mm:
(-[WebFrameView _web_frame]):
(-[WebFrameView _setDocumentView:]):
(-[WebFrameView _verticalPageScrollDistance]):
(-[WebFrameView _install]):
(-[WebFrameView _frameSizeChanged]):
(-[WebFrameView initWithFrame:]):
(-[WebFrameView drawRect:]):
(-[WebFrameView _scrollOverflowInDirection:granularity:]):
(-[WebFrameView _isVerticalDocument]):
(-[WebFrameView _isFlippedDocument]):
(-[WebFrameView _scrollToBeginningOfDocument]):
(-[WebFrameView _scrollToEndOfDocument]):
(-[WebFrameView _horizontalPageScrollDistance]):
(-[WebFrameView _pageVertically:]):
(-[WebFrameView _pageHorizontally:]):
(-[WebFrameView _scrollLineVertically:]):
(-[WebFrameView _scrollLineHorizontally:]):
(-[WebFrameView keyDown:keyDown:]):
(addTypesFromClass): Deleted.
* WebView/WebFullScreenController.mm:
(screenRectOfContents):
(-[WebFullScreenController element]):
(-[WebFullScreenController setElement:]):
(-[WebFullScreenController _document]):
(-[WebFullScreenController _manager]):
* WebView/WebHTMLView.mm:
(toAction):
(toTag):
(-[NSView _web_setNeedsDisplayInRect:]):
(promisedDataClient):
(+[WebHTMLView _excludedElementsForAttributedStringConversion]):
(-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:]):
(-[WebHTMLView _plainTextFromPasteboard:]):
(-[WebHTMLView _pasteWithPasteboard:allowPlainText:]):
(-[WebHTMLView readSelectionFromPasteboard:]):
(-[WebHTMLView _selectedRange]):
(-[WebHTMLView _writeSelectionWithPasteboardTypes:toPasteboard:cachedAttributedString:]):
(-[WebHTMLView _frameOrBoundsChanged]):
(-[WebHTMLView _updateMouseoverWithEvent:]):
(+[WebHTMLView _insertablePasteboardTypes]):
(+[WebHTMLView _selectionPasteboardTypes]):
(-[WebHTMLView pasteboard:provideDataForType:]):
(-[WebHTMLView setScale:]):
(-[WebHTMLView _canEdit]):
(-[WebHTMLView _canEditRichly]):
(-[WebHTMLView _hasSelection]):
(-[WebHTMLView _hasSelectionOrInsertionPoint]):
(-[WebHTMLView _hasInsertionPoint]):
(-[WebHTMLView _isEditable]):
(-[WebHTMLView _selectionDraggingImage]):
(-[WebHTMLView _insertOrderedList]):
(-[WebHTMLView _insertUnorderedList]):
(-[WebHTMLView _canIncreaseSelectionListLevel]):
(-[WebHTMLView _canDecreaseSelectionListLevel]):
(-[WebHTMLView _increaseSelectionListLevel]):
(-[WebHTMLView _increaseSelectionListLevelOrdered]):
(-[WebHTMLView _increaseSelectionListLevelUnordered]):
(-[WebHTMLView _decreaseSelectionListLevel]):
(-[WebHTMLView _writeSelectionToPasteboard:]):
(-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]):
(-[WebHTMLView _beginPrintModeWithMinimumPageWidth:height:maximumPageWidth:]):
(-[WebHTMLView _beginPrintModeWithPageWidth:height:shrinkToFit:]):
(-[WebHTMLView _beginScreenPaginationModeWithPageSize:shrinkToFit:]):
(-[WebHTMLView _adjustedBottomOfPageWithTop:bottom:limit:]):
(-[WebHTMLView coreCommandBySelector:]):
(-[WebHTMLView coreCommandByName:]):
(-[WebHTMLView validRequestorForSendType:returnType:]):
(-[WebHTMLView jumpToSelection:]):
(-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
(-[WebHTMLView maintainsInactiveSelection]):
(-[WebHTMLView reapplyStyles]):
(-[WebHTMLView layoutToMinimumPageWidth:height:originalPageWidth:originalPageHeight:maximumShrinkRatio:adjustingViewSize:]):
(-[WebHTMLView rightMouseUp:]):
(fixMenusReceivedFromOldClients):
(createShareMenuItem):
(createMenuItem):
(createMenuItems):
(customMenuFromDefaultItems):
(-[WebHTMLView menuForEvent:]):
(-[WebHTMLView clearFocus]):
(-[WebHTMLView setLayer:]):
(-[WebHTMLView setNeedsLayout:]):
(-[WebHTMLView setNeedsToApplyStyles:]):
(-[WebHTMLView _invalidateGStatesForTree]):
(-[WebHTMLView scrollWheel:]):
(-[WebHTMLView acceptsFirstMouse:]):
(-[WebHTMLView shouldDelayWindowOrderingForEvent:]):
(-[WebHTMLView mouseDown:]):
(-[WebHTMLView touch:]):
(-[WebHTMLView mouseDragged:]):
(-[WebHTMLView draggingSourceOperationMaskForLocal:]):
(-[WebHTMLView draggedImage:endedAt:operation:]):
(-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]):
(-[WebHTMLView draggingSession:sourceOperationMaskForDraggingContext:]):
(-[WebHTMLView draggingSession:endedAtPoint:operation:]):
(-[WebHTMLView mouseUp:]):
(-[WebHTMLView pressureChangeWithEvent:]):
(isTextInput):
(isInPasswordField):
(currentKeyboardEvent):
(-[WebHTMLView becomeFirstResponder]):
(-[WebHTMLView resignFirstResponder]):
(-[WebHTMLView _setPrinting:minimumPageLogicalWidth:logicalHeight:originalPageWidth:originalPageHeight:maximumShrinkRatio:adjustViewSize:paginateScreenContent:]):
(-[WebHTMLView _scaleFactorForPrintOperation:]):
(-[WebHTMLView keyDown:]):
(-[WebHTMLView keyUp:]):
(-[WebHTMLView flagsChanged:]):
(-[WebHTMLView centerSelectionInVisibleArea:]):
(-[WebHTMLView _selectionStartFontAttributesAsRTF]):
(-[WebHTMLView _fontAttributesFromFontPasteboard]):
(-[WebHTMLView _applyStyleToSelection:withUndoAction:]):
(-[WebHTMLView _applyEditingStyleToSelection:withUndoAction:]):
(-[WebHTMLView performKeyEquivalent:]):
(-[WebHTMLView copyFont:]):
(-[WebHTMLView pasteFont:]):
(-[WebHTMLView changeFont:]):
(-[WebHTMLView changeAttributes:]):
(-[WebHTMLView _undoActionFromColorPanelWithSelector:]):
(-[WebHTMLView _changeCSSColorUsingSelector:inRange:]):
(-[WebHTMLView changeColor:]):
(-[WebHTMLView checkSpelling:]):
(-[WebHTMLView showGuessPanel:]):
(-[WebHTMLView toggleBaseWritingDirection:]):
(-[WebHTMLView changeBaseWritingDirection:]):
(-[WebHTMLView _changeBaseWritingDirectionTo:]):
(-[WebHTMLView _updateControlTints]):
(-[WebHTMLView _selectionChanged]):
(-[WebHTMLView _updateFontPanel]):
(-[WebHTMLView _canSmartCopyOrDelete]):
(-[WebHTMLView _lookUpInDictionaryFromMenu:]):
(-[WebHTMLView quickLookWithEvent:]):
(-[WebHTMLView _executeSavedKeypressCommands]):
(-[WebHTMLView _interpretKeyEvent:savingCommands:]):
(-[WebHTMLView _handleEditingKeyEvent:]):
(-[WebHTMLView _web_updateLayoutAndStyleIfNeededRecursive]):
(-[WebHTMLView ALLOW_DEPRECATED_IMPLEMENTATIONS_END]):
(-[WebHTMLView attributedSubstringFromRange:]):
(-[WebHTMLView hasMarkedText]):
(extractUnderlines):
(-[WebHTMLView setMarkedText:selectedRange:]):
(-[WebHTMLView doCommandBySelector:]):
(-[WebHTMLView insertText:]):
(-[WebHTMLView _updateSecureInputState]):
(-[WebHTMLView _updateSelectionForInputManager]):
(-[WebHTMLView selectionTextRects]):
(imageFromRect):
(selectionImage):
(-[WebHTMLView selectionImageForcingBlackText:selectionImageForcingBlackText:]):
(-[WebHTMLView selectAll]):
(-[WebHTMLView deselectAll]):
(-[WebHTMLView _legacyAttributedStringFrom:offset:to:offset:]):
(-[WebHTMLView attributedString]):
(-[WebHTMLView selectedAttributedString]):
(-[WebHTMLView elementAtPoint:allowShadowContent:]):
(-[WebHTMLView countMatchesForText:inDOMRange:options:limit:markMatches:]):
(-[WebHTMLView setMarkedTextMatchesAreHighlighted:]):
(-[WebHTMLView markedTextMatchesAreHighlighted]):
(-[WebHTMLView unmarkAllTextMatches]):
(-[WebHTMLView rectsForTextMatches]):
(-[WebHTMLView _findString:options:]):
* WebView/WebImmediateActionController.mm:
(-[WebImmediateActionController webView:didHandleScrollWheel:]):
(-[WebImmediateActionController _cancelImmediateAction]):
(-[WebImmediateActionController performHitTestAtPoint:]):
(-[WebImmediateActionController immediateActionRecognizerDidUpdateAnimation:]):
(-[WebImmediateActionController immediateActionRecognizerDidCancelAnimation:]):
(-[WebImmediateActionController immediateActionRecognizerDidCompleteAnimation:]):
(-[WebImmediateActionController _defaultAnimationController]):
(-[WebImmediateActionController _updateImmediateActionItem]):
(-[WebImmediateActionController menuItemDidClose:]):
(elementBoundingBoxInWindowCoordinatesFromNode):
(-[WebImmediateActionController menuItem:itemFrameForPoint:]):
(-[WebImmediateActionController menuItem:maxSizeForPoint:]):
(-[WebImmediateActionController _animationControllerForDataDetectedText]):
(-[WebImmediateActionController _animationControllerForDataDetectedLink]):
(+[WebImmediateActionController _dictionaryPopupInfoForRange:inFrame:withLookupOptions:indicatorOptions:transition:]):
(-[WebImmediateActionController _animationControllerForText]):
* WebView/WebPDFView.mm:
(isFrameInRange):
(-[WebPDFView pasteboardTypesForSelection]):
(-[WebPDFView writeSelectionWithPasteboardTypes:toPasteboard:]):
(-[WebPDFView PDFViewWillClickOnLink:withURL:]):
* WebView/WebScriptDebugDelegate.mm:
(-[WebScriptCallFrame _convertValueToObjcValue:]):
* WebView/WebScriptDebugger.mm:
(toNSString):
(toWebFrame):
(WebScriptDebugger::WebScriptDebugger):
(WebScriptDebugger::sourceParsed):
(WebScriptDebugger::handlePause):
* WebView/WebScriptWorld.mm:
(-[WebScriptWorld initWithWorld:]):
(-[WebScriptWorld init]):
(+[WebScriptWorld standardWorld]):
(+[WebScriptWorld scriptWorldForGlobalContext:]):
(core):
(+[WebScriptWorld findOrCreateWorld:]):
* WebView/WebView.mm:
(coreOptions):
(coreLayoutMilestones):
(kitLayoutMilestones):
(kit):
(WebKit::DeferredPageDestructor::createDeferredPageDestructor):
(WebKit::DeferredPageDestructor::DeferredPageDestructor):
(-[WebUITextIndicatorData initWithImage:textIndicatorData:scale:]):
(+[WebView _standardUserAgentWithApplicationName:]):
(+[WebView _reportException:inContext:]):
(shouldEnableLoadDeferring):
(shouldRestrictWindowFocus):
(needsOutlookQuirksScript):
(-[WebView _injectOutlookQuirksScript]):
(shouldUseLegacyBackgroundSizeShorthandBehavior):
(shouldAllowWindowOpenWithoutUserGesture):
(WebKitInitializeGamepadProviderIfNecessary):
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
(-[WebView _replaceCurrentHistoryItem:]):
(-[WebView updateLayoutIgnorePendingStyleSheets]):
(-[WebView _requestStartDataInteraction:globalPosition:]):
(-[WebView _startDrag:]):
(-[WebView dragDataForSession:client:global:operation:]):
(-[WebView _didConcludeEditDrag]):
(+[WebView _setAlwaysUsesComplexTextCodePath:]):
(+[WebView canCloseAllWebViews]):
(+[WebView closeAllWebViews]):
(-[WebView _dispatchUnloadEvent]):
(-[WebView styleAtSelectionStart]):
(-[WebView _didFinishScrollingOrZooming]):
(-[WebView _close]):
(-[WebView _isProcessingUserGesture]):
(+[WebView _enableRemoteInspector]):
(+[WebView _disableRemoteInspector]):
(+[WebView _disableAutoStartRemoteInspector]):
(+[WebView _isRemoteInspectorEnabled]):
(+[WebView _hasRemoteInspectorSession]):
(-[WebView _setHostApplicationProcessIdentifier:auditToken:]):
(-[WebView _loadBackForwardListFromOtherView:]):
(-[WebView _needsKeyboardEventDisambiguationQuirks]):
(needsSelfRetainWhileLoadingQuirk):
(-[WebView _needsPreHTML5ParserQuirks]):
(-[WebView _preferencesChanged:]):
(-[WebView _cacheFrameLoadDelegateImplementations]):
(+[WebView _unregisterViewClassAndRepresentationClassForMIMEType:]):
(+[WebView _registerViewClass:representationClass:forURLScheme:]):
(+[WebView _decodeData:]):
(-[WebView _didStartProvisionalLoadForFrame:]):
(-[WebView _checkDidPerformFirstNavigation]):
(-[WebView _cachedResponseForURL:]):
(+[WebView _setShouldUseFontSmoothing:]):
(+[WebView _shouldUseFontSmoothing]):
(+[WebView _setUsesTestModeFocusRingColor:]):
(+[WebView _usesTestModeFocusRingColor]):
(-[WebView setAlwaysShowVerticalScroller:]):
(-[WebView alwaysShowVerticalScroller]):
(-[WebView setAlwaysShowHorizontalScroller:]):
(-[WebView setProhibitsMainFrameScrolling:]):
(-[WebView alwaysShowHorizontalScroller]):
(-[WebView _setMediaLayer:forPluginView:]):
(-[WebView _attachScriptDebuggerToAllFrames]):
(-[WebView _detachScriptDebuggerFromAllFrames]):
(+[WebView _productivityDocumentMIMETypes]):
(-[WebView _setFixedLayoutSize:]):
(-[WebView _synchronizeCustomFixedPositionLayoutRect]):
(-[WebView _viewGeometryDidChange]):
(-[WebView _overflowScrollPositionChangedTo:forNode:isUserScroll:]):
(+[WebView _doNotStartObservingNetworkReachability]):
(-[WebView _touchEventRegions]):
(-[WebView textIteratorForRect:]):
(-[WebView _executeCoreCommandByName:value:]):
(-[WebView _isUsingAcceleratedCompositing]):
(-[WebView _isSoftwareRenderable]):
(-[WebView setTracksRepaints:]):
(-[WebView isTrackingRepaints]):
(-[WebView resetTrackedRepaints]):
(-[WebView trackedRepaintRects]):
(+[WebView _addOriginAccessWhitelistEntryWithSourceOrigin:destinationProtocol:destinationHost:allowDestinationSubdomains:]):
(+[WebView _removeOriginAccessWhitelistEntryWithSourceOrigin:destinationProtocol:destinationHost:allowDestinationSubdomains:]):
(+[WebView _resetOriginAccessWhitelists]):
(+[WebView _addUserScriptToGroup:world:source:url:whitelist:blacklist:injectionTime:injectedFrames:]):
(+[WebView _addUserStyleSheetToGroup:world:source:url:whitelist:blacklist:injectedFrames:]):
(-[WebView allowsNewCSSAnimationsWhileSuspended]):
(-[WebView setAllowsNewCSSAnimationsWhileSuspended:]):
(-[WebView cssAnimationsSuspended]):
(-[WebView setCSSAnimationsSuspended:]):
(+[WebView _setDomainRelaxationForbidden:forURLScheme:]):
(+[WebView _registerURLSchemeAsSecure:]):
(+[WebView _registerURLSchemeAsAllowingDatabaseAccessInPrivateBrowsing:]):
(-[WebView _scaleWebView:atOrigin:]):
(-[WebView _setUseFixedLayout:]):
(-[WebView _useFixedLayout]):
(-[WebView _fixedLayoutSize]):
(-[WebView _setPaginationMode:]):
(-[WebView _paginationMode]):
(-[WebView _listenForLayoutMilestones:]):
(-[WebView _layoutMilestones]):
(-[WebView _setPaginationBehavesLikeColumns:]):
(-[WebView _paginationBehavesLikeColumns]):
(-[WebView _setPageLength:]):
(-[WebView _pageLength]):
(-[WebView _setGapBetweenPages:]):
(-[WebView _gapBetweenPages]):
(-[WebView _setPaginationLineGridEnabled:]):
(-[WebView _paginationLineGridEnabled]):
(-[WebView _pageCount]):
(+[WebView _HTTPPipeliningEnabled]):
(+[WebView _setHTTPPipeliningEnabled:]):
(-[WebView shouldRequestCandidates]):
(-[WebView removePluginInstanceViewsFor:]):
(+[WebView registerURLSchemeAsLocal:]):
(-[WebView doWindowDidChangeScreen]):
(-[WebView _updateScreenScaleFromWindow]):
(-[WebView goToBackForwardItem:]):
(-[WebView _setZoomMultiplier:isTextOnly:]):
(-[WebView setCustomTextEncodingName:]):
(-[WebView windowScriptObject]):
(-[WebView setHostWindow:]):
(-[WebView applicationFlags:]):
(-[WebView actionMaskForDraggingInfo:]):
(-[WebView draggingEntered:]):
(-[WebView draggingUpdated:]):
(-[WebView draggingExited:]):
(-[WebView performDragOperation:]):
(incrementFrame):
(+[WebView registerViewClass:representationClass:forMIMEType:]):
(-[WebView moveDragCaretToPoint:]):
(-[WebView removeDragCaret]):
(-[WebView mainFrameIconURL]):
(coreTextCheckingType):
(textCheckingResultFromNSTextCheckingResult):
(-[WebView candidateListTouchBarItem:endSelectingCandidateAtIndex:]):
(-[WebView candidateListTouchBarItem:changedCandidateListVisibility:]):
(-[WebView shouldClose]):
(aeDescFromJSValue):
(-[WebView aeDescByEvaluatingJavaScriptFromString:]):
(-[WebView editableDOMRangeForPoint:]):
(-[WebView setSelectedDOMRange:affinity:]):
(-[WebView selectedDOMRange]):
(-[WebView selectionAffinity]):
(-[WebView setEditable:]):
(-[WebView setTypingStyle:]):
(-[WebView deleteSelection]):
(-[WebView applyStyle:]):
(-[WebView insertDictationPhrases:metadata:]):
(-[WebView _selectionIsCaret]):
(-[WebView _selectionIsAll]):
(-[WebView _simplifyMarkup:endNode:]):
(+[WebView _setCacheModel:]):
(-[WebView _searchWithGoogleFromMenu:]):
(-[WebView _retrieveKeyboardUIModeFromPreferences:]):
(-[WebView _keyboardUIMode]):
(-[WebView _mainCoreFrame]):
(-[WebView _clearCredentials]):
(-[WebView _flushCompositingChanges]):
(-[WebView _scheduleLayerFlushForPendingTileCacheRepaint]):
(-[WebView _hasActiveVideoForControlsInterface]):
(-[WebView _setUpPlaybackControlsManagerForMediaElement:]):
(-[WebView handleAcceptedAlternativeText:]):
(-[WebView _getWebCoreDictationAlternatives:fromTextAlternatives:]):
(-[WebView _animationControllerForDictionaryLookupPopupInfo:]):
(-[WebView _setTextIndicator:]):
(-[WebView _setTextIndicator:withLifetime:]):
(-[WebView _clearTextIndicatorWithAnimation:]):
(-[WebView _showDictionaryLookupPopup:]):
(-[WebView _dictionaryLookupPopoverWillClose:]):
(-[WebView showFormValidationMessage:withAnchorRect:]):
(-[WebView textTouchBar]):
(nsTextAlignmentFromRenderStyle):
(-[WebView updateTextTouchBar]):
(-[WebView updateTouchBar]):
(-[WebView candidateList]):
(-[WebView _geolocationDidFailWithMessage:]):
(-[WebView _resetAllGeolocationPermission]):
(-[WebView _notificationIDForTesting:]):
2019-09-25 Megan Gardner <megan_gardner@apple.com>
Update selections after scrolling for iframes and hide selections while iframes and overflow scrolls are scrolling.
https://bugs.webkit.org/show_bug.cgi?id=202125
Reviewed by Tim Horton.
Filling out unused functions needed for new fix.
* WebCoreSupport/WebEditorClient.h:
2019-09-24 Alex Christensen <achristensen@webkit.org>
Remove SchemeRegistry's list of URL schemes allowing local storage in private browsing, which is unused
https://bugs.webkit.org/show_bug.cgi?id=202181
Reviewed by Geoffrey Garen.
* WebView/WebView.mm:
(+[WebView _registerURLSchemeAsAllowingLocalStorageAccessInPrivateBrowsing:]):
2019-09-21 Chris Dumez <cdumez@apple.com>
Reduce use of SessionID::defaultSessionID() in WebKit
https://bugs.webkit.org/show_bug.cgi?id=202080
Reviewed by Alex Christensen.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::convertMainResourceLoadToDownload):
2019-09-20 Keith Rollin <krollin@apple.com>
Remove some support for < iOS 13
https://bugs.webkit.org/show_bug.cgi?id=202032
<rdar://problem/55548468>
Reviewed by Alex Christensen.
Remove some support for iOS versions less than 13.0.
Update conditionals that reference __IPHONE_OS_VERSION_MIN_REQUIRED
and __IPHONE_OS_VERSION_MAX_ALLOWED, assuming that they both have
values >= 130000. This means that expressions like
"__IPHONE_OS_VERSION_MIN_REQUIRED < 101300" are always False and
"__IPHONE_OS_VERSION_MIN_REQUIRED >= 101300" are always True.
This removal is part of a series of patches effecting the removal of
dead code for old versions of iOS. This particular pass involves
changes in which Dan Bates was involved. These changes are isolated
from other similar changes in order to facilitate the reviewing
process.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _handleEditingKeyEvent:]):
2019-09-18 Jer Noble <jer.noble@apple.com>
Add -suspend and -resumeAllMediaPlayback to WebView
https://bugs.webkit.org/show_bug.cgi?id=201951
Reviewed by Eric Carlson.
* WebView/WebView.mm:
(-[WebView suspendAllMediaPlayback]):
(-[WebView resumeAllMediaPlayback]):
* WebView/WebViewPrivate.h:
2019-09-18 Chris Dumez <cdumez@apple.com>
BlobRegistry no longer needs SessionIDs
https://bugs.webkit.org/show_bug.cgi?id=201936
Reviewed by Geoffrey Garen.
BlobRegistry no longer needs SessionIDs, now that we have a single session per WebProcess.
* WebCoreSupport/WebPlatformStrategies.mm:
2019-09-18 Chris Dumez <cdumez@apple.com>
CacheStorageProvider::createCacheStorageConnection() does not need to take in a SessionID
https://bugs.webkit.org/show_bug.cgi?id=201920
Reviewed by Geoffrey Garen.
CacheStorageProvider::createCacheStorageConnection() does not need to take in a SessionID.
This sessionID is no longer used now that we have a session per WebProcess.
* WebCoreSupport/WebPlatformStrategies.mm:
2019-09-18 Chris Dumez <cdumez@apple.com>
Drop FrameLoaderClient::sessionID()
https://bugs.webkit.org/show_bug.cgi?id=201916
Reviewed by Geoffrey Garen.
Drop FrameLoaderClient::sessionID(). The Frame can get the sessionID from its page (Which is
what the FrameLoaderClient::sessionID() ended up doing) and other call sites at WebKit2 layer
can get the sessionID from the WebProcess singleton.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
2019-09-17 Chris Dumez <cdumez@apple.com>
Stop calling Page::setSessionID() from WebKit2
https://bugs.webkit.org/show_bug.cgi?id=201888
Reviewed by Alex Christensen.
Stop calling Page::setSessionID() from WebKit2 since Page's sessionID can never change when
using WebKit2 (We process-swap and create a new Page in a new process when changing data
store). Instead, we now pass the sessionID ID when constructing the Page, as part of the
PageConfiguration structure.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
2019-09-09 Alex Christensen <achristensen@webkit.org>
Disable TLS 1.0 and 1.1 in WebSockets
https://bugs.webkit.org/show_bug.cgi?id=201573
Reviewed by Youenn Fablet.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
2019-09-06 Alex Christensen <achristensen@webkit.org>
When disabling legacy private browsing for testing, change the SessionID back to what it was, not the defaultSessionID
https://bugs.webkit.org/show_bug.cgi?id=201480
Reviewed by Youenn Fablet.
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2019-09-06 Rob Buis <rbuis@igalia.com>
Add runtime flag for lazy image loading
https://bugs.webkit.org/show_bug.cgi?id=199794
Reviewed by Frédéric Wang.
Remove parts of r248409 that were meant for WK1 since
lazy image loading is WK2 only.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences lazyImageLoadingEnabled]): Deleted.
(-[WebPreferences setLazyImageLoadingEnabled:]): Deleted.
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2019-09-04 Alex Christensen <achristensen@webkit.org>
Remove unused SPI that accesses MemoryCache directly
https://bugs.webkit.org/show_bug.cgi?id=201468
Reviewed by Tim Horton.
* Misc/WebCache.h:
* Misc/WebCache.mm:
(+[WebCache addImageToCache:forURL:]): Deleted.
(+[WebCache addImageToCache:forURL:forFrame:]): Deleted.
(+[WebCache removeImageFromCacheForURL:]): Deleted.
(+[WebCache removeImageFromCacheForURL:forFrame:]): Deleted.
2019-08-30 Keith Rollin <krollin@apple.com>
Remove AppKitCompatibilityDeclarations.h
https://bugs.webkit.org/show_bug.cgi?id=201283
<rdar://problem/54822042>
Reviewed by Alexey Proskuryakov.
The two copies of these files -- on in WTF, one in MiniBrowser -- are
empty and can be removed.
* Misc/WebNSEventExtras.m:
* Misc/WebNSViewExtras.m:
* WebKitPrefix.h:
2019-08-30 Keith Rollin <krollin@apple.com>
Remove extra braces
https://bugs.webkit.org/show_bug.cgi?id=201285
Reviewed by Alexey Proskuryakov.
Some code evolved such that there was only a single statement under an
'if' statement. The braces surrounding the single-line block can now
be removed.
* WebView/WebView.mm:
(-[WebView updateMediaTouchBar]):
2019-08-29 Keith Rollin <krollin@apple.com>
Update .xcconfig symbols to reflect the current set of past and future product versions.
https://bugs.webkit.org/show_bug.cgi?id=200720
<rdar://problem/54305032>
Reviewed by Alex Christensen.
Remove version symbols related to old OS's we no longer support,
ensure that version symbols are defined for OS's we do support.
* Configurations/Base.xcconfig:
* Configurations/DebugRelease.xcconfig:
* Configurations/Version.xcconfig:
2019-08-29 Keith Rollin <krollin@apple.com>
Remove support for macOS < 10.13 (part 3)
https://bugs.webkit.org/show_bug.cgi?id=201224
<rdar://problem/54795934>
Reviewed by Darin Adler.
Remove symbols in WebKitTargetConditionals.xcconfig related to macOS
10.13, including WK_MACOS_1013 and WK_MACOS_BEFORE_1013, and suffixes
like _MACOS_SINCE_1013.
* Configurations/WebKitTargetConditionals.xcconfig:
2019-08-29 Dean Jackson <dino@apple.com>
GenerateTAPI WebKitLegacy.tbd fails on internal iOS Simulator builds
https://bugs.webkit.org/show_bug.cgi?id=201200
Reverting r249211 after Dan Bernstein pointed out it will cause
an error with the public iOS 13 SDK.
* Misc/WebDownload.h:
2019-08-28 Dean Jackson <dino@apple.com>
GenerateTAPI WebKitLegacy.tbd fails on internal iOS Simulator builds
https://bugs.webkit.org/show_bug.cgi?id=201200
Reviewed by Simon Fraser.
We want to include Foundation/NSURLDownload.h if we're on
a newer iOS.
* Misc/WebDownload.h:
2019-08-28 Keith Rollin <krollin@apple.com>
Remove support for macOS < 10.13 (part 2)
https://bugs.webkit.org/show_bug.cgi?id=201197
<rdar://problem/54759985>
Reviewed by Darin Adler.
Update conditionals that reference WK_MACOS_1013 and suffixes like
_MACOS_SINCE_1013, assuming that we're always building on 10.13 or
later and that these conditionals are always True or False.
See Bug 200694 for earlier changes in this area.
* Configurations/FeatureDefines.xcconfig:
2019-08-27 Mark Lam <mark.lam@apple.com>
Refactor to use VM& instead of VM* at as many places as possible.
https://bugs.webkit.org/show_bug.cgi?id=201172
Reviewed by Yusuke Suzuki.
* DOM/DOM.mm:
(+[DOMNode _nodeFromJSWrapper:]):
* DOM/DOMUtility.mm:
(createDOMWrapper):
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(identifierFromIdentifierRep):
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::enumerate):
(WebKit::getObjectID):
(WebKit::NetscapePluginInstanceProxy::addValueToArray):
(WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray):
(WebKit::NetscapePluginInstanceProxy::retainLocalObject):
(WebKit::NetscapePluginInstanceProxy::releaseLocalObject):
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::stringValue const):
(WebKit::ProxyInstance::getPropertyNames):
* WebView/WebFrame.mm:
(-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
2019-08-23 Chris Dumez <cdumez@apple.com>
[geolocation] Rename interfaces and remove [NoInterfaceObject]
https://bugs.webkit.org/show_bug.cgi?id=200885
Reviewed by Alex Christensen.
* WebCoreSupport/WebGeolocationClient.h:
* WebCoreSupport/WebGeolocationClient.mm:
(WebGeolocationClient::lastPosition):
* WebView/WebGeolocationPosition.mm:
(-[WebGeolocationPositionInternal initWithCoreGeolocationPosition:]):
(core):
(-[WebGeolocationPosition initWithTimestamp:latitude:longitude:accuracy:]):
(-[WebGeolocationPosition initWithGeolocationPosition:]):
* WebView/WebGeolocationPositionInternal.h:
2019-08-22 Andy Estes <aestes@apple.com>
[watchOS] Disable Content Filtering in the simulator build
https://bugs.webkit.org/show_bug.cgi?id=201047
Reviewed by Tim Horton.
* Configurations/FeatureDefines.xcconfig:
2019-08-21 Tim Horton <timothy_horton@apple.com>
[Mail] Tapping top of message scrolls back to copied text instead of top of the message
https://bugs.webkit.org/show_bug.cgi?id=200999
<rdar://problem/54564878>
Reviewed by Wenson Hsieh.
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::shouldAllowSingleClickToChangeSelection const):
Copy the existing behavior from EventHandler.
We do not fix the bug in WebKitLegacy for a multitude of reasons, primarily
because we do not know of any user impact.
2019-08-21 Ryosuke Niwa <rniwa@webkit.org>
Put keygen element behind a runtime flag and disable it by default
https://bugs.webkit.org/show_bug.cgi?id=200850
Reviewed by Antti Koivisto.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(-[WebPreferences keygenElementEnabled]):
(-[WebPreferences setKeygenElementEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2019-08-19 Sihui Liu <sihui_liu@apple.com>
Remove IDB-specific quota
https://bugs.webkit.org/show_bug.cgi?id=196545
<rdar://problem/54201783>
Reviewed by Youenn Fablet.
* Storage/WebDatabaseManager.mm:
(-[WebDatabaseManager setIDBPerOriginQuota:]): Deleted.
* Storage/WebDatabaseManagerPrivate.h:
2019-08-18 Yusuke Suzuki <ysuzuki@apple.com>
[WTF] Add makeUnique<T>, which ensures T is fast-allocated, makeUnique / makeUniqueWithoutFastMallocCheck part
https://bugs.webkit.org/show_bug.cgi?id=200620
Reviewed by Geoffrey Garen.
* History/WebHistory.mm:
(-[WebHistoryPrivate init]):
* History/WebHistoryItem.mm:
(-[WebHistoryItem initFromDictionaryRepresentation:]):
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WKPCGetScriptableNPObjectReply):
(WKPCBooleanReply):
(WKPCBooleanAndDataReply):
(WKPCInstantiatePluginReply):
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::methodNamed):
(WebKit::ProxyInstance::fieldNamed):
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView createPlugin]):
* Plugins/WebNetscapePluginEventHandler.mm:
(WebNetscapePluginEventHandler::create):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView scheduleTimerWithInterval:repeat:timerFunc:]):
* Storage/WebDatabaseManagerClient.mm:
(DidModifyOriginData::dispatchToMainThread):
* WebCoreSupport/WebFrameLoaderClient.mm:
(addRedirectURL):
(WebFrameLoaderClient::savePlatformDataToCachedFrame):
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorClient::openLocalFrontend):
* WebView/WebDeviceOrientationProviderMock.mm:
* WebView/WebFrame.mm:
(-[WebFrame _attachScriptDebugger]):
* WebView/WebMediaPlaybackTargetPicker.mm:
(WebMediaPlaybackTargetPicker::create):
* WebView/WebTextIterator.mm:
(-[WebTextIterator initWithRange:]):
* WebView/WebView.mm:
(-[WebView _injectOutlookQuirksScript]):
(-[WebView _commonInitializationWithFrameName:groupName:]):
(+[WebView _addUserScriptToGroup:world:source:url:whitelist:blacklist:injectionTime:injectedFrames:]):
(+[WebView _addUserStyleSheetToGroup:world:source:url:whitelist:blacklist:injectedFrames:]):
(-[WebView _selectionServiceController]):
(-[WebView _setTextIndicator:withLifetime:]):
* WebView/WebViewData.mm:
(WebViewLayerFlushScheduler::WebViewLayerFlushScheduler):
(-[WebViewPrivate init]):
2019-08-17 Darin Adler <darin@apple.com>
Tidy up checks to see if a character is in the Latin-1 range by using isLatin1 consistently
https://bugs.webkit.org/show_bug.cgi?id=200861
Reviewed by Ross Kirsling.
* Misc/WebKitNSStringExtras.mm:
(canUseFastRenderer): Use isLatin1.
2019-08-16 Chris Dumez <cdumez@apple.com>
LocalStorageDatabaseTracker does not need to subclass ThreadSafeRefCounted
https://bugs.webkit.org/show_bug.cgi?id=200825
Reviewed by Alex Christensen.
* Misc/WebKitVersionChecks.h:
* Storage/WebStorageManager.mm:
(WebKitInitializeStorageIfNecessary):
2019-08-16 Ryosuke Niwa <rniwa@webkit.org>
Split tabIndex computation for DOM and the rest of WebCore
https://bugs.webkit.org/show_bug.cgi?id=200806
Reviewed by Chris Dumez.
* DOM/DOMHTMLElement.mm:
(-[DOMHTMLElement tabIndex]):
(-[DOMHTMLElement setTabIndex:]):
2019-08-15 Yusuke Suzuki <ysuzuki@apple.com>
[WTF] Add makeUnique<T>, which ensures T is fast-allocated, WTF_MAKE_FAST_ALLOCATED annotation part
https://bugs.webkit.org/show_bug.cgi?id=200620
Reviewed by Geoffrey Garen.
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
* Plugins/WebNetscapePluginEventHandlerCocoa.h:
* Storage/WebDatabaseManagerClient.mm:
* WebCoreSupport/WebAlternativeTextClient.h:
* WebCoreSupport/WebCachedFramePlatformData.h:
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebContextMenuClient.h:
* WebCoreSupport/WebDragClient.h:
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebGeolocationClient.h:
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebNotificationClient.h:
* WebCoreSupport/WebSelectionServiceController.h:
* WebView/WebMediaPlaybackTargetPicker.h:
2019-08-15 Tim Horton <timothy_horton@apple.com>
Yellow Lookup highlight gets stuck over Mail messages
https://bugs.webkit.org/show_bug.cgi?id=200778
<rdar://problem/53868514>
Reviewed by Wenson Hsieh.
* WebView/WebView.mm:
(-[WebView _showDictionaryLookupPopup:]):
Add a dismissal callback so that when Reveal hides the panel, it also
dismisses the yellow indicator. This matches the behavior in modern WebKit.
2019-08-15 Sihui Liu <sihui_liu@apple.com>
Some improvements on web storage
https://bugs.webkit.org/show_bug.cgi?id=200373
Reviewed by Geoffrey Garen.
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]): notify storageNamespaceProvider about session change.
2019-08-15 Youenn Fablet <youenn@apple.com>
Always create a Document with a valid SessionID
https://bugs.webkit.org/show_bug.cgi?id=200727
Reviewed by Alex Christensen.
Implement WebKit1 sessionID getter like done for WebKit2.
Either the loader client has a page in which case the page session ID is used
or the client has no page, in which case the default session ID is used.
This is the same behavior as CachedResourceLoader.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::sessionID const):
2019-08-15 Simon Fraser <simon.fraser@apple.com>
Use ObjectIdentifier<FrameIdentifierType> for frameIDs
https://bugs.webkit.org/show_bug.cgi?id=199986
Reviewed by Ryosuke Niwa.
Use the strongly-typed FrameIdentifier instead of uint64_t as frame identifiers everywhere.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::frameID const):
2019-08-14 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r248526.
Caused two IndexedDB perf tests to fail
Reverted changeset:
"Remove IDB-specific quota"
https://bugs.webkit.org/show_bug.cgi?id=196545
https://trac.webkit.org/changeset/248526
2019-08-14 Keith Rollin <krollin@apple.com>
Remove support for macOS < 10.13
https://bugs.webkit.org/show_bug.cgi?id=200694
<rdar://problem/54278851>
Reviewed by Youenn Fablet.
Update conditionals that reference __MAC_OS_X_VERSION_MIN_REQUIRED and
__MAC_OS_X_VERSION_MAX_ALLOWED, assuming that they both have values >=
101300. This means that expressions like
"__MAC_OS_X_VERSION_MIN_REQUIRED < 101300" are always False and
"__MAC_OS_X_VERSION_MIN_REQUIRED >= 101300" are always True.
* WebCoreSupport/WebEditorClient.mm:
* WebView/PDFViewSPI.h:
* WebView/WebHTMLView.mm:
(-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:stopAtLayerBackedViews:_recursive:displayRectIgnoringOpacity:inContext:shouldChangeFontReferenceColor:stopAtLayerBackedViews:_recursive:displayRectIgnoringOpacity:inContext:shouldChangeFontReferenceColor:]):
(-[WebHTMLView _recursive:displayRectIgnoringOpacity:inGraphicsContext:shouldChangeFontReferenceColor:]):
(-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:stopAtLayerBackedViews:_recursive:displayRectIgnoringOpacity:inContext:shouldChangeFontReferenceColor:stopAtLayerBackedViews:_recursive:displayRectIgnoringOpacity:inContext:shouldChangeFontReferenceColor:_recursive:displayRectIgnoringOpacity:inContext:topView:]): Deleted.
(-[WebHTMLView _recursive:displayRectIgnoringOpacity:inGraphicsContext:shouldChangeFontReferenceColor:_recursive:displayRectIgnoringOpacity:inGraphicsContext:CGContext:topView:shouldChangeFontReferenceColor:]): Deleted.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
* WebView/WebView.mm:
(-[WebView performDragOperation:]):
(LayerFlushController::flushLayers):
(-[WebView updateMediaTouchBar]):
* WebView/WebViewData.h:
2019-08-14 Youenn Fablet <youenn@apple.com>
ThreadableBlobRegistry::blobSize should take a SessionID as parameter
https://bugs.webkit.org/show_bug.cgi?id=200671
Reviewed by ALex Christensen.
* WebCoreSupport/WebPlatformStrategies.mm:
2019-08-13 Youenn Fablet <youenn@apple.com>
Blob registries should be keyed by session IDs
https://bugs.webkit.org/show_bug.cgi?id=200567
Reviewed by Alex Christensen.
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::createBlobRegistry):
Ignore sessionID parameter for WK1.
2019-08-12 Chris Dumez <cdumez@apple.com>
Add threading assertions to RefCounted
https://bugs.webkit.org/show_bug.cgi?id=200507
Reviewed by Ryosuke Niwa.
* WebView/WebView.mm:
(+[WebView initialize]):
Enable new RefCounted threading assertions for WebKitLegacy.
2019-08-12 Chris Dumez <cdumez@apple.com>
Unreviewed, rolling out r248525.
Revert new threading assertions while I work on fixing the
issues they exposed
Reverted changeset:
"Add threading assertions to RefCounted"
https://bugs.webkit.org/show_bug.cgi?id=200507
https://trac.webkit.org/changeset/248525
2019-08-12 Youenn Fablet <youenn@apple.com>
Remove IDB-specific quota
https://bugs.webkit.org/show_bug.cgi?id=196545
Reviewed by Alex Christensen.
* Storage/WebDatabaseManager.mm:
(-[WebDatabaseManager setIDBPerOriginQuota:]): Deleted.
* Storage/WebDatabaseManagerPrivate.h:
2019-08-11 Chris Dumez <cdumez@apple.com>
Add threading assertions to RefCounted
https://bugs.webkit.org/show_bug.cgi?id=200507
Reviewed by Ryosuke Niwa.
* WebView/WebView.mm:
(+[WebView initialize]):
Enable new RefCounted threading assertions for WebKitLegacy.
2019-08-10 Tim Horton <timothy_horton@apple.com>
Remove some more unused 32-bit code
https://bugs.webkit.org/show_bug.cgi?id=200607
Reviewed by Alexey Proskuryakov.
* Configurations/WebKitLegacy.xcconfig:
* Misc/WebSharingServicePickerController.mm:
(-[WebSharingServicePickerController initWithItems:includeEditorServices:client:style:]):
(-[WebSharingServicePickerController initWithSharingServicePicker:client:]):
(-[WebSharingServicePickerController sharingService:didShareItems:]):
* Plugins/WebNetscapePluginEventHandler.mm:
* Plugins/WebNetscapePluginEventHandlerCarbon.h: Removed.
* Plugins/WebNetscapePluginEventHandlerCarbon.mm: Removed.
* Plugins/WebNetscapePluginEventHandlerCocoa.h:
(WebNetscapePluginEventHandlerCocoa::installKeyEventHandler): Deleted.
(WebNetscapePluginEventHandlerCocoa::removeKeyEventHandler): Deleted.
* Plugins/WebNetscapePluginEventHandlerCocoa.mm:
(WebNetscapePluginEventHandlerCocoa::WebNetscapePluginEventHandlerCocoa):
(WebNetscapePluginEventHandlerCocoa::keyDown):
(WebNetscapePluginEventHandlerCocoa::focusChanged):
(WebNetscapePluginEventHandlerCocoa::installKeyEventHandler): Deleted.
(WebNetscapePluginEventHandlerCocoa::removeKeyEventHandler): Deleted.
(WebNetscapePluginEventHandlerCocoa::TSMEventHandler): Deleted.
(WebNetscapePluginEventHandlerCocoa::handleTSMEvent): Deleted.
* WebCoreSupport/WebContextMenuClient.mm:
(WebContextMenuClient::contextMenuForEvent):
* WebView/WebHTMLView.mm:
(-[WebHTMLView _adjustedBottomOfPageWithTop:bottom:limit:]):
(-[WebHTMLView pressureChangeWithEvent:]):
* WebView/WebView.mm:
(LayerFlushController::flushLayers):
2019-08-08 Rob Buis <rbuis@igalia.com>
Add runtime flag for lazy image loading
https://bugs.webkit.org/show_bug.cgi?id=199794
Reviewed by Darin Adler.
Set lazyImageLoading runtime flag if preference is set.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences lazyImageLoadingEnabled]):
(-[WebPreferences setLazyImageLoadingEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2019-08-07 Priyanka Agarwal <pagarwal999@apple.com>
Allow clients to toggle a text input field between being viewable and having characters hidden while maintaining
a yellow auto-filled appearance
https://bugs.webkit.org/show_bug.cgi?id=200037
rdar://problem/51900961
Reviewed by Daniel Bates.
* DOM/WebDOMOperations.mm:
(-[DOMHTMLInputElement _isAutoFilledAndViewable]):
(-[DOMHTMLInputElement _setAutoFilledAndViewable:]):
* DOM/WebDOMOperationsPrivate.h:
2019-08-02 Keith Rollin <krollin@apple.com>
Consistently use Obj-C boolean literals
https://bugs.webkit.org/show_bug.cgi?id=200405
<rdar://problem/53880043>
Reviewed by Simon Fraser, Joseph Pecoraro.
There are places where we use equivalent but different expressions for
Obj-C boolean objects. For example, we use both [NSNumber
numberWithBool:YES] and @YES. There are places where both are used in
the same function, such as -[WebPreferences initialize]. The boolean
literal is in greater use and is more succinct, so standardize on
that. Also, change @(YES/NO) to @YES/NO.
* History/WebHistoryItem.mm:
* WebView/WebFrame.mm:
(-[WebFrame _cacheabilityDictionary]):
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
2019-08-01 Alex Christensen <achristensen@webkit.org>
Move FormData zip file generation to NetworkProcess and enable it for all WebKit clients for uploading directories
https://bugs.webkit.org/show_bug.cgi?id=200102
<rdar://problem/53275114>
Reviewed by Darin Adler.
* DefaultDelegates/WebDefaultUIDelegate.mm:
(-[WebDefaultUIDelegate webView:shouldReplaceUploadFile:usingGeneratedFilename:]): Deleted.
(-[WebDefaultUIDelegate webView:generateReplacementFile:]): Deleted.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::shouldReplaceWithGeneratedFileForUpload): Deleted.
(WebChromeClient::generateReplacementFile): Deleted.
* WebView/WebUIDelegatePrivate.h:
2019-07-25 Dean Jackson <dino@apple.com>
Add helper for ignoring deprecated implementation warnings
https://bugs.webkit.org/show_bug.cgi?id=200135
Reviewed by Wenson Hsieh.
Add ALLOW_DEPRECATED_IMPLEMENTATIONS_BEGIN/END macro which
is IGNORE_WARNINGS_BEGIN("deprecated-implementations")
* Misc/WebDownload.mm:
(-[WebDownload initWithRequest:delegate:]):
* Misc/WebIconDatabase.mm:
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView ALLOW_DEPRECATED_IMPLEMENTATIONS_END]):
(-[WebBaseNetscapePluginView IGNORE_WARNINGS_END]): Deleted.
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView ALLOW_DEPRECATED_IMPLEMENTATIONS_END]):
(-[WebDynamicScrollBarsView IGNORE_WARNINGS_END]): Deleted.
* WebView/WebHTMLView.mm:
(-[WebHTMLView draggingSourceOperationMaskForLocal:]):
(-[WebHTMLView draggedImage:endedAt:operation:]):
(-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]):
(-[WebHTMLView accessibilityAttributeValue:]):
(-[WebHTMLView ALLOW_DEPRECATED_IMPLEMENTATIONS_END]):
(-[WebHTMLView characterIndexForPoint:]):
(-[WebHTMLView firstRectForCharacterRange:]):
(-[WebHTMLView attributedSubstringFromRange:]):
(-[WebHTMLView setMarkedText:selectedRange:]):
(-[WebHTMLView doCommandBySelector:]):
(-[WebHTMLView insertText:]):
(-[WebHTMLView IGNORE_WARNINGS_END]): Deleted.
2019-07-23 Wenson Hsieh <wenson_hsieh@apple.com>
[macOS 10.15] Web process crashes when attempting to show the font panel via Font > Show Fonts
https://bugs.webkit.org/show_bug.cgi?id=200021
<rdar://problem/53301325>
Reviewed by Ryosuke Niwa.
Implement a new editing client hook. In WebKit1, this always returns true on macOS and false on iOS.
* WebCoreSupport/WebEditorClient.h:
2019-07-22 Simon Fraser <simon.fraser@apple.com>
Fix WebView iframe rendering in macOS Catalina
https://bugs.webkit.org/show_bug.cgi?id=200022
rdar://problem/49102040
Reviewed by Darin Adler.
Adapt to internal NSView method renames in Catalina.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:stopAtLayerBackedViews:_recursive:displayRectIgnoringOpacity:inContext:shouldChangeFontReferenceColor:stopAtLayerBackedViews:_recursive:displayRectIgnoringOpacity:inContext:shouldChangeFontReferenceColor:_recursive:displayRectIgnoringOpacity:inContext:topView:]):
(-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:shouldChangeFontReferenceColor:stopAtLayerBackedViews:_recursive:displayRectIgnoringOpacity:inContext:shouldChangeFontReferenceColor:_recursive:displayRectIgnoringOpacity:inContext:topView:]): Deleted.
2019-07-22 Simon Fraser <simon.fraser@apple.com>
Enable CSSOMViewScrollingAPIEnabled in WebKit1
https://bugs.webkit.org/show_bug.cgi?id=200008
rdar://problem/53409062
Reviewed by Tim Horton.
Default WebKitCSSOMViewScrollingAPIEnabledPreferenceKey to YES, so that
CSSOMViewScrollingAPIEnabled is on for both WebKit1 and WebKit2.
DumpRenderTree already turns this preference on, so this change is not
detected by tests.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
2019-07-22 Youenn Fablet <youenn@apple.com>
Disable MediaRecorder for legacy WebKit
https://bugs.webkit.org/show_bug.cgi?id=200001
<rdar://problem/53400030>
Reviewed by Eric Carlson.
Disable MediaRecorder by default in legacy WebKit.
Add SPI to set/get this preference.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences _mediaRecorderEnabled]):
(-[WebPreferences _setMediaRecorderEnabled:]):
* WebView/WebPreferencesPrivate.h:
2019-07-18 Alex Christensen <achristensen@webkit.org>
Unify builds in WebKitLegacy/mac/DOM
https://bugs.webkit.org/show_bug.cgi?id=199771
Reviewed by Geoffrey Garen.
* DOM/DOMAbstractView.mm:
* DOM/DOMAttr.mm:
* DOM/DOMBlob.mm:
* DOM/DOMCDATASection.mm:
* DOM/DOMCSSFontFaceRule.mm:
* DOM/DOMCSSImportRule.mm:
* DOM/DOMCSSMediaRule.mm:
* DOM/DOMCSSPageRule.mm:
* DOM/DOMCSSPrimitiveValue.mm:
* DOM/DOMCSSRule.mm:
* DOM/DOMCSSRuleList.mm:
* DOM/DOMCSSStyleDeclaration.mm:
* DOM/DOMCSSStyleRule.mm:
* DOM/DOMCSSStyleSheet.mm:
* DOM/DOMCSSUnknownRule.mm:
* DOM/DOMCSSValue.mm:
* DOM/DOMCSSValueList.mm:
* DOM/DOMCharacterData.mm:
* DOM/DOMComment.mm:
* DOM/DOMCounter.mm:
* DOM/DOMDocument.mm:
* DOM/DOMDocumentFragment.mm:
* DOM/DOMDocumentType.mm:
* DOM/DOMEvent.mm:
* DOM/DOMFile.mm:
* DOM/DOMFileList.mm:
* DOM/DOMHTMLAnchorElement.mm:
* DOM/DOMHTMLAppletElement.mm:
* DOM/DOMHTMLAreaElement.mm:
* DOM/DOMHTMLBRElement.mm:
* DOM/DOMHTMLBaseElement.mm:
* DOM/DOMHTMLBaseFontElement.mm:
* DOM/DOMHTMLBodyElement.mm:
* DOM/DOMHTMLButtonElement.mm:
* DOM/DOMHTMLCanvasElement.mm:
* DOM/DOMHTMLCollection.mm:
* DOM/DOMHTMLDListElement.mm:
* DOM/DOMHTMLDirectoryElement.mm:
* DOM/DOMHTMLDivElement.mm:
* DOM/DOMHTMLDocument.mm:
* DOM/DOMHTMLElement.mm:
* DOM/DOMHTMLEmbedElement.mm:
* DOM/DOMHTMLFieldSetElement.mm:
* DOM/DOMHTMLFontElement.mm:
* DOM/DOMHTMLFormElement.mm:
* DOM/DOMHTMLFrameElement.mm:
* DOM/DOMHTMLFrameSetElement.mm:
* DOM/DOMHTMLHRElement.mm:
* DOM/DOMHTMLHeadElement.mm:
* DOM/DOMHTMLHeadingElement.mm:
* DOM/DOMHTMLHtmlElement.mm:
* DOM/DOMHTMLIFrameElement.mm:
* DOM/DOMHTMLImageElement.mm:
* DOM/DOMHTMLInputElement.mm:
* DOM/DOMHTMLLIElement.mm:
* DOM/DOMHTMLLabelElement.mm:
* DOM/DOMHTMLLegendElement.mm:
* DOM/DOMHTMLLinkElement.mm:
* DOM/DOMHTMLMapElement.mm:
* DOM/DOMHTMLMarqueeElement.mm:
* DOM/DOMHTMLMediaElement.mm:
* DOM/DOMHTMLMenuElement.mm:
* DOM/DOMHTMLMetaElement.mm:
* DOM/DOMHTMLModElement.mm:
* DOM/DOMHTMLOListElement.mm:
* DOM/DOMHTMLObjectElement.mm:
* DOM/DOMHTMLOptGroupElement.mm:
* DOM/DOMHTMLOptionElement.mm:
* DOM/DOMHTMLOptionsCollection.mm:
* DOM/DOMHTMLParagraphElement.mm:
* DOM/DOMHTMLParamElement.mm:
* DOM/DOMHTMLPreElement.mm:
* DOM/DOMHTMLQuoteElement.mm:
* DOM/DOMHTMLScriptElement.mm:
* DOM/DOMHTMLSelectElement.mm:
* DOM/DOMHTMLStyleElement.mm:
* DOM/DOMHTMLTableCaptionElement.mm:
* DOM/DOMHTMLTableCellElement.mm:
* DOM/DOMHTMLTableColElement.mm:
* DOM/DOMHTMLTableElement.mm:
* DOM/DOMHTMLTableRowElement.mm:
* DOM/DOMHTMLTableSectionElement.mm:
* DOM/DOMHTMLTitleElement.mm:
* DOM/DOMHTMLUListElement.mm:
* DOM/DOMHTMLVideoElement.mm:
* DOM/DOMKeyboardEvent.mm:
* DOM/DOMMediaError.mm:
* DOM/DOMMediaList.mm:
* DOM/DOMMouseEvent.mm:
* DOM/DOMMutationEvent.mm:
* DOM/DOMNamedNodeMap.mm:
* DOM/DOMNodeIterator.mm:
* DOM/DOMNodeList.mm:
* DOM/DOMOverflowEvent.mm:
* DOM/DOMProcessingInstruction.mm:
* DOM/DOMProgressEvent.mm:
* DOM/DOMRGBColor.mm:
* DOM/DOMRange.mm:
* DOM/DOMRect.mm:
* DOM/DOMStyleSheet.mm:
* DOM/DOMStyleSheetList.mm:
* DOM/DOMText.mm:
* DOM/DOMTextEvent.mm:
* DOM/DOMTimeRanges.mm:
* DOM/DOMTokenList.mm:
* DOM/DOMTreeWalker.mm:
* DOM/DOMUIEvent.mm:
* DOM/DOMWheelEvent.mm:
* DOM/DOMXPath.mm:
* DOM/DOMXPathExpression.mm:
* DOM/DOMXPathResult.mm:
2019-07-17 Antoine Quint <graouts@apple.com>
Disable Pointer Events prior to watchOS 6
https://bugs.webkit.org/show_bug.cgi?id=199890
<rdar://problem/53206113>
Reviewed by Dean Jackson.
* Configurations/FeatureDefines.xcconfig:
2019-07-17 Zalan Bujtas <zalan@apple.com>
Unable to tap buttons at top of Wells Fargo app’s Payees screen
https://bugs.webkit.org/show_bug.cgi?id=199846
<rdar://problem/48112220>
Reviewed by Simon Fraser.
* WebView/WebFrame.mm:
(-[WebFrame approximateNodeAtViewportLocation:]):
2019-07-17 Alex Christensen <achristensen@webkit.org>
Add a runtime-disabled dialog element skeleton
https://bugs.webkit.org/show_bug.cgi?id=199839
Reviewed by Ryosuke Niwa.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences dialogElementEnabled]):
(-[WebPreferences setDialogElementEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
Add SPI to enable the dialog element for tests.
2019-07-15 Dean Jackson <dino@apple.com>
[WebGL] Remove software rendering and simplify context creation on macOS
https://bugs.webkit.org/show_bug.cgi?id=199789
Reviewed by Sam Weinig.
Remove force software WebGL setting.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences forceSoftwareWebGLRendering]): Deleted.
(-[WebPreferences setForceSoftwareWebGLRendering:]): Deleted.
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2019-07-13 Zalan Bujtas <zalan@apple.com>
Cannot bring up custom media controls at all on v.youku.com
https://bugs.webkit.org/show_bug.cgi?id=199699
<rdar://problem/51835327>
Reviewed by Simon Fraser.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::actionDictionary const):
* WebView/WebFrame.mm:
(-[WebFrame elementAtPoint:]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView elementAtPoint:allowShadowContent:]):
* WebView/WebImmediateActionController.mm:
(-[WebImmediateActionController performHitTestAtPoint:]):
2019-07-12 Alex Christensen <achristensen@webkit.org>
Begin unifying WebKitLegacy sources
https://bugs.webkit.org/show_bug.cgi?id=199730
Reviewed by Keith Miller.
* Configurations/WebKitLegacy.xcconfig:
2019-07-11 Pablo Saavedra <psaavedra@igalia.com>
[WPE][GTK] Build failure with ENABLE_ACCESSIBILITY=OFF
https://bugs.webkit.org/show_bug.cgi?id=199625
Added ENABLE(ACCESSIBILITY) and replaced HAVE(ACCESSIBILITY)
with ENABLE(ACCESSIBILITY) in the code.
Additionally, the TestRunner code generator now honors the
Conditional IDL format.
Reviewed by Konstantin Tokarev.
* WebView/WebFrame.mm:
(-[WebFrame setAccessibleName:]):
(-[WebFrame enhancedAccessibilityEnabled]):
(-[WebFrame setEnhancedAccessibility:]):
(-[WebFrame accessibilityRoot]):
2019-07-08 Antoine Quint <graouts@apple.com>
[Pointer Events] Enable only on the most recent version of the supported iOS family
https://bugs.webkit.org/show_bug.cgi?id=199562
<rdar://problem/52766511>
Reviewed by Dean Jackson.
* Configurations/FeatureDefines.xcconfig:
2019-07-03 Sam Weinig <weinig@apple.com>
Adopt simple structured bindings in more places
https://bugs.webkit.org/show_bug.cgi?id=199247
Reviewed by Alex Christensen.
Replaces simple uses of std::tie() with structured bindings. Does not touch
uses of std::tie() that are not initial declarations, use std::ignore or in
case where the binding is captured by a lambda, as structured bindings don't
work for those cases yet.
* WebView/WebImmediateActionController.mm:
(-[WebImmediateActionController _animationControllerForText]):
2019-07-02 Devin Rousso <drousso@apple.com>
Web Inspector: Debug: "Reset Web Inspector" should also clear the saved window size and attachment side
https://bugs.webkit.org/show_bug.cgi?id=198956
Reviewed by Matt Baker.
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::resetWindowState): Added.
2019-06-28 Timothy Hatcher <timothy@apple.com>
Rename effectiveAppearanceIsInactive and useInactiveAppearance to better match UIUserInterfaceLevel.
https://bugs.webkit.org/show_bug.cgi?id=199336
rdar://problem/52348938
Reviewed by Tim Horton.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView _setUseDarkAppearance:]):
(-[WebView _useElevatedUserInterfaceLevel]):
(-[WebView _setUseElevatedUserInterfaceLevel:]):
(-[WebView _setUseDarkAppearance:useInactiveAppearance:]):
(-[WebView _setUseDarkAppearance:useElevatedUserInterfaceLevel:]):
(-[WebView _effectiveUserInterfaceLevelIsElevated]):
(-[WebView viewDidChangeEffectiveAppearance]):
(-[WebView _useInactiveAppearance]): Deleted.
(-[WebView _setUseInactiveAppearance:]): Deleted.
(-[WebView _effectiveAppearanceIsInactive]): Deleted.
* WebView/WebViewPrivate.h:
2019-06-28 Konstantin Tokarev <annulen@yandex.ru>
Remove traces of ENABLE_ICONDATABASE remaining after its removal in 219733
https://bugs.webkit.org/show_bug.cgi?id=199317
Reviewed by Michael Catanzaro.
While IconDatabase and all code using it was removed,
ENABLE_ICONDATABASE still exists as build option and C++ macro.
* Configurations/FeatureDefines.xcconfig:
* WebView/WebView.mm:
(-[WebView _cacheFrameLoadDelegateImplementations]): Use PLATFORM(MAC)
guard instead of ENABLE_ICONDATABASE, because ENABLE_ICONDATABASE was
enabled for macOS only.
2019-06-27 Timothy Hatcher <timothy@apple.com>
Move WebKitLegacy off of a couple AppKit ivars.
https://bugs.webkit.org/show_bug.cgi?id=199279
rdar://problem/34983438
Reviewed by Tim Horton.
* WebView/WebHTMLView.mm:
(-[NSView _setSubviewsIvar:]): Added. Implement on older systems.
(-[NSView _subviewsIvar]): Added. Ditto.
(needsCursorRectsSupportAtPoint): Use _borderView property.
(-[WebHTMLView _setAsideSubviews]): Use _subviewsIvar property.
(-[NSWindow _web_borderView]): Deleted.
2019-06-27 Beth Dakin <bdakin@apple.com>
Upstream use of MACCATALYST
https://bugs.webkit.org/show_bug.cgi?id=199245
rdar://problem/51687723
Reviewed by Tim Horton.
* Configurations/Base.xcconfig:
* Configurations/FeatureDefines.xcconfig:
* Configurations/SDKVariant.xcconfig:
2019-06-27 Saam Barati <sbarati@apple.com>
Make WEBGPU enabled only on Mojave and later.
Rubber-stamped by Myles C. Maxfield.
* Configurations/FeatureDefines.xcconfig:
2019-06-16 Darin Adler <darin@apple.com>
Rename AtomicString to AtomString
https://bugs.webkit.org/show_bug.cgi?id=195276
Reviewed by Michael Catanzaro.
* many files: Let do-webcore-rename do the renaming.
2019-06-14 Megan Gardner <megan_gardner@apple.com>
Move Synthetic Editing Commands to behind an experimental feature flag
https://bugs.webkit.org/show_bug.cgi?id=198842
<rdar://problem/50594700>
Reviewed by Simon Fraser.
Add plumbing for synthetic editing command feature flag.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences syntheticEditingCommandsEnabled]):
(-[WebPreferences setSyntheticEditingCommandsEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2019-06-13 Antoine Quint <graouts@apple.com>
REGRESSION (r246103) [ Mojave+ WK1 ] Layout Test scrollbars/scrollbar-iframe-click-does-not-blur-content.html is timing out
https://bugs.webkit.org/show_bug.cgi?id=198800
<rdar://problem/51679634>
Reviewed by Tim Horton.
Expose a private method that we need to use from DumpRenderTree.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _hitViewForEvent:]):
* WebView/WebHTMLViewPrivate.h:
2019-06-10 Sam Weinig <weinig@apple.com>
Remove Dashboard support
https://bugs.webkit.org/show_bug.cgi?id=198615
Reviewed by Ryosuke Niwa.
Removes implementation, but keeps privatly exported interfaces and enums
around until we can confirm there are no more users of them.
* Configurations/FeatureDefines.xcconfig:
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:]):
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::annotatedRegionsChanged): Deleted.
* WebView/WebClipView.mm:
(-[WebClipView _focusRingVisibleRect]):
(-[WebClipView scrollWheel:]):
* WebView/WebDashboardRegion.h:
* WebView/WebDashboardRegion.mm:
* WebView/WebHTMLView.mm:
(-[WebHTMLView _updateMouseoverWithEvent:]):
(-[WebHTMLView acceptsFirstMouse:]):
(-[WebHTMLView setDataSource:]):
* WebView/WebPreferences.mm:
(cacheModelForMainBundle):
* WebView/WebUIDelegatePrivate.h:
* WebView/WebView.mm:
(-[WebView _needsPreHTML5ParserQuirks]):
(-[WebView _preferencesChanged:]):
(-[WebView _addScrollerDashboardRegions:]):
(-[WebView _dashboardRegions]):
(-[WebView _setDashboardBehavior:to:]):
(-[WebView _dashboardBehavior:]):
(-[WebView _addControlRect:clip:fromView:toDashboardRegions:]): Deleted.
(-[WebView _addScrollerDashboardRegionsForFrameView:dashboardRegions:]): Deleted.
(-[WebView _addScrollerDashboardRegions:from:]): Deleted.
* WebView/WebViewData.h:
* WebView/WebViewData.mm:
(-[WebViewPrivate init]):
* WebView/WebViewPrivate.h:
2019-06-10 Timothy Hatcher <timothy@apple.com>
Integrate dark mode support for iOS.
https://bugs.webkit.org/show_bug.cgi?id=198687
rdar://problem/51545643
Reviewed by Tim Horton.
* Configurations/FeatureDefines.xcconfig:
2019-06-07 Said Abou-Hallawa <sabouhallawa@apple.com>
REGRESSION (r244182) [WK1]: Page updates should always scheduleCompositingLayerFlush() immediately
https://bugs.webkit.org/show_bug.cgi?id=198664
Reviewed by Simon Fraser.
WK1 has to skip using DisplayRefreshMonitor when layers need to be updated.
* WebCoreSupport/WebChromeClient.h:
(WebChromeClient::needsImmediateScheduleCompositingLayerFlush):
== Rolled over to ChangeLog-2019-06-05 ==