blob: 9581a0467d4e4d967753282549c0b98a28e33474 [file] [log] [blame]
2012-10-02 Anders Carlsson <andersca@apple.com>
Build fixes.
* Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::spawnPluginHost):
(WebKit::NetscapePluginHostManager::didCreateWindow):
* Plugins/Hosted/NetscapePluginHostProxy.h:
(NetscapePluginHostProxy):
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WebKit::NetscapePluginHostProxy::didEnterFullscreen):
(WebKit::NetscapePluginHostProxy::didExitFullscreen):
(WebKit::NetscapePluginHostProxy::applicationDidBecomeActive):
(WebKit::NetscapePluginHostProxy::endModal):
(WebKit):
(WebKit::NetscapePluginHostProxy::makeCurrentProcessFrontProcess):
(WebKit::NetscapePluginHostProxy::makePluginHostProcessFrontProcess):
(WebKit::NetscapePluginHostProxy::isPluginHostProcessFrontProcess):
2012-10-01 Brady Eidson <beidson@apple.com>
Remove the Safari 2 -> Safari 3 icon database import code.
https://bugs.webkit.org/show_bug.cgi?id=98113
Reviewed by Maciej Stachowiak.
Nuke the performImport() IconDatabaseClient method, as well as the supporting methods.
* Misc/WebIconDatabase.mm:
* Misc/WebIconDatabaseInternal.h:
* Misc/WebIconDatabasePrivate.h:
* WebCoreSupport/WebIconDatabaseClient.h:
* WebCoreSupport/WebIconDatabaseClient.mm:
* WebKit.exp:
2012-09-28 Anders Carlsson <andersca@apple.com>
Remove support for method overloading from bridge code
https://bugs.webkit.org/show_bug.cgi?id=97959
Reviewed by Dan Bernstein.
Update for WebCore changes; MethodList has been replaced with a single Method* everywhere.
* Plugins/Hosted/ProxyInstance.h:
(ProxyInstance):
* Plugins/Hosted/ProxyInstance.mm:
(ProxyClass):
(WebKit::ProxyClass::methodNamed):
(WebKit::ProxyRuntimeMethod::create):
(WebKit::ProxyRuntimeMethod::ProxyRuntimeMethod):
(WebKit::ProxyInstance::getMethod):
(WebKit::ProxyInstance::invokeMethod):
(WebKit::ProxyInstance::methodNamed):
2012-09-28 Anders Carlsson <andersca@apple.com>
Remove Java bridge
https://bugs.webkit.org/show_bug.cgi?id=97954
Reviewed by Sam Weinig.
The Java bridge is not used by any port; Mac now has a NPAPI Java plug-in.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
Make sure that we try to load the NPAPI Java plug-in.
2012-09-27 Anders Carlsson <andersca@apple.com>
Get rid of more unused WK1 plug-in code
https://bugs.webkit.org/show_bug.cgi?id=97835
Reviewed by Mark Rowe.
* Plugins/WebBasePluginPackage.mm:
Remove JavaCFMPluginFilename #define.
(-[WebBasePluginPackage initWithPath:]):
#ifndef __ppc__ is always true now.
(-[WebBasePluginPackage isJavaPlugIn]):
Remove JavaCFMPluginFilename.
* Plugins/WebNetscapeDeprecatedFunctions.c: Removed.
* Plugins/WebNetscapeDeprecatedFunctions.h: Removed.
Remove functions that nobody calls anymore.
* Plugins/WebNetscapePluginPackage.mm:
Remove +initialize call, the earliest version of Shockwave we now support doesn't
require us to have a valid CurApRefNum file anymore.
(-[WebNetscapePluginPackage _tryLoad]):
Remove more unused code.
* Plugins/WebPluginDatabase.h:
Remove CFM from a comment.
2012-09-27 Anders Carlsson <andersca@apple.com>
Fix 32-bit build.
* Plugins/WebNetscapePluginPackage.mm:
(-[WebNetscapePluginPackage _initWithPath:]):
Add back the architecture check that i accidentally.
2012-09-27 Anders Carlsson <andersca@apple.com>
Remove support for CFM plug-ins in WebKit1
https://bugs.webkit.org/show_bug.cgi?id=97822
Reviewed by Mark Rowe.
I'm pretty sure that CFM style plug-ins haven't been used for the last ten years or so,
so it's safe to remove them (especially since they're PPC only).
* Plugins/WebNetscapePluginPackage.h:
* Plugins/WebNetscapePluginPackage.mm:
(-[WebNetscapePluginPackage openResourceFile]):
(-[WebNetscapePluginPackage closeResourceFile:]):
(-[WebNetscapePluginPackage _initWithPath:]):
(-[WebNetscapePluginPackage _tryLoad]):
(-[WebNetscapePluginPackage _unloadWithShutdown:]):
* Plugins/WebPluginDatabase.mm:
(PluginPackageCandidates::PluginPackageCandidates):
(PluginPackageCandidates::update):
(PluginPackageCandidates::bestCandidate):
(PluginPackageCandidates):
2012-09-26 Anders Carlsson <andersca@apple.com>
Stop using kCFURLHFSPathStyle
https://bugs.webkit.org/show_bug.cgi?id=97731
<rdar://problem/12378980>
Reviewed by Tim Horton.
Stop passing Carbon style paths to the plug-in. Both WebKitPluginHost, WebKit2 and Firefox
pass POSIX style paths which makes more sense.
* Plugins/WebNetscapePluginStream.mm:
(WebNetscapePluginStream::destroyStream):
2012-09-25 Dan Bernstein <mitz@apple.com>
WebKit/mac part of <rdar://problem/11455228> [mac] Stop using screen fonts
https://bugs.webkit.org/show_bug.cgi?id=97620
Reviewed by John Sullivan.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]): Changed the default value of the screenFontSubstitutionEnabled
preference to NO.
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]): Changed to enable screen font substitution also if
the value of the NSFontDefaultScreenFontSubstitutionEnabled user defaults key is YES.
2012-09-21 Jeffrey Pfau <jpfau@apple.com>
Add WebKit1 SPI for storage blocking preference
https://bugs.webkit.org/show_bug.cgi?id=97356
Reviewed by Brady Eidson.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences setStorageBlockingPolicy:]):
(-[WebPreferences storageBlockingPolicy]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2012-09-24 Simon Fraser <simon.fraser@apple.com>
<rdar://problem/12351906> Have DumpRenderTree and WebKitTestRunner crash logs show which test crashed
Reviewed by Mark Rowe.
Use a new WebKitSytemInterface function to add data to crash logs about which
test was running when the crash happened.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Hook up the function pointer for [wk|WK]SetCrashReportApplicationSpecificInformation.
2012-09-25 Beth Dakin <bdakin@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=95397
Need to merge didFirstVisuallyNonEmptyLayout and
didNewFirstVisuallyNonEmptyLayout
-and corresponding-
<rdar://problem/10791680>
Reviewed by Sam Weinig.
The new API has two parts. First, the client has to opt into which
layout milestones they are interested in hearing about using
[WebView _layoutMilestones]. Then, WebKit will call
the WebFrameLoader delegate's didLayout(WebLayoutMilestones)
callback when the specified layout milestones have fired.
didLayout takes the WebLayoutMilestones bit mask, which will
indicate which milestones have fired since it is possible for two
to fire at the same time.
Remove dispatchDidFirstLayout,
dispatchDidFirstVisuallyNonEmptyLayout, and
dispatchDidNewFirstVisuallyNonEmptyLayout. They are now replaced
by dispatchDidLayout(LayoutMilestones)
* WebCoreSupport/WebFrameLoaderClient.h:
(WebFrameLoaderClient):
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchDidLayout):
Add new function to the delegate for didLayout.
* WebView/WebDelegateImplementationCaching.h:
(WebFrameLoadDelegateImplementationCache):
We need a delegate template that takes an NSUInteger.
* WebView/WebDelegateImplementationCaching.mm:
(CallDelegate):
(CallFrameLoadDelegate):
Convert between WebCore and WebKit versions of the bit mask.
* WebView/WebView.mm:
(coreLayoutMilestones):
(kitLayoutMilestones):
Add new delegate, and set the appropriate layout milestones in
WebCore based on old delegates having implementations.
(-[WebView _cacheFrameLoadDelegateImplementations]):
Call into WebCore.
(-[WebView _listenForLayoutMilestones:]):
(-[WebView _layoutMilestones]):
* WebView/WebViewInternal.h:
* WebView/WebViewPrivate.h:
2012-09-24 Benjamin Poulain <bpoulain@apple.com>
Fix Geolocation error reporting in the test support
https://bugs.webkit.org/show_bug.cgi?id=97386
Reviewed by Sam Weinig.
* WebView/WebView.mm:
(-[WebView _geolocationDidFailWithMessage:]):
* WebView/WebViewPrivate.h:
2012-09-24 Ryosuke Niwa <rniwa@webkit.org>
suspend/resumeWidgetHierarchyUpdates should be a RAII object
https://bugs.webkit.org/show_bug.cgi?id=96706
Reviewed by Simon Fraser.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _invalidateGStatesForTree]):
2012-09-21 Chris Rogers <crogers@google.com>
Add Web Audio support for deprecated/legacy APIs
https://bugs.webkit.org/show_bug.cgi?id=97050
Reviewed by Eric Carlson.
* Configurations/FeatureDefines.xcconfig:
2012-09-19 Dan Bernstein <mitz@apple.com>
WebKit/mac part of adding a setting and API for disabling screen font substitution
https://bugs.webkit.org/show_bug.cgi?id=97168
Reviewed by Tim Horton.
* WebView/WebPreferenceKeysPrivate.h: Defined WebKitScreenFontSubstitutionEnabledKey.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]): Added a default value of YES for the new preference key.
(-[WebPreferences setScreenFontSubstitutionEnabled:]): Added this setter.
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]): Added a call to Settings::setScreenFontSubstitutionEnabled
to push the preference down to Settings.
2012-09-17 Dan Bernstein <mitz@apple.com>
<rdar://problem/12316935> [mac WebKit1]: -[WebView _setPaginationBehavesLikeColumns:] is a no-op
https://bugs.webkit.org/show_bug.cgi?id=96971
Reviewed by Sam Weinig.
* WebView/WebView.mm:
(-[WebView _setPaginationBehavesLikeColumns:]): Added a call to setPagination().
2012-09-14 Adam Barth <abarth@webkit.org>
Remove webkitPostMessage
https://bugs.webkit.org/show_bug.cgi?id=96577
Reviewed by Ojan Vafai.
Add ENABLE_LEGACY_VENDOR_PREFIXES flag.
* Configurations/FeatureDefines.xcconfig:
2012-09-14 Beth Dakin <bdakin@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=96688
Put position:fixed elements in their own layers and allow them to
create a stacking context
-and corresponding-
<rdar://problem/11467961>
Reviewed by Simon Fraser.
Enable these settings in WK1 too for consistency.
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2012-09-13 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r128552.
http://trac.webkit.org/changeset/128552
https://bugs.webkit.org/show_bug.cgi?id=96729
Still breaks the test on chromium linux debug. It's quite
annoying. (Requested by rniwa on #webkit).
* WebView/WebHTMLView.mm:
(-[WebHTMLView _invalidateGStatesForTree]):
2012-09-13 Ryosuke Niwa <rniwa@webkit.org>
suspend/resumeWidgetHierarchyUpdates should be a RAII object
https://bugs.webkit.org/show_bug.cgi?id=96706
Reviewed by Simon Fraser.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _invalidateGStatesForTree]):
2012-09-13 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r128531.
http://trac.webkit.org/changeset/128531
https://bugs.webkit.org/show_bug.cgi?id=96719
plugins/document-open.html crash on Chromium-Linux (Requested
by tkent1 on #webkit).
* WebView/WebHTMLView.mm:
(-[WebHTMLView _invalidateGStatesForTree]):
2012-09-13 Benjamin Poulain <bpoulain@apple.com>
Improve the SourceProvider hierarchy
https://bugs.webkit.org/show_bug.cgi?id=95635
Reviewed by Geoffrey Garen.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm: Fix a #include abuse.
* WebView/WebScriptDebugger.mm:
(toNSString): We can now use the (faster) implicit conversion
from String to NSString.
2012-09-13 Ryosuke Niwa <rniwa@webkit.org>
suspend/resumeWidgetHierarchyUpdates should be a RAII object
https://bugs.webkit.org/show_bug.cgi?id=96706
Reviewed by Simon Fraser.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _invalidateGStatesForTree]):
2012-09-12 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r127876.
http://trac.webkit.org/changeset/127876
https://bugs.webkit.org/show_bug.cgi?id=96600
mouse click doesn't work for spin button if spin button in
iframe (Requested by yosin on #webkit).
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::actionDictionary):
* WebView/WebHTMLView.mm:
(-[WebHTMLView elementAtPoint:allowShadowContent:]):
2012-09-11 Geoffrey Garen <ggaren@apple.com>
Mac build fix: Commit a file I forgot.
* WebView/WebScriptDebugDelegate.mm:
(-[WebScriptCallFrame functionName]):
2012-09-11 Michael Saboff <msaboff@apple.com>
Build fixed for http://trac.webkit.org/changeset/128243
Rubber stamped by Stephanie Lewis.
Added missing include file needed by 96422.
* icu/unicode/unorm2.h: Added.
2012-09-11 Michael Saboff <msaboff@apple.com>
Build fixed for http://trac.webkit.org/changeset/128243
Rubber stamped by Stephanie Lewis.
Added missing include file needed by 96422.
* icu/unicode/ptypes.h: Added.
2012-09-11 Michael Saboff <msaboff@apple.com>
Update ICU header files to more recent version
https://bugs.webkit.org/show_bug.cgi?id=96422
Reviewed by Geoff Garen.
Updated ICU header files to 4.6.1. Modifications made as part of the merge are:
platform.h - Changed ifndef / define / endif for U_HAVE_UINT8_T, U_HAVE_UINT16_T, U_HAVE_UINT32_T,
U_HAVE_UINT64_T, U_IS_BIG_ENDIAN and U_ENABLE_TRACING to match the existing platform.h
putil.h (line 132) - Changes defined(U_WINDOWS) to defined(WIN32) || defined(OS2) to match existing putil.h
ustring.h (line 945) - Wrapped macro argument cs with { (const UChar *)cs } to match existing ustring.h
utypes.h (line 545) - Changed defined(U_WINDOWS) to defined(WIN32) to match existing utypes.h
* icu/unicode/localpointer.h: Added.
* icu/unicode/parseerr.h:
* icu/unicode/platform.h:
* icu/unicode/putil.h:
* icu/unicode/uchar.h:
* icu/unicode/uconfig.h:
* icu/unicode/uidna.h:
* icu/unicode/uiter.h:
* icu/unicode/umachine.h:
* icu/unicode/unorm.h:
* icu/unicode/urename.h:
* icu/unicode/uscript.h:
* icu/unicode/ustring.h:
* icu/unicode/utf.h:
* icu/unicode/utf16.h:
* icu/unicode/utf8.h:
* icu/unicode/utypes.h:
* icu/unicode/uvernum.h: Added.
* icu/unicode/uversion.h:
2012-09-11 Matt Lilek <mrl@apple.com>
OS X port should compile with newer versions of clang
https://bugs.webkit.org/show_bug.cgi?id=96434
m_isTerminated is unused in the Hosted flavor of NetscapePluginStream.
Reviewed by Anders Carlsson.
* Plugins/Hosted/HostedNetscapePluginStream.h:
(HostedNetscapePluginStream):
* Plugins/Hosted/HostedNetscapePluginStream.mm:
(WebKit::HostedNetscapePluginStream::HostedNetscapePluginStream):
2012-09-10 Jer Noble <jer.noble@apple.com>
Unreviewed; rolling out r128081.
http://trac.webkit.org/changeset/128081
https://bugs.webkit.org/show_bug.cgi?id=96134
New test http/tests/media/video-donottrack.html fails to run on Apple test bots.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
* WebView/WebDelegateImplementationCaching.h:
(WebFrameLoadDelegateImplementationCache):
* WebView/WebDelegateImplementationCaching.mm:
* WebView/WebView.mm:
(-[WebView _cacheFrameLoadDelegateImplementations]):
2012-09-07 Jon Lee <jonlee@apple.com>
Update notifications to latest spec
https://bugs.webkit.org/show_bug.cgi?id=91726
<rdar://problem/11910451>
Reviewed by Alexey Proskuryakov.
Expose lang and dir.
* WebView/WebNotification.h:
* WebView/WebNotification.mm:
(-[WebNotification lang]):
(-[WebNotification dir]):
2012-09-10 Jer Noble <jer.noble@apple.com>
NSInvalidArgumentException in WebFrameLoaderClient::shouldSendDoNotTrackHTTPHeader()
https://bugs.webkit.org/show_bug.cgi?id=96320
Reviewed by Geoffrey Garen.
Client was being cached as the FrameLoaderClient, but requests were sent to the ResourceLoadClient.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::shouldSendDoNotTrackHTTPHeader): Send the request to the FrameLoadDelegate.
* WebView/WebDelegateImplementationCaching.h:
* WebView/WebDelegateImplementationCaching.mm:
(CallFrameLoadDelegateReturningBoolean): Added.
2012-09-07 Jer Noble <jer.noble@apple.com>
<audio> and <video> should send Do Not Track when appropriate
https://bugs.webkit.org/show_bug.cgi?id=96134
Reviewed by Eric Carlson.
Add support for the shouldSendDoNotTrackHTTPHeader by passing the request
on to the WebFrameLoadDelegate.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::shouldSendDoNotTrackHeader):
Pass the question on to the WebFrameLoadDelegate.
* WebView/WebDelegateImplementationCaching.h:
(WebFrameLoadDelegateImplementationCache):
Add an entry for the delegate's webViewShouldSendDoNotTrackHeader method.
* WebView/WebDelegateImplementationCaching.mm:
(CallResourceLoadDelegateReturningBoolean): Added a 0-parameter overloaded function.
* WebView/WebView.mm:
(-[WebView _cacheFrameLoadDelegateImplementations]): initialize the
cached value for shouldSendDoNotTrackHeaderFunc.
2012-09-07 Benjamin Poulain <bpoulain@apple.com>
Rename the ustring() accessor to string()
https://bugs.webkit.org/show_bug.cgi?id=95919
Reviewed by Geoffrey Garen.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::enumerate):
2012-09-07 Allan Sandfeld Jensen <allan.jensen@nokia.com>
Simplify hitTestResultAtPoint and nodesFromRect APIs
https://bugs.webkit.org/show_bug.cgi?id=95720
Reviewed by Antonio Gomes.
Update calls to new API.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::actionDictionary):
* WebView/WebHTMLView.mm:
(-[WebHTMLView elementAtPoint:allowShadowContent:]):
2012-09-05 Sam Weinig <sam@webkit.org>
Part 2 of removing PlatformString.h, remove PlatformString.h
https://bugs.webkit.org/show_bug.cgi?id=95931
Reviewed by Adam Barth.
Remove PlatformString.h
* History/WebHistoryItem.mm:
* Misc/WebStringTruncator.mm:
* Plugins/Hosted/NetscapePluginHostManager.h:
(NetscapePluginHostManager):
* Plugins/WebPluginController.mm:
* Storage/WebStorageTrackerClient.mm:
* WebCoreSupport/WebChromeClient.mm:
* WebCoreSupport/WebEditorClient.mm:
* WebCoreSupport/WebFrameLoaderClient.mm:
* WebCoreSupport/WebIconDatabaseClient.mm:
* WebCoreSupport/WebInspectorClient.h:
(WebInspectorClient):
(WebInspectorFrontendClient):
* WebView/WebRenderLayer.mm:
* WebView/WebViewData.h:
2012-09-05 Benjamin Poulain <bpoulain@apple.com>
More fixes for String::operator+=() on Mac
https://bugs.webkit.org/show_bug.cgi?id=95880
Reviewed by Adam Barth.
* WebView/WebRenderLayer.mm:
(+[WebRenderLayer nameForLayer:]): Use StringBuilder to concatenate the class names
efficiently.
* WebView/WebView.mm:
(+[WebView _decodeData:]): This is a legitimate use of String::append(), there
is no other concatenation done on that string.
2012-09-01 Mark Lam <mark.lam@apple.com>
Added #include <JavaScriptCore/Identifier.h>.
https://bugs.webkit.org/show_bug.cgi?id=95641.
Reviewed by Dan Bernstein.
The code references JSC::Indentifier but was previously depending on
someone else to #include it. This results in build problems when
building for the llint C loop configuration.
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
2012-08-31 Tony Chang <tony@chromium.org>
Remove ENABLE_CSS3_FLEXBOX compile time flag
https://bugs.webkit.org/show_bug.cgi?id=95382
Reviewed by Ojan Vafai.
Everyone is already enabling this by default and the spec has stablized.
* Configurations/FeatureDefines.xcconfig:
2012-08-31 Pratik Solanki <psolanki@apple.com>
objc_msgSend and IMP should be cast appropriately before using
https://bugs.webkit.org/show_bug.cgi?id=95242
Reviewed by Benjamin Poulain.
Fix for older compilers. Pass id as the return type to the template
instead of relying on default type.
* WebView/WebDelegateImplementationCaching.mm:
(CallDelegate):
(CallFormDelegate):
* WebView/WebHTMLView.mm:
(setCursor):
(setNeedsDisplayInRect):
2012-08-30 Geoffrey Garen <ggaren@apple.com>
Use one object instead of two for closures, eliminating ScopeChainNode
https://bugs.webkit.org/show_bug.cgi?id=95501
Reviewed by Filip Pizlo.
Mechanical change to update for JSC interface change.
2012-08-30 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r127171.
http://trac.webkit.org/changeset/127171
https://bugs.webkit.org/show_bug.cgi?id=95505
testRunner does not need dumpWebNotificationCallbacks().
(Requested by jonlee on #webkit).
* WebKit.exp:
2012-08-30 Pratik Solanki <psolanki@apple.com>
objc_msgSend and IMP should be cast appropriately before using
https://bugs.webkit.org/show_bug.cgi?id=95242
Reviewed by Benjamin Poulain.
Use wtfObjcMsgSend and wtfCallIMP templates which do appropriate casts
to a function pointer with right types when calling objc_msgSend and an
IMP method directly.
* WebCoreSupport/WebCachedFramePlatformData.h:
(WebCachedFramePlatformData::clear):
* WebCoreSupport/WebDeviceOrientationClient.mm:
(WebDeviceOrientationClient::getProvider):
* WebView/WebDelegateImplementationCaching.mm:
(CallDelegate):
(CallDelegateReturningBoolean):
(CallResourceLoadDelegateReturningBoolean):
(CallFormDelegate):
(CallFormDelegateReturningBoolean):
* WebView/WebHTMLView.mm:
(setCursor):
(setNeedsDisplayInRect):
2012-08-30 Benjamin Poulain <bpoulain@apple.com>
Replace JSC::UString by WTF::String
https://bugs.webkit.org/show_bug.cgi?id=95271
Reviewed by Geoffrey Garen.
Get rid of UString, replace it by String, and simplify the code when possible.
On x86_64, this reduces the binary size by 7kb.
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(identifierFromIdentifierRep):
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::addValueToArray):
(WebKit::NetscapePluginInstanceProxy::moveGlobalExceptionToExecState):
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyRuntimeMethod::create):
(WebKit::ProxyRuntimeMethod::finishCreation):
(WebKit::ProxyInstance::getPropertyNames):
(WebKit::ProxyInstance::methodsNamed):
(WebKit::ProxyInstance::fieldNamed):
* WebView/WebFrame.mm:
(-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
(-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
* WebView/WebScriptDebugDelegate.mm:
(-[WebScriptCallFrame functionName]):
(-[WebScriptCallFrame evaluateWebScript:]):
* WebView/WebScriptDebugger.h:
(WTF):
(JSC):
(WebScriptDebugger):
* WebView/WebScriptDebugger.mm:
(toNSURL):
(WebScriptDebugger::sourceParsed):
* WebView/WebView.mm:
(aeDescFromJSValue):
2012-08-30 Jon Lee <jonlee@apple.com>
[Mac] Add testRunner.dumpWebNotificationCallbacks() to DRT
https://bugs.webkit.org/show_bug.cgi?id=95232
<rdar://problem/12190776>
Reviewed by Alexey Proskuryakov.
* WebKit.exp: Export WebNotification class.
2012-08-30 Jon Lee <jonlee@apple.com>
[Mac] Registering web views for notifications is unbalanced
https://bugs.webkit.org/show_bug.cgi?id=95465
<rdar://problem/12206765>
Reviewed by Darin Adler.
Setting the notification provider for a WK1 WebView registers that web view to the
provider. When the WebView is closed, WebCore is essentially responsible for
unregistering the web view. This leads to an imbalance on Lion since notifications are
not supported, and the NotificationController responsible for making the unregistration
call doesn't exist.
Instead, the unregisterWebView method should be called when the web view is closed.
* WebView/WebViewPrivate.h: Remove _notificationControllerDestroyed, since it is
unneeded.
* WebCoreSupport/WebNotificationClient.mm:
(WebNotificationClient::notificationControllerDestroyed):
* WebView/WebView.mm:
(-[WebView _close]): Unregister the web view from the assigned provider here.
(-[WebView _setNotificationProvider:]): Only allow setting the provider once, to avoid
registering the web view to multiple providers.
2012-08-29 Jon Lee <jonlee@apple.com>
[Mac] Add iconURL to WebNotification
https://bugs.webkit.org/show_bug.cgi?id=95249
<rdar://problem/12192060>
Reviewed by Jessie Berlin.
* WebView/WebNotification.h: Expose iconURL.
* WebView/WebNotification.mm: Remove unnecessary ASSERTs.
(-[WebNotification title]):
(-[WebNotification body]):
(-[WebNotification tag]):
(-[WebNotification iconURL]): Added.
(-[WebNotification origin]):
(-[WebNotification notificationID]):
(-[WebNotification dispatchShowEvent]):
(-[WebNotification dispatchCloseEvent]):
(-[WebNotification dispatchClickEvent]):
(-[WebNotification dispatchErrorEvent]):
2012-08-28 Geoffrey Garen <ggaren@apple.com>
Added JSScope::objectInScope(), and refactored callers to use it
https://bugs.webkit.org/show_bug.cgi?id=95281
Reviewed by Gavin Barraclough.
* WebView/WebScriptDebugDelegate.mm:
(-[WebScriptCallFrame scopeChain]):
2012-08-28 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r126914.
http://trac.webkit.org/changeset/126914
https://bugs.webkit.org/show_bug.cgi?id=95239
it breaks everything and fixes nothing (Requested by pizlo on
#webkit).
* History/WebHistory.mm:
(-[WebHistoryPrivate removeItemFromDateCaches:]):
(-[WebHistoryPrivate orderedLastVisitedDays]):
(WebHistoryWriter::WebHistoryWriter):
* Misc/WebCoreStatistics.mm:
(+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
(+[WebCoreStatistics javaScriptObjectTypeCounts]):
* Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::hostForPlugin):
(WebKit::NetscapePluginHostManager::pluginHostDied):
(WebKit::NetscapePluginHostManager::didCreateWindow):
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WebKit::NetscapePluginHostProxy::pluginHostDied):
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::idForObject):
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::retain):
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::release):
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::forget):
(WebKit::NetscapePluginInstanceProxy::destroy):
(WebKit::NetscapePluginInstanceProxy::webFrameDidFinishLoadWithReason):
(WebKit::NetscapePluginInstanceProxy::cancelCheckIfAllowedToLoadURL):
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::methodsNamed):
(WebKit::ProxyInstance::fieldNamed):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView stopTimers]):
(-[WebNetscapePluginView startTimers]):
* WebCoreSupport/WebNotificationClient.mm:
(WebNotificationClient::show):
(WebNotificationClient::clearNotifications):
(WebNotificationClient::notificationObjectDestroyed):
* WebView/WebHTMLView.mm:
(commandNameForSelector):
2012-08-28 Jon Lee <jonlee@apple.com>
Second build fix to r126909.
Added needed #else clause.
* WebView/WebView.mm:
(-[WebView _notificationIDForTesting:]):
2012-08-28 Jon Lee <jonlee@apple.com>
Build fix to r126909.
Needed ENABLE(NOTIFICATIONS) guards.
* WebView/WebView.mm:
(-[WebView _notificationIDForTesting:]):
2012-08-28 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
Rename first/second to key/value in HashMap iterators
https://bugs.webkit.org/show_bug.cgi?id=82784
Reviewed by Eric Seidel.
* History/WebHistory.mm:
(-[WebHistoryPrivate removeItemFromDateCaches:]):
(-[WebHistoryPrivate orderedLastVisitedDays]):
(WebHistoryWriter::WebHistoryWriter):
* Misc/WebCoreStatistics.mm:
(+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
(+[WebCoreStatistics javaScriptObjectTypeCounts]):
* Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::hostForPlugin):
(WebKit::NetscapePluginHostManager::pluginHostDied):
(WebKit::NetscapePluginHostManager::didCreateWindow):
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WebKit::NetscapePluginHostProxy::pluginHostDied):
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::idForObject):
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::retain):
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::release):
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::forget):
(WebKit::NetscapePluginInstanceProxy::destroy):
(WebKit::NetscapePluginInstanceProxy::webFrameDidFinishLoadWithReason):
(WebKit::NetscapePluginInstanceProxy::cancelCheckIfAllowedToLoadURL):
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::methodsNamed):
(WebKit::ProxyInstance::fieldNamed):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView stopTimers]):
(-[WebNetscapePluginView startTimers]):
* WebCoreSupport/WebNotificationClient.mm:
(WebNotificationClient::show):
(WebNotificationClient::clearNotifications):
(WebNotificationClient::notificationObjectDestroyed):
* WebView/WebHTMLView.mm:
(commandNameForSelector):
2012-08-28 Jon Lee <jonlee@apple.com>
[Mac] Add SPI to WK1 to retrieve internal IDs for web notifications
https://bugs.webkit.org/show_bug.cgi?id=95099
<rdar://problem/12180186>
Reviewed by Jessie Berlin.
This is work toward providing Mac support for web notifications in DRT and WTR (77969).
Add function to retrieve the internal ID for a notification. This is needed by layout tests to support simulating
a user click on a notification.
* WebCoreSupport/WebNotificationClient.h:
(WebNotificationClient):
* WebCoreSupport/WebNotificationClient.mm:
(WebNotificationClient::notificationIDForTesting): Converts the JS notification to a WebCore notification, and passes
that to [WebView _notificationIDForTesting:].
* WebView/WebView.mm:
(-[WebView _notificationIDForTesting:]): Retrieves the notification ID based on the WebCore notification instance.
* WebView/WebViewPrivate.h:
2012-08-27 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r126836.
http://trac.webkit.org/changeset/126836
https://bugs.webkit.org/show_bug.cgi?id=95163
Broke all Apple ports, EFL, and Qt. (Requested by tkent on
#webkit).
* History/WebHistory.mm:
(-[WebHistoryPrivate removeItemFromDateCaches:]):
(-[WebHistoryPrivate orderedLastVisitedDays]):
(WebHistoryWriter::WebHistoryWriter):
* Misc/WebCoreStatistics.mm:
(+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
(+[WebCoreStatistics javaScriptObjectTypeCounts]):
* Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::hostForPlugin):
(WebKit::NetscapePluginHostManager::pluginHostDied):
(WebKit::NetscapePluginHostManager::didCreateWindow):
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WebKit::NetscapePluginHostProxy::pluginHostDied):
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::idForObject):
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::retain):
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::release):
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::forget):
(WebKit::NetscapePluginInstanceProxy::destroy):
(WebKit::NetscapePluginInstanceProxy::webFrameDidFinishLoadWithReason):
(WebKit::NetscapePluginInstanceProxy::cancelCheckIfAllowedToLoadURL):
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::methodsNamed):
(WebKit::ProxyInstance::fieldNamed):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView stopTimers]):
(-[WebNetscapePluginView startTimers]):
* WebCoreSupport/WebNotificationClient.mm:
(WebNotificationClient::show):
(WebNotificationClient::clearNotifications):
(WebNotificationClient::notificationObjectDestroyed):
* WebView/WebHTMLView.mm:
(commandNameForSelector):
2012-08-27 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
Rename first/second to key/value in HashMap iterators
https://bugs.webkit.org/show_bug.cgi?id=82784
Reviewed by Eric Seidel.
* History/WebHistory.mm:
(-[WebHistoryPrivate removeItemFromDateCaches:]):
(-[WebHistoryPrivate orderedLastVisitedDays]):
(WebHistoryWriter::WebHistoryWriter):
* Misc/WebCoreStatistics.mm:
(+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
(+[WebCoreStatistics javaScriptObjectTypeCounts]):
* Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::hostForPlugin):
(WebKit::NetscapePluginHostManager::pluginHostDied):
(WebKit::NetscapePluginHostManager::didCreateWindow):
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WebKit::NetscapePluginHostProxy::pluginHostDied):
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::idForObject):
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::retain):
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::release):
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::forget):
(WebKit::NetscapePluginInstanceProxy::destroy):
(WebKit::NetscapePluginInstanceProxy::webFrameDidFinishLoadWithReason):
(WebKit::NetscapePluginInstanceProxy::cancelCheckIfAllowedToLoadURL):
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::methodsNamed):
(WebKit::ProxyInstance::fieldNamed):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView stopTimers]):
(-[WebNetscapePluginView startTimers]):
* WebCoreSupport/WebNotificationClient.mm:
(WebNotificationClient::show):
(WebNotificationClient::clearNotifications):
(WebNotificationClient::notificationObjectDestroyed):
* WebView/WebHTMLView.mm:
(commandNameForSelector):
2012-08-27 Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com>
Rename RegisterProtocolHandler API to NavigatorContentUtils
https://bugs.webkit.org/show_bug.cgi?id=94920
Reviewed by Adam Barth.
ENABLE_REGISTER_PROTOCOL_HANDLER is renamed to ENABLE_NAVIGATOR_CONTENT_UTILS.
* Configurations/FeatureDefines.xcconfig:
2012-08-24 Pratik Solanki <psolanki@apple.com>
Don't create a new ResourceRequest if delegate returns the same NSURLRequest we passed it
https://bugs.webkit.org/show_bug.cgi?id=94962
Reviewed by Geoffrey Garen.
If the NSURLRequest returned from the delegate callback is the same as the one we passed to
it, then avoid creating a new ResourceRequest object. This reduces the number of calls to
ResourceRequest::doUpdateResourceRequest().
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchWillSendRequest):
2012-08-23 Mark Hahnenberg <mhahnenberg@apple.com>
Change behavior of MasqueradesAsUndefined to better accommodate DFG changes
https://bugs.webkit.org/show_bug.cgi?id=93884
Reviewed by Filip Pizlo.
With some upcoming changes to the DFG to remove uses of ClassInfo, we will be changing the behavior of
MasqueradesAsUndefined. In order to make this change consistent across all of our execution engines,
we will make this change to MasqueradesAsUndefined as a separate patch. After this patch, MasqueradesAsUndefined
objects will only masquerade as undefined in their original context (i.e. their original JSGlobalObject).
For example, if an object that masquerades as undefined in frame A is passed to frame B, it will not
masquerade as undefined within frame B, but it will continue to masquerade in frame A.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::addValueToArray): Passing ExecState to toBoolean call.
2012-08-22 Beth Dakin <bdakin@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=94401
Add support for making a web site become paginated using overflow:
paged-x | paged-y
-and corresponding-
<rdar://problem/11831783>
Reviewed by Dave Hyatt.
WebCore::Page::Pagination is now just WebCore::Pagination.
* WebView/WebView.mm:
(-[WebView _setPaginationMode:]):
(-[WebView _paginationMode]):
(-[WebView _setPaginationBehavesLikeColumns:]):
(-[WebView _setPageLength:]):
(-[WebView _setGapBetweenPages:]):
2012-08-15 Bruno de Oliveira Abinader <bruno.abinader@basyskom.com>
[css3-text] Add CSS3 Text decoration compile flag
https://bugs.webkit.org/show_bug.cgi?id=93863
Reviewed by Julien Chaffraix.
This patch handles the compile flag implementation, which will come disabled by
default, thus not exposing the CSS3 text decoration features to the web, unless
when explicitly enabling it with "--css3-text-decoration" build parameter.
* Configurations/FeatureDefines.xcconfig:
2012-08-15 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r125687.
http://trac.webkit.org/changeset/125687
https://bugs.webkit.org/show_bug.cgi?id=94147
It broke the whole world (Requested by Ossy_night on #webkit).
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::addValueToArray):
2012-08-14 Mark Hahnenberg <mhahnenberg@apple.com>
Change behavior of MasqueradesAsUndefined to better accommodate DFG changes
https://bugs.webkit.org/show_bug.cgi?id=93884
Reviewed by Geoffrey Garen.
With some upcoming changes to the DFG to remove uses of ClassInfo, we will be changing the behavior of
MasqueradesAsUndefined. In order to make this change consistent across all of our execution engines,
we will make this change to MasqueradesAsUndefined as a separate patch. After this patch, MasqueradesAsUndefined
objects will only masquerade as undefined in their original context (i.e. their original JSGlobalObject).
For example, if an object that masquerades as undefined in frame A is passed to frame B, it will not
masquerade as undefined within frame B, but it will continue to masquerade in frame A.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::addValueToArray): Passing ExecState to toBoolean call.
2012-08-14 Adam Barth <abarth@webkit.org>
Delete Frame::domWindow() and Frame::existingDOMWindow()
https://bugs.webkit.org/show_bug.cgi?id=93990
Reviewed by Eric Seidel.
* WebView/WebFrame.mm:
(-[WebFrame _pendingFrameUnloadEventCount]):
(-[WebFrame _cacheabilityDictionary]):
2012-08-14 Tom Sepez <tsepez@chromium.org>
REGRESSION r125500: 7 tests crashing on Mac bots
https://bugs.webkit.org/show_bug.cgi?id=93970
Reviewed by Eric Seidel.
Make WebFrameLoaderClient::redirectDataToPlugin expect the now real possibility
of a NULL pluginWidget argument.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::redirectDataToPlugin)
2012-08-09 Kinuko Yasuda <kinuko@chromium.org>
http/tests/security/mixedContent/blob-url-in-iframe.html fails on Mac
https://bugs.webkit.org/show_bug.cgi?id=88736
Reviewed by Alexey Proskuryakov.
WebView::_canHandleRequest should return true for "blob:" URL so that it can be shown in iframe.
* WebView/WebView.mm:
(+[WebView _canHandleRequest:forMainFrame:]):
2012-08-08 Shane Stephens <shanestephens@google.com>
Compile flag for CSS Hierarchies
https://bugs.webkit.org/show_bug.cgi?id=92433
Reviewed by Tony Chang.
* Configurations/FeatureDefines.xcconfig:
2012-08-05 Peter Wang <peter.wang@torchmobile.com.cn>
Web Inspector: [JSC] implement setting breakpoints by line:column
https://bugs.webkit.org/show_bug.cgi?id=53003
Unreviewed, just changed the interface according the changes of base class JSC::Debugger.
No JSC can provide the column info of current JS statement, mac porting can use it to support
"Pretty Print" debug mode.
* WebView/WebScriptDebugger.h:
(WebScriptDebugger):
* WebView/WebScriptDebugger.mm:
(WebScriptDebugger::callEvent):
(WebScriptDebugger::atStatement):
(WebScriptDebugger::returnEvent):
(WebScriptDebugger::exception):
(WebScriptDebugger::willExecuteProgram):
(WebScriptDebugger::didExecuteProgram):
(WebScriptDebugger::didReachBreakpoint):
2012-08-01 Jian Li <jianli@chromium.org>
Add new CSS property "-webkit-widget-region" to expose dashboard region support for other port
https://bugs.webkit.org/show_bug.cgi?id=90298
Reviewed by Adam Barth.
* Configurations/FeatureDefines.xcconfig: Add ENABLE_WIDGET_REGION define.
2012-08-01 Antti Koivisto <antti@apple.com>
Assertion failure in inspector/profiler/heap-snapshot-containment-show-all.html on Lion bot
https://bugs.webkit.org/show_bug.cgi?id=92888
Reviewed by Andreas Kling.
Protect the WebInspectorWindowController so it doesn't get destroyed during [WebView close] and cause
unsafe [WebView dealloc].
* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController destroyInspectorView:]):
2012-07-29 Rik Cabanier <cabanier@adobe.com>
Add ENABLE_CSS_COMPOSITING flag
https://bugs.webkit.org/show_bug.cgi?id=92553
Reviewed by Dirk Schulze.
Adds compiler flag CSS_COMPOSITING to build systems to enable CSS blending and compositing. See spec https://dvcs.w3.org/hg/FXTF/rawfile/tip/compositing/index.html
* Configurations/FeatureDefines.xcconfig:
2012-07-27 Anders Carlsson <andersca@apple.com>
Show the unavailable plug-in indicator for Java applets as well
https://bugs.webkit.org/show_bug.cgi?id=92521
Reviewed by Sam Weinig.
Check if the Java plug-in is blocked before trying to instantiate it.
* WebCoreSupport/WebFrameLoaderClient.mm:
2012-07-25 Jer Noble <jer.noble@apple.com>
Add setting to enable and disable diagnostic logging.
https://bugs.webkit.org/show_bug.cgi?id=92337
Reviewed by Anders Carlsson.
Add a WebKit WebPreferences API to set set the WebCore diagnosticLoggingEnabled setting.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]): Register the default value to false.
(-[WebPreferences diagnosticLoggingEnabled]): Simple userDefaults accessor.
(-[WebPreferences setDiagnosticLoggingEnabled:]): Ditto.
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]): Ensure this preference is propagated to Settings
whenever the preferences change.
2012-07-25 Pratik Solanki <psolanki@apple.com>
Remove catchesDelegateExceptions from WebViewData and related accessor methods
https://bugs.webkit.org/show_bug.cgi?id=90898
Reviewed by Darin Adler.
Remove catchesDelegateException ivar from WebViewData and all its accesor methods from
WebView. All uses of this flag in WebKit set it to YES and no one calls
_setCatchesDelegateExceptions with NO.
* WebCoreSupport/WebDragClient.mm:
(WebDragClient::startDrag):
* WebView/WebDelegateImplementationCaching.mm:
(CallDelegate):
(CallDelegateReturningFloat):
(CallDelegateReturningBoolean):
(CallResourceLoadDelegateReturningBoolean):
(CallFormDelegate):
(CallFormDelegateReturningBoolean):
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView _policyDelegateForwarder]):
(-[WebView _UIDelegateForwarder]):
(-[WebView _editingDelegateForwarder]):
(-[_WebSafeForwarder initWithTarget:defaultTarget:]):
(-[_WebSafeForwarder forwardInvocation:]):
* WebView/WebViewData.h:
* WebView/WebViewPrivate.h:
2012-07-23 Simon Fraser <simon.fraser@apple.com>
Part 2 of: Implement sticky positioning
https://bugs.webkit.org/show_bug.cgi?id=90046
Reviewed by Ojan Vafai.
Turn on ENABLE_CSS_STICKY_POSITION.
* Configurations/FeatureDefines.xcconfig:
2012-07-23 Pierre Rossi <pierre.rossi@gmail.com>
Unify numTouchEventHandlersChanged and needTouchEvents in the chrome client
https://bugs.webkit.org/show_bug.cgi?id=91006
Reviewed by Ryosuke Niwa.
Remove numTouchEventHandlersChanged stub.
* WebCoreSupport/WebChromeClient.h:
2012-07-23 Simon Fraser <simon.fraser@apple.com>
Part 1 of: Implement sticky positioning
https://bugs.webkit.org/show_bug.cgi?id=90046
Reviewed by Ojan Vafai.
Add ENABLE_CSS_STICKY_POSITION, defaulting to off initially.
Sort the ENABLE_CSS lines in the file. Make sure all the flags
are in FEATURE_DEFINES.
* Configurations/FeatureDefines.xcconfig:
2012-07-23 Kent Tamura <tkent@chromium.org>
Rename ENABLE_METER_TAG and ENABLE_PROGRESS_TAG to ENABLE_METER_ELEMENT and ENABLE_PROGRESS_ELEMENT respectively
https://bugs.webkit.org/show_bug.cgi?id=91941
Reviewed by Kentaro Hara.
A flag name for an elmement should be ENABLE_*_ELEMENT.
* Configurations/FeatureDefines.xcconfig:
2012-07-22 Kent Tamura <tkent@chromium.org>
Rename ENABLE_DETAILS to ENABLE_DETAILS_ELEMENT
https://bugs.webkit.org/show_bug.cgi?id=91928
Reviewed by Kentaro Hara.
A flag name for an elmement should be ENABLE_*_ELEMENT.
* Configurations/FeatureDefines.xcconfig:
2012-07-20 Kent Tamura <tkent@chromium.org>
Rename ENABLE_DATALIST to ENABLE_DATALIST_ELEMENT
https://bugs.webkit.org/show_bug.cgi?id=91846
Reviewed by Kentaro Hara.
A flag name for an elmement should be ENABLE_*_ELEMENT.
* Configurations/FeatureDefines.xcconfig:
2012-07-18 Benjamin Poulain <bpoulain@apple.com>
[Mac] Make WebDataSourcePrivate lighter
https://bugs.webkit.org/show_bug.cgi?id=91511
Reviewed by Anders Carlsson.
Make WebDataSourcePrivate a simple C++ class and use smart pointers for memory management.
Since the "loader" attribute is only set on initialization, all the assertions spread in
various function are removed in favor of assertions on initialization.
* WebView/WebDataSource.h:
* WebView/WebDataSource.mm:
(WebDataSourcePrivate):
(WebDataSourcePrivate::WebDataSourcePrivate):
(WebDataSourcePrivate::~WebDataSourcePrivate):
Use a class instead of a Objective-C object for WebDataSourcePrivate.
Use smart pointers instead of ref counting manually.
(-[WebDataSource _setRepresentation:]):
(-[WebDataSource _addSubframeArchives:]):
(-[WebDataSource _transferApplicationCache:]):
(-[WebDataSource _setDeferMainResourceDataLoad:]):
(-[WebDataSource _documentFragmentWithArchive:]):
(-[WebDataSource _initWithDocumentLoader:]):
(+[WebDataSource initialize]):
(-[WebDataSource dealloc]):
(-[WebDataSource finalize]):
WebDataSource takes the special initialization and destruction that was done in WebDataSourcePrivate.
(-[WebDataSource representation]):
2012-07-17 Vivek Galatage <vivekgalatage@gmail.com>
Web Inspector: refactor InspectorController::connectFrontend() to accept InspectorFrontendChannel.
https://bugs.webkit.org/show_bug.cgi?id=91196
Reviewed by Pavel Feldman.
Refactoring InspectorClients. InspectorClient::openInspectorFrontend
now returning the InspectorFrontendChannel.
* WebCoreSupport/WebInspectorClient.h:
(WebInspectorClient):
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorClient::openInspectorFrontend):
2012-07-17 David Barr <davidbarr@chromium.org>
Introduce ENABLE_CSS_IMAGE_ORIENTATION compile flag
https://bugs.webkit.org/show_bug.cgi?id=89055
Reviewed by Kent Tamura.
The css3-images module is at candidate recommendation.
http://www.w3.org/TR/2012/CR-css3-images-20120417/#the-image-orientation
Add a configuration option for CSS image-orientation support, disabling it by default.
* Configurations/FeatureDefines.xcconfig:
2012-07-15 Joseph Pecoraro <pecoraro@apple.com>
Fix case sensitive build issue.
Unreviewed build fix.
* WebView/WebPreferences.mm:
2012-07-15 Benjamin Poulain <benjamin@webkit.org>
Make WebPreferencesPrivate a simple struct
https://bugs.webkit.org/show_bug.cgi?id=91330
Reviewed by Filip Pizlo.
To avoid taking time creating a new Objective-C object for WebPreferencesPrivate, we can just make
it a simple struct.
* WebView/WebPreferences.h:
* WebView/WebPreferences.mm:
(WebPreferencesPrivate):
(WebPreferencesPrivate::WebPreferencesPrivate):
Replace the Objective-C WebPreferencesPrivate by a struct.
Remove IBCreatorID from the object as it is unused.
Use RetainPtr for the Objective-C attribute to avoid tracking their memory manually.
(-[WebPreferences initWithIdentifier:]):
Change the order of the initialization to avoid allocating anyting if a WebPreferences exists
for the identifier.
Both [NSObject init] and WebPreferencesPrivate allocation are moved after the fast path.
(-[WebPreferences initWithCoder:]):
(-[WebPreferences encodeWithCoder:]):
(-[WebPreferences dealloc]):
(-[WebPreferences identifier]):
(-[WebPreferences _valueForKey:]):
(-[WebPreferences _setStringValue:forKey:]):
(-[WebPreferences _setIntegerValue:forKey:]):
(-[WebPreferences _setFloatValue:forKey:]):
(-[WebPreferences _setBoolValue:forKey:]):
(-[WebPreferences _setLongLongValue:forKey:]):
(-[WebPreferences _setUnsignedLongLongValue:forKey:]):
2012-07-14 Benjamin Poulain <bpoulain@apple.com>
[Mac] Do not try to update the cache model for every WebPreferences change
https://bugs.webkit.org/show_bug.cgi?id=91302
Reviewed by Joseph Pecoraro.
WebView was listening to any change on any WebPreferences in order to update the cache model. This is unneeded in most cases,
we can just listen to updates of the CacheModel property.
* WebView/WebPreferences.mm:
(-[WebPreferences initWithIdentifier:]):
(-[WebPreferences _postCacheModelChangedNotification]):
(-[WebPreferences setCacheModel:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(+[WebView initialize]):
(+[WebView _cacheModelChangedNotification:]):
2012-07-14 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r122665.
http://trac.webkit.org/changeset/122665
https://bugs.webkit.org/show_bug.cgi?id=91321
Broke Mac builds (Requested by rniwa on #webkit).
* WebView/WebPreferences.mm:
(-[WebPreferences initWithIdentifier:]):
(-[WebPreferences setCacheModel:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(+[WebView initialize]):
(+[WebView _preferencesChangedNotification:]):
2012-07-13 Benjamin Poulain <bpoulain@apple.com>
[Mac] Do not try to update the cache model for every WebPreferences change
https://bugs.webkit.org/show_bug.cgi?id=91302
Reviewed by Joseph Pecoraro.
WebView was listening to any change on any WebPreferences in order to update the cache model. This is unneeded in most cases,
we can just listen to updates of the CacheModel property.
* WebView/WebPreferences.mm:
(-[WebPreferences initWithIdentifier:]):
(-[WebPreferences _postCacheModelChangedNotification]):
(-[WebPreferences setCacheModel:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(+[WebView initialize]):
(+[WebView _cacheModelChangedNotification:]):
2012-07-11 Mark Rowe <mrowe@apple.com>
Fix a logic error in the #if so that the correct code is compiled on Snow Leopard.
I introduced this in r122403 when I inverted the sense of the #if.
* WebView/WebFullScreenController.mm:
2012-07-11 Mark Rowe <mrowe@apple.com>
<http://webkit.org/b/91024> Build against the latest SDK when targeting older OS X versions.
Reviewed by Dan Bernstein.
The deployment target is already set to the version that we're targeting, and it's that setting
which determines which functionality from the SDK is available to us.
* Configurations/Base.xcconfig:
2012-07-11 Mark Rowe <mrowe@apple.com>
<http://webkit.org/b/91022> WebFullScreenController and WKFullScreenWindowController shouldn't add unprefixed methods to AppKit classes
Reviewed by Dan Bernstein.
* WebView/WebFullScreenController.mm:
(convertRectToScreen): Add a static helper method that calls through to -[NSWindow convertRectToScreen:] on OS versions where it exists
but otherwise provides a compatibility implementation of it.
(-[WebFullScreenController enterFullScreen:]): Call our new helper.
2012-07-11 Mark Rowe <mrowe@apple.com>
<http://webkit.org/b/91015> Remove BUILDING_ON / TARGETING macros in favor of system availability macros
This removal was handled by a script that translates the relevant macros in to the equivalent checks
using the system availability macros.
Reviewed by Filip Pizlo.
* DefaultDelegates/WebDefaultContextMenuDelegate.mm:
* Misc/WebKitErrors.m:
* Misc/WebNSControlExtras.m:
* Misc/WebNSFileManagerExtras.mm:
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
* Plugins/WebBaseNetscapePluginView.mm:
* Plugins/WebNetscapePluginView.mm:
* WebCoreSupport/WebChromeClient.mm:
* WebCoreSupport/WebEditorClient.mm:
* WebCoreSupport/WebFrameLoaderClient.mm:
* WebCoreSupport/WebSystemInterface.mm:
* WebView/WebClipView.mm:
* WebView/WebDynamicScrollBarsView.mm:
* WebView/WebFrameView.mm:
* WebView/WebFullScreenController.mm:
* WebView/WebHTMLView.mm:
* WebView/WebHTMLViewInternal.h:
* WebView/WebPDFDocumentExtras.mm:
* WebView/WebPreferences.mm:
* WebView/WebResourceInternal.h:
* WebView/WebScriptDebugDelegate.h:
* WebView/WebView.mm:
* WebView/WebViewPrivate.h:
2012-07-11 Anders Carlsson <andersca@apple.com>
Add -Wtautological-compare and -Wsign-compare warning flags
https://bugs.webkit.org/show_bug.cgi?id=90994
Reviewed by Mark Rowe.
* Configurations/Base.xcconfig:
2012-07-11 Mark Rowe <mrowe@apple.com>
Add a Mountain Lion version of libWebKitSystemInterface.a.
Reviewed by John Sullivan.
* Configurations/DebugRelease.xcconfig: Look for the library under its expected name.
2012-07-10 Adam Barth <abarth@webkit.org>
WebCore::Settings for Hixie76 WebSocket protocol doesn't do anything and should be removed
https://bugs.webkit.org/show_bug.cgi?id=90910
Reviewed by Eric Seidel.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences setHixie76WebSocketProtocolEnabled:]):
(-[WebPreferences isHixie76WebSocketProtocolEnabled]):
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2012-07-09 Matt Falkenhagen <falken@chromium.org>
Add ENABLE_DIALOG_ELEMENT and skeleton files
https://bugs.webkit.org/show_bug.cgi?id=90521
Reviewed by Kent Tamura.
* Configurations/FeatureDefines.xcconfig:
2012-07-09 Yongjun Zhang <yongjun_zhang@apple.com>
Consider closing unused localStorage database after a timeout.
https://bugs.webkit.org/show_bug.cgi?id=90713
For a localStorage, if there is no active document referencing to it for certain amount of time (300 seconds),
we can close the underlying sqlite database.
Reviewed by Brady Eidson.
* Storage/WebStorageManager.mm:
(+[WebStorageManager setStorageDatabaseIdleInterval:]): add a new method for DumpRenderTree to set the timeout
that we will wait before closing database.
(initializeLocalStoragePath):
* Storage/WebStorageManagerPrivate.h:
2012-07-09 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r122107.
http://trac.webkit.org/changeset/122107
https://bugs.webkit.org/show_bug.cgi?id=90794
Build failure on Mac debug bots (Requested by falken_ on
#webkit).
* Configurations/FeatureDefines.xcconfig:
2012-07-09 Matt Falkenhagen <falken@chromium.org>
Add ENABLE_DIALOG_ELEMENT and skeleton files
https://bugs.webkit.org/show_bug.cgi?id=90521
Reviewed by Kent Tamura.
* Configurations/FeatureDefines.xcconfig:
2012-07-04 John Mellor <johnme@chromium.org>
Text Autosizing: Add compile flag and runtime setting
https://bugs.webkit.org/show_bug.cgi?id=87394
This patch renames Font Boosting to Text Autosizing.
Reviewed by Adam Barth.
* Configurations/FeatureDefines.xcconfig:
2012-07-02 Benjamin Poulain <bpoulain@apple.com>
Do not do any logging initialization when logging is disabled
https://bugs.webkit.org/show_bug.cgi?id=90228
Reviewed by Simon Fraser.
* Misc/WebIconDatabase.mm:
(-[WebIconDatabase _scaleIcon:toSize:]):
* Misc/WebKitLogging.h:
* Misc/WebKitLogging.m:
* WebView/WebHTMLView.mm:
(-[WebHTMLView _attributeStringFromDOMRange:]):
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
2012-07-01 Timothy Hatcher <timothy@apple.com>
Make the "Inspect Element" context menu item appear in nightly builds again.
rdar://problem/11702613
https://webkit.org/b/89323
Reviewed by Dan Bernstein.
* WebView/WebUIDelegatePrivate.h:
Add missing enums that were added in ContextMenuItem.h but left out here.
2012-06-29 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r121529.
http://trac.webkit.org/changeset/121529
https://bugs.webkit.org/show_bug.cgi?id=90260
Failed to compile on Chromium WebKitMacBuilder (Requested by
keishi on #webkit).
* DefaultDelegates/WebDefaultContextMenuDelegate.mm:
(-[WebDefaultUIDelegate menuItemWithTag:target:representedObject:]):
* Misc/WebNSControlExtras.m:
(-[NSControl sizeToFitAndAdjustWindowHeight]):
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::shouldEraseMarkersAfterChangeSelection):
(WebEditorClient::getGuessesForWord):
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchDidFirstLayout):
(WebFrameLoaderClient::provisionalLoadStarted):
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView scrollWheel:]):
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController finishedEnterFullScreenAnimation:]):
(-[WebFullScreenController exitFullScreen]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView _pasteWithPasteboard:allowPlainText:]):
* WebView/WebView.mm:
(+[WebView initialize]):
(-[WebView _deviceScaleFactor]):
2012-06-29 Eric Seidel <eric@webkit.org>
Remove more BUILDING_ON_LEOPARD branches now that no port builds on Leopard
https://bugs.webkit.org/show_bug.cgi?id=90252
Reviewed by Ryosuke Niwa.
* DefaultDelegates/WebDefaultContextMenuDelegate.mm:
(-[WebDefaultUIDelegate menuItemWithTag:target:representedObject:]):
* Misc/WebNSControlExtras.m:
(-[NSControl sizeToFitAndAdjustWindowHeight]):
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::shouldEraseMarkersAfterChangeSelection):
(WebEditorClient::getGuessesForWord):
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchDidFirstLayout):
(WebFrameLoaderClient::provisionalLoadStarted):
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView scrollWheel:]):
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController finishedEnterFullScreenAnimation:]):
(-[WebFullScreenController exitFullScreen]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView _pasteWithPasteboard:allowPlainText:]):
* WebView/WebView.mm:
(+[WebView initialize]):
(-[WebView _deviceScaleFactor]):
2012-06-25 Mark Hahnenberg <mhahnenberg@apple.com>
JSLock should be per-JSGlobalData
https://bugs.webkit.org/show_bug.cgi?id=89123
Reviewed by Geoffrey Garen.
Changed all sites that used JSLock to instead use the new JSLockHolder
and pass in the correct JS context that the code is about to interact with that
needs protection. Also added a couple JSLocks to places that didn't already
have it that needed it.
* DOM/WebDOMOperations.mm:
(JSC):
* Misc/WebCoreStatistics.mm:
(+[WebCoreStatistics javaScriptObjectsCount]):
(+[WebCoreStatistics javaScriptGlobalObjectsCount]):
(+[WebCoreStatistics javaScriptProtectedObjectsCount]):
(+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
(+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
(+[WebCoreStatistics javaScriptObjectTypeCounts]):
(+[WebCoreStatistics shouldPrintExceptions]):
(+[WebCoreStatistics setShouldPrintExceptions:]):
(+[WebCoreStatistics memoryStatistics]):
(+[WebCoreStatistics javaScriptReferencedObjectsCount]):
* 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::hasMethod):
(WebKit::NetscapePluginInstanceProxy::enumerate):
(WebKit::NetscapePluginInstanceProxy::addValueToArray):
(WebKit::NetscapePluginInstanceProxy::moveGlobalExceptionToExecState):
* Plugins/WebNetscapePluginStream.mm:
(WebNetscapePluginStream::wantsAllStreams):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView sendEvent:isDrawRect:]):
(-[WebNetscapePluginView privateBrowsingModeDidChange]):
(-[WebNetscapePluginView setWindowIfNecessary]):
(-[WebNetscapePluginView createPluginScriptableObject]):
(-[WebNetscapePluginView getFormValue:]):
(-[WebNetscapePluginView evaluateJavaScriptPluginRequest:]):
(-[WebNetscapePluginView webFrame:didFinishLoadWithReason:]):
(-[WebNetscapePluginView loadPluginRequest:]):
(-[WebNetscapePluginView _printedPluginBitmap]):
* Plugins/WebPluginController.mm:
(+[WebPluginController plugInViewWithArguments:fromPluginPackage:]):
(-[WebPluginController stopOnePlugin:]):
(-[WebPluginController destroyOnePlugin:]):
(-[WebPluginController startAllPlugins]):
(-[WebPluginController addPlugin:]):
* WebView/WebFrame.mm:
(-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
(-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
* WebView/WebScriptDebugDelegate.mm:
(-[WebScriptCallFrame scopeChain]):
(-[WebScriptCallFrame evaluateWebScript:]):
* WebView/WebView.mm:
(+[WebView _reportException:inContext:]):
(-[WebView aeDescByEvaluatingJavaScriptFromString:]):
(-[WebView _computedStyleIncludingVisitedInfo:forElement:]):
2012-06-23 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r121058.
http://trac.webkit.org/changeset/121058
https://bugs.webkit.org/show_bug.cgi?id=89809
Patch causes plugins tests to crash in GTK debug builds
(Requested by zdobersek on #webkit).
* DOM/WebDOMOperations.mm:
(JSC):
* Misc/WebCoreStatistics.mm:
(+[WebCoreStatistics javaScriptObjectsCount]):
(+[WebCoreStatistics javaScriptGlobalObjectsCount]):
(+[WebCoreStatistics javaScriptProtectedObjectsCount]):
(+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
(+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
(+[WebCoreStatistics javaScriptObjectTypeCounts]):
(+[WebCoreStatistics shouldPrintExceptions]):
(+[WebCoreStatistics setShouldPrintExceptions:]):
(+[WebCoreStatistics memoryStatistics]):
(+[WebCoreStatistics javaScriptReferencedObjectsCount]):
* 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::hasMethod):
(WebKit::NetscapePluginInstanceProxy::enumerate):
(WebKit::NetscapePluginInstanceProxy::addValueToArray):
(WebKit::NetscapePluginInstanceProxy::moveGlobalExceptionToExecState):
* Plugins/WebNetscapePluginStream.mm:
(WebNetscapePluginStream::wantsAllStreams):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView sendEvent:isDrawRect:]):
(-[WebNetscapePluginView privateBrowsingModeDidChange]):
(-[WebNetscapePluginView setWindowIfNecessary]):
(-[WebNetscapePluginView createPluginScriptableObject]):
(-[WebNetscapePluginView getFormValue:]):
(-[WebNetscapePluginView evaluateJavaScriptPluginRequest:]):
(-[WebNetscapePluginView webFrame:didFinishLoadWithReason:]):
(-[WebNetscapePluginView loadPluginRequest:]):
(-[WebNetscapePluginView _printedPluginBitmap]):
* Plugins/WebPluginController.mm:
(+[WebPluginController plugInViewWithArguments:fromPluginPackage:]):
(-[WebPluginController stopOnePlugin:]):
(-[WebPluginController destroyOnePlugin:]):
(-[WebPluginController startAllPlugins]):
(-[WebPluginController addPlugin:]):
* WebView/WebFrame.mm:
(-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
(-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
* WebView/WebScriptDebugDelegate.mm:
(-[WebScriptCallFrame scopeChain]):
(-[WebScriptCallFrame evaluateWebScript:]):
* WebView/WebView.mm:
(+[WebView _reportException:inContext:]):
(-[WebView aeDescByEvaluatingJavaScriptFromString:]):
(-[WebView _computedStyleIncludingVisitedInfo:forElement:]):
2012-06-22 Alexandru Chiculita <achicu@adobe.com>
[CSS Shaders] Re-enable the CSS Shaders compile time flag on Safari Mac
https://bugs.webkit.org/show_bug.cgi?id=89781
Reviewed by Dean Jackson.
Added ENABLE_CSS_SHADERS flag as enabled by default on Safari for Mac.
* Configurations/FeatureDefines.xcconfig:
2012-06-20 Mark Hahnenberg <mhahnenberg@apple.com>
JSLock should be per-JSGlobalData
https://bugs.webkit.org/show_bug.cgi?id=89123
Reviewed by Gavin Barraclough.
Changed all sites that used JSLock to instead use the new JSLockHolder
and pass in the correct JS context that the code is about to interact with that
needs protection.
* DOM/WebDOMOperations.mm:
(JSC):
* Misc/WebCoreStatistics.mm:
(+[WebCoreStatistics javaScriptObjectsCount]):
(+[WebCoreStatistics javaScriptGlobalObjectsCount]):
(+[WebCoreStatistics javaScriptProtectedObjectsCount]):
(+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
(+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
(+[WebCoreStatistics javaScriptObjectTypeCounts]):
(+[WebCoreStatistics shouldPrintExceptions]):
(+[WebCoreStatistics setShouldPrintExceptions:]):
(+[WebCoreStatistics memoryStatistics]):
(+[WebCoreStatistics javaScriptReferencedObjectsCount]):
* 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::hasMethod):
(WebKit::NetscapePluginInstanceProxy::enumerate):
(WebKit::NetscapePluginInstanceProxy::addValueToArray):
(WebKit::NetscapePluginInstanceProxy::moveGlobalExceptionToExecState):
* Plugins/WebNetscapePluginStream.mm:
(WebNetscapePluginStream::wantsAllStreams):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView sendEvent:isDrawRect:]):
(-[WebNetscapePluginView privateBrowsingModeDidChange]):
(-[WebNetscapePluginView setWindowIfNecessary]):
(-[WebNetscapePluginView createPluginScriptableObject]):
(-[WebNetscapePluginView getFormValue:]):
(-[WebNetscapePluginView evaluateJavaScriptPluginRequest:]):
(-[WebNetscapePluginView webFrame:didFinishLoadWithReason:]):
(-[WebNetscapePluginView loadPluginRequest:]):
(-[WebNetscapePluginView _printedPluginBitmap]):
* Plugins/WebPluginController.mm:
(+[WebPluginController plugInViewWithArguments:fromPluginPackage:]):
(-[WebPluginController stopOnePlugin:]):
(-[WebPluginController destroyOnePlugin:]):
(-[WebPluginController startAllPlugins]):
(-[WebPluginController addPlugin:]):
* WebView/WebFrame.mm:
(-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
(-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
* WebView/WebScriptDebugDelegate.mm:
(-[WebScriptCallFrame scopeChain]):
(-[WebScriptCallFrame evaluateWebScript:]):
* WebView/WebView.mm:
(+[WebView _reportException:inContext:]):
(-[WebView aeDescByEvaluatingJavaScriptFromString:]):
(-[WebView _computedStyleIncludingVisitedInfo:forElement:]):
2012-06-22 Amy Ousterhout <aousterh@chromium.org>
Renamed DeviceOrientation to DeviceOrientationData
https://bugs.webkit.org/show_bug.cgi?id=88663
Reviewed by Steve Block.
Updated files to use the renamed DeviceOrientationData instead of DeviceOrientation.
This change makes DeviceOrientationData consistent with DeviceMotionData.
* WebCoreSupport/WebDeviceOrientationClient.h:
(WebDeviceOrientationClient):
* WebCoreSupport/WebDeviceOrientationClient.mm:
(WebDeviceOrientationClient::lastOrientation):
* WebView/WebDeviceOrientation.mm:
* WebView/WebDeviceOrientationInternal.h:
2012-06-20 Garret Kelly <gdk@chromium.org>
Moving cookieEnabled/setCookieEnabled from Page to Settings.
https://bugs.webkit.org/show_bug.cgi?id=89545
Reviewed by Adam Barth.
* WebView/WebView.mm:
(-[WebView _cookieEnabled]):
(-[WebView _setCookieEnabled:]):
2012-06-19 Dan Bernstein <mitz@apple.com>
WebKit/mac part of: Paginated display API doesn’t allow setting the page progression direction
https://bugs.webkit.org/show_bug.cgi?id=89394
Reviewed by Darin Adler.
* WebView/WebView.mm:
(-[WebView _setPaginationMode:]): Changed to map new WebPaginationMode values to new
Pagination::Mode values.
(-[WebView _paginationMode]): Similarly, in the opposite direction.
* WebView/WebViewPrivate.h: Replaced WebPaginationMode values with ones that specify an
axis and a direction along that axis.
2012-06-18 Andy Estes <aestes@apple.com>
[Mac] -[WebPDFView _menuItemsFromPDFKitForEvent:] leaks NSMenuItems
https://bugs.webkit.org/show_bug.cgi?id=89434
Reviewed by Darin Adler.
* WebView/WebPDFView.mm:
(-[WebPDFView _menuItemsFromPDFKitForEvent:]): Release copied
NSMenuItems once they're stored in copiedItems.
2012-06-19 Mike West <mkwst@chromium.org>
Introduce ENABLE_CSP_NEXT configuration flag.
https://bugs.webkit.org/show_bug.cgi?id=89300
Reviewed by Adam Barth.
The 1.0 draft of the Content Security Policy spec is just about to
move to Last Call. We'll hide work on the upcoming 1.1 spec behind
this ENABLE flag, disabled by default.
Spec: https://dvcs.w3.org/hg/content-security-policy/raw-file/tip/csp-specification.dev.html
* Configurations/FeatureDefines.xcconfig:
2012-06-14 Jia Pu <jpu@apple.com>
Mark text with text alternative with blue underline.
https://bugs.webkit.org/show_bug.cgi?id=83047
Reviewed by Enrica Casucci.
Changes in WebKit include implementation of new functions declared in AlternativeTextClient,
and logic for calling Editor::insertDictatedText() instead of Editor::insertText() when there's
alternatives attached to the input string.
* WebCoreSupport/CorrectionPanel.mm:
(correctionIndicatorType):
(CorrectionPanel::handleAcceptedReplacement):
* WebCoreSupport/WebAlternativeTextClient.h:
(WebAlternativeTextClient):
* WebCoreSupport/WebAlternativeTextClient.mm:
(WebAlternativeTextClient::showCorrectionAlternative):
(WebAlternativeTextClient::dismissAlternative):
(WebAlternativeTextClient::dismissAlternativeSoon):
(WebAlternativeTextClient::recordAutocorrectionResponse):
(WebAlternativeTextClient::removeDictationAlternatives):
(WebAlternativeTextClient::showDictationAlternativeUI):
(WebAlternativeTextClient::dismissDictationAlternativeUI):
(WebAlternativeTextClient::dictationAlternatives):
* WebView/WebHTMLView.mm:
(-[WebHTMLView validAttributesForMarkedText]):
(-[WebHTMLView insertText:]):
* WebView/WebView.mm:
(-[WebView handleAcceptedAlternativeText:]):
(-[WebView _getWebCoreDictationAlternatives:fromTextAlternatives:]):
(-[WebView _showDictationAlternativeUI:WebCore::forDictationContext:]):
(-[WebView _dismissDictationAlternativeUI]):
(-[WebView _removeDictationAlternatives:]):
(-[WebView _dictationAlternatives:]):
* WebView/WebViewData.h:
* WebView/WebViewData.mm:
(-[WebViewPrivate init]):
* WebView/WebViewInternal.h:
* WebView/WebViewPrivate.h:
2012-06-11 Alexis Menard <alexis.menard@openbossa.org>
[CSS3 Backgrounds and Borders] Protect box-decoration-break behind a feature flag.
https://bugs.webkit.org/show_bug.cgi?id=88804
Reviewed by Tony Chang.
Protect box-decoration-break behind a feature flag enabled by default.
* Configurations/FeatureDefines.xcconfig:
2012-06-11 Sam Weinig <sam@webkit.org>
Remove support for disconnected/excluded from search frames, they are not used by Safari anymore
https://bugs.webkit.org/show_bug.cgi?id=88723
Reviewed by Dan Bernstein.
* WebView/WebFrame.mm:
* WebView/WebFramePrivate.h:
Remove -[WebFrame _setIsDisconnected:] and -[WebFrame _setExcludeFromTextSearch:]
2012-06-10 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r119955.
http://trac.webkit.org/changeset/119955
https://bugs.webkit.org/show_bug.cgi?id=88758
Breaks Chromium compile - Chromium depends on removed API
(Requested by dominicc on #webkit).
* WebView/WebFrame.mm:
(-[WebFrame _setIsDisconnected:]):
(-[WebFrame _setExcludeFromTextSearch:]):
* WebView/WebFramePrivate.h:
2012-06-10 Sam Weinig <sam@webkit.org>
Remove support for disconnected/excluded from search frames, they are not used by Safari anymore
https://bugs.webkit.org/show_bug.cgi?id=88723
Reviewed by Dan Bernstein.
* WebView/WebFrame.mm:
* WebView/WebFramePrivate.h:
Remove -[WebFrame _setIsDisconnected:] and -[WebFrame _setExcludeFromTextSearch:]
2012-06-09 Sukolsak Sakshuwong <sukolsak@google.com>
Add UNDO_MANAGER flag
https://bugs.webkit.org/show_bug.cgi?id=87908
Reviewed by Tony Chang.
* Configurations/FeatureDefines.xcconfig:
2012-06-07 Kentaro Hara <haraken@chromium.org>
Reduce Node object size from 72 byte to 64 byte
https://bugs.webkit.org/show_bug.cgi?id=88528
Reviewed by Ryosuke Niwa.
Added a symbol for callRemovedLastRef().
* WebKit.order:
2012-06-06 Andy Estes <aestes@apple.com>
Wrap uppercaseWord, lowercaseWord, and capitalizeWord with USE(APPKIT)
https://bugs.webkit.org/show_bug.cgi?id=88504
Reviewed by Dan Bernstein.
uppercaseWord, lowercaseWord, and capitalizeWord are methods declared
by NSResponder that subclasses are expected to implement. WebKit should
only support these implementations on platforms that use AppKit.
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
2012-06-05 Anders Carlsson <andersca@apple.com>
Build fix.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::createPlugin):
The error constant has been renamed.
2012-06-05 Anders Carlsson <andersca@apple.com>
Rename a plug-in loading error constant
https://bugs.webkit.org/show_bug.cgi?id=88381
<rdar://problem/11602601>
Reviewed by Sam Weinig.
* Misc/WebKitErrors.h:
2012-06-05 Dongwoo Im <dw.im@samsung.com>
Add 'isProtocolHandlerRegistered' and 'unregisterProtocolHandler'.
https://bugs.webkit.org/show_bug.cgi?id=73176
Reviewed by Adam Barth.
Two more APIs are added in Custom Scheme Handler specification.
http://dev.w3.org/html5/spec/Overview.html#custom-handlers
One is 'isProtocolHandlerRegistered' to query whether the specific URL
is registered or not.
The other is 'unregisterProtocolHandler' to remove the registered URL.
* Configurations/FeatureDefines.xcconfig: Add a macro 'ENABLE_CUSTOM_SCHEME_HANDLER'.
2012-06-04 David Kilzer <ddkilzer@apple.com>
BUILD FIX: FeatureDefines.xcconfig should match across projects
* Configurations/FeatureDefines.xcconfig:
- Fix sort order of ENABLE_CSS3_FLEXBOX.
- Fix typo in ENABLE_FONT_BOOSTING.
- Add missing ENABLE_LEGACY_CSS_VENDOR_PREFIXES.
2012-06-02 Yongjun Zhang <yongjun_zhang@apple.com>
loadRequest should check for empty URLs.
https://bugs.webkit.org/show_bug.cgi?id=88154
In [WebFrame loadRequest], if the url is invalid and not nil, we transform it to file: url.
However, WebKit client could send down an empty URL that makes us transform it to file: url
as well. We should skip that as we did for nil URLs.
Reviewed by Brady Eidson.
* WebView/WebFrame.mm:
(-[WebFrame loadRequest:]):
2012-06-01 Michael Saboff <msaboff@apple.com>
WebFrame::_stringByEvaluatingJavaScriptFromString methods don't handle nil string
https://bugs.webkit.org/show_bug.cgi?id=88109
Reviewed by Geoffrey Garen.
Added short circuit return when the NSString to evaluate is nil.
* WebView/WebFrame.mm:
(-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
(-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
2012-05-31 Hajime Morrita <morrita@chromium.org>
REGRESSION(r117572): editing/spelling/spellcheck-async-remove-frame.html crashes on Mac
https://bugs.webkit.org/show_bug.cgi?id=86859
Reviewed by Ryosuke Niwa.
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(-[WebEditorSpellCheckResponder initWithClient:sequence:results:]):
(-[WebEditorSpellCheckResponder perform]):
(WebEditorClient::didCheckSucceeded):
(WebEditorClient::requestCheckingOfString):
2012-05-31 Andy Estes <aestes@apple.com>
Disentangle code that relies on USE(AUTOMATIC_TEXT_REPLACEMENT) from that which merely relies on PLATFORM(MAC)
https://bugs.webkit.org/show_bug.cgi?id=87933
Reviewed by Dan Bernstein.
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
2012-05-29 David Barr <davidbarr@chromium.org>
Introduce ENABLE_CSS_IMAGE_RESOLUTION compile flag
https://bugs.webkit.org/show_bug.cgi?id=87685
Reviewed by Eric Seidel.
Add a configuration option for CSS image-resolution support, disabling it by default.
* Configurations/FeatureDefines.xcconfig:
2012-05-29 Nikolas Zimmermann <nzimmermann@rim.com>
SVGViewSpec DOM bindings aka SVGSVGElement.currentView is unimplemented
https://bugs.webkit.org/show_bug.cgi?id=15495
Reviewed by Rob Buis.
* MigrateHeaders.make: Copy DOMSVGViewSpec*.h headers.
2012-05-25 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>
WebKitTestRunner needs to support layoutTestController.setJavaScriptProfilingEnabled
https://bugs.webkit.org/show_bug.cgi?id=42328
Reviewed by Eric Seidel.
* WebInspector/WebInspector.mm:
(-[WebInspector setJavaScriptProfilingEnabled:]):
2012-05-24 Tim Horton <timothy_horton@apple.com>
Add feature defines for web-facing parts of CSS Regions and Exclusions
https://bugs.webkit.org/show_bug.cgi?id=87442
<rdar://problem/10887709>
Reviewed by Dan Bernstein.
* Configurations/FeatureDefines.xcconfig:
2012-05-24 John Mellor <johnme@chromium.org>
Font Boosting: Add compile flag and runtime setting
https://bugs.webkit.org/show_bug.cgi?id=87394
Reviewed by Adam Barth.
Add ENABLE_FONT_BOOSTING.
* Configurations/FeatureDefines.xcconfig:
2012-05-23 Ojan Vafai <ojan@chromium.org>
add back the ability to disable flexbox
https://bugs.webkit.org/show_bug.cgi?id=87147
Reviewed by Tony Chang.
* Configurations/FeatureDefines.xcconfig:
2012-05-22 Tim Horton <timothy_horton@apple.com>
Add a quirk for applications that depend on the relative ordering of progressCompleted/didFinishLoad
https://bugs.webkit.org/show_bug.cgi?id=87178
<rdar://problem/11468434>
Reviewed by Maciej Stachowiak.
Add plumbing for the quirk to flip the relative ordering of progressCompleted/didFinishLoad back
to the behavior before http://trac.webkit.org/changeset/94105. Make it apply to any Mail.app linked
against WebKit before that revision.
* Misc/WebKitVersionChecks.h:
* WebView/WebView.mm:
(-[WebView _needsDidFinishLoadOrderQuirk]):
(-[WebView _preferencesChanged:]):
2012-05-21 Gavin Barraclough <barraclough@apple.com>
Disable private names by default in WebCore
https://bugs.webkit.org/show_bug.cgi?id=87088
Reviewed by Geoff Garen.
r117859 introduced a preliminary implementation of ES6-like private name objects to JSC.
These are probably not yet ready to be web-facing, so disabling by default in WebCore.
Opting-in for JSC & DumpRenderTree so that we can still run the fast/js/names.html test.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences setJavaScriptExperimentsEnabled:]):
(-[WebPreferences javaScriptExperimentsEnabled]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
- Added JavaScriptExperimentsEnabled to WebPreferences.
2012-05-15 Gavin Barraclough <barraclough@apple.com>
Add support for private names
https://bugs.webkit.org/show_bug.cgi?id=86509
Reviewed by Oliver Hunt.
The spec isn't final, but we can start adding support to allow property maps
to contain keys that aren't identifiers.
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyClass::methodsNamed):
(WebKit::ProxyClass::fieldNamed):
(WebKit::ProxyInstance::getMethod):
(WebKit::ProxyInstance::methodsNamed):
(WebKit::ProxyInstance::fieldNamed):
- Removed PropertyName::impl(), call publicName() to get the string associated with a name.
2012-05-21 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
Move setEditingBehavior() from layoutTestController to window.internals
https://bugs.webkit.org/show_bug.cgi?id=42689
Reviewed by Hajime Morita and Kenneth Rohde Christiansen.
Remove Mac private API to get/set the editing behavior, since it was only there
for the DRT.
* WebKit.order:
* WebView/WebFrame.mm:
* WebView/WebFrameInternal.h:
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2012-05-20 Ryosuke Niwa <rniwa@webkit.org>
Using createContextualFragment to insert a <script> does not cause the script to execute
https://bugs.webkit.org/show_bug.cgi?id=12234
Reviewed by Adam Barth.
Renamed FragmentScriptingNotAllowed to DisallowScriptingContent.
* WebView/WebFrame.mm:
(-[WebFrame _documentFragmentWithMarkupString:baseURLString:]):
2012-05-19 Andy Estes <aestes@apple.com>
Fix build errors found when disabling ENABLE_DRAG_SUPPORT
https://bugs.webkit.org/show_bug.cgi?id=86947
Reviewed by Jon Honeycutt.
* WebCoreSupport/WebDragClient.h:
* WebCoreSupport/WebDragClient.mm:
* WebView/WebFrame.mm:
* WebView/WebFrameInternal.h:
* WebView/WebFrameView.mm:
(-[WebFrameView _setDocumentView:]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView acceptsFirstMouse:]):
(-[WebHTMLView shouldDelayWindowOrderingForEvent:]):
(matchesExtensionOrEquivalent):
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView moveDragCaretToPoint:]):
(-[WebView removeDragCaret]):
2012-04-27 Filip Pizlo <fpizlo@apple.com>
DFG should have control flow graph simplification
https://bugs.webkit.org/show_bug.cgi?id=84553
Reviewed by Oliver Hunt.
Merged r115512 from dfgopt.
JSValue::toBoolean(ExecState*) -> JSValue::toBoolean()
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::addValueToArray):
2012-05-18 Tony Chang <tony@chromium.org>
remove the CSS_GRID_LAYOUT compiler define, but default grid layout to off
https://bugs.webkit.org/show_bug.cgi?id=86767
Reviewed by Ojan Vafai.
* Configurations/FeatureDefines.xcconfig:
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences cssGridLayoutEnabled]):
(-[WebPreferences setCSSGridLayoutEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2012-05-18 MORITA Hajime <morrita@google.com>
Another unreviewed attempt to fix build breakage on r117572.
* WebCoreSupport/WebEditorClient.h:
2012-05-18 MORITA Hajime <morrita@google.com>
https://bugs.webkit.org/show_bug.cgi?id=85515
Stale frame in WebCore::SpellChecker::didCheckSucceeded
Reviewed by Ryosuke Niwa.
* WebCoreSupport/WebEditorClient.h:
2012-05-17 Andy Estes <aestes@apple.com>
Don't let -[CALayer renderInContext:] try to render WebView's root layer
https://bugs.webkit.org/show_bug.cgi?id=86773
<rdar://problem/10950075>
Reviewed by Dan Bernstein.
-[CALayer renderInContext:] doesn't correctly render our layer tree, so
don't let it try. Calling drawRect: with a bitmap context will already
do the right thing for WebViews.
* WebView/WebHTMLView.mm: Create a subclass of CALayer called WebLayerHostingLayer.
(-[WebLayerHostingLayer renderInContext:]): override renderInContext: to be a NOOP.
(-[WebHTMLView attachRootLayer:]): Create a WebLayerHostingLayer rather than a CALayer.
2012-05-17 Hironori Bono <hbono@chromium.org>
[Refactoring] Move platform-specific code in Editor::respondToChangedSelection to the WebKit layer
https://bugs.webkit.org/show_bug.cgi?id=86591
Reviewed by Ryosuke Niwa.
This change adds a TextCheckerClient::shouldEraseMarkersAfterChangeSelection
function to remove platform-specific code from Editor::respondToChangedSelection
function.
No new tests, no change in behavior.
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::shouldEraseMarkersAfterChangeSelection):
2012-05-17 Dan Bernstein <mitz@apple.com>
REGRESSION (r117428): WebKit API/SPI was removed
https://bugs.webkit.org/show_bug.cgi?id=86748
Reverted r117428.
* WebKit.order:
* WebView/WebView.mm:
(+[WebView _setDomainRelaxationForbidden:forURLScheme:]):
* WebView/WebViewPrivate.h:
2012-05-17 Gyuyoung Kim <gyuyoung.kim@samsung.com>
Convert setDomainRelaxationForbiddenForURLScheme to use InternalSettings interface
https://bugs.webkit.org/show_bug.cgi?id=86704
Reviewed by Eric Seidel.
Remove setDomainRelaxationForbiddenForURLScheme functions, because it is able to work in the
cross-port way through the InternalSettings interface.
* WebKit.order:
* WebView/WebView.mm:
* WebView/WebViewPrivate.h:
2012-05-15 Anders Carlsson <andersca@apple.com>
Use unaccelerated scrolling deltas when rubber-banding
https://bugs.webkit.org/show_bug.cgi?id=86503
<rdar://problem/11378742>
Reviewed by Sam Weinig.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
Init new WKSI functions.
2012-05-14 Luke Macpherson <macpherson@chromium.org>
Introduce ENABLE_CSS_VARIABLES compile flag.
https://bugs.webkit.org/show_bug.cgi?id=86338
Reviewed by Dimitri Glazkov.
Add a configuration option for CSS Variables support, disabling it by default.
* Configurations/FeatureDefines.xcconfig:
2012-05-14 Michael Saboff <msaboff@apple.com>
Enh: Add the Ability to Disable / Enable JavaScript GC Timer
https://bugs.webkit.org/show_bug.cgi?id=86382
Reviewed by Darin Adler.
Plumbing to set / clear JS GC activity timer enable flag.
* Misc/WebCoreStatistics.h:
* Misc/WebCoreStatistics.mm:
(+[WebCoreStatistics setJavaScriptGarbageCollectorTimerEnabled:]):
2012-05-11 Gavin Barraclough <barraclough@apple.com>
Introduce PropertyName class
https://bugs.webkit.org/show_bug.cgi?id=86241
Reviewed by Geoff Garen.
Replace 'const Identifier&' arguments to functions accessing object properties with a new 'PropertyName' type.
This change paves the way to allow for properties keyed by values that are not Identifiers.
This change is largely a mechanical find & replace.
It also changes JSFunction's constructor to take a UString& instead of an Identifier&
(since in some cases we can no longer guarantee that we'lll have an Identifier), and
unifies Identifier's methods to obtain array indices onto PropertyName.
The new PropertyName class retains the ability to support .impl() and .ustring(), but
in a future patch we may need to rework this, since not all PropertyNames should be
equal based on their string representation.
* Plugins/Hosted/ProxyInstance.h:
(ProxyInstance):
* Plugins/Hosted/ProxyInstance.mm:
(ProxyClass):
(WebKit::ProxyClass::methodsNamed):
(WebKit::ProxyClass::fieldNamed):
(WebKit::ProxyRuntimeMethod::create):
(WebKit::ProxyRuntimeMethod::finishCreation):
(WebKit::ProxyInstance::getMethod):
(WebKit::ProxyInstance::methodsNamed):
(WebKit::ProxyInstance::fieldNamed):
2012-05-11 Brady Eidson <beidson@apple.com>
<rdar://problem/11361907> and https://bugs.webkit.org/show_bug.cgi?id=86265
REGRESSION(r104885): Images missing from printed YummySoup! recipes
We thought clients were passing paths as URLs.
It turns out it was more likely they were passing file: URLs with the file: scheme removed.
And that jives perfectly with the behavior change caused by r104885.
Reviewed by Alexey Proskuryakov.
Rename _webkit_URLFromURLOrPath to _webkit_URLFromURLOrSchemelessFileURL, and change it
to create the new URL simply by appending "file:":
* Misc/WebNSURLExtras.h:
* Misc/WebNSURLExtras.mm:
(-[NSURL _webkit_URLFromURLOrSchemelessFileURL]):
* WebView/WebFrame.mm:
(-[WebFrame loadRequest:]): Create the fixed url simply by appending "file:" to the
existing URL string.
(-[WebFrame loadData:MIMEType:textEncodingName:baseURL:]):
(-[WebFrame loadHTMLString:baseURL:]):
(-[WebFrame loadAlternateHTMLString:baseURL:forUnreachableURL:]):
2012-05-10 Gyuyoung Kim <gyuyoung.kim@samsung.com>
Move resumeAnimations to use Internals interface
https://bugs.webkit.org/show_bug.cgi?id=86063
Reviewed by Alexey Proskuryakov.
Remove resumeAnimations functions, because it is able to work in the
cross-port way through the Internals interface.
* WebKit.order:
* WebView/WebFrame.mm:
* WebView/WebFramePrivate.h:
2012-05-10 Anders Carlsson <andersca@apple.com>
WebKit1: Add a way to blacklist specific plug-ins/plug-in versions
https://bugs.webkit.org/show_bug.cgi?id=86150
<rdar://problem/9551196>
Reviewed by Sam Weinig.
* Misc/WebKitErrors.h:
Add WebKitErrorInsecurePlugInVersion enum.
* Plugins/WebBasePluginPackage.h:
* Plugins/WebBasePluginPackage.mm:
(-[WebBasePluginPackage bundleIdentifier]):
(-[WebBasePluginPackage bundleVersion]):
Add bundleIdentifier and bundleVersion getters.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::createPlugin):
Check if the plug-in is blocked. If it is, set the unavailability reason and the error code.
2012-05-10 Anders Carlsson <andersca@apple.com>
Rename the missing plug-in indicator to the unavailable plug-in indicator
https://bugs.webkit.org/show_bug.cgi?id=86136
Reviewed by Sam Weinig.
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView pluginHostDied]):
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::shouldUnavailablePluginMessageBeButton):
(WebChromeClient::unavailablePluginButtonClicked):
2012-05-09 Gyuyoung Kim <gyuyoung.kim@samsung.com>
Move suspendAnimations to use Internals interface.
https://bugs.webkit.org/show_bug.cgi?id=85986
Reviewed by Ryosuke Niwa.
Remove suspendAnimations functions, because it is able to work in the
cross-port way through the Internals interface.
* WebKit.order:
* WebView/WebFrame.mm:
* WebView/WebFramePrivate.h:
2012-05-08 Kent Tamura <tkent@chromium.org>
Fixe Chromium build, and add a FIXME comment about a layering violation.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2012-05-08 Jon Lee <jonlee@apple.com>
Safari warns that it needs to resend the form in an iFrame when going back
https://bugs.webkit.org/show_bug.cgi?id=82658
<rdar://problem/11292558>
Reviewed by Darin Adler.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Add wkCFURLRequestAllowAllPostCaching.
2012-05-08 Timothy Hatcher <timothy@apple.com>
Fix the SOFT_LINK_STAGED_FRAMEWORK_OPTIONAL macro so it passes the full path to dlopen.
<rdar://problem/11406517>
Reviewed by Mark Rowe.
* WebCoreSupport/WebInspectorClient.mm: Pass A to SOFT_LINK_STAGED_FRAMEWORK_OPTIONAL for the version.
2012-05-07 Andy Estes <aestes@apple.com>
ENABLE_IFRAME_SEAMLESS should be part of FEATURE_DEFINES.
* Configurations/FeatureDefines.xcconfig:
2012-05-07 Eric Seidel <eric@webkit.org>
Add ENABLE_IFRAME_SEAMLESS so Apple can turn off SEAMLESS if needed
https://bugs.webkit.org/show_bug.cgi?id=85822
Reviewed by Adam Barth.
* Configurations/FeatureDefines.xcconfig:
2012-05-05 Dean Jackson <dino@apple.com>
Add new Setting/Preference to disable requestAnimationFrame
https://bugs.webkit.org/show_bug.cgi?id=85693
Reviewed by Simon Fraser.
Exposes a new WebPreference: WebKitRequestAnimationFrameEnabled.
The default value is true. The majority of applications will leave
it this way.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences requestAnimationFrameEnabled]):
(-[WebPreferences setRequestAnimationFrameEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2012-05-04 Jer Noble <jer.noble@apple.com>
REGRESSION (r116127-r116165): 6 tests failing on Lion Debug (Tests)
https://bugs.webkit.org/show_bug.cgi?id=85674
Reviewed by Oliver Hunt.
Null check the results of core([frame DOMDocument]).
* WebView/WebView.mm:
(-[WebView _didStartProvisionalLoadForFrame:]):
2012-05-02 Jer Noble <jer.noble@apple.com>
Taking a visibility:hidden element full screen causes full screen window to disappear.
https://bugs.webkit.org/show_bug.cgi?id=85432
Reviewed by Maciej Stachowiak.
When given an initial or final frame with a zero width or height, return a rect representing
the entire screen, rather than a rect with a zero or infinite size. Doing otherwise will
confuse the window server when it's instructed to scale the full screen window to that size.
* WebView/WebFullScreenController.mm:
(windowFrameFromApparentFrames):
2012-05-04 Jer Noble <jer.noble@apple.com>
Full screen will exit during a provisional load of a non-ancestor iframe.
https://bugs.webkit.org/show_bug.cgi?id=85230
Reviewed by Maciej Stachowiak .
Only exit full screen mode if the frame being loaded contains the full
screen element.
* WebView/WebView.mm:
(-[WebView _didStartProvisionalLoadForFrame:]): Give the UIDelegate a first crack at handling the
request to close the full screen window when a provisional load occurs.
2012-05-04 Jer Noble <jer.noble@apple.com>
Move WebKitFullScreenListener into its own file.
https://bugs.webkit.org/show_bug.cgi?id=85640
Reviewed by Maciej Stachowiak.
Move WebKitFullScreenListener into its own file, so it can be used by multiple classes.
* WebCoreSupport/WebKitFullScreenListener.h: Added.
* WebCoreSupport/WebKitFullScreenListener.mm: Added.
(-[WebKitFullScreenListener webkitWillEnterFullScreen]):
(-[WebKitFullScreenListener webkitDidEnterFullScreen]):
(-[WebKitFullScreenListener webkitWillExitFullScreen]):
(-[WebKitFullScreenListener webkitDidExitFullScreen]):
* WebCoreSupport/WebChromeClient.mm:
2012-05-04 Brady Eidson <beidson@apple.com>
<rdar://problem/11312853> and https://bugs.webkit.org/show_bug.cgi?id=85635
Exception in [WebFrame loadRequest:] breaks some WebKit apps
Reviewed by Alexey Proskuryakov.
Some API clients pass in nil requests or requests with nil URLs.
In r112571 we started rewriting these URLs resulting in an exception.
Since we've supported nil requests until now, we should not try to rewrite these URLs.
* WebView/WebFrame.mm:
(-[WebFrame loadRequest:]): Don't try to rewrite invalid URLs if they are also null.
2012-05-04 Nate Chapin <japhet@chromium.org>
Don't require FrameLoaderClient to manufacture a commitData() call for empty documents.
https://bugs.webkit.org/show_bug.cgi?id=85533
Reviewed by Alexey Proskuryakov.
* WebView/WebHTMLRepresentation.mm:
(-[WebHTMLRepresentation finishedLoadingWithDataSource:]): Calling commitData when finishing is no longer necessary,
as WebCore will take care of simulating the receipt of data and ensuring the requisite work gets done in the blank document case.
2012-05-03 Anders Carlsson <andersca@apple.com>
useWebKitWebInspector should be more robust against missing files
https://bugs.webkit.org/show_bug.cgi?id=85563
<rdar://problem/11373948>
Reviewed by Dan Bernstein.
* WebCoreSupport/WebInspectorClient.mm:
(useWebKitWebInspector):
2012-05-03 Tobias Netzel <tobias.netzel@googlemail.com>
Bugs in WebFullScreenController
https://bugs.webkit.org/show_bug.cgi?id=85388
Reviewed by Alexey Proskuryakov.
Leopard specific fixes:
NSWindow doesn't respond to isOnActiveSpace so find out first.
Values passed to SetSystemUIMode were swapped.
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController exitFullScreen]):
(-[WebFullScreenController _updateMenuAndDockForFullScreen]):
2012-05-02 Jon Lee <jonlee@apple.com>
Migrate permission functions to Notification from NotificationCenter
https://bugs.webkit.org/show_bug.cgi?id=80485
<rdar://problem/10965458>
Reviewed by Jian Li.
* WebCoreSupport/WebNotificationClient.h: *
WebCoreSupport/WebNotificationClient.mm: Add a separate callback
variable depending on the notifications API enabled.
(WebNotificationClient::requestPermission): Add
NotificationPermissionCallback version of the same
function. And refactor common code into private function.
(-[WebNotificationPolicyListener initWithCallback:]): Refactor to
take the NotificationPermissionCallback as a parameter.
(-[WebNotificationPolicyListener initWithVoidCallback:]): Add new
init method to handle legacy API.
(-[WebNotificationPolicyListener allow]): Invoke the callback for
both variables. If only one of the APIs is enabled, we are
guaranteed that the relevant callback variable exists. If both
APIs are supported, it is possible that _voidCallback will be nil
if the callback is NotificationPermissionCallback, so we need the
extra pointer check.
(-[WebNotificationPolicyListener deny]): Ditto.
2012-05-02 Eric Seidel <eric@webkit.org>
Sort ENABLE_ defines in FeatureDefines.xcconfig files to make them easier to compare with one another (and easier to autogenerate)
https://bugs.webkit.org/show_bug.cgi?id=85433
Reviewed by Adam Barth.
I have a script which can autogenerate these xcconfig files as well as the
vsprops files (and soon the Chromium, cmake, gnumake and qmake) feature lists
from a central feature list file.
In preparation for posting such a tool, I'm re-sorting these xcconfig files to be
alphabetically ordered (currently they're close, but not quite).
There is also at least one inconsistency between these files (CSS_LEGACY_PREFIXES) which
I will fix in a second pass. I will also sort the FEATURE_DEFINES = line in a follow-up patch.
* Configurations/FeatureDefines.xcconfig:
2012-04-18 Jon Honeycutt <jhoneycutt@apple.com>
FrameLoaderClient::dispatchWillSendSubmitEvent() should be given more
information about the form being submitted
https://bugs.webkit.org/show_bug.cgi?id=84297
Reviewed by Andy Estes.
* WebCoreSupport/WebFrameLoaderClient.h:
Updated method declaration.
2012-05-01 Jon Honeycutt <jhoneycutt@apple.com>
Make Page::setDefersLoading() have a call count so that each time
loading is deferred, it must be balanced with a call to resume.
https://bugs.webkit.org/show_bug.cgi?id=84522
Reviewed by Andy Estes.
* WebView/WebPreferenceKeysPrivate.h:
Declare a new key for this preference.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
Initialize new preference to NO.
(-[WebPreferences setWantsBalancedSetDefersLoadingBehavior:]):
Setter.
(-[WebPreferences wantsBalancedSetDefersLoadingBehavior]):
Getter.
* WebView/WebPreferencesPrivate.h:
Declare setter and getter.
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
Set the setting from the WebPreferences object's value.
2012-05-01 Jeffrey Pfau <jpfau@apple.com>
<rdar://problem/10422318> Support for web content filter delegate for filtering https content
https://bugs.webkit.org/show_bug.cgi?id=85300
Reviewed by Alexey Proskuryakov.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2012-05-01 Ryosuke Niwa <rniwa@webkit.org>
*Command.h files shouldn't be exported to WebKit layer
https://bugs.webkit.org/show_bug.cgi?id=74778
Reviewed by Eric Seidel.
* WebView/WebFrame.mm:
(-[WebFrame _insertParagraphSeparatorInQuotedContent]):
2012-04-28 Geoffrey Garen <ggaren@apple.com>
Clarified JSGlobalData (JavaScript VM) lifetime
https://bugs.webkit.org/show_bug.cgi?id=85142
Reviewed by Anders Carlsson.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::invoke):
(WebKit::NetscapePluginInstanceProxy::invokeDefault):
(WebKit::NetscapePluginInstanceProxy::construct):
2012-04-27 Gavin Peters <gavinp@chromium.org>
Add new ENABLE_LINK_PRERENDER define to control the Prerendering API
https://bugs.webkit.org/show_bug.cgi?id=84871
Reviewed by Adam Barth.
Prerendering is currently covered by the ENABLE_LINK_PREFETCH macro, but the new Prerendering
API separates it from prefetching. Having separate include guards lets ports enable prefetching,
a relatively easy change, without needing to build the infrastructure for prerendering, which
is considerably more complicated.
2012-04-26 Jon Lee <jonlee@apple.com>
[WK2] AlternativeTextClient leaks when the page is destroyed
https://bugs.webkit.org/show_bug.cgi?id=84307
<rdar://problem/11328431>
Reviewed by Enrica Casucci.
* WebCoreSupport/WebAlternativeTextClient.h: Implement pageDestroyed(), as in EditorClient.
(WebAlternativeTextClient):
* WebCoreSupport/WebAlternativeTextClient.mm:
(WebAlternativeTextClient::pageDestroyed): Deletes itself.
2012-04-26 Jer Noble <jer.noble@apple.com>
Full Screen mode does not preserve CALayer ordering after exiting.
https://bugs.webkit.org/show_bug.cgi?id=83931
Reviewed by Eric Carlson.
Further corrections to r114567. When swapping view for otherView, give the correct
relative view to -[NSView addSubview:positioned:relativeTo:].
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController _swapView:with:]):
2012-04-25 Jer Noble <jer.noble@apple.com>
Placeholder view is immediately removed from hosting window upon entering full screen.
https://bugs.webkit.org/show_bug.cgi?id=84916
Reviewed by Darin Adler.
Correct a mistake added in r114567. When swapping view for otherView, add otherView and
remove view (rather than adding otherView and removing otherView).
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController _swapView:with:]):
2012-04-25 Beth Dakin <bdakin@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=84913
WebKit 1: Initialize deviceScaleFactor on creation of the WebView
-and corresponding-
<rdar://problem/11322716>
Reviewed by Darin Adler.
Before this patch, we weren't setting the deviceScaleFactor until
viewDidMoveToWindow which is quite late for background tabs. setHostWindow will
happen early on though. For applications that don't use host windows, also set it
from _initWithFrame.
* WebView/WebView.mm:
(-[WebView _initWithFrame:frameName:groupName:usesDocumentViews:]):
(-[WebView setHostWindow:]):
(-[WebView _deviceScaleFactor]):
2012-04-24 Alexis Menard <alexis.menard@openbossa.org>
Replace occurences of style selector from variables and methods names by style resolver.
https://bugs.webkit.org/show_bug.cgi?id=84765
Reviewed by Andreas Kling.
Rename methods and variables to follow the new name StyleResolver. It requires to update the
local variables, methods parameters, and function names to match the new name and to remove
the concept of "selector" to avoid clashing with the CSS concept. The next and last patch
will be to rename CSSStyleSelector file and update the includes.
* WebView/WebHTMLView.mm:
(-[WebHTMLView reapplyStyles]):
(-[WebHTMLView _setPrinting:minimumPageLogicalWidth:logicalHeight:originalPageWidth:originalPageHeight:maximumShrinkRatio:adjustViewSize:paginateScreenContent:]):
2012-04-23 Andy Estes <aestes@apple.com>
Incremental rendering should be unsuppressed after the load event or a configurable timeout, whichever occurs first.
https://bugs.webkit.org/show_bug.cgi?id=84583
Add a private WebPreference for setting the incremental rendering suppression timeout.
Reviewed by Anders Carlsson.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(-[WebPreferences setIncrementalRenderingSuppressionTimeoutInSeconds:]):
(-[WebPreferences incrementalRenderingSuppressionTimeoutInSeconds]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2012-04-23 Julien Chaffraix <jchaffraix@webkit.org>
Cut dependency on RenderLayer::scrollRectToVisible outside rendering
https://bugs.webkit.org/show_bug.cgi?id=84607
Reviewed by Simon Fraser.
* WebView/WebFrame.mm:
(-[WebFrame _scrollDOMRangeToVisible:]):
Updated to use RenderObject::scrollRectToVisible and not depend on RenderLayer.
2012-04-22 Jon Lee <jonlee@apple.com>
Remove notifications support on Mac Lion.
https://bugs.webkit.org/show_bug.cgi?id=84554
<rdar://problem/11297128>
Reviewed by Sam Weinig.
* Configurations/FeatureDefines.xcconfig:
2012-04-20 Jon Lee <jonlee@apple.com>
Add Notification constructor
https://bugs.webkit.org/show_bug.cgi?id=80477
<rdar://problem/10912431>
Reviewed by Jian Li.
* WebCoreSupport/WebNotificationClient.mm:
(WebNotificationClient::clearNotifications): When clearing notifications, finalize
them so that they can be cleaned up by the GC.
2012-04-20 Timothy Hatcher <timothy@apple.com>
Make the Web Inspector be the first responder when opening docked.
<rdar://problem/11294217>
Reviewed by Brian Weinstein.
* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController showWindow:]): Call makeFirstResponder: on
the window and pass the Inspector's WebView.
2012-04-18 Hironori Bono <hbono@chromium.org>
Split SpellChecker::didCheck() to SpellChecker::didCheckSucceeded() and SpellChecker::didCheckCanceled()
https://bugs.webkit.org/show_bug.cgi?id=83748
Reviewed by Ryosuke Niwa.
This change replaces a call for SpellChecker::didCheck() with one for
SpellChecker::didCheckSucceeded() because didCheck has been split into
didCheckSucceeded(0 and didCheckCanceled().
* WebCoreSupport/WebEditorClient.mm:
(-[WebEditorSpellCheckResponder perform]): Replaced didCheck with didCheckSucceeded.
2012-04-18 Jer Noble <jer.noble@apple.com>
Full Screen mode does not preserve CALayer ordering after exiting.
https://bugs.webkit.org/show_bug.cgi?id=83931
Reviewed by Eric Carlson.
When swapping the placeholder and web views, use -[NSView addSubview:positioned:relativeTo:]
instead of -[NSView replaceSubview:with:], as the latter does not preserve the relative order
of the view's backing CALayers.
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController _swapView:with:]):
2012-04-18 Alexey Proskuryakov <ap@apple.com>
[WK2] Sandbox violations prevent attaching files to gmail messages
https://bugs.webkit.org/show_bug.cgi?id=84263
<rdar://problem/11248260>
Reviewed by Oliver Hunt.
* WebCoreSupport/WebDragClient.mm: (WebDragClient::willPerformDragDestinationAction):
DragDestinationActionUpload no longer exists, so we don't need a special case for it.
2012-04-17 Jer Noble <jer.noble@apple.com>
Exiting full screen video brings the wrong Safari window to the foreground
https://bugs.webkit.org/show_bug.cgi?id=83936
Reviewed by Adele Peterson.
Tell the original webView's window to makeKeyAndOrderFront once the exit
animation completes.
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController finishedExitFullScreenAnimation:]):
2012-04-16 Anders Carlsson <andersca@apple.com>
Use a MIG call when creating a plug-in property list file
https://bugs.webkit.org/show_bug.cgi?id=84084
<rdar://problem/11197341>
Reviewed by Sam Weinig.
* Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::createPropertyListFile):
Get a plug-in host and call _WKPHCreatePluginMIMETypesPreferences instead.
* Plugins/Hosted/WebKitPluginHost.defs:
Add PHCreatePluginMIMETypesPreferences.
* Plugins/WebNetscapePluginPackage.mm:
(-[WebNetscapePluginPackage createPropertyListFile]):
NetscapePluginHostManager::createPropertyListFile is no longer a static member function.
2012-04-12 Andy Estes <aestes@apple.com>
REGRESSION (r102262): iAd Producer relies on CSSStyleDeclaration property setters respecting '!important'
https://bugs.webkit.org/show_bug.cgi?id=83832
Reviewed by Alexey Proskuryakov.
* Misc/WebKitVersionChecks.h: Indicate that 535.13.0 was the first
version of WebKit.framework to ignore '!important' in
CSSStyleDeclaration property setters.
* WebView/WebView.mm:
(shouldRespectPriorityInCSSAttributeSetters):
(-[WebView _commonInitializationWithFrameName:groupName:]): Enable a
quirk to restore pre-r102262 behavior if the application is iAd Producer
and was linked against a version of WebKit.framework that had the old behavior.
2012-04-12 Andy Estes <aestes@apple.com>
Remove unused WebKit1 SPI for suppressing incremental rendering.
https://bugs.webkit.org/show_bug.cgi?id=83801
Reviewed by Simon Fraser.
This SPI is unused and has been replaced by API ([setS|s]uppressesIncrementalRendering).
* WebView/WebPreferences.mm:
* WebView/WebPreferencesPrivate.h:
2012-04-08 Dan Bernstein <mitz@apple.com>
[mac] REGRESSION (r113467): Some canvas tests are failing in WebKit1 when run after compositing/tiled-layers-hidpi.html
https://bugs.webkit.org/show_bug.cgi?id=83453
Reviewed by Sam Weinig.
* WebView/WebView.mm:
(-[WebView _setCustomBackingScaleFactor:]): When the scale factor parameter was 0, meaning
no custom scale factor, this method was setting the Page scale factor to 0, and that value
was used by canvas. Changed it to correctly set the Page scale factor back to the device
scale factor.
2012-04-06 Alexey Proskuryakov <ap@apple.com>
[Mac] Adopt a different method of telling AppKit when inline input isn't supported
https://bugs.webkit.org/show_bug.cgi?id=83408
<rdar://problem/9205734>
Reviewed by Adele Peterson.
* Plugins/Hosted/WebTextInputWindowController.m:
(-[WebTextInputView validAttributesForMarkedText]):
(-[WebTextInputPanel init]):
(-[WebTextInputPanel _interpretKeyEvent:string:]): Added a comment about old approach.
2012-04-06 Enrica Casucci <enrica@apple.com>
Provide Obj-C private API to simplify markup.
https://bugs.webkit.org/show_bug.cgi?id=83334
<rdar://problem/11033861>
Reviewed by Sam Weinig.
* WebView/WebView.mm:
(-[WebView _simplifyMarkup:endNode:]): Added.
* WebView/WebViewPrivate.h:
2012-04-06 Tim Horton <timothy_horton@apple.com>
Add autodetection of image orientation from EXIF information
https://bugs.webkit.org/show_bug.cgi?id=19688
<rdar://problem/4126979> and <rdar://problem/11091578>
Original patch by David Carson and Eric Seidel.
Reviewed by Simon Fraser.
Add a preference, ShouldRespectImageOrientation, which will cause WebCore to respect EXIF orientation in all images.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences setShouldRespectImageOrientation:]):
(-[WebPreferences shouldRespectImageOrientation]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2012-04-06 Dan Bernstein <mitz@apple.com>
<rdar://problem/10912476> HiDPI: Have canvas use a hidpi backing store, but downsample upon access
Reviewed by Sam Weinig.
* Configurations/FeatureDefines.xcconfig: Added ENABLE_HIGH_DPI_CANVAS.
2012-04-05 Jia Pu <jpu@apple.com>
Move correction panel related functions from EditorClient into separated AlternativeTextClient class.
https://bugs.webkit.org/show_bug.cgi?id=82970
Reviewed by Enrica Casucci.
Move correction panel related functions from WebEditorClient to the new WebAlternativeTextClient.
See WebCore/ChangeLog for details.
* WebCoreSupport/CorrectionPanel.h:
* WebCoreSupport/CorrectionPanel.mm:
* WebCoreSupport/WebAlternativeTextClient.h: Added.
(WebAlternativeTextClient):
* WebCoreSupport/WebAlternativeTextClient.mm: Added.
(WebAlternativeTextClient::WebAlternativeTextClient):
(WebAlternativeTextClient::~WebAlternativeTextClient):
(WebAlternativeTextClient::showCorrectionAlternative):
(WebAlternativeTextClient::dismissAlternative):
(WebAlternativeTextClient::dismissAlternativeSoon):
(WebAlternativeTextClient::recordAutocorrectionResponse):
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::~WebEditorClient):
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
2012-03-15 Jer Noble <jer.noble@apple.com>
Full Screen mode should cancel before navigation.
https://bugs.webkit.org/show_bug.cgi?id=81295
Reviewed by Anders Carlsson.
When a provisional load is started, if the page is currently in full screen mode, instruct
the full screen controller to close the full screen window immediately.
* WebView/WebFullScreenController.h:
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController isFullScreen]): Added.
* WebView/WebView.mm:
(-[WebView _didStartProvisionalLoadForFrame:]): Close the full screen window controller, if
present and in full screen mode.
2012-04-03 Keishi Hattori <keishi@webkit.org>
Disable ENABLE_DATALIST for now
https://bugs.webkit.org/show_bug.cgi?id=82871
Reviewed by Kent Tamura.
* Configurations/FeatureDefines.xcconfig: Disabled ENABLE_DATALIST.
2012-04-03 Anders Carlsson <andersca@apple.com>
Add audit token to PHCheckInWithPluginHost
https://bugs.webkit.org/show_bug.cgi?id=83102
Reviewed by Sam Weinig.
* Plugins/Hosted/WebKitPluginHost.defs:
2012-04-02 Jia Pu <jpu@apple.com>
Rename SpellingCorrectionController to AlternativeTextController.
https://bugs.webkit.org/show_bug.cgi?id=82942
Reviewed by Enrica Casucci.
These changes are simply adopting new class names.
* WebCoreSupport/CorrectionPanel.h:
(CorrectionPanel):
* WebCoreSupport/CorrectionPanel.mm:
(correctionIndicatorType):
(CorrectionPanel::CorrectionPanel):
(CorrectionPanel::~CorrectionPanel):
(CorrectionPanel::show):
(CorrectionPanel::dismiss):
(CorrectionPanel::dismissInternal):
(CorrectionPanel::handleAcceptedReplacement):
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::~WebEditorClient):
(WebEditorClient::showCorrectionPanel):
(WebEditorClient::dismissCorrectionPanel):
(WebEditorClient::dismissCorrectionPanelSoon):
* WebView/WebView.mm:
(-[WebView handleCorrectionPanelResult:]):
2012-04-03 Jer Noble <jer.noble@apple.com>
ESC key in full screen does not result in webkitFullScreenChange event.
https://bugs.webkit.org/show_bug.cgi?id=82755
<rdar://problem/11093513>
Reviewed by Eric Carlson.
Instead of exiting full screen directly, ask the document to initiate exiting full screen. This ensures
that the entire full screen element stack is cleared and that webkitFullScreenChange events are sent
out correctly.
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController cancelOperation:]):
(-[WebFullScreenController requestExitFullScreen]):
2012-04-01 Jon Lee <jonlee@apple.com>
Rename notification properties and functions
https://bugs.webkit.org/show_bug.cgi?id=80482
<rdar://problem/10912432>
Reviewed by Kentaro Hara.
* WebView/WebNotification.h: Rename replaceID to tag.
* WebView/WebNotification.mm:
(-[WebNotification tag]):
2012-03-31 Timothy Hatcher <timothy@apple.com>
Prevent opening external URLs in the Web Inspector's WebView.
All URLs not handled by the Inspector's JavaScript are now opened in the inspected WebView.
https://webkit.org/b/82812
rdar://problem/9488558
Reviewed by Joseph Pecoraro.
* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController init]): Factored the URL code out of here into inspectorPagePath.
(-[WebInspectorWindowController inspectorPagePath]): Added.
(-[WebInspectorWindowController webView:decidePolicyForNavigationAction:request:frame:decisionListener:]): Added.
Only allow non-main frame and the inspector page. All other URLs will be opened in the inspected page.
2012-03-30 Emil A Eklund <eae@chromium.org>
Change WebKit/WebKit2 platform code to use pixel snapped values
https://bugs.webkit.org/show_bug.cgi?id=82549
Change WebKit and WebKit2 platform code to use rounded locations and
pixel snapped rects and sizes. This largely avoids having to expose the
fractional layout types to the platform code.
Reviewed by Eric Seidel.
* DOM/WebDOMOperations.mm:
(-[DOMNode _renderRect:]):
2012-03-30 Mark Pilgrim <pilgrim@chromium.org>
GEOLOCATION should be implemented as Page Supplement
https://bugs.webkit.org/show_bug.cgi?id=82228
Reviewed by Adam Barth.
Geolocation is now a Supplement in Page so the interface
has changed for setting up the page's geolocation client
initially and accessing the controller later.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView _geolocationDidChangePosition:]):
(-[WebView _geolocationDidFailWithError:]):
2012-03-30 Keishi Hattori <keishi@webkit.org>
Change ENABLE_INPUT_COLOR to ENABLE_INPUT_TYPE_COLOR and enable it for chromium
https://bugs.webkit.org/show_bug.cgi?id=80972
Reviewed by Kent Tamura.
* Configurations/FeatureDefines.xcconfig:
2012-03-28 Alexey Proskuryakov <ap@apple.com>
[Mac] REGRESSION: Removing translation of local paths in KURL constructor broke some applications
https://bugs.webkit.org/show_bug.cgi?id=82548
<rdar://problem/11125355>
<rdar://problem/11142152>
Reviewed by Brady Eidson.
* WebView/WebFrame.mm:
(-[WebFrame loadRequest:]): Fixed this bug.
(-[WebFrame loadHTMLString:baseURL:]): Also added translation to another API, so that I don't
have to come back again.
(-[WebFrame loadAlternateHTMLString:baseURL:forUnreachableURL:]): Ditto.
* WebView/WebView.mm: (-[WebView setMainFrameURL:]): Changed another place where clients used
to pass file paths instead of URLs.
2012-03-29 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r112553.
http://trac.webkit.org/changeset/112553
https://bugs.webkit.org/show_bug.cgi?id=82638
It made all tests crash on Qt WK2 (Requested by Ossy_away on
#webkit).
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView _geolocationDidChangePosition:]):
(-[WebView _geolocationDidFailWithError:]):
2012-03-29 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
HashMap<>::add should return a more descriptive object
https://bugs.webkit.org/show_bug.cgi?id=71063
Reviewed by Ryosuke Niwa.
Update code to use AddResult instead of a pair.
* Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::hostForPlugin):
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::methodsNamed):
(WebKit::ProxyInstance::fieldNamed):
* WebCoreSupport/WebNotificationClient.mm:
(WebNotificationClient::show):
2012-03-29 Mark Pilgrim <pilgrim@chromium.org>
GEOLOCATION should be implemented as Page Supplement
https://bugs.webkit.org/show_bug.cgi?id=82228
Reviewed by Adam Barth.
Geolocation is now a Supplement in Page so the interface
has changed for setting up the page's geolocation client
initially and accessing the controller later.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView _geolocationDidChangePosition:]):
(-[WebView _geolocationDidFailWithError:]):
2012-03-28 Nate Chapin <japhet@chromium.org>
Remove dispatchDidLoadMainResource callback, since no
port implements it.
https://bugs.webkit.org/show_bug.cgi?id=82539
Reviewed by Alexey Proskuryakov.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
* WebKit.order:
2012-03-28 Joseph Pecoraro <pecoraro@apple.com>
<http://webkit.org/b/82419> Web Inspector: Create -[DOMNode inspect] from IDL
Reviewed by Timothy Hatcher.
* MigrateHeaders.make: Copy DOMNodePrivate.h to PrivateHeaders.
2012-03-27 Timothy Hatcher <timothy@apple.com>
Make WebKit properly load a staged framework when soft linking.
https://webkit.org/b/82371
rdar://problem/11125989
Reviewed by Dan Bernstein.
* WebCoreSupport/WebInspectorClient.mm: Use SOFT_LINK_STAGED_FRAMEWORK_OPTIONAL to properly
load the WebInspector framework.
2012-03-26 Adam Barth <abarth@webkit.org>
FrameLoader::shouldAllowNavigation uses Frame for context rather than Document
https://bugs.webkit.org/show_bug.cgi?id=81020
Reviewed by Eric Seidel.
Update call site to new function name.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchWillSubmitForm):
2012-03-23 Alexey Proskuryakov <ap@apple.com>
[Mac] No need for platform-specific ENABLE_BLOB values
https://bugs.webkit.org/show_bug.cgi?id=82102
Reviewed by David Kilzer.
* Configurations/FeatureDefines.xcconfig:
2012-03-23 Dean Jackson <dino@apple.com>
Disable CSS_SHADERS in Apple builds
https://bugs.webkit.org/show_bug.cgi?id=81996
Reviewed by Simon Fraser.
Remove ENABLE_CSS_SHADERS from FeatureDefines. It's now in Platform.h.
* Configurations/FeatureDefines.xcconfig:
2012-03-22 Gyuyoung Kim <gyuyoung.kim@samsung.com>
Convert hasGrammarMarker to use Internals interface
https://bugs.webkit.org/show_bug.cgi?id=82004
Reviewed by Ryosuke Niwa.
Remove hasGrammarMarker support, since it can support in the cross-port way
through the Internals interface.
* WebKit.order:
* WebView/WebFrame.mm:
* WebView/WebFramePrivate.h:
2012-03-22 Benjamin Poulain <bpoulain@apple.com>
Build fix for WebHistory is busted after changing time zone
https://bugs.webkit.org/show_bug.cgi?id=81849
Unreviewed build fix.
When generating warning for undefined message signature, rebuildHistoryByDayIfNeeded
fail to compile due to addItemToDateCaches: being undefined.
Move the definition to the right place in the file to use the private method.
* History/WebHistory.mm:
(-[WebHistoryPrivate rebuildHistoryByDayIfNeeded:]):
2012-03-22 Benjamin Poulain <bpoulain@apple.com>
WebHistory is busted after changing time zone
https://bugs.webkit.org/show_bug.cgi?id=81849
Reviewed by Brady Eidson.
The date used for choosing the bucket of a new entry is computed
with the system TimeZone.
When the Time Zone change, or the daylight saving time change, all the dates
in _entriesByDate are offset from the new entries.
This patch solves the issue by re-distributing the WebHistoryItems if the time zone
changes.
The clients of WebHistory are notified of this change through the regular Notifications.
* History/WebHistory.mm:
(-[WebHistoryPrivate rebuildHistoryByDayIfNeeded:]):
(-[WebHistoryPrivate init]):
(-[WebHistory timeZoneChanged:]):
(-[WebHistory init]):
(-[WebHistory dealloc]):
(-[WebHistory finalize]):
2012-03-21 Tim Horton <timothy_horton@apple.com>
Make use of CG rounded-rect primitives
https://bugs.webkit.org/show_bug.cgi?id=79932
<rdar://problem/9274953>
Reviewed by Simon Fraser.
Portions of patch by Nikolas Zimmermann and Mustafizur Rahaman.
Add wkCGPathAddRoundedRect.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2012-03-20 Gyuyoung Kim <gyuyoung.kim@samsung.com>
Convert hasSpellingMarker to use Internals interface.
https://bugs.webkit.org/show_bug.cgi?id=81300
Reviewed by Ryosuke Niwa.
Remove hasSpellingMarker support, since it can support in the cross-port way
through the Internals interface.
* WebKit.order:
* WebView/WebFrame.mm:
* WebView/WebFramePrivate.h:
2012-03-19 Adam Barth <abarth@webkit.org>
Remove support for "magic" iframe
https://bugs.webkit.org/show_bug.cgi?id=81590
Reviewed by Eric Seidel.
Remove FrameLoaderClient methods that no longer exist.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
2012-03-19 Enrica Casucci <enrica@apple.com>
WebKit2: create sandbox extensions for files that are dropped in an input control.
https://bugs.webkit.org/show_bug.cgi?id=81153
<rdar://problem/11031207>
Reviewed by Alexey Proskuryakov.
* WebCoreSupport/WebDragClient.mm:
(WebDragClient::willPerformDragDestinationAction): Avoid calling the delegate with the new drag action.
We want to avoid any unwanted side effects for the WebKit clients.
2012-03-19 Emil A Eklund <eae@chromium.org>
[mac/chromium] Change platform code to use pixelSnappedRect methods
https://bugs.webkit.org/show_bug.cgi?id=81016
Reviewed by Eric Seidel.
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView actualVisibleRectInWindow]):
* WebView/WebFrame.mm:
(-[WebFrame _getVisibleRect:]):
(-[WebFrame _computePageRectsWithPrintScaleFactor:pageSize:]):
* WebView/WebView.mm:
(-[WebView _dashboardRegions]):
(-[WebView trackedRepaintRects]):
2012-03-16 Brady Eidson <beidson@apple.com>
<rdar://problem/11027997> and https://bugs.webkit.org/show_bug.cgi?id=81412
REGRESSION (r107435) Copy a link and paste to Mail: Nothing is pasted
Reviewed by Geoff Garen.
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::setInsertionPasteboard):
* WebCoreSupport/WebPlatformStrategies.h:
(WebPlatformStrategies):
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::url):
2012-03-08 Jer Noble <jer.noble@apple.com>
Support W3C Full Screen API proposal
https://bugs.webkit.org/show_bug.cgi?id=80660
Reviewed by Alexey Proskuryakov.
Allow full screen elements to access the keyboard.
* WebView/WebView.mm:
(-[WebView _supportsFullScreenForElement:WebCore::withKeyboard:]):
2012-03-07 Jon Lee <jonlee@apple.com>
Move NotificationContents into Notification
https://bugs.webkit.org/show_bug.cgi?id=80487
<rdar://problem/10965519>
Reviewed by Jian Li.
* WebView/WebNotification.mm: Refactor to use accessor methods on Notification.
(-[WebNotification title]):
(-[WebNotification body]):
2012-03-15 David Hyatt <hyatt@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=81258
Add a preference for enabling the new multi-column layout code that will be based on regions.
Reviewed by Beth Dakin.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences setRegionBasedColumnsEnabled:]):
(-[WebPreferences regionBasedColumnsEnabled]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2012-03-15 Brady Eidson <beidson@apple.com>
<rdar://problem/11036900> and https://bugs.webkit.org/show_bug.cgi?id=81079
REGRESSION(r107844): Clipboard API only remembers most recent data set on clipboard
Reviewed by Sam Weinig.
Add the non-destructive "addTypes" to supplement the destructive "setTypes"
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::addTypes):
2012-03-14 Anders Carlsson <andersca@apple.com>
java/java-and-plugins.html test failing
https://bugs.webkit.org/show_bug.cgi?id=81188
<rdar://problem/11048657>
Reviewed by Sam Weinig.
When we're marshaling JSObjects that wrap plug-in objects, make sure to check that the
current plug-in instance is the same as the plug-in instance the object came from and don't
pass the unwrapped object ID if that is the case.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::getObjectID):
(WebKit::NetscapePluginInstanceProxy::addValueToArray):
(WebKit::NetscapePluginInstanceProxy::marshalValues):
* Plugins/Hosted/ProxyInstance.h:
(ProxyInstance):
(WebKit::ProxyInstance::instanceProxy):
2012-03-14 Michael Saboff <msaboff@apple.com>
REGRESSION(r110383): ASSERTION failures in JSCell::finishCreation causing multiple tests to "crash" on the Lion Intel Debug Bots
https://bugs.webkit.org/show_bug.cgi?id=80993
Reviewed by Mark Rowe.
Moved $(BUILT_PRODUCTS_DIR)/usr/local/include to the front of HEADER_SEARCH_PATH
to fix builds given the wtf move.
* Configurations/WebKit.xcconfig:
2012-03-13 Jon Lee <jonlee@apple.com>
Separate NOTIFICATIONS and LEGACY_NOTIFICATIONS
https://bugs.webkit.org/show_bug.cgi?id=80922
<rdar://problem/11035082>
Reviewed by Jian Li.
You can include either NOTIFICATIONS or LEGACY_NOTIFICATIONS and have a complete API.
LEGACY_NOTIFICATIONS should cover all of the previous functionality, and NOTIFICATIONS will cover the
new API. Therefore, APIs that are common between the two will have:
#if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS)
This patch initially sets both to be exactly the same. As other bugs with patches begin to migrate to
the new API, the defines will begin to split. This allows ports to decide which set of APIs to include.
Update everything to be #if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS)
* WebCoreSupport/WebNotificationClient.h:
* WebCoreSupport/WebNotificationClient.mm:
(WebNotificationClient::show):
(WebNotificationClient::cancel):
(WebNotificationClient::clearNotifications):
(WebNotificationClient::notificationObjectDestroyed):
(WebNotificationClient::notificationControllerDestroyed):
(WebNotificationClient::requestPermission):
(WebNotificationClient::checkPermission):
* WebView/WebNotification.mm:
(-[WebNotification title]):
(-[WebNotification body]):
(-[WebNotification replaceID]):
(-[WebNotification origin]):
(-[WebNotification notificationID]):
(-[WebNotification dispatchShowEvent]):
(-[WebNotification dispatchCloseEvent]):
(-[WebNotification dispatchClickEvent]):
(-[WebNotification dispatchErrorEvent]):
* WebView/WebNotificationInternal.h:
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
2012-03-13 Adam Barth <abarth@webkit.org> && Benjamin Poulain <bpoulain@apple.com>
Always enable ENABLE(CLIENT_BASED_GEOLOCATION)
https://bugs.webkit.org/show_bug.cgi?id=78853
Reviewed by Adam Barth.
* Configurations/FeatureDefines.xcconfig:
* WebCoreSupport/WebChromeClient.h:
(WebChromeClient):
* WebCoreSupport/WebGeolocationClient.mm:
(WebGeolocationClient::lastPosition):
* WebView/WebGeolocationPosition.mm:
(-[WebGeolocationPositionInternal initWithCoreGeolocationPosition:]):
(core):
(-[WebGeolocationPosition initWithTimestamp:latitude:longitude:accuracy:]):
* WebView/WebGeolocationPositionInternal.h:
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView _geolocationDidChangePosition:]):
(-[WebView _geolocationDidFailWithError:]):
2012-03-12 Antonio Gomes <agomes@rim.com>
Convert nodesFromRect tests to use Internals interface
https://bugs.webkit.org/show_bug.cgi?id=80886
Reviewed by Ryosuke Niwa.
Removed mac specific support for nodesFromRect for testing purposes only,
since it can work in a cross-port way through the Internals interface.
* WebKit.order:
* WebView/WebView.mm:
* WebView/WebViewPrivate.h:
2012-03-13 Anders Carlsson <andersca@apple.com>
Remove a nonexistent WebUIDelegate method from WebUIDelegatePrivate.h
https://bugs.webkit.org/show_bug.cgi?id=81014
Reviewed by Sam Weinig.
Remove a plug-in halter related WebUIDelegate method.
* WebView/WebUIDelegatePrivate.h:
2012-03-13 Shinya Kawanaka <shinyak@chromium.org>
REGRESSION: Spellcheck tests hit assertions on Mac.
https://bugs.webkit.org/show_bug.cgi?id=80883
Reviewed by Ryosuke Niwa.
The bug was caused by the closure object created in requestCheckingOfString accessing
request's member variables even though the request object is not an NSObject or allocated
in stack. This resulted in the closure not being able to access those variables when invoked.
Fixed the bug by making local copies of those member variables.
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::requestCheckingOfString):
2012-03-11 Timothy Hatcher <timothy@apple.com>
Update how the Web Inspector resources are loaded.
https://bugs.webkit.org/show_bug.cgi?id=80798
rdar://problem/10359959
Reviewed by Brian Weinstein.
* WebCoreSupport/WebInspectorClient.mm:
(useWebKitWebInspector): Return if we are using the WebCore resources for compatibility
with local and nightly builds.
(WebInspectorFrontendClient::localizedStringsURL): Decide what path to use.
(-[WebInspectorWindowController init]): Ditto.
(-[WebInspectorWindowController window]): Decide if the window is textured or not.
2012-03-09 Jon Lee <jonlee@apple.com>
Rename NotificationPresenter to NotificationClient
https://bugs.webkit.org/show_bug.cgi?id=80488
<rdar://problem/10965558>
Reviewed by Kentaro Hara.
Refactor to use renamed WebCore::NotificationClient.
* WebCoreSupport/WebNotificationClient.h:
* WebCoreSupport/WebNotificationClient.mm:
(WebNotificationClient::checkPermission):
* WebView/WebViewPrivate.h:
2012-03-09 Enrica Casucci <enrica@apple.com>
Move WebNSURLExtras code down to WebCore.
https://bugs.webkit.org/show_bug.cgi?id=80611
Reviewed by Alexey Proskuryakov.
Changed the implementation to use newly moved WebCore functions.
* Misc/WebKitNSStringExtras.mm:
(-[NSString _webkit_hasCaseInsensitivePrefix:]):
* Misc/WebNSURLExtras.mm:
(+[NSURL _web_URLWithUserTypedString:]):
(+[NSURL _web_URLWithDataAsString:relativeToURL:]):
(+[NSURL _web_URLWithData:]):
(+[NSURL _web_URLWithData:relativeToURL:]):
(-[NSURL _web_originalData]):
(-[NSURL _web_originalDataAsString]):
(-[NSURL _web_userVisibleString]):
(-[NSURL _web_isEmpty]):
(-[NSURL _web_URLCString]):
(-[NSURL _web_URLByTruncatingOneCharacterBeforeComponent:]):
(-[NSURL _webkit_URLByRemovingFragment]):
(-[NSURL _webkit_URLByRemovingResourceSpecifier]):
(-[NSURL _web_URLByRemovingUserInfo]):
(-[NSURL _web_dataForURLComponentType:]):
(-[NSURL _web_schemeData]):
(-[NSURL _web_hostData]):
(-[NSString _web_isUserVisibleURL]):
(-[NSString _web_hostNameNeedsDecodingWithRange:]):
(-[NSString _web_hostNameNeedsEncodingWithRange:]):
(-[NSString _web_decodeHostNameWithRange:]):
(-[NSString _web_encodeHostNameWithRange:]):
(-[NSString _web_decodeHostName]):
(-[NSString _web_encodeHostName]):
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2012-03-09 Emil A Eklund <eae@chromium.org>
Add roundedPoint to HitTestResult and change platform code to use it
https://bugs.webkit.org/show_bug.cgi?id=80715
Reviewed by James Robinson.
Change ports to use roundedPoint to avoid exposing subpixel types to
platform code.
* WebCoreSupport/WebContextMenuClient.mm:
(WebContextMenuClient::showContextMenu):
2012-03-09 Jon Lee <jonlee@apple.com>
Add support for ENABLE(LEGACY_NOTIFICATIONS)
https://bugs.webkit.org/show_bug.cgi?id=80497
Reviewed by Adam Barth.
Prep for b80472: Update API for Web Notifications
* Configurations/FeatureDefines.xcconfig:
2012-03-08 Ryosuke Niwa <rniwa@webkit.org>
Mac build fix for micro data API.
* Configurations/FeatureDefines.xcconfig:
2012-03-08 Jer Noble <jer.noble@apple.com>
Unreviewed Snow Leopard build fix.
On Leopard and Snow Leopard, provide an implementation for -[NSWindow convertRectToScreen:].
* WebView/WebFullScreenController.mm:
(-[NSWindow convertRectToScreen:]):
2012-02-20 Jer Noble <jer.noble@apple.com>
Full Screen Refactor Part 4: Animate into Full Screen mode using new animation classes, WebKit edition.
https://bugs.webkit.org/show_bug.cgi?id=78930
Reviewed by Anders Carlsson.
Revise WebFullScreenController to have the same general functionality and code path as WKFullScreenWindowController
in WebKit2. As such, the following functions are copies of their equivalents in WKFullScreenWindowController:
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController init]):
(-[WebFullScreenController dealloc]):
(-[WebFullScreenController windowDidLoad]):
(-[WebFullScreenController cancelOperation:]):
(-[WebFullScreenController applicationDidResignActive:]):
(-[WebFullScreenController applicationDidChangeScreenParameters:]):
(-[WebFullScreenController finishedEnterFullScreenAnimation:]):
(-[WebFullScreenController finishedExitFullScreenAnimation:]):
(-[WebFullScreenController close]):
(-[WebFullScreenController animationDidEnd:]):
(-[WebFullScreenController _updateMenuAndDockForFullScreen]):
(-[WebFullScreenController _swapView:with:]):
(createBackgroundFullscreenWindow):
(windowFrameFromApparentFrames):
(-[WebFullScreenController _startEnterFullScreenAnimationWithDuration:]):
(-[WebFullScreenController _startExitFullScreenAnimationWithDuration:]):
The following is a copy of the equivalent function in WebFullScreenManager:
* WebView/WebFullScreenController.mm:
(screenRectOfContents):
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::fullScreenRendererChanged): No longer tell the WebView the renderer changed (as it doesn't care.)
* WebView/WebFullScreenController.h:
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController setElement:]): No need to add event listeners to the media element.
(-[WebFullScreenController enterFullScreen:]): Same as WKFullScreenWindowController, but not asynchronous.
(-[WebFullScreenController exitFullScreen]): Ditto.
* WebView/WebView.mm:
(-[WebView _enterFullScreenForElement:WebCore::]): Fullscreen -> FullScreen.
(-[WebView _exitFullScreenForElement:WebCore::]): Ditto.
2012-03-08 Matt Lilek <mrl@apple.com>
Don't enable VIDEO_TRACK on all OS X platforms
https://bugs.webkit.org/show_bug.cgi?id=80635
Reviewed by Eric Carlson.
* Configurations/FeatureDefines.xcconfig:
2012-03-07 Joseph Pecoraro <pecoraro@apple.com>
<http://webkit.org/b/80510> Web Inspector crash (iCab)
Reviewed by Timothy Hatcher.
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorClient::didResizeMainFrame):
2012-03-06 Benjamin Poulain <bpoulain@apple.com>
[Mac] Update the configuration files for iOS
https://bugs.webkit.org/show_bug.cgi?id=80435
Reviewed by David Kilzer.
* Configurations/WebKit.xcconfig:
2012-03-06 Eric Seidel <eric@webkit.org>
Make WTF public headers use fully-qualified include paths and remove ForwardingHeaders/wtf
https://bugs.webkit.org/show_bug.cgi?id=80363
Reviewed by Mark Rowe.
ForwardingHeaders/wtf is no longer necessary (or functional) now that JavaScriptCore
no longer includes the WTF headers as private headers.
* ForwardingHeaders/wtf/ASCIICType.h: Removed.
* ForwardingHeaders/wtf/AlwaysInline.h: Removed.
* ForwardingHeaders/wtf/Assertions.h: Removed.
* ForwardingHeaders/wtf/Deque.h: Removed.
* ForwardingHeaders/wtf/DisallowCType.h: Removed.
* ForwardingHeaders/wtf/FastMalloc.h: Removed.
* ForwardingHeaders/wtf/Forward.h: Removed.
* ForwardingHeaders/wtf/GetPtr.h: Removed.
* ForwardingHeaders/wtf/HashCountedSet.h: Removed.
* ForwardingHeaders/wtf/HashMap.h: Removed.
* ForwardingHeaders/wtf/HashSet.h: Removed.
* ForwardingHeaders/wtf/HashTraits.h: Removed.
* ForwardingHeaders/wtf/ListHashSet.h: Removed.
* ForwardingHeaders/wtf/ListRefPtr.h: Removed.
* ForwardingHeaders/wtf/Locker.h: Removed.
* ForwardingHeaders/wtf/MathExtras.h: Removed.
* ForwardingHeaders/wtf/Noncopyable.h: Removed.
* ForwardingHeaders/wtf/OwnArrayPtr.h: Removed.
* ForwardingHeaders/wtf/OwnPtr.h: Removed.
* ForwardingHeaders/wtf/OwnPtrCommon.h: Removed.
* ForwardingHeaders/wtf/PassOwnPtr.h: Removed.
* ForwardingHeaders/wtf/PassRefPtr.h: Removed.
* ForwardingHeaders/wtf/Platform.h: Removed.
* ForwardingHeaders/wtf/RefCounted.h: Removed.
* ForwardingHeaders/wtf/RefCountedLeakCounter.h: Removed.
* ForwardingHeaders/wtf/RefPtr.h: Removed.
* ForwardingHeaders/wtf/RetainPtr.h: Removed.
* ForwardingHeaders/wtf/StdLibExtras.h: Removed.
* ForwardingHeaders/wtf/TemporaryChange.h: Removed.
* ForwardingHeaders/wtf/Threading.h: Removed.
* ForwardingHeaders/wtf/UnusedParam.h: Removed.
* ForwardingHeaders/wtf/VMTags.h: Removed.
* ForwardingHeaders/wtf/ValueCheck.h: Removed.
* ForwardingHeaders/wtf/Vector.h: Removed.
* ForwardingHeaders/wtf/VectorTraits.h: Removed.
* ForwardingHeaders/wtf/unicode/Unicode.h: Removed.
* ForwardingHeaders/wtf/unicode/icu/UnicodeIcu.h: Removed.
2012-03-05 Joseph Pecoraro <pecoraro@apple.com>
Web Inspector: Hide dock button when not allowed to dock
https://bugs.webkit.org/show_bug.cgi?id=78575
Reviewed by Pavel Feldman.
* WebCoreSupport/WebInspectorClient.h:
(WebCore):
(WebInspectorClient):
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorClient::didResizeMainFrame):
2012-03-05 Gavin Barraclough <barraclough@apple.com>
putByIndex should throw in strict mode
https://bugs.webkit.org/show_bug.cgi?id=80335
Reviewed by Filip Pizlo.
Make the MethodTable PutByIndex trap take a boolean 'shouldThrow' parameter.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::setProperty):
2012-03-05 Joseph Pecoraro <pecoraro@apple.com>
Unreviewed rollout of r109858 for restructuring.
2012-03-05 Joseph Pecoraro <pecoraro@apple.com>
<http://webkit.org/b/78575> Web Inspector: Hide dock button when not allowed to dock
Reviewed by Timothy Hatcher.
* WebCoreSupport/WebInspectorClient.h:
(WebInspectorClient):
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorClient::updateDockingAvailability):
2012-03-02 Jon Lee <jonlee@apple.com>
Add support for notification replaceId in Mac WebKit and WK2
https://bugs.webkit.org/show_bug.cgi?id=80206
<rdar://problem/10965574>
Reviewed by Sam Weinig.
* WebView/WebNotification.h: Add replaceID method.
* WebView/WebNotification.mm:
(-[WebNotification replaceID]):
2012-03-05 Adam Barth <abarth@webkit.org>
Geolocation should use a ScriptExecutionContext as its context object
https://bugs.webkit.org/show_bug.cgi?id=80248
Reviewed by Kentaro Hara.
* WebView/WebFrame.mm:
(-[WebFrame _cacheabilityDictionary]):
- We no longer special-case Geolocation.
2012-03-03 Benjamin Poulain <benjamin@webkit.org>
Remove the redundant method KURL::protocolInHTTPFamily()
https://bugs.webkit.org/show_bug.cgi?id=80216
Reviewed by Anders Carlsson.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::createPlugin):
2012-03-03 Hans Wennborg <hans@chromium.org>
Implement Speech JavaScript API
https://bugs.webkit.org/show_bug.cgi?id=80019
Reviewed by Adam Barth.
Add ENABLE_SCRIPTED_SPEECH.
* Configurations/FeatureDefines.xcconfig:
2012-03-03 Anders Carlsson <andersca@apple.com>
Fix build with newer versions of clang.
* Panels/WebAuthenticationPanel.m:
(-[WebAuthenticationPanel setUpForChallenge:]):
Use %ld and cast to long.
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView getVariable:value:]):
Cast the switch parameter to unsigned to prevent warnings about case values not being part of the enum type.
2012-03-01 Nikolas Zimmermann <nzimmermann@rim.com>
Unreviewed, rolling out r109255.
http://trac.webkit.org/changeset/109255
https://bugs.webkit.org/show_bug.cgi?id=79932
Breaks rounded rects with dashed strokes in SVG
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2012-02-29 Adam Barth <abarth@webkit.org>
ScriptExecutionContext has too many ifdef ENABLE(SQL_DATABASE)
https://bugs.webkit.org/show_bug.cgi?id=79633
Reviewed by Eric Seidel.
* WebView/WebFrame.mm:
(-[WebFrame _cacheabilityDictionary]):
2012-02-29 Tim Horton <timothy_horton@apple.com>
Make use of CG rounded-rect primitives
https://bugs.webkit.org/show_bug.cgi?id=79932
<rdar://problem/9274953>
Reviewed by Simon Fraser.
Add wkCGPathAddRoundedRect.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2012-02-29 Enrica Casucci <enrica@apple.com>
Crash at -[WebFrame(WebInternal) _setTypingStyle:withUndoAction:]
https://bugs.webkit.org/show_bug.cgi?id=79937
<rdar://problem/10942936>
Reviewed by Dan Bernstein.
* WebView/WebFrame.mm:
(-[WebFrame _setTypingStyle:withUndoAction:]): Adding a null check.
2012-02-28 Simon Fraser <simon.fraser@apple.com>
Update WebKitSystemInterface.
Reviewed by Sam Weinig.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2012-02-28 Enrica Casucci <enrica@apple.com>
More Pasteboard code cleanup.
https://bugs.webkit.org/show_bug.cgi?id=79816
Removing the last references to NSPasteboard.
Reviewed by Alexey Proskuryakov.
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::setInsertionPasteboard):
2012-02-26 Hajime Morrita <morrita@chromium.org>
Move ChromeClient::showContextMenu() to ContextMenuClient
https://bugs.webkit.org/show_bug.cgi?id=79427
Reviewed by Adam Barth.
* WebCoreSupport/WebContextMenuClient.h:
(WebContextMenuClient):
* WebCoreSupport/WebContextMenuClient.mm:
(WebContextMenuClient::showContextMenu): Moved from WebChromeClient
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
2012-02-25 Sam Weinig <sam@webkit.org>
QuickLook events don't make it to WebKit plugins.
<rdar://problem/10931721>
Reviewed by Anders Carlsson.
* WebView/WebHTMLView.mm:
(isQuickLookEvent):
(-[WebHTMLView hitTest:]):
Allow QuickLook events to hit test down to subviews.
2012-02-24 Brady Eidson <beidson@apple.com>
<rdar://problem/10805709> and https://bugs.webkit.org/show_bug.cgi?id=79421
Need a WK1 Mac API to filter which subframes go into WebArchives as they are created
Reviewed by Sam Weinig (with additional comments by Adam Roben)
Add webArchiveByFilteringSubframes: which takes a callback block:
* DOM/WebDOMOperationsPrivate.h:
Add FrameFilter that adapts the block, and use it to implement the new SPI:
* DOM/WebDOMOperations.mm:
(WebFrameFilter):
(WebFrameFilter::WebFrameFilter):
(WebFrameFilter::~WebFrameFilter):
(WebFrameFilter::shouldIncludeSubframe):
(-[DOMNode webArchiveByFilteringSubframes:]):
2012-02-24 Shinya Kawanaka <shinyak@chromium.org>
SpellCheckRequest needs to know the context where the spellcheck happened.
https://bugs.webkit.org/show_bug.cgi?id=79320
Reviewed by Hajime Morita.
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::requestCheckingOfString):
2012-02-23 Andy Estes <aestes@apple.com>
Rename [setS|s]uppressIncrementalRendering to [setS|s]uppressesIncrementalRendering and make it WebPreferences API.
https://bugs.webkit.org/show_bug.cgi?id=79433
Reviewed by Dan Bernstein.
* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController init]):
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences setSuppressesIncrementalRendering:]):
(-[WebPreferences suppressesIncrementalRendering]):
(-[WebPreferences setSuppressIncrementalRendering:]):
(-[WebPreferences suppressIncrementalRendering]):
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2012-02-22 Hajime Morrita <morrita@chromium.org>
NOTIFICATIONS should be implemented as PageSupplement
https://bugs.webkit.org/show_bug.cgi?id=79052
Reviewed by Adam Barth.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
2012-02-21 Ryosuke Niwa <rniwa@webkit.org>
Remove the remaining uses of CSSStyleDeclaration in Editor
https://bugs.webkit.org/show_bug.cgi?id=78939
Reviewed by Enrica Casucci.
* WebCoreSupport/WebEditorClient.h:
(WebEditorClient):
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::shouldApplyStyle):
* WebView/WebFrame.mm:
(-[WebFrame _setTypingStyle:withUndoAction:]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView _applyStyleToSelection:withUndoAction:]):
(-[WebHTMLView _changeCSSColorUsingSelector:inRange:]):
* WebView/WebView.mm:
(-[WebView applyStyle:]):
2012-02-22 Ryosuke Niwa <rniwa@webkit.org>
Remove the remaining uses of CSSStyleDeclaration in Editor
https://bugs.webkit.org/show_bug.cgi?id=78939
Reviewed by Enrica Casucci.
* WebCoreSupport/WebEditorClient.h:
(WebEditorClient):
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::shouldApplyStyle):
* WebView/WebFrame.mm:
(-[WebFrame _setTypingStyle:withUndoAction:]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView _applyStyleToSelection:withUndoAction:]):
(-[WebHTMLView _changeCSSColorUsingSelector:inRange:]):
* WebView/WebView.mm:
(-[WebView applyStyle:]):
2012-02-22 Jon Lee <jonlee@apple.com>
Part of r108409 was incorrect, and incorporated an older version of a sub-patch.
This is the actual sub-patch that should have been submitted.
* WebCoreSupport/WebNotificationClient.h:
* WebCoreSupport/WebNotificationClient.mm:
(WebNotificationClient::show):
(WebNotificationClient::cancel):
(WebNotificationClient::clearNotifications):
(WebNotificationClient::notificationObjectDestroyed):
(WebNotificationClient::notificationControllerDestroyed):
2012-02-21 Jon Lee <jonlee@apple.com>
Build fix. Push ENABLE_NOTIFICATIONS into .mm file.
* WebCoreSupport/WebNotificationClient.h:
* WebView/WebNotification.h:
* WebView/WebNotification.mm:
(-[WebNotification title]):
(-[WebNotification body]):
(-[WebNotification origin]):
(-[WebNotification notificationID]):
(-[WebNotification dispatchShowEvent]):
(-[WebNotification dispatchCloseEvent]):
(-[WebNotification dispatchClickEvent]):
(-[WebNotification dispatchErrorEvent]):
2012-02-21 John Sullivan <sullivan@apple.com>
Build fix.
* WebView/WebUIDelegatePrivate.h:
Added @class declarations for DOMNode and DOMElement.
2012-02-21 Jon Lee <jonlee@apple.com>
Build fix for r108409.
* WebCoreSupport/WebNotificationClient.h:
(WebCore):
* WebCoreSupport/WebNotificationClient.mm:
* WebView/WebNotification.h:
(WebSecurityOrigin):
* WebView/WebNotification.mm:
(core):
(-[WebNotification initWithCoreNotification:notificationID:]):
2012-02-21 Jon Lee <jonlee@apple.com>
Bring notifications support to WK1 mac: permission requests
https://bugs.webkit.org/show_bug.cgi?id=78783
<rdar://problem/10610578>
Reviewed by Anders Carlsson.
* WebCoreSupport/WebNotificationClient.h:
* WebCoreSupport/WebNotificationClient.mm: Create policy listener, which conforms to the
WebAllowDenyPolicyListener protocol, similar to geolocation.
(WebNotificationClient::requestPermission):
(WebNotificationClient::checkPermission):
(-[WebNotificationPolicyListener initWithCallback:]):
(-[WebNotificationPolicyListener allow]): Call the callback.
(-[WebNotificationPolicyListener deny]): Call the callback.
* WebView/WebUIDelegatePrivate.h: Define new UI delegate method to ask the user to decide a
policy for navigations.
====
Bring notifications support to WK1 mac: showing, canceling, removing notifications
Create a WebKit wrapper object for WebCore::Notification, which also keeps track of an assigned
ID.
* WebView/WebNotification.h: Added.
(WebSecurityOrigin):
* WebView/WebNotification.mm: Added.
(core):
(-[WebNotification initWithCoreNotification:notificationID:]):
(-[WebNotification init]):
(-[WebNotification dealloc]):
(-[WebNotification title]):
(-[WebNotification body]):
(-[WebNotification origin]):
(-[WebNotification notificationID]):
(-[WebNotification dispatchShowEvent]):
(-[WebNotification dispatchCloseEvent]):
(-[WebNotification dispatchClickEvent]):
(-[WebNotification dispatchErrorEvent]):
* WebView/WebNotificationInternal.h: Added.
(WebCore): Internal category to allow creating instances with WebCore objects.
Extend WebView to include a WebNotificationProvider, which clients implement.
* WebView/WebViewData.h: Add a private member for the provider.
* WebView/WebViewPrivate.h:
* Define an enum WebNotificationPermission that mirrors WebCore::NotificationPresenter::Permission
that client which implement the provider can use to return policy decisions.
* Define WebNotificationProvider.
* Category WebViewNotification extends WebView with methods that set and manager the
notification provider, and handle events from the platform notifications.
* WebView/WebView.mm:
(-[WebView _setNotificationProvider:]): Sets the provider when initializing the WebView.
(-[WebView _notificationControllerDestroyed]):
(-[WebView _notificationProvider]):
(-[WebView _notificationDidShow:]):
(-[WebView _notificationDidClick:]):
(-[WebView _notificationsDidClose:]):
* WebCoreSupport/WebNotificationClient.h: Add variables that map between WebCore::Notification
instances, their assigned IDs, their contexts, and corresponding WebKit wrapper objects.
* WebCoreSupport/WebNotificationClient.mm:
(generateNotificationID): Created unique IDs for each shown notification.
(WebNotificationClient::show): Create wrapper object for notification, assign ID, cache the
mappings between the objects, and forward it to the provider.
(WebNotificationClient::cancel):
(WebNotificationClient::clearNotifications): Clear all notifications associated with the
provided context.
(WebNotificationClient::notificationObjectDestroyed): Remove the notification from the maps.
(WebNotificationClient::notificationControllerDestroyed): If the controller is destroyed, tell
the provider to clear of the notifications related to this web view.
====
(Prep work for) Bring notifications support to WK1 mac
Rename WebGeolocationPolicyListener. The interface is generic enough to be reused for
notification requests. To avoid having to create a new listener type, instead rename it
to WebAllowDenyPolicyListener.
* WebView/WebUIDelegatePrivate.h: Rename the protocol.
* WebCoreSupport/WebGeolocationClient.mm: Refactor geolocation request listener to use
new name.
Add preference to keep track of whether notifications are enabled in general.
* WebView/WebPreferenceKeysPrivate.h: Add WebNotificationsEnabledKey for storing the
preference.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]): By default have them enabled.
(-[WebPreferences setNotificationsEnabled:]):
(-[WebPreferences notificationsEnabled]):
* WebView/WebPreferencesPrivate.h:
Add a stringValue method that exposes WebCore::SecurityOrigin::toString() for storing the
notification policy for a given origin.
* WebCoreSupport/WebSecurityOrigin.mm:
(-[WebSecurityOrigin stringValue]):
* WebCoreSupport/WebSecurityOriginPrivate.h:
2012-02-21 Sam Weinig <sam@webkit.org>
Attempt to fix the Snow Leopard build.
* Configurations/Base.xcconfig:
2012-02-21 Sam Weinig <sam@webkit.org>
Use libc++ when building with Clang on Mac
https://bugs.webkit.org/show_bug.cgi?id=78981
Reviewed by Dan Bernstein.
* Configurations/Base.xcconfig:
2012-02-17 Mihnea Ovidenie <mihnea@adobe.com>
CSS regions enabled by default
https://bugs.webkit.org/show_bug.cgi?id=78525
Reviewed by David Hyatt.
Add a runtime preference to enable/disable regions functionality at runtime(WebKitCSSRegionsEnabled).
CSSRegions are still enabled by default.
In DRT, use layoutTestController.overridePreference("WebKitCSSRegionsEnabled", "0") to disable the css regions functionality.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences cssRegionsEnabled]):
(-[WebPreferences setCSSRegionsEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2012-02-17 Enrica Casucci <enrica@apple.com>
Refactor DragData class to use PlatformStrategies in the Mac implementation.
https://bugs.webkit.org/show_bug.cgi?id=78768
Reviewed by Darin Adler.
* WebCoreSupport/WebPlatformStrategies.h: Added color() method.
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::color):
2012-02-16 Brady Eidson <beidson@apple.com>
<rdar://problem/10616280> and https://bugs.webkit.org/show_bug.cgi?id=78767
REGRESSION (r90471) - iAd Producer 2.0.1 produces blank pages
Reviewed by Sam Weinig.
* WebView/WebView.mm:
(-[WebView _needsIsLoadingInAPISenseQuirk]):
(-[WebView _preferencesChanged:]):
2012-02-15 Enrica Casucci <enrica@apple.com>
Refactor ClipboardMac class to use PlatformStrategies.
https://bugs.webkit.org/show_bug.cgi?id=78554
Reviewed by Anders Carlsson.
* WebCoreSupport/WebDragClient.h: Changed methods signature to use name based pasteboard.
* WebCoreSupport/WebDragClient.mm: Ditto.
(WebDragClient::willPerformDragSourceAction):
(WebDragClient::startDrag):
(WebDragClient::declareAndWriteDragImage):
* WebCoreSupport/WebPlatformStrategies.h: Added new methods.
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::changeCount):
(WebPlatformStrategies::uniqueName):
2012-02-15 Sadrul Habib Chowdhury <sadrul@chromium.org>
Notify ChromeClient when touch-event handlers are installed/removed.
https://bugs.webkit.org/show_bug.cgi?id=77440
Reviewed by Darin Fisher and Ryosuke Niwa.
* WebCoreSupport/WebChromeClient.h:
2012-02-14 Matt Lilek <mrl@apple.com>
Don't ENABLE_DASHBOARD_SUPPORT unconditionally on all Mac platforms
https://bugs.webkit.org/show_bug.cgi?id=78629
Reviewed by David Kilzer.
* Configurations/FeatureDefines.xcconfig:
2012-02-14 Alexey Proskuryakov <ap@apple.com>
[Mac][Win][WK2] Switch to RFC 6455 protocol for WebSockets
https://bugs.webkit.org/show_bug.cgi?id=78541
<rdar://problem/10036695>
Reviewed by Kent Tamura.
* WebView/WebPreferences.mm: (+[WebPreferences initialize]): Changed default value of the
preference.
2012-02-11 Nikolas Zimmermann <nzimmermann@rim.com>
Convert svg/animations to use SMIL methods for driving the timeline
https://bugs.webkit.org/show_bug.cgi?id=78422
Reviewed by Dirk Schulze.
Remove SVG animation sampling functionality provided for DRT, which no longer uses it.
Instead we switched the svg/animations tests to use SVGSVGElement.setCurrentTime.
* WebKit.order:
* WebView/WebFrame.mm:
* WebView/WebFramePrivate.h:
2012-02-13 Enrica Casucci <enrica@apple.com>
Refactor Mac platform implementation of the Pasteboard class to use Platform Strategies.
https://bugs.webkit.org/show_bug.cgi?id=78282
This patch removes any accesss to the NSPasteboard object from the Pasteboard class which
now makes use of a new pasteboardStrategy object that is implemented both in WebKit and
WebKit2. The actual access to NSPasteboard is now performed inside the PlatformPasteboard
class. Currently both WebKit and WebKit2 use the same implementation of the PasteboardStrategy
interface but this one more step in the direction of removing access to NSPasteboard from
the WebProcess.
As part of the refactoring the I've reduced to a minimum the use of OBJ-C classes.
Reviewed by Anders Carlsson.
* WebCoreSupport/WebPlatformStrategies.h: Added PasteboardStrategy.
* WebCoreSupport/WebPlatformStrategies.mm: Added implementation of PasteboardStrategy interface.
(WebPlatformStrategies::createPasteboardStrategy):
(WebPlatformStrategies::getTypes):
(WebPlatformStrategies::bufferForType):
(WebPlatformStrategies::getPathnamesForType):
(WebPlatformStrategies::stringForType):
(WebPlatformStrategies::copy):
(WebPlatformStrategies::setTypes):
(WebPlatformStrategies::setBufferForType):
(WebPlatformStrategies::setPathnamesForType):
(WebPlatformStrategies::setStringForType):
2012-02-12 Hajime Morrita <morrita@chromium.org>
Page should have less intrusive way to associate API implementation objects.
https://bugs.webkit.org/show_bug.cgi?id=78085
Reviewed by Adam Barth.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
2012-02-11 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r107435.
http://trac.webkit.org/changeset/107435
https://bugs.webkit.org/show_bug.cgi?id=78410
It broke the Qt build (Requested by Ossy on #webkit).
* WebCoreSupport/WebPlatformStrategies.h:
(WebPlatformStrategies):
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::addVisitedLink):
2012-02-10 Adam Klein <adamk@chromium.org>
Enable MUTATION_OBSERVERS by default on all platforms
https://bugs.webkit.org/show_bug.cgi?id=78196
Reviewed by Ojan Vafai.
* Configurations/FeatureDefines.xcconfig:
2012-02-10 Enrica Casucci <enrica@apple.com>
Refactor Mac platform implementation of the Pasteboard class to use Platform Strategies.
https://bugs.webkit.org/show_bug.cgi?id=78282
This patch removes any accesss to the NSPasteboard object from the Pasteboard class which
now makes use of a new pasteboardStrategy object that is implemented both in WebKit and
WebKit2. The actual access to NSPasteboard is now performed inside the PlatformPasteboard
class. Currently both WebKit and WebKit2 use the same implementation of the PasteboardStrategy
interface but this one more step in the direction of removing access to NSPasteboard from
the WebProcess.
As part of the refactoring the I've reduced to a minimum the use of OBJ-C classes.
Reviewed by Anders Carlsson.
* WebCoreSupport/WebPlatformStrategies.h: Added PasteboardStrategy.
* WebCoreSupport/WebPlatformStrategies.mm: Added implementation of PasteboardStrategy interface.
(WebPlatformStrategies::createPasteboardStrategy):
(WebPlatformStrategies::getTypes):
(WebPlatformStrategies::bufferForType):
(WebPlatformStrategies::getPathnamesForType):
(WebPlatformStrategies::stringForType):
(WebPlatformStrategies::copy):
(WebPlatformStrategies::setTypes):
(WebPlatformStrategies::setBufferForType):
(WebPlatformStrategies::setPathnamesForType):
(WebPlatformStrategies::setStringForType):
2012-02-10 Benjamin Poulain <bpoulain@apple.com>
[Mac] DYLIB_INSTALL_NAME_BASE should not be prefixed by the SDKROOT
https://bugs.webkit.org/show_bug.cgi?id=78320
Reviewed by Joseph Pecoraro.
<rdar://problem/10839750>
* Configurations/WebKit.xcconfig:
2012-02-09 Alexey Proskuryakov <ap@apple.com>
REGRESSION (r104885): Articles not displayed in Vienna RSS reader
https://bugs.webkit.org/show_bug.cgi?id=78280
<rdar://problem/10762545>
Reviewed by Oliver Hunt.
* Misc/WebNSURLExtras.h:
* Misc/WebNSURLExtras.mm: (-[NSURL _webkit_URLFromURLOrPath]):
Added a method to create a URL from a path, similarly to what KURL used to do.
* WebView/WebFrame.mm: (-[WebFrame loadData:MIMEType:textEncodingName:baseURL:]):
Use it in an API where a known regression occurred.
2012-02-07 Antti Koivisto <antti@apple.com>
REGRESSION (r106681): Null check missing in [WebFrame(WebInternal) _typingStyle]
https://bugs.webkit.org/show_bug.cgi?id=78080
Reviewed by Reviewed by Andreas Kling, Darin Adler and Dan Bernstein.
* WebView/WebFrame.mm:
(-[WebFrame _typingStyle]):
2012-02-07 Tony Chang <tony@chromium.org>
merge DashboardSupportCSSPropertyNames.in into CSSPropertyNames.in
https://bugs.webkit.org/show_bug.cgi?id=78036
Reviewed by Darin Adler.
* Configurations/FeatureDefines.xcconfig: Add ENABLE_DASHBOARD_SUPPORT to FEATURE_DEFINES.
2012-02-06 Anders Carlsson <andersca@apple.com>
Overlay scrollbars flash when window is simply activated
https://bugs.webkit.org/show_bug.cgi?id=77911
<rdar://problem/10211995>
Reviewed by Kenneth Russell.
* WebView/WebView.mm:
(-[WebView _windowWillOrderOnScreen:]):
(-[WebView _windowWillOrderOffScreen:]):
Call FocusController::setContainingWindowIsVisible.
2012-02-06 Matthew Delaney <mdelaney@apple.com>
toDataURL() uses stale data after putImageData()
https://bugs.webkit.org/show_bug.cgi?id=65767
Reviewed by Chris Marrin.
* WebCoreSupport/WebSystemInterface.mm:
2012-02-03 Antti Koivisto <antti@apple.com>
Rename CSSMutableStyleDeclaration.h/.cpp to StylePropertySet.h/.cpp
https://bugs.webkit.org/show_bug.cgi?id=77779
Reviewed by Darin Adler.
* WebView/WebHTMLView.mm:
2012-02-03 Antti Koivisto <antti@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=77740
Split CSSMutableStyleDeclaration into separate internal and CSSOM types
Reviewed by Andreas Kling and Darin Adler.
* WebView/WebFrame.mm:
(-[WebFrame _typingStyle]):
2012-02-03 Beth Dakin <bdakin@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=77691
Fix PlatformScreen layering violation and PlatformScreenMac's incorrect use
of device scale
Reviewed by Andy Estes.
toUserSpace() and toDeviceSpace() don't need to take device scale. Also
restore a comment that I needlessly removed.
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::setWindowRect):
(WebChromeClient::windowRect):
2012-02-01 Dan Bernstein <mitz@apple.com>
WebKit/mac part of <rdar://problem/10442663> Paginated display does not respect page-break-{before,after}
https://bugs.webkit.org/show_bug.cgi?id=77505
Reviewed by Darin Adler.
* WebView/WebView.mm:
(-[WebView _setPaginationBehavesLikeColumns:]): Added this setter.
(-[WebView _paginationBehavesLikeColumns]): Added this getter.
* WebView/WebViewPrivate.h:
2012-01-25 Eric Seidel <eric@webkit.org>
HTMLIsIndexElement should not expose HTMLInputElement properties
https://bugs.webkit.org/show_bug.cgi?id=76095
Reviewed by Adam Barth.
* MigrateHeaders.make:
2012-01-31 Pablo Flouret <pablof@motorola.com>
Fix compilation errors on build-webkit --debug --no-workers on mac.
https://bugs.webkit.org/show_bug.cgi?id=75869
Reviewed by Adam Barth.
* Workers/WebWorkersPrivate.mm:
(+[WebWorkersPrivate workerThreadCount]):
2012-01-30 Beth Dakin <bdakin@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=77263
PlatformScreenMac should not rely on NSWindow for important bits of data
Reviewed by Geoff Garen.
toUserSpace() and toDeviceSpace() now take a parameter for the
deviceScaleFactor.
* WebCoreSupport/WebChromeClient.mm:
(windowScaleFactor):
(WebChromeClient::setWindowRect):
(WebChromeClient::windowRect):
2012-01-25 Mark Rowe <mrowe@apple.com>
Build in to an alternate location when USE_STAGING_INSTALL_PATH is set.
<rdar://problem/10609417> Adopt USE_STAGING_INSTALL_PATH
Reviewed by David Kilzer.
* Configurations/WebKit.xcconfig: Define NORMAL_WEBKIT_FRAMEWORKS_DIR, which contains
the path where WebKit is normally installed. Update WEBKIT_FRAMEWORKS_DIR to point to
the staged frameworks directory when USE_STAGING_INSTALL_PATH is set. Define
NORMAL_PRODUCTION_FRAMEWORKS_DIR, which contains the path where our public frameworks
are normally installed. Update PRODUCTION_FRAMEWORKS_DIR to point to the staged frameworks
directory when USE_STAGING_INSTALL_PATH is set. Always set the framework's install name
based on the normal framework location. This prevents an incorrect install name from being
used when installing in to the staged frameworks directory. Look for our other frameworks
in the staged frameworks directory when USE_STAGING_INSTALL_PATH is set. Update
WEBCORE_PRIVATE_HEADERS_DIR to find WebCore at the top level of the staged frameworks
directory when USE_STAGING_INSTALL_PATH is set, rather than finding it embedded inside of
WebKit.framework.
2012-01-25 Eric Seidel <eric@webkit.org>
HTMLIsIndexElement should not expose HTMLInputElement properties
https://bugs.webkit.org/show_bug.cgi?id=76095
Reviewed by Adam Barth.
* MigrateHeaders.make:
2012-01-25 Hajime Morita <morrita@google.com>
ENABLE_SHADOW_DOM should be available via build-webkit --shadow-dom
https://bugs.webkit.org/show_bug.cgi?id=76863
Reviewed by Dimitri Glazkov.
Added a feature flag.
* Configurations/FeatureDefines.xcconfig:
2012-01-25 Enrica Casucci <enrica@apple.com>
WebView should implement typingAttributes methods to work correctly with the Inspector bar in Mail.
https://bugs.webkit.org/show_bug.cgi?id=76951
<rdar://problem/9325158>
Reviewed by Alexey Proskuryakov.
* WebView/WebHTMLView.mm: Removed typingAttributes implementation.
* WebView/WebView.mm:
(-[WebView typingAttributes]): Added.
2012-01-24 Enrica Casucci <enrica@apple.com>
WebHTMLView should implement typingAttributes methods to work correctly with the Inspector bar in Mail.
https://bugs.webkit.org/show_bug.cgi?id=76951
<rdar://problem/9325158>
The Inspector bar calls the typingAttributes methods on the clients that support it
to retrieve the set of attributes representing the style at the selection and uses
this information to update the state of the B, I and U buttons.
If this method is not supported, it defaults to the attributes of the previous
character position, reporting an incorrect state.
This occurs only when we have a caret selection.
Reviewed by Alexey Proskuryakov.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _styleForAttributeChange:]): Removed dead code.
(-[WebHTMLView _updateFontPanel]): Removed comment that doesn't apply anymore.
(-[WebHTMLView typingAttributes]): Added.
2012-01-24 Benjamin Poulain <bpoulain@apple.com>
pageCacheSupportsPlugins should default to true on WebKit1
https://bugs.webkit.org/show_bug.cgi?id=76891
Reviewed by Joseph Pecoraro.
The default was left out of r102619 by accident.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
2012-01-23 Geoffrey Garen <ggaren@apple.com>
JSValue::toString() should return a JSString* instead of a UString
https://bugs.webkit.org/show_bug.cgi?id=76861
Reviewed by Gavin Barraclough.
Mechanical changes to call value() after calling toString(), to
convert from "JS string" (JSString*) to "C++ string" (UString), since
toString() no longer returns a "C++ string".
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::addValueToArray):
* WebView/WebFrame.mm:
(-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
(-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
2012-01-20 Sam Weinig <sam@webkit.org>
Make WebCore RunLoop work for WebKit1
https://bugs.webkit.org/show_bug.cgi?id=76739
Reviewed by Anders Carlsson.
* Carbon/CarbonWindowAdapter.mm:
(+[CarbonWindowAdapter initialize]):
* History/WebBackForwardList.mm:
(+[WebBackForwardList initialize]):
* History/WebHistoryItem.mm:
(+[WebHistoryItem initialize]):
* Misc/WebElementDictionary.mm:
(+[WebElementDictionary initialize]):
* Misc/WebIconDatabase.mm:
(+[WebIconDatabase initialize]):
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(+[WebHostedNetscapePluginView initialize]):
* Plugins/WebBaseNetscapePluginView.mm:
* Plugins/WebBasePluginPackage.mm:
* Plugins/WebNetscapePluginView.mm:
(+[WebNetscapePluginView initialize]):
* WebCoreSupport/WebEditorClient.mm:
(+[WebUndoStep initialize]):
* WebCoreSupport/WebFrameLoaderClient.mm:
* WebView/WebArchive.mm:
(+[WebArchivePrivate initialize]):
* WebView/WebDataSource.mm:
(+[WebDataSourcePrivate initialize]):
* WebView/WebHTMLView.mm:
(+[WebHTMLViewPrivate initialize]):
(+[WebHTMLView initialize]):
* WebView/WebResource.mm:
(+[WebResourcePrivate initialize]):
* WebView/WebTextIterator.mm:
(+[WebTextIteratorPrivate initialize]):
* WebView/WebView.mm:
(+[WebView initialize]):
* WebView/WebViewData.mm:
(+[WebViewPrivate initialize]):
Initialized the main run loop in addition to other initialization.
2012-01-20 Simon Fraser <simon.fraser@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=76444
#if ENABLE(CSS_SHADERS) cannot appear in framework headers.
This breaks builds.
* WebView/WebPreferences.mm:
* WebView/WebPreferencesPrivate.h:
2012-01-20 Alexandru Chiculita <achicu@adobe.com>
CSS Shaders: Add a Settings flag to enable/disable CSS Shaders at runtime
https://bugs.webkit.org/show_bug.cgi?id=76444
Added private WebPreference property called "WebKitCSSCustomFilterEnabled".
Reviewed by Nikolas Zimmermann.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences cssCustomFilterEnabled]):
(-[WebPreferences setCSSCustomFilterEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2012-01-17 Enrica Casucci <enrica@apple.com>
Missing NSForegroundColorAttributeName should be treated as black instead of transparent.
https://bugs.webkit.org/show_bug.cgi?id=76490
<rdar://problem/9460733>
Starting with Lion, there is no more NSForegroundColor attribute in the dictionary
if the color matches the default (solid black).
The fix consists in treating the lack of color as solid black instead of transparent as
we did before.
Added a TestWebKitAPI test.
Reviewed by Darin Adler and Dan Bernstein.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _styleForAttributeChange:]):
2012-01-17 Matthew Delaney <mdelaney@apple.com>
On post-Lion releases, preserve the Lion behavior where WebKit explicitly calls -setGeometryFlipped on the hosting layer for applications that were linked on Lion or earlier.
<rdar://problem/10692025>
Reviewed by Simon Fraser.
* WebCoreSupport/WebSystemInterface.mm: Init newly added function.
* WebView/WebHTMLView.mm: Added case for post-Lion builds that calls -setGeometryFlipped if the app is linked on or before Lion.
2012-01-17 Enrica Casucci <enrica@apple.com>
REGRESSION (r101413): Correction panel overlaps misspelled text.
https://bugs.webkit.org/show_bug.cgi?id=74589
<rdar://problem/10585115>
When converting the rectangle from the root view, we need
to take into account the height of the rectangle.
Reviewed by Anders Carlsson.
* WebView/WebView.mm:
(-[WebView _convertRectFromRootView:]):
2012-01-16 Simon Fraser <simon.fraser@apple.com>
<rdar://problem/10703228> ASSERTION FAILED: Uncaught exception - Cannot lock focus on image <NSImage 0x1206572a0 Size={0, 0} Reps=( )>, because it is size zero loading techcrunch.com
Reviewed by Anders Carlsson.
Avoid trying to create image snapshots for zero-sized plugins, because
it causes -[NSView lockFocus] to throw an exception.
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView cacheSnapshot]):
2012-01-16 Alexey Proskuryakov <ap@apple.com>
A follow-up fix for:
A warning is logged to console when typing a bare "/" in Safari address bar
https://bugs.webkit.org/show_bug.cgi?id=76236
<rdar://problem/10702986>
Reviewed by John Sullivan.
* Misc/WebNSURLExtras.mm: (+[NSURL _web_URLWithData:relativeToURL:]): It's OK to have a
path when there is a base URL.
2012-01-16 Jon Lee <jonlee@apple.com>
Build fix for r105086.
* Configurations/FeatureDefines.xcconfig:
2012-01-12 Alexey Proskuryakov <ap@apple.com>
A warning is logged to console when typing a bare "/" in Safari address bar
https://bugs.webkit.org/show_bug.cgi?id=76236
Reviewed by John Sullivan.
* Misc/WebNSURLExtras.mm: (+[NSURL _web_URLWithData:relativeToURL:]): Bail out early for paths.
2012-01-16 Pablo Flouret <pablof@motorola.com>
Fix compilation errors on build-webkit --debug --no-svg --no-svg-fonts --no-svg-dom-objc-bindings on mac.
https://bugs.webkit.org/show_bug.cgi?id=75865
Reviewed by Hajime Morita.
* WebView/WebFrame.mm:
(-[WebFrame _pauseSVGAnimation:onSMILNode:atTime:]):
2012-01-15 Pablo Flouret <pablof@motorola.com>
Fix compilation errors on build-webkit --debug --no-video on mac.
https://bugs.webkit.org/show_bug.cgi?id=75867
Reviewed by Philippe Normand.
- WebChromeClient::fullScreenRendererChanged() declaration wrongly guarded
by VIDEO feature instead of FULLSCREEN_API.
- _isAnyMoviePlaying implementation depends on VIDEO.
* WebCoreSupport/WebChromeClient.h:
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController _isAnyMoviePlaying]):
2012-01-11 Beth Dakin <bdakin@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=75904
WebKit 1: Scrollbar uiStateTransitionProgress requires tracking the mouse all
the time
-and corresponding-
<rdar://problem/10498816>
Reviewed by Darin Adler.
New ivar trackingAreaForNonKeyWindow stores our NSTrackingArea whenever we
have one.
* WebView/WebHTMLView.mm:
(-[WebHTMLViewPrivate dealloc]):
(-[WebHTMLViewPrivate clear]):
When we know that mouse movements won't affect anything other than
scrollbars, call our new function passMouseMovedEventToScrollbars(),
otherwise we'll call the old mouseMoved().
(mouseEventIsPartOfClickOrDrag):
(-[WebHTMLView _updateMouseoverWithEvent:]):
Make sure not to remove the mouse observer when there are legacy scrollbars.
(-[WebHTMLView removeMouseMovedObserver]):
Set up a tracking area when the window is not key to ensure that the WebView
gets the relevant events. Remove it when the window is key again so that we
rely on the existing mechanism.
(-[WebHTMLView windowDidBecomeKey:]):
(-[WebHTMLView windowDidResignKey:]):
2012-01-10 Dan Bernstein <mitz@apple.com>
Made -[WebHistoryItem copyWithZone:] allocate an object of the same class as the receiver.
Reviewed by Mark Rowe.
* History/WebHistoryItem.mm:
(-[WebHistoryItem copyWithZone:]):
2012-01-10 Chris Marrin <cmarrin@apple.com>
Wrapped allowedCompositingTriggers in ACCELERATED_COMPOSITING ifdef to make non-accelerated builds work
Unreviewed.
* WebCoreSupport/WebChromeClient.h:
2012-01-10 Chris Marrin <cmarrin@apple.com>
Turn off the FilterTrigger in WebKit and WebKit2
https://bugs.webkit.org/show_bug.cgi?id=75914
Reviewed by Simon Fraser.
Implement allowedCompositingTriggers to turn on all compositing triggers except FilterTrigger.
* WebCoreSupport/WebChromeClient.h:
(WebChromeClient::allowedCompositingTriggers):
2012-01-10 Dan Bernstein <mitz@apple.com>
Change -[WebHistoryItem copyWithZone:] to not use NSCopyObject()
https://bugs.webkit.org/show_bug.cgi?id=75980
Reviewed by Mark Rowe.
* History/WebHistoryItem.mm:
(-[WebHistoryItem copyWithZone:]): Replaced NSCopyObject() with
-alloc, -initWithWebCoreHistoryItem:.
2012-01-06 Simon Fraser <simon.fraser@apple.com>
Mitigate scrollbar differences when running pixel tests
https://bugs.webkit.org/show_bug.cgi?id=67217
Reviewed by Dan Bernstein.
Make it possible to register a custom NSScroller class, which
the WebDynamicScrollBarsView will use when mock scrollbars are enabled.
Also ensure that the WebPreferences mock scrollbars preference is
migrated into Settings.
* WebView/WebDynamicScrollBarsView.h:
* WebView/WebDynamicScrollBarsView.mm:
(+[WebDynamicScrollBarsView _horizontalScrollerClass]):
(+[WebDynamicScrollBarsView _verticalScrollerClass]):
(+[WebDynamicScrollBarsView setCustomScrollerClass:]):
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2012-01-05 Dan Bernstein <mitz@apple.com>
<rdar://problem/10633760> Update copyright strings
Reviewed by Mark Rowe.
* Info.plist:
2012-01-05 Pratik Solanki <psolanki@apple.com>
WebFrameLoaderClient::userAgent does unnecessary NSString/NSURL conversions
https://bugs.webkit.org/show_bug.cgi?id=75586
Reviewed by Alexey Proskuryakov.
We do unnecessary KURL->NSURL* and String<->NSString* when calling [WebView
userAgentForURL:] from WebFrameLoaderClient::userAgent. Instead we add a separate function,
_userAgentString that returns a WTF::String to make this call faster.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::userAgent):
* WebView/WebView.mm:
(-[WebView _userAgentString]):
(-[WebView userAgentForURL:]):
* WebView/WebViewInternal.h:
2012-01-04 Anders Carlsson <andersca@apple.com>
Ambiguous if-then-else in Source/WebKit/mac/Misc/WebNSPasteboardExtras.mm
https://bugs.webkit.org/show_bug.cgi?id=75447
Reviewed by Brian Weinstein.
Resolve the ambiguity.
* Misc/WebNSPasteboardExtras.mm:
(-[NSPasteboard _web_writeImage:element:URL:title:archive:types:source:]):
2012-01-04 Mihnea Ovidenie <mihnea@adobe.com>
[Mac]Fix build after changeset 103997
https://bugs.webkit.org/show_bug.cgi?id=75530
Reviewed by Andreas Kling.
* WebView/WebFrame.mm:
* WebView/WebHTMLView.mm:
* WebView/WebPDFView.mm:
* WebView/WebView.mm:
2012-01-03 Jon Lee <jonlee@apple.com>
Leak of WebNotificationClient when page is destroyed
https://bugs.webkit.org/show_bug.cgi?id=74980
<rdar://problem/10611231>
Reviewed by Mark Rowe.
* WebCoreSupport/WebNotificationClient.h:
* WebCoreSupport/WebNotificationClient.mm:
(WebNotificationClient::notificationControllerDestroyed): Remove the instance.
2012-01-02 Dan Bernstein <mitz@apple.com>
[mac] Remove -[WebView setHoverFeedbackSuspended:]
https://bugs.webkit.org/show_bug.cgi?id=75406
Reviewed by Tim Hatcher.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _updateMouseoverWithEvent:]): Removed check for suspended hover updates.
* WebView/WebHTMLViewInternal.h: Removed -_hoverFeedbackSuspendedChanged.
* WebView/WebView.mm:
(-[WebView setHoverFeedbackSuspended:]): Left empty implementation to support versions of
Safari that call this.
(-[WebView isHoverFeedbackSuspended]): Left implementation that always returns NO to support
versions of Safari that call this.
* WebView/WebViewData.h: Removed hoverFeedbackSuspended ivar.
* WebView/WebViewPrivate.h: Removed method definitions.
2011-12-31 Dan Bernstein <mitz@apple.com>
WebKit/mac changes for: REGRESSION (WebKit2): Cursor, hover states not updated when page scrolls under stationary mouse pointer
https://bugs.webkit.org/show_bug.cgi?id=75405
Reviewed by Anders Carlsson.
Removed the WebKit/mac mechanism for dispatching fake mouse moved events
when an HTML frame scrolls, since FrameView now does this.
* WebView/WebHTMLView.mm:
(-[WebHTMLViewPrivate dealloc]): Removed an assertion about a removed ivar.
(-[WebHTMLView _updateMouseoverWithFakeEvent]): Removed call to
-_cancelUpdateMouseoverTimer.
(-[WebHTMLView _frameOrBoundsChanged]): Removed code to schedule a timer
for dispatching a mouse moved event on scroll.
(-[WebHTMLView close]): Removed call to _cancelUpdateMouseoverTimer.
(-[WebHTMLView viewWillMoveToWindow:]): Ditto.
(-[WebHTMLView mouseDown:]): Ditto.
2011-12-23 Ryosuke Niwa <rniwa@webkit.org>
Chromium Mac build fix.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2011-12-21 Sam Weinig <sam@webkit.org>
Start extracting platform specific bits out of PlatformEvents
https://bugs.webkit.org/show_bug.cgi?id=75063
Reviewed by Anders Carlsson.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
* WebView/WebFrame.mm:
* WebView/WebHTMLView.mm:
(-[WebHTMLView menuForEvent:]):
(-[WebHTMLView acceptsFirstMouse:]):
(-[WebHTMLView shouldDelayWindowOrderingForEvent:]):
(currentKeyboardEvent):
(-[WebHTMLView flagsChanged:]):
* WebView/WebPDFView.mm:
(-[WebPDFView PDFViewWillClickOnLink:withURL:]):
* WebView/WebView.mm:
2011-12-21 Timothy Hatcher <timothy@apple.com>
Web Inspector: suppress incremental rendering and use application chrome mode
https://webkit.org/b/75026
Reviewed by Joseph Pecoraro.
* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController init]): Sort the preferences, remove the Leopard font family setting,
set suppress incremental rendering and use application chrome mode.
2011-12-20 Pavel Feldman <pavel.feldman@gmail.com>
Web Inspector: reproducible crash after closing web inspector and browser window (iCab)
https://bugs.webkit.org/show_bug.cgi?id=74255
Reviewed by Yury Semikhatsky.
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorClient::bringFrontendToFront):
(-[WebInspectorWindowController destroyInspectorView:]):
2011-12-19 Eric Carlson <eric.carlson@apple.com>
Enable <track> for Mac build
https://bugs.webkit.org/show_bug.cgi?id=74838
Reviewed by Darin Adler.
* Configurations/FeatureDefines.xcconfig:
2011-12-16 Ryosuke Niwa <rniwa@webkit.org>
Rename registerCommandFor(Undo|Redo) to register(Undo|Redo)Step
https://bugs.webkit.org/show_bug.cgi?id=74748
Reviewed by Eric Seidel.
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::registerUndoOrRedoStep):
(WebEditorClient::registerUndoStep):
(WebEditorClient::registerRedoStep):
2011-12-16 Sam Weinig <sam@webkit.org>
Give PlatformEvents a base class
https://bugs.webkit.org/show_bug.cgi?id=74685
Reviewed by Anders Carlsson.
Add a base class for PlatformMouseEvent, PlatformKeyboardEvent, PlatformWheelEvent
and PlatformGestureEvent and move Type enumeration and modifiers down to it.
* WebView/WebFrame.mm:
(-[WebFrame _dragSourceEndedAt:operation:]):
* WebView/WebHTMLView.mm:
(currentKeyboardEvent):
(-[WebHTMLView _interpretKeyEvent:savingCommands:]):
* WebView/WebPDFView.mm:
(-[WebPDFView PDFViewWillClickOnLink:withURL:]):
2011-12-16 Simon Fraser <simon.fraser@apple.com>
Fix a #elsif fumble in my earlier commit.
* WebView/WebHTMLView.mm:
(-[WebHTMLView attachRootLayer:]):
2011-12-16 Ryosuke Niwa <rniwa@webkit.org>
Only EditCommandComposition should implement unapply and reapply
https://bugs.webkit.org/show_bug.cgi?id=74490
Reviewed by Eric Seidel.
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(-[WebUndoStep initWithUndoStep:]):
(-[WebUndoStep dealloc]):
(+[WebUndoStep stepWithUndoStep:]):
(-[WebUndoStep step]):
(-[WebEditorUndoTarget undoEditing:]):
(-[WebEditorUndoTarget redoEditing:]):
(WebEditorClient::registerCommandForUndoOrRedo):
(WebEditorClient::registerCommandForUndo):
(WebEditorClient::registerCommandForRedo):
2011-12-16 Simon Fraser <simon.fraser@apple.com>
<rdar://problem/10589427> Avoid calling -setGeometryFlipped ourselves on the layer hosting view's layer
Reviewed by Sam Weinig.
Now that we're using a flipped view to host the compositing layers,
we should not set geometryFlipped on the root layer ourselves.
* WebView/WebHTMLView.mm:
(-[WebHTMLView attachRootLayer:]):
2011-12-16 Mark Hahnenberg <mhahnenberg@apple.com>
De-virtualize destructors
https://bugs.webkit.org/show_bug.cgi?id=74331
Reviewed by Geoffrey Garen.
* Plugins/Hosted/ProxyRuntimeObject.h: Remove empty virtual destructor.
* Plugins/Hosted/ProxyRuntimeObject.mm:
2011-12-14 Ryosuke Niwa <rniwa@webkit.org>
Mac build fix after r102874.
* WebCoreSupport/WebChromeClient.mm:
2011-12-14 Jing Zhao <jingzhao@chromium.org>
Opening two popup menus by dispatchEvent() makes problems.
https://bugs.webkit.org/show_bug.cgi?id=73304
Reviewed by Kent Tamura.
* WebCoreSupport/WebChromeClient.h: Overrides hasOpenedPopup().
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::hasOpenedPopup): Not implemented.
2011-12-14 Michael Saboff <msaboff@apple.com>
Mac WebScriptDebugger crashes beneath sourceParsed()
https://bugs.webkit.org/show_bug.cgi?id=74564
Reviewed by Gavin Barraclough.
* WebView/WebScriptDebugger.mm:
(toNSString): Change to use ->characters() method to
actually get characters for string conversion.
2011-12-14 Hajime Morrita <morrita@chromium.org>
JS_INLINE and WTF_INLINE should be visible from WebCore
https://bugs.webkit.org/show_bug.cgi?id=73191
Reviewed by Kevin Ollivier.
Removed macro definitions which is now provided by Platform.h
* WebKitPrefix.h:
2011-12-13 Jon Lee <jonlee@apple.com>
Enable notifications on Mac.
Reviewed by Sam Weinig.
* Configurations/FeatureDefines.xcconfig:
2011-12-12 Ryosuke Niwa <rniwa@webkit.org>
WebKit code shouldn't be calling applyCommand directly
https://bugs.webkit.org/show_bug.cgi?id=74337
Reviewed by Darin Adler.
* WebView/WebFrame.mm:
(-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
2011-12-12 Brady Eidson <beidson@apple.com>
Page cache should support pages with plugins.
<rdar://problem/5190122> and https://bugs.webkit.org/show_bug.cgi?id=13634
Expose a WebKit preference for the page cache supporting plugins (on by default).
Reviewed by Anders Carlsson.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(-[WebPreferences pageCacheSupportsPlugins]):
(-[WebPreferences setPageCacheSupportsPlugins:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2011-12-12 Dan Bernstein <mitz@apple.com>
<rdar://problem/10328474> Text highlight changes to gray selection color when menu extra is shown
Reviewed by John Sullivan.
* WebView/WebView.mm:
(-[WebView _updateActiveState]): Changed to use -[NSWindow _hasKeyAppearance] instead
of -isKeyWindow. The former also returns YES when a menu extra is open.
(-[WebView addWindowObserversForWindow:]): Removed code to observe
NSWindowDidBecomeKeyNotification and NSWindowDidResignKeyNotification.
(-[WebView removeWindowObservers]): Removed code to stop observing the above.
(-[WebView _windowChangedKeyState]): Overridden this to call _updateActiveState.
This is called when the result of -_hasKeyAppearance changes.
(-[WebView _windowWillOrderOnScreen:]): Removed call to _updateActiveState,
previously needed for popovers, because _windowChangedKeyState is invoked
at the right time for them.
(-[WebView _windowWillOrderOffScreen:]): Ditto.
2011-12-07 Mark Rowe <mrowe@apple.com>
Fix the 32-bit build.
Ignore some warnings that only occur in 32-bit.
* Plugins/WebNetscapePluginPackage.mm:
2011-12-07 Mary Wu <mary.wu@torchmobile.com.cn>
Change function name InitializeLoggingChannelsIfNecessary to follow coding style guideline
https://bugs.webkit.org/show_bug.cgi?id=73986
Reviewed by Kenneth Rohde Christiansen.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
2011-12-06 Alexey Proskuryakov <ap@apple.com>
REGRESSION (WebKit2): Kill ring is not cleared when selection changes
https://bugs.webkit.org/show_bug.cgi?id=73888
<rdar://problem/10532310>
Reviewed by Mark Rowe.
* WebView/WebHTMLView.mm:
(-[WebHTMLView becomeFirstResponder]): Added a FIXME comment.
(-[WebHTMLView _selectionChanged]): Moved the code to clear kill ring to WebCore. The rest
of kill ring implementation is there, so it makes no sense to have this call in WebKits.
2011-12-05 Anders Carlsson <andersca@apple.com>
Make LayerFlushSchedulerClient::flushLayers indicate whether the flush was successful or not
https://bugs.webkit.org/show_bug.cgi?id=73862
Reviewed by Andy Estes.
Remove the call to LayerFlushScheduler::invalidate and return true instead. Return false for the cases
where we don't want the layer flush scheduler to be invalidated.
* WebView/WebView.mm:
(LayerFlushController::flushLayers):
* WebView/WebViewData.h:
2011-12-05 Eric Carlson <eric.carlson@apple.com>
Add WebKit preferences for text track settings
https://bugs.webkit.org/show_bug.cgi?id=73721
Reviewed by John Sullivan.
* WebView/WebPreferenceKeysPrivate.h: Added #define for shouldDisplaySubtitles, shouldDisplayCaptions,
and shouldDisplayTextDescriptions properties.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]): Initialize new preferences to NO.
(-[WebPreferences setShouldDisplaySubtitles:]): Added.
(-[WebPreferences shouldDisplaySubtitles]): Ditto.
(-[WebPreferences setShouldDisplayCaptions:]): Ditto.
(-[WebPreferences shouldDisplayCaptions]): Ditto.
(-[WebPreferences setShouldDisplayTextDescriptions:]): Ditto.
(-[WebPreferences shouldDisplayTextDescriptions]): Ditto.
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]): Updates WebCore settings from WebKit prefs.
2011-12-03 Dan Bernstein <mitz@apple.com>
<rdar://problem/10523721> Crash at WebCore::SubresourceLoader::releaseResources
Reviewed by Darin Adler.
* WebView/WebView.mm:
(-[WebView _removeObjectForIdentifier:]): Changed the CFRelease(self) into
a WebCFAutorelease(self). This prevents re-entry into this method due to
the WebView closing and canceling all subresource loads, including the
one we have just removed.
2011-12-02 David Levin <levin@chromium.org>
Rename WTF class from TemporarilyChange to TemporaryChange.
https://bugs.webkit.org/show_bug.cgi?id=73479
Reviewed by Eric Seidel.
* ForwardingHeaders/wtf/TemporarilyChange.h: Removed.
* ForwardingHeaders/wtf/TemporaryChange.h: Added.
2011-12-02 Simon Fraser <simon.fraser@apple.com>
<rdar://problem/10423627> Layers are flipped in WebKit1 views
Reviewed by Sam Weinig.
Host the compositing layers in an NSView which is flipped, which helps AppKit
get the geometry right in some situations.
* WebView/WebHTMLView.mm:
(-[WebLayerHostingFlippedView isFlipped]):
(-[WebHTMLView attachRootLayer:]):
2011-12-02 Hajime Morrita <morrita@chromium.org>
Unreviewed, rolling out r101751 and r101775.
http://trac.webkit.org/changeset/101751
http://trac.webkit.org/changeset/101775
https://bugs.webkit.org/show_bug.cgi?id=73191
breaks Windows build
* WebKitPrefix.h:
2011-12-01 Hajime Morrita <morrita@chromium.org>
JS_INLINE and WTF_INLINE should be visible from WebCore
https://bugs.webkit.org/show_bug.cgi?id=73191
Reviewed by Kevin Ollivier.
Removed macro definitions which is now provided by Platform.h
* WebKitPrefix.h:
2011-11-30 Alexey Proskuryakov <ap@apple.com>
Remove an unneeded argument from FrameLoaderClient::download
https://bugs.webkit.org/show_bug.cgi?id=73486
Reviewed by Andreas Kling.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::download):
Updated for the change.
2011-11-30 Dan Bernstein <mitz@apple.com>
WebKit/mac part of: Allow the length of a page along the pagination axis to differ from the length of the view
https://bugs.webkit.org/show_bug.cgi?id=73476
Reviewed by Anders Carlsson.
* WebView/WebView.mm:
(-[WebView _setPageLength:]): Added this accessor.
(-[WebView _pageLength]): Ditto.
* WebView/WebViewPrivate.h:
2011-11-30 Alexey Proskuryakov <ap@apple.com>
Download page URL should be set by WebCore
https://bugs.webkit.org/show_bug.cgi?id=73358
Reviewed by Darin Adler.
* WebCoreSupport/WebFrameLoaderClient.h: Removed setOriginalURLForDownload, which is now
in WebCore.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::download): There is no need to set original URL post factum any more.
(WebFrameLoaderClient::startDownload): Ditto.
2011-11-29 David Levin <levin@chromium.org>
Add a way to revert a variable to its previous value after leaving a scope.
https://bugs.webkit.org/show_bug.cgi?id=73371
Reviewed by Adam Barth.
* ForwardingHeaders/wtf/TemporarilyChange.h: Added.
2011-11-29 Jessie Berlin <jberlin@apple.com>
WKKeyValueStorageManagerGetKeyValueStorageOrigins may not report the correct list of origins
the first time it is called.
https://bugs.webkit.org/show_bug.cgi?id=73374 (<rdar://problem/10196057>)
Reviewed by Brady Eidson.
* Storage/WebStorageTrackerClient.h:
* Storage/WebStorageTrackerClient.mm:
(WebStorageTrackerClient::didFinishLoadingOrigins):
2011-11-15 Anders Carlsson <andersca@apple.com>
DragClient::dragSourceActionMaskForPoint should use root view coordinates
https://bugs.webkit.org/show_bug.cgi?id=72409
Reviewed by Sam Weinig.
* WebCoreSupport/WebDragClient.mm:
(WebDragClient::dragSourceActionMaskForPoint):
Use -[WebView _convertPointFromRootView:] to convert the point to the web view coordinate system.
2011-11-15 Anders Carlsson <andersca@apple.com>
EditorClient::showCorrectionPanel should pass the string bounding box in root view coordinates
https://bugs.webkit.org/show_bug.cgi?id=72408
Reviewed by Sam Weinig.
* WebCoreSupport/CorrectionPanel.mm:
(CorrectionPanel::show):
Convert the bounding rect to web view coordinates.
* WebView/WebView.mm:
(-[WebView _convertPointFromRootView:]):
(-[WebView _convertRectFromRootView:]):
* WebView/WebViewInternal.h:
Add helper methods for converting from root view coordinates to web view coordinates.
2011-11-29 Roland Steiner <rolandsteiner@chromium.org>
<style scoped>: add ENABLE(STYLE_SCOPED) flag to WebKit
https://bugs.webkit.org/show_bug.cgi?id=72848
Reviewed by Dimitri Glazkov.
* Configurations/FeatureDefines.xcconfig:
2011-11-28 Jon Lee <jonlee@apple.com>
Create skeleton framework for notifications support in WK2
https://bugs.webkit.org/show_bug.cgi?id=73253
<rdar://problem/10356943>
Reviewed by Sam Weinig.
* Configurations/FeatureDefines.xcconfig: Split out ENABLE_NOTIFICATIONS based on platform.
* WebCoreSupport/WebNotificationClient.h: Added.
(WebNotificationClient::webView):
* WebCoreSupport/WebNotificationClient.mm: Added. Implemented as stubs for now.
(WebNotificationClient::WebNotificationClient):
(WebNotificationClient::show):
(WebNotificationClient::cancel):
(WebNotificationClient::notificationObjectDestroyed):
(WebNotificationClient::requestPermission):
(WebNotificationClient::cancelRequestsForPermission):
(WebNotificationClient::checkPermission):
* WebView/WebView.mm: Set PageClient's notification client to an instance of this stubbed class.
2011-11-28 Adam Roben <aroben@apple.com>
Properly retain the OS X version string
Fixes <http://webkit.org/b/73214> REGRESSION (r101215): Crash on launch beneath +[WebView
_standardUserAgentWithApplicationName:]
Reviewed by Antti Koivisto.
* WebView/WebView.mm:
(createMacOSXVersionString): Retain the string we're returning, since this function is
supposed to return an owning reference to the caller.
2011-11-28 Hayato Ito <hayato@chromium.org>
Fix chromium canary build after r101215.
Unreviewed. Build fix.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2011-11-27 Mark Rowe <mrowe@apple.com>
<http://webkit.org/b/72665> Switch to a more modern approach to retrieving the OS marketing version
Reviewed by Dan Bernstein.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Set up wkGetMacOSXVersionString.
* WebView/WebView.mm:
(createMacOSXVersionString): Use WKGetMacOSXVersionString.
2011-11-26 Pavel Feldman <pfeldman@google.com>
Web Inspector: remove disconnectFromBackend from the protocol.
https://bugs.webkit.org/show_bug.cgi?id=73127
Reviewed by Yury Semikhatsky.
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorClient::inspectorDestroyed):
(WebInspectorClient::closeInspectorFrontend):
2011-11-26 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r101193.
http://trac.webkit.org/changeset/101193
https://bugs.webkit.org/show_bug.cgi?id=73158
Breaks Windows and Qt minimal. (Requested by pfeldman on
#webkit).
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorClient::inspectorDestroyed):
2011-11-26 Pavel Feldman <pfeldman@google.com>
Web Inspector: remove disconnectFromBackend from the protocol.
https://bugs.webkit.org/show_bug.cgi?id=73127
Reviewed by Yury Semikhatsky.
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorClient::inspectorDestroyed):
(WebInspectorClient::closeInspectorFrontend):
2011-11-22 Pavel Feldman <pfeldman@google.com>
Web Inspector: remove Inspector::bringToFront from the protocol.
https://bugs.webkit.org/show_bug.cgi?id=72937
Reviewed by Yury Semikhatsky.
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorClient::openInspectorFrontend):
(WebInspectorClient::bringFrontendToFront):
2011-11-21 Mark Rowe <mrowe@apple.com>
Fix the SnowLeopard build.
* Misc/WebNSFileManagerExtras.mm: Forward-declare DADiskCreateFromVolumePath on SnowLeopard as it was
not yet declared in a public header.
2011-11-20 Mark Rowe <mrowe@apple.com>
<http://webkit.org/b/72661> Switch to a more modern approach to retrieving the startup volume name
Use the DiskArbitration framework to retrieve the name of the startup volume rather than using Carbon
File Manager APIs.
Reviewed by Dan Bernstein.
* Misc/WebNSFileManagerExtras.mm:
(-[NSFileManager _webkit_startupVolumeName]): Retrieve a DADiskRef for the startup volume and copy
the volume name from its description dictionary.
2011-06-20 Pavel Feldman <pfeldman@chromium.org>
Web Inspector: introduce InspectorFrontendAPI for actions initiated from the application menu.
https://bugs.webkit.org/show_bug.cgi?id=62985
Both: inspector protocol and WebCore/InspectorController have a number of unnecessary
methods for plumbing the menu action handlers through the WebKit and WebCore.
I intend to remove this menu support from the protocol and WebCore/InspectorController API.
I am starting with exposing the new front-end API in the WebCore and using it in the WebKit/mac port.
WebKit/win and WebKit2 to follow.
Reviewed by Yury Semikhatsky.
* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController destroyInspectorView:]):
* WebInspector/WebInspector.mm:
(-[WebInspector showWindow]):
(-[WebInspector show:]):
(-[WebInspector showConsole:]):
(-[WebInspector isDebuggingJavaScript]):
(-[WebInspector toggleDebuggingJavaScript:]):
(-[WebInspector startDebuggingJavaScript:]):
(-[WebInspector stopDebuggingJavaScript:]):
(-[WebInspector isProfilingJavaScript]):
(-[WebInspector toggleProfilingJavaScript:]):
(-[WebInspector startProfilingJavaScript:]):
(-[WebInspector stopProfilingJavaScript:]):
(-[WebInspector isJavaScriptProfilingEnabled]):
(-[WebInspector setJavaScriptProfilingEnabled:]):
(-[WebInspector isTimelineProfilingEnabled]):
(-[WebInspector setTimelineProfilingEnabled:]):
(-[WebInspector setFrontend:]):
(-[WebInspector releaseFrontend]):
(-[WebInspector showWindow:]):
* WebInspector/WebInspectorFrontend.h:
* WebInspector/WebInspectorFrontend.mm:
(-[WebInspectorFrontend isDebuggingEnabled]):
(-[WebInspectorFrontend setDebuggingEnabled:]):
(-[WebInspectorFrontend isProfilingJavaScript]):
(-[WebInspectorFrontend startProfilingJavaScript]):
(-[WebInspectorFrontend stopProfilingJavaScript]):
(-[WebInspectorFrontend isJavaScriptProfilingEnabled]):
(-[WebInspectorFrontend setJavaScriptProfilingEnabled:]):
(-[WebInspectorFrontend isTimelineProfilingEnabled]):
(-[WebInspectorFrontend setTimelineProfilingEnabled:]):
* WebInspector/WebInspectorPrivate.h:
2011-11-21 Jochen Eisinger <jochen@chromium.org>
Implement Meta referrer
https://bugs.webkit.org/show_bug.cgi?id=72674
Reviewed by Adam Barth.
* Plugins/Hosted/HostedNetscapePluginStream.mm:
(WebKit::HostedNetscapePluginStream::HostedNetscapePluginStream):
* Plugins/WebNetscapePluginStream.mm:
(WebNetscapePluginStream::WebNetscapePluginStream):
2011-10-17 Antonio Gomes <agomes@rim.com>
Pass a Frame* parameter in EditorClient::respondToChangedSelection
https://bugs.webkit.org/show_bug.cgi?id=70248
Reviewed by Ryosuke Niwa.
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm: Make use of the newly added Frame* parameter.
(WebEditorClient::respondToChangedSelection):
2011-11-17 Mark Rowe <mrowe@apple.com>
<http://webkit.org/b/72646> Disable deprecation warnings around code where we cannot easily
switch away from the deprecated APIs.
Reviewed by Sam Weinig.
* Plugins/WebBasePluginPackage.mm:
* Plugins/WebNetscapePluginPackage.mm:
(-[WebNetscapePluginPackage _tryLoad]):
2011-11-18 Anton D'Auria <adauria@apple.com>
bool WebChromeClient::shouldInterruptJavaScript casts pointer to bool and always returns true
https://bugs.webkit.org/show_bug.cgi?id=72568
Reviewed by David Kilzer.
WebChromeClient::shouldInterruptJavaScript called CallUIDelegate, which used an id
as the return value, which was then cast to a bool and always returned true. This
patch uses CallUIDelegateReturningBoolean instead of CallUIDelegate, with the default
return value of NO.
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::shouldInterruptJavaScript):
2011-11-16 Dan Bernstein <mitz@apple.com>
WebKit/mac part of <rdar://problem/10262242> Add API for paginated display
https://bugs.webkit.org/show_bug.cgi?id=72537
Reviewed by Anders Carlsson.
* WebView/WebView.mm:
(-[WebView _setPaginationMode:]): Added this accessor.
(-[WebView _paginationMode]): Ditto.
(-[WebView _setGapBetweenPages:]): Ditto.
(-[WebView _gapBetweenPages]): Ditto.
(-[WebView _pageCount]): Ditto.
* WebView/WebViewPrivate.h: Defined WebPaginationMode enum and values.
2011-11-15 Andy Estes <aestes@apple.com>
Consolidate the logic that creates run loop observers for flushing layer tree changes to CoreAnimation
https://bugs.webkit.org/show_bug.cgi?id=72106
Reviewed by Anders Carlsson.
Remove code that schedules layer flushes and use LayerFlushScheduler instead.
* WebView/WebView.mm:
(-[WebView _close]): Invalidate the run loop observer and destroy the
LayerFlushController.
(LayerFlushController::flushLayers): Perform the work that
layerSyncRunLoopObserverCallBack used to do.
(-[WebView _scheduleCompositingLayerSync]): If layerFlushController has
yet to be created, create it, then schedule a layer flush.
* WebView/WebViewData.h:
(LayerFlushController::create): Create a LayerFlushController that
implements the LayerFlushSchedulerClient interface and contains a
LayerFlushScheduler with itself as the client.
* WebView/WebViewData.mm:
(LayerFlushController::scheduleLayerFlush):
(LayerFlushController::invalidateObserver):
(LayerFlushController::LayerFlushController):
2011-11-15 Jochen Eisinger <jochen@chromium.org>
Rename ReferrerPolicy to clarify its meaning
https://bugs.webkit.org/show_bug.cgi?id=72420
Reviewed by Nate Chapin.
* WebView/WebPDFView.mm:
(-[WebPDFView PDFViewWillClickOnLink:withURL:]):
2011-11-15 Anders Carlsson <andersca@apple.com>
HostWindow screenToWindow/windowToScreen should be screenToRootView/rootViewToScreen
https://bugs.webkit.org/show_bug.cgi?id=72397
Reviewed by Dan Bernstein.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::screenToRootView):
(WebChromeClient::rootViewToScreen):
2011-11-14 Anders Carlsson <andersca@apple.com>
HostWindow invalidation functions should use root view coordinates
https://bugs.webkit.org/show_bug.cgi?id=72338
Reviewed by Dan Bernstein.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::invalidateRootView):
(WebChromeClient::invalidateContentsAndRootView):
(WebChromeClient::invalidateContentsForSlowScroll):
2011-11-14 Julien Chaffraix <jchaffraix@webkit.org>
Add --css-grid-layout to build-webkit and the build systems
https://bugs.webkit.org/show_bug.cgi?id=72320
Reviewed by Ojan Vafai.
* Configurations/FeatureDefines.xcconfig:
2011-11-14 Tony Chang <tony@chromium.org>
Remove the CSS3_FLEXBOX compile time flag and enable on all ports
https://bugs.webkit.org/show_bug.cgi?id=72196
Reviewed by Ojan Vafai.
* Configurations/FeatureDefines.xcconfig:
2011-11-07 Adam Barth <abarth@webkit.org>
Move static "policy" state from SecurityOrigin.cpp to SecurityPolicy.cpp
https://bugs.webkit.org/show_bug.cgi?id=71755
Reviewed by Eric Seidel.
* Plugins/Hosted/HostedNetscapePluginStream.mm:
(WebKit::HostedNetscapePluginStream::HostedNetscapePluginStream):
* Plugins/WebNetscapePluginStream.mm:
(WebNetscapePluginStream::WebNetscapePluginStream):
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(+[WebView _addOriginAccessWhitelistEntryWithSourceOrigin:destinationProtocol:destinationHost:allowDestinationSubdomains:]):
(+[WebView _removeOriginAccessWhitelistEntryWithSourceOrigin:destinationProtocol:destinationHost:allowDestinationSubdomains:]):
(+[WebView _resetOriginAccessWhitelists]):
2011-11-08 Joseph Pecoraro <pecoraro@apple.com>
Move NSRange / DOMRange functions back to WebFrameInternal
https://bugs.webkit.org/show_bug.cgi?id=71844
Reviewed by Alexey Proskuryakov.
* WebView/WebFrame.mm:
(-[WebFrame _convertNSRangeToDOMRange:]):
(-[WebFrame _convertDOMRangeToNSRange:]):
* WebView/WebFrameInternal.h:
* WebView/WebFramePrivate.h:
2011-11-08 Michael Saboff <msaboff@apple.com>
Towards 8 Bit Strings: Templatize JSC::Parser class by Lexer type
https://bugs.webkit.org/show_bug.cgi?id=71761
Changed WKPCEvaluate() to use emptyString() when the source is
zero length.
Reviewed by Gavin Barraclough.
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WKPCEvaluate):
2011-11-08 Beth Dakin <bdakin@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=71856
WebKit should use new NSWindowDidChangeBackingPropertiesNotification instead of
old NSWindowDidChangeResolutionNotification
-and corresponding-
<rdar://problem/10317253>
Reviewed by Tim Hatcher.
* WebView/WebView.mm:
(-[WebView addWindowObserversForWindow:]):
(-[WebView removeWindowObservers]):
We have to check that the backing scale factor actually changed since this
notification can also be used to signify other changes.
(-[WebView _windowDidChangeBackingProperties:]):
2011-11-07 Adam Barth <abarth@webkit.org>
Move DomainRelaxationForbidden scheme registry to SchemeRegistry
https://bugs.webkit.org/show_bug.cgi?id=71750
Reviewed by Eric Seidel.
* WebView/WebView.mm:
(+[WebView _setDomainRelaxationForbidden:forURLScheme:]):
2011-11-07 Jessie Berlin <jberlin@apple.com>
Need a way to allow a scheme access to Local Storage and Databases while Private Browsing is
enabled.
https://bugs.webkit.org/show_bug.cgi?id=71631
Reviewed by Jon Honeycutt.
Add WebKit1 API to register a scheme as ignoring Private Browsing for Local Storage and
Databases.
* WebView/WebView.mm:
(+[WebView _registerURLSchemeAsAllowingLocalStorageAccessInPrivateBrowsing:]):
Call through to the SchemeRegistry function.
(+[WebView _registerURLSchemeAsAllowingDatabaseAccessInPrivateBrowsing:]):
Ditto.
* WebView/WebViewPrivate.h:
2011-11-03 Mark Hahnenberg <mhahnenberg@apple.com>
De-virtualize JSObject::getPropertyNames
https://bugs.webkit.org/show_bug.cgi?id=71306
Reviewed by Darin Adler.
Added getPropertyNames to the MethodTable, changed all the virtual
implementations of getPropertyNames to static ones, and replaced
all call sites with corresponding lookups in the MethodTable.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::enumerate):
2011-11-02 Darin Adler <darin@apple.com>
Change remaining callers of releaseRef to call leakRef
https://bugs.webkit.org/show_bug.cgi?id=71422
Reviewed by Darin Fisher.
* History/WebBackForwardList.mm:
(-[WebBackForwardList initWithBackForwardList:]):
* History/WebHistoryItem.mm:
(-[WebHistoryItem copyWithZone:]):
(-[WebHistoryItem initWithWebCoreHistoryItem:]):
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView createPlugin]):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView createPlugin]):
* WebCoreSupport/WebOpenPanelResultListener.mm:
* WebView/WebDataSource.mm:
(-[WebDataSource _initWithDocumentLoader:]):
* WebView/WebResource.mm:
(-[WebResourcePrivate initWithCoreResource:]):
Use leakRef.
2011-11-02 Joseph Pecoraro <pecoraro@apple.com>
Move NSRange / DOMRange conversion functions to WebFramePrivate
https://bugs.webkit.org/show_bug.cgi?id=71435
Reviewed by Sam Weinig.
Move conversion functions to WebFramePrivate,
and remove the no longer used versions.
* WebView/WebFrame.mm:
(-[WebFrame _convertNSRangeToDOMRange:]):
(-[WebFrame _convertDOMRangeToNSRange:]):
* WebView/WebFrameInternal.h:
* WebView/WebFramePrivate.h:
2011-11-02 Dean Jackson <dino@apple.com>
Add ENABLE_CSS_SHADERS flag
https://bugs.webkit.org/show_bug.cgi?id=71394
Reviewed by Sam Weinig.
* Configurations/FeatureDefines.xcconfig:
2011-11-02 Jon Lee <jonlee@apple.com>
Expand DragController to provide more information about the dragging session
https://bugs.webkit.org/show_bug.cgi?id=71324
<rdar://problem/10379175>
Reviewed by Darin Adler.
* WebView/WebView.mm:
(-[WebView draggingEntered:]): DragOperation is now inside the DragSession struct.
(-[WebView draggingUpdated:]):
2011-11-02 Tom Sepez <tsepez@chromium.org>
XSSAuditor is silent
https://bugs.webkit.org/show_bug.cgi?id=70973
Reviewed by Adam Barth.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::didRunInsecureContent):
(WebFrameLoaderClient::didDetectXSS):
* WebView/WebDelegateImplementationCaching.h:
* WebView/WebFrameLoadDelegatePrivate.h:
* WebView/WebView.mm:
(-[WebView _cacheFrameLoadDelegateImplementations]):
2011-11-01 Darin Adler <darin@apple.com>
Crash in PDF code when script has illegal UTF-8 or UTF-16 sequences
https://bugs.webkit.org/show_bug.cgi?id=71289
Reviewed by Dan Bernstein.
Just adding a null check. I don't have access to an actual PDF with
this problem but crashes from the field indicate they exist.
* WebView/WebPDFDocumentExtras.mm:
(allScriptsInPDFDocument): Skip the code to add the script text
to an array when the script is null.
2011-10-28 John Sullivan <sullivan@apple.com>
WebKit part of:
https://bugs.webkit.org/show_bug.cgi?id=71142
Whether backspace goes Back should be configurable
Reviewed by Sam Weinig.
* WebView/WebFrameView.mm:
(-[WebFrameView keyDown:]):
Honor the new preference.
* WebView/WebPreferenceKeysPrivate.h:
Added #define for WebKitBackspaceKeyNavigationEnabledKey
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
Initialize new pref to YES, to match current behavior.
(-[WebPreferences setBackspaceKeyNavigationEnabled:]):
New method, standard prefs setter.
(-[WebPreferences backspaceKeyNavigationEnabled]):
New method, standard prefs getter.
* WebView/WebPreferencesPrivate.h:
Declared new methods.
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
Updates WebCore settings from WebKit prefs.
2011-10-28 Jochen Eisinger <jochen@chromium.org>
Rename a number of methods mentioning JavaScript to just Script instead
https://bugs.webkit.org/show_bug.cgi?id=71105
Reviewed by Adam Barth.
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2011-10-27 Joseph Pecoraro <pecoraro@apple.com>
Reviewed by David Kilzer.
Make FeatureDefines Identical Across OS X Projects
https://bugs.webkit.org/show_bug.cgi?id=71051
* Configurations/FeatureDefines.xcconfig:
2011-10-27 Mark Hahnenberg <mhahnenberg@apple.com>
De-virtualize JSCell::toThisObject
https://bugs.webkit.org/show_bug.cgi?id=70958
Reviewed by Geoffrey Garen.
Converted all instances of toThisObject to static functions,
added toThisObject to the MethodTable, and replaced all call sites
with a corresponding lookup in the MethodTable.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::invoke):
(WebKit::NetscapePluginInstanceProxy::invokeDefault):
2011-10-25 Mark Hahnenberg <mhahnenberg@apple.com>
Remove deletePropertyVirtual
https://bugs.webkit.org/show_bug.cgi?id=70738
Reviewed by Geoffrey Garen.
Removed all declarations and definitions of deletePropertyVirtual.
Also replaced all call sites to deletePropertyVirtual with a
corresponding lookup in the MethodTable.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::removeProperty):
2011-10-25 Mark Hahnenberg <mhahnenberg@apple.com>
Remove putVirtual
https://bugs.webkit.org/show_bug.cgi?id=70740
Reviewed by Geoffrey Garen.
Removed all declarations and definitions of putVirtual.
Also replaced all call sites to putVirtual with a
corresponding lookup in the MethodTable.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::setProperty):
2011-10-24 Geoffrey Garen <ggaren@apple.com>
Removed SharedUChar and tightened language around its previous uses
https://bugs.webkit.org/show_bug.cgi?id=70698
Reviewed by David Levin.
- Renamed "threadSafeCopy" and "crossThreadCopy" to "isolatedCopy" because
the former names gave the dangerous misimpression that the resulting object
was thread-safe, which is not true.
* Storage/WebDatabaseTrackerClient.mm:
(DidModifyOriginData::dispatchToMainThread):
2011-10-24 Michael Saboff <msaboff@apple.com>
WebKit doesn't build with recent changes to libdispatch
https://bugs.webkit.org/show_bug.cgi?id=70737
Added initialization for new WebKitSystemInterface function
CreateVMPressureDispatchOnMainQueue.
Reviewed by Geoffrey Garen.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2011-10-23 Mark Hahnenberg <mhahnenberg@apple.com>
Remove getConstructDataVirtual
https://bugs.webkit.org/show_bug.cgi?id=70638
Reviewed by Darin Adler.
Removed all declarations and definitions of getConstructDataVirtual.
Also replaced all call sites to getConstructDataVirtual with a
corresponding lookup in the MethodTable.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::construct):
2011-10-20 Ian Henderson <ianh@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=70541
There are two WebFrameLoadDelegatePrivate categories on NSObject
Reviewed by David Kilzer.
* WebView/WebViewPrivate.h: Rename the private delegate categories in
WebViewPrivate.h with a "WebView" prefix to avoid collision.
2011-10-20 Alexey Proskuryakov <ap@apple.com>
REGRESSION (r96823): Contextual menu closes immediately when control-clicking in Flash plug-in
https://bugs.webkit.org/show_bug.cgi?id=70534
<rdar://problem/10308827>
Reviewed by Darin Adler.
* WebCoreSupport/WebFrameLoaderClient.mm: (NetscapePluginWidget::handleEvent): Return true
for contextmenu event, so that plug-ins won't get a default WebKit context menu. We can't
know if the plug-in is handling mousedown (or even mouseup) by displaying a menu.
2011-10-19 Beth Dakin <bdakin@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=70396
Focus rings are too thin in HiDPI in WebKit2
-and corresponding-
<rdar://problem/10086876>
Reviewed by Dan Bernstein.
Rename wkSetPatternBaseCTM to wkSetBaseCTM
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
To create a HiDPI context in DRT, we have to set the base CTM, which currently
requires CG SPI, so we have to do it through WebKitSystemInterface.
* WebView/WebView.mm:
(-[WebView _setBaseCTM:forContext:]):
* WebView/WebViewPrivate.h:
2011-10-18 Adam Barth <abarth@webkit.org>
Always enable ENABLE(XPATH)
https://bugs.webkit.org/show_bug.cgi?id=70217
Reviewed by Eric Seidel.
* Configurations/FeatureDefines.xcconfig:
2011-10-14 Chris Marrin <cmarrin@apple.com>
Throttle rate of requestAnimationFrame when page is not visible
https://bugs.webkit.org/show_bug.cgi?id=67873
Reviewed by Anders Carlsson.
Plumb through notification when the window is hidden/shown or
minimized/unminimized
* WebView/WebView.mm:
(-[WebView _windowWillOrderOnScreen:]):
(-[WebView _windowWillOrderOffScreen:]):
2011-10-16 Adam Barth <abarth@webkit.org>
Always enable ENABLE(DOM_STORAGE)
https://bugs.webkit.org/show_bug.cgi?id=70189
Reviewed by Eric Seidel.
* Configurations/FeatureDefines.xcconfig:
* Storage/WebStorageManager.mm:
* Storage/WebStorageManagerInternal.h:
* Storage/WebStorageTrackerClient.h:
* Storage/WebStorageTrackerClient.mm:
(WebStorageTrackerClient::dispatchDidModifyOrigin):
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
2011-10-14 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/70158> Fix clang compiler warnings
Reviewed by Darin Adler.
The following two methods in WebDelegateImplementationCaching.h
are ambiguous in WebChromeClient::runJavaScriptPrompt() because
the compiler can't decide how to convert the WTF::String
defaultText argument:
id CallUIDelegate(WebView *, SEL, id, id);
id CallUIDelegate(WebView *, SEL, id, BOOL);
The fix is to perform the conversion explicitly.
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::runJavaScriptPrompt): Extract a defaultString
variable to convert the WTF::String to an NSString*, then
use defaultString in place of defaultText.
2011-10-14 Mark Hahnenberg <mhahnenberg@apple.com>
Rename virtual put to putVirtual
https://bugs.webkit.org/show_bug.cgi?id=69851
Reviewed by Darin Adler.
Renamed virtual versions of put to putVirtual in prepration for
adding the static put to the MethodTable in ClassInfo since the
compiler gets mad if the virtual and static versions have the same
name.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::setProperty):
2011-10-14 Mark Hahnenberg <mhahnenberg@apple.com>
Rename virtual deleteProperty to deletePropertyVirtual
https://bugs.webkit.org/show_bug.cgi?id=69884
Reviewed by Darin Adler.
Renamed virtual versions of deleteProperty to deletePropertyVirtual in prepration for
adding the static deleteProperty to the MethodTable in ClassInfo since the
compiler gets mad if the virtual and static versions have the same name.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::removeProperty):
2011-10-12 Ryosuke Niwa <rniwa@webkit.org>
Make the interface of locationAndLengthFromRange and rangeFromLocationAndLength consistent
https://bugs.webkit.org/show_bug.cgi?id=69964
Reviewed by Enrica Casucci.
* WebView/WebFrame.mm:
(-[WebFrame _convertToNSRange:]):
(-[WebFrame _convertToDOMRange:]):
2011-10-13 Mark Hahnenberg <mhahnenberg@apple.com>
Rename virtual getConstructData to getConstructDataVirtual
https://bugs.webkit.org/show_bug.cgi?id=69872
Reviewed by Geoffrey Garen.
Renamed virtual getConstructData functions to getConstructDataVirtual to
avoid conflicts when we add static getConstructData to the MethodTable.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::construct):
2011-10-13 Beth Dakin <bdakin@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=70050
DRT and WRT should have HiDPI testing capabilities
Reviewed by Darin Adler.
New method _backingScaleFactor matches SPI of a similar name that I added
recently to WKPage in WebKit2. Equivalent functionality is needed for
DumpRenderTree's HiDPI support.
* WebView/WebView.mm:
(-[WebView _backingScaleFactor]):
* WebView/WebViewPrivate.h:
2011-10-12 Chris Marrin <cmarrin@apple.com>
Sync requestAnimationFrame callback to CVDisplayLink on Mac
https://bugs.webkit.org/show_bug.cgi?id=68911
Reviewed by Simon Fraser.
Add windowDidChangeScreen function which listens for the window changing
screens and passes the new displayID along to WebCore::Page. It also sends
one on windowWillOrderOnScreen, so the Page has a fresh displayID after it's
created.
* WebView/WebView.mm:
(-[WebView addWindowObserversForWindow:]):
(-[WebView removeWindowObservers]):
(-[WebView _windowDidChangeScreen:]):
(-[WebView _windowWillOrderOnScreen:]):
2011-10-12 Adam Barth <abarth@webkit.org>
Remove ENABLE(XHTMLMP) and associated code
https://bugs.webkit.org/show_bug.cgi?id=69729
Reviewed by David Levin.
* Configurations/FeatureDefines.xcconfig:
2011-10-10 Nate Chapin <japhet@chromium.org>
Use a CachedImageClient instead of CachedResourceClient
in WebHTMLView.
https://bugs.webkit.org/show_bug.cgi?id=69790
Reviewed by Adam Barth.
* WebView/WebHTMLView.mm:
(promisedDataClient):
2011-10-10 Mark Hahnenberg <mhahnenberg@apple.com>
Remove getCallDataVirtual methods
https://bugs.webkit.org/show_bug.cgi?id=69186
Reviewed by Geoffrey Garen.
Removed all getCallDataVirtual methods and replaced their call sites
with an explicit lookup in the MethodTable.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::invokeDefault):
2011-10-10 Joseph Pecoraro <joepeck@webkit.org>
Extract WebOpenPanelResultListener out into its own file
https://bugs.webkit.org/show_bug.cgi?id=69575
Reviewed by David Kilzer.
Extract the WebOpenPanelResultListener class out into
its own file. No functional change.
* WebCoreSupport/WebChromeClient.mm:
* WebCoreSupport/WebOpenPanelResultListener.h: Added.
* WebCoreSupport/WebOpenPanelResultListener.mm: Added.
(-[WebOpenPanelResultListener dealloc]):
(-[WebOpenPanelResultListener finalize]):
(-[WebOpenPanelResultListener cancel]):
(-[WebOpenPanelResultListener chooseFilename:]):
(-[WebOpenPanelResultListener chooseFilenames:]):
* WebView/WebUIDelegate.h:
2011-10-08 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r96996.
http://trac.webkit.org/changeset/96996
https://bugs.webkit.org/show_bug.cgi?id=69697
It broke all tests on the Qt bot (Requested by Ossy_night on
#webkit).
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::invokeDefault):
2011-10-07 Mark Hahnenberg <mhahnenberg@apple.com>
Remove getCallDataVirtual methods
https://bugs.webkit.org/show_bug.cgi?id=69186
Reviewed by Geoffrey Garen.
Removed all getCallDataVirtual methods and replaced their call sites
with an explicit lookup in the MethodTable.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::invokeDefault):
2011-10-06 Anders Carlsson <andersca@apple.com>
When building with clang, enable -Wglobal-constructors and -Wexit-time-destructors
https://bugs.webkit.org/show_bug.cgi?id=69586
Reviewed by Darin Adler.
* Configurations/Base.xcconfig:
Add -Wglobal-constructors and -Wexit-time-destructors when building with clang.
2011-10-06 Anders Carlsson <andersca@apple.com>
Add DEFINE_DEBUG_ONLY_GLOBAL for globals that should be defined in debug builds
https://bugs.webkit.org/show_bug.cgi?id=69584
Reviewed by Darin Adler.
Adopt the DEFINE_DEBUG_ONLY_GLOBAL macro.
* Plugins/Hosted/HostedNetscapePluginStream.mm:
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2011-10-03 Andy Estes <aestes@apple.com>
Add an option to suppress rendering until the document's load event fires.
https://bugs.webkit.org/show_bug.cgi?id=69298
Reviewed by Simon Fraser.
Add a new private WebPreference.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences setSuppressRenderingWhileInitiallyLoading:]):
(-[WebPreferences suppressRenderingWhileInitiallyLoading]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2011-10-05 Jer Noble <jer.noble@apple.com>
Enable WEB_AUDIO by default in the WebKit/mac port.
https://bugs.webkit.org/show_bug.cgi?id=68587
Reviewed by Simon Fraser.
* Configurations/FeatureDefines.xcconfig:
2011-10-05 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/69386> REGRESSION: Curious Location of StorageTracker.db
Reviewed by Alexey Proskuryakov.
* Storage/WebStorageManager.mm:
(+[WebStorageManager _storageDirectoryPath]): Restore call to
-[NSString stringByStandardizingPath]. Also fix over-release of
sLocalStoragePath if the initial -objectForKey: call returned an
NSString object. Use pthread_once to be thread-safe.
2011-10-04 Kent Tamura <tkent@chromium.org>
Introduce feature flags for incomplete input types
https://bugs.webkit.org/show_bug.cgi?id=68971
Reviewed by Hajime Morita.
* Configurations/FeatureDefines.xcconfig:
Add ENABLE_INPUT_TYPE_* flags. They are enabled only for iOS.
2011-10-03 Geoffrey Garen <ggaren@apple.com>
Some JSValue cleanup
https://bugs.webkit.org/show_bug.cgi?id=69320
Reviewed by Darin Adler.
* WebView/WebView.mm:
(aeDescFromJSValue): Updated for JSC changes.
2011-10-04 Scott Graham <scottmg@chromium.org>
Add GAMEPAD feature flag
https://bugs.webkit.org/show_bug.cgi?id=66859
Reviewed by Darin Fisher.
* Configurations/FeatureDefines.xcconfig:
2011-10-03 Jer Noble <jer.noble@apple.com>
Unreviewed, rolling out r96526.
http://trac.webkit.org/changeset/96526
https://bugs.webkit.org/show_bug.cgi?id=68587
WEB_AUDIO has numerous 64->32 bit casting warnings, causing
build breakages where -Wall is enabled.
* Configurations/FeatureDefines.xcconfig:
2011-10-03 Jer Noble <jer.noble@apple.com>
Enable WEB_AUDIO by default in the WebKit/mac port.
https://bugs.webkit.org/show_bug.cgi?id=68587
Reviewed by Simon Fraser.
* Configurations/FeatureDefines.xcconfig:
2011-10-02 Sam Weinig <sam@webkit.org>
Strength reduce Mac only Frame::searchForLabelsBeforeElement and Frame::matchLabelsAgainstElement into callers
https://bugs.webkit.org/show_bug.cgi?id=69230
Reviewed by Anders Carlsson.
* WebView/WebHTMLRepresentation.mm:
(regExpForLabels):
(searchForLabelsBeforeElement):
(matchLabelsAgainstString):
(matchLabelsAgainstElement):
(-[WebHTMLRepresentation searchForLabels:beforeElement:resultDistance:resultIsInCellAbove:]):
(-[WebHTMLRepresentation matchLabels:againstElement:]):
2011-10-02 Alexey Proskuryakov <ap@apple.com>
REGRESSION (r95474): Unable to type anywhere in nightly builds in WebKit1 mode
https://bugs.webkit.org/show_bug.cgi?id=68542
Reviewed by Mark Rowe.
* WebView/WebView.mm: (-[WebView _usesDocumentViews]): Re-add this method for now.
2011-10-01 Geoffrey Garen <ggaren@apple.com>
Leopard build fix: Updated for Strong<T> changes.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
* WebView/WebScriptDebugger.mm:
2011-09-28 Joseph Pecoraro <joepeck@webkit.org>
ASSERT if WebView's UIDelegate does not implement webView:runOpenPanel
https://bugs.webkit.org/show_bug.cgi?id=69037
Reviewed by Alexey Proskuryakov.
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::runOpenPanel):
If no delegate is implemented, dismiss the listener
with a cancel. It expects some action.
2011-09-28 Anton D'Auria <adauria@apple.com>
Expose +[WebStorageManager _storageDirectoryPath] as SPI
https://bugs.webkit.org/show_bug.cgi?id=68951
Reviewed by Brady Eidson.
This patch exposes +[WebStorageManager _storageDirectoryPath], which
pulls the path from NSUserDefaults if the preference is set. Otherwise,
it falls back on the default path.
* Storage/WebStorageManager.mm:
(+[WebStorageManager _storageDirectoryPath]): Adding static variable
so that we don't reread user defaults repeatedly.
(WebKitInitializeStorageIfNecessary):
* Storage/WebStorageManagerPrivate.h:
2011-09-27 Andy Estes <aestes@apple.com>
WebKitLinkedOnOrAfter() check is ineffective for Solar Walk app-specific hack.
https://bugs.webkit.org/show_bug.cgi?id=68863
Reviewed by Darin Adler.
The SolarWalk binary does not link against WebKit.framework directly,
so calling NSVersionOfLinkTimeLibrary() will not return the version of
WebKit against which SolarWalk was linked. Since Solar Walk has
released an update that addresses the issue for which this app-specific
hack was originally added, we should just remove the hack.
* Misc/SolarWalkQuirksUserScript.js: Removed.
* WebView/WebView.mm: Removed needsSolarWalkQuirksScript(),
leakSolarWalkQuirksUserScriptContents(), and
-[WebView _injectSolarWalkQuirksScript].
(-[WebView _commonInitializationWithFrameName:groupName:]): Do not
inject the Solar Walk quirks script.
2011-09-27 Mark Hahnenberg <mhahnenberg@apple.com>
Add static version of JSCell::getCallData
https://bugs.webkit.org/show_bug.cgi?id=68741
Reviewed by Darin Adler.
In this patch we just extract the bodies of the virtual getCallData methods
throughout the JSCell inheritance hierarchy out into static methods, which are
now called from the virtual methods. This is an intermediate step in trying to
move the virtual-ness of getCallData into our own method table stored in
ClassInfo. We need to convert the methods to static methods because static methods
can be represented as function pointers rather than pointers to member functions, and
function pointers are smaller and faster to call than pointers to member functions.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::invokeDefault):
2011-09-23 Simon Fraser <simon.fraser@apple.com>
Repaint tests don't work in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=68453
Reviewed by Sam Weinig.
Have FrameView keep track of repaint rects when asked to, and
expose this set of repaint rects via private WebKit API for later
use by DumpRenderTree.
* WebView/WebView.mm:
(-[WebView setTracksRepaints:]):
(-[WebView isTrackingRepaints]):
(-[WebView resetTrackedRepaints]):
(-[WebView trackedRepaintRects]):
* WebView/WebViewPrivate.h:
2011-09-25 Mark Hahnenberg <mhahnenberg@apple.com>
Add custom vtable struct to ClassInfo struct
https://bugs.webkit.org/show_bug.cgi?id=68567
Reviewed by Oliver Hunt.
Added CREATE_METHOD_TABLE macro to generate the custom vtable for the
specified class in its ClassInfo. Also added to it the first function to use
this macro, visitChildren. This is part of the process of getting rid of all
C++ virtual methods in JSCell. Eventually all virtual functions in JSCell
that can't easily be converted to non-virtual functions will be put into
this custom vtable structure.
* Plugins/Hosted/ProxyInstance.mm:
* Plugins/Hosted/ProxyRuntimeObject.mm:
2011-09-24 Adam Barth <abarth@webkit.org>
Always enable ENABLE(OFFLINE_WEB_APPLICATIONS)
https://bugs.webkit.org/show_bug.cgi?id=68767
Reviewed by Eric Seidel.
* Configurations/FeatureDefines.xcconfig:
* Misc/WebCache.mm:
(+[WebCache empty]):
* WebCoreSupport/WebApplicationCache.mm:
* WebCoreSupport/WebApplicationCacheQuotaManager.mm:
(-[WebApplicationCacheQuotaManager usage]):
(-[WebApplicationCacheQuotaManager quota]):
(-[WebApplicationCacheQuotaManager setQuota:]):
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
* WebView/WebDataSource.mm:
(-[WebDataSource _transferApplicationCache:]):
* WebView/WebFrame.mm:
(-[WebFrame _cacheabilityDictionary]):
* WebView/WebView.mm:
(WebKitInitializeApplicationCachePathIfNecessary):
2011-09-23 Adam Klein <adamk@chromium.org>
Add ENABLE_MUTATION_OBSERVERS feature flag
https://bugs.webkit.org/show_bug.cgi?id=68732
Reviewed by Ojan Vafai.
This flag will guard an implementation of the "Mutation Observers" proposed in
http://lists.w3.org/Archives/Public/public-webapps/2011JulSep/1622.html
* Configurations/FeatureDefines.xcconfig:
2011-09-23 Anders Carlsson <andersca@apple.com>
Axe WebImageRendererFactory
https://bugs.webkit.org/show_bug.cgi?id=68715
Reviewed by Darin Adler.
Remove WebImageRendererFactory, it was used by Safari 3, many a moon ago.
* WebCoreSupport/WebImageRendererFactory.m: Removed.
2011-09-23 Anders Carlsson <andersca@apple.com>
Add OVERRIDE to a bunch of virtual member functions on clients
https://bugs.webkit.org/show_bug.cgi?id=68712
Reviewed by Sam Weinig.
* Configurations/Base.xcconfig:
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebContextMenuClient.h:
* WebCoreSupport/WebDeviceOrientationClient.h:
* WebCoreSupport/WebDragClient.h:
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameNetworkingContext.h:
* WebCoreSupport/WebGeolocationClient.h:
* WebCoreSupport/WebIconDatabaseClient.h:
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebPlatformStrategies.h:
2011-09-22 Dean Jackson <dino@apple.com>
Add ENABLE_CSS_FILTERS
https://bugs.webkit.org/show_bug.cgi?id=68652
Reviewed by Simon Fraser.
* Configurations/FeatureDefines.xcconfig:
2011-09-22 Anders Carlsson <andersca@apple.com>
Get rid of Widget::setBoundsSize
https://bugs.webkit.org/show_bug.cgi?id=68491
Reviewed by Sam Weinig.
This basically reverts http://trac.webkit.org/changeset/79167 and http://trac.webkit.org/changeset/75897
which were added to make zoom gestures work with WebKit1, but since we don't support zoom gestures in WebKit1
anymore, it's better for code cleanliness to get rid of Widget::setBoundsSize and the associated code. While this
will unfortunately break transformed iframes in WebKit1, but Simon says that it's an acceptable tradeoff.
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView updateAndSetWindow]):
* WebView/WebFrameView.mm:
2011-09-19 Jer Noble <jer.noble@apple.com>
Add settings to control the availability of the Web Audio API to WebKit and WebKit2.
https://bugs.webkit.org/show_bug.cgi?id=68382
Reviewed by Darin Adler.
Initialize the webAudioEnabled preference to NO by default.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
2011-09-21 Anders Carlsson <andersca@apple.com>
Remove checks for Leopard-only Objective-C APIs
https://bugs.webkit.org/show_bug.cgi?id=68579
Reviewed by Sam Weinig.
We can always assume that OBJC_API_VERSION is at least 2, it's been 2 since Leopard.
* Misc/WebNSObjectExtras.h:
2011-09-21 Andras Becsi <andras.becsi@nokia.com>
[Qt] Remove Qt specific code from css/SelectorChecker.cpp
https://bugs.webkit.org/show_bug.cgi?id=67702
Reviewed by Csaba Osztrogonác.
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::isLinkVisited):
2011-09-20 Anders Carlsson <andersca@apple.com>
Remove ScrollView::platformContentsSize
https://bugs.webkit.org/show_bug.cgi?id=68188
Reviewed by Darin Adler.
When creating the document view, make sure it's zero sized which matches the initial size
of the ScrollView. This is fine to do early since DocumentWriter::begin sets the contents
size to a zero size anyway.
* WebView/WebFrameView.mm:
(-[WebFrameView _makeDocumentViewForDataSource:]):
2011-09-19 Pavel Feldman <pfeldman@google.com>
Web Inspector: streamline Console's MessageType and MessageSource semantics.
https://bugs.webkit.org/show_bug.cgi?id=68342
This change fixes semantics of the MessageSource and MessageType:
MessageSource is now the source of the message (be it Network, HTML
parser or Console API). MessageType is only defined for the Console API
messages and contains the name of the API call (log, dir, dirxml, etc.).
Subsequent https://bugs.webkit.org/show_bug.cgi?id=66371 will make MessageType
private to the inspector.
Reviewed by Tony Gentilcore.
* WebCoreSupport/WebChromeClient.mm:
(stringForMessageSource):
(stringForMessageType):
* WebView/WebUIDelegatePrivate.h:
2011-09-19 Timothy Hatcher <timothy@apple.com>
Make WebViews in NSPopovers render as they would in active windows.
The NSWindowDid{Become,Resign}KeyNotifications are not fired when NSPopovers
are shown or hidden since they share key with the parent window. So WebView
and WebHTMLView need to also observe the will order on/off screen notifications.
https://webkit.org/b/68402
rdar://problem/9754099
Reviewed by John Sullivan.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _removeWindowObservers]): Remove order on/off screen notification obversers.
(-[WebHTMLView addWindowObservers]): Add order on/off screen notification obversers.
(-[WebHTMLView windowWillOrderOnScreen:]): Check if the window is already a key window,
which can be the case for NSPopovers.
(-[WebHTMLView windowWillOrderOffScreen:]): Remove the mouse moved observer.
* WebView/WebView.mm:
(-[WebView addWindowObserversForWindow:]): Add order off screen notification obverser.
(-[WebView removeWindowObservers]): Remove order off screen notification obverser.
(-[WebView _windowWillOrderOnScreen:]): Call _updateActiveState.
(-[WebView _windowWillOrderOffScreen:]): Ditto.
2011-09-19 Mark Rowe <mrowe@apple.com>
<http://webkit.org/b/68421> Stop calling UpdateSystemActivity in places where we hold power assertions that achieve the same effect
On SnowLeopard and newer it's not necessary to call UpdateSystemActivity to prevent the screensaver from kicking
in as the NoDisplaySleep assertion now has that effect. It's also not necessary to hold both a NoDisplaySleep and
a NoIdleSleep assertion as the latter is implied by the former.
Adopt the DisplaySleepDisabler class that was added to WebCore and remove all of duplicated logic from WebFullScreenController.
Reviewed by Dan Bernstein.
* WebView/WebFullScreenController.h:
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController dealloc]):
(-[WebFullScreenController _updatePowerAssertions]): Create a DisplaySleepDisabler instance when transitioning from permitting
display sleep to disabling display sleep. Clear out our reference when sleep should be permitted, destroying any
disabler that we own.
2011-09-19 Adam Barth <abarth@webkit.org>
Always enable ENABLE(EVENTSOURCE)
https://bugs.webkit.org/show_bug.cgi?id=68414
Reviewed by Eric Seidel.
* Configurations/FeatureDefines.xcconfig:
2011-09-19 Anders Carlsson <andersca@apple.com>
Fix crashes when running WebKit1 tests.
-[WebView _mustDrawUnionedRect:singleRects:count:] was removed, so just put back the
equivalent code directly into -[WebHTMLView drawRect:].
* WebView/WebHTMLView.mm:
(-[WebHTMLView drawRect:]):
* WebView/WebViewInternal.h:
2011-09-19 Anders Carlsson <andersca@apple.com>
Remove the last remains of viewless WebKit1
https://bugs.webkit.org/show_bug.cgi?id=68388
Reviewed by Darin Adler.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::forceLayoutForNonHTML):
Remove null check.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
Remove usesDocumentViews parameter and checks.
(-[WebView _initWithFrame:frameName:groupName:usesDocumentViews:]):
Add an assertion that usesDocumentViews is always true.
(-[WebView _isUsingAcceleratedCompositing]):
Remove usesDocumentViews check.
(-[WebView _isSoftwareRenderable]):
Remove usesDocumentViews check.
(-[WebView initWithFrame:frameName:groupName:]):
Remove usesDocumentViews parameter and always pass YES to the _initWithFrame method.
(-[WebView initWithCoder:]):
Remove usesDocumentViews parameter.
(-[WebView _frameViewAtWindowPoint:]):
Remove usesDocumentViews check.
* WebView/WebViewData.h:
Remove usesDocumentViews ivar.
* WebView/WebViewPrivate.h:
Remove usesDocumentViews parameters.
2011-09-19 Anders Carlsson <andersca@apple.com>
Remove WebViewEventHandling.mm
https://bugs.webkit.org/show_bug.cgi?id=68387
Reviewed by Adam Roben.
WebViewEventHandling.mm was all about event handling in viewless WebKit, so rip it out since
we're getting rid of viewless WebKit1.
* WebView/WebView.mm:
(-[WebView _close]):
* WebView/WebViewData.h:
* WebView/WebViewEventHandling.mm: Removed.
* WebView/WebViewInternal.h:
2011-09-19 Anders Carlsson <andersca@apple.com>
Remove -[WebView _selectionChanged] and -[WebView _setTooltip:]
https://bugs.webkit.org/show_bug.cgi?id=68385
Reviewed by Adam Roben.
Move these functions back into the respective clients and remove usesDocumentViews checks.
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::setToolTip):
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::respondToChangedSelection):
* WebView/WebView.mm:
* WebView/WebViewEventHandling.mm:
* WebView/WebViewInternal.h:
2011-09-19 Anders Carlsson <andersca@apple.com>
Begin removing -[WebView _usesDocumentCalls] from WebView.mm
https://bugs.webkit.org/show_bug.cgi?id=68383
Reviewed by Adam Roben.
Remove checks and begin assuming that -[WebView _usesDocumentViews] always
returns true, since viewless WebKit1 has been abandoned.
* WebView/WebView.mm:
(-[WebView selectedFrame]):
(-[WebView setHostWindow:]):
(-[WebView acceptsFirstResponder]):
(-[WebView becomeFirstResponder]):
(-[WebView _webcore_effectiveFirstResponder]):
(-[WebView setNextKeyView:]):
(-[WebView setHoverFeedbackSuspended:]):
2011-09-19 Anders Carlsson <andersca@apple.com>
Remove calls to -[WebView _usesDocumentViews] from WebFrameLoaderClient.mm
https://bugs.webkit.org/show_bug.cgi?id=68379
Reviewed by Adam Roben.
Remove checks and begin assuming that -[WebView _usesDocumentViews] always
returns true, since viewless WebKit1 has been abandoned.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::hasHTMLView):
(WebFrameLoaderClient::dispatchDidCommitLoad):
(WebFrameLoaderClient::transitionToCommittedForNewPage):
(WebFrameLoaderClient::createFrame):
* WebView/WebFrame.mm:
(-[WebFrame _updateBackgroundAndUpdatesWhileOffscreen]):
(-[WebFrame _hasSelection]):
(-[WebFrame _clearSelection]):
(-[WebFrame _shouldFlattenCompositingLayers:]):
(-[WebFrame _dragSourceEndedAt:operation:]):
(-[WebFrame frameView]):
2011-09-19 Anders Carlsson <andersca@apple.com>
Remove calls to -[WebView _usesDocumentViews]
https://bugs.webkit.org/show_bug.cgi?id=68377
Reviewed by Adam Roben.
Remove checks and begin assuming that -[WebView _usesDocumentViews] always
returns true, since viewless WebKit1 has been abandoned.
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::windowResizerRect):
(WebChromeClient::invalidateContentsAndWindow):
(WebChromeClient::screenToWindow):
(WebChromeClient::windowToScreen):
(WebChromeClient::platformPageClient):
(WebChromeClient::scrollRectIntoView):
(WebChromeClient::print):
* WebView/WebDataSource.mm:
(-[WebDataSource _receivedData:]):
2011-09-19 Dan Bernstein <mitz@apple.com>
WebKit part of [mac] WebKit contains Objective-C classes that are not prefixed with its standard prefixes
https://bugs.webkit.org/show_bug.cgi?id=68323
Reviewed by Sam Weinig.
Renamed NonBlockingPanel to WebNonBlockingPanel.
Renamed ThreadEnabler to WebCocoaThreadingEnabler.
Renamed PDFPrefUpdatingProxy to WebPDFPrefUpdatingProxy.
* Misc/WebIconDatabase.mm:
(+[WebCocoaThreadingEnabler enableThreading]):
(importToWebCoreFormat):
* Panels/English.lproj/WebAuthenticationPanel.nib/designable.nib:
* Panels/English.lproj/WebAuthenticationPanel.nib/keyedobjects.nib:
* Panels/WebAuthenticationPanel.h:
* Panels/WebAuthenticationPanel.m: Renamed NonBlockingPanel to
WebNonBlockingPanel. Because Safari 5.1 uses NonBlockingPanel, this will
cause nightly builds to log an error message when showing the Safari
HTTP authentication sheet and disable the Quit command while the sheet
is disaplyed.
* WebView/WebPDFView.mm:
(-[WebPDFView initWithFrame:]):
(-[WebPDFView _updatePreferencesSoon]):
2011-09-17 Mihai Parparita <mihaip@chromium.org>
FrameLoaderClient BackForwardList-related methods are unsued
https://bugs.webkit.org/show_bug.cgi?id=68293
Reviewed by Darin Adler.
Remove FrameLoaderClient methods that were added by r51629, since only
the old (since-deleted) Android port needed them.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
* WebKit.order:
2011-09-16 Simon Fraser <simon.fraser@apple.com>
Make custom scrollbar theme for use in DRT, to reduce pixel diffs between platforms
https://bugs.webkit.org/show_bug.cgi?id=68134
Reviewed by Sam Weinig.
Hook up a private preference that enables the mock scrollbar theme.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(-[WebPreferences mockScrollbarsEnabled]):
(-[WebPreferences setMockScrollbarsEnabled:]):
* WebView/WebPreferencesPrivate.h:
2011-09-15 Adam Barth <abarth@webkit.org>
Rename ENABLE(DATABASE) to ENABLE(SQL_DATABASE)
https://bugs.webkit.org/show_bug.cgi?id=68205
Reviewed by Eric Seidel.
* Storage/WebDatabaseManager.mm:
* Storage/WebDatabaseManagerInternal.h:
* Storage/WebDatabaseManagerPrivate.h:
* Storage/WebDatabaseQuotaManager.mm:
(-[WebDatabaseQuotaManager usage]):
(-[WebDatabaseQuotaManager quota]):
(-[WebDatabaseQuotaManager setQuota:]):
* Storage/WebDatabaseTrackerClient.h:
* Storage/WebDatabaseTrackerClient.mm:
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
* WebCoreSupport/WebSecurityOrigin.mm:
(-[WebSecurityOrigin usage]):
(-[WebSecurityOrigin quota]):
(-[WebSecurityOrigin setQuota:]):
* WebView/WebFrame.mm:
(-[WebFrame _cacheabilityDictionary]):
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
(-[WebView _preferencesChanged:]):
2011-09-15 Mark Hahnenberg <mhahnenberg@apple.com>
Unzip initialization lists and constructors in JSCell hierarchy (7/7)
https://bugs.webkit.org/show_bug.cgi?id=68122
Reviewed by Geoffrey Garen.
Completed the seventh and final level of the refactoring to add finishCreation()
methods to all classes within the JSCell hierarchy with non-trivial
constructor bodies.
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyRuntimeMethod::create):
(WebKit::ProxyRuntimeMethod::ProxyRuntimeMethod):
* Plugins/Hosted/ProxyRuntimeObject.h:
(WebKit::ProxyRuntimeObject::create):
* Plugins/Hosted/ProxyRuntimeObject.mm:
(WebKit::ProxyRuntimeObject::ProxyRuntimeObject):
2011-09-15 Kentaro Hara <haraken@google.com>
A single line must not be split into two pages.
https://bugs.webkit.org/show_bug.cgi?id=65005
Reviewed by David Hyatt.
When the document width of a page is overflowed, the last line of the page can be
split into the next page. This is the regression caused by r88737. r88737 tried to
fix rounding errors in rendering calculations by expanding and shrinking a page
using one common method, resizePageRectsKeepingRatio(), but overlooked the case where
a document width gets overflowed.
Test: printing/single-line-must-not-be-split-into-two-pages.html
* WebView/WebHTMLView.mm:
(-[WebHTMLView _web_setPrintingModeRecursive]): Passes an original page size to setPrinting().
(-[WebHTMLView _web_clearPrintingModeRecursive]): Ditto.
(-[WebHTMLView _web_setPrintingModeRecursiveAndAdjustViewSize]): Ditto.
(-[WebHTMLView _beginPrintModeWithMinimumPageWidth:height:maximumPageWidth:]): Ditto.
(-[WebHTMLView _beginPrintModeWithPageWidth:height:shrinkToFit:]): Ditto.
(-[WebHTMLView _endPrintMode]): Ditto.
(-[WebHTMLView _beginScreenPaginationModeWithPageSize:shrinkToFit:]): Ditto.
(-[WebHTMLView _endScreenPaginationMode]): Ditto.
(-[WebHTMLView layoutToMinimumPageWidth:height:originalPageWidth:originalPageHeight:maximumShrinkRatio:adjustingViewSize:]): Ditto.
(-[WebHTMLView layout]): Ditto.
(-[WebHTMLView _setPrinting:minimumPageLogicalWidth:logicalHeight:originalPageWidth:originalPageHeight:maximumShrinkRatio:adjustViewSize:paginateScreenContent:]): Ditto.
(-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Ditto.
(-[WebHTMLView setPageWidthForPrinting:]): Ditto.
2011-09-15 Eric Seidel <eric@webkit.org>
Remove ENABLE(SVG_AS_IMAGE) since all major ports have it on by default
https://bugs.webkit.org/show_bug.cgi?id=68182
Reviewed by Adam Barth.
* Configurations/FeatureDefines.xcconfig:
2011-09-15 Eric Seidel <eric@webkit.org>
Remove ENABLE_SVG_ANIMATION as all major ports have it on by default
https://bugs.webkit.org/show_bug.cgi?id=68022
Reviewed by Ryosuke Niwa.
* Configurations/FeatureDefines.xcconfig:
2011-09-14 Anders Carlsson <andersca@apple.com>
Get rid of WebCoreViewFactory and its WebViewFactory subclass
https://bugs.webkit.org/show_bug.cgi?id=68124
Reviewed by Sam Weinig.
* WebCoreSupport/WebContextMenuClient.mm:
* WebCoreSupport/WebViewFactory.h: Removed.
* WebCoreSupport/WebViewFactory.mm: Removed.
* WebView/WebFrameView.mm:
(-[WebFrameView initWithFrame:]):
2011-09-14 Mark Hahnenberg <mhahnenberg@apple.com>
Unzip initialization lists and constructors in JSCell hierarchy (6/7)
https://bugs.webkit.org/show_bug.cgi?id=67692
Reviewed by Geoffrey Garen.
Completed the sixth level of the refactoring to add finishCreation()
methods to all classes within the JSCell hierarchy with non-trivial
constructor bodies.
This primarily consists of pushing the calls to finishCreation() down
into the constructors of the subclasses of the fifth level of the hierarchy
as well as pulling the finishCreation() calls out into the class's corresponding
create() method if it has one. Doing both simultaneously allows us to
maintain the invariant that the finishCreation() method chain is called exactly
once during the creation of an object, since calling it any other number of
times (0, 2, or more) will cause an assertion failure.
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyRuntimeMethod::ProxyRuntimeMethod):
(WebKit::ProxyRuntimeMethod::finishCreation):
2011-09-13 Eric Seidel <eric@webkit.org>
Remove ENABLE_SVG_USE as <use> is required by HTML5
https://bugs.webkit.org/show_bug.cgi?id=68019
Reviewed by Ryosuke Niwa.
* Configurations/FeatureDefines.xcconfig:
2011-09-13 Anders Carlsson <andersca@apple.com>
Disable C++ exceptions when building with clang
https://bugs.webkit.org/show_bug.cgi?id=68031
<rdar://problem/9556880>
Reviewed by Mark Rowe.
* Configurations/Base.xcconfig:
2011-09-13 Eric Seidel <eric@webkit.org>
Remove ENABLE_SVG_FOREIGN_OBJECT as it is a required part of HTML5
https://bugs.webkit.org/show_bug.cgi?id=68018
Reviewed by Ryosuke Niwa.
* Configurations/FeatureDefines.xcconfig:
2011-09-09 Oliver Hunt <oliver@apple.com>
Remove support for anonymous storage from jsobjects
https://bugs.webkit.org/show_bug.cgi?id=67881
Reviewed by Sam Weinig.
Remove the use of AnonymousSlotCount
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyRuntimeMethod::createStructure):
* Plugins/Hosted/ProxyRuntimeObject.h:
(WebKit::ProxyRuntimeObject::createStructure):
2011-09-09 Chris Marrin <cmarrin@apple.com>
requestAnimationFrame doesn't throttle on Mac
https://bugs.webkit.org/show_bug.cgi?id=67171
Reviewed by Simon Fraser.
Removed runLoopObserver for requestAnimationFrame. It's now
done by a Timer in ScriptedAnimationController in WebCore.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
* WebView/WebView.mm:
(-[WebView _close]):
* WebView/WebViewData.h:
* WebView/WebViewInternal.h:
2011-09-09 Fady Samuel <fsamuel@chromium.org>
Move pageScaleFactor code from Frame.{h|cpp} to Page.{h|cpp}
https://bugs.webkit.org/show_bug.cgi?id=67250
Reviewed by Simon Fraser.
* WebView/WebView.mm:
(-[WebView _scaleWebView:atOrigin:]):
(-[WebView _viewScaleFactor]):
2011-09-09 Mark Hahnenberg <mhahnenberg@apple.com>
Unzip initialization lists and constructors in JSCell hierarchy (5/7)
https://bugs.webkit.org/show_bug.cgi?id=67420
Reviewed by Geoffrey Garen.
Completed the fifth level of the refactoring to add finishCreation()
methods to all classes within the JSCell hierarchy with non-trivial
constructor bodies.
This primarily consists of pushing the calls to finishCreation() down
into the constructors of the subclasses of the second level of the hierarchy
as well as pulling the finishCreation() calls out into the class's corresponding
create() method if it has one. Doing both simultaneously allows us to
maintain the invariant that the finishCreation() method chain is called exactly
once during the creation of an object, since calling it any other number of
times (0, 2, or more) will cause an assertion failure.
* Plugins/Hosted/ProxyRuntimeObject.h:
* Plugins/Hosted/ProxyRuntimeObject.mm:
(WebKit::ProxyRuntimeObject::ProxyRuntimeObject):
(WebKit::ProxyRuntimeObject::finishCreation):
2011-09-08 Sam Weinig <sam@webkit.org>
Remove the Completion object from JSC, I have never liked it
https://bugs.webkit.org/show_bug.cgi?id=67755
Reviewed by Gavin Barraclough.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::evaluate):
2011-09-07 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r94627 and r94632.
http://trac.webkit.org/changeset/94627
http://trac.webkit.org/changeset/94632
https://bugs.webkit.org/show_bug.cgi?id=67698
It broke tests on GTK and Qt (Requested by Ossy on #webkit).
* Plugins/Hosted/ProxyRuntimeObject.h:
* Plugins/Hosted/ProxyRuntimeObject.mm:
(WebKit::ProxyRuntimeObject::ProxyRuntimeObject):
2011-09-06 Mark Hahnenberg <mhahnenberg@apple.com>
Unzip initialization lists and constructors in JSCell hierarchy (5/7)
https://bugs.webkit.org/show_bug.cgi?id=67420
Reviewed by Geoffrey Garen.
Completed the fifth level of the refactoring to add finishCreation()
methods to all classes within the JSCell hierarchy with non-trivial
constructor bodies.
This primarily consists of pushing the calls to finishCreation() down
into the constructors of the subclasses of the second level of the hierarchy
as well as pulling the finishCreation() calls out into the class's corresponding
create() method if it has one. Doing both simultaneously allows us to
maintain the invariant that the finishCreation() method chain is called exactly
once during the creation of an object, since calling it any other number of
times (0, 2, or more) will cause an assertion failure.
* Plugins/Hosted/ProxyRuntimeObject.h:
* Plugins/Hosted/ProxyRuntimeObject.mm:
(WebKit::ProxyRuntimeObject::ProxyRuntimeObject):
(WebKit::ProxyRuntimeObject::finishCreation):
2011-09-06 Ryosuke Niwa <rniwa@webkit.org>
Rename confirmCompositionWithoutDisturbingSelection to cancelComposition
https://bugs.webkit.org/show_bug.cgi?id=67569
Reviewed by Antonio Gomes.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _updateSelectionForInputManager]):
2011-09-05 Oliver Hunt <oliver@apple.com>
An object's structure should reference the global object responsible for its creation
https://bugs.webkit.org/show_bug.cgi?id=67624
Reviewed by Gavin Barraclough.
Update for new Structure::create() globalObject parameter.
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyRuntimeMethod::createStructure):
* Plugins/Hosted/ProxyRuntimeObject.h:
(WebKit::ProxyRuntimeObject::createStructure):
2011-09-01 Mark Rowe <mrowe@apple.com>
Fix the build by adding some more missing return types.
* WebView/WebDashboardRegion.h:
* WebView/WebDashboardRegion.mm:
(-[WebDashboardRegion initWithRect:clip:type:]):
2011-09-01 Tim Horton <timothy_horton@apple.com>
REGRESSION: Rendering artifacts on a rotated, pattern filled shape
https://bugs.webkit.org/show_bug.cgi?id=53055
<rdar://problem/8910917>
Reviewed by Simon Fraser.
Introduce wkCGPatternCreateWithImageAndTransform.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2011-08-31 Beth Dakin <bdakin@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=67322
Re-name overrideBackingScaleFactor
Reviewed by John Sullivan.
_setOverrideBackingScaleFactor is now _setCustomBackingScaleFactor
* WebView/WebView.mm:
(-[WebView _setCustomBackingScaleFactor:]):
(-[WebView _deviceScaleFactor]):
* WebView/WebViewData.h:
* WebView/WebViewPrivate.h:
2011-08-30 Dan Bernstein <mitz@apple.com>
<rdar://problem/9281695> Add text search API for getting the DOM range of a text match
https://bugs.webkit.org/show_bug.cgi?id=67230
Reviewed by Darin Adler.
* WebView/WebHTMLView.mm:
* WebView/WebView.mm:
(coreOptions): Moved this function from WebHTMLView.mm to here and made
it accessible from both this file and WebHTMLView.mm.
(-[WebView DOMRangeOfString:relativeTo:options:]): Added this new API.
* WebView/WebViewInternal.h:
* WebView/WebViewPrivate.h:
2011-08-30 Beth Dakin <bdakin@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=67150
Would like API to use a custom device scale factor for a particular WebView/WKView
-and corresponding-
<rdar://problem/10041016>
Reviewed by Darin Adler.
New API is _setOverrideBackingScaleFactor:(CGFloat)
* WebView/WebView.mm:
(-[WebView _setOverrideBackingScaleFactor:]):
(-[WebView _deviceScaleFactor]):
* WebView/WebViewData.h:
* WebView/WebViewPrivate.h:
2011-08-30 Aaron Colwell <acolwell@chromium.org>
Add MediaSource API to HTMLMediaElement
https://bugs.webkit.org/show_bug.cgi?id=64731
Reviewed by Eric Carlson.
* Configurations/FeatureDefines.xcconfig:
2011-08-29 Alexey Proskuryakov <ap@apple.com>
DumpRenderTree should begin each test with an empty cookie store
https://bugs.webkit.org/show_bug.cgi?id=63545
<rdar://problem/5666907>
Reviewed by Darin Adler.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(+[WebPreferences _switchNetworkLoaderToNewTestingSession]):
(+[WebPreferences _setCurrentNetworkLoaderSessionCookieAcceptPolicy:]):
* WebView/WebPreferencesPrivate.h:
Exposed an SPI to use a private default session. It's separate from private browsing,
because some tests enable the latter, and we don't want to mix them up.
Also exposed an SPI to set cookie accept policy regardless of what session we are currently
using.
* WebView/WebView.mm: (-[WebView _cachedResponseForURL:]): Updated to use currentStorageSession()
instead of privateBrowsingStorageSession().
2011-08-30 Kaustubh Atrawalkar <kaustubh@motorola.com>
The unused ScrollView* argument can and should be removed from
scrollRectIntoView.
https://bugs.webkit.org/show_bug.cgi?id=67117
Reviewed by Darin Adler.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::scrollRectIntoView):
2011-08-29 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r93987, r93992, r93995, r93998, and
r93999.
http://trac.webkit.org/changeset/93987
http://trac.webkit.org/changeset/93992
http://trac.webkit.org/changeset/93995
http://trac.webkit.org/changeset/93998
http://trac.webkit.org/changeset/93999
https://bugs.webkit.org/show_bug.cgi?id=67147
Many failing tests (Requested by ap on #webkit).
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
* WebView/WebPreferencesPrivate.h:
2011-08-26 Alexey Proskuryakov <ap@apple.com>
DumpRenderTree should begin each test with an empty cookie store
https://bugs.webkit.org/show_bug.cgi?id=63545
<rdar://problem/5666907>
Reviewed by Darin Adler.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(+[WebPreferences _usePrivateSessionForNetworkLoading]):
* WebView/WebPreferencesPrivate.h:
Exposed an SPI to use a private default session. It's separate from private browsing,
because some tests enable the latter, and we don't want to mix them up.
2011-08-23 Chris Marrin <cmarrin@apple.com>
[mac] requestAnimationFrame support for mac port
https://bugs.webkit.org/show_bug.cgi?id=59146
Reviewed by Simon Fraser.
Implement requestAnimationFrame for WebKit. Add a
CFRunLoopObserver to WebView, which runs just before
the syncCompositingState RLO and calls into the
ScriptedAnimationController if scheduleAnimation() has
been called.
* Configurations/FeatureDefines.xcconfig:
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::scheduleAnimation):
* WebView/WebView.mm:
(-[WebView _close]):
(-[WebView _unscheduleAnimation]):
(-[WebView _scheduleCompositingLayerSync]):
(requestAnimationFrameRunLoopObserverCallback):
(-[WebView _scheduleAnimation]):
* WebView/WebViewData.h:
* WebView/WebViewInternal.h:
2011-08-24 Alexey Proskuryakov <ap@apple.com>
Plug-in tests are flaky on Mac
https://bugs.webkit.org/show_bug.cgi?id=66822
Reviewed by Anders Carlsson.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::evaluateJavaScript):
Protect objects that can be removed by a script.
* WebView/WebFrame.mm:
(-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): Ditto.
(-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]): Ditto.
Also fixed some nonsense code.
2011-08-23 Mark Hahnenberg <mhahnenberg@apple.com>
Add checks to ensure allocation does not take place during initialization of GC-managed objects
https://bugs.webkit.org/show_bug.cgi?id=65288
Reviewed by Darin Adler.
Adding the new validation functionality. In its current state, it will performs checks,
but they don't fail unless you do allocation in the arguments to the parent constructor in the
initialization list of a class. The allocateCell() method turns on the global flag disallowing any new
allocations, and the constructorBody() method in JSCell turns it off. This way, allocation is still
allowed in constructor bodies while other refactoring efforts continue.
* Plugins/Hosted/ProxyRuntimeObject.h:
(WebKit::ProxyRuntimeObject::create):
* Plugins/Hosted/ProxyRuntimeObject.mm:
(WebKit::ProxyRuntimeObject::ProxyRuntimeObject):
2011-08-18 Beth Dakin <bdakin@apple.com>
Reviewed by Sam Weinig.
https://bugs.webkit.org/show_bug.cgi?id=66495
Lion-specific scroller SPIs can use forward declaration instead of
WebKitSystemInterface
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2011-08-18 Anders Carlsson <andersca@apple.com>
More C++0x libc++ build fixes
https://bugs.webkit.org/show_bug.cgi?id=66476
Reviewed by Adam Roben.
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WKPCSetException):
Use a WTF String here instead of an STL string.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::idForObject):
std::make_pair now takes rvalue references, so get rid of the template arguments and let
the compiler deduce them instead.
2011-08-18 Adam Roben <aroben@apple.com>
Update the device scale factor when the WebView's window changes
Fixes <http://webkit.org/b/66412> <rdar://problem/9971958> WebKit doesn't react when a
WebView is moved between windows with different backing scale factors
Reviewed by Anders Carlsson.
* WebView/WebView.mm:
(-[WebView viewDidMoveToWindow]): Call setDeviceScaleFactor because our new window (or no
window at all) might have a different backing scale factor than the previous one.
(-[WebView _deviceScaleFactor]): Moved to the WebFileInternal category.
2011-08-17 Adam Roben <aroben@apple.com>
Make WebCore keep track of the current device scale factor
Fixes <http://webkit.org/b/66413> WebCore requires every WebKit port to keep track of the
device scale factor
Reviewed by Darin Adler.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
Moved code to calculate the device scale factor from here...
* WebView/WebView.mm:
(-[WebView _deviceScaleFactor]):
...to here.
(-[WebView _windowDidChangeResolution:]): Now calls Page::setDeviceScaleFactor.
2011-08-17 Dan Bernstein <mitz@apple.com>
Removed some code that is not needed when building for Leopard or later.
Reviewed by Anders Carlsson.
* WebCoreSupport/WebContextMenuClient.mm:
(fixMenusToSendToOldClients): Removed check for Tiger Mail.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::objectContentType):
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
(-[WebView _preferencesChanged:]):
2011-08-17 Dan Bernstein <mitz@apple.com>
Eliminate the WebCGFloat compatibility definition that was needed for Tiger.
Rubber-stamped by Anders Carlsson.
* WebView/WebHTMLViewPrivate.h:
2011-08-17 Dan Bernstein <mitz@apple.com>
Eliminate the WebNSInteger and WebNSUInteger compatibility definitions that were
needed for Tiger.
Reviewed by Darin Adler.
* History/WebBackForwardList.h:
* WebView/WebDocumentInternal.h:
* WebView/WebHTMLRepresentation.h:
* WebView/WebPreferences.h:
* WebView/WebResourceLoadDelegate.h:
* WebView/WebResourceLoadDelegatePrivate.h:
* WebView/WebScriptDebugDelegate.h:
* WebView/WebTextIterator.h:
* WebView/WebUIDelegate.h:
* WebView/WebView.h:
* WebView/WebViewPrivate.h:
2011-08-15 Dmitry Titov <dimich@chromium.org>
FrameLoaderClient::transferLoadingResourceFromPage does not have enough parameters
https://bugs.webkit.org/show_bug.cgi?id=66165
Reviewed by Darin Fisher.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::transferLoadingResourceFromPage):
2011-08-15 Mark Hahnenberg <mhahnenberg@apple.com>
Refactor JS objects to allocate in static create methods rather than constructors
https://bugs.webkit.org/show_bug.cgi?id=65347
Reviewed by Geoffrey Garen.
Removed all calls to deprecatedGetDOMObject from initialization lists as part of a
larger refactoring to get rid of all allocation during initialization.
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyRuntimeMethod::create):
(WebKit::ProxyRuntimeMethod::ProxyRuntimeMethod):
2011-08-15 Adam Roben <aroben@apple.com>
Update pages' style and content scale when the window's backing scale factor changes
Unfortunately, I couldn't think of a way to test this in an automated fashion.
Fixes <http://webkit.org/b/66229> <rdar://problem/9906269> WebKit doesn't react to device
scale factor changes
Reviewed by Simon Fraser.
* WebView/WebView.mm:
(-[WebView addWindowObserversForWindow:]):
(-[WebView removeWindowObservers]):
Listen for the notification that tells us the window's backing scale has changed.
(-[WebView _windowDidChangeResolution:]): Tell the page about the change to the device scale
factor so that, e.g., scale-factor-dependent media queries will be reevaluated.
2011-08-10 Adam Roben <aroben@apple.com>
Clear up scale factor terminology
WebKit by and large deals with two scale factors: one intrinsic to the device on which the
software is running, and one that is per-Page and can be controlled via API calls. This
patch names the former "deviceScaleFactor" and the latter "pageScaleFactor", and makes the
code use those names. It should introduce no behavior changes.
Fixes <http://webkit.org/b/55787> WebKit uses multiple conflicting names to refer to the
device scale factor
Reviewed by Simon Fraser.
* Misc/WebNSControlExtras.m:
(-[NSControl sizeToFitAndAdjustWindowHeight]): Updated this function to use more modern
AppKit scale factor terminology. (This is unrelated to the rest of the patch.)
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
2011-08-13 Dan Bernstein <mitz@apple.com>
Changed the value of WebKitShowsToolTipOverTruncatedTextPreferenceKey to match the naming everywhere else.
Reviewed by Joseph Pecoraro.
* WebView/WebPreferenceKeysPrivate.h:
2011-08-13 Sam Weinig <sam@webkit.org>
Remove unused variables from WebView/WebFullScreenController.h
https://bugs.webkit.org/show_bug.cgi?id=66194
Reviewed by Dan Bernstein.
* WebView/WebFullScreenController.h:
Remove a few variables which were not used.
2011-08-12 Dan Bernstein <mitz@apple.com>
Add an option to automatically show tooltips (with the full text) over truncated text
https://bugs.webkit.org/show_bug.cgi?id=66178
Reviewed by Simon Fraser.
* WebView/WebPreferenceKeysPrivate.h: Defined a preference key.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]): Added a default value of NO for the
ShowsToolTipOverTruncatedText preference.
(-[WebPreferences showsToolTipOverTruncatedText]): Added this getter.
(-[WebPreferences setShowsToolTipOverTruncatedText:]): Added this setter.
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]): Added call to Settings::setShowsToolTipOverTruncatedText().
2011-08-12 Sam Weinig <sam@webkit.org>
Use __builtin_trap() for CRASH when building with clang
https://bugs.webkit.org/show_bug.cgi?id=66152
Reviewed by Anders Carlsson.
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView setAttributeKeys:andValues:]):
(-[WebBaseNetscapePluginView handleMouseMoved:]):
(-[WebBaseNetscapePluginView handleMouseEntered:]):
(-[WebBaseNetscapePluginView handleMouseExited:]):
(-[WebBaseNetscapePluginView focusChanged]):
(-[WebBaseNetscapePluginView windowFocusChanged:]):
(-[WebBaseNetscapePluginView createPlugin]):
(-[WebBaseNetscapePluginView loadStream]):
(-[WebBaseNetscapePluginView shouldStop]):
(-[WebBaseNetscapePluginView destroyPlugin]):
(-[WebBaseNetscapePluginView updateAndSetWindow]):
(-[WebBaseNetscapePluginView sendModifierEventWithKeyCode:character:]):
(-[WebBaseNetscapePluginView pluginLayer]):
(-[WebBaseNetscapePluginView getFormValue:]):
Remove the ASSERT_NOT_REACHED from the base class methods. They were not
adding much value and were getting in the way of making the static analyzer
work. A better way to do this would be to use a formal protocol.
2011-08-12 Mark Rowe <mrowe@apple.com>
Be more forward-looking in the choice of compiler.
Rubber-stamped by Jon Honeycutt.
* Configurations/CompilerVersion.xcconfig:
2011-08-10 David Hyatt <hyatt@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=66004
Removing the CSS Regions and Exclusions ifdefs.
Reviewed by Adam Roben.
* Configurations/FeatureDefines.xcconfig:
2011-08-09 Mark Hahnenberg <mhahnenberg@apple.com>
Add ParentClass typedef in all JSC classes
https://bugs.webkit.org/show_bug.cgi?id=65731
Reviewed by Oliver Hunt.
Just added the Base typedefs in all the classes that are a subclass of JSCell
to point at their parent classes. This is a change to support future changes to the way
constructors and destructors are implemented in JS objects, among other things.
* Plugins/Hosted/ProxyInstance.mm:
* Plugins/Hosted/ProxyRuntimeObject.h:
2011-08-08 Chris Marrin <cmarrin@apple.com>
Logic to compute visible display rect in GraphicsLayerCA::syncCompositingState
https://bugs.webkit.org/show_bug.cgi?id=65708
Supply initial display rects for the full-screen case
Reviewed by Simon Fraser.
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController enterFullscreen:]):
(-[WebFullScreenController exitFullscreen]):
2011-08-06 Joseph Pecoraro <joepeck@webkit.org>
Potential Leaks - RetainPtr<> over retaining Create'd objects
https://bugs.webkit.org/show_bug.cgi?id=65806
Reviewed by Darin Adler.
Fix a possible leak by adopting an allocation instead of retaining it.
* WebView/WebView.mm:
(-[WebView previousValidKeyView]):
2011-08-05 Anders Carlsson <andersca@apple.com>
Remove PluginHalter
https://bugs.webkit.org/show_bug.cgi?id=65729
Reviewed by Darin Adler.
Remove plug-in halter and associated classes.
* Plugins/WebBaseNetscapePluginView.h:
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:WebCore::]):
(-[WebBaseNetscapePluginView start]):
(-[WebBaseNetscapePluginView stop]):
* WebCoreSupport/WebPluginHalterClient.h: Removed.
* WebCoreSupport/WebPluginHalterClient.mm: Removed.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
(-[WebView _preferencesChanged:]):
* WebView/WebViewPrivate.h:
2011-08-04 Mark Rowe <mrowe@apple.com>
Future-proof Xcode configuration settings.
* Configurations/Base.xcconfig:
* Configurations/DebugRelease.xcconfig:
* Configurations/Version.xcconfig:
* Configurations/WebKit.xcconfig:
2011-08-03 Kent Tamura <tkent@chromium.org>
Fix incorrect checks for HTMLMediaElement
https://bugs.webkit.org/show_bug.cgi?id=65590
Reviewed by Dimitri Glazkov.
<video> and <audio> can be an HTMLElement instance instead of
HTMLMediaElement if MediaPlayer::isAvailable() returns false or
the media feature is disabled at runtime.
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController _isAnyMoviePlaying]):
2011-08-03 Mark Rowe <mrowe@apple.com>
Bring some order to FeatureDefines.xcconfig to make it easier to follow.
Reviewed by Sam Weinig.
* Configurations/FeatureDefines.xcconfig:
2011-08-03 Mark Rowe <mrowe@apple.com>
Clean up FeatureDefines.xcconfig to remove some unnecessary conditional settings
Reviewed by Dave Kilzer.
* Configurations/FeatureDefines.xcconfig:
2011-08-03 Joseph Pecoraro <joepeck@webkit.org>
Web Inspector: Remove InspectorFrontendHost load/saveSessionSetting
https://bugs.webkit.org/show_bug.cgi?id=65582
Reviewed by Pavel Feldman.
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
2011-08-03 Pavel Feldman <pfeldman@google.com>
Web Inspector: [Timeline] Hover on paint events and see rect outline around that area.
https://bugs.webkit.org/show_bug.cgi?id=65510
Reviewed by Yury Semikhatsky.
* WebInspector/WebNodeHighlightView.mm:
(-[WebNodeHighlightView drawRect:]):
2011-08-03 Pavel Feldman <pfeldman@chromium.org>
Web Inspector: remove Node parameter from the InspectorClient::highlight
https://bugs.webkit.org/show_bug.cgi?id=65549
Reviewed by Yury Semikhatsky.
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorClient::highlight):
* WebInspector/WebNodeHighlighter.h:
* WebInspector/WebNodeHighlighter.mm:
(-[WebNodeHighlighter highlight]):
2011-07-30 Patrick Gansterer <paroga@webkit.org>
Remove inclusion of MainThread.h from Threading.h
https://bugs.webkit.org/show_bug.cgi?id=65081
Reviewed by Darin Adler.
Add missing include statements for MainThread.
* Carbon/CarbonWindowAdapter.mm:
* History/WebBackForwardList.mm:
* History/WebHistoryItem.mm:
* Misc/WebElementDictionary.mm:
* Misc/WebIconDatabase.mm:
* Misc/WebLocalizableStrings.mm:
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
* Plugins/WebBaseNetscapePluginView.mm:
* Plugins/WebBasePluginPackage.mm:
* Plugins/WebNetscapePluginView.mm:
* WebCoreSupport/WebEditorClient.mm:
* WebCoreSupport/WebFrameLoaderClient.mm:
* WebView/WebArchive.mm:
* WebView/WebDataSource.mm:
* WebView/WebHTMLView.mm:
* WebView/WebResource.mm:
* WebView/WebTextIterator.mm:
* WebView/WebView.mm:
* WebView/WebViewData.mm:
2011-07-28 Dan Bernstein <mitz@apple.com>
<rdar://problem/9589433> Displaying Japanese dictionary contents in vertical orientation takes a couple of seconds
Reviewed by Darin Adler.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Initialize wkGetVerticalGlyphsForCharacters.
2011-07-28 Brady Eidson <beidson@apple.com>
<rdar://problem/9714337> and https://bugs.webkit.org/show_bug.cgi?id=65306
WebKitInitializeStorageIfNecessary() can take awhile performing i/o, isn't necessary for every WebView
Reviewed by Maciej Stachowiak.
* Storage/WebStorageManager.mm:
(WebKitInitializeStorageIfNecessary): Pass the client along in initializeTracker().
2011-07-27 Mark Hahnenberg <mhahnenberg@apple.com>
Remove operator new from JSCell
https://bugs.webkit.org/show_bug.cgi?id=64999
Reviewed by Oliver Hunt.
Removed the implementation of operator new in JSCell, so any further uses
will not successfully link. Also removed any remaining uses of operator new.
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::newRuntimeObject):
(WebKit::ProxyRuntimeMethod::create):
(WebKit::ProxyRuntimeMethod::ProxyRuntimeMethod):
(WebKit::ProxyInstance::getMethod):
* Plugins/Hosted/ProxyRuntimeObject.h:
(WebKit::ProxyRuntimeObject::create):
* WebView/WebScriptDebugDelegate.mm:
(-[WebScriptCallFrame scopeChain]):
2011-07-26 Dan Bernstein <mitz@apple.com>
<rdar://problem/9842889> Add a generic pictograph font family
https://bugs.webkit.org/show_bug.cgi?id=65197
Reviewed by Anders Carlsson.
* WebView/WebPreferenceKeysPrivate.h: Added WebKitPictographFontPreferenceKey.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]): Set the default pictograph font family to
"Apple Color Emoji".
(-[WebPreferences pictographFontFamily]): Added this getter.
(-[WebPreferences setPictographFontFamily:]): Added this setter.
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]): Pass the preference through to WebCore.
2011-07-25 Ian Henderson <ianh@apple.com>
WebFrame should have a method to determine its visual emptiness
https://bugs.webkit.org/show_bug.cgi?id=64223
Reviewed by Dan Bernstein.
* WebView/WebFrame.mm:
(-[WebFrame _isVisuallyNonEmpty]): Pipe the isVisuallyNonEmpty method
through WebKit.
* WebView/WebFramePrivate.h:
2011-07-19 Leo Yang <leoyang.webkit@gmail.com>
SVG: Missing implementation of <altGlyphDef>, <altGlyphItem> and <glyphRef>
https://bugs.webkit.org/show_bug.cgi?id=60850
Reviewed by Nikolas Zimmermann.
SVG spec: http://www.w3.org/TR/SVG/text.html#AlternateGlyphDefinitions.
This patch is to implement SVG <altGlyphDef>, <altGlyphItem> and <glyphRef>
elements for alternative glyph features.
* MigrateHeaders.make:
2011-07-18 Andy Estes <aestes@apple.com>
Solar Walk app-specific hack accidentally strips stylesheets from the document.
https://bugs.webkit.org/show_bug.cgi?id=64777
Reviewed by Adam Barth.
Solar Walk uses a self-closed title tag in its documents ("<title />").
The HTML5 parser does not recognize this as a valid self-closing tag,
so it treats the remainder of the document as title text.
We work around this in WebKit by injecting a script that calls
document.write() on the contents of document.title, thereby restoring
the contents of the document. Unfortunately this overwrote several
<style> tags that existed before the <title>, thereby causing the
document to not have the intended styling.
Fix this by having the injected script concatenate document.title to
the document instead of overwriting it during document.write(). We can
also take the opportunity to remove document.title since it does not
contain useful information.
* Misc/SolarWalkQuirksUserScript.js:
2011-07-18 Dean Jackson <dino@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=64742
Expose WebPreferences for media playback requiring user gestures and inline playback
Reviewed by Simon Fraser.
Two new WebPreferences: MediaPlaybackRequiresUserGesture and
MediaPlaybackAllowsInline.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences mediaPlaybackRequiresUserGesture]):
(-[WebPreferences setMediaPlaybackRequiresUserGesture:]):
(-[WebPreferences mediaPlaybackAllowsInline]):
(-[WebPreferences setMediaPlaybackAllowsInline:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2011-07-18 Pratik Solanki <psolanki@apple.com>
Part of https://bugs.webkit.org/show_bug.cgi?id=63674
Get webkit to compile with USE(CFNETWORK) enabled on Mac
Reviewed by David Kilzer.
Create an NSURLDownload from the CF objects that we have.
* Misc/WebDownload.mm:
(-[WebDownload _initWithLoadingCFURLConnection:request:response:delegate:proxy:]):
* Misc/WebDownloadInternal.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::download):
2011-07-15 Pratik Solanki <psolanki@apple.com>
Part of https://bugs.webkit.org/show_bug.cgi?id=63674
Get webkit to compile with USE(CFNETWORK) enabled on Mac
Reviewed by David Kilzer.
New WebKitSystemInterface functions for CFNetwork-based loader.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2011-07-15 Tim Horton <timothy_horton@apple.com>
Overlay scrollbars in overflow areas no longer pulse when revealed
https://bugs.webkit.org/show_bug.cgi?id=64606
<rdar://problem/9390674>
Reviewed by Simon Fraser.
Ensure that the state of the scrollbar implementation is kept in sync
with WebCore's internal representation. Previously, we synchronized them
at paint time, causing pulsing to be skipped due to the scrollbars being
disabled.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2011-07-15 Andy Estes <aestes@apple.com>
Rename applicationIsSolarWalk() to applicationIsSolarWalkMac().
https://bugs.webkit.org/show_bug.cgi?id=64641
Reviewed by Brian Weinstein.
* WebView/WebView.mm:
(needsSolarWalkQuirksScript): Call applicationIsSolarWalkMac().
2011-07-15 Dan Bernstein <mitz@apple.com>
REGRESSION: Mouse cursor doesn’t hide when full screen video HUD hides
https://bugs.webkit.org/show_bug.cgi?id=64615
Reviewed by Anders Carlsson.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::setCursorHiddenUntilMouseMoves): Added. Calls
+[NSCursor setHiddenUntilMouseMoves:].
2011-07-14 Gavin Barraclough <barraclough@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=64250
Global strict mode function leaking global object as "this".
Reviewed by Oliver Hunt.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::invoke):
(WebKit::NetscapePluginInstanceProxy::invokeDefault):
- Change call to pass DOM Window shell, instead of the global varaible object.
2011-07-13 Joseph Pecoraro <joepeck@webkit.org>
Improve names of some ApplicationCacheStorage accessor methods
https://bugs.webkit.org/show_bug.cgi?id=64433
Reviewed by Alexey Proskuryakov.
* WebCoreSupport/WebApplicationCacheQuotaManager.mm:
(-[WebApplicationCacheQuotaManager usage]):
(-[WebApplicationCacheQuotaManager quota]):
Renamed methods.
2011-07-12 Joseph Pecoraro <joepeck@webkit.org>
ApplicationCache update should not immediately fail when reaching per-origin quota
https://bugs.webkit.org/show_bug.cgi?id=64177
Reviewed by Alexey Proskuryakov.
* WebView/WebUIDelegatePrivate.h:
* DefaultDelegates/WebDefaultUIDelegate.m:
(-[WebDefaultUIDelegate webView:exceededApplicationCacheOriginQuotaForSecurityOrigin:spaceNeeded:]):
Update the delegate to include a space needed parameter.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::reachedApplicationCacheOriginQuota):
Call the delegate with the new space needed information.
2011-07-12 Adam Roben <aroben@apple.com>
Delete some redundant code in WebHTMLView
This code had no user-visible effect, as we were just duplicating work that AppKit would do
for us at a slightly different time.
Fixes <http://webkit.org/b/64390> WebHTMLView sets its root layer's transform unnecessarily
Reviewed by Simon Fraser.
* WebView/WebHTMLView.mm:
(-[WebHTMLView viewDidMoveToWindow]):
(-[WebHTMLView attachRootLayer:]):
Don't bother setting the root layer's transform to account for the scale factor. AppKit
takes care of this for us nowadays.
2011-07-10 Kenichi Ishibashi <bashi@chromium.org>
Let plugins participate in form submission
https://bugs.webkit.org/show_bug.cgi?id=13061
Adds methods to get form value from NPAPI plugins.
Reviewed by Anders Carlsson.
* Plugins/Hosted/WebHostedNetscapePluginView.h:
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView getFormValue:]): Added.
* Plugins/WebBaseNetscapePluginView.h:
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView getFormValue:]): Added.
* Plugins/WebNetscapePluginPackage.h:
* Plugins/WebNetscapePluginPackage.mm:
(-[WebNetscapePluginPackage browserFuncs]): Added.
* Plugins/WebNetscapePluginView.h:
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView getFormValue:]): Added.
* WebCoreSupport/WebFrameLoaderClient.mm:
(NetscapePluginWidget::getFormValue): Added.
2011-07-04 Dan Bernstein <mitz@apple.com>
Moved handling of frame size changes into its own method.
Reviewed by Oliver Hunt.
* WebView/WebFrameView.mm:
(-[WebFrameView _frameSizeChanged]): Added. Moved code here...
(-[WebFrameView setFrameSize:]): ...from here.
* WebView/WebFrameViewInternal.h:
2011-07-01 Adele Peterson <adele@apple.com>
Reviewed by Darin Adler.
WebKit part of fix for https://bugs.webkit.org/show_bug.cgi?id=63851
<rdar://problem/8981062> Crash when loading a document in an editable WebView that has a subframe with an unstyled body
* WebView/WebHTMLRepresentation.mm: (-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
Only call applyEditingStyleToBodyElement for the main frame. There's no need to apply break-word,
space, and after-white-space properties to subframes in the editable document.
2011-07-01 Andy Estes <aestes@apple.com>
Reviewed by Mark Rowe.
Simplify MailQuirksUserScript.js
https://bugs.webkit.org/show_bug.cgi?id=63800
MailQuirksUserScript.js is injected into WebViews in Mail.app on
Leopard to resolve an incompatibility between it and the HTML5 parser.
It did so by taking all nodes in the document between <html> and <body>
and moving them to be children of <body>. This maintains Mail.app's
assumption that document.firstChild.firstChild == document.body.
While this script fixed a specific issue with the Signature panel in
Mail.app, it caused regressions in other WebViews. Since the issue with
the Signature panel is with the empty <head> node implicitly created by
the parser, we can simplify this script by removing this implicit
<head> in the case it has no attributes and no children. This fixes the
Signature panel without affecting other WebViews that have non-trivial
<head> nodes.
* Misc/MailQuirksUserScript.js: If <head> exists but has no attributes
and no children, remove it.
2011-06-30 Dan Bernstein <mitz@apple.com>
Reviewed by Adele Peterson.
Add +[WebView _allowsRoundingHacks]
https://bugs.webkit.org/show_bug.cgi?id=63734
* WebView/WebView.mm:
(+[WebView _allowsRoundingHacks]): Added this accessor.
* WebView/WebViewPrivate.h:
2011-06-29 Darin Adler <darin@apple.com>
Reviewed by Dan Bernstein.
[Mac] Use system cursors instead of custom bitmaps where possible
https://bugs.webkit.org/show_bug.cgi?id=63679
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Added WKCursor.
2011-06-28 Ilya Sherman <isherman@chromium.org>
Reviewed by Adam Barth.
form.autocomplete="off" does not work
https://bugs.webkit.org/show_bug.cgi?id=35823
* WebView/WebHTMLRepresentation.mm:
(-[WebHTMLRepresentation elementDoesAutoComplete:]): Update callsite.
2011-06-26 Mark Rowe <mrowe@apple.com>
Reviewed by Dan Bernstein.
Use a separate file name for Lion's WebKitSystemInterface.
* Configurations/DebugRelease.xcconfig:
2011-06-24 Dan Bernstein <mitz@apple.com>
Reviewed by Anders Carlsson.
Add an option to enable legacy rounding hacks
https://bugs.webkit.org/show_bug.cgi?id=63363
* Misc/WebKitNSStringExtras.mm:
(-[NSString _web_drawAtPoint:font:textColor:allowingFontSmoothing:]):
Disabled rounding hacks.
(-[NSString _web_widthWithFont:]): Ditto.
* WebView/WebView.mm:
(+[WebView _setAllowsRoundingHacks:]): Added this setter.
* WebView/WebViewPrivate.h:
2011-06-24 Dominic Cooney <dominicc@chromium.org>
Reviewed by Dimitri Glazkov.
Convert shadow DOM-related tests to use window.internals
https://bugs.webkit.org/show_bug.cgi?id=61671
Remove shadow DOM-related methods from Mac API. These are not
required any more.
* DOM/WebDOMOperations.mm:
* DOM/WebDOMOperationsPrivate.h:
2011-06-24 Yuta Kitamura <yutak@chromium.org>
Reviewed by Adam Barth.
WebSocket: Add run-time flag for new HyBi protocol
https://bugs.webkit.org/show_bug.cgi?id=60348
Make a new flag (Setting::m_useHixie76WebSocketProtocol)
switchable from WebView and WebPreferences.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences setHixie76WebSocketProtocolEnabled:]):
(-[WebPreferences isHixie76WebSocketProtocolEnabled]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2011-06-22 Sam Weinig <sam@webkit.org>
Roll out r89469 (Add preference for setting the html parser depth limit)
The preference is not needed at this time, so there is no reason to expose it.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2011-06-22 Sam Weinig <sam@webkit.org>
Reviewed by Adam Barth.
Add preference for setting the html parser depth limit
https://bugs.webkit.org/show_bug.cgi?id=63163
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences setMaximumHTMLParserDOMTreeDepth:]):
(-[WebPreferences maximumHTMLParserDOMTreeDepth]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
Add private preference for setting the parser depth limit.
2011-06-22 Ryosuke Niwa <rniwa@webkit.org>
Reviewed by Darin Adler.
Make instantiation of legacy editing position more explicit
https://bugs.webkit.org/show_bug.cgi?id=63037
Create new positions since we can't create a legacy editing position outside of WebCore anymore.
* WebView/WebFrame.mm:
(-[WebFrame _smartDeleteRangeForProposedRange:]): Calls createLegacyEditingPosition.
(-[WebFrame _smartInsertForString:replacingRange:beforeString:afterString:]): Ditto.
2011-06-20 Dimitri Glazkov <dglazkov@chromium.org>
Reviewed by Kent Tamura.
FileChooser should be only created when we need to choose files.
https://bugs.webkit.org/show_bug.cgi?id=63039
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::runOpenPanel): Changed to use settings.
2011-06-21 MORITA Hajime <morrita@google.com>
Unreviewed, rolling out r89401 and r89403.
http://trac.webkit.org/changeset/89401
http://trac.webkit.org/changeset/89403
https://bugs.webkit.org/show_bug.cgi?id=62970
Breaks mac build and mistakenly enables the spellcheck API
* Configurations/FeatureDefines.xcconfig:
2011-06-20 MORITA Hajime <morrita@google.com>
Reviewed by Kent Tamura.
Spellcheck API should be build-able.
https://bugs.webkit.org/show_bug.cgi?id=62970
No new tests, changing only build related files
* Configurations/FeatureDefines.xcconfig:
2011-06-21 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r89354.
http://trac.webkit.org/changeset/89354
https://bugs.webkit.org/show_bug.cgi?id=63099
Broke tests on Mac (Requested by rniwa on #webkit).
* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController destroyInspectorView:]):
* WebInspector/WebInspector.mm:
(-[WebInspector show:]):
(-[WebInspector showConsole:]):
(-[WebInspector isDebuggingJavaScript]):
(-[WebInspector toggleDebuggingJavaScript:]):
(-[WebInspector startDebuggingJavaScript:]):
(-[WebInspector stopDebuggingJavaScript:]):
(-[WebInspector isProfilingJavaScript]):
(-[WebInspector toggleProfilingJavaScript:]):
(-[WebInspector startProfilingJavaScript:]):
(-[WebInspector stopProfilingJavaScript:]):
(-[WebInspector isJavaScriptProfilingEnabled]):
(-[WebInspector setJavaScriptProfilingEnabled:]):
(-[WebInspector isTimelineProfilingEnabled]):
(-[WebInspector setTimelineProfilingEnabled:]):
(-[WebInspector setFrontend:]):
(-[WebInspector showWindow:]):
* WebInspector/WebInspectorFrontend.h:
* WebInspector/WebInspectorFrontend.mm:
* WebInspector/WebInspectorPrivate.h:
2011-06-20 Pavel Feldman <pfeldman@chromium.org>
Reviewed by Yury Semikhatsky.
Web Inspector: introduce InspectorFrontendAPI for actions initiated from the application menu.
https://bugs.webkit.org/show_bug.cgi?id=62985
Both: inspector protocol and WebCore/InspectorController have a number of unnecessary
methods for plumbing the menu action handlers through the WebKit and WebCore.
I intend to remove this menu support from the protocol and WebCore/InspectorController API.
I am starting with exposing the new front-end API in the WebCore and using it in the WebKit/mac port.
WebKit/win and WebKit2 to follow.
* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController destroyInspectorView:]):
* WebInspector/WebInspector.mm:
(-[WebInspector showWindow]):
(-[WebInspector show:]):
(-[WebInspector showConsole:]):
(-[WebInspector isDebuggingJavaScript]):
(-[WebInspector toggleDebuggingJavaScript:]):
(-[WebInspector startDebuggingJavaScript:]):
(-[WebInspector stopDebuggingJavaScript:]):
(-[WebInspector isProfilingJavaScript]):
(-[WebInspector toggleProfilingJavaScript:]):
(-[WebInspector startProfilingJavaScript:]):
(-[WebInspector stopProfilingJavaScript:]):
(-[WebInspector isJavaScriptProfilingEnabled]):
(-[WebInspector setJavaScriptProfilingEnabled:]):
(-[WebInspector isTimelineProfilingEnabled]):
(-[WebInspector setTimelineProfilingEnabled:]):
(-[WebInspector setFrontend:]):
(-[WebInspector releaseFrontend]):
(-[WebInspector showWindow:]):
* WebInspector/WebInspectorFrontend.h:
* WebInspector/WebInspectorFrontend.mm:
(-[WebInspectorFrontend isDebuggingEnabled]):
(-[WebInspectorFrontend setDebuggingEnabled:]):
(-[WebInspectorFrontend isProfilingJavaScript]):
(-[WebInspectorFrontend startProfilingJavaScript]):
(-[WebInspectorFrontend stopProfilingJavaScript]):
(-[WebInspectorFrontend isJavaScriptProfilingEnabled]):
(-[WebInspectorFrontend setJavaScriptProfilingEnabled:]):
(-[WebInspectorFrontend isTimelineProfilingEnabled]):
(-[WebInspectorFrontend setTimelineProfilingEnabled:]):
* WebInspector/WebInspectorPrivate.h:
2011-06-01 Jer Noble <jer.noble@apple.com>
Reviewed by Eric Carlson.
Move Full Screen Controllers into WebCore.
Remove dependency on QTKit from wekitExitFullscreen()
https://bugs.webkit.org/show_bug.cgi?id=61843
WebVideoFullscreenController, WebVideoFullscreenHUDController, and WebWindowAnimation
have been moved into WebCore.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Add support for four WKSI functions in WCSI.
* WebView/WebFullScreenController.mm: Remove unused #include.
* WebView/WebView.mm: Change the include location of
WebVideoFullscreenController.h
2011-06-18 Dimitri Glazkov <dglazkov@chromium.org>
Reviewed by Darin Adler.
Separate concerns of loading file icons and choosing files.
https://bugs.webkit.org/show_bug.cgi?id=62931
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::loadIconForFiles): Renamed.
2011-06-18 Andrew Wellington <andrew@webkit.org>
Reviewed by Alexey Proskuryakov.
https://bugs.webkit.org/show_bug.cgi?id=62843
WebKit Mac API calls didReceiveAuthenticationChallenge instead of
didCancelAuthenticationChallenge
* WebView/WebView.mm:
(-[WebView _cacheResourceLoadDelegateImplementations]):
2011-06-16 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r89026.
http://trac.webkit.org/changeset/89026
https://bugs.webkit.org/show_bug.cgi?id=62804
These patches were likely correct. I'll investigate the
browser_test failures. (Requested by abarth on #webkit).
* WebView/WebVideoFullscreenHUDWindowController.mm:
(-[WebVideoFullscreenHUDWindowController setPlaying:]):
2011-06-16 Vitaly Repeshko <vitalyr@chromium.org>
Unreviewed.
Revert Adam's user gesture patch series r89002, r89005, r89007, r89018
https://bugs.webkit.org/show_bug.cgi?id=62796
The patches broke chromium browser tests.
* WebView/WebVideoFullscreenHUDWindowController.mm:
(-[WebVideoFullscreenHUDWindowController setPlaying:]):
2011-06-16 Adam Barth <abarth@webkit.org>
Reviewed by Eric Seidel.
Remove HTMLVideoElement::processingUserGesture
https://bugs.webkit.org/show_bug.cgi?id=62784
* WebView/WebVideoFullscreenHUDWindowController.mm:
(-[WebVideoFullscreenHUDWindowController setPlaying:]):
2011-06-15 Adam Barth <abarth@webkit.org>
Reviewed by Eric Seidel.
Remove ScriptController::setAllowPopupsFromPlugin
https://bugs.webkit.org/show_bug.cgi?id=62706
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::evaluate):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView sendEvent:isDrawRect:]):
2011-06-15 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/62745> Convert WebNSFileManagerExtras.m to Objective-C++
Reviewed by Joseph Pecoraro.
* Misc/WebNSFileManagerExtras.mm: Renamed from Source/WebKit/mac/Misc/WebNSFileManagerExtras.m.
(-[NSFileManager _webkit_setMetadataURL:referrer:atPath:]):
Added static_cast<MetaDataInfo *>.
2011-06-14 Stephanie Lewis <slewis@apple.com>
Rubber stamped by Oliver Hunt.
<rdar://problem/9511169>
Update order files.
* WebKit.order:
2011-06-13 Kentaro Hara <haraken@google.com>
Reviewed by Alexey Proskuryakov.
Add resizePageRectsKeepingRatio(), which expands/shrinks a page, keeping the ratio of the original page
https://bugs.webkit.org/show_bug.cgi?id=61256
In order to prevent rounding error caused by expanding/shrinking a page
using different calculation here and there, I added a common calculation
method, resizePageRectsKeepingRatio(), which expands/shrinks a page,
keeping the ratio of width and height of the original page.
[WebHTMLView _beginPrintModeWithPageWidth:height:shrinkToFit:]
and [WebHTMLView _beginScreenPaginationModeWithPageSize:shrinkToFit:]
use resizePageRectsKeepingRatio() to expand/shrink a page.
Test: printing/page-count-with-one-word.html
* WebView/WebHTMLView.mm:
(-[WebHTMLView _web_setPrintingModeRecursive]):
(-[WebHTMLView _web_clearPrintingModeRecursive]):
(-[WebHTMLView _web_setPrintingModeRecursiveAndAdjustViewSize]):
(-[WebHTMLView _beginPrintModeWithMinimumPageWidth:height:maximumShrinkRatio:]):
(-[WebHTMLView _beginPrintModeWithPageWidth:height:shrinkToFit:]):
(-[WebHTMLView _endPrintMode]):
(-[WebHTMLView _beginScreenPaginationModeWithPageSize:shrinkToFit:]):
(-[WebHTMLView _endScreenPaginationMode]):
(-[WebHTMLView layoutToMinimumPageWidth:height:maximumShrinkRatio:adjustingViewSize:]):
(-[WebHTMLView layout]):
(-[WebHTMLView _setPrinting:minimumPageLogicalWidth:logicalHeight:maximumShrinkRatio:adjustViewSize:paginateScreenContent:]):
(-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]):
(-[WebHTMLView setPageWidthForPrinting:]):
2011-06-13 Tony Chang <tony@chromium.org>
Reviewed by Dimitri Glazkov.
rename ENABLE_NEW_FLEXBOX to ENABLE_CSS3_FLEXBOX
https://bugs.webkit.org/show_bug.cgi?id=62578
* Configurations/FeatureDefines.xcconfig:
2011-06-13 Tony Chang <tony@chromium.org>
Reviewed by Adam Barth.
rename ENABLE_FLEXBOX to ENABLE_NEW_FLEXBOX
https://bugs.webkit.org/show_bug.cgi?id=62545
* Configurations/FeatureDefines.xcconfig:
2011-06-12 Adam Barth <abarth@webkit.org>
Reviewed by Alexey Proskuryakov.
Rename FrameLoaderClient::interruptForPolicyChangeError to use the past tense
https://bugs.webkit.org/show_bug.cgi?id=62516
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::interruptedForPolicyChangeError):
2011-06-12 Adam Barth <abarth@webkit.org>
Reviewed by Eric Seidel.
Remove FrameLoader::isProcessingUserGesture
https://bugs.webkit.org/show_bug.cgi?id=62519
* WebView/WebView.mm:
(-[WebView _isProcessingUserGesture]):
2011-06-12 Adam Barth <abarth@webkit.org>
Reviewed by Alexey Proskuryakov.
Remove trival "forward-to-client" member functions from FrameLoader
https://bugs.webkit.org/show_bug.cgi?id=62510
* WebCoreSupport/WebFrameNetworkingContext.mm:
(WebFrameNetworkingContext::blockedError):
2011-06-10 Tony Chang <tony@chromium.org>
Reviewed by Ojan Vafai.
add a compile guard ENABLE(FLEXBOX)
https://bugs.webkit.org/show_bug.cgi?id=62049
* Configurations/FeatureDefines.xcconfig:
2011-06-06 Michael Saboff <msaboff@apple.com>
Reviewed by Geoffrey Garen.
Fonts returned by FontCache::getFontDataForCharacters() are never released
https://bugs.webkit.org/show_bug.cgi?id=61875
This change allows fonts allocated as system fallback fonts to be
released. Previously, the reference counts for these fonts grew
without bound. This is implemented as an auto release class that wraps
accesses to the cache for system fallback fonts. All such accesses are
via the method FontCache::getFontDataForCharacters. The new class is
called FontCachePurgePreventer. When such an object exists, it protects
these fonts from deletion.
See more comments for this defect in Source/WebCore/ChangeLog.
* Misc/WebKitNSStringExtras.mm:
(-[NSString _web_drawAtPoint:font:textColor:allowingFontSmoothing:]):
(-[NSString _web_widthWithFont:]):
Wrapped code accessing fallback fonts with local
FontCachePurgePreventer in these methods.
* Misc/WebStringTruncator.mm:
(+[WebStringTruncator centerTruncateString:toWidth:]):
(+[WebStringTruncator centerTruncateString:toWidth:withFont:]):
(+[WebStringTruncator rightTruncateString:toWidth:withFont:]):
(+[WebStringTruncator widthOfString:font:]):
Wrapped code accessing fallback fonts with local
FontCachePurgePreventer in these methods.
2011-06-06 Peter Kasting <pkasting@google.com>
Reviewed by Antonio Gomes.
Remove unnecessary args from scroll functions.
https://bugs.webkit.org/show_bug.cgi?id=61648
* WebView/WebFrame.mm:
(-[WebFrame _scrollDOMRangeToVisible:]):
2011-06-06 Alexandru Chiculita <achicu@adobe.com>
Reviewed by Kent Tamura.
Add ENABLE_CSS_EXCLUSIONS support for build-webkit script
https://bugs.webkit.org/show_bug.cgi?id=61628
* Configurations/FeatureDefines.xcconfig:
2011-06-06 Mihnea Ovidenie <mihnea@adobe.com>
Reviewed by Kent Tamura.
Add ENABLE(CSS_REGIONS) guard for CSS Regions support
https://bugs.webkit.org/show_bug.cgi?id=61631
* Configurations/FeatureDefines.xcconfig:
2011-06-02 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Need a way to install the memory pressure handler without initializing WebKit1
https://bugs.webkit.org/show_bug.cgi?id=61975
Add a WebInstallMemoryPressureHandler function which will install the memory pressure handler.
-[WebView WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:] will do this,
but we'd like to be able to install a memory pressure handler without creating a WebView or even
calling any WebView method since that will call +[WebView initialize].
* WebKit.exp:
* WebView/WebView.mm:
(WebInstallMemoryPressureHandler):
* WebView/WebViewPrivate.h:
2011-05-27 Stephanie Lewis <slewis@apple.com>
Unreviewed.
Fix a typo in the order_file flag.
* Configurations/Base.xcconfig:
2011-05-27 Stephanie Lewis <slewis@apple.com>
Rubber Stamped by Adam Roben.
Update Order Files. Use -order_file flag since it can order more of the binary.
* Configurations/Base.xcconfig:
* WebKit.order:
2011-05-25 Stephanie Lewis <slewis@apple.com>
Reviewed by Brady Eidson.
https://bugs.webkit.org/show_bug.cgi?id=61407
part of <rdar://problem/8675177>
Remove Quicklook pref. Moving it enirely down into WebCore so it can
be calculated only on reloads.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
2011-05-24 Jer Noble <jer.noble@apple.com>
Reviewed by Darin Adler.
Video fails to play on Vimeo
https://bugs.webkit.org/show_bug.cgi?id=61403
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Added support for wkAVAssetResolvedURL and
wkQTMovieResolvedURL.
2011-05-24 Keishi Hattori <keishi@webkit.org>
Reviewed by Kent Tamura.
Disable input color. Add INPUT_COLOR feature flag. Implement input color sanitizer.
https://bugs.webkit.org/show_bug.cgi?id=61273
* Configurations/FeatureDefines.xcconfig: Added INPUT_COLOR feature flag.
2011-05-24 Adam Barth <abarth@webkit.org>
Reviewed by Eric Seidel.
Add FIXME comments about removing FrameLoader::isProcessingUserGesture
https://bugs.webkit.org/show_bug.cgi?id=61395
* WebView/WebView.mm:
(-[WebView _isProcessingUserGesture]):
2011-05-24 Michael Saboff <msaboff@apple.com>
Reviewed by Geoffrey Garen.
Improve handling in WebCore of low memory situations
https://bugs.webkit.org/show_bug.cgi?id=61222
Added call to enable memory pressure handling.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
* WebView/WebViewInternal.h:
2011-05-24 Jay Civelli <jcivelli@chromium.org>
Rubberstamped by David Kilzer.
Updated some files that I forgot in my previous MHTML CL.
* Configurations/FeatureDefines.xcconfig:
2011-05-20 Jeremy Noble <jer.noble@apple.com>
Reviewed by Simon Fraser.
Stack overflow in WebFullScreenController when built on Leopard and run on SnowLeopard.
https://bugs.webkit.org/show_bug.cgi?id=61224
Remove the CATransaction(SnowLeopardConvenience) functions, and replace them with the Leopard
versions of same.
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController windowDidEnterFullscreen:]):
(-[WebFullScreenController enterFullscreen:]):
(-[WebFullScreenController exitFullscreen]):
(-[WebFullscreenWindow setRendererLayer:]):
2011-05-20 Andy Estes <aestes@apple.com>
Reviewed by Darin Adler.
WebView loses firstResponder status when entering full-screen mode.
https://bugs.webkit.org/show_bug.cgi?id=61153
* Misc/WebNSWindowExtras.h:
* Misc/WebNSWindowExtras.m:
(-[NSWindow makeResponder:firstResponderIfDescendantOfView:]): Add a
convenience method to NSWindow that makes the given NSResponder first
responder only if it is a descendant of the given view.
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController windowDidEnterFullscreen:]): If the WebView
was a descendant of the browser window's first responder when entering
full-screen mode, set the full-screen window's first responder to that
same NSResponder.
(-[WebFullScreenController exitFullscreen]): Do the reverse of what is
done in windowDidEnterFullscreen:.
2011-05-20 Enrica Casucci <enrica@apple.com>
Reviewed by David Kilzer.
Add delegate methods about focus and blur to all elements.
https://bugs.webkit.org/show_bug.cgi?id=61218
We want to have delegates for these events for all the elements, not only the form elements.
The patch changes the name of the methods in a way that is not form element specific.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::elementDidFocus):
(WebChromeClient::elementDidBlur):
* WebView/WebUIDelegatePrivate.h:
2011-05-20 Simon Fraser <simon.fraser@apple.com>
Reviewed by Sam Weinig.
numberOfActiveAnimations() can include animations from documents in the page cache
https://bugs.webkit.org/show_bug.cgi?id=53641
Pass the Frame's document as the one to count animations on.
* WebView/WebFrame.mm:
(-[WebFrame _numberOfActiveAnimations]):
2011-05-17 Timothy Hatcher <timothy@apple.com>
Update the the context menu to reflect the system search provider on Mac.
<rdar://problem/9198419>
Reviewed by Sam Weinig.
* DefaultDelegates/WebDefaultContextMenuDelegate.mm:
(-[WebDefaultUIDelegate menuItemWithTag:target:representedObject:]): Use wkCopyDefaultSearchProviderDisplayName to
create the web search context menu title.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Added CopyDefaultSearchProviderDisplayName.
2011-05-16 Emil A Eklund <eae@chromium.org>
Reviewed by Eric Seidel.
Replace docTop/Right/Bottom/Left/Width/Height with documentRect
https://bugs.webkit.org/show_bug.cgi?id=60743
Replace uses of docWidth/Height with documentRect.
* WebView/WebFrame.mm:
(-[WebFrame _computePageRectsWithPrintScaleFactor:pageSize:]):
2011-05-16 Yuzo Fujishima <yuzo@google.com>
Reviewed by Antti Koivisto.
Fix for Bug 43704 - Web font is printed as blank if it is not cached
https://bugs.webkit.org/show_bug.cgi?id=43704
* WebView/WebHTMLView.mm:
(-[WebHTMLView _setPrinting:minimumPageWidth:height:maximumPageWidth:adjustViewSize:paginateScreenContent:]): Use ResourceCacheValidationSuppressor to allow stale resources in printing.
2011-05-16 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/60913> C++ exceptions should not be enabled when building with llvm-gcc-4.2
<rdar://problem/9446430>
Reviewed by Mark Rowe.
* Configurations/Base.xcconfig: Fixed typo.
2011-05-13 Jon Lee <jonlee@apple.com>
Reviewed by Simon Fraser.
Can't horizontally scroll iframes and overflow because wheel events are always accepted
https://bugs.webkit.org/show_bug.cgi?id=60779
* WebCoreSupport/WebChromeClient.h:
(WebChromeClient::numWheelEventHandlersChanged): Default impl of new ChromeClient method
(WebChromeClient::shouldRubberBandInDirection): Default impl of new ChromeClient method
2011-05-13 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
Prune #includes from FrameView.h (Part 2)
https://bugs.webkit.org/show_bug.cgi?id=60748
- Update files that were depending on FrameView.h #including Frame.h or
Page.h.
* WebView/WebClipView.mm:
* WebView/WebHTMLView.mm:
(-[WebHTMLView layoutToMinimumPageWidth:height:maximumPageWidth:adjustingViewSize:]):
2011-05-12 Pratik Solanki <psolanki@apple.com>
Reviewed by Antti Koivisto.
Part of WebCore should use CFNetwork-based loader on Mac
https://bugs.webkit.org/show_bug.cgi?id=51836
Use CFRunLoop when using CFNetwork.
* WebView/WebView.mm:
(-[WebView scheduleInRunLoop:forMode:]):
(-[WebView unscheduleFromRunLoop:forMode:]):
2011-05-12 Pratik Solanki <psolanki@apple.com>
Reviewed by Antti Koivisto.
Part of WebCore should use CFNetwork-based loader on Mac
https://bugs.webkit.org/show_bug.cgi?id=51836
Include AuthenticationCF.h header file.
* Misc/WebDownload.mm:
* Plugins/WebBaseNetscapePluginView.mm:
* WebCoreSupport/WebFrameLoaderClient.mm:
2011-05-12 Adele Peterson <adele@apple.com>
Reviewed by Darin Adler and Adam Barth.
Fix for <rdar://problem/9253454> Solar Walk For Mac: Info window is blank (HTML5 parser)
https://bugs.webkit.org/show_bug.cgi?id=60685
Solar Walk uses a self closing title tag, so to match the behavior of the old parser,
we use a UserScript to write the contents of the title element to the end of the document so it can be re-parsed.
* Misc/SolarWalkQuirksUserScript.js: Added.
* WebView/WebView.mm:
(needsSolarWalkQuirksScript):
(leakSolarWalkQuirksUserScriptContents):
(-[WebView _injectSolarWalkQuirksScript]):
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
2011-05-12 Jia Pu <jpu@apple.com>
Reviewed by Darin Adler.
Regression caused by changeset 86281
https://bugs.webkit.org/show_bug.cgi?id=60712
<rdar://problem/9427970>
Removed the condition variable. [NSSpellChecker dismissCorrectionIndicatorForView:] is blocking.
So handleAcceptedReplacement() triggered by dismissInternal() will return before dismissInternal()
returns. So we don't need to use the condition to coordinate between these two function. In fact,
all callbacks are delivered on main thread. We don't really need any locking here.
Since now we don't have distinction between dismiss() and dismissSoon(). dismissSoon() has
been removed.
* WebCoreSupport/CorrectionPanel.h:
* WebCoreSupport/CorrectionPanel.mm:
(CorrectionPanel::CorrectionPanel):
(CorrectionPanel::show):
(CorrectionPanel::dismiss):
(CorrectionPanel::dismissInternal):
(CorrectionPanel::handleAcceptedReplacement):
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::dismissCorrectionPanelSoon):
2011-05-12 Patrick Gansterer <paroga@webkit.org>
Reviewed by Adam Barth.
Enable OwnPtr strict mode in PluginHalter
https://bugs.webkit.org/show_bug.cgi?id=60681
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
2011-05-12 Nikolas Zimmermann <nzimmermann@rim.com>
Reviewed by Darin Adler.
String operator+ reallocates unnecessarily when concatting > 2 strings
https://bugs.webkit.org/show_bug.cgi?id=58420
Provide a faster String append operator. See Source/JavaScriptCore/ChangeLog for details.
* WebView/WebFrame.mm: Explicitely cast to Strings first, so operator NSString*() can be invoked.
(-[WebFrame _stringWithDocumentTypeStringAndMarkupString:]):
2011-05-10 Tony Gentilcore <tonyg@chromium.org>
Reviewed by Darin Adler.
Perform some forward declarations suggested by include-what-you-use
https://bugs.webkit.org/show_bug.cgi?id=60545
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
* WebView/WebFrame.mm:
2011-05-11 Jia Pu <jpu@apple.com>
Reviewed by Darin Adler.
CorrectionPanel sometimes hangs in dismissSoon().
https://bugs.webkit.org/show_bug.cgi?id=60599
<rdar://problem/9313628>
Make sure dismissSoon() won't wait indefinitely if handleAcceptedReplacement() sets m_resultForSynchronousDismissal
to nil. Added a designated variable m_isDismissing, instead of piggy-backing m_resultForSynchronousDismissal,
for condition checking.
* WebCoreSupport/CorrectionPanel.h:
* WebCoreSupport/CorrectionPanel.mm:
(CorrectionPanel::CorrectionPanel):
(CorrectionPanel::show):
(CorrectionPanel::dismissSoon):
(CorrectionPanel::dismissInternal):
(CorrectionPanel::handleAcceptedReplacement):
2011-05-10 Anton D'Auria <adauria@apple.com>
Reviewed by David Levin.
Add ApplicationCache API to get disk usage per origin
https://bugs.webkit.org/show_bug.cgi?id=57127
Added Mac port API.
* WebCoreSupport/WebApplicationCache.h:
* WebCoreSupport/WebApplicationCache.mm:
(+[WebApplicationCache diskUsageForOrigin:]):
2011-05-10 Anton D'Auria <adauria@apple.com>
Reviewed by Alexey Proskuryakov.
Add ApplicationCache API to get disk usage per origin
https://bugs.webkit.org/show_bug.cgi?id=57127
Added Mac port API.
* WebCoreSupport/WebApplicationCache.h:
* WebCoreSupport/WebApplicationCache.mm:
(+[WebApplicationCache diskUsageForOrigin:]):
2011-05-10 Beth Dakin <bdakin@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=60582
Crash switching overlay/non-overlay scrollbar preference still possible
-and corresponding-
<rdar://problem/9323983>
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2011-05-09 Jeremy Noble <jer.noble@apple.com>
Reviewed by Darin Adler.
Command-~/Exposé to another window while <video> is in full screen, breaks Safari, eventually leading to crash
https://bugs.webkit.org/show_bug.cgi?id=60496
When animating into and out of full screen, order out and back in the original webView window,
disabling animations when necessary. The exitFullscreen method was targeting the wrong window,
as the webView is hosted in the full screen window when we ask for it's parent window.
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController windowDidEnterFullscreen:]):
(-[WebFullScreenController exitFullscreen]):
2011-05-04 Philippe Normand <pnormand@igalia.com>
Reviewed by Dimitri Glazkov.
Implement LayoutTestController::pseudoShadowId()
https://bugs.webkit.org/show_bug.cgi?id=60034
* DOM/WebDOMOperations.mm:
(-[DOMElement _shadowPseudoId]):
* DOM/WebDOMOperationsPrivate.h:
2011-05-05 Dan Bernstein <mitz@apple.com>
Reviewed by Simon Fraser.
WebKit part of <rdar://problem/9155590> Broken animation in iAd producer
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Initialize wkExecutableWasLinkedOnOrBeforeSnowLeopard.
2011-05-05 Ryosuke Niwa <rniwa@webkit.org>
Reviewed by Eric Seidel.
Rename SelectionController to FrameSelection
https://bugs.webkit.org/show_bug.cgi?id=60234
* WebView/WebFrame.mm:
(-[WebFrame _rangeByAlteringCurrentSelection:FrameSelection::direction:granularity:]):
* WebView/WebFrameInternal.h:
* WebView/WebHTMLView.mm:
* WebView/WebTextCompletionController.mm:
(-[WebTextCompletionController doCompletion]):
* WebView/WebView.mm:
2011-05-04 Cris Neckar <cdn@chromium.org>
Reviewed by Adam Barth.
Expose WebView directly through ChromeClient.
https://bugs.webkit.org/show_bug.cgi?id=49902
* WebCoreSupport/WebChromeClient.h:
(WebChromeClient::webView):
* WebView/WebFrame.mm:
(kit):
2011-05-04 Tao Bai <michaelbai@chromium.org>
Reviewed by David Kilzer.
Populate touch-icon url to FrameLoaderClient
https://bugs.webkit.org/show_bug.cgi?id=59143
Respect the interface change in FrameLoaderClient.
* Configurations/FeatureDefines.xcconfig:
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchDidChangeIcons):
2011-05-03 Julien Chaffraix <jchaffraix@codeaurora.org>
Reviewed by Dimitri Glazkov.
Element:shadowRoot & Element::ensureShadowRoot should return ShadowRoot*
https://bugs.webkit.org/show_bug.cgi?id=58703
* DOM/WebDOMOperations.mm: Added #include for ShadowRoot.h.
2011-05-02 Adam Roben <aroben@apple.com>
Take advantage of implicit conversion from nullptr_t to PassOwnPtr
Fixes <http://webkit.org/b/59964> Implicit conversion from std::nullptr_t to PassOwnPtr
doesn't work, but should
Reviewed by Adam Barth.
* History/WebHistory.mm:
* Plugins/WebNetscapePluginEventHandler.mm:
* WebView/WebView.mm:
2011-05-02 Brady Eidson <beidson@apple.com>
Reviewed by Anders Carlsson.
<rdar://problem/9340945> and https://bugs.webkit.org/show_bug.cgi?id=59973
In Aperture, a WebView might be dealloc'ed before it finishes loading.
* WebView/WebView.mm:
(needsSelfRetainWhileLoadingQuirk):
(-[WebView _didStartProvisionalLoadForFrame:]): If we need the quirk, retain self.
(-[WebView _didFinishLoadForFrame:]): If we need the quirk, release self on a delay.
(-[WebView _didFailLoadWithError:forFrame:]): Ditto.
(-[WebView _didFailProvisionalLoadWithError:forFrame:]): Ditto.
2011-05-02 Adam Barth <abarth@webkit.org>
Reviewed by David Levin.
PLATFORM(MAC) should (almost!) build with strict PassOwnPtr
https://bugs.webkit.org/show_bug.cgi?id=59924
* History/WebHistory.mm:
(-[WebHistory _visitedURL:withTitle:method:wasFailure:increaseVisitCount:]):
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:WebCore::]):
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::savePlatformDataToCachedFrame):
* WebView/WebView.mm:
(-[WebView _injectMailQuirksScript]):
(-[WebView _injectOutlookQuirksScript]):
(toStringVector):
2011-05-02 Sam Weinig <sam@webkit.org>
Reviewed by Adam Barth.
Prune some #includes from DOMWindow.h
https://bugs.webkit.org/show_bug.cgi?id=59907
* Plugins/WebBaseNetscapePluginView.mm:
* WebView/WebFrame.mm:
Add now missing SecurityOrigin.h #includes.
2011-05-01 Ryosuke Niwa <rniwa@webkit.org>
Reviewed by Eric Seidel.
Get rid of versions of sendContextMenuEvent and eventMayStartDrag that takes NSEvent
https://bugs.webkit.org/show_bug.cgi?id=59837
Call sendContextMenuEvent and eventMayStartDrag with PlatformMouseEvent instead of NSEvent.
* WebView/WebHTMLView.mm:
(-[WebHTMLView menuForEvent:]):
(-[WebHTMLView acceptsFirstMouse:]):
(-[WebHTMLView shouldDelayWindowOrderingForEvent:]):
2011-05-01 Ryosuke Niwa <rniwa@webkit.org>
Reviewed by Eric Seidel.
Move currentKeyboardEvent from EventHandlerMac.mm to WebHTMLView.mm
https://bugs.webkit.org/show_bug.cgi?id=59835
Moved currentKeyboardEvent.
* WebView/WebHTMLView.mm:
(currentKeyboardEvent):
(-[WebHTMLView becomeFirstResponder]):
2011-04-29 Dean Jackson <dino@apple.com>
Reviewed by Simon Fraser.
Add ENABLE macro for WebKitAnimation
https://bugs.webkit.org/show_bug.cgi?id=59729
Add new feature to toggle WebKit Animation API.
* Configurations/FeatureDefines.xcconfig:
2011-04-28 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/59758> Fix static analyzer warnings for missing assignment to 'self' in -init methods
Reviewed by Anders Carlsson.
* History/WebHistory.mm:
(-[WebHistoryPrivate init]):
* Misc/WebElementDictionary.mm:
(-[WebElementDictionary initWithHitTestResult:]):
* Misc/WebIconDatabase.mm:
(-[WebIconDatabase init]):
* Plugins/WebPluginController.mm:
(-[WebPluginController initWithDocumentView:]):
* Plugins/WebPluginRequest.m:
(-[WebPluginRequest initWithRequest:frameName:notifyData:sendNotification:didStartFromUserGesture:]):
* WebCoreSupport/WebEditorClient.mm:
(-[WebEditCommand initWithEditCommand:]):
* WebCoreSupport/WebJavaScriptTextInputPanel.m:
(-[WebJavaScriptTextInputPanel initWithPrompt:text:]):
* WebView/WebNavigationData.mm:
(-[WebNavigationData initWithURLString:title:originalRequest:response:hasSubstituteData:clientRedirectSource:]):
2011-04-28 David Levin <levin@chromium.org>
Reviewed by Adam Barth.
Remove IMAGE_RESIZER related code.
https://bugs.webkit.org/show_bug.cgi?id=59735
* Configurations/FeatureDefines.xcconfig:
2011-04-28 Adam Barth <abarth@webkit.org>
Reviewed by Eric Seidel.
Remove WML
https://bugs.webkit.org/show_bug.cgi?id=59678
Remove WML-related configuration options and private APIs.
* Configurations/FeatureDefines.xcconfig:
* WebCoreSupport/WebChromeClient.mm:
(stringForMessageSource):
* WebView/WebFramePrivate.h:
* WebView/WebUIDelegatePrivate.h:
2011-04-28 Brian Weinstein <bweinstein@apple.com>
Reviewed by Timothy Hatcher.
Web Inspector: REGRESSION(85051): Develop Menu items are wrong when inspector is frontmost window
https://bugs.webkit.org/show_bug.cgi?id=59747
Restore functions that were removed in r85051. They were needed when the inspector is the frontmost window.
Also update them to call _inspectedWebView.get() - since it's a RetainPtr now.
* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController showWebInspector:]):
(-[WebInspectorWindowController showErrorConsole:]):
(-[WebInspectorWindowController toggleDebuggingJavaScript:]):
(-[WebInspectorWindowController toggleProfilingJavaScript:]):
(-[WebInspectorWindowController validateUserInterfaceItem:]):
2011-04-28 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/59725> -[WebFullscreenWindow initWithContentRect:styleMask:backing:defer:] leaks a CALayer
Reviewed by Dan Bernstein.
* WebView/WebFullScreenController.mm:
(-[WebFullscreenWindow initWithContentRect:styleMask:backing:defer:]):
Use a RetainPtr to hold the CALayer and to fix the leak.
2011-04-28 David Kilzer <ddkilzer@apple.com>
Follow-up fix: <http://webkit.org/b/59727> -[WebPDFView menuForEvent:] leaks NSMenuItem objects
Addresses review comment from Darin Adler.
* WebView/WebPDFView.mm:
(-[WebPDFView menuForEvent:]): Use a local variable and -release
instead of -autorelease.
2011-04-28 Anders Carlsson <andersca@apple.com>
Fix a thinko - separateRealmLabel is not an NSImageView.
* Panels/WebAuthenticationPanel.h:
2011-04-28 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/59727> -[WebPDFView menuForEvent:] leaks NSMenuItem objects
Reviewed by Dan Bernstein.
* WebView/WebPDFView.mm:
(-[WebPDFView menuForEvent:]): Call -autorelease after copying
each NSMenuItem. Regressed in r9566 for Bug 3711.
2011-04-28 Enrica Casucci <enrica@apple.com>
Reviewed by Beth Dakin.
Momentum scroll tweak for WebKit.
https://bugs.webkit.org/show_bug.cgi?id=59723
<rdar://problem/9259933>
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView scrollWheel:]): Changed constant.
2011-04-27 Anders Carlsson <andersca@apple.com>
Follow-up Leopard build fix.
* Carbon/HIViewAdapter.m:
(_webkit_NSView_setNeedsDisplayInRect):
2011-04-27 Anders Carlsson <andersca@apple.com>
More clang++ 32-bit build fixes.
* Carbon/CarbonWindowAdapter.mm:
(-[CarbonWindowAdapter reconcileToCarbonWindowBounds]):
(-[CarbonWindowAdapter setContentView:]):
(-[CarbonWindowAdapter _handleContentBoundsChanged]):
* Carbon/HIViewAdapter.m:
(_webkit_NSView_setNeedsDisplayInRect):
* Panels/WebAuthenticationPanel.h:
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView convertFromX:andY:space:toX:andY:space:]):
* Plugins/WebNetscapePluginEventHandlerCarbon.mm:
(getCarbonEvent):
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::scrollRectIntoView):
* WebCoreSupport/WebViewFactory.mm:
(-[WebViewFactory accessibilityConvertScreenRect:]):
* WebView/WebFrameView.mm:
(-[WebFrameView _scrollToBeginningOfDocument]):
(-[WebFrameView _scrollToEndOfDocument]):
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController windowDidEnterFullscreen:]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView _hitViewForEvent:]):
(coreGraphicsScreenPointForAppKitScreenPoint):
* WebView/WebPDFView.mm:
(-[WebPDFView setScrollPoint:]):
2011-04-27 Yury Semikhatsky <yurys@chromium.org>
Reviewed by Pavel Feldman.
REGRESSION: Crash occurs at objc_msgSend when closing a window that is displaying the web inspector
https://bugs.webkit.org/show_bug.cgi?id=44230
Use RetainPtr access inspected view from the inspector one to avoid inspected view being deleted before
inspector is closed.
* WebCoreSupport/WebInspectorClient.mm: store reference to inspected view in RetainPtr. Despite the removed
comment in initWithInspectedWebView this doesn't introduce cyclic reference since there are no retaining
pointers to the WebInspectorWindowController from the inspected page or from the WebInspectorClient.
There is only one reference to it from WebInspectorFrontendClient which is held by the inspector
front-end page.
Drive-by fix: removed several unused methods which are currently implemented in mac/WebInspector/WebInspector.mm
(-[WebInspectorWindowController initWithInspectedWebView:]):
(-[WebInspectorWindowController close]):
(-[WebInspectorWindowController showWindow:]):
(-[WebInspectorWindowController setAttachedWindowHeight:]):
(-[WebInspectorWindowController destroyInspectorView:]):
2011-04-26 Sam Weinig <sam@webkit.org>
Reviewed by David Hyatt.
Remove Datagrid from the tree
https://bugs.webkit.org/show_bug.cgi?id=59543
* Configurations/FeatureDefines.xcconfig:
Remove feature.
2011-04-26 Dan Bernstein <mitz@apple.com>
Reviewed by Mark Rowe.
Choose the compiler based on the Xcode version for Snow Leopard debug builds.
* Configurations/Base.xcconfig:
* Configurations/CompilerVersion.xcconfig: Added.
2011-04-25 Adam Barth <abarth@webkit.org>
Reviewed by David Levin.
WebKit2 should play nice with strict OwnPtrs
https://bugs.webkit.org/show_bug.cgi?id=59426
Fix include ordering.
* WebView/WebDeviceOrientationProviderMock.mm:
2011-04-25 Adam Barth <abarth@webkit.org>
Reviewed by David Levin.
WebKit1 should build cleanly with strict OwnPtrs
https://bugs.webkit.org/show_bug.cgi?id=59424
* History/WebHistoryItem.mm:
(-[WebHistoryItem initFromDictionaryRepresentation:]):
* Plugins/WebNetscapePluginEventHandler.h:
* Plugins/WebNetscapePluginEventHandler.mm:
(WebNetscapePluginEventHandler::create):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView createPlugin]):
* WebView/WebDeviceOrientationProviderMock.mm:
* WebView/WebTextIterator.mm:
(-[WebTextIterator initWithRange:]):
2011-04-25 Jon Lee <jonlee@apple.com>
Reviewed by Maciej Stachowiak.
Overlay scroller hard to see on pages with dark background (59183)
https://bugs.webkit.org/show_bug.cgi?id=59183
<rdar://problem/8975367>
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): adding method to allow changing style
2011-04-23 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r84740.
http://trac.webkit.org/changeset/84740
https://bugs.webkit.org/show_bug.cgi?id=59290
change breaks apple internal builds and is incorrect
(Requested by smfr on #webkit).
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2011-04-22 Jon Lee <jonlee@apple.com>
Reviewed by Beth Dakin.
Overlay scroller hard to see on pages with dark background (59183)
https://bugs.webkit.org/show_bug.cgi?id=59183
<rdar://problem/8975367>
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): adding method to allow changing style
2011-04-19 Jer Noble <jer.noble@apple.com>
Reviewed by Daniel Bates.
Full Screen from within an <iframe> does not cause <iframe> to resize.
https://bugs.webkit.org/show_bug.cgi?id=58638
Tests: fullscreen/full-screen-frameset-allowed.html
fullscreen/full-screen-frameset-not-allowed.html
Return the _element's document instead of the WKView's document, which
will be different in the case of elements within <iframe>s.
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController _document]):
2011-04-22 Jer Noble <jer.noble@apple.com>
Reviewed by Maciej Stachowiak.
Disable MediaPlayerPrivateAVFoundation when using old full screen mode.
https://bugs.webkit.org/show_bug.cgi?id=59147
Add a new user default preference, and plumb that preference down to WebCore
Settings. Allow the fullScreenEnabled preference to override the new
isAVFoundationEnabled preference, so that clients of the legacy full screen
mode will continue to use that mode normally.
* WebView/WebPreferenceKeysPrivate.h: Add new preference key.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]): Set the default value of new
preference.
(-[WebPreferences setAVFoundationEnabled:]): Added.
(-[WebPreferences isAVFoundationEnabled]): Added.
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]): Update the WebCore settings with the
new values from WebPreferences.
2011-04-22 Sam Weinig <sam@webkit.org>
Reviewed by Gavin Barraclough.
Remove remaining uses of deprecated version of toJS
https://bugs.webkit.org/show_bug.cgi?id=59170
* DOM/WebDOMOperations.mm:
(-[DOMElement _shadowRoot:]):
(-[DOMElement _ensureShadowRoot:]):
Replace use of deprecated toJS overload with explicit call to deprecatedGlobalObjectForPrototype.
2011-04-21 Maciej Stachowiak <mjs@apple.com>
Reviewed by Adam Roben.
Add a feature define to allow <details> and <summary> to be disabled
https://bugs.webkit.org/show_bug.cgi?id=59118
<rdar://problem/9257045>
* Configurations/FeatureDefines.xcconfig:
2011-04-21 Ryosuke Niwa <rniwa@webkit.org>
Reviewed by Sam Weinig.
Add Frame* to the argument lists of canCopyCut and canPaste
https://bugs.webkit.org/show_bug.cgi?id=59153
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::canCopyCut):
(WebEditorClient::canPaste):
2011-04-21 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r82052.
http://trac.webkit.org/changeset/82052
https://bugs.webkit.org/show_bug.cgi?id=59135
New full screen api should be opt-in, not opt-out. (Requested
by jernoble on #webkit).
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
2011-04-21 Beth Dakin <bdakin@apple.com>
Reviewed by Dan Bernstein.
https://bugs.webkit.org/show_bug.cgi?id=59048
Need to track whether overlay scrollbar is currently visible and in lower-
righthand corner
-and corresponding-
<rdar://problem/9211232>
A new WebSystemInterface is needed for this.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2011-04-21 Dirk Schulze <krit@webkit.org>
Reviewed by Nikolas Zimmermann.
SVG feDropShadow implementation of SVG Filters 1.2
https://bugs.webkit.org/show_bug.cgi?id=52513
* MigrateHeaders.make:
2011-04-20 Dominic Cooney <dominicc@chromium.org>
Reviewed by Dimitri Glazkov.
layoutTestController can create and destroy shadow DOM
https://bugs.webkit.org/show_bug.cgi?id=59058
Support for new methods in Mac DRT.
* DOM/WebDOMOperations.mm:
(-[DOMElement _ensureShadowRoot:]):
(-[DOMElement _removeShadowRoot]):
* DOM/WebDOMOperationsPrivate.h:
2011-04-20 Eric Carlson <eric.carlson@apple.com>
Reviewed by Dan Bernstein.
Adopt QTKit API for listing and deleting file in its media cache.
<rdar://problem/9130029>
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Initialize new functions.
2011-04-19 Matthew Delaney <mdelaney@apple.com>
Reviewed by Simon Fraser.
WebPreferences in WebKit1 should have CanvasUsesAcceleratedDrawing set to NO by default
https://bugs.webkit.org/show_bug.cgi?id=58936
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
2011-04-19 Vsevolod Vlasov <vsevik@chromium.org>
Reviewed by Pavel Feldman.
Web Inspector: Rename lengthReceived to encodedDataLength/dataLength
https://bugs.webkit.org/show_bug.cgi?id=58883
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchDidReceiveContentLength):
2011-04-18 Jia Pu <jpu@apple.com>
Reviewed by Mark Rowe.
WebKit needs to stop importing <AppKit/NSTextChecker.h>
https://bugs.webkit.org/show_bug.cgi?id=58798
<rdar://problem/9294938>
Use public header <AppKit/NSSpellChecker.h> instead.
* WebCoreSupport/CorrectionPanel.h:
* WebCoreSupport/CorrectionPanel.mm:
(correctionIndicatorType):
(CorrectionPanel::show):
(CorrectionPanel::dismissInternal):
(CorrectionPanel::handleAcceptedReplacement):
* WebCoreSupport/WebEditorClient.mm:
* WebView/WebView.mm:
2011-04-17 Cameron Zwarich <zwarich@apple.com>
Reviewed by Timothy Hatcher.
Stop using -[NSString initWithContentsOfFile:]
https://bugs.webkit.org/show_bug.cgi?id=58763
-[NSString initWithContentsOfFile:] was deprecated in 10.4, so we should stop using it.
* WebView/WebView.mm:
(leakMailQuirksUserScriptContents):
(leakOutlookQuirksUserScriptContents):
2011-04-17 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/58463> Switch HTTP pipelining from user default to private setting
<rdar://problem/9268729>
Reviewed by Dan Bernstein.
This replaces support for the WebKitEnableHTTPPipelining user
default with methods on the WebCore::ResourceRequest class in
WebCore, the WebView class in WebKit1, and the WebContext class
in WebKit2. It also removes support for the
WebKitForceHTTPPipeliningPriorityHigh user default which was not
needed.
* WebView/WebView.mm:
(+[WebView(WebPrivate) _HTTPPipeliningEnabled]): Added.
(+[WebView(WebPrivate) _setHTTPPipeliningEnabled:]): Added.
* WebView/WebViewPrivate.h:
(+[WebView(WebPrivate) _HTTPPipeliningEnabled]): Added declaration.
(+[WebView(WebPrivate) _setHTTPPipeliningEnabled:]): Added declaration.
2011-04-17 Joseph Pecoraro <joepeck@webkit.org>
Reviewed by Dan Bernstein.
Assign to self in WebInspectorWindowController constructors
https://bugs.webkit.org/show_bug.cgi?id=58749
* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController init]):
(-[WebInspectorWindowController initWithInspectedWebView:]):
2011-04-17 Joseph Pecoraro <joepeck@webkit.org>
Reviewed by Timothy Hatcher.
Move WebNodeHighlighter into its own file
https://bugs.webkit.org/show_bug.cgi?id=58746
Extract this class into its own file alongside the
other WebNodeHighlight files. In doing so do some
cleanup on WebInspectorClient removing some methods
that were never called.
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorClient::WebInspectorClient): style fix.
* WebInspector/WebNodeHighlighter.h: Added.
* WebInspector/WebNodeHighlighter.mm: Added.
(-[WebNodeHighlighter initWithInspectedWebView:]): call super init.
(-[WebNodeHighlighter dealloc]):
(-[WebNodeHighlighter highlightNode:]):
(-[WebNodeHighlighter hideHighlight]):
(-[WebNodeHighlighter didAttachWebNodeHighlight:]):
(-[WebNodeHighlighter willDetachWebNodeHighlight:]):
2011-04-15 Jia Pu <jpu@apple.com>
Reviewed by Dan Bernstein.
[Mac] WebKit needs to convert the bounding box of autocorrected word to view coordinate.
https://bugs.webkit.org/show_bug.cgi?id=58717
Convert the bounding box from window coordinate to view coordinate, which is expected by NSCorrectionPanel.
* WebCoreSupport/CorrectionPanel.mm:
(CorrectionPanel::show):
2011-04-15 Shishir Agrawal <shishir@chromium.org>
Reviewed by James Robinson.
Add a flag to guard Page Visibility API changes.
https://bugs.webkit.org/show_bug.cgi?id=58464
* Configurations/FeatureDefines.xcconfig:
2011-04-15 Oliver Hunt <oliver@apple.com>
GC allocate Structure
https://bugs.webkit.org/show_bug.cgi?id=58483
Rolling r83894 r83827 r83810 r83809 r83808 back in with
a workaround for the gcc bug seen by the gtk bots
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyRuntimeMethod::createStructure):
* Plugins/Hosted/ProxyRuntimeObject.h:
(WebKit::ProxyRuntimeObject::createStructure):
2011-04-14 Alexey Proskuryakov <ap@apple.com>
Reviewed by Dan Bernstein.
WebKit2: Password field input does not switch to ASCII-compatible source
https://bugs.webkit.org/show_bug.cgi?id=58583
<rdar://problem/9059651>
Now that WebCore doesn't set secure input mode, WebKit has to. Happily, it already has the
necessary logic, needed to return a nil text input context when in password fields.
* WebView/WebHTMLView.mm:
(-[WebHTMLView close]): If the view is still enforcing secure event mode, stop.
(-[WebHTMLView windowDidBecomeKey:]): Call _updateSecureInputState.
(-[WebHTMLView windowDidResignKey:]): Ditto.
(-[WebHTMLView becomeFirstResponder]): Call _updateSecureInputState. It's a bit tricky
because the first responder is still different an this point, so set a boolean variable to
let _updateSecureInputState know what's going on.
(-[WebHTMLView resignFirstResponder]): Disable secure event mode if it's on.
(-[WebHTMLView _updateSecureInputState]): Update HIToolbox secure event input state and
allowed input sources accorsing to current selection.
(-[WebHTMLView _updateSelectionForInputManager]): Call _updateSecureInputState.
2011-04-15 Sam Weinig <sam@webkit.org>
Reviewed by Maciej Stachowiak.
Make mac WebKit1 use the default localization strategy
https://bugs.webkit.org/show_bug.cgi?id=58628
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
Remove the localization strategy code. The equivalent is now
in WebCore/platform/DefaultLocalizationStrategy.cpp.
2011-04-15 Anna Cavender <annacc@chromium.org>
Reviewed by Eric Carlson.
Renaming TRACK feature define to VIDEO_TRACK
https://bugs.webkit.org/show_bug.cgi?id=53556
* Configurations/FeatureDefines.xcconfig:
2011-04-14 Pratik Solanki <psolanki@apple.com>
Reviewed by David Kilzer.
Set minimum priority for fast lane connections
https://bugs.webkit.org/show_bug.cgi?id=58353
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Support for new WKSI method WKSetHTTPPipeliningMinimumFastLanePriority.
2011-04-13 Sam Weinig <sam@webkit.org>
Reviewed by Gavin Barraclough.
WebKit2 doesn't keep overlay scrollers shown while scroll gesture held
<rdar://problem/9260518>
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
Initialize new WKSI functions.
2011-04-13 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/58172> Fix -Wcast-align warning in WebBasePluginPackage.mm
Reviewed by Anders Carlsson.
Fixes the following warning with -Wcast-align enabled:
Source/WebKit/mac/Plugins/WebBasePluginPackage.mm:402:21:{402:21-402:93}{402:39-402:93}: error: cast from 'uint8_t *' (aka 'unsigned char *') to 'struct fat_arch *' increases required alignment from 1 to 4 [-Werror,-Wcast-align,3]
archs = (struct fat_arch*)((uint8_t*)rawData.data() + sizeof(struct fat_header));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* Plugins/WebBasePluginPackage.mm:
(-[WebBasePluginPackage isNativeLibraryData:]): Added
COMPILE_ASSERT() to make sure our pointer math is valid.
Removed cast to (uint8_t*) and divide sizeof(struct fat_header)
by sizeof(uint32_t) to fix the pointer math. Replaced C-style
casts with reinterpret_cast.
2011-04-12 Enrica Casucci <enrica@apple.com>
Reviewed by Alexey Proskuryakov.
Infinite recursion in WebHTMLView executeSavedKeypressCommands.
https://bugs.webkit.org/show_bug.cgi?id=58382
<rdar://problem/9239370>
Execution of some editing commands could trigger a call to selectedRange that
internally calls executeSavedKeypressCommands creating an infinite recursion.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _executeSavedKeypressCommands]): Added a flag to avoid recursion.
(-[WebHTMLView _interpretKeyEvent:savingCommands:]): Added flag initialization.
2011-04-12 Alice Liu <alice.liu@apple.com>
Reviewed by Sam Weinig.
https://bugs.webkit.org/show_bug.cgi?id=58292
Provide new setting to allow site icon loading despite disabling automatic image loading in general.
* WebView/WebPreferenceKeysPrivate.h: Add preference key.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]): Initialize to false.
(-[WebPreferences setLoadsSiteIconsIgnoringImageLoadingPreference:]): Added.
(-[WebPreferences loadsSiteIconsIgnoringImageLoadingPreference]): Added.
* WebView/WebPreferencesPrivate.h: Add setter/getter definitions.
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]): Add to settings that get propagated upon changes.
2011-04-11 Alexey Proskuryakov <ap@apple.com>
Reviewed by Maciej Stachowiak.
WebKit2: Safari doesn't respect cmd-arrows (and variations) as custom keyboard shortcuts
https://bugs.webkit.org/show_bug.cgi?id=58175
<rdar://problem/9060555>
* WebView/WebFrameView.mm: (-[WebFrameView keyDown:]): Added a comment explaining how this
should be changed to match WebKit2.
2011-04-06 Timothy Hatcher <timothy@apple.com>
Fix a bug where the context menu does not show in PDF documents if there is no
UI delegate or the UI delegate does not respond to the context menu selector.
https://webkit.org/b/57958
Reviewed by Darin Adler.
* WebView/WebView.mm:
(-[WebView _menuForElement:defaultItems:]): CallUIDelegate returns nil
if UIDelegate is nil or doesn't respond to the selector. So check that
here to distinguish between using defaultMenuItems or the delegate
really returning nil to say "no context menu".
2011-04-11 Jer Noble <jer.noble@apple.com>
Unreviewed; roll out unintentional change to WebFullScreenController.mm.
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController enterFullscreen:]):
2011-04-08 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
A few heap-related renames and file moves.
WeakGCPtr<T> => Weak<T>
Global<T> => Strong<T>
collector/ => heap/
collector/* => heap/*
runtime/WeakGCPtr.h => heap/Weak.h
(Eventually, even more files should move into the heap directory. Like
Heap.h and Heap.cpp, for example.)
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::idForObject):
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::forget):
(WebKit::NetscapePluginInstanceProxy::evaluate):
* WebView/WebScriptDebugger.h:
2011-04-08 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
WebKit2: Safari doesn't respect cmd-arrows (and variations) as custom keyboard shortcuts
https://bugs.webkit.org/show_bug.cgi?id=58175
<rdar://problem/9060555>
* WebView/WebFrameView.mm: (-[WebFrameView keyDown:]): Added a comment explaining how this
should be changed to match WebKit2.
2011-04-08 Alpha Lam <hclam@chromium.org>
Unreviewed, rolling out r83335.
http://trac.webkit.org/changeset/83335
https://bugs.webkit.org/show_bug.cgi?id=53556
GTK and QT bots are broken
* Configurations/FeatureDefines.xcconfig:
2011-04-07 Anna Cavender <annacc@chromium.org>
Reviewed by Eric Carlson.
Setup ENABLE(TRACK) feature define
https://bugs.webkit.org/show_bug.cgi?id=53556
* Configurations/FeatureDefines.xcconfig:
2011-04-08 Maciej Stachowiak <mjs@apple.com>
Reviewed by Darin Adler.
-[WebView setPreferences:] can take a lot of time if loading lots of webviews at once
https://bugs.webkit.org/show_bug.cgi?id=58128
<rdar://problem/9244553>
The root of the problem here was an O(N^2) issue - each WebView,
upon having its preferences initialized, would broadcast a
notification that was listened to by all other WebViews sharing
its preferences.
To maintain the API contract, I split the notification into two,
one that is for public API consumption, and the other which is for
internal use only. Changes that don't need to be picked up by
other WebViews broadcast the public notification only. And we
avoid WebView broadcasting a notification just to get itself to
update.
* Misc/WebIconDatabase.mm:
(-[WebIconDatabase _startUpIconDatabase]):
(-[WebIconDatabase _shutDownIconDatabase]):
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView viewWillMoveToWindow:]):
(-[WebBaseNetscapePluginView viewWillMoveToSuperview:]):
(-[WebBaseNetscapePluginView viewDidMoveToWindow]):
(-[WebBaseNetscapePluginView viewWillMoveToHostWindow:]):
* WebView/WebPreferences.mm:
(-[WebPreferences initWithIdentifier:]):
(-[WebPreferences _setStringValue:forKey:]):
(-[WebPreferences _setIntegerValue:forKey:]):
(-[WebPreferences _setFloatValue:forKey:]):
(-[WebPreferences _setBoolValue:forKey:]):
(-[WebPreferences _setLongLongValue:forKey:]):
(-[WebPreferences _setUnsignedLongLongValue:forKey:]):
(-[WebPreferences _postPreferencesChangedNotification]):
(-[WebPreferences _postPreferencesChangedAPINotification]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
(-[WebView _preferencesChangedNotification:]):
(-[WebView _preferencesChanged:]):
(-[WebView setUsesPageCache:]):
(+[WebView initialize]):
(-[WebView setPreferences:]):
(-[WebView _keyboardUIMode]):
* WebView/WebViewInternal.h:
2011-04-07 Andrew Scherkus <scherkus@chromium.org>
Revert ENABLE_TRACK patch due to compile failures.
* Configurations/FeatureDefines.xcconfig:
2011-04-07 Alexey Proskuryakov <ap@apple.com>
Reviewed by Anders Carlsson.
REGRESSION (WebKit2): Reverse conversion doesn't work in Kotoeri
https://bugs.webkit.org/show_bug.cgi?id=58066
<rdar://problem/8965302>
* WebView/WebHTMLRepresentation.mm:
(-[WebHTMLRepresentation attributedStringFrom:startOffset:to:endOffset:]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView attributedSubstringFromRange:]):
(-[WebHTMLView attributedString]):
(-[WebHTMLView selectedAttributedString]):
Updated for editingAttributedStringFromRange: now taking a WebCore::Range instead of DOMRange.
2011-04-07 Andy Estes <aestes@apple.com>
Reviewed by Darin Adler.
REGRESSION (r64712): Microsoft Outlook 2011: original message contents
not included when replying to an email.
https://bugs.webkit.org/show_bug.cgi?id=57794
Outlook populates a reply message by creating an empty WebView and
using DOM API to populate the WebView's empty document with content
from the original message. It expects the initial empty document to
simply be "<html></html>", and it proceeds to dynamically create and
append a BODY node and add the original message content as a child of
that node. Outlook then takes the innerHTML of the frame's first body
element and copies it into a *new* document that is displayed and
edited in the reply message window.
Due to implementing the HTML5 tree building algorithm in r64712,
initial empty documents went from being "<html></html>" to being
"<html><head></head><body></body></html>". Outlook still dynamically
creates a BODY node to parent the original message content, but this
BODY node duplicates the one created by the tree builder. When Outlook
then takes the innerHTML of the first body element to populate the
reply message window it gets the empty body element created by the
parser, not the one it created with the original message content.
Fix this by injecting a user script into the initial empty document
that removes the HEAD and BODY nodes created by the parser. This
ensures that the BODY created by Outlook is the only BODY in the
document.
* Misc/OutlookQuirksUserScript.js: Added.
* WebView/WebView.mm:
(leakMailQuirksUserScriptContents):
(-[WebView _injectMailQuirksScript]):
(needsOutlookQuirksScript):
(leakOutlookQuirksUserScriptContents):
(-[WebView _injectOutlookQuirksScript]):
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
2011-04-06 Dai Mikurube <dmikurube@chromium.org>
Reviewed by David Levin.
Add QUOTA build flag for unified quota API
https://bugs.webkit.org/show_bug.cgi?id=57918
* Configurations/FeatureDefines.xcconfig: Added QUOTA build flag
2011-04-06 Robert Sesek <rsesek@chromium.org>
Reviewed by Alexey Proskuryakov.
Move code duplicated between the WebKit/mac and WebKit2 down to WebCore because Chromium will need it too
https://bugs.webkit.org/show_bug.cgi?id=54969
* WebView/WebFrame.mm:
(-[WebFrame _convertToNSRange:]): Moved duplicated code to WebCore
(-[WebFrame _characterRangeAtPoint:]): Moved duplicated code to WebCore
2011-04-05 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
Move attributedStringFromRange down to WebCore
https://bugs.webkit.org/show_bug.cgi?id=57905
* Misc/WebNSAttributedStringExtras.h: Removed.
* Misc/WebNSAttributedStringExtras.mm: Removed.
* WebView/WebHTMLRepresentation.mm:
(-[WebHTMLRepresentation attributedStringFrom:startOffset:to:endOffset:]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView _writeSelectionWithPasteboardTypes:toPasteboard:cachedAttributedString:]):
(-[WebHTMLView attributedSubstringFromRange:]):
(-[WebHTMLView attributedString]):
(-[WebHTMLView selectedAttributedString]):
* WebView/WebPDFView.mm:
(-[WebPDFView writeSelectionWithPasteboardTypes:toPasteboard:]):
2011-04-04 MORITA Hajime <morrita@google.com>
Reviewed by Ryosuke Niwa.
[Refactoring] SpellCheckingResult should be replaced with TextCheckingResult
https://bugs.webkit.org/show_bug.cgi?id=56085
Removed NSTextCheckingResult to SpellCheckingResult convertion, and extracted
NSTextCheckingResult to TextCheckingResult convertio from checkTextOfParagraph method.
for requestCheckingOfString method.
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(toCoreTextCheckingResults):
(WebEditorClient::checkTextOfParagraph):
(-[WebEditorSpellCheckResponder initWithSender:WebCore::sequence:types:WebCore::results:]):
(-[WebEditorSpellCheckResponder perform]):
(WebEditorClient::requestCheckingOfString):
* WebView/WebFrame.mm:
(-[WebFrame markersForSelectionStartAsText]):
* WebView/WebFramePrivate.h:
2011-04-05 Anders Carlsson <andersca@apple.com>
Didn't mean to land this.
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView getVariable:value:]):
2011-04-04 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/57384> CFNetwork and WebCore load priorities should match
Reviewed by Alexey Proskuryakov.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Added initialization for
wkSetHTTPPipeliningMaximumPriority().
2011-04-04 Alexey Proskuryakov <ap@apple.com>
Reviewed by Dan Bernstein.
REGRESSION (WebKit2): Caps-Lock indicator sometimes doesn't appear in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=51230
<rdar://problem/8780989>
* WebView/WebHTMLView.mm: (-[WebHTMLView flagsChanged:]): Moved Caps Lock handling from
WebKits to WebCore, because WebKit shouldn't be smart.
2011-04-01 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
REGRESSION: Assertion failure when executing a complex custom key binding
https://bugs.webkit.org/show_bug.cgi?id=57681
* WebView/WebHTMLView.mm: (-[WebHTMLView hasMarkedText]): There is no need to execute saved
commands when they can't possibly change the result.
2011-04-01 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Shockwave plug-in doesn't accept mouse events
https://bugs.webkit.org/show_bug.cgi?id=57653
<rdar://problem/8483273>
Fix an unrelated bug found by the added test.
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView convertFromX:andY:space:toX:andY:space:]):
Make sure to always set destX and destY.
2011-04-01 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
Make WebKit2 text input handling more like WebKit1
https://bugs.webkit.org/show_bug.cgi?id=57649
* WebView/WebFrameInternal.h: Expose _convertToDOMRange for use in WebHTMLView.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _executeSavedKeypressCommands]): Renamed, since these are not editor commands.
(-[WebHTMLView _interpretKeyEvent:savingCommands:]): Updated for the renamed _executeSavedKeypressCommands.
(-[WebHTMLView characterIndexForPoint:]): Ditto.
(-[WebHTMLView firstRectForCharacterRange:]): Ditto.
(-[WebHTMLView selectedRange]): Ditto.
(-[WebHTMLView markedRange]): Ditto.
(-[WebHTMLView attributedSubstringFromRange:]): Ditto.
(-[WebHTMLView hasMarkedText]): Ditto.
(-[WebHTMLView unmarkText]): Ditto.
(-[WebHTMLView setMarkedText:selectedRange:]): Ditto. Changed the comment about the argument
type into an assertion. Removed resetting interpretKeyEventsParameters to 0, as we shouldn't
be able to call text input protocol methods from here (and we didn't even reset it back on
return). Changed to retrieve all data before starting to apply actions to better match WK2 code.
(-[WebHTMLView insertText:]): Ditto.
2011-04-01 Timothy Hatcher <timothy@apple.com>
Make momentum scroll event latching work in WebKit2 on Mac.
<rdar://problem/8751861>
Reviewed by Darin Adler.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Remove IsLatchingWheelEvent, add GetNSEventMomentumPhase.
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView scrollWheel:]): Use WKGetNSEventMomentumPhase to set isLatchingEvent.
2011-03-31 Darin Adler <darin@apple.com>
Reviewed by Anders Carlsson.
Assertion failure in -[WebHTMLView _handleStyleKeyEquivalent:]
https://bugs.webkit.org/show_bug.cgi?id=26667
* WebView/WebHTMLView.mm:
(-[WebHTMLView _handleStyleKeyEquivalent:]): Handle the case where WebView is
nil rather than asserting that it is non-nil. One case where WebView will be nil
is when the frame is closed, but in any case where it is nil, the correct thing
to do is to not try to handle the style key.
2011-03-31 Alexey Proskuryakov <ap@apple.com>
Patch by John Harvey, reviewed and tweaked by me.
<rdar://problem/8644403> Should notify TSM that plug-ins would show a bottom input window for marked text.
* Plugins/Hosted/WebTextInputWindowController.m:
(-[WebTextInputPanel _interpretKeyEvent:string:]):
2011-03-31 Evan Martin <evan@chromium.org>
Reviewed by Eric Seidel.
<title> should support dir attribute
https://bugs.webkit.org/show_bug.cgi?id=50961
Update to new FrameLoaderClient interface.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchDidReceiveTitle):
(WebFrameLoaderClient::setTitle):
2011-03-30 Dominic Cooney <dominicc@google.com>
Reviewed by Dimitri Glazkov.
Adds layoutTestController.shadowRoot accessor to Mac DRT.
https://bugs.webkit.org/show_bug.cgi?id=57415
* DOM/WebDOMOperations.mm:
(-[DOMElement _shadowRoot:]):
* DOM/WebDOMOperationsPrivate.h:
2011-03-30 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
WebHTMLView shouldn't resend noop: commands
https://bugs.webkit.org/show_bug.cgi?id=57504
<rdar://problem/9209390>
* WebView/WebHTMLView.mm: (-[WebHTMLView _executeSavedEditingCommands]): Filter out NOOPs,
which we get e.g. when handling Cmd-key combos.
2011-03-30 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
REGRESSION (r82320): Spacebar no longer pages down
https://bugs.webkit.org/show_bug.cgi?id=57423
<rdar://problem/9207702>
Also includes some unrelated cleanup that I had in my tree.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _interpretKeyEvent:savingCommands:]): Added an assertion that the event is
being dispatched to the right frame.
(-[WebHTMLView setMarkedText:selectedRange:]): Use 0 for a pointer, not NULL.
(-[WebHTMLView doCommandBySelector:]): Update eventInterpretationHadSideEffects with "|=".
Even if this specific command hasn't been handled, that doesn't nullify side effects from
previous commands.
(-[WebHTMLView insertText:]): Besides looking at the return value of insertText() to fix the
bug, removed setting _private->interpretKeyEventsParameters to 0. I don't see any way for
another WebHTMLView NSTextInput method to be called from within insertText:, so no one is
going to look at it.
2011-03-30 Sam Weinig <sam@webkit.org>
Reviewed by Brady Eidson.
WebKit2: Attempting to view css file from url causes it to download
<rdar://problem/9102611>
https://bugs.webkit.org/show_bug.cgi?id=57501
* WebView/WebHTMLRepresentation.h:
* WebView/WebHTMLRepresentation.mm:
(+[WebHTMLRepresentation unsupportedTextMIMETypes]):
* WebView/WebHTMLView.mm:
(+[WebHTMLView unsupportedTextMIMETypes]):
Re-factor unsupportedTextMIMETypes to pull from WebCore's
MIMETypeRegistry, so that the list can be shared with WebKit2.
2011-03-29 Beth Dakin <bdakin@apple.com>
Reviewed by Maciej Stachowiak.
Fix for https://bugs.webkit.org/show_bug.cgi?id=57408
webkit-min-device-pixel-ratio media query doesn't work post-SnowLeopard
-and corresponding-
<rdar://problem/8665411>
* Misc/WebNSControlExtras.m:
(-[NSControl sizeToFitAndAdjustWindowHeight]):
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::scaleFactor):
* WebView/WebHTMLView.mm:
(-[WebHTMLView viewDidMoveToWindow]):
(-[WebHTMLView attachRootLayer:]):
2011-03-29 Kent Tamura <tkent@chromium.org>
Reviewed by Dimitri Glazkov.
Make validation message bubble testable
https://bugs.webkit.org/show_bug.cgi?id=57290
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]): Copy the private value of
the timer magnification to WebCore::Settings.
(-[WebView validationMessageTimerMagnification]): Added.
(-[WebView setValidationMessageTimerMagnification:]): Added.
* WebView/WebViewData.h: Declare a member for the timer magnification.
* WebView/WebViewData.mm:
(-[WebViewPrivate init]): Initialize the timer magnification.
* WebView/WebViewPrivate.h:
Declare a setter and a getter for the timer magnification.
2011-03-29 Kent Tamura <tkent@chromium.org>
Reviewed by Dimitri Glazkov.
[Mac] Enable interactive-validation tests on Mac DRT
https://bugs.webkit.org/show_bug.cgi?id=57308
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
Convey a WebView flag for interactive validation to WebCore::Settings.
(-[WebView interactiveFormValidationEnabled]): Added.
(-[WebView setInteractiveFormValidationEnabled:]): Added.
* WebView/WebViewData.h: Add interactiveFormValidationEnabled.
* WebView/WebViewData.mm:
(-[WebViewPrivate init]): Initialize interactiveFormValidationEnabled.
* WebView/WebViewPrivate.h: Add setter and getter for interactiveFormValidationEnabled.
2011-03-29 Timothy Hatcher <timothy@apple.com>
Update the order of the context menu to better match AppKit on Mac.
<rdar://problem/9054893>
Reviewed by John Sullivan.
* DefaultDelegates/WebDefaultContextMenuDelegate.mm:
(-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]): Update the order of items.
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::contextMenuItemTagLookUpInDictionary): Added argument for selected string.
2011-03-29 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=57379
Clean up WK1 key event handling logic
No bugs knowingly fixed, but this makes the code more consistent.
* WebView/WebHTMLView.mm:
(struct WebHTMLViewInterpretKeyEventsParameters): Renamed eventWasHandled to
eventInterpretationHadSideEffects, because "handled" doesn't really mean much.
(-[WebHTMLView _executeSavedEditingCommands]): Factored out from _interpretKeyEvent for use
from other functions. We need to execute saved commands when an input method asks for current
state, because providing stale state could confuse it.
(-[WebHTMLView _interpretKeyEvent:savingCommands:]): Heavily commented, and updated for other
changes.
(-[WebHTMLView characterIndexForPoint:]): Call _executeSavedEditingCommands, because otherwise,
the answer would be stale.
(-[WebHTMLView firstRectForCharacterRange:]): Ditto.
(-[WebHTMLView selectedRange]): Ditto.
(-[WebHTMLView markedRange]): Ditto.
(-[WebHTMLView attributedSubstringFromRange:]): Ditto.
(-[WebHTMLView hasMarkedText]): Ditto.
(-[WebHTMLView unmarkText]): Call _executeSavedEditingCommands, because otherwise, we'd be
operating on stale data. Also, updated for eventWasHandled renaming.
(-[WebHTMLView setMarkedText:selectedRange:]): Ditto.
(-[WebHTMLView doCommandBySelector:]): Removed special handling for noop:. I verified that
it's no longer needed for bug 14522, presumably due to WebCore level changes. It was also
fragile, because there is no guarantee about when noop: is sent (also, a custom key binding
could have a noop: as one of its commands, although that's hardly practical).
Added the same "from input method" logic that we have in insertText: - I don't know of any
IMs that call this method, but we clearly need to execute it as part of IM processing when
there is marked text.
(-[WebHTMLView insertText:]): Removed a confusing check for [text length]. Always set
eventInterpretationHadSideEffects to true, becasue there is no reason to try multiple times
if current selection isn't editable. This is different from doCommandBySelector:, where we
need to give super class a chance to handle the event if our processing fails.
Removed a nonsense "consumedByIM = true" assignment - we no longer need it now that the
return value of _interpretKeyEvent is computed differently.
2011-03-28 Adele Peterson <adele@apple.com>
Reviewed by Eric Seidel.
Fix for <rdar://problem/9112694> REGRESSION (r79411): "Check grammar with spelling" context menu doesn't check as you type
https://bugs.webkit.org/show_bug.cgi?id=57173
* WebView/WebFrame.mm:
(-[WebFrame hasSpellingMarker:length:]): Call new selectionStartHasMarkerFor method instead of selectionStartHasSpellingMarkerFor.
(-[WebFrame hasGrammarMarker:length:]): Call new selectionStartHasMarkerFor method.
* WebView/WebFramePrivate.h: Add hasGrammarMarker so grammar marking can be tested.
2011-03-28 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=57260
Clean up text input code a little
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::handleKeyboardEvent):
(WebEditorClient::handleInputMethodKeydown):
* WebView/WebHTMLViewInternal.h:
Renamed _interceptEditingKeyEvent:shouldSaveCommand:, becasue it doesn't really intercept
anything. It's just a version it interpretKeyEvents: that tells us whether it was handled,
and also possibly saves resulting commands for later execution.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _interpretKeyEvent:savingCommands:]): Changed to use early return. Changed
return value in case platformEvent is null to be less mysterious. Moved receivedNOOP from
WebHTMLViewPrivate to WebHTMLViewInterpretKeyEventsParameters, as this is just part of event
handling state, like the other booleans there. Don't call interpretKeyEvents: again simply
because the first call resulted in no saved commands, becasue it's confusing and apparently
useless (I couldn't find any broken behavior).
(-[WebHTMLView unmarkText]): Cleaned upo BOOL vs. bool constants.
(-[WebHTMLView setMarkedText:selectedRange:]): Ditto.
(-[WebHTMLView doCommandBySelector:]): Ditto.
(-[WebHTMLView insertText:]): Ditto.
* WebView/WebViewInternal.h: There was no _interceptEditingKeyEvent:shouldSaveCommand:
method on WebView.
2011-03-27 Jer Noble <jer.noble@apple.com>
Reviewed by Maciej Stachowiak.
Full Screen: disable keyboard access by default
https://bugs.webkit.org/show_bug.cgi?id=56684
Take into account whether keyboard access was requested when deciding whether full
screen mode is supported.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::supportsFullScreenForElement):
* WebView/WebView.mm:
(-[WebView _supportsFullScreenForElement:WebCore::withKeyboard:]):
* WebView/WebViewInternal.h:
2011-03-26 Jer Noble <jer.noble@apple.com>
Reviewed by Eric Carlson.
Enable the Full Screen API by default in WebKit/mac and WebKit2
https://bugs.webkit.org/show_bug.cgi?id=56956
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]): Default the WebKitFullScreenEnabled preference to true.
2011-03-25 Andy Estes <aestes@apple.com>
Reviewed by Adele Peterson.
REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
https://bugs.webkit.org/show_bug.cgi?id=49016
Update objectContentType() implementation to handle the
shouldPreferPlugInsForImages flag.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::objectContentType):
2011-03-24 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r81939.
http://trac.webkit.org/changeset/81939
https://bugs.webkit.org/show_bug.cgi?id=57084
Rolling out 81939, as it's causing a number of app cache test
failures. (Requested by jernoble on #webkit).
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2011-03-23 Jer Noble <jer.noble@apple.com>
Reviewed by Maciej Stachowiak.
Application Cache should save audio/ and video/ mime types as flat files
https://bugs.webkit.org/show_bug.cgi?id=53784
<rdar://problem/8932473>
No new tests.
Initialize the AppCache Total size quotas with the values for WebKitPreferences
upon startup.
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2011-03-24 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r81916 and r81917.
http://trac.webkit.org/changeset/81916
http://trac.webkit.org/changeset/81917
https://bugs.webkit.org/show_bug.cgi?id=57071
broke a test on platforms that do not have QuickTime installed
(Requested by estes on #webkit).
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::objectContentType):
2011-03-24 Andy Estes <aestes@apple.com>
Reviewed by Darin Adler.
REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
https://bugs.webkit.org/show_bug.cgi?id=49016
Update objectContentType() implementation to handle the
shouldPreferPlugInsForImages flag.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::objectContentType):
2011-03-24 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Ensure that all compilation takes place within a dynamic global object scope
https://bugs.webkit.org/show_bug.cgi?id=57054
* WebView/WebScriptDebugDelegate.mm:
(-[WebScriptCallFrame evaluateWebScript:]): Updated for signature change.
2011-03-24 Jia Pu <jpu@apple.com>
Reviewed by Darin Adler.
Dismissed reversion suggestion is incorrectly learned.
https://bugs.webkit.org/show_bug.cgi?id=57039
CorrectionPanel should always use [NSSpellChecker dismissCorrectionBubbleForView].
[NSSpellChecker cancelCorrectionBubbleForView] is reserved for situation where correction panel
is dismissed explicitly by ESC key or clicking the dimiss button. Misusing these causes
incorrect automatic learning.
* WebCoreSupport/CorrectionPanel.mm:
(CorrectionPanel::dismissInternal):
2011-03-24 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/56993> ENABLE_PLUGIN_PROXY_FOR_VIDEO should be defined to 0 on Mac OS X
Reviewed by Joseph Pecoraro.
* Plugins/WebPluginContainerPrivate.h: Changed value of
ENABLE_PLUGIN_PROXY_FOR_VIDEO from 1 to 0.
2011-03-23 Jia Pu <jpu@apple.com>
Reviewed by Darin Adler.
Hook up new AppKit autocorrection UI with WK2.
https://bugs.webkit.org/show_bug.cgi?id=56055
<rdar://problem/8947463>
Please see WebCore/ChangeLog for detail.
* WebCoreSupport/CorrectionPanel.h: Added.
(CorrectionPanel::isShowing):
* WebCoreSupport/CorrectionPanel.mm: Added.
(correctionBubbleType):
(CorrectionPanel::CorrectionPanel):
(CorrectionPanel::~CorrectionPanel):
(CorrectionPanel::show):
(CorrectionPanel::dismiss):
(CorrectionPanel::dismissSoon):
(CorrectionPanel::dismissInternal):
(CorrectionPanel::recordAutocorrectionResponse):
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::WebEditorClient):
(WebEditorClient::showCorrectionPanel):
(WebEditorClient::dismissCorrectionPanel):
(WebEditorClient::dismissCorrectionPanelSoon):
(WebEditorClient::recordAutocorrectionResponse):
* WebView/WebView.mm:
(-[WebView handleCorrectionPanelResult:]):
* WebView/WebViewPrivate.h:
2011-03-23 Enrica Casucci <enrica@apple.com>
Reviewed by Alexey Proskuryakov.
Services menu item to convert selected Simplified/Traditional Chinese Text is not working.
https://bugs.webkit.org/show_bug.cgi?id=56974
<rdar://problem/8284642>
This fixes a regression introduced by http://trac.webkit.org/changeset/61794
where readSelectionFromPasteboard was accidentally removed.
This method and writeSelectionToPasteboard are needed to support Mac OS X
services.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _pasteAsPlainTextWithPasteboard:]): Added.
(-[WebHTMLView readSelectionFromPasteboard:]): Added.
2011-03-23 Brady Eidson <beidson@apple.com>
Reviewed by Sam Weinig.
Change IconDatabase opening to allow for arbitrary filenames
https://bugs.webkit.org/show_bug.cgi?id=56977
* Misc/WebIconDatabase.mm:
(-[WebIconDatabase _startUpIconDatabase]):
2011-03-22 Anton D'Auria <adauria@apple.com>
Reviewed by Alexey Proskuryakov.
Add +[WebApplicationCache getOriginsWithCache]
https://bugs.webkit.org/show_bug.cgi?id=56722
Call existing WebCore::ApplicationCacheStorage::getOriginsWithCache API.
* WebCoreSupport/WebApplicationCache.h:
* WebCoreSupport/WebApplicationCache.mm:
(+[WebApplicationCache originsWithCache]):
2011-03-22 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
OBJECT element with DivX source is always downloaded
https://bugs.webkit.org/show_bug.cgi?id=56879
* Plugins/WebBasePluginPackage.mm:
(-[WebBasePluginPackage getPluginInfoFromPLists]):
Always try to split every element in the "WebPluginExtensions" array, since the DivX plug-in
specifies multiple file extensions in a single element.
2011-03-22 Brady Eidson <beidson@apple.com>
Reviewed by Sam Weinig.
<rdar://problem/8648311> and https://bugs.webkit.org/show_bug.cgi?id=56876
WK2 Icon DB: Expand IconDatabaseClient interface and move it to the main thread
Note that while the new client calls always come through on the main thread, our mechanisms to
route dispatches to the main thread are still valid and will still work.
Update to the new IconDatabaseClient interface:
* WebCoreSupport/WebIconDatabaseClient.h:
* WebCoreSupport/WebIconDatabaseClient.mm:
(WebIconDatabaseClient::didRemoveAllIcons):
(WebIconDatabaseClient::didImportIconURLForPageURL):
(WebIconDatabaseClient::didImportIconDataForPageURL):
(WebIconDatabaseClient::didChangeIconForPageURL):
(WebIconDatabaseClient::didFinishURLImport):
2011-03-22 Matthew Delaney <mdelaney@apple.com>
Reviewed by Simon Fraser.
Have WebKit push acceleratedDrawing preferences to settings
https://bugs.webkit.org/show_bug.cgi?id=56792
* WebView/WebView.mm:
2011-03-21 Nate Chapin <japhet@chromium.org>
Reviewed by Brady Eidson.
Expose a preference to use caching quirks for QuickLook,
and use it if the QuickLook framework is loaded.
https://bugs.webkit.org/show_bug.cgi?id=38690
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(useQuickLookQuirks):
(+[WebPreferences initialize]):
(-[WebPreferences useQuickLookResourceCachingQuirks]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2011-03-21 Chris Fleizach <cfleizach@apple.com>
Reviewed by Darin Adler.
AX: showContextMenu not working in WK2
https://bugs.webkit.org/show_bug.cgi?id=56734
Implement showContextMenu() so accessibility related code can call this
independent of whether WK1 or WK2 is running.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::showContextMenu):
2011-03-21 Chang Shu <cshu@webkit.org>
Reviewed by Alexey Proskuryakov.
REGRESSION (r79953): Can't type in MS Outlook 2011
https://bugs.webkit.org/show_bug.cgi?id=56665
r79953 removed the WebView level editablity which is persistent no matter whether
underlying document itself is changed and editability gets lost. The resolution is to
set this WebView editable value to WebCore. This avoids the callback from WebCore to
WebKit which was the main goal in r79953 to improve performance.
* WebView/WebView.mm:
(-[WebView setEditable:]):
(-[WebView isEditable]):
2011-03-19 Anton D'Auria <adauria@apple.com>
Reviewed by Alexey Proskuryakov.
ApplicationCacheGroup is not obsolete after being deleted via ApplicationCacheStorage::deleteEntriesForOrigin
https://bugs.webkit.org/show_bug.cgi?id=56415
Use new ApplicationCache API to delete all cache for an origin.
* WebCoreSupport/WebApplicationCache.h:
* WebCoreSupport/WebApplicationCache.mm:
(+[WebApplicationCache deleteOrigin:]):
2011-03-17 Brady Eidson <beidson@apple.com>
Reviewed by Sam Weinig.
https://bugs.webkit.org/show_bug.cgi?id=56425
More groundwork for WebKit2 IconDatabase
Update already-used function names:
* Misc/WebIconDatabase.mm:
(-[WebIconDatabase iconForURL:withSize:cache:]):
(-[WebIconDatabase iconURLForURL:]):
* WebView/WebView.mm:
(-[WebView _dispatchDidReceiveIconFromWebFrame:]):
2011-03-18 Pavel Podivilov <podivilov@chromium.org>
Reviewed by Yury Semikhatsky.
Web Inspector: implement inspector session storage.
https://bugs.webkit.org/show_bug.cgi?id=56643
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorClient::saveSessionSetting):
(WebInspectorClient::loadSessionSetting):
(WebInspectorFrontendClient::saveSessionSetting):
(WebInspectorFrontendClient::loadSessionSetting):
(-[WebInspectorWindowController inspectorClient]):
2011-03-17 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Fixed a leak seen on the buildbot.
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorClient::openInspectorFrontend): Smart pointers are smart.
2011-03-16 Jeff Johnson <github@lapcatsoftware.com>
Reviewed by Alexey Proskuryakov.
Logic error in -[WebHTMLView close]
https://bugs.webkit.org/show_bug.cgi?id=56445
Page is always nil at this point, because [self _webView] is nil,
so the conditional code is never run.
* WebView/WebHTMLView.mm:
(-[WebHTMLView close]):
2011-03-16 Chris Fleizach <cfleizach@apple.com>
Reviewed by Darin Adler.
WK2: Need to propagate enhanced accessibility flag from UI -> web process
https://bugs.webkit.org/show_bug.cgi?id=56379
* WebView/WebFrame.mm:
(-[WebFrame accessibilityRoot]):
2011-03-15 Oliver Hunt <oliver@apple.com>
Reviewed by Geoffrey Garen.
Make Structure creation require a JSGlobalData
https://bugs.webkit.org/show_bug.cgi?id=56438
Mechanical change to make all Structure creation use a JSGlobalData&
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyRuntimeMethod::createStructure):
* Plugins/Hosted/ProxyRuntimeObject.h:
(WebKit::ProxyRuntimeObject::createStructure):
2011-03-15 Alexey Proskuryakov <ap@apple.com>
Forgot to save a modification to this file when committing.
* WebCoreSupport/WebKeyGenerator.mm: Changed "Apple Computer" to "Apple" in copyright header.
2011-03-15 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
REGRESSION (WebKit2): keygen element doesn't work
https://bugs.webkit.org/show_bug.cgi?id=56402
<rdar://problem/9006545>
* WebCoreSupport/WebKeyGenerator.h:
* WebCoreSupport/WebKeyGenerator.m: Removed.
* WebCoreSupport/WebKeyGenerator.mm: Copied from Source/WebKit/mac/WebCoreSupport/WebKeyGenerator.m.
(+[WebKeyGenerator sharedGenerator]):
(toWebCertificateParseResult):
WebCore no longer needs WebKeyGenerator. Safari still does need a part of it, so keeping
this misnamed and misplaced code for now.
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::keygenMenuItem512):
(WebPlatformStrategies::keygenMenuItem1024):
(WebPlatformStrategies::keygenMenuItem2048):
(WebPlatformStrategies::keygenKeychainItemName):
Added strings used by keygen.
* WebCoreSupport/WebSystemInterface.mm: (InitWebCoreSystemInterface): Initialize a WebCore
pointer to a function used by keygen.
* WebView/WebFrameView.mm: (-[WebFrameView initWithFrame:]): WebKeyGenerator can be lazily
initialized now.
2011-03-15 Beth Dakin <bdakin@apple.com>
Reviewed by Simon Fraser.
WebKit part of <rdar://problem/9075624> Overlay scrollbars slow down PLT by 6%
New WebKitystemInterface function to force the scrollbars to flash
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2011-03-15 Ilya Sherman <isherman@chromium.org>
Reviewed by Tony Chang.
Autofilled form elements are assigned fixed background color but not text color
https://bugs.webkit.org/show_bug.cgi?id=48382
* DOM/WebDOMOperations.mm:
(-[DOMHTMLInputElement _setAutofilled:]): Added (wrapper).
* DOM/WebDOMOperationsPrivate.h:
2011-03-15 Adam Roben <aroben@apple.com>
Fix a leak in WebStorageTrackerClient::dispatchDidModifyOrigin
Fixes <http://webkit.org/b/56385> SecurityOrigin leaks seen in
WebStorageTrackerClient::dispatchDidModifyOrigin
Reviewed by Antti Koivisto.
* Storage/WebStorageTrackerClient.mm:
(WebStorageTrackerClient::dispatchDidModifyOriginOnMainThread): Adopt the reference passed
to us by dispatchDidModifyOrigin.
(WebStorageTrackerClient::dispatchDidModifyOrigin): Added a comment and removed an
unnecessary cast.
2011-03-15 Kevin Ollivier <kevino@theolliviers.com>
Reviewed by Darin Adler.
Introduce WTF_USE_EXPORT_MACROS, which will allow us to put shared library import/export
info into the headers rather than in export symbol definition files, but disable it on
all platforms initially so we can deal with port build issues one port at a time.
https://bugs.webkit.org/show_bug.cgi?id=27551
* WebKitPrefix.h:
2011-03-14 Brady Eidson <beidson@apple.com>
Reviewed by Anders Carlsson.
https://bugs.webkit.org/show_bug.cgi?id=56320
Remove HistoryItem::icon() and the WebCore dependency on "IconDatabaseBase::defaultIcon()"
* History/WebHistoryItem.mm:
(-[WebHistoryItem icon]): This far-future FIXME is now irrelevant.
2011-03-13 Pratik Solanki <psolanki@apple.com>
Reviewed by Brady Eidson.
Make adjustMIMETypeIfNecessary use CFNetwork directly
https://bugs.webkit.org/show_bug.cgi?id=55912
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Support for new WKSI functions.
2011-03-12 Mark Rowe <mrowe@apple.com>
Fix the 32-bit build.
* Carbon/CarbonWindowAdapter.mm:
(-[CarbonWindowAdapter initWithCarbonWindowRef:takingOwnership:disableOrdering:carbon:]): Use a more appropriate format specifier.
(-[CarbonWindowAdapter _carbonWindowClass]): Ditto.
2011-03-11 Brady Eidson <beidson@apple.com>
Reviewed by Anders Carlsson
<rdar://problem/8648311> and https://bugs.webkit.org/show_bug.cgi?id=56216
Rework disabled IconDatabase builds while allowing for a pluggable icon database implementation.
* Misc/WebIconDatabase.mm:
(+[WebIconDatabase _checkIntegrityBeforeOpening]): Call these static methods on IconDatabase::, not iconDatabase().
(-[WebIconDatabase _startUpIconDatabase]): Ditto.
(importToWebCoreFormat):
2011-03-11 Anton D'Auria <adauria@apple.com>
Reviewed and landed by Brady Eidson.
https://bugs.webkit.org/show_bug.cgi?id=51878
Add WebKit1 API to view and delete local storage
* Storage/WebStorageManager.mm: Added.
(+[WebStorageManager sharedWebStorageManager]):
(-[WebStorageManager origins]):
(-[WebStorageManager deleteAllOrigins]):
(-[WebStorageManager deleteOrigin:]):
(-[WebStorageManager syncLocalStorage]):
(-[WebStorageManager syncFileSystemAndTrackerDatabase]):
(storageDirectoryPath):
(WebKitInitializeStorageIfNecessary):
* Storage/WebStorageManagerInternal.h: Added.
* Storage/WebStorageManagerPrivate.h: Added.
* Storage/WebStorageTrackerClient.h: Added.
* Storage/WebStorageTrackerClient.mm: Added.
(WebStorageTrackerClient::sharedWebStorageTrackerClient):
(WebStorageTrackerClient::WebStorageTrackerClient):
(WebStorageTrackerClient::~WebStorageTrackerClient):
(WebStorageTrackerClient::dispatchDidModifyOriginOnMainThread):
(WebStorageTrackerClient::dispatchDidModifyOrigin):
* WebCoreSupport/WebSecurityOrigin.mm:
(-[WebSecurityOrigin protocol]):
(-[WebSecurityOrigin host]):
(-[WebSecurityOrigin databaseIdentifier]):
(-[WebSecurityOrigin domain]):
(-[WebSecurityOrigin _initWithWebCoreSecurityOrigin:]):
* WebCoreSupport/WebSecurityOriginPrivate.h:
* WebKit.exp:
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
2011-03-10 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
<rdar://problem/9117047>
Don't paint more than 60 times per second even when scrolling
* WebView/WebClipView.mm:
(-[WebClipView _immediateScrollToPoint:]):
2011-03-09 Matthew Delaney <mdelaney@apple.com>
Reviewed by Simon Fraser.
Plumb through settings for accelerated drawing for canvas
https://bugs.webkit.org/show_bug.cgi?id=56039
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
* WebView/WebPreferencesPrivate.h:
2011-03-10 Ryosuke Niwa <rniwa@webkit.org>
Reviewed by Tony Chang.
VisiblePosition's next and previous should take an enum instead of a boolean
https://bugs.webkit.org/show_bug.cgi?id=56135
SelectionController::isAll now takes EditingBoundaryCrossingRule instead of
StayInEditableContent.
* WebView/WebView.mm:
(-[WebView _selectionIsAll]):
2011-03-09 Jessie Berlin <jberlin@apple.com>
Reviewed by Adam Roben.
Use the Cookie Storage from the Private Browsing Storage Session directly
https://bugs.webkit.org/show_bug.cgi?id=55986
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2011-03-08 Darin Adler <darin@apple.com>
Reviewed by Timothy Hatcher.
Promote a method used outside WebKit from internal to private
https://bugs.webkit.org/show_bug.cgi?id=55949
* Misc/WebNSPasteboardExtras.mm: Removed an unused category declaration.
Minor tweak, not directly related to the rest of this patch.
* WebView/WebFrame.mm:
(-[WebFrame _computePageRectsWithPrintScaleFactor:pageSize:]): Moved
this method from the internal category into the private category.
Streamlined the code a bit.
* WebView/WebFrameInternal.h: Removed _computePageRects method.
* WebView/WebFramePrivate.h: Added _computePageRects method.
2011-03-07 Ryosuke Niwa <rniwa@webkit.org>
Reviewed by Darin Adler.
selectionHasStyle and selectionStartHasStyle should use EditingStyle
https://bugs.webkit.org/show_bug.cgi?id=55902
selectionHasStyle now takes a property id and a value instead of a CSSMutableStyleDeclaration.
* WebView/WebHTMLView.mm: Removed unused selectionHasStyle.
(-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): Calls Editor::selectionHasStyle.
2011-03-07 Dan Bernstein <mitz@apple.com>
LLVM Compiler build fix.
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::checkGrammarOfString):
2011-03-07 Chris Fleizach <cfleizach@apple.com>
Reviewed by Beth Dakin.
AX: WK1 needs to use ScrollView attachment for AXScrollArea, WK2 does not
https://bugs.webkit.org/show_bug.cgi?id=55706
Make sure WebDynamicScrollBarsView appear in the AX tree in WK1 (since this object
returns the scroll bar objects).
Make the accessibilityRoot object be the web area in WK1 because WebDynamicScrollBarsView
will expect that as its child, instead of the WebCore ScrollView object.
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView accessibilityIsIgnored]):
* WebView/WebFrame.mm:
(-[WebFrame accessibilityRoot]):
2011-03-07 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
Replace WebKit2's decidePolicyForMIMEType with decidePolicyForResponse
https://bugs.webkit.org/show_bug.cgi?id=55827
Renamed FrameLoaderClient::dispatchDecidePolicyForMIMEType to dispatchDecidePolicyForResponse
and pass the entire response, instead of just the MIMEType.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchDecidePolicyForResponse):
2011-03-06 Dan Bernstein <mitz@apple.com>
LLVM Compiler build fix.
* DOM/WebDOMOperations.mm:
(-[DOMHTMLInputElement _setValueForUser:]):
2011-03-06 Jessie Berlin <jberlin@apple.com>
Reviewed by Sam Weinig.
WebKit2: Use CFNetwork Sessions API.
https://bugs.webkit.org/show_bug.cgi?id=55435.
When Private Browsing is enabled, use cookies from a in-memory cookie storage based on the
Private Browsing Storage Session.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
Add support for using the new WKSI functions in WebCore.
2011-03-05 Ilya Sherman <isherman@chromium.org>
Reviewed by Darin Adler.
HTMLInputElement::setValue() should schedule change event when the element is focused
In service of https://code.google.com/p/chromium/issues/detail?id=42716
https://bugs.webkit.org/show_bug.cgi?id=53160
* DOM/WebDOMOperations.mm:
(-[DOMHTMLInputElement _setValueForUser:]): Expose HTMLInputElement::setValueForUser() to tests
* DOM/WebDOMOperationsPrivate.h:
* WebView/WebViewInternal.h:
2011-03-04 Jia Pu <jpu@apple.com>
Reviewed by Darin Adler.
On Mac, the bounding box sent to EditorClient::showCorrectionPanel() is incorrect when the correction occurs in an iframe.
https://bugs.webkit.org/show_bug.cgi?id=55717
<rdar://problem/9018127>
With the change in WebCore, the bounding box passed into EditorClient::showCorrectionPanel()
is already in window coordinate. We don't need to do further conversion anymore.
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::showCorrectionPanel):
2011-03-04 Jessie Berlin <jberlin@apple.com>
Reviewed by Maciej Stachowiak.
WebKit2: Use CFNetwork Sessions API.
https://bugs.webkit.org/show_bug.cgi?id=55435.
When Private Browsing is enabled, get the cached url response from the cache associated with
the Private Browsing Storage Session.
* WebView/WebView.mm:
(-[WebView _cachedResponseForURL:]):
2011-03-03 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Get rid of Page::globalHistoryItem
https://bugs.webkit.org/show_bug.cgi?id=55738
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::updateGlobalHistoryItemForPage):
Get the current history item and update it using -[WebView _setGlobalHistoryItem:].
* WebView/WebView.mm:
(-[WebView _globalHistoryItem]):
(-[WebView _setGlobalHistoryItem:]):
Set _globalHistoryItem ivar.
* WebView/WebViewData.h:
* WebView/WebViewData.mm:
Add _globalHistoryItem ivar.
2011-03-03 Brady Eidson <beidson@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=55721
Global IconDatabase should be returned by reference, not as a pointer
* Misc/WebCoreStatistics.mm:
(+[WebCoreStatistics iconPageURLMappingCount]):
(+[WebCoreStatistics iconRetainedPageURLCount]):
(+[WebCoreStatistics iconRecordCount]):
(+[WebCoreStatistics iconsWithDataCount]):
* Misc/WebIconDatabase.mm:
(-[WebIconDatabase init]):
(-[WebIconDatabase iconForURL:withSize:cache:]):
(-[WebIconDatabase iconURLForURL:]):
(-[WebIconDatabase defaultIconWithSize:]):
(-[WebIconDatabase retainIconForURL:]):
(-[WebIconDatabase releaseIconForURL:]):
(-[WebIconDatabase isEnabled]):
(-[WebIconDatabase setEnabled:]):
(-[WebIconDatabase removeAllIcons]):
(+[WebIconDatabase _checkIntegrityBeforeOpening]):
(-[WebIconDatabase _startUpIconDatabase]):
(-[WebIconDatabase _applicationWillTerminate:]):
(-[WebIconDatabase _resetCachedWebPreferences:]):
(importToWebCoreFormat):
* WebView/WebView.mm:
(-[WebView _dispatchDidReceiveIconFromWebFrame:]):
2011-03-03 Jessie Berlin <jberlin@apple.com>
Reviewed by Adam Roben.
WebKit2: Use CFNetwork Sessions API.
https://bugs.webkit.org/show_bug.cgi?id=55435.
Set the Private Browsing Storage Session on requests when Private Browsing is enabled.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
Support using WKCopyRequestWithStorageSession in WebCore.
2011-03-02 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
REGRESSION (WebKit2): Tab keys no longer observe Full Keyboard Access
https://bugs.webkit.org/show_bug.cgi?id=55633
<rdar://problem/8963023>
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
Removed tabsToLinks(). Mac WebKit already implements keyboardUIMode().
* WebView/WebView.mm: (-[WebView _retrieveKeyboardUIModeFromPreferences:]):
Removed an incorrect comment. We actually get a value of 2 on Snow Leopard, and we don't
require both bits to be set. The rest of the comment might be wrong too, but I'm not sure,
so I've preserved it.
2011-03-02 Jessie Berlin <jberlin@apple.com>
Rubber-stamped by Dan Bernstein.
Fix crashes in private browsing tests in WK1 on Snow Leopard.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
Put the INIT call for wkCreatePrivateStorageSession outside of the
#if !defined(BUILDING_ON_TIGER) && !defined(BUILDING_ON_LEOPARD) && !defined(BUILDING_ON_SNOW_LEOPARD)
guards.
2011-03-02 Jessie Berlin <jberlin@apple.com>
Reviewed by Adam Roben.
WebKit2: Use CFNetwork Sessions API.
https://bugs.webkit.org/show_bug.cgi?id=55435.
Add the ability to create a Private Browsing Storage Session.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
Support calling wkCreatePrivateStorageSession from WebCore.
2011-03-02 Daniel Cheng <dcheng@chromium.org>
Reviewed by David Levin.
Add feature define for data transfer items
https://bugs.webkit.org/show_bug.cgi?id=55510
* Configurations/FeatureDefines.xcconfig:
2011-03-02 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
Fix remaining localization issues by piping all localized strings through WebCore's
localization bottleneck.
<rdar://problem/8728860>
* DefaultDelegates/WebDefaultContextMenuDelegate.mm:
(-[WebDefaultUIDelegate menuItemWithTag:target:representedObject:]):
* Misc/WebKitErrors.m:
* Misc/WebLocalizableStringsInternal.h: Added.
* Misc/WebLocalizableStringsInternal.mm: Added.
(WebLocalizedStringInternal):
* Panels/WebAuthenticationPanel.m:
(-[WebAuthenticationPanel setUpForChallenge:]):
* Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::spawnPluginHost):
* WebCoreSupport/WebEditorClient.mm:
(undoNameForEditAction):
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::updateWindowTitle):
(-[WebInspectorWindowController validateUserInterfaceItem:]):
* WebCoreSupport/WebKeyGenerator.m:
(-[WebKeyGenerator strengthMenuItemTitles]):
(-[WebKeyGenerator signedPublicKeyAndChallengeStringWithStrengthIndex:challenge:pageURL:]):
* WebCoreSupport/WebPlatformStrategies.mm:
* WebView/WebHTMLView.mm:
(-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
* WebView/WebPDFView.mm:
(-[WebPDFView menuForEvent:]):
2011-03-01 Brian Weinstein <bweinstein@apple.com>
Reviewed by Adam Roben.
Part of WebKit2: Need a way to send notifications to client when cookies change
https://bugs.webkit.org/show_bug.cgi?id=55427
<rdar://problem/9056027>
Add stubs for CookiesStrategy on Mac WebKit1.
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::createCookiesStrategy):
(WebPlatformStrategies::notifyCookiesChanged):
2011-03-01 Philippe Normand <pnormand@igalia.com>
Reviewed by Eric Carlson.
[GStreamer] support in mac video fullscreen controller
https://bugs.webkit.org/show_bug.cgi?id=52280
Factored the code to configure the video overlay in a new private
method of the controller and added GStreamer support to it.
* WebView/WebVideoFullscreenController.h:
* WebView/WebVideoFullscreenController.mm:
(-[WebVideoFullscreenController setupVideoOverlay:]):
(-[WebVideoFullscreenController windowDidLoad]):
(-[WebVideoFullscreenController setMediaElement:WebCore::]):
(-[WebVideoFullscreenController windowDidExitFullscreen]):
2011-02-23 Joseph Pecoraro <joepeck@webkit.org>
Reviewed by Timothy Hatcher.
All Console Messages should be passed to ChromeClients.
https://bugs.webkit.org/show_bug.cgi?id=54926
Add a new private UIDelegate method, -webView:addMessageToConsole:withSource:,
which supersedes -webView:addMessageToConsole if it exists. The new delegate
does not filter to only JavaScript originated console messages. The old
delegate is left around for clients that expect filtered messages, like
DashCode and older versions of Safari.
The dictionary message passed to the delegate now includes more information
about the message source, type, and level.
* WebCoreSupport/WebChromeClient.mm:
(stringForMessageSource):
(stringForMessageType):
(stringForMessageLevel):
(WebChromeClient::addMessageToConsole):
* WebView/WebUIDelegatePrivate.h:
2011-03-01 Levi Weintraub <leviw@chromium.org>
Reviewed by Ryosuke Niwa.
Stop instantiating legacy editing Positions in VisiblePosition
https://bugs.webkit.org/show_bug.cgi?id=52919
Changing usage of legacy VisiblePosition constructor. Since we were dealing
with positions from DOM Ranges, we're guaranteed a parent-anchored position.
* WebView/WebFrame.mm:
(-[WebFrame _caretRectAtPosition:affinity:]):
* WebView/WebFrameInternal.h:
* WebView/WebTextCompletionController.mm:
(-[WebTextCompletionController doCompletion]):
2011-03-01 Sam Weinig <sam@webkit.org>
Reviewed by Timothy Hatcher.
WebKit2 needs to be made localizable
https://bugs.webkit.org/show_bug.cgi?id=55483
* WebCoreSupport/WebPlatformStrategies.mm:
Use WebCore's localizedString function instead of WebLocalizableStrings
since WebCore is now responsible for localization.
2011-02-25 Steve Block <steveblock@google.com>
Reviewed by Jeremy Orlow.
Bridge.h should not include BridgeJSC.h
https://bugs.webkit.org/show_bug.cgi?id=55212
Include BridgeJSC.h directly instead.
* Plugins/Hosted/ProxyInstance.h:
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
2011-02-28 Chang Shu <cshu@webkit.org>
Reviewed by Ryosuke Niwa.
Remove the support of Frame::isContentEditable and its dependencies.
https://bugs.webkit.org/show_bug.cgi?id=54292
Remove the WebKit side implementation. Make WebKit support depend on Document::inDesignMode.
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
* WebView/WebView.mm:
(-[WebView setEditable:]):
(-[WebView isEditable]):
* WebView/WebViewData.h:
2011-02-28 Oliver Hunt <oliver@apple.com>
Reviewed by Gavin Barraclough.
Make ScopeChainNode GC allocated
https://bugs.webkit.org/show_bug.cgi?id=55283
More updates for the absence of the ScopeChain class
* WebView/WebScriptDebugDelegate.mm:
(-[WebScriptCallFrame scopeChain]):
2011-02-26 Vsevolod Vlasov <vsevik@chromium.org>
Reviewed by Pavel Feldman.
DumpRenderTree should reset frame opener between tests.
https://bugs.webkit.org/show_bug.cgi?id=54874
Added clearOpener method to WebFramePrivate.
* WebView/WebFrame.mm:
(-[WebFrame _clearOpener]):
* WebView/WebFramePrivate.h:
2011-02-26 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r79764.
http://trac.webkit.org/changeset/79764
https://bugs.webkit.org/show_bug.cgi?id=55295
"broke Chromium builds" (Requested by rniwa on #webkit).
* WebView/WebFrame.mm:
* WebView/WebFramePrivate.h:
2011-02-26 Yongjun Zhang <yongjun_zhang@apple.com>
Reviewed by David Kilzer.
https://bugs.webkit.org/show_bug.cgi?id=48781
Add a resource load delegate method to query if WebCore should paint the default broken image for failed images.
Add a new resource load client method (shouldPaintBrokenImage). WebKit client can decide if WebCore
should paint the default broken image when an image fails to load or decode. The method also passes the
URL of the failed image.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::shouldPaintBrokenImage):
* WebView/WebDelegateImplementationCaching.h:
* WebView/WebDelegateImplementationCaching.mm: Added case for passing one object.
(CallResourceLoadDelegateReturningBoolean):
* WebView/WebResourceLoadDelegatePrivate.h:
* WebView/WebView.mm:
(-[WebView _cacheResourceLoadDelegateImplementations]):
2011-02-26 Vsevolod Vlasov <vsevik@chromium.org>
Reviewed by Pavel Feldman.
DumpRenderTree should reset frame opener between tests.
https://bugs.webkit.org/show_bug.cgi?id=54874
Added clearOpener method to WebFramePrivate.
* WebView/WebFrame.mm:
(-[WebFrame _clearOpener]):
* WebView/WebFramePrivate.h:
2011-02-25 Mark Rowe <mrowe@apple.com>
<rdar://problem/8902546> Build fix.
* Misc/QuickDrawCompatibility.h:
2011-02-24 Anders Carlsson <andersca@apple.com>
Fix clang build.
* WebCoreSupport/WebKeyGenerator.m:
(toWebCertificateParseResult):
(-[WebKeyGenerator addCertificatesToKeychainFromData:]):
* WebView/WebTextCompletionController.mm:
2011-02-24 Peter Kasting <pkasting@google.com>
Reviewed by Eric Seidel.
Drop the "U; " encryption level from the User Agent string.
https://bugs.webkit.org/show_bug.cgi?id=54566
* WebView/WebView.mm:
(+[WebView _standardUserAgentWithApplicationName:]):
2011-02-24 Andrew Wilson <atwilson@chromium.org>
Unreviewed, rolling out r79570.
http://trac.webkit.org/changeset/79570
https://bugs.webkit.org/show_bug.cgi?id=54874
Breaks chromium build because glue/mocks/mock_web_frame.h/cc
was not updated
* WebView/WebFrame.mm:
* WebView/WebFramePrivate.h:
2011-02-24 Vsevolod Vlasov <vsevik@chromium.org>
Reviewed by Alexey Proskuryakov.
DumpRenderTree should reset frame opener between tests.
https://bugs.webkit.org/show_bug.cgi?id=54874
Added clearOpener method to WebFramePrivate.
* WebView/WebFrame.mm:
(-[WebFrame _clearOpener]):
* WebView/WebFramePrivate.h:
2011-02-22 Laszlo Gombos <laszlo.1.gombos@nokia.com>
Reviewed by Alexey Proskuryakov.
Drop the language tag part from the User Agent string
https://bugs.webkit.org/show_bug.cgi?id=54560
* WebView/WebView.mm:
(+[WebView _standardUserAgentWithApplicationName:]): Drop the
language tag part.
2011-02-22 Brady Eidson <beidson@apple.com>
Reviewed by Anders Carlsson.
Part of <rdar://problem/8762042> and https://bugs.webkit.org/show_bug.cgi?id=54514
API to view and delete Application Cache data by origin.
* WebCoreSupport/WebApplicationCache.mm:
(+[WebApplicationCache deleteAllApplicationCaches]): Move this implementation into WebCore itself.
2011-02-17 Ryosuke Niwa <rniwa@webkit.org>
Reviewed by Kent Tamura.
Rename Position::node() to Position::deprecatedNode()
https://bugs.webkit.org/show_bug.cgi?id=54622
* WebView/WebFrame.mm:
(-[WebFrame _smartDeleteRangeForProposedRange:]):
2011-02-17 Ryosuke Niwa <rniwa@webkit.org>
Reviewed by Kent Tamura.
Rename Position::node() to Position::deprecatedNode()
https://bugs.webkit.org/show_bug.cgi?id=54622
Done the rename.
* WebView/WebFrame.mm:
(-[WebFrame _smartDeleteRangeForProposedRange:]): Since newStart and newEnd are parent-anchored,
use containerNode() and offsetInContainerNode() instead of deprecated member functions.
2011-02-18 Gavin Barraclough <barraclough@apple.com>
Reviewed by Sam Weinig.
Bug 54786 - Devirtualize JSCell::classInfo()
Instead of making a virtual function call, add a pointer to the ClassInfo
onto Structure.
This removes a virtual function call, and paves the way towards removing all
the createStructure methods, and StructureFlags/AnonymousSlotCount properties
(these should be able to move onto ClassInfo).
Calls to Structure::create must now pass a pointer to the ClassInfo for the
structure. All objects now have a ClassInfo pointer, non-object cell types
still do not.
Changes are most mechanical, involving three steps:
* Remove virtual classInfo() methods.
* Add &s_info parameter to calls to Structure::create.
* Rename ClassInfo static members on classes from 'info' to 's_info',
for consistency.
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyRuntimeMethod::ProxyRuntimeMethod):
(WebKit::ProxyRuntimeMethod::createStructure):
* Plugins/Hosted/ProxyRuntimeObject.h:
(WebKit::ProxyRuntimeObject::createStructure):
* Plugins/Hosted/ProxyRuntimeObject.mm:
(WebKit::ProxyRuntimeObject::ProxyRuntimeObject):
* WebView/WebView.mm:
(aeDescFromJSValue):
2011-02-19 Brian Ryner <bryner@chromium.org>
Reviewed by Adam Barth.
Add missing #include of DocumentLoader.h, needed since the transitive
include through Document.h is removed.
https://bugs.webkit.org/show_bug.cgi?id=50489
* WebView/WebFrame.mm:
2011-02-19 Charlie Reis <creis@chromium.org>
Reviewed by Mihai Parparita.
Ensure loading has stopped in HistoryController::goToItem
https://bugs.webkit.org/show_bug.cgi?id=54517
Add a FrameLoaderClient callback for whether to stop loading before goToItem.
Test: http/tests/navigation/forward-to-fragment-fires-onload.html
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::shouldStopLoadingForHistoryItem): Added.
* WebCoreSupport/WebFrameLoaderClient.h:
2011-02-16 David Hyatt <hyatt@apple.com>
Reviewed by Dan Bernstein.
https://bugs.webkit.org/show_bug.cgi?id=54244
Convert the line box tree to floating point and eliminate font rounding hacks. This patch removes all of the rounding
hacks from the Font code and makes sure all Font APIs involving width measurement and width offsets use floats.
The line box tree's x, y and logicalWidth members have all been converted to floats and all of the line box APIs have
been changed as well.
In terms of pixel adjustments, overflow is using an enclosing model (so it will be enclosingIntRect of a line box's x/y/width/height).
Background and border painting is using a rounding model, so borders and backgrounds will round to the nearest pixel when painting.
Replaced elements still snap to integer positions on lines, and they use a rounding model as well, although their underlying line boxes
still have a precise floating point position.
Justification will now allow subpixel positioning to occur as well. Platforms that don't support subpixel positioning should already
be rounding justification spacing in their font code.
Many layout test results change on Mac, since rounding hacks were used there and are now gone.
* Misc/WebKitNSStringExtras.mm:
(-[NSString _web_drawAtPoint:font:textColor:allowingFontSmoothing:]):
(-[NSString _web_widthWithFont:]):
2011-02-10 Luiz Agostini <luiz.agostini@openbossa.org>
Reviewed by Adam Roben.
HTML5 <details> and <summary>: localized text
https://bugs.webkit.org/show_bug.cgi?id=54260
The method defaultDetailsSummaryText was added to LocalizationStrategy class. It is used to
provide the default label to be used by a <details> tag that has no <summary> child.
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::defaultDetailsSummaryText):
2011-02-16 Matthew Delaney <mdelaney@apple.com>
Reviewed by Simon Fraser.
Allow acceleratesDrawing for WebKit2
https://bugs.webkit.org/show_bug.cgi?id=54511
Plumb through preference for accelerated drawing.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences acceleratedDrawingEnabled]):
(-[WebPreferences setAcceleratedDrawingEnabled:]):
* WebView/WebPreferencesPrivate.h:
2011-02-15 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/54505> Move -[WebDynamicScrollBarsView inProgrammaticScroll] to WebDynamicScrollBarsViewInternal.h
Reviewed by Darin Adler.
* WebView/WebDynamicScrollBarsView.h:
(-[WebDynamicScrollBarsView inProgrammaticScroll]): Removed
declaration.
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView inProgrammaticScroll]): Moved
implementation into correct category.
* WebView/WebDynamicScrollBarsViewInternal.h:
(-[WebDynamicScrollBarsView inProgrammaticScroll]): Added
declaration.
* WebView/WebHTMLView.mm: Included
WebDynamicScrollBarsViewInternal.h instead of
WebDynamicScrollBarsView.h.
2011-02-14 Oliver Hunt <oliver@apple.com>
Reviewed by Gavin Barraclough and Geoff Garen.
Refactor handles and weak pointers to become nicer and more automatic
https://bugs.webkit.org/show_bug.cgi?id=54415
Update to use Global<> instead of ProtectedPtr, and refactored slightly
to get global data to places it's needed for when we're assigning to
Global<>s
* ForwardingHeaders/collector/handles/Global.h: Added.
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::get):
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::idForObject):
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::forget):
(WebKit::NetscapePluginInstanceProxy::getWindowNPObject):
(WebKit::NetscapePluginInstanceProxy::getPluginElementNPObject):
(WebKit::NetscapePluginInstanceProxy::evaluate):
(WebKit::NetscapePluginInstanceProxy::invoke):
(WebKit::NetscapePluginInstanceProxy::invokeDefault):
(WebKit::NetscapePluginInstanceProxy::construct):
(WebKit::NetscapePluginInstanceProxy::addValueToArray):
* WebView/WebScriptDebugger.h:
* WebView/WebScriptDebugger.mm:
(WebScriptDebugger::WebScriptDebugger):
2011-02-15 Jia Pu <jpu@apple.com>
Reviewed by Darin Adler.
Autocorrection should respect undo.
https://bugs.webkit.org/show_bug.cgi?id=52221
<rdar://problem/8663399>
Please see WebCore/ChangeLog for detailed description.
* WebCoreSupport/WebEditorClient.h: Updated for the new function declared in EditorClient.
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::recordAutocorrectionResponse): Ditto.
* WebView/WebFrame.mm:
(-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
Adopted new signature of ReplaceSelectionCommand::create().
2011-02-15 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/54485> Fix spelling of -inProgramaticScroll
Reviewed by Darin Adler.
* WebView/WebDynamicScrollBarsView.h:
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView inProgrammaticScroll]): Renamed from
-inProgramaticScroll.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _frameOrBoundsChanged]): Corrected method name.
2011-02-15 Kenneth Russell <kbr@google.com>
Reviewed by Darin Fisher.
Allow controlling minimum DOMTimer interval on a per-page basis
https://bugs.webkit.org/show_bug.cgi?id=54312
Added needed methods to implement LayoutTestController's new
setMinimumTimerInterval method.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
(+[WebView _defaultMinimumTimerInterval]):
(-[WebView _setMinimumTimerInterval:]):
* WebView/WebViewPrivate.h:
2011-02-11 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
A little more encapsulation for the heap: Removed CollectorHeapIterator
https://bugs.webkit.org/show_bug.cgi?id=54298
* Misc/WebCoreStatistics.mm:
(+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
(+[WebCoreStatistics javaScriptObjectTypeCounts]): Updated for new typedef.
2011-02-10 Nate Chapin <japhet@chromium.org>
Reviewed by Adam Barth.
Update calls to DocumentWriter.
https://bugs.webkit.org/show_bug.cgi?id=50489
* WebView/WebFrame.mm:
(-[WebFrame _canProvideDocumentSource]):
2011-02-10 Chris Fleizach <cfleizach@apple.com>
Reviewed by Anders Carlsson.
AX: AX needs to stop using WebCoreViewFactory
https://bugs.webkit.org/show_bug.cgi?id=54153
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2011-02-10 Peter Varga <pvarga@webkit.org>
Reviewed by Csaba Osztrogonác.
Remove PCRE source from trunk
https://bugs.webkit.org/show_bug.cgi?id=54188
* ForwardingHeaders/pcre/pcre.h: Removed.
2011-02-09 Pavel Feldman <pfeldman@chromium.org>
Reviewed by Yury Semikhatsky.
Web Inspector: follow up on InspectorAgent split -
removing unnecessary methods from InspectorController.
https://bugs.webkit.org/show_bug.cgi?id=54093
* WebInspector/WebInspector.mm:
(-[WebInspector showConsole:]):
(-[WebInspector stopProfilingJavaScript:]):
2011-02-08 Dan Bernstein <mitz@apple.com>
Reviewed by Jon Honeycutt and Maciej Stachowiak.
<rdar://problem/8959420> Find in Mail no longer cycles around
* WebView/WebHTMLView.mm:
(-[WebHTMLView searchFor:direction:caseSensitive:wrap:startInSelection:]): Set
the wrap option according to the flag.
2011-02-08 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r77980.
http://trac.webkit.org/changeset/77980
https://bugs.webkit.org/show_bug.cgi?id=54043
"Crashes on Windows and Linux..." (Requested by leviw on
#webkit).
* WebView/WebFrame.mm:
(-[WebFrame _caretRectAtNode:offset:affinity:]):
* WebView/WebFrameInternal.h:
* WebView/WebTextCompletionController.mm:
(-[WebTextCompletionController doCompletion]):
2011-02-08 Levi Weintraub <leviw@chromium.org>
Reviewed by Ryosuke Niwa.
Stop instantiating legacy editing Positions in VisiblePosition
https://bugs.webkit.org/show_bug.cgi?id=52919
Changing usage of legacy VisiblePosition constructor. Since we were dealing
with positions from DOM Ranges, we're guaranteed a parent-anchored position.
* WebView/WebFrame.mm:
(-[WebFrame _caretRectAtPosition:affinity:]):
* WebView/WebFrameInternal.h:
* WebView/WebTextCompletionController.mm:
(-[WebTextCompletionController doCompletion]):
2011-02-08 Adam Barth <abarth@webkit.org>
Reviewed by Eric Seidel.
Remove orphan code from old parser
https://bugs.webkit.org/show_bug.cgi?id=53984
* WebCoreSupport/WebChromeClient.h:
2011-02-02 Ilya Tikhonovsky <loislo@chromium.org>
Reviewed by Yury Semikhatsky.
Web Inspector: move InspectorController's methods from InspectorAgent to InspectorController.
https://bugs.webkit.org/show_bug.cgi?id=53169
Minor change enforced by major changes in WebCore/inspector/InspectorController.
* WebInspector/WebInspector.mm:
(-[WebInspector isTimelineProfilingEnabled]):
2011-02-07 Enrica Casucci <enrica@apple.com>
Reviewed Adam Roben and Darin Adler.
WebKit2: drag and drop support on Windows.
https://bugs.webkit.org/show_bug.cgi?id=52775
Removed createDragImageForLink from DragClient.
* WebCoreSupport/WebDragClient.h:
* WebCoreSupport/WebDragClient.mm:
(WebDragClient::startDrag):
2011-02-03 Yury Semikhatsky <yurys@chromium.org>
Reviewed by Pavel Feldman.
Web Inspector: remove settings related methods from InspectorClient
https://bugs.webkit.org/show_bug.cgi?id=53686
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorClient::openInspectorFrontend):
(WebInspectorFrontendClient::WebInspectorFrontendClient):
2011-02-03 James Kozianski <koz@chromium.org>
Reviewed by Dimitri Glazkov.
Add navigator.registerProtocolHandler behind a flag.
https://bugs.webkit.org/show_bug.cgi?id=52609
* Configurations/FeatureDefines.xcconfig:
2011-02-03 Adam Langley <agl@chromium.org>
Reviewed by Adam Barth.
Plumb mixed script URL to FrameLoaderClient
https://bugs.webkit.org/show_bug.cgi?id=52384
Regressions covered by http/tests/security/mixedContent/*
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::didRunInsecureContent):
2011-02-03 Beth Dakin <bdakin@apple.com>
Reviewed by Sam Weinig.
Fix for <rdar://problem/8944544> Ability to animate track
for WKPainter scrollers
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2011-02-02 Mark Rowe <mrowe@apple.com>
Reviewed by Beth Dakin.
<rdar://problem/8928367> Crash when loading canvas pages inside HTMLCanvasElement::createImageBuffer().
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Add some missing initializers.
2011-02-02 Steve Lacey <sjl@chromium.org>
Reviewed by Eric Carlson.
Implement basic media statistics on media elements.
https://bugs.webkit.org/show_bug.cgi?id=53322
* Configurations/FeatureDefines.xcconfig:
2011-02-01 Sam Weinig <sam@webkit.org>
Reviewed by Beth Dakin.
Part 2 for <rdar://problem/8492788>
Adopt WKScrollbarPainterController
Use header detection to define scrollbar painting controller #define.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2011-02-01 David Hyatt <hyatt@apple.com>
Reviewed by Oliver Hunt.
https://bugs.webkit.org/show_bug.cgi?id=53520
Remove the physical terminology from IntRect and FloatRect.
Now that we have flipped RenderBlocks for vertical-rl and horizontal-bt writing modes,
we need to update our terminology to be more accurate.
I'm borrowing a page from AppKit here (which also supports flipped NSViews) and
renaming right() and bottom() to maxX() and maxY(). These terms remain accurate
even for flipped rectangles.
* WebView/WebHTMLView.mm:
(setNeedsDisplayInRect):
2011-02-01 Beth Dakin <bdakin@apple.com>
Reviewed by Sam Weinig.
Fix for <rdar://problem/8492788> Adopt WKScrollbarPainterController
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2011-02-01 Dave Hyatt <hyatt@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=46422, make printing and pagination work
with vertical text.
Change printing functions to check writing-mode and properly swap width and height
as needed.
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView setScrollOrigin:updatePositionAtAll:immediately:]):
* WebView/WebFrame.mm:
(-[WebFrame _computePageRectsWithPrintScaleFactor:pageSize:]):
* WebView/WebFrameInternal.h:
* WebView/WebHTMLView.mm:
(-[WebHTMLView _web_setPrintingModeRecursive]):
(-[WebHTMLView _web_clearPrintingModeRecursive]):
(-[WebHTMLView _web_setPrintingModeRecursiveAndAdjustViewSize]):
(-[WebHTMLView _beginPrintModeWithMinimumPageWidth:height:maximumPageWidth:]):
(-[WebHTMLView _beginPrintModeWithPageWidth:height:shrinkToFit:]):
(-[WebHTMLView _endPrintMode]):
(-[WebHTMLView _beginScreenPaginationModeWithPageSize:shrinkToFit:]):
(-[WebHTMLView _endScreenPaginationMode]):
(-[WebHTMLView layoutToMinimumPageWidth:height:maximumPageWidth:adjustingViewSize:]):
(-[WebHTMLView _setPrinting:minimumPageLogicalWidth:logicalHeight:maximumPageLogicalWidth:adjustViewSize:paginateScreenContent:]):
(-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]):
(-[WebHTMLView _scaleFactorForPrintOperation:]):
(-[WebHTMLView setPageWidthForPrinting:]):
(-[WebHTMLView knowsPageRange:]):
2011-01-31 Oliver Hunt <oliver@apple.com>
Convert markstack to a slot visitor API
https://bugs.webkit.org/show_bug.cgi?id=53219
rolling r77098, r77099, r77100, r77109, and
r77111 back in, along with a few more Qt fix attempts.
* WebView/WebScriptDebugDelegate.mm:
(-[WebScriptCallFrame scopeChain]):
2011-01-30 Csaba Osztrogonác <ossy@webkit.org>
Unreviewed, rolling out r77098, r77099, r77100, r77109, and
r77111.
http://trac.webkit.org/changeset/77098
http://trac.webkit.org/changeset/77099
http://trac.webkit.org/changeset/77100
http://trac.webkit.org/changeset/77109
http://trac.webkit.org/changeset/77111
https://bugs.webkit.org/show_bug.cgi?id=53219
Qt build is broken
* WebView/WebScriptDebugDelegate.mm:
(-[WebScriptCallFrame scopeChain]):
2011-01-30 Oliver Hunt <oliver@apple.com>
Convert markstack to a slot visitor API
https://bugs.webkit.org/show_bug.cgi?id=53219
rolling r77006 and r77020 back in.
* WebView/WebScriptDebugDelegate.mm:
(-[WebScriptCallFrame scopeChain]):
2011-01-28 Geoffrey Garen <ggaren@apple.com>
Reviewed by Maciej Stachowiak.
Some more Heap cleanup.
https://bugs.webkit.org/show_bug.cgi?id=53357
Updated for JavaScriptCore changes.
* Misc/WebCoreStatistics.mm:
(+[WebCoreStatistics memoryStatistics]):
2011-01-28 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r77006 and r77020.
http://trac.webkit.org/changeset/77006
http://trac.webkit.org/changeset/77020
https://bugs.webkit.org/show_bug.cgi?id=53360
"Broke Windows tests" (Requested by rniwa on #webkit).
* WebView/WebScriptDebugDelegate.mm:
(-[WebScriptCallFrame scopeChain]):
2011-01-27 Oliver Hunt <oliver@apple.com>
Reviewed by Geoffrey Garen.
Convert markstack to a slot visitor API
https://bugs.webkit.org/show_bug.cgi?id=53219
Update to new marking api
* WebView/WebScriptDebugDelegate.mm:
(-[WebScriptCallFrame scopeChain]):
2011-01-28 Dan Bernstein <mitz@apple.com>
Reviewed by Sam Weinig.
<select> can't display right-to-left (rtl) languages
https://bugs.webkit.org/show_bug.cgi?id=19785
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::selectItemWritingDirectionIsNatural): Changed to return false.
(WebChromeClient::selectItemAlignmentFollowsMenuWritingDirection): Added. Returns true.
2011-01-27 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r76891.
http://trac.webkit.org/changeset/76891
https://bugs.webkit.org/show_bug.cgi?id=53280
Makes every layout test crash (Requested by othermaciej on
#webkit).
* Misc/WebIconDatabase.mm:
(-[ThreadEnabler threadEnablingSelector:]):
(importToWebCoreFormat):
2011-01-27 Nate Chapin <japhet@chromium.org>
Reviewed by Adam Barth.
Use Document::url() instead of FrameLoader::url().
https://bugs.webkit.org/show_bug.cgi?id=41165
* WebView/WebView.mm:
(-[WebView _dispatchDidReceiveIconFromWebFrame:]):
2011-01-27 Dan Bernstein <mitz@apple.com>
Rubber-stamped by Anders Carlsson.
Reverted an accidental change in r76561.
* WebView/WebHTMLView.mm:
2011-01-26 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/53192> Add experimental support for HTTP pipelining in CFNetwork
<rdar://problem/8821760>
Reviewed by Antti Koivisto.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Added initialization for
GetHTTPPipeliningPriority and SetHTTPPipeliningPriority.
2011-01-26 Beth Dakin <bdakin@apple.com>
Reviewed by Darin Adler.
Fix for <rdar://problem/8895140> Adopt WKScrollbar metrics
when using WKScrollbars.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2011-01-25 Darin Adler <darin@apple.com>
Reviewed by Anders Carlsson.
WebKit is using CSBackupSetItemExcluded incorrectly
https://bugs.webkit.org/show_bug.cgi?id=53095
rdar://problem/8790540
* Misc/WebIconDatabase.mm:
(importToWebCoreFormat): Removed code that was calling CSBackupSetItemExcluded.
It was incorrect, and this responsibility has been moved to WebCore.
2011-01-24 Chris Marrin <cmarrin@apple.com>
Reviewed by Eric Seidel.
Change ENABLE_3D_CANVAS to ENABLE_WEBGL
https://bugs.webkit.org/show_bug.cgi?id=53041
* Configurations/FeatureDefines.xcconfig:
2011-01-25 Yury Semikhatsky <yurys@chromium.org>
Reviewed by Pavel Feldman.
Web Inspector: remove "attached" state related methods from InspectorAgent
https://bugs.webkit.org/show_bug.cgi?id=53086
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController showWindow:]):
(-[WebInspectorWindowController attach]):
(-[WebInspectorWindowController detach]):
2011-01-23 Dan Bernstein <mitz@apple.com>
Reviewed by John Sullivan.
<rdar://problem/6097826> Mail's cursor does not become a resize cursor when moving mouse from scrolled email to the horizontal splitter
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::setCursor): If the current cursor comes from a cursor rect, do not override it.
2011-01-22 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=52473
Auto-scaling to avoid orphans is broken, remove dysfunctional code
* WebView/WebHTMLView.mm:
(-[WebHTMLView _setPrinting:minimumPageWidth:height:maximumPageWidth:adjustViewSize:paginateScreenContent:]):
(-[WebHTMLView _scaleFactorForPrintOperation:]):
(-[WebHTMLView knowsPageRange:]):
2011-01-21 Mark Rowe <mrowe@apple.com>
Rubber-stamped by Jon Honeycutt.
Fix the build when using Clang by removing some unused variables.
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView updateAndSetWindow]):
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController enterFullscreen:]):
(-[WebFullScreenController exitFullscreen]):
2011-01-21 Chris Rogers <crogers@google.com>
Reviewed by Darin Fisher.
Add run-time enable support for the web audio API
https://bugs.webkit.org/show_bug.cgi?id=52741
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(-[WebPreferences webAudioEnabled]):
(-[WebPreferences setWebAudioEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2011-01-20 John Sullivan <sullivan@apple.com>
Reviewed by Mark Rowe.
Shift-tab doesn't cycle through fields in http authentication panel
https://bugs.webkit.org/show_bug.cgi?id=52850
* Panels/English.lproj/WebAuthenticationPanel.nib/designable.nib:
* Panels/English.lproj/WebAuthenticationPanel.nib/keyedobjects.nib:
Re-wired the key loop so that there aren't two views with the same nextKeyView.
2011-01-20 Beth Dakin <bdakin@apple.com>
Reviewed by Geoffrey Garen.
Fix for <rdar://problem/8890255>
Allow WebKitSystemInterface to draw scrollbars
when appropriate.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2011-01-19 Simon Fraser <simon.fraser@apple.com>
Reviewed by Sam Weinig.
GraphicsLayers in subframes can get sync'd multiple times
https://bugs.webkit.org/show_bug.cgi?id=52489
* WebView/WebView.mm:
(-[WebView _syncCompositingChanges]): syncCompositingStateRecursive()
was renamed to syncCompositingStateIncludingSubframes().
2011-01-19 Darin Adler <darin@apple.com>
Reviewed by Sam Weinig.
Would like script debugging protocol method to differentiate between caught and uncaught exceptions
https://bugs.webkit.org/show_bug.cgi?id=52104
rdar://problem/8704226
* WebView/WebDelegateImplementationCaching.h:
Fix type of second integer in CallScriptDebugDelegate function overload
to be int to match the actual Objective-C method. Added a new overload
that includes a BOOL in the right place. Added a boolean named
exceptionWasRaisedExpectsHasHandlerFlag.
* WebView/WebDelegateImplementationCaching.mm:
(CallDelegate): Added overloads as above.
(CallScriptDebugDelegate): Ditto.
* WebView/WebScriptDebugDelegate.h: Added new method with the additional
boolean argument. Marked the old method informally deprecated.
* WebView/WebScriptDebugger.mm:
(WebScriptDebugger::exception): Added code to call with or without the
boolean depending on exceptionWasRaisedExpectsHasHandlerFlag.
* WebView/WebView.mm:
(-[WebView _cacheScriptDebugDelegateImplementations]): Set up the
exceptionWasRaisedExpectsHasHandlerFlag. Also fixed old code that was not
guaranteed to set didParseSourceExpectsBaseLineNumber to NO.
2011-01-19 Tony Gentilcore <tonyg@chromium.org>
Reviewed by Mihai Parparita.
Perform some forward declaration
https://bugs.webkit.org/show_bug.cgi?id=52522
* Misc/WebKitNSStringExtras.mm:
2011-01-19 Pavel Podivilov <podivilov@chromium.org>
Reviewed by Yury Semikhatsky.
Web Inspector: [JSC] scripts have incorrect starting line (always 1).
https://bugs.webkit.org/show_bug.cgi?id=52721
* WebView/WebScriptDebugger.h:
* WebView/WebScriptDebugger.mm:
(toNSString):
(WebScriptDebugger::sourceParsed):
2011-01-19 Levi Weintraub <leviw@google.com>
Reviewed by Ryosuke Niwa.
Updating to use Position::parentAnchoredEquivalent instead of
the old htmlediting rangeCompliantEquivalent.
remove rangeCompliantEquivalent and replace it with Position methods
https://bugs.webkit.org/show_bug.cgi?id=25057
* WebView/WebFrame.mm:
(-[WebFrame _smartDeleteRangeForProposedRange:]):
2011-01-18 Chris Fleizach <cfleizach@apple.com>
Reviewed by Darin Adler.
REGRESSION: A problem with Voiceover and finding links
https://bugs.webkit.org/show_bug.cgi?id=52324
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView accessibilityIsIgnored]):
2011-01-17 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/52596> Add missing DOMDocument/DOMDocumentFragment headers to Xcode project
Reviewed by Dan Bernstein.
* MigrateHeaders.make: Copy DOMDocumentFragmentPrivate.h and
DOMDocumentPrivate.h to the PrivateHeaders directory.
2011-01-17 Enrica Casucci <enrica@apple.com>
Reviewed by Alexey Proskuryakov.
Drag and drop support: refactoring of image from link and image from selection
https://bugs.webkit.org/show_bug.cgi?id=52496
This work cleans up the Mac code and makes it more similar to the Windows implementation,
avoiding the use of an NSView when the FrameView can be used.
The refactoring is a necessary step towards the complete support of drag and drop
in WebKit2.
* WebCoreSupport/WebDragClient.mm:
(WebDragClient::createDragImageForLink): Added.
* WebView/WebHTMLView.mm: Removed dragImageFromLink and dragImageFromURL.
* WebView/WebHTMLViewPrivate.h: Removed dragImageFromLink and dragImageFromURL.
2011-01-17 Pavel Feldman <pfeldman@chromium.org>
Reviewed by Yury Semikhatsky.
Web Inspector: simplify debugger enabling routine.
https://bugs.webkit.org/show_bug.cgi?id=52472
* WebInspector/WebInspector.mm:
(-[WebInspector startDebuggingJavaScript:]):
2011-01-16 Dan Bernstein <mitz@apple.com>
Reviewed by Simon Fraser.
Assertion failure (!inSetWindow) with in-process plug-in in plugins/destroy-on-setwindow.html
https://bugs.webkit.org/show_bug.cgi?id=52550
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView setWindowIfNecessary]): Removed the assertion, making sure
that inSetWindow remains YES until we exit the top-level setWindowIfNecessary.
2011-01-16 Simon Fraser <simon.fraser@apple.com>
Reviewed by Dan Bernstein.
Issues with iframes and plugins when the WebView is scaled.
<rdar://problem/6213380>
When _scaleWebView has been called on a WebView, iframes
in WebKit1 render and hit-test incorrectly, and plug-ins don't scale up.
This is caused by AppKit NSViews not playing nicely with the scale
applied through style.
Work around most of these issues by adjusting the bounds size
of widgets to allow iframe contents to paint with the correct scale,
and fix various places in the code where we relied on coordinate
transforms via NSViews (which ignore CSS transforms).
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView updateAndSetWindow]):
* WebView/WebFrameView.mm:
(-[WebFrameView setBoundsSize:]):
2011-01-16 Beth Dakin <bdakin@apple.com>
Reviewed by Kevin Decker.
Fix for <rdar://problem/8871204>
Don't try to save elasticity state. Just rely on
NSScrollElasticityAutomatic to restore the correct state.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::WebFrameLoaderClient):
(WebFrameLoaderClient::dispatchDidFirstLayout):
(WebFrameLoaderClient::provisionalLoadStarted):
2011-01-14 Simon Fraser <simon.fraser@apple.com>
Reviewed by Dan Bernstein.
Plugins render incorrectly with transformed ancestors
https://bugs.webkit.org/show_bug.cgi?id=52507
-[NSView visibleRect] gives the wrong answer if there are CSS transforms
in the ancestor chain of a plugin.
So use of this method with calls to -actualVisibleRectInWindow, which
maps rects through the render tree to compute the correct rect,
clipping via windowClipRect() if necessary.
Not testable, because doing so relies on the behavior of some
plugins, which stop rendering if setWindow passes an empty rect.
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView updateAndSetWindow]):
* Plugins/WebBaseNetscapePluginView.h:
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView actualVisibleRectInWindow]):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]):
2011-01-14 Yuzo Fujishima <yuzo@google.com>
Reviewed by Antti Koivisto.
Rename cache() to memoryCache()
https://bugs.webkit.org/show_bug.cgi?id=52433
* Misc/WebCache.mm:
(+[WebCache statistics]):
(+[WebCache setDisabled:]):
(+[WebCache isDisabled]):
* WebView/WebView.mm:
(+[WebView _setCacheModel:]):
2011-01-13 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Split out a MarkedSpace strategy object from Heap.
https://bugs.webkit.org/show_bug.cgi?id=52421
* Misc/WebCoreStatistics.mm:
(+[WebCoreStatistics memoryStatistics]): Updated for class move.
2011-01-14 Dan Bernstein <mitz@apple.com>
Reviewed by Simon Fraser.
WebKit/mac part of <rdar://problem/8441312> Crash in -[NSView _invalidateGStatesForTree]
* WebView/WebHTMLView.mm:
(-[WebHTMLView _invalidateGStatesForTree]): Override this NSView method, and bracket the call
to the superclass implementation with suspending WebCore Widget hierarchy updates. This ensures
that the NSView tree doesn’t change from under AppKit as it traverses it.
2011-01-14 Beth Dakin <bdakin@apple.com>
Reviewed by Mark Rowe.
Fix for <rdar://problem/7793902> Artifacts when scrolling
page in Safari while page is loading
Call setDrawsBackground:YES on the scrollView in
dispatchDidFirstLayout() rather than waiting until
frameLoadCompleted(). Also suspend scrolling elasticity
between provisionalLoadStarted() and dispatchDidFirstLayout()
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::WebFrameLoaderClient):
(WebFrameLoaderClient::dispatchDidFirstLayout):
(WebFrameLoaderClient::provisionalLoadStarted):
2011-01-12 Enrica Casucci <enrica@apple.com>
Reviewed by Darin Adler.
WebKit2: Add support for drag and drop
https://bugs.webkit.org/show_bug.cgi?id=52343
<rdar://problem/7660558>
The DragData class has been extended to provide
additional context from the application (keyboard state, modal windows, etc.)
as well as information of the drag pasteboard being used.
These are the changes to align the behavior for WebKit.
* WebView/WebView.mm:
(-[WebView applicationFlags:]): Added.
(-[WebView draggingEntered:]): Added parameter to the DragData constructor.
(-[WebView draggingUpdated:]): Added parameter to the DragData constructor.
(-[WebView draggingExited:]): Added parameter to the DragData constructor.
(-[WebView performDragOperation:]): Added parameter to the DragData constructor.
2011-01-12 Beth Dakin <bdakin@apple.com>
Reviewed by Anders Carlsson.
Add-on for https://bugs.webkit.org/show_bug.cgi?id=52309
Expose fixed layout through WebKit SPI
-and corresponding-
<rdar://problem/8844464>
And now with getters!
* WebView/WebView.mm:
(-[WebView _useFixedLayout]):
(-[WebView _fixedLayoutSize]):
* WebView/WebViewPrivate.h:
2011-01-12 Beth Dakin <bdakin@apple.com>
Reviewed by Anders Carlsson.
Fix for https://bugs.webkit.org/show_bug.cgi?id=52309 Expose
fixed layout through WebKit SPI
-and corresponding-
<rdar://problem/8844464>
* WebView/WebView.mm:
(-[WebView _setUseFixedLayout:]):
(-[WebView _setFixedLayoutSize:]):
* WebView/WebViewPrivate.h:
2011-01-07 Enrica Casucci <enrica@apple.com>
Reviewed by Alexey Proskuryakov.
Paste and drag and drop use different code paths to interact with the pasteboard.
https://bugs.webkit.org/show_bug.cgi?id=52093
The change consists in a refactoring of the code to have only one class that
deals with the pasteboard on Mac.
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm: Added two methods to provide to WebCore functionality
exposed by NSURLExtras.
(WebEditorClient::canonicalizeURL):
(WebEditorClient::canonicalizeURLString):
* WebCoreSupport/WebPasteboardHelper.h: Removed.
* WebCoreSupport/WebPasteboardHelper.mm: Removed.
* WebView/WebHTMLView.mm: Removed comment.
* WebView/WebView.mm: The following methods have been changed to use the new DragData
constructor that doesn't use the WebPasteboardHelper reference.
(-[WebView draggingEntered:]):
(-[WebView draggingUpdated:]):
(-[WebView draggingExited:]):
(-[WebView performDragOperation:]):
2011-01-09 Tony Gentilcore <tonyg@chromium.org>
Reviewed by Alexey Proskuryakov.
Forward declare some headers where possible
https://bugs.webkit.org/show_bug.cgi?id=52133
* WebView/WebFrame.mm:
2011-01-09 Xianzhu Wang <phnixwxz@gmail.com>
Reviewed by Darin Fisher.
https://bugs.webkit.org/show_bug.cgi?id=41441
createWindow method should only do window-creating without URL navigation
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::createWindow):
2011-01-08 Dan Bernstein <mitz@apple.com>
Try to fix the Leopard build.
* WebView/WebFullScreenController.mm:
2011-01-07 Jer Noble <jer.noble@apple.com>
Yet another Leopard build fix: NSRect and CGRect are not inter-
changable in 32-bit.
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController exitFullscreen]):
2011-01-07 Jer Noble <jer.noble@apple.com>
Fix the Leopard build: Replace CoreAnimation SL-only functions
with Leopard equivalents.
* WebView/WebFullScreenController.mm:
(+[CATransaction setDisableActions:]):
(+[CATransaction setAnimationDuration:]):
(-[WebFullScreenController _animationDuration]):
(-[WebFullscreenWindow initWithContentRect:styleMask:backing:defer:]):
2010-12-21 Jer Noble <jer.noble@apple.com>
Reviewed by Simon Fraser.
Implement WebKit Full Screen support.
https://bugs.webkit.org/show_bug.cgi?id=49481
rdar://problem/8247444
Support the new fullscreen Chrome client requests. WebView will pass
through these requests to a WebFullscreenController.
* WebCoreSupport/WebChromeClient.h: Add fullScreenRendererChanged().
* WebView/WebView.mm:
(-[WebView _supportsFullScreenForElement:WebCore::]): Check to see if the fullscreen pref has been enabled.
(-[WebView _enterFullScreenForElement:WebCore::]): Create a WebFullScreenController.
(-[WebView _exitFullScreenForElement:WebCore::]): Request that the WebFullScreenController exit fullscreen.
(-[WebView _fullScreenRendererChanged:WebCore::]): Notify the WebFullScreenController that its renderer has changed.
* WebView/WebViewData.h: Add ivar newFullscreenController.
2010-12-17 Jer Noble <jer@kokode.apple.com>
Reviewed by Simon Fraser.
Implement WebKit Full Screen support.
https://bugs.webkit.org/show_bug.cgi?id=49481
rdar://problem/8247444
This patch implements the FullScreen APIs using the new RenderFullScreen renderer and the new
Document client APIs. The RenderFullScreen renderer's CALayer is hosted in a new, fullscreen
window, and a custom CAAnimation animates that layer between the initial screen rect of the
full screen element, to its final value. WebFullscreenController will swap the WebView out of
its original window, and into the fullscreen window. The controller will replace the WebView
with a placeholder view, so that if the placeholder moves or resized while the WebView is
absent, the WebView will move back to the correct location when exiting fullscreen.
* WebView/WebFullscreenController.h: Added.
* WebView/WebFullscreenController.mm: Added.
(-[WebFullscreenController windowDidExitFullscreen:]): Close the fullscreen window.
(-[WebFullscreenController windowDidEnterFullscreen:]): Swap the webView back into the fullscreen window.
(-[WebFullscreenController animationDidStop:finished:]): Call windowDid{Exit|Enter}FullScreen as appropriate.
(-[WebFullscreenController applicationDidResignActive:]):
(-[WebFullscreenController applicationDidChangeScreenParameters:]): Resize the fullscreen window to match
the new screen parameters.
(-[WebFullscreenController enterFullscreen:]): Set up the animation that will take the fullscreen element
from its original screen rect into fullscreen.
(-[WebFullscreenController exitFullscreen]): Swap the webView back into its original window.
Set up the animation that will take the fullscreen element back into its original screen
rect.
(-[WebFullscreenController _updatePowerAssertions]): Now checks _isAnyMoviePlaying to determine
whether to disable screensaver and sleep.
(-[WebFullscreenController _isAnyMoviePlaying]): Walks through the sub-tree starting at the fullscreen element
looking for HTMLVideoElements; returns whether any are found to be playing.
(-[WebFullscreenController _animationDuration]): Returns the current animation duration, affected by control
and shift keys.
(-[WebFullscreenWindow canBecomeKeyWindow]): Allow the window to become key.
(-[WebFullscreenWindow keyDown:]): Handle the 'Esc' key.
(-[WebFullscreenWindow cancelOperation:]): Request to exit fullscreen.
(-[WebFullscreenWindow rendererLayer]): Convenience accessor.
(-[WebFullscreenWindow setRendererLayer:]): Ditto.
(-[WebFullscreenWindow backgroundLayer]): Ditto.
(-[WebFullscreenWindow animationView]): Ditto.
(MediaEventListener::MediaEventListener): Implements the EventListener protocol.
(MediaEventListener::handleEvent): Tells its delegate to _updatePowerAssertions.
2011-01-07 James Robinson <jamesr@chromium.org>
Revert "Implement mozilla's animationTime property"
https://bugs.webkit.org/show_bug.cgi?id=51952
This approach isn't quite right.
* WebView/WebHTMLView.mm:
(-[WebHTMLView drawRect:]):
* WebView/WebView.mm:
(layerSyncRunLoopObserverCallBack):
2011-01-06 Gavin Barraclough <barraclough@apple.com>
Reviewed by Geoff Garen.
Bug 52035 - Unregistering DOMWrapperWorlds is unsafe
The method DOMWrapperWorld::unregisterWorld() effectively calls the DOMWrapperWorld's
destructor early, in order to release wrappers once we know we no longer intend to use them.
Whilst it is okay to have a method to throw away wrappers (assuming we know we're willing to
lose any state stored on them) it is not okay to deregister the world from the JSGlobalData.
A sequence of events that triggers the bug would look like this:
(1) Create a DOMWrapperWorld.
(2) Register a timer in the world.
(3) Call unregisterWorld() on the world.
(4) Timer goes off, code is executed in the world, creates a Node not attached to a Document.
(5) We attempt to lookup a wrapper map for the world on the JSGlobalData, but because we've
called forgetWorld() none exists.
(6) Attempt to add a wrapper to a NULL map.
Fix the problem by not removing the JSGlobalData's wrapper map until the world really goes away.
* WebView/WebScriptWorld.mm:
(-[WebScriptWorld unregisterWorld]):
2011-01-04 Chris Fleizach <cfleizach@apple.com>
Reviewed by Sam Weinig.
WK2: Support Accessibility
https://bugs.webkit.org/show_bug.cgi?id=51859
Use rootObject() method to get top of AX tree.
* WebCoreSupport/WebFrameLoaderClient.h:
(WebFrameLoaderClient::accessibilityRemoteObject):
* WebView/WebFrame.mm:
(-[WebFrame setAccessibleName:]):
(-[WebFrame accessibilityRoot]):
* WebView/WebFrameInternal.h:
* WebView/WebFramePrivate.h:
* WebView/WebHTMLView.mm:
(-[WebHTMLView accessibilityAttributeValue:]):
(-[WebHTMLView accessibilityFocusedUIElement]):
(-[WebHTMLView accessibilityHitTest:]):
(-[WebHTMLView _accessibilityParentForSubview:]):
2011-01-04 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/51889> WebFrameLoaderClient::createMediaPlayerProxyPlugin() should use WebCore::PluginInfo.name
Reviewed by Eric Carlson.
This originally broke in r61581. It is inside an
ENABLE(PLUGIN_PROXY_FOR_VIDEO) macro, so it didn't break the Mac
build then.
* WebCoreSupport/WebFrameLoaderClient.mm: Call
(WebFrameLoaderClient::createMediaPlayerProxyPlugin): Updated to
use WebCore::PluginInfo.name instead of
-[WebBasePluginPackage name].
2011-01-02 Dan Bernstein <mitz@apple.com>
Rubber-stamped by Simon Fraser.
<rdar://problem/8812159> Update copyright strings
* Info.plist:
2010-12-29 Dan Bernstein <mitz@apple.com>
Reviewed by Ada Chan.
<rdar://problem/8758191> REGRESSION (r72887): Mail crashes when doing searches in a message due to method name conflict
https://bugs.webkit.org/show_bug.cgi?id=51717
Renamed -findString:options: to -_findString:options: in the WebDocumentOptionsSearching
protocol to avoid conflict with -[WebHTMLView(MailExtras) findString:options:] which Mail defines.
* WebView/WebDocumentInternal.h:
* WebView/WebHTMLView.mm:
(-[WebHTMLView searchFor:direction:caseSensitive:wrap:startInSelection:]):
(-[WebHTMLView _findString:options:]):
* WebView/WebView.mm:
(findString):
2010-12-28 Daniel Bates <dbates@rim.com>
Reviewed by Sam Weinig.
Substitute // MARK: for compiler-specific #pragma mark
https://bugs.webkit.org/show_bug.cgi?id=51657
For consistency, we should substitute "// MARK:" for compiler-
specific "#pragma mark" in the source files for the Mac port.
* History/WebHistory.mm:
* Plugins/WebBaseNetscapePluginView.mm:
* Plugins/WebNetscapePluginView.mm:
* WebCoreSupport/WebInspectorClient.mm:
* WebCoreSupport/WebSecurityOrigin.mm:
* WebView/WebPDFView.mm:
* WebView/WebVideoFullscreenController.mm:
* WebView/WebVideoFullscreenHUDWindowController.mm:
2010-12-23 Yongjun Zhang <yongjun_zhang@apple.com>
Reviewed by Darin Adler.
WebKit crashes at DebuggerCallFrame::functionName() if m_callFrame is the top global callframe.
https://bugs.webkit.org/show_bug.cgi?id=38535
WebScriptDebugger in WebKit has empty implementations for willExecuteProgram and didExecuteProgram. As a result,
if the top call frame is from a program, WebKitScriptDebugger doesn't record that callframe as the top frame, and
WebScriptDebugger's callframe stack is wrong from this point. That could cause crash if we trying to access the top
call frame from this stack when an exception throws because the saved top frame could be invalid.
To fix that, we need to maintain the call frame stack in willExecuteProgram and didExecuteProgram, as we did in
callEvent and returnEvent.
* WebView/WebScriptDebugger.mm:
(WebScriptDebugger::willExecuteProgram):
(WebScriptDebugger::didExecuteProgram):
2010-12-22 Sam Weinig <sam@webkit.org>
Reviewed by Darin Adler.
WebKit2 needs to mirror the frame tree in the UIProcess
https://bugs.webkit.org/show_bug.cgi?id=51546
- Add client functions to notify that a frame has been added or
removed from the page cache.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::didSaveToPageCache):
(WebFrameLoaderClient::didRestoreFromPageCache):
2010-12-22 Ryosuke Niwa <rniwa@webkit.org>
Reviewed by Eric Seidel.
Editor.h doesn't need to include SelectionController.h
https://bugs.webkit.org/show_bug.cgi?id=51441
Renamed SelectionController::EDirection to SelectionDirection.
* WebView/WebFrame.mm:
(-[WebFrame _rangeByAlteringCurrentSelection:SelectionController::direction:granularity:]):
Takes SelectionDirection instead of SelectionController::EDirection.
* WebView/WebFrameInternal.h:
* WebView/WebTextCompletionController.mm:
(-[WebTextCompletionController doCompletion]): Calls _rangeByAlteringCurrentSelection:SelectionController.
2010-12-22 Simon Fraser <simon.fraser@apple.com>
Reviewed by Darin Adler.
Cache snapshots of plug-ins before painting, to avoid script running during painting
https://bugs.webkit.org/show_bug.cgi?id=51493
When FrameView is asked to do a flattening paint (e.g. when Safari snapshots,
or when printing), plug-ins which otherwise use the CA rendering model
are sent a paint event. Some plug-ins may run script while handling this event,
or out of process plug-ins may process queued requests at this time. Running
script while inside layout or painting can have bad consequences, because it
can result in arbitrary changes to the render tree.
This patch avoids sending plug-ins paint events inside of painting. Instead,
we ask the plug-ins to cache a snapshot before we paint, and then the software
paint simply draws that snapshot.
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView drawRect:]): If we have a cached snapshot,
draw it. Also only send the snapshot message to the plugin proxy if we
know we're snapshotting, since even if creating the snapshot image failed,
we still don't want to call to the plug-in.
* Plugins/WebBaseNetscapePluginView.h: Add a retained NSImage member for the snapshot.
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView cacheSnapshot]): Create an image and draw the snapshot into it.
(-[WebBaseNetscapePluginView clearCachedSnapshot]): Clear the snapshot.
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView drawRect:]): If we have a cached snapshot, use it.
* WebCoreSupport/WebFrameLoaderClient.mm:
(NetscapePluginWidget::notifyWidget): Implement notifyWidget() and use it
to cache and clear the snapshots.
2010-12-21 Cameron Zwarich <zwarich@apple.com>
Reviewed by Darin Adler.
-[WebBasePluginPackage isNativeLibraryData:] integer underflows on zero-sized data
https://bugs.webkit.org/show_bug.cgi?id=51431
<rdar://problem/8791757>
* Plugins/WebBasePluginPackage.mm:
(-[WebBasePluginPackage isNativeLibraryData:]): Change an arithmetic expression so
it doesn't underflow.
2010-12-16 Ryosuke Niwa <rniwa@webkit.org>
Reviewed by Cameron Zwarich.
REGRESSION(r74172): 125 java tests fail on Mac
https://bugs.webkit.org/show_bug.cgi?id=51214
The regression was caused by an incorrectly adding sizeof(struct fat_header)
to a pointer for uint32_t as supposed to uint8_t.
Fixed the bug by explicitly casting it to uint8_t* before the addition.
* Plugins/WebBasePluginPackage.mm:
(-[WebBasePluginPackage isNativeLibraryData:]):
2010-12-15 Cameron Zwarich <zwarich@apple.com>
Reviewed by Darin Adler.
Clang -Wcast-align gives an error in WebBasePluginPackage.mm
https://bugs.webkit.org/show_bug.cgi?id=51144
Fix an alignment issue. OSSwapInt32 takes data that is 32-bit aligned on ARM, but
we were calling it on a byte array 32 bits at a time. While this is okay in practice,
since TCMalloc won't give us a non-32-bit aligned block array of bytes and Vector's
inline storage is at the beginning of the Vector, it is still better to fix this
and silence the warning.
* Plugins/WebBasePluginPackage.mm:
(swapIntsInHeader):
(-[WebBasePluginPackage isNativeLibraryData:]):
2010-12-14 Mark Rowe <mrowe@apple.com>
Reviewed by Sam Weinig.
<http://webkit.org/b/51064> Reproducible crash inside WebCore::MediaPlayerPrivateQTKit::createQTMovie when loading <video>
* History/WebHistoryItem.mm:
(-[WebHistoryItem description]): Test whether the string is empty rather than incorrectly
always including the target in the output.
2010-12-13 Alexey Proskuryakov <ap@apple.com>
Reviewed by Adam Barth.
https://bugs.webkit.org/show_bug.cgi?id=50953
DNS Prefetch should be an opt-in feature
* WebView/WebPreferences.mm: (+[WebPreferences initialize]): Changed default to false.
2010-12-13 Mike Thole <mthole@apple.com>
Rubber-stamped by John Sullivan.
https://bugs.webkit.org/show_bug.cgi?id=50956
WebAuthenticationPanel.nib appears to have a cut-off sentence
Replace the sentence fragment in the sheet layout with "<-- do not localize -->" style text.
The contents of this text field are updated dynamically before the sheet is displayed.
* Panels/English.lproj/WebAuthenticationPanel.nib/designable.nib:
* Panels/English.lproj/WebAuthenticationPanel.nib/keyedobjects.nib:
2010-12-13 Antti Koivisto <antti@apple.com>
Reviewed by Alexey Proskuryakov.
https://bugs.webkit.org/show_bug.cgi?id=50758
<rdar://problem/8722094>
Defer loading print stylesheets
Expose SPI for DRT for making resources load serially. This is useful for testing resource load order.
* WebView/WebView.mm:
(+[WebView _setLoadResourcesSerially:forHost:]):
* WebView/WebViewPrivate.h:
2010-12-09 Matthew Delaney <mdelaney@apple.com>
Reviewed by Simon Fraser.
Adopt new CG API for canvas
https://bugs.webkit.org/show_bug.cgi?id=50591
* WebCoreSupport/WebSystemInterface.mm:
2010-10-28 MORITA Hajime <morrita@google.com>
Reviewed by Ojan Vafai.
spellcheck does not check pasted text
https://bugs.webkit.org/show_bug.cgi?id=40092
Added asynchronous spell checking API to WebEditorClient using
-[NSSpellChecker requestCheckingOfString].
Note that WebEditorSpellCheckResponder is a small class to receive
requested spell-checking result. Note that this feature is
disabled at default.
Also added [WebPreferences setAsynchronousSpellCheckingEnabled:] to
enable the feature from LayoutTestController.
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(-[WebEditorSpellCheckResponder initWithSender:WebCore::sequence:results:]):
(-[WebEditorSpellCheckResponder perform]):
(toCoreSpellingResult):
(-[WebEditorSpellCheckResponder WTF::WebCore::]):
(WebEditorClient::requestCheckingOfString):
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences setAsynchronousSpellCheckingEnabled:]):
(-[WebPreferences asynchronousSpellCheckingEnabled]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2010-12-09 Anders Carlsson <andersca@apple.com>
Fix a bug uncovered by clang++.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]):
2010-12-09 Anders Carlsson <andersca@apple.com>
Clang++ build fixes.
Silence a couple of warnings.
* WebView/WebFrame.mm:
(-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
(-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
* WebView/WebTextCompletionController.mm:
(-[WebTextCompletionController filterKeyDown:]):
2010-12-09 David Hyatt <hyatt@apple.com>
Reviewed by Dan Bernstein.
https://bugs.webkit.org/show_bug.cgi?id=48545, Home/End, PgUp, PgDown should respect
writing-mode. This first part of the patch just patches Mac WebKit 1 views.
* WebView/WebFrameView.mm:
(-[WebFrameView _isVerticalDocument]):
(-[WebFrameView _isFlippedDocument]):
(-[WebFrameView _scrollToEndOfDocument]):
(-[WebFrameView _pageInBlockProgressionDirection:]):
(-[WebFrameView scrollPageUp:]):
(-[WebFrameView scrollPageDown:]):
2010-12-08 Andy Estes <aestes@apple.com>
Reviewed by Darin Adler.
Enable pre-HTML5 parser quirks for Apple Mail.app
https://bugs.webkit.org/show_bug.cgi?id=50727
* WebView/WebView.mm:
(-[WebView _needsPreHTML5ParserQuirks]): Return true if the embedding
application is Mail.app.
2010-12-08 Brian Weinstein <bweinstein@apple.com>
Reviewed by John Sullivan.
REGRESSION: r73429-r73490: Some Contextual menu items non-functional, such as Open Link in New Tab
https://bugs.webkit.org/show_bug.cgi?id=50683
If our context menu item already has an action, don't overwrite the action with the context menu
forwarder.
* WebView/WebHTMLView.mm:
(setMenuItemTarget):
2010-12-08 Anders Carlsson <andersca@apple.com>
Remove an unused variable.
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView setScrollOrigin:updatePosition:]):
2010-12-07 Brian Weinstein <bweinstein@apple.com>
Reviewed by John Sullivan.
Layering Violation in ContextMenu - member variable of type HitTestResult
https://bugs.webkit.org/show_bug.cgi?id=50586
Update users of ContextMenu and ContextMenuController to match where the new functions
are located.
* WebCoreSupport/WebContextMenuClient.mm:
(WebContextMenuClient::getCustomMenuFromDefaultItems):
(WebContextMenuClient::contextMenuItemSelected):
* WebView/WebHTMLView.mm:
(-[WebMenuTarget validateMenuItem:]):
2010-12-07 Brian Weinstein <bweinstein@apple.com>
Reviewed by John Sullivan.
Part of Layering Violation in ContextMenu
https://bugs.webkit.org/show_bug.cgi?id=50586
Move WebMenuTarget from ContextMenuMac to here, because having it in ContextMenuMac
was a layering violation. Also, make sure we set the menu item targets for all menu
items before showing them, because the ContextMenu constructor doesn't do that anymore.
* WebView/WebHTMLView.mm:
(+[WebMenuTarget sharedMenuTarget]): Moved from ContextMenuMac.mm.
(-[WebMenuTarget WebCore::]): Ditto.
(-[WebMenuTarget setMenuController:WebCore::]): Ditto.
(-[WebMenuTarget forwardContextMenuAction:]): Ditto.
(-[WebMenuTarget validateMenuItem:]): Ditto.
(setMenuItemTarget): Sets the target of the NSMenuItem to the shared WebMenuTarget.
(setMenuTargets): Recursively iterates over all NSMenuItems in an NSMenu (including
submenus), and calls setMenuItemTarget on them.
(-[WebHTMLView menuForEvent:]): Call setMenuTarget on all the menu items before adding
them to the menu.
2010-12-06 Darin Adler <darin@apple.com>
Reviewed by Sam Weinig.
Pass security origin to make local file decision correctly
https://bugs.webkit.org/show_bug.cgi?id=48603
* WebView/WebPDFView.mm:
(-[WebPDFView PDFViewWillClickOnLink:withURL:]): Pass security origin.
2010-12-07 Martin Robinson <mrobinson@igalia.com>
Unreviewed, rolling out r73392.
http://trac.webkit.org/changeset/73392
https://bugs.webkit.org/show_bug.cgi?id=50489
This commit caused crashes on the GTK+ bots
* WebView/WebFrame.mm:
(-[WebFrame _canProvideDocumentSource]):
2010-12-07 Kenichi Ishibashi <bashi@google.com>
Reviewed by Kent Tamura.
Let HTMLObjectElement be a form associated element
https://bugs.webkit.org/show_bug.cgi?id=48821
Modified to use FormAssociatedElement instead of HTMLFormControlElement.
* WebView/WebHTMLRepresentation.mm:
(-[WebHTMLRepresentation elementWithName:inForm:]): Modified to use
FormAssociatedElement instead of HTMLFormControlElement.
(-[WebHTMLRepresentation controlsInForm:]): Ditto.
2010-12-06 Nate Chapin <japhet@chromium.org>
Reviewed by Adam Barth.
Update calls to DocumentWriter.
https://bugs.webkit.org/show_bug.cgi?id=50489
* WebView/WebFrame.mm:
(-[WebFrame _canProvideDocumentSource]):
2010-12-06 Chris Marrin <cmarrin@apple.com>
Reviewed by Simon Fraser.
Share code between Mac (CA) and Windows (CACF) GraphicsLayer implementations
https://bugs.webkit.org/show_bug.cgi?id=49388
Got rid of GraphicsLayer::nativeLayer() call, replacing it with
GraphicsLayer::platformLayer().
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::attachRootGraphicsLayer):
2010-12-04 Dan Bernstein <mitz@apple.com>
Reviewed by Sam Weinig.
WebKit part of <rdar://problem/8145955> Add text search API for counting/marking/highlighting matches in a range
https://bugs.webkit.org/show_bug.cgi?id=50530
* WebView/WebDocumentInternal.h: Added a DOMRange parameter to -countMatchesForText:options:limit:markMatches:
* WebView/WebHTMLView.mm:
(-[WebHTMLView countMatchesForText:inDOMRange:options:limit:markMatches:]): Added DOMRange parameter,
which is passed through to WebCore.
* WebView/WebPDFView.mm:
(isFrameInRange): Added this helper function.
(-[WebPDFView countMatchesForText:inDOMRange:options:limit:markMatches:]): Added DOMRange parameter and
a check if the frame is in the range.
* WebView/WebView.mm:
(-[WebView countMatchesForText:options:highlight:limit:markMatches:]): Now calls the inDOMRange: version.
(-[WebView countMatchesForText:inDOMRange:options:highlight:limit:markMatches:]): Added DOMRange
parameter, which is passed to document views' -countMatchesForText:inDOMRange:options:limit:markMatches:.
* WebView/WebViewPrivate.h:
2010-12-03 Sam Weinig <sam@webkit.org>
Reviewed by Maciej Stachowiak.
Enable <a ping> for Mac/Windows/WebKit2 builds
<rdar://problem/8504473>
https://bugs.webkit.org/show_bug.cgi?id=50488
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]): Enable "HyperlinkAuditing" by default.
2010-12-03 Jia Pu <jpu@apple.com>
Reviewed by Darin Adler.
Need to move all code that applies correction into correction panel callback.
https://bugs.webkit.org/show_bug.cgi?id=50426
<rdar://problem/8720832>
* WebCoreSupport/WebEditorClient.h: Adopted new signature of dismissCorrectionPanel.
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::~WebEditorClient): Adopted new signature of dismissCorrectionPanel.
(WebEditorClient::showCorrectionPanel): Added more user dictionary learning code.
(WebEditorClient::dismissCorrectionPanel): Adopted new signature of dismissCorrectionPanel.
2010-12-02 Simon Fraser <simon.fraser@apple.com>
Revert r73217 and r73227 because of continued bustage.
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::attachRootGraphicsLayer):
2010-12-02 Chris Marrin <cmarrin@apple.com>
Reviewed by Simon Fraser.
Share code between Mac (CA) and Windows (CACF) GraphicsLayer implementations
https://bugs.webkit.org/show_bug.cgi?id=49388
Got rid of GraphicsLayer::nativeLayer() call, replacing it with
GraphicsLayer::platformLayer().
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::attachRootGraphicsLayer):
2010-12-02 Mark Rowe <mrowe@apple.com>
Reviewed by Beth Dakin.
<rdar://problem/8708730> Objects reported as being leaked due to lack of autorelease pool
* Misc/WebNSFileManagerExtras.m:
(setMetaData): Create an autorelease pool for the duration of the thread body.
2010-12-02 John Knottenbelt <jknotten@chromium.org>
Reviewed by Steve Block.
Move requestGeolocationPermissionForFrame to GeolocationClient
https://bugs.webkit.org/show_bug.cgi?id=50061
This change facilitates client-based geolocation implementation by
bringing together permission control into the geolocation client
interface.
Move method ChromeClient::requestGeolocationPermissionForFrame to
GeolocationClient::requestPermission, and supporting class
WebGeolocationPolicyListener. The moved code is unchanged except
that requestPermission now takes only one argument (Geolocation*)
and the Frame parameter is retrieved from the Geolocation object.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
* WebCoreSupport/WebGeolocationClient.h:
(WebGeolocationClient::cancelPermissionRequest):
* WebCoreSupport/WebGeolocationClient.mm:
(WebGeolocationClient::requestPermission):
(-[WebGeolocationPolicyListener initWithGeolocation:]):
(-[WebGeolocationPolicyListener allow]):
(-[WebGeolocationPolicyListener deny]):
2010-12-02 Joseph Pecoraro <joepeck@webkit.org>
Reviewed by Eric Carlson.
Style Fixes in WebPluginController
https://bugs.webkit.org/show_bug.cgi?id=50397
* Plugins/WebPluginController.mm:
(-[WebPluginController startAllPlugins]):
(-[WebPluginController stopAllPlugins]):
2010-12-02 John Sullivan <sullivan@apple.com>
Reviewed by Adam Roben.
Slightly speculative fix for:
<rdar://problem/8712674>
<https://bugs.webkit.org/show_bug.cgi?id=50393>
setStringValue: sometimes called with nil in [WebAuthenticationPanel setUpForChallenge]
* Panels/WebAuthenticationPanel.m:
(-[WebAuthenticationPanel setUpForChallenge:]):
If the realm is nil, use @"" instead.
2010-12-01 Jia Pu <jpu@apple.com>
Reviewed by Darin Adler.
Support multiple correction candidates panel for misspelled word on Mac OS X.
https://bugs.webkit.org/show_bug.cgi?id=50137
<rdar://problem/8568059>
This patch is for supporting multiple correction suggestion panel on Mac OS X.
The behavior and implementation is similar to that of reversion candiate panel.
* WebCoreSupport/WebEditorClient.h: Adopted new signatures defined in base class.
* WebCoreSupport/WebEditorClient.mm: Adopted new signatures defined in base class.
Added code to handle new multiple suggestion canidate panel type.
(WebEditorClient::showCorrectionPanel):
(WebEditorClient::getGuessesForWord):
2010-12-01 David Hyatt <hyatt@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=46645
Part 1 of making scrolling work with vertical text. This patch generalizes the scrollOriginX concept
recently added for horizontal RTL documents and applies it to writing modes as well. Now the
scrollOrigin is a point, since you can start off locked to the bottom or locked to the right.
This patch also fixes numerous bugs with the scrollOrigin code using native Mac NSScrollViews and
makes them behave the same as the cross-platform code (allowing for cross-platform results to be
landed).
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView adjustForScrollOriginChange]):
(-[WebDynamicScrollBarsView updateScrollers]):
(-[WebDynamicScrollBarsView reflectScrolledClipView:]):
(-[WebDynamicScrollBarsView setScrollOrigin:updatePosition:]):
(-[WebDynamicScrollBarsView scrollOrigin]):
* WebView/WebFrameView.mm:
(-[WebFrameView _scrollToBeginningOfDocument]):
(-[WebFrameView _scrollToEndOfDocument]):
2010-11-29 Dan Bernstein <mitz@apple.com>
Reviewed by Darin Adler.
WebKit Mac part of <rdar://problem/8650085> adding word-prefix search options to the text search API.
https://bugs.webkit.org/show_bug.cgi?id=50038
Based on a patch from Darin Adler.
* WebView/WebDocumentInternal.h: Removed -markAllMatchesForText:caseSensitive:limit: and
replaced -countMatchesForText:caseSensitive:limit:markMatches: with a WebFindOptions-based
method. Declared a WebDocumentOptionsSearching protocol with a new -findString:options:
method. Made WebHTMLView conform to the new protocol.
* WebView/WebHTMLView.mm:
(coreOptions): Added. Converts WebFindOptions to WebCore FindOptions.
(-[WebHTMLView searchFor:direction:caseSensitive:wrap:startInSelection:]): Changed to use
-findString:options:.
(-[WebHTMLView countMatchesForText:options:limit:markMatches:]): Changed to use WebFindOptions.
(-[WebHTMLView findString:options:]): Added. Calls through to WebCore::Editor::findString().
* WebView/WebPDFView.mm:
(-[WebPDFView countMatchesForText:options:limit:markMatches:]): Changed to use WebFindOptions.
* WebView/WebView.mm:
(-[WebView markAllMatchesForText:caseSensitive:highlight:limit:]): Now calls through to
-countMatchesForText:options:highlight:limit:markMatches.
(-[WebView countMatchesForText:caseSensitive:highlight:limit:markMatches:]): Ditto.
(-[WebView searchFor:direction:caseSensitive:wrap:startInSelection:]): Now calls through to
-findString:options:.
(incrementFrame): Changed to use WebFindOptions.
(findString): Added this helper method that performs the search using the best supported
method for the document view.
(-[WebView findString:options:]): Changed -searchFor::::: into this.
(-[WebView canMarkAllTextMatches]):
(-[WebView countMatchesForText:options:highlight:limit:markMatches:]): Updated to use
WebFindOptions.
(-[WebView unmarkAllTextMatches]): Updated for change to incrementFrame.
(-[WebView rectsForTextMatches]): Ditto.
* WebView/WebViewPrivate.h: Added WebFindOptions, -findString:options:, and WebFindOptions version
of countMatchesForText:.
2010-11-29 Jeremy Moskovich <jeremy@chromium.org>
Reviewed by David Hyatt.
Right-to-left pages should be scrollable to reveal left overflow.
https://bugs.webkit.org/show_bug.cgi?id=23556
Set and get the original x-axis scroll position and reset scroll position on HOME/END key press.
Modify WebFrameView to support setting the initial horizontal scroller's thumb position to the right for
pages with a left overflow.
* WebView/WebDynamicScrollBarsView.h:
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView inProgramaticScroll]):
(-[WebDynamicScrollBarsView refreshInitialScrollbarPosition]):
(-[WebDynamicScrollBarsView updateScrollers]):
(-[WebDynamicScrollBarsView reflectScrolledClipView:]):
(-[WebDynamicScrollBarsView setScrollOriginX:]):
(-[WebDynamicScrollBarsView scrollOriginX]):
* WebView/WebFrameView.mm:
(-[WebFrameView _scrollToBeginningOfDocument]):
(-[WebFrameView _scrollToEndOfDocument]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView _frameOrBoundsChanged]):
2010-11-22 Ryosuke Niwa <rniwa@webkit.org>
Reviewed by Tony Chang.
SelectionController::typingStyle() should return EditingStyle*
https://bugs.webkit.org/show_bug.cgi?id=49813
Changed the return value of SelectionController::typingStyle() to EditingStyle*.
Also added SelectionController::copyTypingStyle() to copy the typing style
as an instance of CSSMutableStyleDeclaration.
No tests are added since this is no behavioral change.
* WebView/WebFrame.mm:
(-[WebFrame _typingStyle]): Calls SelectionController::copyTypingStyle()
2010-11-19 Michael Saboff <msaboff@apple.com>
Reviewed by Sam Weinig
Remove DOMSVGAnimatedPathData.h from all: target to fix build.
* MigrateHeaders.make:
2010-11-19 Nikolas Zimmermann <nzimmermann@rim.com>
Reviewed by Dirk Schulze.
Convert SVGPathSeg/SVGPathSegList to the new SVGPropertyTearOff concept
https://bugs.webkit.org/show_bug.cgi?id=49580
* WebView/WebRenderLayer.mm: Add missing StyledElement.h include.
2010-11-18 Mark Rowe <mrowe@apple.com>
Rubber-stamped by Adam Roben.
<rdar://problem/8602509&8602717&8602724> Enable compaction support.
* Configurations/WebKit.xcconfig:
2010-11-18 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r72288.
http://trac.webkit.org/changeset/72288
https://bugs.webkit.org/show_bug.cgi?id=49730
'krit attempted to do that, but revert got stuck' (Requested
by antonm on #webkit).
* WebView/WebRenderLayer.mm:
2010-11-17 Nikolas Zimmermann <nzimmermann@rim.com>
Reviewed by Dirk Schulze.
Convert SVGPathSeg/SVGPathSegList to the new SVGPropertyTearOff concept
https://bugs.webkit.org/show_bug.cgi?id=49580
* WebView/WebRenderLayer.mm: Add missing StyledElement.h include.
2010-11-16 Stephanie Lewis <slewis@apple.com>
Reviewed by Geoff Garen.
<rdar://problem/8624267> Leak creating offscreen webview running fast/dom tests
Make a static provider for WebDeviceOrientationProviderMock. The old code allocated a new WebDeviceOrientationProviderMock for
every WebView, and the WebKit API doesn't support that ownership model.
* WebView/WebDeviceOrientationProviderMock.h:
* WebView/WebDeviceOrientationProviderMock.mm:
(+[WebDeviceOrientationProviderMock shared]):
2010-11-16 Dave Hyatt <hyatt@apple.com>
Reviewed by Dan Bernstein.
https://bugs.webkit.org/show_bug.cgi?id=11004
font-size:0 is ignored. Remove the minimum font size of 1 in CSSStyleSelector.
Change the pref value for minimum font size from 1 to 0. Make sure to never use the NSFont's size,
since it doesn't honor a size of 0. Instead pass the size in to the FontPlatformData(NSFont*) version
of the constructor rather than using [NSFont pointSize].
https://bugs.webkit.org/show_bug.cgi?id=49582
Negative leading is not handled correctly. There are two bugs here. The first is that
maxAscent and maxDescent can be negative, so we need a notion of whether or not we have
set them before so that we can allow them to be < 0.
The second issue is that we should understand where fonts will end up relative to
our baseline (excluding line height), and only allow those boxes to impact ascent and
descent if the actual font box (without factoring in line height) is above or below the
root line box baseline.
Added fast/css/negative-leading.html
These two bug fixes have to land together to keep the Acid 3 test rendering correctly.
* Misc/WebKitNSStringExtras.mm:
(-[NSString _web_drawAtPoint:font:textColor:allowingFontSmoothing:]):
(-[NSString _web_widthWithFont:]):
* Misc/WebStringTruncator.mm:
(fontFromNSFont):
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
2010-11-16 Anders Carlsson <andersca@apple.com>
Fix clang++ build.
* WebCoreSupport/WebFrameLoaderClient.mm:
2010-11-14 Kent Tamura <tkent@chromium.org>
Reviewed by Andreas Kling.
KeyboardEvent::keyIdentifier() should return "const String&"
https://bugs.webkit.org/show_bug.cgi?id=49426
* WebCoreSupport/WebEditorClient.mm:
(selectorForKeyEvent):
Change the type of a variable to have keyIdentifier(); String -> const String&
2010-11-12 John Knottenbelt <jknotten@chromium.org>
Reviewed by Steve Block.
Rename GeolocationControllerClient to GeolocationClient.
https://bugs.webkit.org/show_bug.cgi?id=49259
* WebCoreSupport/WebGeolocationClient.h: Renamed from WebKit/mac/WebCoreSupport/WebGeolocationControllerClient.h.
(WebGeolocationClient::webView):
(WebGeolocationClient::setEnableHighAccuracy):
* WebCoreSupport/WebGeolocationClient.mm: Renamed from WebKit/mac/WebCoreSupport/WebGeolocationControllerClient.mm.
(WebGeolocationClient::WebGeolocationClient):
(WebGeolocationClient::geolocationDestroyed):
(WebGeolocationClient::startUpdating):
(WebGeolocationClient::stopUpdating):
(WebGeolocationClient::lastPosition):
* WebKit.order:
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
2010-11-10 Beth Dakin <bdakin@apple.com>
Reviewed by Simon Fraser.
Fix for https://bugs.webkit.org/show_bug.cgi?id=49356
-[WebView _scaleWebView:] should take and origin and scroll the
document
-and corresponding-
<rdar://problem/8643921>
* WebView/WebView.mm:
(-[WebView _scaleWebView:atOrigin:]):
* WebView/WebViewPrivate.h:
2010-11-10 Csaba Osztrogonác <ossy@webkit.org>
Reviewed by David Hyatt.
HTML5 Ruby support should be mandatory feature
https://bugs.webkit.org/show_bug.cgi?id=49272
Remove Ruby as optional feature.
* Configurations/FeatureDefines.xcconfig:
2010-11-08 Ned Holbrook <nholbrook@apple.com>
Reviewed by Adam Barth.
Avoid CFAttributedString creation in ComplexTextController by adopting UniChar provider SPI.
https://bugs.webkit.org/show_bug.cgi?id=48886
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2010-11-08 Nate Chapin <japhet@chromium.org>
Unreviewed, build fix.
Clumsy typo in r71562.
* Plugins/Hosted/HostedNetscapePluginStream.mm:
(WebKit::HostedNetscapePluginStream::start):
2010-11-08 Nate Chapin <japhet@chromium.org>
Reviewed by Alexey Proskuryakov.
Interface changes in https://bugs.webkit.org/show_bug.cgi?id=27165
* Plugins/Hosted/HostedNetscapePluginStream.mm:
(WebKit::HostedNetscapePluginStream::start): Move duplicate code into NetscapePluginStreamLoader
* Plugins/WebNetscapePluginStream.mm:
(WebNetscapePluginStream::start): Move duplicate code into NetscapePluginStreamLoader
* WebView/WebView.mm:
(-[WebView _dispatchPendingLoadRequests]): Use resourceLoadScheduler() instead of cache()->loader().
2010-11-08 Anders Carlsson <andersca@apple.com>
Reviewed by Dan Bernstein.
Plug-in views should not assume that plugins are RenderEmbeddedObjects
https://bugs.webkit.org/show_bug.cgi?id=49196
<rdar://problem/8638467>
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView pluginHostDied]):
2010-11-08 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=48685
Notify UI process about focused frame
Added an empty implementation of the new ChromeClient method.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::focusedFrameChanged):
2010-11-08 Anders Carlsson <andersca@apple.com>
Build fix.
* MigrateHeaders.make:
2010-11-08 Anders Carlsson <andersca@apple.com>
Reviewed by Adam Roben.
Remove use of HIGetScaleFactor
https://bugs.webkit.org/show_bug.cgi?id=49186
<rdar://problem/8618410>
Scale factors can vary on a display-by-display basis and it doesn't make sense
to compute scale factor event coordinates like this.
* Plugins/WebNetscapePluginEventHandlerCarbon.mm:
(getCarbonEvent):
2010-11-08 Simon Fraser <simon.fraser@apple.com>
Reviewed by Sam Weinig.
Allow applets to participate in accelerated compositing
https://bugs.webkit.org/show_bug.cgi?id=49117
<rdar://problem/8625819>
If Java is being loaded via the Netscape Plugin API, create a
NetscapePluginWidget so that it has an implementation of platformLayer().
Also clean up by using early returns.
* WebCoreSupport/WebFrameLoaderClient.mm:
2010-11-07 Adam Barth <abarth@webkit.org>
Reviewed by Eric Seidel.
Rename Cache to MemoryCache
https://bugs.webkit.org/show_bug.cgi?id=49159
* Misc/WebCache.mm:
(+[WebCache statistics]):
* WebCoreSupport/WebDeviceOrientationClient.mm:
(WebDeviceOrientationClient::setController):
* WebView/WebView.mm:
2010-11-05 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=49100
ASSERT([self window]) fails in -[WebBaseNetscapePluginView restartTimers]
* Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView restartTimers]):
Removed the assertion. Multiple callers provide no guarantee that the plug-in is still alive
(see bug comments), and there seems to be no harm in executing this function in that case.
2010-11-05 Chris Marrin <cmarrin@apple.com>
Reviewed by Simon Fraser.
Move resumeAnimations/suspendAnimations from Frame to AnimationController.
https://bugs.webkit.org/show_bug.cgi?id=49073
* WebView/WebFrame.mm:
(-[WebFrame _suspendAnimations]):
(-[WebFrame _resumeAnimations]):
2010-11-04 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=49008
<rdar://problem/7906226> Frequent crashes on mail.yahoo.co.jp
Callers of NetscapePluginInstanceProxy::waitForReply() are not prepared to be deleted during
the call, unless it returns 0. There are two reasons for NetscapePluginInstanceProxy to be
deleted during wait:
- plugin crashed;
- plugin was stopped (e.g. due to a DOM modification performed by another reply that came in
while waiting).
We didn't recognize the latter.
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WebKit::PluginDestroyDeferrer::~PluginDestroyDeferrer):
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
(WebKit::NetscapePluginInstanceProxy::waitForReply):
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::didCallPluginFunction):
2010-11-05 Chris Marrin <cmarrin@apple.com>
Reviewed by Simon Fraser.
Make suspendAnimations/resumeAnimations and setCSSAnimations traverse through subframes and remember state
https://bugs.webkit.org/show_bug.cgi?id=46945
* WebView/WebFrame.mm:
(-[WebFrame _suspendAnimations]):
(-[WebFrame _resumeAnimations]):
2010-11-04 Jia Pu <jpu@apple.com>
Reviewed by Dan Bernstein.
reversion bubble in WebViews
https://bugs.webkit.org/show_bug.cgi?id=47630
<rdar://problem/8530960>
This patch is to add reversion to correction panel. Please see WebCore/ChangeLog for detail.
* WebCoreSupport/WebEditorClient.h: Adopted new signature of base class method.
* WebCoreSupport/WebEditorClient.mm: Adopted new signature of base class method. And code
change to use new reversion API in AppKit.
(WebEditorClient::WebEditorClient):
(WebEditorClient::~WebEditorClient):
(WebEditorClient::respondToChangedSelection):
(WebEditorClient::showCorrectionPanel):
(WebEditorClient::dismissCorrectionPanel):
(WebEditorClient::isShowingCorrectionPanel):
2010-11-04 Mike Thole <mthole@apple.com>
Reviewed by Dan Bernstein.
Title for images should use localized numerals
https://bugs.webkit.org/show_bug.cgi?id=49017
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::imageTitle): Use localized numerals on Snow Leopard or newer.
2010-11-02 Daniel Bates <dbates@rim.com>
Reviewed by Adam Barth.
For unnamed frames, window.name returns a generated name
https://bugs.webkit.org/show_bug.cgi?id=6751
Part 1 of 2.
Substitute FrameTree::uniqueName() for FrameTree::name() in the Mac port.
* WebView/WebFrame.mm:
(-[WebFrame name]):
2010-11-01 Brady Eidson <beidson@apple.com>
Reviewed by Anders Carlsson.
<rdar://problem/7660547> and https://bugs.webkit.org/show_bug.cgi?id=48699
Context menu support for WebKit 2.
* WebCoreSupport/WebChromeClient.h:
(WebChromeClient::showContextMenu):
2010-10-29 Daniel Bates <dbates@rim.com>
No review, rolling out 70971.
http://trac.webkit.org/changeset/70971
https://bugs.webkit.org/show_bug.cgi?id=6751
Rolling out changeset 70971 <http://trac.webkit.org/changeset/70971> since
it caused layout test failures on all bots. In particular, the
child count in a generated frame name differs after this patch. We need
to look into this further.
* WebView/WebFrame.mm:
(-[WebFrame name]):
2010-10-28 Antonio Gomes <agomes@rim.com>
Reviewed by Ojan Vafai.
Needs a "LinuxEditingBehavior", perhaps with a better name
https://bugs.webkit.org/show_bug.cgi?id=36627
Added the corresponding GTK+ setting to WebCore's EditingUnixBehavior: WebKitEditingUnixBehavior.
* WebView/WebFrame.mm:
(core):
* WebView/WebPreferencesPrivate.h:
2010-10-29 Daniel Bates <dbates@rim.com>
Reviewed by Adam Barth.
For unnamed frames, window.name returns a generated name
https://bugs.webkit.org/show_bug.cgi?id=6751
Modified Mac-port to use FrameTree::uniqueName().
* WebView/WebFrame.mm:
(-[WebFrame name]):
2010-10-29 Darin Adler <darin@apple.com>
Reviewed by Sam Weinig.
Change BackForwardList clients to use BackForwardListImpl to prepare for further refactoring
https://bugs.webkit.org/show_bug.cgi?id=48574
* History/WebBackForwardList.mm:
Use BackForwardListImpl.
2010-10-29 Alexey Proskuryakov <ap@apple.com>
Rubber-stamped by Sam Weinig.
Comment for usesDocumentViews explains it backwards. This flag is true in ToT, and we do
create views for subframes.
* WebView/WebViewData.h: Double negation is better than a lie.
2010-10-27 Jer Noble <jer.noble@apple.com>
Reviewed by Darin Adler.
Full screen video in Safari (still) exits full-screen if you switch to another
app on a multi-display system.
https://bugs.webkit.org/show_bug.cgi?id=47364
<rdar://problem/8382299>
The FullScreen window does not technically close when it deactivates, but the
two NSWindows that make up the FullScreen feature should not hide when deactivated.
* WebView/WebVideoFullscreenController.mm:
(createBackgroundFullscreenWindow): Do not set hidesOnDeactivate.
(-[WebVideoFullscreenWindow initWithContentRect:styleMask:backing:defer:]): Ditto.
* WebView/WebVideoFullscreenHUDWindowController.mm:
(-[WebVideoFullscreenHUDWindow initWithContentRect:styleMask:backing:defer:]): Ditto.
2010-10-29 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=48576
Let WebKit2 client know when a frame is a frameset
Added a blank implementation of the new FrameLoaderClient method.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchDidBecomeFrameset):
2010-10-29 Csaba Osztrogonác <ossy@webkit.org>
Reviewed by Adam Roben and David Kilzer.
Fix and cleanup of build systems
https://bugs.webkit.org/show_bug.cgi?id=48342
* Configurations/FeatureDefines.xcconfig: Remove unnecessary ENABLE_SANDBOX.
2010-10-28 Dan Bernstein <mitz@apple.com>
Reviewed by Mark Rowe.
LLVM compiler build fix
* Misc/WebDownload.mm:
(-[WebDownload initWithRequest:delegate:]): Changed the delegate type from id to
id<NSURLDownloadDelegate> to match the method signature in NSURLDownload.
2010-10-28 Ivan Krstić <ike@apple.com>
Reviewed by Mark Rowe.
Remove unused experimental proxied panel interface.
<rdar://problem/7237059>
* Plugins/Hosted/NetscapePluginHostManager.h:
* Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::hostForPlugin):
(WebKit::NetscapePluginHostManager::spawnPluginHost):
(WebKit::NetscapePluginHostManager::instantiatePlugin):
* Plugins/Hosted/NetscapePluginHostProxy.mm:
* Plugins/Hosted/WebKitPluginClient.defs:
* Plugins/Hosted/WebKitPluginHost.defs:
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
* WebView/WebPreferencesPrivate.h:
2010-10-27 Pratik Solanki <psolanki@apple.com>
Reviewed by Darin Adler.
Improve memSize calculation in [WebView _setCacheModel]
https://bugs.webkit.org/show_bug.cgi?id=48484
* WebView/WebView.mm:
(roundUpToPowerOf2): Added. Utility function to calculate the nearest power of 2.
(+[WebView _setCacheModel:]): Update memSize calculation to set it to the next
bigger power of 2. Also update WebCore cache settings.
2010-10-26 Darin Adler <darin@apple.com>
Reviewed by Sam Weinig.
WebKitTestRunner needs to support layoutTestController.dumpBackForwardList
https://bugs.webkit.org/show_bug.cgi?id=42322
rdar://problem/8193631
WebKitTestRunner needs to support layoutTestController.clearBackForwardList
https://bugs.webkit.org/show_bug.cgi?id=42333
rdar://problem/8193643
* History/WebBackForwardList.mm:
(core): Return BackForwardListImpl.
(kit): Take BackForwardListImpl.
(-[WebBackForwardList initWithBackForwardList:]): Use BackForwardListImpl.
(-[WebBackForwardList dealloc]): Ditto.
(-[WebBackForwardList finalize]): Ditto.
(-[WebBackForwardList description]): Ditto.
(-[WebBackForwardList setPageCacheSize:]): Ditto.
(-[WebBackForwardList pageCacheSize]): Ditto.
* History/WebBackForwardListInternal.h: Ditto.
* WebView/WebFrameView.mm:
(-[WebFrameView keyDown:]): Ditto.
* WebView/WebView.mm:
(-[WebView initWithCoder:]): Ditto.
(-[WebView encodeWithCoder:]): Ditto.
(-[WebView backForwardList]): Ditto.
(-[WebView setMaintainsBackForwardList:]): Ditto.
2010-10-27 Chris Rogers <crogers@google.com>
Reviewed by Chris Marrin.
Add ENABLE_WEB_AUDIO feature enable flag (initially disabled) to build-webkit
https://bugs.webkit.org/show_bug.cgi?id=48279
* Configurations/FeatureDefines.xcconfig:
2010-10-27 Beth Dakin <bdakin@apple.com>
Reviewed by Darin Adler.
Fix for https://bugs.webkit.org/show_bug.cgi?id=48385 Add WebKit
SPI to scale a WebView
-and corresponding-
<rdar://problem/8107667>
This patch adds SPI to Mac WebKit that scales the page by the given
scale factor.
* WebView/WebView.mm:
(-[WebView _scaleWebView:]):
(-[WebView _viewScaleFactor]):
* WebView/WebViewPrivate.h:
2010-10-27 Dan Bernstein <mitz@apple.com>
Reviewed by Darin Adler.
REGRESSION (r70335): Incorrect article layout in Safari Reader
https://bugs.webkit.org/show_bug.cgi?id=48436
* Misc/WebKitVersionChecks.h: Added WEBKIT_FIRST_VERSION_WITH_GET_MATCHED_CSS_RULES_RESTRICTIONS.
* WebView/WebView.mm:
(-[WebView _needsUnrestrictedGetMatchedCSSRules]): Added. Returns YES for Safari linked against
versions of WebKit that did not have the cross-origin restrictions in getMatchedCSSRules().
(-[WebView _preferencesChangedNotification:]): Call Settings::setCrossOriginCheckInGetMatchedCSSRulesDisabled()
based on the above.
2010-10-18 Jer Noble <jer.noble@apple.com>
Reviewed by Eric Carlson.
Safari fullscreen media element tickles when it should not.
https://bugs.webkit.org/show_bug.cgi?id=47861
* WebView/WebVideoFullscreenController.mm:
(-[WebVideoFullscreenController updatePowerAssertions]):
2010-10-26 Jenn Braithwaite <jennb@chromium.org>
Reviewed by Dmitry Titov.
Resource tracking failure when trying to move a frame between documents
https://bugs.webkit.org/show_bug.cgi?id=44713
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::didTransferChildFrameToNewDocument):
Empty method.
(WebFrameLoaderClient::transferLoadingResourceFromPage):
Update resource tracking for a resource load that has been transferred
to a new page.
2010-10-25 Oliver Hunt <oliver@apple.com>
Reviewed by Gavin Barraclough.
Remove exec and globalData arguments from jsNumber
https://bugs.webkit.org/show_bug.cgi?id=48270
Mechanical removal of exec parameter to jsNumber
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray):
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::numberValue):
2010-10-24 Dan Bernstein <mitz@apple.com>
Reviewed by Anders Carlsson.
Expose HitTestResult::absoluteMediaURL() via WebKit API
https://bugs.webkit.org/show_bug.cgi?id=48219
* Misc/WebElementDictionary.mm:
(+[WebElementDictionary initializeLookupTable]): Map WebElementMediaURLKey to
_absoluteMediaURL.
(-[WebElementDictionary _absoluteMediaURL]): Added. Returns absoluteMediaURL().
* WebKit.exp: Export WebElementMediaURLKey.
* WebView/WebView.mm: Define WebElementMediaURLKey.
* WebView/WebViewPrivate.h: Declare WebElementMediaURLKey.
2010-10-24 Dan Bernstein <mitz@apple.com>
Reviewed by Simon Fraser.
Removed deprecated methods from the WebHTMLHighlighter private protocol.
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::customHighlightRect): Call -highlightRectForLine:representedNode:
unconditionally.
(WebChromeClient::paintCustomHighlight): Call
-paintHighlightForBox:onLine:behindText:entireLine:representedNode: unconditionally.
* WebView/WebHTMLViewPrivate.h:
2010-10-23 Xan Lopez <xlopez@igalia.com>
Reviewed by Sam Weinig.
Unify globalData APIs
https://bugs.webkit.org/show_bug.cgi?id=47969
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::evaluate):
(WebKit::NetscapePluginInstanceProxy::invoke):
(WebKit::NetscapePluginInstanceProxy::invokeDefault):
(WebKit::NetscapePluginInstanceProxy::construct):
* WebView/WebScriptDebugDelegate.mm:
(-[WebScriptCallFrame evaluateWebScript:]):
2010-10-23 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/48186> Remove unneeded WebHTMLRepresentationInternal.h header
Reviewed by Sam Weinig.
The only method defined in WebHTMLRepresentationInternal.h is
also defined in WebHTMLRepresentation.h, so use that instead.
* WebView/WebHTMLRepresentationInternal.h: Removed.
2010-10-23 Alexey Proskuryakov <ap@apple.com>
Reviewed by Anders Carlsson.
https://bugs.webkit.org/show_bug.cgi?id=48083
<rdar://problem/8489082> Need WebKit2 API for private browsing (48083)
* WebCoreSupport/WebSystemInterface.mm: (InitWebCoreSystemInterface): Initialize the new method.
2010-10-22 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
WebKit2 needs to pass the current event modifier flags when requesting a new window
https://bugs.webkit.org/show_bug.cgi?id=48140
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::createWindow):
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchCreatePage):
Add NavigationAction parameter.
2010-10-21 Andy Estes <aestes@apple.com>
Reviewed by Eric Carlson.
WebKit shouldn't load a plug-in based on file extension if a MIME type
is specified.
https://bugs.webkit.org/show_bug.cgi?id=48046
If a MIME type is specified in an object or embed element, and that MIME
type isn't supported by an installed plug-in, WebKit shouldn't attempt
to find a plug-in based on the file extension of the url attribute.
Doing so can lead to cases where a plug-in is loaded that can't handle
resources of the MIME type specified by the author.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::createPlugin): Only check for a pluginPackage by
extension if MIME type is the empty string.
2010-10-20 Simon Fraser <simon.fraser@apple.com>
Reviewed by Dan Bernstein.
Composited elements drawn twice when WebView is layer-backed
https://bugs.webkit.org/show_bug.cgi?id=48024
<rdar://problem/7916580>
When drawing content in a layer-backed WebView, WebFrame's test
for drawing to a bitmap succeeded, causing us to paint flattened
compositing layers into the view. They would also be rendered
by the normal compositing path, resulting in double rendering.
Fix this by detecting when the WebHTMLView is being drawn into
a layer, and avoiding flattening in that case.
* WebView/WebFrame.mm:
(-[WebFrame _showFlattenedCompositingLayers:]):
(-[WebFrame _drawRect:contentsOnly:]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView drawLayer:inContext:]):
(-[WebHTMLView _web_isDrawingIntoLayer]):
* WebView/WebHTMLViewInternal.h:
2010-10-20 Dumitru Daniliuc <dumi@chromium.org>
Reviewed by David Levin.
Repost the DatabaseTracker notifications to the main thread, if needed.
https://bugs.webkit.org/show_bug.cgi?id=40655
* Storage/WebDatabaseTrackerClient.mm:
(DidModifyOriginData::dispatchToMainThread):
(DidModifyOriginData::DidModifyOriginData):
(DidModifyOriginData::dispatchDidModifyOriginOnMainThread):
(WebDatabaseTrackerClient::dispatchDidModifyOrigin):
(WebDatabaseTrackerClient::dispatchDidModifyDatabase):
2010-10-20 Simon Fraser <simon.fraser@apple.com>
Reviewed by Darin Adler.
REGRESSION(r67568-r67643): Some HTML/CSS renders upside down and backwards on Leopard
https://bugs.webkit.org/show_bug.cgi?id=47369
r46947 added code that limits the size of the layer-backed view on Leopard when
the page height exceeds 4096px (later adjusted to 2048px in r48401).
Later, r67576 altered the geometry flipping behavior to push the geometry flipping
down into WebKit. However, the code that adjusts the hosting layer's sublayer transform
to account for layer-backed view size-limiting was not fixed at the same time.
This change corrects that.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _updateLayerHostingViewPosition]):
2010-10-19 Simon Fraser <simon.fraser@apple.com>
Reviewed by Dan Bernstein.
<rdar://problem/8508422> Compositing layers aren't always displayed correctly in layer-backed WebViews
AppKit has some special code to prevent it meddling with view's layers
under layer-backed WebViews. When a layer-backed WebView became composited,
this caused our layer to remain zero-sized. Fix this by manually
setting the geometry for our layer, if the WebHTMLView has a layer.
This does not seem to be a problem if the WebView becomes layer-backed, or
stops being layer-backed after the WebView starts using compositing.
* WebView/WebHTMLView.mm:
(-[WebHTMLView attachRootLayer:]):
2010-10-20 Dirk Schulze <krit@webkit.org>
Reviewed by Nikolas Zimmermann.
Merge ColorSpace and ImageColorSpace enums
https://bugs.webkit.org/show_bug.cgi?id=47922
Renamed ColorSpace enum entries DeviceColorSpace and sRGBColorSpace to ColorSpaceDeviceRGB and ColorSpaceSRGB
to follow webkit style rules.
* Misc/WebKitNSStringExtras.mm:
(-[NSString _web_drawAtPoint:font:textColor:allowingFontSmoothing:]):
2010-10-19 Alexey Proskuryakov <ap@apple.com>
Reviewed by Anders Carlsson.
https://bugs.webkit.org/show_bug.cgi?id=47933
<rdar://problem/8494337> navigator.language doesn't work in WebKit2
* Misc/WebNSUserDefaultsExtras.mm: Moved code for computing default language to WebCore.
We need to keep _webkit_preferredLanguageCode for Safari.
* WebCoreSupport/WebSystemInterface.mm: (InitWebCoreSystemInterface):
Initialize wkCopyCFLocalizationPreferredName.
* WebCoreSupport/WebViewFactory.mm: Removed defaultLanguage. WebCore was the only caller.
2010-10-18 Alexey Proskuryakov <ap@apple.com>
Reviewed by David Kilzer.
https://bugs.webkit.org/show_bug.cgi?id=47864
Convert WebNSUserDefaultsExtras.m to .mm
Also, fixed some issues in the process:
- removed locking, which was only necessary when this code was in Foundation;
- fixed notification center observer to actually work (previously, it picked up changes
when application preferences changed, not when system language did);
- removed unused NSString category;
- updated style.
* Misc/WebNSUserDefaultsExtras.m: Removed.
* Misc/WebNSUserDefaultsExtras.mm: Copied from WebKit/mac/Misc/WebNSUserDefaultsExtras.m.
(createHTTPStyleLanguageCode):
(+[NSUserDefaults _webkit_defaultsDidChange]):
(addLanguageChangeObserver):
(+[NSUserDefaults _webkit_preferredLanguageCode]):
2010-10-18 Stuart Morgan <stuartmorgan@chromium.org>
Reviewed by Eric Seidel.
Switch to using the new Carbon NPAPI event declarations, and remove
the old ones.
https://bugs.webkit.org/show_bug.cgi?id=40784
* Plugins/WebNetscapePluginEventHandlerCarbon.mm:
(WebNetscapePluginEventHandlerCarbon::mouseEntered):
(WebNetscapePluginEventHandlerCarbon::mouseExited):
(WebNetscapePluginEventHandlerCarbon::mouseMoved):
(WebNetscapePluginEventHandlerCarbon::focusChanged):
2010-10-18 Pavel Podivilov <podivilov@chromium.org>
Reviewed by Timothy Hatcher.
Web Inspector: disable private browsing for inspector
https://bugs.webkit.org/show_bug.cgi?id=47827
* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController init]):
2010-10-14 Ilya Tikhonovsky <loislo@chromium.org>
Reviewed by Pavel Feldman.
Web Inspector: inspector settings/properties/states management
should be extracted into separate class.
We have a lot of flags/values in InspectorController.
Some flags are persisting into profile.
Others are part of inspector state for frontend.
All these flags should keep their values after navigation.
It'd be better to extract these flags/values into separate
class which will care about theirs lifetime.
https://bugs.webkit.org/show_bug.cgi?id=47275
* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController showWindow:]):
(-[WebInspectorWindowController attach]):
(-[WebInspectorWindowController detach]):
2010-10-13 Gavin Barraclough <barraclough@apple.com>
Reviewed by Oliver Hunt.
https://bugs.webkit.org/show_bug.cgi?id=43987
Switch XMLHttpRequest, FileReader, and FileReaderSync to use a Stringbuilder
to construct their internal result string. Remove ScriptString (this is now
redundant).
* WebCoreSupport/WebFrameLoaderClient.mm:
2010-10-12 Andy Estes <aestes@apple.com>
Rubber-stamped by Darin Adler.
Check in some cleanup from the previous commit.
* WebView/WebView.mm:
(leakMailQuirksUserScriptPath): Renamed to indicate that this function
leaks an NSString.
(-[WebView _injectMailQuirksScript]): Moved a static initialization from
a separate class method into the only method that used it and removed
the now-unnecessary class method.
2010-10-12 Eric Seidel <eric@webkit.org>
Reviewed by Darin Adler.
REGRESSION (new parser): Leopard/Tiger Mail <head>/<body> quirk is gone
https://bugs.webkit.org/show_bug.cgi?id=45693
Re-implement this former WebCore parser quirk as a
Mac-only userscript-based quirk. As far as I can tell
from Darin's description this should satisfy Mail's needs.
* Misc/MailQuirksUserScript.js: Added.
* WebView/WebView.mm:
(+[WebView _mailQuirksUserScript]):
(-[WebView _injectMailQuirksScript]):
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
2010-10-12 Simon Fraser <simon.fraser@apple.com>
Reviewed by Sam Weinig.
Add 'didDraw' callback for framerate tracking
https://bugs.webkit.org/show_bug.cgi?id=47478
Add a callback at the end of -[WebHTMLView drawRect:] so
a delegate can get notified when a draw happens.
* WebView/WebHTMLView.mm:
(-[WebHTMLView drawRect:]):
* WebView/WebUIDelegatePrivate.h:
2010-10-11 Anders Carlsson <andersca@apple.com>
Reviewed by Darin Adler.
Remove WebIconFetcher from WebKit and IconFetcher from WebCore
https://bugs.webkit.org/show_bug.cgi?id=47523
Remove all traces of the WebKit WebIconFetcher class. It's SPI that nobody uses.
* Misc/WebIconFetcher.h: Removed.
* Misc/WebIconFetcher.mm: Removed.
* Misc/WebIconFetcherInternal.h: Removed.
* WebView/WebFrame.mm:
* WebView/WebFramePrivate.h:
2010-10-11 Jessie Berlin <jberlin@apple.com>
Reviewed by Darin Adler.
Add Private API for creating a WebKit2 WebSerializedScriptValue from the internal
representation of a WebKit1 WebSerializedJSValue.
https://bugs.webkit.org/show_bug.cgi?id=47439
* WebView/WebSerializedJSValue.mm:
(-[WebSerializedJSValue internalRepresentation]):
* WebView/WebSerializedJSValuePrivate.h:
2010-10-07 Jessie Berlin <jberlin@apple.com>
Reviewed by Sam Weinig.
Add Private API for creating a WebKit1 WebSerializedJSValue from the internal
representation of a WebKit2 WebSerializedScriptValue.
https://bugs.webkit.org/show_bug.cgi?id=47390
* WebView/WebSerializedJSValue.mm:
(-[WebSerializedJSValue initWithInternalRepresentation:]):
Set the WebSerializedJSValuePrivate's WebCore::SerializedScriptValue to be the passed in
internal representation.
* WebView/WebSerializedJSValuePrivate.h: Added.
2010-10-07 Antonio Gomes <agomes@rim.com>
Reviewed by Simon Fraser.
[Mac] [DRT] implement setSpatialNavigationEnabled
https://bugs.webkit.org/show_bug.cgi?id=47291
Added the needed bits to make it possible to enabled spatial navigation
for the Mac port. For now it is being only used by DRT.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences isSpatialNavigationEnabled]):
(-[WebPreferences setSpatialNavigationEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2010-10-07 Jer Noble <jer.noble@apple.com>
Fix the Leopard 64-bit build.
* Configurations/WebKit.xcconfig: Add CoreServices.framework/Frameworks to the
framework search path.
* WebView/WebVideoFullscreenController.mm: Explicitly import <OSStatus/Power.h>.
2010-10-06 Jer Noble <jer.noble@apple.com>
Reviewed by Darin Adler.
Screensaver starts while watching fullscreen playback.
https://bugs.webkit.org/show_bug.cgi?id=47299
<rdar://problem/8478956>
To disable the Screen Saver, we need to periodically call UpdateSystemActivity().
* WebView/WebVideoFullscreenController.h: Added _tickleTimer.
* WebView/WebVideoFullscreenController.mm:
(-[WebVideoFullscreenController dealloc]): Invalidate _tickleTimer.
(-[WebVideoFullscreenController _enableTickleTimer]): Create _tickleTimer.
(-[WebVideoFullscreenController _disableTickleTimer]): Invalidate _tickleTimer.
(-[WebVideoFullscreenController _tickleTimerFired]): Call UpdateSystemActivity().
(-[WebVideoFullscreenController updatePowerAssertions]): Call _enableTickleTimer
or _disableTickleTimer.
2010-10-05 Philippe Normand <pnormand@igalia.com>
Reviewed by Martin Robinson.
check for ENABLE(GLIB_SUPPORT) in WebView
https://bugs.webkit.org/show_bug.cgi?id=46788
Use ENABLE(GLIB_SUPPORT) in WebView to guard the glib runloop observer.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
(-[WebView _close]):
* WebView/WebViewData.h:
* WebView/WebViewInternal.h:
2010-10-01 Anders Carlsson <andersca@apple.com>
Fix Snow Leopard build.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::getProxy):
2010-10-01 Anders Carlsson <andersca@apple.com>
Reviewed by Dan Bernstein.
Add proxy server query function proxyServersForURL and change the Mac plug-in code to use it
https://bugs.webkit.org/show_bug.cgi?id=47022
<rdar://problem/8504712>
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::getProxy):
* Plugins/WebBaseNetscapePluginView.h:
* Plugins/WebBaseNetscapePluginView.mm:
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView getVariable:forURL:value:length:]):
2010-09-30 Darin Adler <darin@apple.com>
Reviewed by Sam Weinig.
Remove remaining calls to deprecatedParseURL
https://bugs.webkit.org/show_bug.cgi?id=26599
* DOM/WebDOMOperations.mm:
(-[DOMDocument URLWithAttributeString:]):
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::createPlugin):
Call stripLeadingAndTrailingHTMLSpaces instead of deprecatedParseURL.
2010-09-30 Anders Carlsson <andersca@apple.com>
Reviewed by Darin Adler.
-[DOMDocument _documentRange] throws an exception if there is no document element
https://bugs.webkit.org/show_bug.cgi?id=46934
<rdar://problem/8169260>
If there is no document element, just return an empty range. Otherwise we'll try to call
Range::selectNode with a null Node which will throw a NOT_FOUND exception.
* DOM/WebDOMOperations.mm:
(-[DOMDocument _documentRange]):
2010-09-30 Chris Marrin <cmarrin@apple.com>
Reviewed by Simon Fraser.
Make 2D accelerated canvas rendering build on Mac
https://bugs.webkit.org/show_bug.cgi?id=46007
Added ACCELERATED_2D_CANVAS to FeatureDefines
* Configurations/FeatureDefines.xcconfig:
2010-09-30 Dan Bernstein <mitz@apple.com>
Reviewed by John Sullivan.
Add printing SPI allowing full control over shrink-to-fit
https://bugs.webkit.org/show_bug.cgi?id=46877
* WebView/WebHTMLView.mm:
(-[WebHTMLView _beginPrintModeWithMinimumPageWidth:height:maximumPageWidth:]): Added.
* WebView/WebHTMLViewPrivate.h:
2010-09-28 Johnny Ding <jnd@chromium.org>
Reviewed by Adam Barth.
https://bugs.webkit.org/show_bug.cgi?id=41292
Some windowed plugins did not handle events through EventHandler, so we
never set right gesture state for those events.
This change is to set right allowPopupsFromPlugin flag to current
execution frame, so WeKit can always get right gesture state on Mac.
From Mac Snow Leopard, the plugin is run under "WebKitPluginHost,app"
process, that process passes the allowPopupsFromPlugin flag to
WKPCEvaluate(in NetscapePluginHostProxy.mm), then flag is set in
NetscapePluginInstanceProxy::evaluate.
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView sendEvent:isDrawRect:]):
2010-09-28 Jenn Braithwaite <jennb@chromium.org>
Reviewed by Dmitry Titov.
Added oldPage param to FrameLoaderClient::didTransferChildFrameToNewDocument.
https://bugs.webkit.org/show_bug.cgi?id=46663
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::didTransferChildFrameToNewDocument):
2010-09-26 Antonio Gomes <agomes@rim.com>
Reviewed by Kenneth Rohde Christiansen.
DRT/Mac nodesFromRect support
[Mac][DRT] Implement LayoutTestController::nodesFromRect
https://bugs.webkit.org/show_bug.cgi?id=46580
Implement nodesFromRect as a private method to access non-exposed Document
methods, similarly to computedStyleIncludingVisitedInfo.
* WebView/WebView.mm: Added JSDocument.h and JSNodeList.h to the include list.
These headers makes it possible to:
1) Get a Document off of a JSDocument;
2) Call toJS function, defined in JSNodeList.cpp|h so we can convert RefPtr<NodeList>
gotten from Document::nodesFromRect to JS bindings.
(-[WebView _nodesFromRect:forDocument:x:y:hPadding:vPadding:ignoreClipping:]):
* WebView/WebViewPrivate.h: Added nodesFromRect method to access methods of the
Document class not exposed to JavaScript. It works similarly to computedStyleIncludingVisitedInfo.
2010-09-24 Jia Pu <jpu@apple.com>
Reviewed by Dan Bernstein.
automaticSpellingCorrectionEnabled isn't updated.
https://bugs.webkit.org/show_bug.cgi?id=46486
<rdar://problem/8475212>
* WebView/WebView.mm:
(+[WebView initialize]): Should update "automaticSpellingCorrectionEnabled"
instead of "automaticTextReplacementEnabled".
2010-09-23 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=46380
REGRESSION: Crash when downloading a file
Downloading cannot be tested in DRT.
* Misc/WebNSFileManagerExtras.m: (-[NSFileManager _webkit_setMetadataURL:referrer:atPath:]):
Don't copy null strings.
2010-09-24 Ilya Tikhonovsky <loislo@chromium.org>
Reviewed by Yury Semikhatsky.
Web Inspector: CRASH at node highlight on MAC Safari.
1) run-safari --debug
2) open inspector
3) open elements panel
4) hover mouse over elements panel items multiple times
5) CRASH
Looks like it is a race condition. WebNodeHighlightView doesn't check
the pointer to WebNodeHighligh object and it can be nil.
https://bugs.webkit.org/show_bug.cgi?id=46261
* WebInspector/WebNodeHighlightView.mm:
(-[WebNodeHighlightView drawRect:]):
2010-09-23 Andy Estes <aestes@apple.com>
Reviewed by Darin Adler.
REGRESSION (r61285): some Dashboard widgets are always invisible due to
HTML parser changes.
https://bugs.webkit.org/show_bug.cgi?id=46435
Enable pre-HTML5 parser quirks if Dashboard is in backward compatibility
mode.
* WebView/WebView.mm:
(-[WebView _needsPreHTML5ParserQuirks]): Renamed from
shouldUsePreHTML5ParserQuirks(). Return true if
WebCore::Settings::usesDashboardCompatibilityMode() is true.
(-[WebView _preferencesChangedNotification:]):
(-[WebView _setDashboardBehavior:to:]): Enable pre-HTML5 parser quirks
if Dashboard behavior is set to backward compatibility mode.
2010-09-23 Matthew Delaney <mdelaney@apple.com>
Reviewed by Simon Fraser.
Reduce minimum DOMTimer interval
https://bugs.webkit.org/show_bug.cgi?id=45362
* WebView/WebView.mm:
Updating set interval call to use Settings' static version inside
one time init block.
2010-09-22 Andy Estes <aestes@apple.com>
Reviewed by Darin Adler.
REGRESSION (r61285): Microsoft Entourage 2008 does not invoke My Day window
https://bugs.webkit.org/show_bug.cgi?id=46334
Microsoft My Day loads scripts using self-closing script tags, markup
which is incompatible with the HTML5 parser. Enable parser quirks for
this application.
* WebView/WebView.mm:
(shouldUsePreHTML5ParserQuirks): Return true if the application is
Microsoft My Day and was linked against a version of WebKit prior to the
introduction of the HTML5 parser.
2010-09-23 Nate Chapin <japhet@chromium.org>
Reviewed by Darin Fisher.
Add hyperlink auditing settings (i.e., <a ping>).
https://bugs.webkit.org/show_bug.cgi?id=30458
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences setMemoryInfoEnabled:]):
(-[WebPreferences hyperlinkAuditingEnabled]):
(-[WebPreferences setHyperlinkAuditingEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2010-09-22 Alexey Proskuryakov <ap@apple.com>
Reviewed by Anders Carlsson.
https://bugs.webkit.org/show_bug.cgi?id=43667
ASSERT failure in NetscapePluginInstanceProxy::disconnectStream
Test: plugins/get-javascript-url.html
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::evaluateJavaScript): Add the stream to m_streams, just
like any other one.
2010-09-21 Darin Adler <darin@apple.com>
Reviewed by Anders Carlsson.
Fix some Objective-C GC problems and use RetainPtr instead of HardRetain/Release
https://bugs.webkit.org/show_bug.cgi?id=46220
* Misc/WebNSFileManagerExtras.m:
(setMetaData): Use CFRelease instead of HardRelease.
(-[NSFileManager _webkit_setMetadataURL:referrer:atPath:]): Use CFStringCreateCopy
instead of -[NSObject copy] combined with HardRetainWithNSRelease.
2010-09-22 Balazs Kelemen <kb@inf.u-szeged.hu>
Reviewed by Kenneth Rohde Christiansen.
PluginStrategy should satisfy the needs of Qt
https://bugs.webkit.org/show_bug.cgi?id=45857
No new functionality so no new tests.
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::getPluginInfo):
2010-09-22 Paul Knight <pknight@apple.com>
Reviewed by Simon Fraser.
-[WebView _scheduleCompositingLayerSync] should wake the run loop
https://bugs.webkit.org/show_bug.cgi?id=46226
Call CFRunLoopWakeUp to make sure the run loop is not sleeping, which could delay layer painting.
* WebView/WebView.mm:
(-[WebView _scheduleCompositingLayerSync]):
2010-09-21 Andy Estes <aestes@apple.com>
Reviewed by Darin Adler.
REGRESSION (r61285): AIM 2.1.296: Code rendered as text in Welcome screen
https://bugs.webkit.org/show_bug.cgi?id=46134
AIM clients linked against versions of WebKit prior to the introduction
of the HTML5 parser contain markup incompatible with the new parser.
Enable parser quirks in this case to remain compatible with these
clients.
* WebView/WebView.mm:
(shouldUsePreHTML5ParserQuirks): Returns true if the embedding
application is AIM and was linked against a version of WebKit prior to
the introduction of the HTML5 parser, or if the
WebKitPreHTML5ParserQuirks WebPreference is enabled.
(-[WebView _preferencesChangedNotification:]): Call
WebCore::Settings::setUsePreHTML5ParserQuirks().
2010-09-21 Steve Block <steveblock@google.com>
Reviewed by Jeremy Orlow.
DeviceOrientationClient and DeviceMotionClient should have controllerDestroyed() methods
https://bugs.webkit.org/show_bug.cgi?id=45891
Implements WebDeviceOrientationClient::deviceOrientationControllerDestroyed to delete the client.
* WebCoreSupport/WebDeviceOrientationClient.h:
* WebCoreSupport/WebDeviceOrientationClient.mm:
(WebDeviceOrientationClient::deviceOrientationControllerDestroyed):
2010-09-20 Philippe Normand <pnormand@igalia.com>
Reviewed by Eric Carlson.
[GTK] enhanced context menu for media elements
https://bugs.webkit.org/show_bug.cgi?id=45021
New localized strings for the media element context-menu.
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::contextMenuItemTagOpenVideoInNewWindow):
(WebPlatformStrategies::contextMenuItemTagOpenAudioInNewWindow):
(WebPlatformStrategies::contextMenuItemTagCopyVideoLinkToClipboard):
(WebPlatformStrategies::contextMenuItemTagCopyAudioLinkToClipboard):
(WebPlatformStrategies::contextMenuItemTagToggleMediaControls):
(WebPlatformStrategies::contextMenuItemTagToggleMediaLoop):
(WebPlatformStrategies::contextMenuItemTagEnterVideoFullscreen):
(WebPlatformStrategies::contextMenuItemTagMediaPlay):
(WebPlatformStrategies::contextMenuItemTagMediaPause):
(WebPlatformStrategies::contextMenuItemTagMediaMute):
2010-09-20 Andy Estes <aestes@apple.com>
Reviewed by Adam Barth.
REGRESSION (HTML5 Parser): Pages broken due to <tag<tag> parsing changes
https://bugs.webkit.org/show_bug.cgi?id=40961
Implement WebKitUsePreHTML5ParserQuirks preference.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]): Default WebKitUsePreHTML5ParserQuirks to
false.
(-[WebPreferences usePreHTML5ParserQuirks]):
(-[WebPreferences setUsePreHTML5ParserQuirks:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]): Update WebCore::Settings
with the value of WebKitUsePreHTML5ParserQuirks when a preference
changes.
2010-09-20 Enrica Casucci <enrica@apple.com>
Reviewed by Sam Weinig.
Pasteboard doesn't work in WebKit2.
https://bugs.webkit.org/show_bug.cgi?id=42317
<rdar://problem/7660537>
Some changes to fix style inconsistencies.
Added OBJC 2.0 style enumeration.
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::userVisibleString):
(createExcludedElementsForAttributedStringConversion):
(WebEditorClient::documentFragmentFromAttributedString): Changed parameter to be
a Vector of RefPtr.
(WebEditorClient::setInsertionPasteboard):
(WebEditorClient::pasteboardTypesForSelection):
2010-09-17 David Hyatt <hyatt@apple.com>
Reviewed by Simon Fraser.
https://bugs.webkit.org/show_bug.cgi?id=45993, convert printing to the new pagination model.
Make printing store the page height in the RenderView and push that into the layout state to
use the new pagination model. The old pagination model is retained because it is still used
for embedded WebViews.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _adjustedBottomOfPageWithTop:bottom:limit:]):
2010-09-17 Darin Adler <darin@apple.com>
Reviewed by Sam Weinig.
REGRESSION (r60104): Zoom level is unexpectedly reset on page reload
https://bugs.webkit.org/show_bug.cgi?id=42863
* WebView/WebView.mm:
(-[WebView _setZoomMultiplier:isTextOnly:]):
Call functions on Frame instead of FrameView.
2010-09-17 Matthew Delaney <mdelaney@apple.com>
Reviewed by Simon Fraser.
Reduce minimum DOMTimer interval
https://bugs.webkit.org/show_bug.cgi?id=45362
* WebView/WebView.mm: Added in a call to set the mimimum allowed DOMTimer to 4ms.
2010-09-17 Chris Marrin <cmarrin@apple.com>
Reviewed by Simon Fraser.
Add WebKitAccelerated2dCanvasEnabled flag to WebKit for Mac
https://bugs.webkit.org/show_bug.cgi?id=45911
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences accelerated2dCanvasEnabled]):
(-[WebPreferences setAccelerated2dCanvasEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2010-09-17 Jia Pu <jpu@apple.com>
Reviewed by Dan Bernstein.
WebKit should use system wide spell checking preference when application specific one isn't set.
https://bugs.webkit.org/show_bug.cgi?id=45789
<rdar://problem/8416041>
* WebView/WebView.mm:
(+[WebView initialize]): Use system wide autocorrection and text substitution preferences
when the application level preferences are not set.
2010-09-16 John Sullivan <sullivan@apple.com>
Reviewed by Darin Adler.
<rdar://problem/8395558>
https://bugs.webkit.org/show_bug.cgi?id=45938
_web_makePluginViewsPerformSelector:: mutates subviews array while iterating it
* WebView/WebHTMLView.mm:
(-[WebHTMLView _web_makePluginSubviewsPerformSelector:withObject:]):
Converted from -[NSArray _web_makePluginViewsPerformSelector:withObject:]. The old method
was only ever called on the result of -[WebHTMLView subviews]. By moving that knowledge into
this helper method, it can't be used incorrectly. Now it makes a copy of [WebHTMLView subviews]
before enumerating it, to ensure that the selector can't mutate the array being enumerated.
(-[WebHTMLView viewWillMoveToHostWindow:]):
Updated for _web_makePluginSubviewsPerformSelector:: signature change.
(-[WebHTMLView viewDidMoveToHostWindow]):
Ditto.
2010-09-16 Darin Adler <darin@apple.com>
Reviewed by Andreas Kling.
Reduce use of HTMLInputElement::inputType so we can remove it later
https://bugs.webkit.org/show_bug.cgi?id=45903
* WebView/WebHTMLRepresentation.mm:
(-[WebHTMLRepresentation elementDoesAutoComplete:]): Use isPasswordField.
(-[WebHTMLRepresentation elementIsPassword:]): Use isPasswordField.
2010-09-16 Patrick Gansterer <paroga@paroga.com>
Reviewed by Darin Adler.
Always use a valid string when setting WebKitUserStyleSheetLocationPreferenceKey.
https://bugs.webkit.org/show_bug.cgi?id=41510
This prevents usage of nil value, which would cause an uncaught exception.
* WebView/WebPreferences.mm:
(-[WebPreferences setUserStyleSheetLocation:]):
2010-09-16 Dan Bernstein <mitz@apple.com>
Reverted the previous change because r67628 has been reverted.
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
2010-09-16 Dan Bernstein <mitz@apple.com>
Build fix after r67628. Added context menu item localizable strings for the items
added in r67628, following equivalent menu items in Mac OS X when possible. However,
this set of menu items does not make much sense for Mac OS X, and this should be
addressed separately.
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::contextMenuItemTagOpenMediaInNewWindow):
(WebPlatformStrategies::contextMenuItemTagCopyMediaLinkToClipboard):
(WebPlatformStrategies::contextMenuItemTagToggleMediaControls):
(WebPlatformStrategies::contextMenuItemTagToggleMediaLoop):
(WebPlatformStrategies::contextMenuItemTagEnterVideoFullscreen):
(WebPlatformStrategies::contextMenuItemTagMediaPlay):
(WebPlatformStrategies::contextMenuItemTagMediaPause):
(WebPlatformStrategies::contextMenuItemTagMediaMute):
(WebPlatformStrategies::contextMenuItemTagMediaUnMute):
2010-09-16 Eric Uhrhane <ericu@chromium.org>
Reviewed by Jian Li.
Unify FILE_SYSTEM and FILE_WRITER enables under the name FILE_SYSTEM.
https://bugs.webkit.org/show_bug.cgi?id=45798
* Configurations/FeatureDefines.xcconfig:
2010-09-15 Simon Fraser <simon.fraser@apple.com>
Reviewed by Adam Roben.
https://bugs.webkit.org/show_bug.cgi?id=44715
maps.google.com flips upside down when zooming map using trackpad in WebKit2 on Mac
Move geometry flipping to platform-specific code.
* WebView/WebHTMLView.mm:
(-[WebHTMLView attachRootLayer:]):
2010-09-14 Jia Pu <jpu@apple.com>
Reviewed by Dan Bernstein.
Only intercept ESC key press when autocorrection UI is visible.
https://bugs.webkit.org/show_bug.cgi?id=45071
* WebCoreSupport/WebEditorClient.h: Added declaration of isShowingCorrectionPanel(),
which provides an inteface to query whether autocorrection panel is shown.
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::WebEditorClient): Defined a constant, InvalidCorrectionPanelTag,
for invalid correction panel tag. Replaced -1 with this constant.
(WebEditorClient::dismissCorrectionPanel): Ditto
(WebEditorClient::isShowingCorrectionPanel): Query whether autocorrection panel is shown.
2010-09-14 Mark Rowe <mrowe@apple.com>
Reviewed by John Sullivan.
Part of <rdar://problem/8420003>. Make it possible to override the version number used in linked-in-or-after checks.
* Misc/WebKitVersionChecks.h: Remove two unused functions from the header and add a method to set the overriden version.
* Misc/WebKitVersionChecks.m:
(WebKitLinkedOnOrAfter):
(setWebKitLinkTimeVersion): Set the overridden version.
(WebKitLinkTimeVersion): Return the overridden version if set, otherwise do the old thing.
* WebView/WebPreferences.mm:
(+[WebPreferences setWebKitLinkTimeVersion:]): Call through to set the overridden version.
* WebView/WebPreferencesPrivate.h:
2010-09-14 Eric Seidel <eric@webkit.org>
Unreviewed, reverting changes r67451 and r67451.
Broke lots of builders.
Only intercept ESC key press when autocorrection UI is visible.
https://bugs.webkit.org/show_bug.cgi?id=45071
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::WebEditorClient):
(WebEditorClient::dismissCorrectionPanel):
2010-09-14 Jia Pu <jpu@apple.com>
Reviewed by Dan Bernstein.
Only intercept ESC key press when autocorrection UI is visible.
https://bugs.webkit.org/show_bug.cgi?id=45071
* WebCoreSupport/WebEditorClient.h: Added declaration of isShowingCorrectionPanel(),
which provides an inteface to query whether autocorrection panel is shown.
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::WebEditorClient): Defined a constant, InvalidCorrectionPanelTag,
for invalid correction panel tag. Replaced -1 with this constant.
(WebEditorClient::dismissCorrectionPanel): Ditto
(WebEditorClient::isShowingCorrectionPanel): Query whether autocorrection panel is shown.
2010-09-13 Darin Adler <darin@apple.com>
Reviewed by Adam Barth.
Preparation for eliminating deprecatedParseURL
https://bugs.webkit.org/show_bug.cgi?id=45695
* DOM/WebDOMOperations.mm:
(-[DOMDocument webFrame]): Get rid of unneeded local variable.
(-[DOMDocument URLWithAttributeString:]): Remove unhelpful comment.
2010-09-13 Enrica Casucci <enrica@apple.com>
Reviewed by Sam Weinig.
Paste should be implemented in WebCore like Copy and Cut for Mac also.
https://bugs.webkit.org/show_bug.cgi?id=45494
<rdar://problem/7660537>
On the Mac platform, the implementation of the paste operation is all done
at the WebKit level. In order to support it on WebKit2 it is necessary to
refactor the code and move this functionality at the level of WebCore like
we already have on Windows.
The original code relies on some in AppKit functions that call back into
WebKit causing problems in WebKit2. All this functionality has been moved
at the level of the editor client where it can be dealt with appropriately.
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(excludedElementsForAttributedStringConversion):
(WebEditorClient::documentFragmentFromAttributedString): Added.
(WebEditorClient::setInsertionPasteboard):
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::canShowMIMETypeAsHTML): Re-implemented at the level
of the editor client.
* WebView/WebHTMLView.mm: Removed paste method.
2010-09-13 John Sullivan <sullivan@apple.com>
Reviewed by Adam Roben.
https://bugs.webkit.org/show_bug.cgi?id=45677
[WebView canMarkAllTextMatches] can crash if called after [WebView close]
<rdar://problem/8404890>
* WebView/WebView.mm:
(-[WebView canMarkAllTextMatches]):
Return NO immediately if the webview has already been closed. This was an overlooked
case from the fix for 45175.
2010-09-10 MORITA Hajime <morrita@google.com>
Reviewed by Tony Chang.
[Chromium] Implement textInputController.hasSpellingMarker() for Chromium
https://bugs.webkit.org/show_bug.cgi?id=45441
Moved the actual logic of hasSpellingMarker into WebCore to share
it with other ports.
* WebView/WebFrame.mm:
(-[WebFrame hasSpellingMarker:length:]):
2010-09-11 Adam Barth <abarth@webkit.org>
Reviewed by Sam Weinig.
Make SecurityOrigin::canDisplay an instance function
https://bugs.webkit.org/show_bug.cgi?id=45219
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::loadRequest):
* Plugins/WebNetscapePluginStream.mm:
(WebNetscapePluginStream::WebNetscapePluginStream):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
* Plugins/WebPluginContainerCheck.mm:
(-[WebPluginContainerCheck _isForbiddenFileLoad]):
* WebView/WebFrame.mm:
(-[WebFrame _allowsFollowingLink:]):
2010-09-10 Sam Weinig <sam@webkit.org>
Reviewed by Darin Adler.
Remove unnecessary constraint in WebCore of choosing either text zoom or full page zoom.
Precursor to <rdar://problem/7660657>
https://bugs.webkit.org/show_bug.cgi?id=45522
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
(-[WebView _setZoomMultiplier:isTextOnly:]):
(-[WebView _realZoomMultiplierIsTextOnly]):
* WebView/WebViewData.h:
* WebView/WebViewData.mm:
(-[WebViewPrivate init]):
Move tracking of text only zoom here from WebCore.
2010-09-10 Stephanie Lewis <slewis@apple.com>
Reviewed by Alexey Proskuryakov.
Refactor JavaScriptCore memory statistics so that WebKit doesn't need to know about the JIT and
other implementation details of JavaScriptCore. Necessary to fix PPC build.
https://bugs.webkit.org/show_bug.cgi?id=45528
* Misc/WebCoreStatistics.mm:
(+[WebCoreStatistics memoryStatistics]):
2010-09-10 Darin Adler <darin@apple.com>
Reviewed by Sam Weinig.
Move some Dashboard stuff from WebCore to WebKit along with a bit more FrameMac cleanup
https://bugs.webkit.org/show_bug.cgi?id=45582
* MigrateHeaders.make: Removed WebDashboardRegion.h from the set of header to copy.
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::dashboardRegionsChanged): Changed this to call
-[WebView _dashboardRegions] so we don't have two copies of that code.
* WebView/WebDashboardRegion.h: Copied from WebCore/page/mac/WebDashboardRegion.h.
* WebView/WebDashboardRegion.mm: Copied from WebCore/page/mac/WebDashboardRegion.m.
* WebView/WebView.mm:
(-[WebView _dashboardRegions]): Moved the code from Frame::dashboardRegions here.
2010-09-10 Adam Barth <abarth@webkit.org>
Reviewed by Darin Fisher.
Move code from WebKit-layer to DocumentLoader
https://bugs.webkit.org/show_bug.cgi?id=45569
This code is the most confused, but now should be a bit cleaner.
There's still a magical fake-setting for creating renderers that needs
to be cleaned up, but we can do that in a separate patch.
* WebView/WebFrame.mm:
(-[WebFrame _commitData:]):
* WebView/WebFrameInternal.h:
* WebView/WebHTMLRepresentation.mm:
(-[WebHTMLRepresentation receivedData:withDataSource:]):
(-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
2010-09-09 Darin Adler <darin@apple.com>
Reviewed by Adam Barth.
Move functions from Frame to SelectionController as planned
https://bugs.webkit.org/show_bug.cgi?id=45508
* WebView/WebFrame.mm:
(-[WebFrame _selectionGranularity]):
(-[WebFrame _insertParagraphSeparatorInQuotedContent]):
(-[WebFrame _typingStyle]):
(-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
* WebView/WebHTMLRepresentation.mm:
(-[WebHTMLRepresentation currentForm]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView jumpToSelection:]):
(-[WebHTMLView centerSelectionInVisibleArea:]):
(-[WebHTMLView _canSmartCopyOrDelete]):
(-[WebHTMLView _lookUpInDictionaryFromMenu:]):
(-[WebHTMLView selectionRect]):
(-[WebHTMLView selectionTextRects]):
(-[WebHTMLView selectionImageRect]):
* WebView/WebView.mm:
(-[WebView setEditable:]):
Call functions on selection().
2010-09-10 Adam Barth <abarth@webkit.org>
Reviewed by Eric Seidel.
Main resource bytes shouldn't bounce through FrameLoader
https://bugs.webkit.org/show_bug.cgi?id=45496
Now return the bytes to the DocumentLoader.
Previously, we were checking the document for null. However, Frame can
never have a null document, so this check is no longer needed.
* WebView/WebFrame.mm:
(-[WebFrame _addData:]):
2010-09-09 John Therrell <jtherrell@apple.com>
Reviewed by Alexey Proskuryakov.
Added statistics sampling and reporting for JavaScriptCore's RegisterFile and ExecutableAllocator classes
https://bugs.webkit.org/show_bug.cgi?id=45134
Added ability to enable new JavaScriptCore statistics sampling and reporting for RegisterFile
and ExecutableAllocator classes. Added reporting of JavaScriptCore's stack committed memory
and JIT code committed memory statistics to WebCoreStatistics memoryStatistics.
* Misc/WebCoreStatistics.mm:
(+[WebCoreStatistics memoryStatistics]):
Added statistics reporting for JSC RegisterFile and ExecutableAllocator.
2010-09-09 Jer Noble <jer.noble@apple.com>
Reviewed by Mark Rowe.
Use of ENABLE macro in WebUIDelegatePrivate.h breaks use from outside WebKit
<rdar://problem/8412657>
* WebView/WebUIDelegatePrivate.h: Use ENABLE_FULLSCREEN_API instead of ENABLE(FULLSCREEN_API)
2010-09-08 Darin Adler <darin@apple.com>
Reviewed by Adam Barth.
Move functions from Frame to Editor as planned
https://bugs.webkit.org/show_bug.cgi?id=45218
* WebView/WebFrame.mm:
(-[WebFrame _selectedString]):
(-[WebFrame _firstRectForDOMRange:]):
(-[WebFrame _markDOMRange]):
(-[WebFrame _setTypingStyle:withUndoAction:]):
* WebView/WebHTMLRepresentation.mm:
(-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView _selectionStartFontAttributesAsRTF]):
(-[WebHTMLView toggleBaseWritingDirection:]):
(-[WebHTMLView searchFor:direction:caseSensitive:wrap:startInSelection:]):
(-[WebHTMLView countMatchesForText:caseSensitive:limit:markMatches:]):
(-[WebHTMLView setMarkedTextMatchesAreHighlighted:]):
(-[WebHTMLView markedTextMatchesAreHighlighted]):
* WebView/WebView.mm:
(-[WebView setEditable:]):
Changed call sites to use editor().
2010-09-08 MORITA Hajime <morrita@google.com>
Reviewed by Ojan Vafai.
spellcheck does not check pasted text
https://bugs.webkit.org/show_bug.cgi?id=40092
Implemented async spell-check APIs on WebEditorClient.
The implementations are using [NSSpellChecker requestCheckingOfString]
which is available only on Mac OS 10.6 or later.
Note that [NSSpellChecker requestCheckingOfString] could invoke
the callback block on on of their worker thread, so we need to
return the result to the main thread where WebCore is running.
For that purpose, we made WebEditorSpellCheckResponder class.
Test: editing/spelling/spellcheck-pasted-text-001.html
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::isAsynchronousSpellCheckingEnabled): Added.
(-[WebEditorSpellCheckResponder initWithSender:WebCore::sequence:results:]): Added.
(-[WebEditorSpellCheckResponder perform]): Added.
(WebEditorClient::requestCheckingOfString): Added.
* WebView/WebFramePrivate.h:
2010-09-08 MORITA Hajime <morrita@google.com>
Reviewed by Tony Chang.
spelling underline gets lost on backspace
https://bugs.webkit.org/show_bug.cgi?id=41423
Switched to use a anchorNode of the selection instead of a focused
node for finer control of node selection in spellingNode():
With the focused node, we cannot select other nodes but the first
child of that node. In some case, we need to inspect these.
The API is only for LayoutTests, and the change is compatible for
existing test cases.
* WebView/WebFrame.mm:
(spellingNode):
2010-09-08 Adam Barth <abarth@webkit.org>
Rubber-stamped by Eric Seidel.
Rename DocLoader to CachedResourceLoader because that's what it does.
* WebView/WebFrame.mm:
2010-09-07 Anders Carlsson <andersca@apple.com>
Reviewed by Oliver Hunt.
Fix clang++ build.
* Misc/WebLocalizableStrings.h:
Fix a struct/tag mismatch.
* WebView/WebDeviceOrientationProviderMock.mm:
(-[WebDeviceOrientationProviderMock init]):
Remove stray semicolon.
* WebView/WebViewData.h:
Remove unused class forward declaration.
2010-09-07 Anders Carlsson <andersca@apple.com>
Reviewed by Darin Adler.
<rdar://problem/8381749> -Wcast-align warning emitted when building with clang
Remove the -Wcast-align-warning since it isn't really useful, and clang is more aggressive about warning than gcc.
* Configurations/Base.xcconfig:
2010-09-06 Adam Barth <abarth@webkit.org>
Reviewed by Darin Adler.
Rename SecurityOrigin::canLoad to canDisplay
https://bugs.webkit.org/show_bug.cgi?id=45214
Propagate name change.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::loadRequest):
* Plugins/WebNetscapePluginStream.mm:
(WebNetscapePluginStream::WebNetscapePluginStream):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
* Plugins/WebPluginContainerCheck.mm:
(-[WebPluginContainerCheck _isForbiddenFileLoad]):
* WebView/WebFrame.mm:
(-[WebFrame _allowsFollowingLink:]):
2010-09-03 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>
Reviewed by Darin Adler.
Add NetworkingContext to avoid layer violations
https://bugs.webkit.org/show_bug.cgi?id=42292
Add Mac's specific implementation of FrameNetworkingContext.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
* WebCoreSupport/WebFrameNetworkingContext.mm:
(WebFrameNetworkingContext::needsSiteSpecificQuirks):
(WebFrameNetworkingContext::localFileContentSniffingEnabled):
(WebFrameNetworkingContext::scheduledRunLoopPairs):
(WebFrameNetworkingContext::blockedError):
2010-09-03 John Sullivan <sullivan@apple.com>
Reviewed by Dan Bernstein.
https://bugs.webkit.org/show_bug.cgi?id=45175
[WebView unmarkAllTextMatches] will crash if the webview is already closed
Made this and related methods robust against being called when the WebView is closed.
* WebView/WebView.mm:
(-[WebView markAllMatchesForText:caseSensitive:highlight:limit:]):
Bail out if the WebView is closed.
(-[WebView countMatchesForText:caseSensitive:highlight:limit:markMatches:]):
Ditto.
(-[WebView unmarkAllTextMatches]):
Ditto.
(-[WebView rectsForTextMatches]):
Ditto.
2010-09-03 Hironori Bono <hbono@chromium.org>
Reviewed by Kent Tamura.
Adds textInputController.hasSpellingMarker() to avoid using pixel tests for spellchecking tests
and implements it for Mac.
https://bugs.webkit.org/show_bug.cgi?id=41832
* WebView/WebFrame.mm: Implemented [WebFrame hasSpellingMarker:length:].
(spellingNode):
(-[WebFrame hasSpellingMarker:length:]):
* WebView/WebFramePrivate.h: Added [WebFrame hasSpellingMarker:length:] so TextInputController can use it.
2010-09-02 Yury Semikhatsky <yurys@chromium.org>
Reviewed by Pavel Feldman.
REGRESSION: Crash occurs at objc_msgSend when closing a window that is displaying the web inspector
https://bugs.webkit.org/show_bug.cgi?id=44230
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::closeWindow):
(WebInspectorFrontendClient::disconnectFromBackend):
(-[WebInspectorWindowController windowShouldClose:]):
(-[WebInspectorWindowController destroyInspectorView:]):
2010-09-02 Steve Block <steveblock@google.com>
Reviewed by Adam Barth.
Hook up LayoutTestController.setMockDeviceOrientation() on Mac.
https://bugs.webkit.org/show_bug.cgi?id=43181
This patch hooks up the mock device orientation client on Mac for use
in DumpRenderTree.
The patch adds a new WebDeviceOrientationClient for Mac. This client acts
as a proxy to either a real or mock device orientation provider, both of
which implement a new WebDeviceOrientationProvider interface.
The provider is created by the embedder and passed to the WebView, from
where WebDeviceOrientationClient can access it.
The mock provider, WebDeviceOrientationProviderMock, is a wrapper around
the existing WebCore mock.
* WebCoreSupport/WebDeviceOrientationClient.h: Added.
* WebCoreSupport/WebDeviceOrientationClient.mm: Added.
(WebDeviceOrientationClient::WebDeviceOrientationClient):
(WebDeviceOrientationClient::setController):
(WebDeviceOrientationClient::startUpdating):
(WebDeviceOrientationClient::stopUpdating):
(WebDeviceOrientationClient::lastOrientation):
* WebKit.exp:
* WebView/WebDeviceOrientation.h: Added.
* WebView/WebDeviceOrientation.mm: Added.
(-[WebDeviceOrientation initWithCoreDeviceOrientation:WebCore::]):
(core):
(-[WebDeviceOrientation initWithCanProvideAlpha:alpha:canProvideBeta:beta:canProvideGamma:gamma:]):
(-[WebDeviceOrientation dealloc]):
* WebView/WebDeviceOrientationInternal.h: Added.
* WebView/WebDeviceOrientationProvider.h: Added.
* WebView/WebDeviceOrientationProviderMock.h: Added.
* WebView/WebDeviceOrientationProviderMock.mm: Added.
(-[WebDeviceOrientationProviderMockInternal setOrientation:]):
(-[WebDeviceOrientationProviderMockInternal setController:]):
(-[WebDeviceOrientationProviderMockInternal startUpdating]):
(-[WebDeviceOrientationProviderMockInternal stopUpdating]):
(-[WebDeviceOrientationProviderMockInternal lastOrientation]):
(-[WebDeviceOrientationProviderMock init]):
(-[WebDeviceOrientationProviderMock dealloc]):
(-[WebDeviceOrientationProviderMock setOrientation:]):
(-[WebDeviceOrientationProviderMock setController:]):
(-[WebDeviceOrientationProviderMock startUpdating]):
(-[WebDeviceOrientationProviderMock stopUpdating]):
(-[WebDeviceOrientationProviderMock lastOrientation]):
* WebView/WebDeviceOrientationProviderMockInternal.h: Added.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
(-[WebView _setDeviceOrientationProvider:]):
(-[WebView _deviceOrientationProvider]):
* WebView/WebViewData.h:
* WebView/WebViewPrivate.h:
2010-09-01 Jia Pu <jpu@apple.com>
Reviewed by Dan Bernstein.
Add support for autocorrection UI on Mac OS X.
https://bugs.webkit.org/show_bug.cgi?id=44958
<rdar://problem/7326847>
See detailed high level description in WebCore/ChangeLog.
* WebCoreSupport/WebEditorClient.h: Added new member methods declared in
EditorClient. Added m_correctionPanelTag to store the ID of current autocorrection UI object.
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::WebEditorClient): Initialize m_correctionPanelTag.
(WebEditorClient::~WebEditorClient): Make sure the autocorrection UI is
dismissed before destroying the object.
(WebEditorClient::respondToChangedSelection): Dismiss autocorrection UI whenever the selection changes.
(WebEditorClient::showCorrectionPanel): Show autocorrection UI.
(WebEditorClient::dismissCorrectionPanel): Dismiss autocorrection UI.
2010-09-01 Mark Rowe <mrowe@apple.com>
Reviewed by Adam Roben.
<rdar://problem/8374711> WebKit needs to compile without access to QuickDraw private headers.
* Carbon/HIViewAdapter.m:
* Carbon/HIWebView.mm:
* Misc/QuickDrawCompatibility.h: Added.
* Plugins/WebNetscapePluginView.mm:
2010-08-31 Dave Hyatt <hyatt@apple.com>
Reviewed by Sam Weinig.
https://bugs.webkit.org/show_bug.cgi?id=44863, disentangle style recalc from layout, so that
the former can occur in more places without having to do the latter.
Eliminate Mac-specific code for style re-application and recursive layout/style updating in
favor of the cross-platform code that all the other ports use.
* Carbon/HIWebView.mm:
(Draw):
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::forceLayout):
* WebView/WebHTMLView.mm:
(-[WebHTMLView _propagateDirtyRectsToOpaqueAncestors]):
(-[WebHTMLView viewWillDraw]):
(-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
(-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]):
(-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:topView:]):
(-[WebHTMLView reapplyStyles]):
(-[WebHTMLView layoutToMinimumPageWidth:height:maximumPageWidth:adjustingViewSize:]):
(-[WebHTMLView setNeedsToApplyStyles:]):
(-[WebHTMLView _setPrinting:minimumPageWidth:height:maximumPageWidth:adjustViewSize:paginateScreenContent:]):
(-[WebHTMLView _layoutIfNeeded]):
(-[WebHTMLView _web_updateLayoutAndStyleIfNeededRecursive]):
* WebView/WebHTMLViewInternal.h:
* WebView/WebView.mm:
(-[WebView _viewWillDrawInternal]):
2010-08-31 Sam Weinig <sam@webkit.org>
Reviewed by Darin Adler.
Add ability to count text matches without marking
https://bugs.webkit.org/show_bug.cgi?id=43996
Safari needs to be able to count text matches without triggering lots of repainting.
Rename markAllMatchesForText: to countMatchesForText: and add a markMatches:
parameter. For backwards compatibility markAllMatchesForText: calls
countMatchesForText: and passes YES for markMatches:.
* WebView/WebDocumentInternal.h:
* WebView/WebHTMLView.mm:
(-[WebHTMLView markAllMatchesForText:caseSensitive:limit:]):
(-[WebHTMLView countMatchesForText:caseSensitive:limit:markMatches:]):
* WebView/WebPDFView.mm:
(-[WebPDFView markAllMatchesForText:caseSensitive:limit:]):
(-[WebPDFView countMatchesForText:caseSensitive:limit:markMatches:]):
* WebView/WebView.mm:
(-[WebView markAllMatchesForText:caseSensitive:highlight:limit:]):
(-[WebView countMatchesForText:caseSensitive:highlight:limit:markMatches:]):
* WebView/WebViewPrivate.h:
2010-08-31 Darin Adler <darin@apple.com>
Reviewed by Anders Carlsson.
* WebInspector/WebInspectorFrontend.mm:
(-[WebInspectorFrontend initWithFrontendClient:]): Remove a stray semicolon.
2010-08-30 Mark Rowe <mrowe@apple.com>
Reviewed by Darin Adler.
<rdar://problem/8369736> WebKit build fails.
Temporarily add some extra includes in order to get things building again until <rdar://problem/8374711> is addressed.
* Carbon/HIViewAdapter.m:
* Carbon/HIWebView.mm:
* Plugins/WebNetscapePluginView.mm:
2010-08-30 Andy Estes <aestes@apple.com>
Reviewed by Darin Adler.
REGRESSION (r66156): Sites using AppleConnect for authentication fail to log in.
https://bugs.webkit.org/show_bug.cgi?id=44865
After http://trac.webkit.org/changeset/66156, sites using the AppleConnect plug-in
for authentication fail to log in. This is due to a bug in AppleConnect that r66156
exposed, but since this will have a significant impact on users of WebKit nightly
builds, a plugin-specific hack should be added while the underlying issue is being
addressed.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::createPlugin): Convert plug-in parameter names to lowercase
if the plugin is of type 'application/x-snkp'.
2010-08-27 Jer Noble <jer.noble@apple.com>
Reviewed by Eric Carlson.
text/plain non-video files cause <video> to hang (while reading them?)
https://bugs.webkit.org/show_bug.cgi?id=44212
Add the new WebKitSystemInterface function WKQTMovieDisableComponent to
the initialization routine.
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Initialize WKQTMovieDisableComponent.
2010-08-30 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r66198.
http://trac.webkit.org/changeset/66198
https://bugs.webkit.org/show_bug.cgi?id=44856
It made tests crash on Qt bot (Requested by Ossy_ on #webkit).
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::closeWindow):
(-[WebInspectorWindowController windowShouldClose:]):
(-[WebInspectorWindowController destroyInspectorView]):
2010-08-28 Darin Adler <darin@apple.com>
Reviewed by Sam Weinig.
Make an internal method used by Apple Mail into SPI
https://bugs.webkit.org/show_bug.cgi?id=44832
rdar://problem/5748951
* WebView/WebFrame.mm:
(-[WebFrame _smartInsertForString:replacingRange:beforeString:afterString:]): Moved this method
from the internal section to the private section.
* WebView/WebFrameInternal.h: Moved the method declaration out of here.
* WebView/WebFramePrivate.h: Moved the method declaration in here.
2010-08-27 Jer Noble <jer.noble@apple.com>
Reviewed by Eric Carlson.
Add JavaScript API to allow a page to go fullscreen.
rdar://problem/6867795
Added chrome client overrides which support entering and exiting full screen. A new preference has
been added (setFullScreenEnabled:) to control at runtime whether full screen support is enabled
(defaults to disabled). Added a new WebKitFullScreenListener callback object which notifies WebCore
when the chrome has started/finished its full screen animation.
* Configurations/FeatureDefines.xcconfig:
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::supportsFullscreenForElement):
(WebChromeClient::enterFullscreenForElement):
(WebChromeClient::exitFullscreenForElement):
(-[WebKitFullScreenListener initWithElement:]):
(-[WebKitFullScreenListener webkitWillEnterFullScreen]):
(-[WebKitFullScreenListener webkitDidEnterFullScreen]):
(-[WebKitFullScreenListener webkitWillExitFullScreen]):
(-[WebKitFullScreenListener webkitDidExitFullScreen]):
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences setFullScreenEnabled:]):
(-[WebPreferences fullScreenEnabled]):
* WebView/WebUIDelegatePrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2010-08-27 David Hyatt <hyatt@apple.com>
Reviewed by Simon Fraser.
https://bugs.webkit.org/show_bug.cgi?id=44788, implement HTML5-compliant doctype switching.
Rename the various modes to match the HTML5 specification:
ParseMode -> CompatibilityMode
CompatMode -> QuirksMode
AlmostStrictMode -> LimitedQuirksMode
StrictMode -> NoQuirksMode
Remove the htmlHacks() accessor from RenderStyle and make rendering code just go to the document
instead. This makes switching modes avoid forcing all RenderStyles to detect as changed.
Clean up user stylesheets to minimize style recalculation when the mode is switched.
Fix bugs with the propagation of correct modes in the HTML5 parser. Make sure the
dummy document created for fragment parsing properly inherits the real document's CompatibilityMode.
Make sure the tree builder properly changes the insertion mode to "BeforeHTML" after handling
a doctype token.
determineParseMode -> setCompatibilityModeFromDoctype, and it now implements the HTML5 algorithm
precisely.
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2010-08-27 Yury Semikhatsky <yurys@chromium.org>
Reviewed by Pavel Feldman.
REGRESSION: Crash occurs at objc_msgSend when closing a window that is displaying the web inspector
https://bugs.webkit.org/show_bug.cgi?id=44230
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::closeWindow):
(WebInspectorFrontendClient::disconnectFromBackend):
(-[WebInspectorWindowController windowShouldClose:]):
(-[WebInspectorWindowController destroyInspectorView:]):
2010-08-26 Yury Semikhatsky <yurys@chromium.org>
Unreviewed. Revert r66103 since Qt tests are failing.
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::closeWindow):
(-[WebInspectorWindowController windowShouldClose:]):
(-[WebInspectorWindowController destroyInspectorView]):
2010-08-26 Yury Semikhatsky <yurys@chromium.org>
Reviewed by Pavel Feldman.
REGRESSION: Crash occurs at objc_msgSend when closing a window that is displaying the web inspector
https://bugs.webkit.org/show_bug.cgi?id=44230
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::closeWindow):
(WebInspectorFrontendClient::disconnectFromBackend):
(-[WebInspectorWindowController windowShouldClose:]):
(-[WebInspectorWindowController destroyInspectorView:]):
2010-08-24 Eric Seidel <eric@webkit.org>
Reviewed by Adam Barth.
Remove HTML5 parser testing infrastructure now that we don't need it
https://bugs.webkit.org/show_bug.cgi?id=44581
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2010-08-24 Sam Weinig <sam@webkit.org>
Reviewed by Oliver Hunt.
Paste event fires twice for mac WebKit
<rdar://problem/8094611>
https://bugs.webkit.org/show_bug.cgi?id=44535
The mac implementation of paste in WebKit was accidentally calling
Editor::tryDHTMLPaste twice, once in -[WebHTMLView paste:] and once
in Editor::pasteAsPlainText (which is called -[WebHTMLView paste:]).
Use the new pasteAsPlainTextBypassingDHTML function to bypass the
second call.
* WebView/WebHTMLView.mm:
(-[WebHTMLView paste:]):
2010-08-24 Daniel Cheng <dcheng@chromium.org>
Reviewed by Eric Seidel.
[chromium] Generate drag images for HTML elements and selections.
https://bugs.webkit.org/show_bug.cgi?id=43449
Fix up calls to Frame::nodeImage, which has a new signature.
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView halt]):
2010-08-23 Mike Thole <mthole@apple.com>
Reviewed by Dan Bernstein.
WebPDFView should remove itself as the delegate of its PDFView before being dealloced
https://bugs.webkit.org/show_bug.cgi?id=44441
* WebView/WebPDFView.mm:
(-[WebPDFView dealloc]): Set the PDFView's delegate to nil.
2010-08-22 Daniel Bates <dbates@rim.com>
Reviewed by Eric Seidel.
Encapsulate document marker management into DocumentMarkerController
https://bugs.webkit.org/show_bug.cgi?id=44383
Modify call sites in the Apple Mac port to use DocumentMarkerController.
No functionality was changed, so no new tests.
* WebView/WebFrame.mm:
(-[WebFrame _unmarkAllBadGrammar]):
(-[WebFrame _unmarkAllMisspellings]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView unmarkAllTextMatches]):
(-[WebHTMLView rectsForTextMatches]):
2010-08-19 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/44285> Fix compilation with NETSCAPE_PLUGIN_API disabled
Reviewed by Joseph Pecoraro.
* Plugins/Hosted/HostedNetscapePluginStream.mm: Changed
USE(PLUGIN_HOST_PROCESS) to
USE(PLUGIN_HOST_PROCESS) && ENABLE(NETSCAPE_PLUGIN_API).
* Plugins/Hosted/NetscapePluginHostManager.mm: Ditto.
* Plugins/Hosted/NetscapePluginHostProxy.mm: Ditto.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm: Ditto.
* Plugins/Hosted/ProxyInstance.mm: Ditto.
* Plugins/Hosted/WebHostedNetscapePluginView.mm: Ditto.
* WebCoreSupport/WebChromeClient.mm: Ditto.
(WebChromeClient::createWindow):
* WebCoreSupport/WebFrameLoaderClient.mm: Ditto.
(WebFrameLoaderClient::dispatchCreatePage):
* WebView/WebHTMLView.mm:
(needsCursorRectsSupportAtPoint): Added #if
ENABLE(NETSCAPE_PLUGIN_API) and #endif macros as needed.
* WebView/WebView.mm:
(+[WebView _isNodeHaltedPlugin:]): Ditto.
(+[WebView _hasPluginForNodeBeenHalted:]): Ditto.
(+[WebView _restartHaltedPluginForNode:]): Ditto.
2010-08-17 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>
Reviewed by Darin Adler.
Add NetworkingContext to avoid layer violations
https://bugs.webkit.org/show_bug.cgi?id=42292
Preparation: Just add the files to the build system.
* WebCoreSupport/WebFrameNetworkingContext.h: Added.
Placeholder with tentative code that might be changed when landing
the rest of it.
* WebCoreSupport/WebFrameNetworkingContext.mm: Added.
Empty placeholder for now.
2010-08-17 Brady Eidson <beidson@apple.com>
Reviewed by Sam Weinig.
Navigating back/forward during a modal dialog causes a crash when the modal dialog is dismissed.
<rdar://problem/8313579> and https://bugs.webkit.org/show_bug.cgi?id=44131
* WebView/WebView.mm:
(-[WebView canGoBack]): Return false if loads are deferred.
(-[WebView canGoForward]): Ditto.
2010-08-14 Joseph Pecoraro <joepeck@webkit.org>
Reviewed by Pavel Feldman.
Web Inspector: -[WebInspector attach] and detach should work
https://bugs.webkit.org/show_bug.cgi?id=43924
For actions that relate only to the Web Inspector's Frontend
window (actions on the InspectorFrontendClient) the new Obj-C
wrapper class WebInspectorFrontend can be used. For now, this
is just attach and detach.
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorClient::openInspectorFrontend): setup and attach the WebInspectorFrontend to the WebInspector.
* WebInspector/WebInspector.h:
* WebInspector/WebInspector.mm:
(-[WebInspector dealloc]):
(-[WebInspector attach:]): delegate to the frontend.
(-[WebInspector detach:]): delegate to the frontend.
(-[WebInspector setFrontend:]):
* WebInspector/WebInspectorFrontend.h: Added.
* WebInspector/WebInspectorFrontend.mm: Added.
(-[WebInspectorFrontend initWithFrontendClient:]):
(-[WebInspectorFrontend attach]):
(-[WebInspectorFrontend detach]):
* WebInspector/WebInspectorPrivate.h:
2010-08-13 Gavin Barraclough <barraclough@apple.com>
Rubber stamped by Sam Weinig.
Switch String::/UString::ascii() to return a CString.
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::methodsNamed):
(WebKit::ProxyInstance::fieldNamed):
2010-08-13 Gavin Barraclough <barraclough@apple.com>
Reviewed by Sam Weinig
Unify UString::UTF8String() & String::utf8() methods,
remove UString::cost() & make atArrayIndex a free function.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::enumerate):
2010-08-12 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r65295.
http://trac.webkit.org/changeset/65295
https://bugs.webkit.org/show_bug.cgi?id=43950
It broke 4 sputnik tests (Requested by Ossy on #webkit).
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::enumerate):
2010-08-12 Gavin Barraclough <barraclough@apple.com>
Reviewed by Sam Weinig
Unify UString::UTF8String() & String::utf8() methods,
remove UString::cost() & make atArrayIndex a free function.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::enumerate):
2010-08-12 Jeremy Orlow <jorlow@chromium.org>
Revert for now
https://bugs.webkit.org/show_bug.cgi?id=43794
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
(-[WebView _preferencesChangedNotification:]):
2010-08-10 Jeremy Orlow <jorlow@chromium.org>
Reviewed by Adam Barth.
Some settings are linked to the PageGroup not the Page. Create a new class for those.
https://bugs.webkit.org/show_bug.cgi?id=43794
Change WebView to use the new GroupSettings class rather than Settings for the
settings that moved. This is sub-optimal since the settings aren't really
per-view, but we can't really change the API at this point.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
(-[WebView _preferencesChangedNotification:]):
2010-08-11 Gavin Barraclough <barraclough@apple.com>
Rubber stamps by Darin Adler & Sam Weinig.
Bug 43867 - Some UString cleanup
Change JSC::UString data(), size(), and from(), to characters(), length(), and number() to match WTF::String.
Move string concatenation methods to a new header to simplify down UString.h. Remove is8Bit().
* WebView/WebScriptDebugger.mm:
(toNSString):
2010-08-10 David Hyatt <hyatt@apple.com>
Reviewed by Dan Bernstein.
https://bugs.webkit.org/show_bug.cgi?id=43806, add ability to paginate screen content.
Add SPI for entering and exiting screen pagination mode. This is similar to printing mode but it can be done for on-screen
content.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _web_setPrintingModeRecursive]):
(-[WebHTMLView _web_clearPrintingModeRecursive]):
(-[WebHTMLView _web_setPrintingModeRecursiveAndAdjustViewSize]):
(-[WebHTMLView _beginPrintModeWithPageWidth:height:shrinkToFit:]):
(-[WebHTMLView _endPrintMode]):
(-[WebHTMLView _isInScreenPaginationMode]):
(-[WebHTMLView _beginScreenPaginationModeWithPageSize:shrinkToFit:]):
(-[WebHTMLView _endScreenPaginationMode]):
(-[WebHTMLView reapplyStyles]):
(-[WebHTMLView _setPrinting:minimumPageWidth:height:maximumPageWidth:adjustViewSize:paginateScreenContent:]):
(-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]):
(-[WebHTMLView setPageWidthForPrinting:]):
* WebView/WebHTMLViewPrivate.h:
2010-08-10 Gavin Barraclough <barraclough@apple.com>
Build fix (update more includes)
* Plugins/Hosted/NetscapePluginHostManager.h:
2010-08-10 Chris Marrin <cmarrin@apple.com>
Reviewed by Oliver Hunt.
Add suspendAnimations/resumeAnimation API to DRT
https://bugs.webkit.org/show_bug.cgi?id=43733
Mac specific API. Plumbs suspendAnimations/resumeAnimations down to WebCore.
* WebView/WebFrame.mm:
(-[WebFrame _suspendAnimations]):
(-[WebFrame _resumeAnimations]):
* WebView/WebFramePrivate.h:
2010-08-10 Gavin Barraclough <barraclough@apple.com>
Rubber stamped by Sam Weinig
Bug 43817 - Remove UString::Rep
UString::Rep has for a long time been replaced by UStringImpl (Rep
remaining as a typedef). UStringImpl has since been removed too
(unified with StringImpl). Remove Rep, rename rep() to impl() and
m_rep to m_impl. Also add impl() method to Identifier, and rename
its UString member from _ustring to m_string.
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::methodsNamed):
(WebKit::ProxyInstance::fieldNamed):
2010-08-06 Gavin Barraclough <barraclough@apple.com>
Rubber stamped by Sam Weinig
Bug 43594 - Add string forwards to Forward.h
This allows us to remove forward declarations for these classes from
WebCore/WebKit (a step in moving these class from WebCore:: to WTF::).
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
* Plugins/WebBaseNetscapePluginView.h:
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebIconDatabaseClient.h:
* WebCoreSupport/WebPluginHalterClient.h:
* WebView/WebViewInternal.h:
2010-08-04 MORITA Hajime <morrita@google.com>
Reviewed by Tony Chang.
Pasting should fire textInput event.
https://bugs.webkit.org/show_bug.cgi?id=42958
On paste, invoke Editor instead of direct command invocation,
which allows dispatching events before actual paste.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _pasteWithPasteboard:allowPlainText:]):
2010-08-06 Yongjun Zhang <yongjun_zhang@apple.com>
Reviewed by Eric Seidel.
add "const" to WebChromeClient::webView().
https://bugs.webkit.org/show_bug.cgi?id=43631
Change WebChromeClient::webView() to be const because ChromeClient::didReceiveViewportArguments
is const method now, and calling webView() inside port-specific didReceiveViewportArguments
implementation fails compiling if webView() is not const.
* WebCoreSupport/WebChromeClient.h:
(WebChromeClient::webView):
2010-08-06 Jessie Berlin <jberlin@apple.com>
Roll out http://trac.webkit.org/changeset/64801, which broke the Safari Windows Build.
Unreviewed.
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
* Plugins/WebBaseNetscapePluginView.h:
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebIconDatabaseClient.h:
* WebCoreSupport/WebPluginHalterClient.h:
* WebView/WebViewInternal.h:
2010-08-05 Joseph Pecoraro <joepeck@webkit.org>
Reviewed by David Kilzer.
Remove Invalid Asserts for Application Cache Quotas
https://bugs.webkit.org/show_bug.cgi?id=43585
Removed Invalid ASSERTs that would always happen for quotas
that were not noQuota().
* WebView/WebPreferences.mm:
(-[WebPreferences applicationCacheTotalQuota]):
(-[WebPreferences applicationCacheDefaultOriginQuota]):
2010-08-05 Gavin Barraclough <barraclough@apple.com>
Rubber stamped by Sam Weinig
Bug 43594 - Add string forwards to Forward.h
This allows us to remove forward declarations for these classes from
WebCore/WebKit (a step in moving these class from WebCore:: to WTF::).
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
* Plugins/WebBaseNetscapePluginView.h:
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebIconDatabaseClient.h:
* WebCoreSupport/WebPluginHalterClient.h:
* WebView/WebViewInternal.h:
2010-08-05 Jian Li <jianli@chromium.org>
Reviewed by David Levin.
Unify blob related feature defines to ENABLE(BLOB).
https://bugs.webkit.org/show_bug.cgi?id=43081
* Configurations/FeatureDefines.xcconfig:
2010-08-03 Joseph Pecoraro <joepeck@webkit.org>
Reviewed by David Kilzer.
Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
https://bugs.webkit.org/show_bug.cgi?id=40627
Part 6 - LayoutTest and Cleanup
* WebCoreSupport/WebApplicationCache.h:
* WebCoreSupport/WebApplicationCache.mm:
(+[WebApplicationCache setMaximumSize:]): refactor out deleting the application caches.
(+[WebApplicationCache deleteAllApplicationCaches]): delete application caches.
2010-08-03 Joseph Pecoraro <joepeck@webkit.org>
Reviewed by David Kilzer.
Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
https://bugs.webkit.org/show_bug.cgi?id=40627
Part 5 - Refactor Quota Management in WebSecurityOrigin into Managers
Per-Origin quotas exist for Databases and Application Caches. Clients
given a WebSecurityOrigin have the ability to set the quota for any
per-origin quota type. This puts quota management into an interface
and WebSecurityOrigin allows access to quota managers for the
different types of quotas.
This also deprecates the old methods on WebSecurityOrigin. They are
left in for now to prevent breaking older clients.
The WebQuotaManager interface allows querying and modifying a
per-origin quota. This is implemented for both Databases and
Application Caches.
* Misc/WebQuotaManager.h: Added. Interface for quota management (usage, quota, setQuota).
* Storage/WebDatabaseQuotaManager.h: Added.
* Storage/WebDatabaseQuotaManager.mm: Added.
(-[WebDatabaseQuotaManager origin]):
(-[WebDatabaseQuotaManager usage]):
(-[WebDatabaseQuotaManager quota]):
(-[WebDatabaseQuotaManager setQuota:]):
* Storage/WebDatabaseSecurityOrigin.h: Removed.
* Storage/WebDatabaseSecurityOrigin.mm: Removed.
* WebCoreSupport/WebApplicationCacheQuotaManager.h: Added.
* WebCoreSupport/WebApplicationCacheQuotaManager.mm: Added.
(-[WebApplicationCacheQuotaManager origin]):
(-[WebApplicationCacheQuotaManager usage]):
(-[WebApplicationCacheQuotaManager quota]):
(-[WebApplicationCacheQuotaManager setQuota:]):
* WebCoreSupport/WebSecurityOriginPrivate.h: Added a category to access managers. Deprecated old methods.
Remove the WebSecurityOrigin sub-classes. Managers are better.
* WebCoreSupport/WebApplicationCacheSecurityOrigin.h: Removed.
* WebCoreSupport/WebApplicationCacheSecurityOrigin.mm: Removed.
Create the managers lazily. Change old style calls to make use
of the managers.
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::exceededDatabaseQuota):
(WebChromeClient::reachedApplicationCacheOriginQuota):
* WebCoreSupport/WebSecurityOrigin.mm:
(-[WebSecurityOrigin applicationCacheQuotaManager]):
(-[WebSecurityOrigin databaseQuotaManager]):
(-[WebSecurityOrigin dealloc]): release the managers if they exist.
2010-08-03 Alex Milowski <alex@milowski.com>
Reviewed by Beth Dakin.
Changed the ENABLE_MATHML value to enable MathML by default.
* Configurations/FeatureDefines.xcconfig:
2010-08-02 Brady Eidson <beidson@apple.com>
Reviewed by Anders Carlsson.
Add VisitedLinkStrategy for each platform to implement
https://bugs.webkit.org/show_bug.cgi?id=43393
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::createVisitedLinkStrategy):
(WebPlatformStrategies::isLinkVisited): Call back into PageGroup's visited links.
(WebPlatformStrategies::addVisitedLink): Ditto.
2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>
Reviewed by Darin Fisher.
PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592
As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::selectItemWritingDirectionIsNatural):
(WebChromeClient::createPopupMenu):
(WebChromeClient::createSearchPopupMenu):
2010-08-02 Jeremy Orlow <jorlow@chromium.org>
Speculative revert of 64425 due to Chromium instability
https://bugs.webkit.org/show_bug.cgi?id=43347
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>
Reviewed by Darin Fisher.
PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592
As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::selectItemWritingDirectionIsNatural):
(WebChromeClient::createPopupMenu):
(WebChromeClient::createSearchPopupMenu):
2010-07-31 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r64422.
http://trac.webkit.org/changeset/64422
https://bugs.webkit.org/show_bug.cgi?id=43304
Build fixes are needed for Snow Leopard and Windows.
(Requested by lca on #webkit).
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>
Reviewed by Darin Fisher.
PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592
As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::selectItemWritingDirectionIsNatural):
(WebChromeClient::createPopupMenu):
(WebChromeClient::createSearchPopupMenu):
2010-07-31 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/43300> Simplify variables in *.xcconfig files after adding iOS support
Reviewed by Darin Adler.
* Configurations/WebKit.xcconfig: Extracted
PRODUCTION_FRAMEWORKS_DIR and PRODUCTION_ROOT variables.
2010-07-30 Dan Bernstein <mitz@apple.com>
Reviewed by Darin Adler.
<rdar://problem/8257783> Short documents may print a second blank page
https://bugs.webkit.org/show_bug.cgi?id=43271
* WebView/WebHTMLView.mm:
(-[WebHTMLView _web_setPrintingModeRecursive]): Updated for additional height parameter
to _setPrinting:minimumPageWidth:height:maximumPageWidth:adjustViewSize:.
(-[WebHTMLView _web_clearPrintingModeRecursive]): Ditto.
(-[WebHTMLView _web_setPrintingModeRecursiveAndAdjustViewSize]): Ditto.
(-[WebHTMLView _beginPrintModeWithPageWidth:height:shrinkToFit:]): Added height parameter,
which is scaled and passed on to _setPrinting:minimumPageWidth:height:maximumPageWidth:adjustViewSize:.
(-[WebHTMLView _endPrintMode]): Updated for additional height parameter to
_setPrinting:minimumPageWidth:height:maximumPageWidth:adjustViewSize:.
(-[WebHTMLView layoutToMinimumPageWidth:height:maximumPageWidth:adjustingViewSize:]): Added
height parameter, which is passed on to FrameView::forceLayoutForPagination().
(-[WebHTMLView layout]): Updated for additional height parameter.
(-[WebHTMLView _setPrinting:minimumPageWidth:height:maximumPageWidth:adjustViewSize:]): Added height
parameter, which is passed on to -layoutToMinimumPageWidth:height:maximumPageWidth:adjustViewSize:.
(-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Updated for additional height
parameter.
(-[WebHTMLView setPageWidthForPrinting:]): Ditto.
(-[WebHTMLView knowsPageRange:]): Pass the available height on the page on to
_setPrinting:minimumPageWidth:height:maximumPageWidth:adjustViewSize.
* WebView/WebHTMLViewPrivate.h:
2010-07-30 Joseph Pecoraro <joepeck@webkit.org>
Fix for tests that broke after r64400. Tracking a more
ideal solution in https://bugs.webkit.org/show_bug.cgi?id=40627
Switch the interface back to (unsigned long long), and move
the WebDatabaseSecurityOrigin implementation up into WebSecurityOrigin.
The subclasses' implementations were not getting called.
* Storage/WebDatabaseSecurityOrigin.mm:
* WebCoreSupport/WebApplicationCacheSecurityOrigin.mm:
(-[WebApplicationCacheSecurityOrigin quota]):
(-[WebApplicationCacheSecurityOrigin setQuota:]):
* WebCoreSupport/WebSecurityOrigin.mm:
(-[WebSecurityOrigin usage]):
(-[WebSecurityOrigin quota]):
(-[WebSecurityOrigin setQuota:]):
* WebCoreSupport/WebSecurityOriginPrivate.h:
2010-07-30 Joseph Pecoraro <joepeck@webkit.org>
Reviewed by David Kilzer.
Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
https://bugs.webkit.org/show_bug.cgi?id=40627
Part 4 - Client Notification when the Quota is Reached
Notify the WebKit client when the per-origin quota is reached
via a delegate method reachedApplicationCacheOriginQuota.
Refactor the WebSecurityOrigin class to be generic enough to
allow quota management of both Databases or Application Caches
via subclasses.
* Storage/WebDatabaseSecurityOrigin.h: Added.
* Storage/WebDatabaseSecurityOrigin.mm: Added.
(-[WebDatabaseSecurityOrigin quota]):
(-[WebDatabaseSecurityOrigin setQuota:]):
* WebCoreSupport/WebApplicationCacheSecurityOrigin.h: Added.
* WebCoreSupport/WebApplicationCacheSecurityOrigin.mm: Added.
(-[WebApplicationCacheSecurityOrigin quota]):
(-[WebApplicationCacheSecurityOrigin setQuota:]):
* Storage/WebSecurityOrigin.mm: Removed. (Moved to WebCoreSupport)
* Storage/WebSecurityOriginPrivate.h: Removed. (Moved to WebCoreSupport)
* WebCoreSupport/WebSecurityOrigin.mm: Added.
(-[WebSecurityOrigin usage]): to be implemented by subclasses.
(-[WebSecurityOrigin quota]): to be implemented by subclasses.
(-[WebSecurityOrigin setQuota:]): to be implemented by subclasses.
* WebCoreSupport/WebSecurityOriginInternal.h: Renamed from WebKit/mac/Storage/WebSecurityOriginInternal.h.
* WebCoreSupport/WebSecurityOriginPrivate.h: Added.
Turn the notification into a WebUI Delegate to call. Following
the example of Databases.
* DefaultDelegates/WebDefaultUIDelegate.m:
(-[WebDefaultUIDelegate webView:exceededApplicationCacheOriginQuotaForSecurityOrigin:]):
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::exceededDatabaseQuota): use the Databases Security Origin subclass.
(WebChromeClient::reachedApplicationCacheOriginQuota): use the Application Cache Security Origin subclass.
* WebView/WebUIDelegatePrivate.h:
2010-07-30 Joseph Pecoraro <joepeck@webkit.org>
Reviewed by David Kilzer.
Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
https://bugs.webkit.org/show_bug.cgi?id=40627
Part 1 - Add Total and Per-Origin Quota Preferences.
Allow the application cache total size to be a preference, and
add a new preference for the default per-origin quota.
Storage quotas were int64_t (long long). Boilerplate for
these types added for consistency.
* Misc/WebNSDictionaryExtras.h:
* Misc/WebNSDictionaryExtras.m:
(-[NSMutableDictionary _webkit_setLongLong:forKey:]):
* WebCoreSupport/WebApplicationCache.h: setters and accessors for WebCore's cacheStorage.
* WebCoreSupport/WebApplicationCache.mm:
(+[WebApplicationCache maximumSize:]):
(+[WebApplicationCache setMaximumSize:]):
(+[WebApplicationCache defaultOriginQuota]):
(+[WebApplicationCache setDefaultOriginQuota:]):
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]): defaults to noQuota for both preferences.
(-[WebPreferences _longLongValueForKey:]):
(-[WebPreferences _setLongLongValue:forKey:]):
(-[WebPreferences applicationCacheTotalQuota]):
(-[WebPreferences setApplicationCacheTotalQuota:]):
(-[WebPreferences applicationCacheDefaultOriginQuota]):
(-[WebPreferences setApplicationCacheDefaultOriginQuota:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]): respect updates to the preferences.
2010-07-30 Andy Estes <aestes@apple.com>
Reviewed by David Kilzer.
Add Xcode support for compiling WebKit against iOS SDKs.
https://bugs.webkit.org/show_bug.cgi?id=42796
* Configurations/Base.xcconfig:
* Configurations/DebugRelease.xcconfig:
* Configurations/FeatureDefines.xcconfig:
* Configurations/Version.xcconfig:
* Configurations/WebKit.xcconfig:
2010-07-26 Steve Block <steveblock@google.com>
Reviewed by Jeremy Orlow.
Page clients should be passed to Page constructor via structure of pointers
https://bugs.webkit.org/show_bug.cgi?id=42834
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
2010-07-27 Kinuko Yasuda <kinuko@chromium.org>
Reviewed by Ojan Vafai.
Add FILE_SYSTEM build flag for FileSystem API
https://bugs.webkit.org/show_bug.cgi?id=42915
* Configurations/FeatureDefines.xcconfig:
2010-07-27 Steve Block <steveblock@google.com>
Reviewed by Jeremy Orlow.
Client-based Geolocation does not pass enableHighAccuracy option to controller and client
https://bugs.webkit.org/show_bug.cgi?id=40374
Stub out setEnableHighAccuracy method for the Mac port.
* WebCoreSupport/WebGeolocationControllerClient.h:
(WebGeolocationControllerClient::setEnableHighAccuracy):
2010-07-22 Sam Weinig <sam@webkit.org>
Reviewed by Maciej Stachowiak.
Fix for <rdar://problem/8222626>
Send textDidChangeInTextField delegate callback only in response to typing or other forms of user text input.
The function name no longer perfectly matches the behavior, but I didn't want to break any existing clients. Maybe we
should migrate to a new function name eventually
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::textDidChangeInTextField):
2010-07-22 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
Patch for https://bugs.webkit.org/show_bug.cgi?id=42836
Add localized strings stubs for WebKit2.
- Convert WebKit (mac) to use a LocalizationStrategy rather than the WebCoreViewFactory
for localized strings.
Gets us below 200 tests failing in WebKitTestRunner.
* WebCoreSupport/WebContextMenuClient.mm:
(fixMenusReceivedFromOldClients): Use LocalizedStrings rather than the factory.
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
* WebCoreSupport/WebViewFactory.mm:
2010-07-21 Brady Eidson <beidson@apple.com>
Reviewed by Geoffrey Garen.
Break out "scheme registration" functionality from SecurityOrigin to a SchemeRegistry
https://bugs.webkit.org/show_bug.cgi?id=42783
* WebView/WebView.mm:
(+[WebView _registerURLSchemeAsSecure:]):
(+[WebView registerURLSchemeAsLocal:]):
2010-07-21 Simon Fraser <simon.fraser@apple.com>
Reviewed by Anders Carlsson.
Composited layers don't scroll in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42771
Prep work: FrameView::scrollPositionChanged() sounds like a generic "did scroll" bottleneck,
but this is deceiving. It's only every called on one platform (Mac) when the NSScrollView gets
scrolled, so rename it to FrameView::scrollPositionChangedViaPlatformWidget().
* WebView/WebHTMLView.mm:
(-[WebHTMLView _frameOrBoundsChanged]):
2010-07-21 Eric Carlson <eric.carlson@apple.com>
Reviewed by Simon Fraser.
Update plug-in proxy backed <video> and <audio> elements.
https://bugs.webkit.org/show_bug.cgi?id=42770
<rdar://problem/7963467>
* Plugins/WebPluginController.h:
* Plugins/WebPluginController.mm:
(-[WebPluginController dealloc]): Release _viewsNotInDocument.
(-[WebPluginController stopAllPlugins]): Stop plug-ins not in the document.
(-[WebPluginController pluginViewCreated:]): New, add a View (plug-in) to _viewsNotInDocument.
(+[WebPluginController pluginViewHidden:]): New, remove the view (plug-in) from pluginViews.
(-[WebPluginController addPlugin:]): Remove the new plug-in from _viewsNotInDocument.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::createPlugin): Remove PLUGIN_PROXY_FOR_VIDEO code, the media
player proxy plug-in should never be allocated by this method.
(WebFrameLoaderClient::createMediaPlayerProxyPlugin): New, allocate a media player proxy.
* WebView/WebView.mm:
(-[WebView _videoProxyPluginForMIMEType:]): New. Identical to _pluginForMIMEType except it doesn't
consider the arePlugInsEnabled preference.
* WebView/WebViewInternal.h:
2010-07-19 Chris Marrin <cmarrin@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=42118
Disable WebGL on Leopard for now.
LayoutTests fail on some graphics hardware on Leopard because one of the features we use,
GL_ARB_framebuffer_object, is not universally available in Leopard like it is in
SnowLeopard. This will allow LayoutTests to pass on Leopard until we add logic to use a
software OpenGL driver on machines without this support.
* Configurations/FeatureDefines.xcconfig:
2010-07-18 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Move PluginWidget to WebKit
https://bugs.webkit.org/show_bug.cgi?id=42530
* Plugins/WebBaseNetscapePluginView.h:
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView pluginLayer]):
Add default pluginLayer implementation.
* WebCoreSupport/WebFrameLoaderClient.mm:
(PluginWidget::PluginWidget):
(PluginWidget::invalidateRect):
Move the guts of PluginWidget here from WebCore.
(NetscapePluginWidget::platformLayer):
Get the layer from the plug-in view.
2010-07-18 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/42522> Add missing (id) return type to Obj-C methods
Reviewed by Dan Bernstein.
* Carbon/CarbonWindowAdapter.mm:
(-[NSWindow(HIWebFrameView) _initContent:styleMask:backing:defer:contentView:]):
(-[CarbonWindowAdapter _destroyRealWindow:]):
(-[CarbonWindowAdapter _clearModalWindowLevel]):
* Misc/WebIconDatabase.mm:
(-[WebIconDatabase init]):
* Misc/WebNSPasteboardExtras.mm:
(-[NSFilePromiseDragSource initWithSource:]):
* WebView/WebHTMLRepresentation.mm:
(-[WebHTMLRepresentation init]):
* WebView/WebPreferences.mm:
(-[WebPreferences init]):
* WebView/WebView.mm:
(-[WebView UIDelegate]):
(-[WebView resourceLoadDelegate]):
(-[WebView downloadDelegate]):
(-[WebView policyDelegate]):
(-[WebView frameLoadDelegate]):
2010-07-16 Zhe Su <suzhe@chromium.org>
Reviewed by Darin Adler.
REGRESSION(r61484): Broke focus behaviour on Qt and probably other platforms
https://bugs.webkit.org/show_bug.cgi?id=42253
Dummy implementation of EditorClient::willSetInputMethodState.
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::willSetInputMethodState):
2010-07-16 Dan Bernstein <mitz@apple.com>
Reviewed by Sam Weinig.
Part of <rdar://problem/7233974> Deprecate +[WebView _setShouldUseFontSmoothing:]
https://bugs.webkit.org/show_bug.cgi?id=29355
* Misc/WebKitNSStringExtras.h:
* Misc/WebKitNSStringExtras.mm:
(-[NSString _web_drawAtPoint:font:textColor:]): Now calls through to
-_web_drawAtPoint:font:textColor:allowingFontSmoothing: passing YES for the last
parameter.
(-[NSString _web_drawAtPoint:font:textColor:allowingFontSmoothing:]): Added
allowingFontSmoothing:. If font smoothing is not allowed, sets the font smoothing
mode to antialiased. Otherwise, sets it to auto.
(-[NSString _web_drawDoubledAtPoint:withTopColor:bottomColor:font:]): Instead of
changing the font smoothing setting in the graphics context, call
-_web_drawAtPoint:font:textColor:allowingFontSmoothing: passing NO for the last
parameter.
2010-07-16 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Remove semicolons from Objective-C method declarations.
* WebView/WebRenderLayer.mm:
(+[WebRenderLayer nameForLayer:]):
(+[WebRenderLayer compositingInfoForLayer:]):
2010-07-16 Mikhail Naganov <mnaganov@chromium.org>
Reviewed by Pavel Feldman.
Make JS memory stats available via 'Performance' object (Web Timing).
This statistics is populated only if 'WebKitMemoryInfoEnabled'
preference is set.
'console.memory' is kept until Web Timing object becomes visible by
default (currently it is hidden under compile-time flag). These stats
are guarded with the same preference.
https://bugs.webkit.org/show_bug.cgi?id=41617
* WebKit.order:
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences memoryInfoEnabled]):
(-[WebPreferences setMemoryInfoEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2010-07-15 Shinichiro Hamaji <hamaji@chromium.org>
Reviewed by Darin Adler.
Printing test results differ between machines, we should use ImageDiff instead
https://bugs.webkit.org/show_bug.cgi?id=20011
* Misc/WebCoreStatistics.h:
* Misc/WebCoreStatistics.mm:
(-[WebFrame printToCGContext:cgContext:pageWidthInPixels:]):
2010-07-15 Daniel Bates <dbates@rim.com>
Reviewed by Darin Adler.
[Mac] Implement LayoutTestController::markerTextForListItem()
https://bugs.webkit.org/show_bug.cgi?id=37929
Implements support for markerTextForListItem in the Mac port.
* DOM/WebDOMOperations.mm:
(+[DOMElement _DOMElementFromJSContext]): Added.
(-[DOMElement _markerTextForListItem]): Added.
* DOM/WebDOMOperationsPrivate.h:
2010-07-14 Simon Fraser <simon.fraser@apple.com>
Fix non-ACCELERATED_COMPOSITING build.
* WebView/WebRenderLayer.mm:
(+[WebRenderLayer compositingInfoForLayer:]):
2010-07-14 Simon Fraser <simon.fraser@apple.com>
Reviewed by John Sullivan.
<rdar://problem/8186963> Expose information about compositing layers.
Use RenderLayerBacking::compositingLayerType() to add more information about compositing to
WebRenderLayer, via a compositingInfo property. Also show element classnames.
Also add separator items between the various z-order lists.
* WebView/WebRenderLayer.h:
* WebView/WebRenderLayer.mm:
(+[WebRenderLayer nameForLayer:]):
(+[WebRenderLayer compositingInfoForLayer:]):
(-[WebRenderLayer initWithRenderLayer:]):
(-[WebRenderLayer initWithName:]):
(-[WebRenderLayer initWithWebFrame:]):
(-[WebRenderLayer dealloc]):
(-[WebRenderLayer buildDescendantLayers:]):
(-[WebRenderLayer compositingInfo]):
(-[WebRenderLayer isComposited]):
(-[WebRenderLayer isSeparator]):
2010-07-14 Darin Adler <darin@apple.com>
Another try at fixing the Tiger build.
Avoid non-ASCII in source files to keep Tiger compiler happy.
* WebView/WebRenderLayer.mm:
(+[WebRenderLayer nameForLayer:]): Use %C for the non-ASCII characters.
2010-07-14 Sam Weinig <sam@webkit.org>
Reviewed by Darin Adler.
Patch for https://bugs.webkit.org/show_bug.cgi?id=42232
Make changing Cursors work in WebKit2.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::setCursor):
* WebView/WebView.mm:
Implement cursor changing at the WebKit level for the sake of WebKit2.
This functionality is being moved from WidgetMac.mm.
(+[WebView _pointingHandCursor]):
Update to use platformCursor() instead of impl().
2010-07-13 Simon Fraser <simon.fraser@apple.com>
Fix Tiger build.
Avoid non-ASCII in souce files to keep Tiger compiler happy.
* WebView/WebRenderLayer.mm:
(+[WebRenderLayer nameForLayer:]):
2010-07-13 Simon Fraser <simon.fraser@apple.com>
Reviewed by Dan Bernstein.
<rdar://problem/8186963> Expose RenderLayer hierarchy via Obj-C for debugging.
Add a WebRenderLayer class that reflects the RenderLayer tree into a hierarchy
of Objective-C objects suitable for display in an outline view.
* WebKit.exp: Export the WebRenderLayer Objective-C class.
* WebView/WebRenderLayer.h: Added.
* WebView/WebRenderLayer.mm: Added.
2010-07-07 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
Reviewed by Darin Adler.
Prevent assertion/duplicate loads for non-deferred subtitute-data loads
https://bugs.webkit.org/show_bug.cgi?id=30879
MainResourceLoader uses the member m_initialRequest to store requests for future
deferred loads. When doing the actual load in handleDataLoadNow(), we therefore
have to clear this request so that subsequent entries into the loader will not
start yet another load.
This can happen as a result of a PageGroupLoadDeferrer going out of scope when
returning from Chrome::runJavaScriptAlert(), which calls setDeferredLoading(false),
but only in the case of using both substitute-data and non-deferred main resource
load together. That's why two new DRT functions were added:
* queueLoadHTMLString()
* setDeferMainResourceLoad()
The change adds DRT hooks for Mac, Win and Qt for these two functions. For Mac
and Win the hook uses new SPI in WebDataSource. For Qt a new static member was
added to the FrameLoaderClientQt and accessed though DumpRenderTreeSupportQt.
* WebView/WebDataSource.mm:
(-[WebDataSource _setDeferMainResourceDataLoad:]):
* WebView/WebDataSourcePrivate.h:
2010-07-13 Philippe Normand <pnormand@igalia.com>
Rubber-stamped by Xan Lopez.
Updated the copyright headers of the files modified in r62476.
* WebView/WebView.mm:
* WebView/WebViewData.h:
* WebView/WebViewInternal.h:
2010-07-09 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=13075
XMLHttpRequest with failed authentication should set status to 401
https://bugs.webkit.org/show_bug.cgi?id=6871
<rdar://problem/3363403> 401 error page is never shown
* Panels/WebPanelAuthenticationHandler.m:
(-[WebPanelAuthenticationHandler startAuthentication:window:]): Updated a comment - this
code cancels loading, not authentication (canceling authentication means telling to
continue without credentials).
(-[WebPanelAuthenticationHandler _authenticationDoneWithChallenge:result:]): If there were
no credentials provided, tell to continue without any. There may be alternative content
returned with 401.
2010-07-09 Leon Clarke <leonclarke@google.com>
Reviewed by Adam Barth.
add support for link prefetching
https://bugs.webkit.org/show_bug.cgi?id=3652
* Configurations/FeatureDefines.xcconfig:
2010-07-08 Aaron Boodman <aa@chromium.org>
Reviewed by Timothy Hatcher.
Add the ability for user scripts and user styles to affect just the top frame.
https://bugs.webkit.org/show_bug.cgi?id=41529
* WebView/WebView.mm:
(+[WebView _addUserScriptToGroup:world:source:url:whitelist:blacklist:injectionTime:]):
(+[WebView _addUserScriptToGroup:world:source:url:whitelist:blacklist:injectionTime:injectedFrames:]):
(+[WebView _addUserStyleSheetToGroup:world:source:url:whitelist:blacklist:]):
(+[WebView _addUserStyleSheetToGroup:world:source:url:whitelist:blacklist:injectedFrames:]):
* WebView/WebViewPrivate.h:
2010-07-08 Adele Peterson <adele@apple.com>
Reviewed by Jon Honeycutt, Adam Roben, and Darin Adler.
Fix for https://bugs.webkit.org/show_bug.cgi?id=41721
<rdar://problem/8158561> Missing plug-in indicator should have a pressed state
Implement shouldMissingPluginMessageBeButton.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::shouldMissingPluginMessageBeButton):
2010-07-08 Brady Eidson <beidson@apple.com>
Reviewed by Tim Hatcher.
<rdar://problem/8136327> - Crash in Entourage calling WebCache method from background thread
* Misc/WebCache.mm:
(+[WebCache setDisabled:]): Forward the call to the main thread if called from a background thread.
* Misc/WebNSObjectExtras.h:
* Misc/WebNSObjectExtras.mm:
(+[NSObject _webkit_invokeOnMainThread]): Add a class version of the main thread invoker.
2010-07-08 Mike Thole <mthole@apple.com>
Reviewed by Darin Adler.
Patch for https://bugs.webkit.org/show_bug.cgi?id=41896
Crash under allScriptsInPDFDocument() in WebPDFDocumentExtras.mm for certain PDFs
* WebView/WebPDFDocumentExtras.mm:
(allScriptsInPDFDocument): Null-check 'data', as CGPDFStreamCopyData() may have returned 0.
2010-07-08 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
Patch for https://bugs.webkit.org/show_bug.cgi?id=41826
Convert BackForwardList to an abstract base class and add BackForwardListImpl
as the concrete implementation of it.
* History/WebBackForwardList.mm:
(-[WebBackForwardList init]):
(-[WebBackForwardList setPageCacheSize:]):
(-[WebBackForwardList pageCacheSize]):
2010-07-07 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
Patch for https://bugs.webkit.org/show_bug.cgi?id=41772
Add basic piping for BackForwardControllerClient.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
2010-07-07 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Change requestURL to a KURL.
https://bugs.webkit.org/show_bug.cgi?id=41775
* Plugins/WebNetscapePluginStream.h:
(WebNetscapePluginStream::setRequestURL):
* Plugins/WebNetscapePluginStream.mm:
(WebNetscapePluginStream::pluginCancelledConnectionError):
(WebNetscapePluginStream::errorForReason):
(WebNetscapePluginStream::startStream):
(WebNetscapePluginStream::didReceiveResponse):
(WebNetscapePluginStream::destroyStream):
2010-07-07 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Rename the WebBaseNetscapePluginStream.cpp and .h files to WebNetscapePluginStream.cpp and .h to match the class name.
* Plugins/WebNetscapePluginStream.h: Renamed from WebKit/mac/Plugins/WebBaseNetscapePluginStream.h.
* Plugins/WebNetscapePluginStream.mm: Renamed from WebKit/mac/Plugins/WebBaseNetscapePluginStream.mm.
2010-07-06 Steve Falkenburg <sfalken@apple.com>
Reviewed by Simon Fraser.
Expose URL matching from WebUserContentURLPattern
https://bugs.webkit.org/show_bug.cgi?id=41726
<rdar://problem/7910144>
We previously had a way to construct WebUserContentURLPattern
instances via WebKit, but no way for callers to perform matching.
This patch adds the matchesURL functionality to allow for this.
* Misc/WebUserContentURLPattern.h: Added matchesURL.
* Misc/WebUserContentURLPattern.mm:
(-[WebUserContentURLPattern matchesURL:]): Added. Calls through to WebCore::UserContentURLPattern::matches.
2010-06-23 Philippe Normand <pnormand@igalia.com>
Reviewed by Eric Carlson.
[GStreamer] on Mac OS use a runloop observer to process the glib context iterations
https://bugs.webkit.org/show_bug.cgi?id=35747
If VIDEO and GSTREAMER are enabled, make the WebView start a
runloop observer that will trigger the glib main context
iterations. Those are needed by the GStreamer player only at the
moment but could later be used for other GLib-dependant components
if required.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
(-[WebView _close]):
(-[WebView _clearGlibLoopObserver]):
(glibContextIterationCallback):
(-[WebView _scheduleGlibContextIterations]):
* WebView/WebViewData.h:
* WebView/WebViewInternal.h:
2010-07-03 Jon Honeycutt <jhoneycutt@apple.com>
The missing plug-in indicator should be clickable
https://bugs.webkit.org/show_bug.cgi?id=41550
<rdar://problem/8132162>
From an original patch by Kevin Decker.
Reviewed by Darin Adler.
* WebCoreSupport/WebChromeClient.h:
Declare an override of missingPluginButtonClicked().
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::missingPluginButtonClicked):
Call the UIDelegate's method.
* WebView/WebUIDelegatePrivate.h:
Declare didPressMissingPluginButton.
2010-07-01 Timothy Hatcher <timothy@apple.com>
Provide a WebView preference to disable DNS prefetching.
https://bugs.webkit.org/show_bug.cgi?id=28825
rdar://problem/7181249
Reviewed by Darin Adler.
* WebView/WebPreferenceKeysPrivate.h: Added WebKitDNSPrefetchingEnabledPreferenceKey.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]): Set WebKitDNSPrefetchingEnabledPreferenceKey to YES.
(-[WebPreferences isDNSPrefetchingEnabled]): Added. Return WebKitDNSPrefetchingEnabledPreferenceKey's value.
(-[WebPreferences setDNSPrefetchingEnabled:]): Added. Set WebKitDNSPrefetchingEnabledPreferenceKey's value.
* WebView/WebPreferencesPrivate.h: Added isDNSPrefetchingEnabled and setDNSPrefetchingEnabled:.
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]): Call WebCore::Settings::setDNSPrefetchingEnabled.
2010-07-01 Alexey Proskuryakov <ap@apple.com>
Reviewed by Anders Carlsson.
<rdar://problem/8148656> <https://bugs.webkit.org/show_bug.cgi?id=41431>
REGRESSION (r49411): Various crashes due to JavaScript execution during plug-in destruction
Strengthen m_inDestroy "swipe under the carpet" fix.
* Plugins/Hosted/NetscapePluginInstanceProxy.h: Added a long comment about m_inDestroy, and
changed it to static.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy): m_inDestroy is now
static, so we don't initialize it in constructor.
(WebKit::NetscapePluginInstanceProxy::destroy): Assert that we aren't already destroying
some plug-in.
(WebKit::NetscapePluginInstanceProxy::evaluate): This function accidentally lacked an
m_inDestroy check in r42789.
2010-06-29 Zoltan Herczeg <zherczeg@webkit.org>
Reviewed by Nikolas Zimmermann.
Add ConvolveMatrixElement to MigrateHeaders.make
https://bugs.webkit.org/show_bug.cgi?id=5861
* MigrateHeaders.make:
2010-06-23 John Gregg <johnnyg@google.com>
Reviewed by Kent Tamura.
add ENABLE_DIRECTORY_UPLOAD build support
https://bugs.webkit.org/show_bug.cgi?id=41100
* Configurations/FeatureDefines.xcconfig:
2010-06-28 Eric Seidel <eric@webkit.org>
Reviewed by Adam Barth.
Make it possible to test the new HTML5 TreeBuilder
https://bugs.webkit.org/show_bug.cgi?id=41276
Adam was concerned that someone might make their port
depend on this setting (I guess we had some trouble with that
with the HTML5Parser setting), so I littered the code with warnings.
test-html5-parser now tests this code path.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences html5TreeBuilderEnabled]):
(-[WebPreferences setHTML5TreeBuilderEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2010-06-25 Yuzo Fujishima <yuzo@google.com>
Reviewed by Shinichiro Hamaji.
Improve default value handling for page format properties.
https://bugs.webkit.org/show_bug.cgi?id=41150
* Misc/WebCoreStatistics.h:
* Misc/WebCoreStatistics.mm:
(-[WebFrame pageSizeAndMarginsInPixels:pageNumber:width:height:marginTop:marginRight:marginBottom:]):
2010-06-26 Tony Gentilcore <tonyg@chromium.org>
Reviewed by Dimitri Glazkov.
Add an ENABLE_WEB_TIMING option for enabling Web Timing support.
https://bugs.webkit.org/show_bug.cgi?id=38924
* Configurations/FeatureDefines.xcconfig:
2010-06-24 Jer Noble <jer.noble@apple.com>
Reviewed by Eric Carlson.
Full-screened content doesn't keep the display on: Safari not grabbing a power assertion?
https://bugs.webkit.org/show_bug.cgi?id=40939
rdar://problem/7996172
Take a IOKit power assertion when playing video in fullscreen mode. Release the
assertion when paused in fullscreen mode, and when exiting fullscreen mode.
* WebView/WebVideoFullscreenController.h:
* WebView/WebVideoFullscreenController.mm:
(-[WebVideoFullscreenController windowDidExitFullscreen]): Call updatePowerAssertions.
(-[WebVideoFullscreenController windowDidEnterFullscreen]): Call updatePowerAssertions.
(-[WebVideoFullscreenController _disableIdleDisplaySleep]):
(-[WebVideoFullscreenController _enableIdleDisplaySleep]):
(-[WebVideoFullscreenController _disableIdleSystemSleep]):
(-[WebVideoFullscreenController _enableIdleSystemSleep]):
(-[WebVideoFullscreenController updatePowerAssertions]): Call _(enable|disable)Idle(System|Display)sleep depending on current playback rate and fullscreen status.
(-[WebVideoFullscreenController rateChanged:]): Call updatePowerAssertions.
2010-06-24 Jer Noble <jer.noble@apple.com>
Reviewed by Darin Adler.
Playing movie full screen on second monitor hides menu bar and title bar on main monitor
https://bugs.webkit.org/show_bug.cgi?id=40933
rdar://problem/7858452
Remove all references to GetSystemUIMode and SetSystemUIMode. Replace these calls with
[NSApplication setPresentationOptions:]. Do not auto-hide the menu bar if the fullscreen
screen is does not contain the menu-bar. Do not auto-hide the dock if the fullscreen screen
is both not the menu-bar screen and not the dock screen.
* WebView/WebVideoFullscreenController.mm:
(-[WebVideoFullscreenController windowDidLoad]): Register the applicationDidChangeScreenParameters: listener.
(-[WebVideoFullscreenController windowDidExitFullscreen]): Calls updateMenuAndDockForFullscreen.
(-[WebVideoFullscreenController windowDidEnterFullscreen]): Calls updateMenuAndDockForFullscreen.
(-[WebVideoFullscreenController applicationDidChangeScreenParameters:]): New notification handler; catches NSApplicationDidChangeScreenParameters.
(-[WebVideoFullscreenController updateMenuAndDockForFullscreen]): Hide/show the menu-bar and dock according to the fullscreen window's screen.
2010-06-24 Jer Noble <jer.noble@apple.com>
Reviewed by Eric Carlson.
Full screen video in Safari exits full-screen if you switch to another app
https://bugs.webkit.org/show_bug.cgi?id=40635
rdar://problem/7885101
Implement the following rules for exiting full screen when switching apps:
1. If the system has a single screen, switching apps will cause Safari to exit full-screen.
2. Otherwise, if the full-screen screen is the "main screen" (the one with the title bar),
switching apps will cause Safari to exit full-screen.
3. Overriding rules 1 & 2, if the full-screen screen is not on the "current space",
switching apps will NOT cause Safari to exit full-screen.
* WebView/WebVideoFullscreenController.mm:
(-[WebVideoFullscreenController windowDidLoad]):
(-[WebVideoFullscreenController applicationDidResignActive:]):
2010-06-24 Adele Peterson <adele@apple.com>
Reviewed by Sam Weinig.
Updated fix for <rdar://problem/8093680> "Paste and Match Style" should fire paste events
https://bugs.webkit.org/show_bug.cgi?id=41085
* WebView/WebHTMLView.mm: Use the WebCore command system for the pasteAsPlainText selector.
Also remove internal methods that no one is using.
2010-06-24 Damian Kaleta <dkaleta@apple.com>
Reviewed by Sam Weinig.
Added an ObjC wrapper to Node::renderRect(bool&).
* DOM/WebDOMOperations.mm:
(-[DOMNode _renderRect:]):
* DOM/WebDOMOperationsPrivate.h:
2010-06-24 Adele Peterson <adele@apple.com>
Reviewed by Eric Carlson.
Fix for <rdar://problem/8093680> "Paste and Match Style" should fire paste events
https://bugs.webkit.org/show_bug.cgi?id=41085
* WebView/WebHTMLView.mm: (-[WebHTMLView pasteAsPlainText:]): Reuse code in WebCore
which does everything done here and also fires paste events.
2010-06-23 Yuzo Fujishima <yuzo@google.com>
Reviewed by Shinichiro Hamaji.
Implement page format data programming interface.
Add methods for testing.
https://bugs.webkit.org/show_bug.cgi?id=37538
* Misc/WebCoreStatistics.h:
* Misc/WebCoreStatistics.mm:
(-[WebFrame isPageBoxVisible:]):
(-[WebFrame pageAreaRectInPixels:]):
(-[WebFrame preferredPageSizeInPixels:]):
2010-06-22 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Get rid of more USE_LIBDISPATCH code.
* Plugins/Hosted/NetscapePluginHostProxy.h:
2010-06-22 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Get rid of the USE_LIBDISPATCH code.
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy):
(WebKit::NetscapePluginHostProxy::~NetscapePluginHostProxy):
2010-06-22 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Wean NetscapePluginHostManager of any knowledge about WebNetscapePluginPackage
https://bugs.webkit.org/show_bug.cgi?id=41006
* Plugins/Hosted/NetscapePluginHostManager.h:
* Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::hostForPlugin):
(WebKit::NetscapePluginHostManager::spawnPluginHost):
(WebKit::NetscapePluginHostManager::instantiatePlugin):
(WebKit::NetscapePluginHostManager::createPropertyListFile):
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView createPlugin]):
* Plugins/WebNetscapePluginPackage.mm:
(-[WebNetscapePluginPackage createPropertyListFile]):
2010-06-21 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Fix an off-by-one bug I introduced.
* Plugins/WebNetscapePluginPackage.mm:
(-[WebNetscapePluginPackage getPluginInfoFromResources]):
2010-06-21 Nate Chapin <japhet@chromium.org>
Reviewed by Adam Barth.
FrameLoader cleanup: Split high level subframe and plugin
loading functions into a separate class.
https://bugs.webkit.org/show_bug.cgi?id=40453
* WebView/WebFrame.mm:
(-[WebFrame _cacheabilityDictionary]):
2010-06-21 Anders Carlsson <andersca@apple.com>
Another Tiger build fix.
* Plugins/WebNetscapePluginPackage.mm:
(-[WebNetscapePluginPackage _tryLoad]):
2010-06-21 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
More WebBasePluginPackage cleanup
https://bugs.webkit.org/show_bug.cgi?id=40944
* Plugins/Hosted/HostedNetscapePluginStream.mm:
(WebKit::HostedNetscapePluginStream::pluginCancelledConnectionError):
* Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::spawnPluginHost):
* Plugins/WebBaseNetscapePluginStream.mm:
(WebNetscapePluginStream::pluginCancelledConnectionError):
* Plugins/WebBaseNetscapePluginView.mm:
(WebHaltablePlugin::pluginName):
* Plugins/WebBasePluginPackage.h:
* Plugins/WebBasePluginPackage.mm:
(-[WebBasePluginPackage initWithPath:]):
(-[WebBasePluginPackage _objectForInfoDictionaryKey:]):
(-[WebBasePluginPackage getPluginInfoFromPLists]):
(-[WebBasePluginPackage load]):
(-[WebBasePluginPackage dealloc]):
(-[WebBasePluginPackage finalize]):
(-[WebBasePluginPackage pluginInfo]):
(-[WebBasePluginPackage supportsExtension:]):
(-[WebBasePluginPackage supportsMIMEType:WebCore::]):
(-[WebBasePluginPackage MIMETypeForExtension:]):
(-[WebBasePluginPackage isJavaPlugIn]):
(-[WebBasePluginPackage versionNumber]):
(-[WebBasePluginPackage WebCore::]):
* Plugins/WebNetscapePluginPackage.mm:
(-[WebNetscapePluginPackage openResourceFile]):
(-[WebNetscapePluginPackage closeResourceFile:]):
(-[WebNetscapePluginPackage getPluginInfoFromResources]):
(-[WebNetscapePluginPackage _initWithPath:]):
(-[WebNetscapePluginPackage _applyDjVuWorkaround]):
(-[WebNetscapePluginPackage _tryLoad]):
(-[WebNetscapePluginPackage supportsSnapshotting]):
(-[WebNetscapePluginPackage _unloadWithShutdown:]):
* Plugins/WebPluginDatabase.mm:
(-[WebPluginDatabase refresh]):
(-[WebPluginDatabase _removePlugin:]):
* Plugins/WebPluginPackage.mm:
(-[WebPluginPackage initWithPath:]):
(-[WebPluginPackage load]):
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::createPlugin):
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::getPluginInfo):
2010-06-21 Anders Carlsson <andersca@apple.com>
Another PowerPC build fix.
* Plugins/WebNetscapePluginPackage.mm:
(-[WebNetscapePluginPackage openResourceFile]):
(-[WebNetscapePluginPackage _tryLoad]):
2010-06-21 Anders Carlsson <andersca@apple.com>
Try to fix the PowerPC build.
* Plugins/WebNetscapePluginPackage.mm:
(-[WebNetscapePluginPackage _tryLoad]):
2010-06-21 Nate Chapin <japhet@chromium.org>
Reviewed by Adam Barth.
Update relevant calls into FrameLoader to make use of
FrameLoaderStateMachine.
https://bugs.webkit.org/show_bug.cgi?id=39695
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::transitionToCommittedForNewPage):
* WebView/WebFrame.mm:
(-[WebFrame _firstLayoutDone]):
2010-06-21 Dimitri Glazkov <dglazkov@chromium.org>
Reviewed by Dan Bernstein.
Chromium/Mac build fix.
* WebCoreSupport/WebSystemInterface.mm: Change the order of wtf/Platform.h include to let other
headers smell it.
2010-06-21 Anders Carlsson <andersca@apple.com>
Reviewed by Dan Bernstein.
Make all of WebKit build with clang++
* DefaultDelegates/WebDefaultPolicyDelegate.m:
(-[WebDefaultPolicyDelegate webView:decidePolicyForMIMEType:request:frame:decisionListener:]):
* Plugins/Hosted/NetscapePluginHostManager.mm:
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView resolvedURLStringForURL:target:]):
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView setSuppressLayout:]):
* WebView/WebHTMLRepresentation.mm:
* WebView/WebNavigationData.mm:
(-[WebNavigationData initWithURLString:title:originalRequest:response:hasSubstituteData:clientRedirectSource:]):
* WebView/WebPDFRepresentation.mm:
(-[WebPDFRepresentation setDataSource:]):
(-[WebPDFRepresentation receivedData:withDataSource:]):
(-[WebPDFRepresentation receivedError:withDataSource:]):
* WebView/WebResource.mm:
(-[WebResource description]):
* WebView/WebSerializedJSValue.mm:
(-[WebSerializedJSValue initWithValue:context:exception:]):
* WebView/WebVideoFullscreenController.mm:
(-[WebVideoFullscreenController WebCore::]):
(-[WebVideoFullscreenController setMediaElement:WebCore::]):
(-[WebVideoFullscreenController setDelegate:]):
(-[WebVideoFullscreenController enterFullscreen:]):
* WebView/WebView.mm:
(-[WebView _openFrameInNewWindowFromMenu:]):
(-[WebView _geolocationDidChangePosition:]):
2010-06-21 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Remove unused dictionary ivars from WebBasePluginPackage
https://bugs.webkit.org/show_bug.cgi?id=40928
* Plugins/WebBasePluginPackage.h:
* Plugins/WebBasePluginPackage.mm:
(-[WebBasePluginPackage getPluginInfoFromPLists]):
(-[WebBasePluginPackage dealloc]):
* Plugins/WebNetscapePluginPackage.mm:
(-[WebNetscapePluginPackage getPluginInfoFromResources]):
2010-06-21 Dan Bernstein <mitz@apple.com>
Build fix
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
2010-06-21 Dan Bernstein <mitz@apple.com>
Reviewed by Darin Adler.
WebKit part of implementing the 'hyphens' and 'hyphenate-character' properties
https://bugs.webkit.org/show_bug.cgi?id=10228
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Initialize wkGetHyphenationLocationBeforeIndex.
2010-06-21 Satish Sampath <satish@chromium.org>
Reviewed by Steve Block.
Speech Input Patch 0: Added compilation argument to conditionally compile pending patches.
https://bugs.webkit.org/show_bug.cgi?id=40878
* Configurations/FeatureDefines.xcconfig:
2010-06-20 Anders Carlsson <andersca@apple.com>
Fix Tiger build.
* Plugins/WebNetscapePluginPackage.mm:
2010-06-20 Anders Carlsson <andersca@apple.com>
Reviewed by Dan Bernstein.
Get rid of the old MIMETypes getter method
https://bugs.webkit.org/show_bug.cgi?id=40898
* Plugins/WebBasePluginPackage.h:
* Plugins/WebBasePluginPackage.mm:
(-[WebBasePluginPackage supportsExtension:]):
(-[WebBasePluginPackage supportsMIMEType:WebCore::]):
(-[WebBasePluginPackage MIMETypeForExtension:]):
* Plugins/WebPluginDatabase.mm:
(-[WebPluginDatabase refresh]):
(-[WebPluginDatabase _removePlugin:]):
2010-06-20 Anders Carlsson <andersca@apple.com>
Reviewed by Dan Bernstein.
Remove bogus const qualifiers.
* WebCoreSupport/WebPasteboardHelper.h:
* WebCoreSupport/WebPasteboardHelper.mm:
(WebPasteboardHelper::urlFromPasteboard):
(WebPasteboardHelper::plainTextFromPasteboard):
(WebPasteboardHelper::fragmentFromPasteboard):
2010-06-20 Anders Carlsson <andersca@apple.com>
Reviewed by Dan Bernstein.
Get rid of the extensionToMIME mapping in WebBasePluginPackage
https://bugs.webkit.org/show_bug.cgi?id=40897
Instead of using the extensionToMIME mutable dictionary, use the MIME types vector.
While this makes lookup of MIME types based on extensions linear instead of constant,
the number of extensions per plug-in is too small for it to matter.
* Plugins/WebBasePluginPackage.h:
* Plugins/WebBasePluginPackage.mm:
(-[WebBasePluginPackage initWithPath:]):
(-[WebBasePluginPackage dealloc]):
(-[WebBasePluginPackage supportsExtension:]):
(-[WebBasePluginPackage MIMETypeForExtension:]):
(-[WebBasePluginPackage setMIMEToExtensionsDictionary:]):
2010-06-20 Anders Carlsson <andersca@apple.com>
Reviewed by Dan Bernstein.
Add a MimeClassInfo Vector to WebBasePluginPackage
https://bugs.webkit.org/show_bug.cgi?id=40896
* Plugins/WebBasePluginPackage.h:
* Plugins/WebBasePluginPackage.mm:
(-[WebBasePluginPackage getPluginInfoFromPLists]):
(-[WebBasePluginPackage WebCore::]):
* Plugins/WebNetscapePluginPackage.mm:
(-[WebNetscapePluginPackage getPluginInfoFromResources]):
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::getPluginInfo):
2010-06-20 Anders Carlsson <andersca@apple.com>
Reviewed by Dan Bernstein.
Move the NSBundle ivar to WebPluginPackage
https://bugs.webkit.org/show_bug.cgi?id=40894
* Plugins/WebBasePluginPackage.h:
* Plugins/WebBasePluginPackage.mm:
(-[WebBasePluginPackage initWithPath:]):
(-[WebBasePluginPackage _objectForInfoDictionaryKey:]):
(-[WebBasePluginPackage getPluginInfoFromPLists]):
(-[WebBasePluginPackage load]):
(-[WebBasePluginPackage dealloc]):
* Plugins/WebNetscapePluginPackage.mm:
(-[WebNetscapePluginPackage _initWithPath:]):
* Plugins/WebPluginPackage.h:
* Plugins/WebPluginPackage.mm:
(-[WebPluginPackage initWithPath:]):
(-[WebPluginPackage dealloc]):
(-[WebPluginPackage viewFactory]):
(-[WebPluginPackage load]):
2010-06-20 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Remove -[WebBasePluginPackage bundle]
https://bugs.webkit.org/show_bug.cgi?id=40892
Add -[WebBasePluginPackage bundleIdentifier] and switch clients over to it.
Move the supportsSnapshotting method over to the plug-in package.
* Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::hostForPackage):
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:WebCore::]):
(-[WebBaseNetscapePluginView supportsSnapshotting]):
* Plugins/WebBasePluginPackage.h:
* Plugins/WebBasePluginPackage.mm:
(-[WebBasePluginPackage isQuickTimePlugIn]):
(-[WebBasePluginPackage isJavaPlugIn]):
(-[WebBasePluginPackage WebCore::]):
Call bundleIdentifier directly instead of asking the bundle
* Plugins/WebNetscapePluginPackage.h:
* Plugins/WebNetscapePluginPackage.mm:
(-[WebNetscapePluginPackage supportsSnapshotting]):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView setAttributeKeys:andValues:]):
(-[WebNetscapePluginView _createPlugin]):
* Plugins/WebPluginDatabase.mm:
(checkCandidate):
2010-06-20 Anders Carlsson <andersca@apple.com>
Reviewed by Dan Bernstein.
Change some WebPluginDabase ivars to use WebCore::String instead of NSString.
https://bugs.webkit.org/show_bug.cgi?id=40869
Re-land r61459, with extra null-checks in WebFrameLoaderClient.
* Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::spawnPluginHost):
* Plugins/WebBasePluginPackage.h:
* Plugins/WebBasePluginPackage.mm:
(-[WebBasePluginPackage initWithPath:]):
(-[WebBasePluginPackage getPluginInfoFromPLists]):
(-[WebBasePluginPackage dealloc]):
(-[WebBasePluginPackage name]):
(-[WebBasePluginPackage path]):
(-[WebBasePluginPackage filename]):
(-[WebBasePluginPackage pluginDescription]):
(-[WebBasePluginPackage description]):
(-[WebBasePluginPackage isJavaPlugIn]):
* Plugins/WebNetscapePluginPackage.mm:
(-[WebNetscapePluginPackage getPluginInfoFromResources]):
(-[WebNetscapePluginPackage _tryLoad]):
(-[WebNetscapePluginPackage _unloadWithShutdown:]):
* Plugins/WebPluginPackage.mm:
(-[WebPluginPackage load]):
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::createPlugin):
2010-06-18 Adam Barth <abarth@webkit.org>
Unreviewed, rolling out r61459.
http://trac.webkit.org/changeset/61459
https://bugs.webkit.org/show_bug.cgi?id=40869
Seems to have broken two tests on the Tiger buildbot:
dom/html/level2/html/AppletsCollection.html
plugins/qt-qwidget-plugin.html
Anders wasn't on #webkit...
* Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::spawnPluginHost):
* Plugins/WebBasePluginPackage.h:
* Plugins/WebBasePluginPackage.mm:
(-[WebBasePluginPackage initWithPath:]):
(-[WebBasePluginPackage getPluginInfoFromPLists]):
(-[WebBasePluginPackage dealloc]):
(-[WebBasePluginPackage name]):
(-[WebBasePluginPackage path]):
(-[WebBasePluginPackage filename]):
(-[WebBasePluginPackage pluginDescription]):
(-[WebBasePluginPackage setName:]):
(-[WebBasePluginPackage setPath:]):
(-[WebBasePluginPackage setPluginDescription:]):
(-[WebBasePluginPackage description]):
(-[WebBasePluginPackage isJavaPlugIn]):
* Plugins/WebNetscapePluginPackage.mm:
(-[WebNetscapePluginPackage getPluginInfoFromResources]):
(-[WebNetscapePluginPackage _tryLoad]):
(-[WebNetscapePluginPackage _unloadWithShutdown:]):
* Plugins/WebPluginPackage.mm:
(-[WebPluginPackage load]):
2010-06-18 Anders Carlsson <andersca@apple.com>
Fix Tiger build.
* Plugins/WebBasePluginPackage.mm:
(-[WebBasePluginPackage isJavaPlugIn]):
2010-06-18 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Change some WebPluginDabase ivars to use WebCore::String instead of NSString.
https://bugs.webkit.org/show_bug.cgi?id=40869
* Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::spawnPluginHost):
* Plugins/WebBasePluginPackage.h:
* Plugins/WebBasePluginPackage.mm:
(-[WebBasePluginPackage initWithPath:]):
(-[WebBasePluginPackage getPluginInfoFromPLists]):
(-[WebBasePluginPackage dealloc]):
(-[WebBasePluginPackage name]):
(-[WebBasePluginPackage path]):
(-[WebBasePluginPackage filename]):
(-[WebBasePluginPackage pluginDescription]):
(-[WebBasePluginPackage description]):
(-[WebBasePluginPackage isJavaPlugIn]):
* Plugins/WebNetscapePluginPackage.mm:
(-[WebNetscapePluginPackage getPluginInfoFromResources]):
(-[WebNetscapePluginPackage _tryLoad]):
(-[WebNetscapePluginPackage _unloadWithShutdown:]):
* Plugins/WebPluginPackage.mm:
(-[WebPluginPackage load]):
2010-06-18 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Rename WebPluginPackage.m to make it an Objective-C++ file.
* Plugins/WebPluginPackage.m: Removed.
* Plugins/WebPluginPackage.mm: Copied from Plugins/WebPluginPackage.m.
2010-06-18 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Get rid of the NSEnumerators from WebBasePluginPackage
https://bugs.webkit.org/show_bug.cgi?id=40868
* Plugins/WebBasePluginPackage.h:
* Plugins/WebBasePluginPackage.mm:
(-[WebBasePluginPackage MIMETypes]):
(-[WebBasePluginPackage supportsExtension:]):
(-[WebBasePluginPackage supportsMIMEType:]):
* Plugins/WebPluginDatabase.mm:
(-[WebPluginDatabase pluginForMIMEType:]):
(-[WebPluginDatabase pluginForExtension:]):
(-[WebPluginDatabase refresh]):
(-[WebPluginDatabase _removePlugin:]):
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::getPluginInfo):
2010-06-18 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Make WebCoreSystemInterface.h a C++ only header
https://bugs.webkit.org/show_bug.cgi?id=40867
* WebCoreSupport/WebSystemInterface.h:
* WebCoreSupport/WebSystemInterface.m: Removed.
* WebCoreSupport/WebSystemInterface.mm: Copied from WebKit/mac/WebCoreSupport/WebSystemInterface.m.
2010-06-18 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Clean up WebPluginDatabase.mm
https://bugs.webkit.org/show_bug.cgi?id=40866
* Plugins/WebBasePluginPackage.h:
* Plugins/WebBasePluginPackage.mm:
(pathByResolvingSymlinksAndAliases):
(-[WebBasePluginPackage initWithPath:]):
Change an instance method into a static function.
* Plugins/WebPluginDatabase.mm:
(PluginPackageCandidates::PluginPackageCandidates):
(PluginPackageCandidates::update):
(PluginPackageCandidates::bestCandidate):
Add a new PluginPackageCandidates class.
(-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]):
Use PluginPackageCandidates here.
2010-06-18 Anders Carlsson <andersca@apple.com>
Fix Tiger build.
* WebCoreSupport/WebPlatformStrategies.mm:
2010-06-18 Anders Carlsson <andersca@apple.com>
Reviewed by Darin Adler.
Get rid of PluginDataMac.mm and use the plug-in strategy instead
https://bugs.webkit.org/show_bug.cgi?id=40860
* Plugins/WebBasePluginPackage.h:
* WebCoreSupport/WebPlatformStrategies.h:
* WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::createPluginStrategy):
(WebPlatformStrategies::refreshPlugins):
(WebPlatformStrategies::getPluginInfo):
* WebCoreSupport/WebViewFactory.mm:
2010-06-18 Anders Carlsson <andersca@apple.com>
Reviewed by Dan Bernstein.
Add stubbed out WebPlatformStrategies class to WebKit.
https://bugs.webkit.org/show_bug.cgi?id=40851
* WebCoreSupport/WebPlatformStrategies.h: Added.
* WebCoreSupport/WebPlatformStrategies.mm: Added.
(WebPlatformStrategies::initialize):
(WebPlatformStrategies::WebPlatformStrategies):
(WebPlatformStrategies::createPluginStrategy):
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
2010-06-15 Dumitru Daniliuc <dumi@chromium.org>
Reviewed by Adam Barth.
Move isAvailable()/setIsAvailable() from Database/DatabaseSync to AbstractDatabase.
https://bugs.webkit.org/show_bug.cgi?id=39041
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2010-06-17 Darin Adler <darin@apple.com>
Reviewed by Sam Weinig.
Use adoptRef and create functions in more code paths
https://bugs.webkit.org/show_bug.cgi?id=40760
* Plugins/Hosted/NetscapePluginInstanceProxy.h: Made create no longer
be an inline function.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy):
Moved the call to addPluginInstance out of here.
(WebKit::NetscapePluginInstanceProxy::create): Move it in here.
This makes sure we call adoptRef on the new proxy before any caller
calls ref on it.
2010-06-16 Eric Seidel <eric@webkit.org>
Reviewed by Adam Barth.
Enable HTML5 Parser in Safari on Mac
https://bugs.webkit.org/show_bug.cgi?id=40739
The HTML5 parser is probably off on all webkit ports.
We should either flip the meaning of the default so that
"false" means HTML5 on all ports, or we'll have to write
more code like this for all the other ports.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
2010-06-15 Mark Rowe <mrowe@apple.com>
Reviewed by Sam Weinig.
Don't leak WebGeolocationPositionInternal and GeolocationPosition instances for every WebGeolocationPosition created.
* WebView/WebGeolocationPosition.mm:
(-[WebGeolocationPosition dealloc]): Implement -dealloc and release our WebGeolocationPositionInternal instance.
2010-06-10 Yuzo Fujishima <yuzo@google.com>
Reviewed by Shinichiro Hamaji.
Implement render style selection for pages to support CSS3 Paged Media.
https://bugs.webkit.org/show_bug.cgi?id=35961
* Misc/WebCoreStatistics.h:
* Misc/WebCoreStatistics.mm:
(-[WebFrame pageProperty:propertyName:]):
2010-06-15 Darin Adler <darin@apple.com>
Reviewed by Adam Barth.
Move functions out of Frame class that were marked "move to Chrome"
https://bugs.webkit.org/show_bug.cgi?id=39636
* WebView/WebView.mm:
(-[WebView shouldClose]): Call shouldClose on FrameLoader instead of
going through Frame.
2010-06-15 Anders Carlsson <andersca@apple.com>
Reviewed by Dan Bernstein.
Remove getPluginInfoFromBundleAndMIMEDictionary:
* Plugins/WebBasePluginPackage.mm:
2010-06-15 Anders Carlsson <andersca@apple.com>
Reviewed by Dan Bernstein.
Fold getPluginInfoFromBundleAndMIMEDictionary: into its sole caller.
* Plugins/WebBasePluginPackage.mm:
(-[WebBasePluginPackage getPluginInfoFromPLists]):
2010-06-11 Simon Fraser <simon.fraser@apple.com>
Reviewed by Darin Adler.
<rdar://problem/8084721> Pages using accelerated compositing fail to update correctly in Carbon apps
The run loop observer used to commit compositing layer changes does not do
updates if [window viewsNeedDisplay] is true, because this indicates that a delayed window
update is pending (added in r58623).
However, Carbon apps don't use the NSWindow updating mechanism, so [window viewsNeedDisplay] always returns YES.
This caused us to never sync compositing layers.
So detect if the current window is wrapping a carbon window, and in that case consult the root
HIView to detect if display is pending.
* WebView/WebView.mm:
(layerSyncRunLoopObserverCallBack):
2010-06-15 Dan Bernstein <mitz@apple.com>
Reviewed by John Sullivan.
<rdar://problem/8077032> REGRESSION (r50796): Black background on AppleScript generated email
Test: platform/mac/editing/input/NSBackgroundColor-transparent.html
r50796 changed the initial background color from invalid to transparent. As a result,
NSAttributedStrings returned from +_web_attributedStringFromRange started including the
NSBackgroundColor attribute, with a transparent color as the value. This caused problems for
components in the system that ignore the alpha component, turning the color into opaque black.
* Misc/WebNSAttributedStringExtras.mm:
(+[NSAttributedString _web_attributedStringFromRange:]): Change to not include the background
and foreground color attributes if the color are transparent.
2010-06-14 Ilya Tikhonovsky <loislo@chromium.org>
Reviewed by Pavel Feldman.
WebInspector: On the way to Remote Debugging we want to transfer dom/timeline/etc
data from inspected page to WebInspector as JSON string via http. The native
serialization to JSON string is supported by InspectorValue's classes. This patch
has the implementation of sendMessageToFrontend function. WebKit version of it still
uses ScriptFunctionCall and will be switched to another transport a little bit later.
https://bugs.webkit.org/show_bug.cgi?id=40134
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorClient::WebInspectorClient):
(WebInspectorClient::openInspectorFrontend):
2010-06-10 David Hyatt <hyatt@apple.com>
Reviewed by John Sullivan.
https://bugs.webkit.org/show_bug.cgi?id=40441, back out the original fix for 29601, since it has broken continuous
wheel delta values.
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView scrollWheel:]):
2010-06-09 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r60889.
http://trac.webkit.org/changeset/60889
https://bugs.webkit.org/show_bug.cgi?id=40365
gtk bot has some kind of memory corruption (Requested by
loislo on #webkit).
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorClient::WebInspectorClient):
(WebInspectorClient::openInspectorFrontend):
(-[WebInspectorWindowController destroyInspectorView]):
2010-06-07 Ilya Tikhonovsky <loislo@chromium.org>
Reviewed by Pavel Feldman.
WebInspector: On the way to Remote Debugging we want to transfer dom/timeline/etc
data from inspected page to WebInspector as JSON string via http. The native
serialization to JSON string is supported by InspectorValue's classes. This patch
has the implementation of sendMessageToFrontend function. WebKit version of it still
uses ScriptFunctionCall and will be switched to another transport a little bit later.
https://bugs.webkit.org/show_bug.cgi?id=40134
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorClient::WebInspectorClient):
(WebInspectorClient::openInspectorFrontend):
2010-06-08 Mark Rowe <mrowe@apple.com>
Reviewed by Adele Peterson.
<rdar://problem/8072136> REGRESSION (r56051): Inspect Element context menu does nothing in applications linked against 10.4 SDK
* WebCoreSupport/WebContextMenuClient.mm:
(fixMenusReceivedFromOldClients): Fix up the tag on the Inspect Element menu item. This ensures that even if the
context menu layout doesn't match our expectations that the menu item will continue to trigger the web inspector.
2010-06-08 Antonio Gomes <tonikitoo@webkit.org>
Reviewed by Ojan Vafai and Darin Adler.
Refactor platform dependent editing behavior code out of Settings
https://bugs.webkit.org/show_bug.cgi?id=39854
EditingBehavior enum was renamed to EditingBehaviorTypes and moved out from Settings.h to
EditingBehaviorTypes.h . Call sites in WebKit/ adjusted accordingly.
* WebView/WebFrame.mm:
(core):
* WebView/WebFrameInternal.h:
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2010-06-06 MORITA Hajime <morrita@google.com>
Unreviewd, follow up to r60820
https://bugs.webkit.org/show_bug.cgi?id=40219
[Mac] ENABLE_METER_TAG should be enabled
Added ENABLE_METER_TAG.
* Configurations/FeatureDefines.xcconfig:
2010-06-06 Gavin Barraclough <barraclough@apple.com>
Reviewed by Sam Weinig.
Bug 40214 - Clean up error construction / throwing in JSC.
The one egregious insanity here is that creating an error requires
a VM-entry-esqe-host call (the string argument is wrapped as a JS
object & pushed on the RegisterFile, then unwrapped back to a
UString). Changing this also means you only require a global
object, not an ExecState, to create an error.
The methods to create error objects are also parameterized
requiring a switch on the type, which can be made cleaner and
faster by moving to a separate method per error type. Code to add
divot information to error had been duplicated, and is coalesced
back into a single function.
Convenience methods added to create & throw type & syntax error
with a default error message, since this is a common case.
Also, errors are currently thrown either using
"throwError(exec, error)" or "exec->setException(error)" - unify
on the former, since this is more commonly used. Add
"throwVMError(exec, error)" equivalents, as a convenience for
cases where the result was being wrapped in "JSValue::encode(...)".
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::moveGlobalExceptionToExecState):
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::invokeMethod):
2010-06-02 Gavin Barraclough <barraclough@apple.com>
Reviewed by Oliver Hunt.
Bug 40094 - The return type of NativeFunction should be EncodedJSValue
On Windows & Linux, using JSVALUE32_64, EncodedJSValue is returned in registers, but JSValue is not.
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::invoke):
2010-06-02 Sterling Swigart <sswigart@google.com>
Reviewed by David Levin.
Image Resizer Patch 0: Added compilation argument to conditionally compile pending patches.
https://bugs.webkit.org/show_bug.cgi?id=39906
* Configurations/FeatureDefines.xcconfig:
2010-06-01 David Hyatt <hyatt@apple.com>
Reviewed by Anders Carlsson.
Add a preference for paginating during layout (the new model for computing page breaks).
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(-[WebPreferences paginateDuringLayoutEnabled]):
(-[WebPreferences setPaginateDuringLayoutEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2010-06-01 Kevin Decker <kdecker@apple.com>
Reviewed by Simon Fraser.
https://bugs.webkit.org/show_bug.cgi?id=40025
<rdar://problem/8046273> All Flash content crashes after installing CS5 Design Premium.
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView supportsSnapshotting]): Do not support snapshotting Flash 10.1 if
the version is less than 10.1.53.60.
2010-06-01 Alexey Proskuryakov <ap@apple.com>
Reviewed by Sam Weinig.
https://bugs.webkit.org/show_bug.cgi?id=39434
REGRESSION (r59811): Geolocation callbacks cannot be created
Removing unused WebGeolocationMock.
* WebCoreSupport/WebGeolocationMock.mm: Removed.
* WebCoreSupport/WebGeolocationMockPrivate.h: Removed.
* WebKit.exp:
2010-05-30 Darin Adler <darin@apple.com>
Reviewed by Sam Weinig.
Make more HTML DOM members private, especially constructors, third and final batch
https://bugs.webkit.org/show_bug.cgi?id=39916
* WebView/WebHTMLRepresentation.mm:
(-[WebHTMLRepresentation elementWithName:inForm:]): Use the new HTMLFormElement
function, associatedElements, rather than getting directly at a data member
named formElements.
(-[WebHTMLRepresentation controlsInForm:]): Ditto.
2010-05-28 Geoffrey Garen <ggaren@apple.com>
Reviewed by Sam Weinig, Gavin Barraclough, Oliver Hunt.
Simplified the host calling convention.
PART ONE: Functional code changes.
[ None in WebKit ]
PART TWO: Global search and replace.
In the areas below, I used global search-and-replace to change
(ExecState*, JSObject*, JSValue, const ArgList&) => (ExecState*)
args.size() => exec->argumentCount()
args.at(i) => exec->argument(i)
* Plugins/Hosted/ProxyInstance.h:
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::invoke):
(WebKit::ProxyInstance::invokeMethod):
(WebKit::ProxyInstance::invokeDefaultMethod):
2010-05-27 Beth Dakin <bdakin@apple.com>
Reviewed by Simon Fraser.
Change z-component to 1.
* WebView/WebHTMLView.mm:
(-[WebHTMLView viewDidMoveToWindow]):
(-[WebHTMLView attachRootLayer:]):
2010-05-26 Simon Fraser <simon.fraser@apple.com>
Reviewed by Beth Dakin and Darin Adler.
Fix for <rdar://problem/7464703> HiDPI: [Layers] Compositing layers
do not scale properly when running with a resolution independent
scale
Apply the userSpaceScaleFactor as a scale on the layerHostingView.
* WebView/WebHTMLView.mm:
(-[WebHTMLView viewDidMoveToWindow]):
(-[WebHTMLView attachRootLayer:]):
2010-05-25 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=39621
<rdar://problem/8009738> Extreme memory growth on DOM Hanoi test
Removed formStateDidChange support, which is not needed by any client.
* WebCoreSupport/WebChromeClient.h:
(WebChromeClient::formStateDidChange):
* WebCoreSupport/WebChromeClient.mm:
* WebView/WebUIDelegatePrivate.h:
2010-05-25 Brady Eidson <beidson@apple.com>
Reviewed by Darin Adler.
Database origins aren't populated at launch (missing db in prefs sheet, possible other symptoms)
<rdar://problem/8013233> and https://bugs.webkit.org/show_bug.cgi?id=39486
* Storage/WebDatabaseManager.mm:
(WebKitInitializeDatabasesIfNecessary): Call initializeTracker() instead of trying to set the path on
an already created tracker that already has its origins populated.
2010-05-24 Darin Adler <darin@apple.com>
Reviewed by Eric Seidel.
Move view-related functions from Frame to FrameView
https://bugs.webkit.org/show_bug.cgi?id=39366
* WebView/WebView.mm:
(-[WebView _setZoomMultiplier:isTextOnly:]): Call function on FrameView.
(-[WebView setEditable:]): Get rid of call to empty function,
removeEditingStyleFromBodyElement.
2010-05-21 David Hyatt <hyatt@apple.com>
Reviewed by Dan Bernstein.
https://bugs.webkit.org/show_bug.cgi?id=39420
Make sure everyone who needs to is using visitedDependentColor rather than accessing styles
directly.
* Misc/WebNSAttributedStringExtras.mm:
(+[NSAttributedString _web_attributedStringFromRange:]):
* WebView/WebFrame.mm:
(-[WebFrame _bodyBackgroundColor]):
2010-05-21 Oliver Hunt <oliver@apple.com>
Reviewed by Geoffrey Garen.
All callable objects should have a global object reference
https://bugs.webkit.org/show_bug.cgi?id=39495
Update the plugin proxy to handle the need for global object.
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::newRuntimeObject):
(WebKit::ProxyRuntimeMethod::ProxyRuntimeMethod):
(WebKit::ProxyInstance::getMethod):
* Plugins/Hosted/ProxyRuntimeObject.h:
* Plugins/Hosted/ProxyRuntimeObject.mm:
(WebKit::ProxyRuntimeObject::ProxyRuntimeObject):
2010-05-21 Steve Block <steveblock@google.com>
Reviewed by Jeremy Orlow.
Add DeviceOrientation and DeviceOrientationClient
https://bugs.webkit.org/show_bug.cgi?id=39479
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
2010-05-20 Mike Thole <mthole@apple.com>
Reviewed by Dave Hyatt.
When using a scale factor > 1, scrollbars sometimes appear when not necessary
https://bugs.webkit.org/show_bug.cgi?id=39458
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView updateScrollers]): Round up non-integral sizes from AppKit
so that they can be compared against the integral document size.
2010-05-20 Kevin Decker <kdecker@apple.com>
Reviewed by Anders Carlsson.
https://bugs.webkit.org/show_bug.cgi?id=39441
<rdar://problem/7985715> Flash context menu is both horizontally and vertically offset from point of click
<rdar://problem/7986109> Youtube video controller UI entirely missing
<rdar://problem/7986154> Flash content paints at horizontally and vertically shifted locations (within the plug-in region)
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView updateAndSetWindow]): The base coordinates of a window and
it's contentView happen to be the equal at a userSpaceScaleFactor of 1. For non-1.0 scale
factors this assumption is false. Accordingly we now convert to the window contentView
coordinate system when computing bounds in "window" and the visible rect.
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]): Ditto.
2010-05-20 Steve Block <steveblock@google.com>
Reviewed by Jeremy Orlow.
Provide bindings for DeviceOrientation
https://bugs.webkit.org/show_bug.cgi?id=39210
Adds ENABLE_DEVICE_ORIENTATION to XCode project file, always disabled.
* Configurations/FeatureDefines.xcconfig:
2010-05-20 Martin Robinson <mrobinson@webkit.org>
Reviewed by Ojan Vafai.
Expose the editing behavior setting in DRT to test all editing code paths
https://bugs.webkit.org/show_bug.cgi?id=38603
* WebView/WebFrame.mm:
(core):
* WebView/WebFrameInternal.h: Added a conversion method from the API enum to the WebCore enum.
* WebView/WebPreferenceKeysPrivate.h: Added a preference key for the new setting.
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]): Initialize the EditingBehavior to Mac style.
(-[WebPreferences editingBehavior]): Added.
(-[WebPreferences setEditingBehavior:]): Added.
* WebView/WebPreferencesPrivate.h: Added the new API points to the private API.
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]): Set the editing behavior via the WebPreferences setting.
2010-05-19 Anders Carlsson <andersca@apple.com>
Reviewed by Kevin Decker and Simon Fraser.
<rdar://problem/8004528>
REGRESSION: Coordinate system for Core Animation NPAPI plug-ins is flipped with accelerated compositing turned on
When needed, create a new CALayer and set it's geometry to be flipped. Add the plug-in layer as a sublayer and then return
the newly created layer.
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView createPlugin]):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView createPlugin]):
2010-05-18 Tony Chang <tony@chromium.org>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=24943
Command-B and Command-I do not generate keydown events in contentEditable regions.
Manual test because performKeyEquivalent is not called by DRT.
Test: manual-tests/style-keypress-events.html
* WebView/WebHTMLView.mm:
(-[WebHTMLView performKeyEquivalent:]): Move style key handling until after webcore gets a chance to handle the event
2010-05-18 Daniel Cheng <dcheng@chromium.org>
Reviewed by Darin Adler, Jian Li.
DragData::asURL() shouldn't do file validity checks
https://bugs.webkit.org/show_bug.cgi?id=38711
Change [NSPasteboard _web_bestURL] to still return a file URL for paths
that don't exist. Callers who care about the existence of the file or
whether or not it is a directory should check themselves when they
want to use the file. The directory check has been left in for now,
since the Mac implementation of ResourceHandle, which uses this function
indirectly via DragController::performDrag) handles directories somewhat
non-intuitively: it opens the parent directory in the Finder, rather
than opening the directory itself.
* Misc/WebNSPasteboardExtras.mm:
(-[NSPasteboard _web_bestURL]):
2010-05-18 Eric Seidel <eric@webkit.org>
Reviewed by Adam Barth (and Maciej Stachowiak).
Make it possible to enable the new HTML5Tokenizer for testing
https://bugs.webkit.org/show_bug.cgi?id=39275
Expose the WebCore::Settings::html5ParserEnabled as a private WebKit setting.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(-[WebPreferences html5ParserEnabled]):
(-[WebPreferences setHTML5ParserEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2010-05-17 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r59652.
http://trac.webkit.org/changeset/59652
https://bugs.webkit.org/show_bug.cgi?id=39268
file-input-files-access test is broken on Mac (Requested by
dcheng on #webkit).
* Misc/WebNSPasteboardExtras.mm:
(-[NSPasteboard _web_bestURL]):
2010-05-17 Daniel Cheng <dcheng@chromium.org>
Reviewed by Darin Adler.
DragData::asURL() shouldn't do file validity checks
https://bugs.webkit.org/show_bug.cgi?id=38711
Change [NSPasteboard _web_bestURL] to still return a file URL for paths
that don't exist. Callers who care about the existence of the file or
whether or not it is a directory should check themselves when they
want to use the file. The directory check has been left in for now,
since the Mac implementation of ResourceHandle, which uses this function
indirectly via DragController::performDrag) handles directories somewhat
non-intuitively: it opens the parent directory in the Finder, rather
than opening the directory itself.
* Misc/WebNSPasteboardExtras.mm:
(-[NSPasteboard _web_bestURL]):
2010-05-14 Stephanie Lewis <slewis@apple.com>
Rubber-stamped by Mark Rowe.
Update order files.
* WebKit.order:
2010-05-13 Timothy Hatcher <timothy@apple.com>
Allow reporting exceptions that occur when using JavaScriptCore APIs
to the Web Inspector.
<rdar://problem/7975410>
Reviewed by Sam Weinig.
* WebView/WebView.mm:
(+[WebView _reportException:inContext:]): Call WebCore::reportException after checking
that the global object is a DOMWindow.
* WebView/WebViewPrivate.h: Added _reportException:inContext:.
2010-05-13 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=39089
<rdar://problem/7974044> Domain names in Russian '.рф' domain are displayed as punycode
Add a custom check for this domain. Currently, this is the only non-ASCII TLD, we'll
investigate a more extensible solution when there are more, and we know what the
typical restictions are.
* Misc/WebNSURLExtras.mm:
(allCharactersAllowedByTLDRules):
(-[NSString _web_mapHostNameWithRange:encode:makeString:]):
2010-05-12 Simon Fraser <simon.fraser@apple.com>
Reviewed by David Hyatt.
Composited plug-ins can cause missed painting
https://bugs.webkit.org/show_bug.cgi?id=39033
<rdar://problem/7972478>
Eagerly enable compositing mode via the enclosing FrameView when the plug-in tells us it wants
to do compositing.
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView createPlugin]):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView createPlugin]):
2010-05-12 Jer Noble <jer.noble@apple.com>
Reviewed by Darin Adler.
Bug 38689: #34005 will break fullscreen video playback
https://bugs.webkit.org/show_bug.cgi?id=38689
Use the new definition of PlatformMedia to check the actual type
returned by MediaPlayer.
* WebView/WebVideoFullscreenController.mm:
(-[WebVideoFullscreenController windowDidLoad]):
2010-05-11 Mark Rowe <mrowe@apple.com>
Fix the world.
In r59162 a change was made to WebCore's FeatureDefines.xcconfig that enabled FILE_READER and FILE_WRITER.
The author and reviewer of that patch ignored the carefully-worded warning at the top of that file asking
that changes to the file be kept in sync across JavaScriptCore, WebCore and WebKit, as well as being kept
in sync with build-webkit. This led to WebCore and WebKit having different views of Document's vtable
and results in crashes in Safari shortly after launch when virtual function calls resulted in the wrong
function in WebCore being called.
We fix this by bringing the FeatureDefines.xcconfig files in to sync. Based on the ChangeLog message and
other changes in r59162 it appears that enabling FILE_WRITER was unintentional so that particular change
has been reverted.
* Configurations/FeatureDefines.xcconfig:
2010-05-10 Simon Fraser <simon.fraser@apple.com>
Reviewed by Anders Carlsson.
Allow compositing layers to be connected across iframe boundaries on Mac
https://bugs.webkit.org/show_bug.cgi?id=38856
When painting an iframe into a compositing layer, the "PaintBehaviorFlattenCompositingLayers"
flag was mistakenly set, because we'd detect that we were drawing into a bitmap. This caused
content to show up in both compositing layers, and the painted background inside the iframe.
Fix by taking the flattening state from the parent frame, if there is one. For the root
frame, we continue to look to see if we're painting into a bitmap.
* WebView/WebFrame.mm:
(-[WebFrame _drawRect:contentsOnly:]):
2010-05-10 Timothy Hatcher <timothy@apple.com>
Fix a crash when closing a WebView while the Web Inspector is open.
<rdar://problem/7966830>
Reviewed by Mark Rowe.
* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController destroyInspectorView]): Null check Page since it can be null.
* WebView/WebView.mm:
(-[WebView _close]): Null out _private->page before deleting the page, so code called
during destruction don't access a half deleted Page object.
2010-05-10 Anders Carlsson <andersca@apple.com>
Unbreak the world. (Fix Mac builds).
* Plugins/Hosted/WebKitPluginHostTypes.h:
2010-05-10 Anders Carlsson <andersca@apple.com>
Reviewed by Simon Fraser.
Change the order of the RendererType enum values, so that old versions of WebKitPluginHost will
use accelerated compositing and not layer backed views.
* Plugins/Hosted/WebKitPluginHostTypes.h:
2010-05-07 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig and Simon Fraser.
<rdar://problem/7947356>
QT Plug-in in hardware-accelerated WebKit is missing the controller
Replace the useSoftwareRenderer boolean with an enum that lets the plug-in host opt into using a layer
backed NSView instead of inserting the layer into the WebCore layer hierarchy.
* Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::instantiatePlugin):
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WKPCInstantiatePluginReply):
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
(WebKit::NetscapePluginInstanceProxy::rendererType):
(WebKit::NetscapePluginInstanceProxy::setRendererType):
(WebKit::NetscapePluginInstanceProxy::InstantiatePluginReply::InstantiatePluginReply):
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy):
Replace the useSoftwareRenderer boolean everywhere with the RendererType enum.
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView createPlugin]):
Only go into full compositing mode when the renderer type returned is UseAcceleratedCompositing.
Otherwise, use a layer backed NSView.
* Plugins/Hosted/WebKitPluginHostTypes.h:
Add a RendererType enum.
2010-05-06 Anders Carlsson <andersca@apple.com>
Reviewed by Darin Adler and Dan Bernstein..
REGRESSION (r51617): when plugins are disabled, plugins show up as garbage characters
https://bugs.webkit.org/show_bug.cgi?id=38698
<rdar://problem/7942075>
When the plug-in database is initialized, we will register all the MIME types it supports with the global
WebView dictionary. When plug-ins are disabled for a single web view, the MIME types still need to be
in the global mapping (because other web views might still have plug-ins enabled).
Prior to r51617 we would always look at the plug-in database to determine that the MIME type belongs to a
plug-in, but now we won't even touch the plug-in database when plug-ins are disabled.
In order to fix this, a new set of registered MIME types that are known to be plug-ins is added. When
+[WebView _viewClass:andRepresentationClass:forMIMEType:allowingPlugins:] is called and allowingPlugins is FALSE
we check if the MIME type is a known plug-in MIME type and return false in that case.
* Plugins/WebPluginDatabase.mm:
(-[WebPluginDatabase refresh]):
(-[WebPluginDatabase _removePlugin:]):
* WebView/WebView.mm:
(knownPluginMIMETypes):
(+[WebView _registerPluginMIMEType:]):
(+[WebView _unregisterPluginMIMEType:]):
(+[WebView _viewClass:andRepresentationClass:forMIMEType:allowingPlugins:]):
* WebView/WebViewInternal.h:
2010-05-06 Dan Bernstein <mitz@apple.com>
Reviewed by Simon Fraser.
<rdar://problem/7951285> REGRESSION (r58847): Composited iframe content obscures Safari's application chrome
Fixed this other regression from r58847. The regression was caused by overriding -visibleRect to
return the WebClipView’s full bounds. AppKit uses -visibleRect to determine the geometry
of the surface for the child WebFrameView. The fix is to restrict the special behavior of
-[WebClipView visibleRect] to when AppKit is consulting it for the purpose of invalidating
areas while scrolling.
* WebView/WebClipView.h:
* WebView/WebClipView.mm:
(-[WebClipView visibleRect]): If the WebClipView is not scrolling, always return
[super visibleRect].
(-[WebClipView _immediateScrollToPoint:]): Override this internal NSClipView method
to set a flag telling -visibleRect that the view is scrolling.
* WebView/WebView.mm:
(layerSyncRunLoopObserverCallBack): Ensure that screen updates, disabled by AppKit
when it thinks an upcoming window flush will re-enable them, are enabled here in
case the -setNeedsDisplayInRect: override has prevented the window from needing to be
flushed.
2010-05-06 Steve Block <steveblock@google.com>
Reviewed by Eric Seidel.
MAC_JAVA_BRIDGE should be renamed JAVA_BRIDGE
https://bugs.webkit.org/show_bug.cgi?id=38544
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
2010-05-05 Dan Bernstein <mitz@apple.com>
Reviewed by Mark Rowe.
Fixed a crash when closing Top Sites after r58847.
* WebView/WebFrameView.mm:
(-[WebFrameView webFrame]): Null-check _private.
2010-05-05 Dan Bernstein <mitz@apple.com>
Rubber-stamped by Mark Rowe.
Fixed test crashes after r58847.
* WebView/WebHTMLView.mm:
(setNeedsDisplayInRect): Null-check the frame.
2010-05-05 Dan Bernstein <mitz@apple.com>
Reviewed by Simon Fraser.
<rdar://problem/7932072> Iframes in composited layers don’t repaint correctly (affects Yahoo! Mail with Flash Player 10.1)
https://bugs.webkit.org/show_bug.cgi?id=38427
* WebView/WebClipView.m: Renamed to WebClipView.mm.
* WebView/WebClipView.mm:
(-[WebClipView visibleRect]): Added this override, which for instances used for WebFrameViews in
composited layers, returns the clip view’s entire bounds. This prevents drawing from being clipped to
AppKit’s idea of what part of the view would be visible if it was drawn as part of the view hierarchy.
Since it is drawn into a compositing layer, that’s irrelevant, and we should not be clipping.
* WebView/WebHTMLView.mm:
(setCursor): Style tweak.
(setNeedsDisplayInRect): Added. Replaces the default implementation of -[NSView setNeedsDisplayInRect:],
so that if the receiver is a descendant of a WebFrameView that draws into a composited layer, the invalidation
is routed back through the WebCore FrameView, which propagates it to the layer.
(+[WebHTMLViewPrivate initialize]): Swizzle the setNeedsDisplayInRect: override in.
(-[WebHTMLView visibleRect]): Removed whitespace.
* WebView/WebView.mm:
(layerSyncRunLoopObserverCallBack): If we bailed out on syncing, due to pending layout, do an eager layout
in preparation for the displaying of compositing layers.
2010-05-05 John Sullivan <sullivan@apple.com>
<rdar://problem/7942606> Output appears in Console when exiting Safari with multiple windows opened
Reviewed by Mark Rowe.
* WebView/WebView.mm:
(+[WebView closeAllWebViews]):
Make copy of allWebViewsSet to avoid mutating it while iterating through it.
2010-05-04 Simon Fraser <simon.fraser@apple.com>
Reviewed by Dan Bernstein.
Improve check for drawing into the window that was added in r58623
https://bugs.webkit.org/show_bug.cgi?id=38562
Rather than assuming that any non-bitmap context is the window's context,
compare the current graphics context with -[NSWindow graphicsContext] to
determine that we're drawing into the window.
* WebView/WebHTMLView.mm:
(-[WebHTMLView drawRect:]):
2010-05-04 Ada Chan <adachan@apple.com>
Reviewed by David Kilzer.
https://bugs.webkit.org/show_bug.cgi?id=38555
Small code refactoring: move the logic to figure out the path to the
databases directory to another method.
* Storage/WebDatabaseManager.mm:
(databasesDirectoryPath):
(WebKitInitializeDatabasesIfNecessary):
2010-05-04 Beth Dakin <bdakin@apple.com>
Reviewed by Mike Thole.
Fix for <rdar://problem/7818509> Crash occurs when exiting Safari
We can avoid this crash if we call [self _removeFromAllWebViewsSet]
even in the case when we are doing a fastDocumentTeardown. This is
a much safer approach.
* WebView/WebView.mm:
(-[WebView _close]):
2010-05-03 Abhishek Arya <inferno@chromium.org>
Reviewed by Adam Barth.
Add support for controlling clipboard access from javascript.
Clipboard access from javascript is disabled by default.
https://bugs.webkit.org/show_bug.cgi?id=27751
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences javaScriptCanAccessClipboard]):
(-[WebPreferences setJavaScriptCanAccessClipboard:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2010-05-03 Jens Alfke <snej@chromium.org>
Reviewed by Darin Fisher.
[chromium] Add "willSendSubmitEvent" hook to WebFrameClient and FrameLoaderClient
https://bugs.webkit.org/show_bug.cgi?id=38397
No tests (functionality is exposed only through native WebKit API.)
* WebCoreSupport/WebFrameLoaderClient.h:
(WebFrameLoaderClient::dispatchWillSendSubmitEvent):
2010-04-30 Simon Fraser <simon.fraser@apple.com>
Reviewed by Dan Bernstein.
<rdar://problem/7477071> REGRESSION: Bad flicker when wheel-scrolling Google Maps, iPad gallery and other sites
Sites that frequently toggle content in and out of compositing layers (like http://www.tumblr.com/boothed)
can cause flickering because of unsychronized compositing layer and view-based updates. There were two
underlying issues:
1. On SnowLeopard, AppKit can throttle window updates, thus breaking an assumption that
NSView drawing will happen on the runloop cycle after a repaint. This provided a window
for the layerSyncRunLoopObserver to fire and commit layer changes too early.
Fix this by having the layerSyncRunLoopObserver in WebView check to see if a display is pending,
and not commit layer changes in that case. We'll commit layer changes later when we
finally draw.
2. The change in r49269 was wrong; it was attempting to fix an issue that was actually caused
by -drawRects: coming in for page snapshots. The correct approach is to avoid hitting the
synchronization and update disabling code in WebHTMLView for draws that are not to the screen.
* WebView/WebHTMLView.mm:
(-[WebHTMLView drawRect:]):
* WebView/WebView.mm:
(layerSyncRunLoopObserverCallBack):
(-[WebView _scheduleCompositingLayerSync]):
2010-04-30 Anders Carlsson <andersca@apple.com>
Part of the previous part (forgot to save).
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView stopTimers]):
(-[WebNetscapePluginView startTimers]):
(-[WebNetscapePluginView checkIfAllowedToLoadURL:frame:callbackFunc:context:]):
(-[WebNetscapePluginView _containerCheckResult:contextInfo:]):
(-[WebNetscapePluginView cancelCheckIfAllowedToLoadURL:]):
(-[WebNetscapePluginView scheduleTimerWithInterval:repeat:timerFunc:]):
(-[WebNetscapePluginView unscheduleTimer:]):
(-[WebNetscapePluginView getVariable:forURL:value:length:]):
(-[WebNetscapePluginView setVariable:forURL:value:length:]):
2010-04-30 Anders Carlsson <andersca@apple.com>
Reviewed by Darin Adler.
Use C99 integer types in more places.
* Plugins/WebNetscapePluginView.mm:
(getNPRect):
2010-04-30 Anders Carlsson <andersca@apple.com>
Fix Tiger build.
* Plugins/WebBaseNetscapePluginStream.h:
* Plugins/WebBaseNetscapePluginStream.mm:
(WebNetscapePluginStream::startStream):
2010-04-30 Anders Carlsson <andersca@apple.com>
Another 32-bit build fix.
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]):
2010-04-30 Anders Carlsson <andersca@apple.com>
Fix 32-bit build (again).
* Plugins/WebNetscapeContainerCheckContextInfo.h:
* Plugins/WebNetscapeContainerCheckContextInfo.mm:
(-[WebNetscapeContainerCheckContextInfo initWithCheckRequestID:callbackFunc:context:]):
(-[WebNetscapeContainerCheckContextInfo checkRequestID]):
(-[WebNetscapeContainerCheckContextInfo callback]):
* Plugins/WebNetscapePluginPackage.h:
2010-04-30 Anders Carlsson <andersca@apple.com>
Fix 32-bit build.
* Plugins/WebNetscapeContainerCheckContextInfo.h:
* Plugins/WebNetscapeContainerCheckContextInfo.mm:
(-[WebNetscapeContainerCheckContextInfo initWithCheckRequestID:callbackFunc:context:]):
* Plugins/WebNetscapeContainerCheckPrivate.h:
* Plugins/WebNetscapePluginPackage.mm:
(functionPointerForTVector):
* Plugins/WebNetscapePluginView.mm:
(PluginTimer::PluginTimer):
(-[WebNetscapePluginView checkIfAllowedToLoadURL:frame:callbackFunc:context:]):
(-[WebNetscapePluginView scheduleTimerWithInterval:repeat:timerFunc:]):
2010-04-30 Anders Carlsson <andersca@apple.com>
Reviewed by Timothy Hatcher.
Next step towards fixing
https://bugs.webkit.org/show_bug.cgi?id=20784
move npapi.h to C99 integer types
Use the C99 types everywhere. The "old" types are still around but will be removed
in a subsequent commit.
* Plugins/WebBaseNetscapePluginStream.h:
* Plugins/WebBaseNetscapePluginStream.mm:
(WebNetscapePluginStream::deliverData):
* Plugins/WebNetscapePluginView.h:
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]):
(-[WebNetscapePluginView getAuthenticationInfoWithProtocol:host:port:scheme:realm:username:usernameLength:password:passwordLength:]):
* Plugins/npapi.mm:
(NPN_MemAlloc):
(NPN_MemFlush):
(NPN_PostURLNotify):
(NPN_PostURL):
(NPN_Write):
(NPN_ScheduleTimer):
(NPN_UnscheduleTimer):
(NPN_GetValueForURL):
(NPN_SetValueForURL):
(NPN_GetAuthenticationInfo):
(WKN_CheckIfAllowedToLoadURL):
(WKN_CancelCheckIfAllowedToLoadURL):
2010-04-29 Anders Carlsson <andersca@apple.com>
Reviewed by Dan Bernstein.
First part of
https://bugs.webkit.org/show_bug.cgi?id=20784
move npapi.h to C99 integer types.
* MigrateHeaders.make:
2010-04-28 Mike Thole <mthole@apple.com>
Reviewed by David Kilzer.
Add canAuthenticateAgainstProtectionSpace() to frame loader so that a protection space
can be inspected before attempting to authenticate against it
https://bugs.webkit.org/show_bug.cgi?id=38271
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::canAuthenticateAgainstProtectionSpace):
Added. If the resource load delegate implements the callback, use its answer. If it does
not, then only send authentication challenges for pre-10.6 protection spaces, which matches
CFNetwork's default behavior.
* WebView/WebDelegateImplementationCaching.h:
* WebView/WebDelegateImplementationCaching.mm:
(CallResourceLoadDelegateReturningBoolean): Added case for passing three objects.
* WebView/WebResourceLoadDelegatePrivate.h:
Added private SPI definition: webView:resource:canAuthenticateAgainstProtectionSpace:forDataSource:
* WebView/WebView.mm:
(-[WebView _cacheResourceLoadDelegateImplementations]):
2010-04-28 Simon Fraser <simon.fraser@apple.com>
Reviewed by Sam Weinig.
<rdar://problem/7918719> ASSERT(isMainThread()) from Font::setShouldUseSmoothing()
Ensure that the WebView +initialize method initializes threading, so that things are correctly
initialized when the first call into the WebKit framework is via a WebView class method.
* WebView/WebView.mm:
(+[WebView initialize]):
2010-04-28 Darin Adler <darin@apple.com>
Reviewed by Adele Peterson.
REGRESSION: Autoscroll does not work in Mail messages
https://bugs.webkit.org/show_bug.cgi?id=38267
rdar://problem/7559799
The machinery to make autoscrolling work on Mac OS X when a WebView is embedded in another
view had gotten broken in multiple ways. For some reason, a combination of bugs made it
partly work until around r48064. This brings it back.
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::scrollRectIntoView): When converting coordinates, use the document view
rather than the WebView itself. This logic may not be correct for the case where
usesDocumentViews is NO, but that is currently an experimental mode and can be fixed later.
2010-04-27 Shinichiro Hamaji <hamaji@chromium.org>
Reviewed by Darin Adler and Eric Seidel.
Add layoutTestController.setPrinting()
https://bugs.webkit.org/show_bug.cgi?id=37203
* Misc/WebCoreStatistics.h:
* Misc/WebCoreStatistics.mm:
(-[WebFrame renderTreeAsExternalRepresentationForPrinting:]):
2010-04-25 Sam Weinig <sam@webkit.org>
Reviewed by Maciej Stachowiak.
Fix for https://bugs.webkit.org/show_bug.cgi?id=38097
Disentangle initializing the main thread from initializing threading
Calls initializeMainThreadToProcessMainThread since there is no way to ensure
that the initialize method will be called on the main thread.
* Carbon/CarbonWindowAdapter.mm:
(+[CarbonWindowAdapter initialize]): Add call to initializeMainThreadToProcessMainThread.
* History/WebBackForwardList.mm:
(+[WebBackForwardList initialize]): Ditto.
* History/WebHistoryItem.mm:
(+[WebHistoryItem initialize]): Ditto.
* Misc/WebElementDictionary.mm:
(+[WebElementDictionary initialize]): Ditto.
* Misc/WebIconDatabase.mm:
(+[WebIconDatabase initialize]): Ditto.
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(+[WebHostedNetscapePluginView initialize]): Ditto.
* Plugins/WebBaseNetscapePluginView.mm:
(+[WebBaseNetscapePluginView initialize]): Ditto.
* Plugins/WebBasePluginPackage.mm:
(+[WebBasePluginPackage initialize]): Ditto.
* Plugins/WebNetscapePluginView.mm:
(+[WebNetscapePluginView initialize]): Ditto.
* WebCoreSupport/WebEditorClient.mm:
(+[WebEditCommand initialize]): Ditto.
* WebCoreSupport/WebFrameLoaderClient.mm:
(+[WebFramePolicyListener initialize]): Ditto.
* WebView/WebArchive.mm:
(+[WebArchivePrivate initialize]): Ditto.
* WebView/WebDataSource.mm:
(+[WebDataSourcePrivate initialize]): Ditto.
* WebView/WebHTMLView.mm:
(+[WebHTMLViewPrivate initialize]): Ditto.
(+[WebHTMLView initialize]): Ditto.
* WebView/WebResource.mm:
(+[WebResourcePrivate initialize]): Ditto.
* WebView/WebTextIterator.mm:
(+[WebTextIteratorPrivate initialize]): Ditto.
* WebView/WebView.mm:
* WebView/WebViewData.mm: Ditto.
(+[WebViewPrivate initialize]): Ditto.
2010-04-24 Dan Bernstein <mitz@apple.com>
Reviewed by Darin Adler.
<rdar://problem/7903728> REGRESSION (r51617): WebView fails to load plug-in MIME types
https://bugs.webkit.org/show_bug.cgi?id=38085
WebView was calling -_webView in a few places where it should have just used itself. It never
makes sense for WebView to call -_webView on itself, and these calls look like they were copied
from similar code in WebHTMLView, WebFrameView and WebDataSource, where -_webView has a different,
useful meaning.
* WebView/WebView.mm:
(-[WebView drawSingleRect:]): Replaced [self _webView] with self.
(-[WebView _viewClass:andRepresentationClass:forMIMEType:]): Replaced [[self _webView] preferences]
with _private->preferences.
(-[WebView _canShowMIMEType:]): Ditto.
2010-04-23 Simon Fraser <simon.fraser@apple.com>
Reviewed by Anders Carlsson.
<rdar://problem/7894489> When printing Flash, send a drawRect event, rather than NPPrint
When printing Flash plug-ins in 32-bit, send a drawRect event with a CGContextRef, rather than calling
NPPrint with a GWorldPtr, since Flash prefers the CGContext path.
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView drawRect:]):
2010-04-22 David Kilzer <ddkilzer@apple.com>
<http://webkit.org/b/38029> +[WebTextIteratorPrivate initialize] is missing call to JSC::initializeThreading()
Reviewed by Timothy Hatcher.
Every other Objective-C class that calls
WebCoreObjCFinalizeOnMainThread(self) in +initialize also calls
JSC::initializeThreading(). The WebTextIteratorPrivate class
was the only one missing this call.
* WebView/WebTextIterator.mm:
(+[WebTextIteratorPrivate initialize]): Added call to
JSC::initializeThreading().
2010-04-22 Alexey Proskuryakov <ap@apple.com>
Rubber-stamped by Mark Rowe.
<rdar://problem/7805969> REGRESSION: iTunes unable to play trailers
Undo the changes made for https://bugs.webkit.org/show_bug.cgi?id=35215 (<rdar://problem/7673157>)
for now. Clients rely on the old behavior, so a fix that changes it will need to account for
those.
* WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::createPlugin): Pass pluginURL
instead of baseURL again.
2010-04-22 Dave Moore <davemoore@chromium.org>
Reviewed by Dimitri Glazkov.
Added notification when the favicons for a page are changed
from a script.
The Document object will notify the frame loader, which will
notify the client. Implementations of FrameLoaderClient will
have to add one method; dispatchDidChangeIcons().
https://bugs.webkit.org/show_bug.cgi?id=33812
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchDidChangeIcons):
2010-04-22 Adam Barth <abarth@webkit.org>
Unreviewed, rolling out r58069.
http://trac.webkit.org/changeset/58069
https://bugs.webkit.org/show_bug.cgi?id=27751
Broke compile on Windows.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2010-04-22 Abhishek Arya <inferno@chromium.org>
Reviewed by Adam Barth.
Add support for controlling clipboard access from javascript.
Clipboard access from javascript is disabled by default.
https://bugs.webkit.org/show_bug.cgi?id=27751
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences javaScriptCanAccessClipboard]):
(-[WebPreferences setJavaScriptCanAccessClipboard:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2010-04-21 Alexey Proskuryakov <ap@apple.com>
Reviewed by Shinichiro Hamaji.
https://bugs.webkit.org/show_bug.cgi?id=37964
Fix a typo in comments - Korean encoding name is windows-949, not windows-939
* WebView/WebPreferences.mm: (+[WebPreferences _setInitialDefaultTextEncodingToSystemEncoding]):
2010-04-21 Mark Rowe <mrowe@apple.com>
Tiger build fix.
* Plugins/WebPluginController.mm: Add an #import that is necessary on Tiger.
2010-04-21 Mark Rowe <mrowe@apple.com>
Reviewed by Eric Carlson.
<rdar://problem/7313430> Many crashes in Safari inside Flip4Mac below -[NSAlert didEndAlert:returnCode:contextInfo:]
Existing versions of the Flip4Mac WebKit plug-in have an object lifetime bug related to an NSAlert that is
used to notify the user about updates to the plug-in. This bug can result in Safari crashing if the page
containing the plug-in navigates while the alert is displayed (<rdar://problem/7313430>).
The gist of the bug is thus: Flip4Mac sets an instance of the TSUpdateCheck class as the modal delegate of the
NSAlert instance. This TSUpdateCheck instance itself has a delegate. The delegate is set to the WmvPlugin
instance which is the NSView subclass that is exposed to WebKit as the plug-in view. Since this relationship
is that of delegates the TSUpdateCheck does not retain the WmvPlugin. This leads to a bug if the WmvPlugin
instance is destroyed before the TSUpdateCheck instance as the TSUpdateCheck instance will be left with a
pointer to a stale object. This will happen if a page containing the Flip4Mac plug-in triggers a navigation
while the update sheet is visible as the WmvPlugin instance is removed from the view hierarchy and there are
no other references to keep the object alive.
We work around this bug by patching the following two messages:
1) -[NSAlert beginSheetModalForWindow:modalDelegate:didEndSelector:contextInfo:]
2) -[TSUpdateCheck alertDidEnd:returnCode:contextInfo:]
Our override of 1) detects whether it is Flip4Mac's update sheet triggering the alert by checking whether the
modal delegate is an instance of TSUpdateCheck. If it is, it retains the modal delegate's delegate.
Our override of 2) then autoreleases the delegate, balancing the retain we added in 1).
These two overrides have the effect of ensuring that the WmvPlugin instance will always outlive the TSUpdateCheck
instance, preventing the TSUpdateCheck instance from accessing a stale delegate pointer and crashing the application.
* Plugins/WebPluginController.mm:
(-[WebPluginController addPlugin:]): Check whether the plug-in being instantiated is the Flip4Mac plug-in and
install our workaround if it is.
(isKindOfClass): Helper function that checks whether the given object is an instance of the named class.
(WebKit_TSUpdateCheck_alertDidEnd_returnCode_contextInfo_): Autorelease the delegate.
(WebKit_NSAlert_beginSheetModalForWindow_modalDelegate_didEndSelector_contextInfo_): Retain the modal delegate's
delegate if this NSAlert belongs to the Flip4Mac plug-in.
(installFlip4MacPlugInWorkaroundIfNecessary): Swizzle the necessary methods. We swizzle the TSUpdateCheck methods
first since it is possible that in some versions of Flip4Mac the TSUpdateCheck class may not exist or may not have
the method we're interested in. In that case we want to bail out before patching any methods.
2010-04-20 Mark Rowe <mrowe@apple.com>
Reviewed by Maciej Stachowiak.
<rdar://problem/7856151> REGRESSION: NPP_Destroy is not called when page navigates when plug-in is displaying modal dialog
An interaction between the plug-in host and WebKit was resulting in WKPCSetModal being called while
NetscapePluginInstanceProxy was waiting on a reply to the GetScriptableNPObject message. This resulted
in calls to stop the plug-in being deferred due to the presence of plug-in code up the stack. This
could lead to crashes as it was possible for the plug-in view to be deallocated during the modal runloop.
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WKPCInvalidateRect):
(WKPCSetModal): Defer the handling of setModal until the next runloop iteration if the host proxy
is already processing requests. This ensures that there will be no plug-in code on the stack when
the modal runloop is entered, which allows the plug-in to be stopped when the page is navigated while
a modal dialog is displayed.
2010-04-20 Adam Barth <abarth@webkit.org>
Reviewed by Eric Seidel.
Factor DocumentWriter out of FrameLoader
https://bugs.webkit.org/show_bug.cgi?id=37175
Update these callsites because the method moved to DocumentWriter.
* WebView/WebFrame.mm:
(-[WebFrame _canProvideDocumentSource]):
(-[WebFrame _receivedData:textEncodingName:]):
2010-04-20 Kent Tamura <tkent@chromium.org>
Reviewed by Darin Adler.
Change a parameter type of chooseIconForFiles()
https://bugs.webkit.org/show_bug.cgi?id=37504
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::chooseIconForFiles):
2010-04-20 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r57892.
http://trac.webkit.org/changeset/57892
https://bugs.webkit.org/show_bug.cgi?id=37864
Caused an assertion in Mac builds (Requested by smfr on
#webkit).
* WebView/WebFrame.mm:
(-[WebFrame _getVisibleRect:]):
* WebView/WebFrameView.mm:
(-[WebFrameView _install]):
2010-04-20 Simon Fraser <simon.fraser@apple.com>
Reviewed by Dan Bernstein.
Clean up RenderPart/RenderPartObject/RenderFrame/RenderEmbeddedObject
https://bugs.webkit.org/show_bug.cgi?id=37741
Make Frame::ownerRenderer() return a RenderFrameBase* rather than a
RenderPart*, and add the necessary toRenderFrameBase() and isRenderFrameBase().
* WebView/WebFrame.mm:
(-[WebFrame _getVisibleRect:]):
* WebView/WebFrameView.mm:
(-[WebFrameView _install]):
2010-04-19 Dan Bernstein <mitz@apple.com>
Reviewed by Sam Weinig.
Finish exposing extremal shrink factors WebHTMLView uses when shrinking pages to fit in the
printing width as SPI.
* WebKit.exp: Export _WebHTMLViewPrintingMinimumShrinkFactor and _WebHTMLViewPrintingMaximumShrinkFactor.
2010-04-15 Gavin Barraclough <barraclough@apple.com>
Reviewed by Sam Weinig & Oliver Hunt.
https://bugs.webkit.org/show_bug.cgi?id=37675
Remove casts/constructors to/from JSC::UString type from WebCore::String
WebCore's strings should not know about JSC::UString, this should be abstracted
away in the bindings. Add explicit conversion methods rather than relying on
overloaded cast operators / constructors being implicitly called.
This patch only changes the class String, once this has landed StringImpl, and
hopefully AtomicString too, should follow suit.
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(identifierFromIdentifierRep):
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::addValueToArray):
(WebKit::NetscapePluginInstanceProxy::moveGlobalExceptionToExecState):
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::getPropertyNames):
* WebView/WebFrame.mm:
(-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
(-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
* WebView/WebScriptDebugDelegate.mm:
(-[WebScriptCallFrame evaluateWebScript:]):
* WebView/WebScriptDebugger.mm:
(toNSURL):
* WebView/WebView.mm:
(aeDescFromJSValue):
2010-04-16 Dan Bernstein <mitz@apple.com>
Reviewed by John Sullivan.
Expose the extremal shrink factors WebHTMLView uses when shrinking pages to fit in the
printing width as SPI.
* WebView/WebHTMLView.mm:
Replaced two macros with constants.
(-[WebHTMLView _beginPrintModeWithPageWidth:shrinkToFit:]): Changed to use the constants.
(-[WebHTMLView _scaleFactorForPrintOperation:]): Ditto.
* WebView/WebHTMLViewPrivate.h: Declared _WebHTMLViewPrintingMinimumShrinkFactor and
_WebHTMLViewPrintingMaximumShrinkFactor.
2010-04-15 Mark Rowe <mrowe@apple.com>
Reviewed by Sam Weinig.
<rdar://problem/7870651> WebDynamicScrollBarsView.h generates compile errors when included in plain Objective-C files.
* WebView/WebDynamicScrollBarsView.h:
2010-04-15 Adam Roben <aroben@apple.com>
Export WebUserContentURLPattern from WebKit
Rubber-stamped by Mark Rowe.
* WebKit.exp:
2010-04-15 Dan Bernstein <mitz@apple.com>
Reviewed by Simon Fraser.
Made consecutive calls to -[WebHTMLView _beginPrintModeWithPageWidth:shrinkToFit:] work
without intermediate calls -[WebHTMLView _endPrintMode].
* WebView/WebHTMLView.mm:
(-[WebHTMLView _setPrinting:minimumPageWidth:maximumPageWidth:adjustViewSize:]):
2010-04-15 Adam Roben <aroben@apple.com>
Expose UserContentURLPattern as WebKit SPI
Fixes <http://webkit.org/b/37354>.
Reviewed by Tim Hatcher.
* Misc/WebUserContentURLPattern.h: Added.
* Misc/WebUserContentURLPattern.mm: Added.
(-[WebUserContentURLPattern initWithPatternString:]): Initialize
_private and then parse the passed-in string into a
UserContentURLPattern.
(-[WebUserContentURLPattern dealloc]): Release _private.
(-[WebUserContentURLPattern isValid]):
(-[WebUserContentURLPattern scheme]):
(-[WebUserContentURLPattern host]):
(-[WebUserContentURLPattern matchesSubdomains]):
Call through to UserContentURLPattern.
2010-04-13 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Separated a DOMWrapperWorld's behavior of keeping wrappers alive from
its own lifetime, so a DOMWrapperWorld's controller can throw away
its wrappers even before its refcount reaches 0.
* WebView/WebScriptWorld.h:
* WebView/WebScriptWorld.mm:
(-[WebScriptWorld unregisterWorld]): Exported this function through WebKit.
2010-04-12 Timothy Hatcher <timothy@apple.com>
SecurityOrigin needs a way to remove individual OriginAccessEntries
https://bugs.webkit.org/show_bug.cgi?id=37449
Reviewed by Dave Hyatt.
* WebView/WebView.mm:
(+[WebView _removeOriginAccessWhitelistEntryWithSourceOrigin:destinationProtocol:destinationHost:allowDestinationSubdomains:]):
Call SecurityOrigin::removeOriginAccessWhitelistEntry.
* WebView/WebViewPrivate.h: Added _removeOriginAccessWhitelistEntryWithSourceOrigin.
2010-04-13 Timothy Hatcher <timothy@apple.com>
Rename SecurityOrigin::whiteListAccessFromOrigin to addOriginAccessWhitelistEntry.
And SecurityOrigin::resetOriginAccessWhiteLists to resetOriginAccessWhitelists.
SecurityOrigin needs a way to remove individual OriginAccessEntries
https://bugs.webkit.org/show_bug.cgi?id=37449
Reviewed by Dave Hyatt.
* WebView/WebView.mm:
(+[WebView _addOriginAccessWhitelistEntryWithSourceOrigin:destinationProtocol:destinationHost:allowDestinationSubdomains:]):
(+[WebView _resetOriginAccessWhitelists]):
* WebView/WebViewPrivate.h:
2010-04-11 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r57468.
http://trac.webkit.org/changeset/57468
https://bugs.webkit.org/show_bug.cgi?id=37433
Broke the world... Must have applied the patch wrong
(Requested by abarth on #webkit).
* WebView/WebFrame.mm:
(-[WebFrame _canProvideDocumentSource]):
(-[WebFrame _receivedData:textEncodingName:]):
2010-04-11 Adam Barth <abarth@webkit.org>
Reviewed by Eric Seidel.
Factor DocumentWriter out of FrameLoader
https://bugs.webkit.org/show_bug.cgi?id=37175
Update these callsites because the method moved to DocumentWriter.
* WebView/WebFrame.mm:
(-[WebFrame _canProvideDocumentSource]):
(-[WebFrame _receivedData:textEncodingName:]):
2010-04-10 Mark Rowe <mrowe@apple.com>
Reviewed by Dan Bernstein.
<rdar://problem/7845305> Further adoption of formal protocols for delegates.
Move EmptyProtocolDefinitions.h down in to WebCore, and add the new protocols. Adopt the protocols in the appropriate places.
* Misc/EmptyProtocolDefinitions.h: Removed.
* Misc/WebDownload.mm:
* WebKitPrefix.h:
2010-04-09 Jer Noble <jer.noble@apple.com>
Reviewed by Darin Adler.
Work around QTMovieView bug (<rdar://problem/7712713>) by using a QTMovieLayer instead.
https://bugs.webkit.org/show_bug.cgi?id=37311 / <rdar://problem/7749993>
* WebView/WebVideoFullscreenController.mm:
(-[WebVideoFullscreenController windowDidLoad]):
(-[WebVideoFullscreenController setMediaElement:WebCore::]):
2010-04-09 Alexey Proskuryakov <ap@apple.com>
Reviewed by Maciej Stachowiak.
https://bugs.webkit.org/show_bug.cgi?id=24572
XMLHttpRequest.statusText returns always "OK" on Mac
* WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
2010-04-09 Eric Seidel <eric@webkit.org>
Unreviewed, rolling out r57343.
http://trac.webkit.org/changeset/57343
https://bugs.webkit.org/show_bug.cgi?id=37311
Broke Tiger compile.
* WebView/WebVideoFullscreenController.mm:
(-[WebVideoFullscreenController windowDidLoad]):
(-[WebVideoFullscreenController setMediaElement:WebCore::]):
2010-04-09 Dan Bernstein <mitz@apple.com>
Reviewed by Darin Adler.
<rdar://problem/7846015> REGRESSION (r57332) - Crash in [WebDynamicScrollBarsView(WebInternal) reflectScrolledClipView:] when opening the Downloads window
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView initWithCoder:]): Added. Calls super and then initializes _private.
2010-04-09 Jer Noble <jer.noble@apple.com>
Reviewed by Darin Adler.
Work around QTMovieView bug (<rdar://problem/7712713>) by using a QTMovieLayer instead.
https://bugs.webkit.org/show_bug.cgi?id=37311 / <rdar://problem/7749993>
* WebView/WebVideoFullscreenController.mm:
(-[WebVideoFullscreenController windowDidLoad]):
(-[WebVideoFullscreenController setMediaElement:WebCore::]):
2010-04-08 Mark Rowe <mrowe@apple.com>
Reviewed by John Sullivan.
<rdar://problem/7814899> REGRESSION(r56008): iTunes crashes on quit inside -[NSScrollView dealloc]
In r56008 new instance variables were added to WebDynamicScrollBarsView, increasing its size.
This causes problems for 32-bit applications that derive from WebDynamicScrollBarsView, as the
size and layout of their subclasses is baked in at compile time. This results in instances
being allocated that are smaller than the new code expects, and may result in the new instance
variables sharing the same memory space as any instance variables that the subclass defines.
We can avoid this problem by having the class contain only a single member that acts as a pointer
to a heap-allocated structure that acts as storage for the real instance variables. This makes
us free to add instance variables in the future without risk of changing the size of the class.
To ensure that 32-bit applications that are built against this new WebDynamicScrollBarsView header
are able to run against older versions of WebKit we pad the class out to its previous size. This
results in any subclasses of WebDynamicScrollBarsView being created with a layout that is compatible
with both versions of the code.
This change could potentially break a subclass of WebDynamicScrollBarsView that directly accesses
instance variables of its superclass. However, this is a private header and no known subclasses
of WebDynamicScrollBarsView access superclass instance variables in this fashion.
* WebView/WebDynamicScrollBarsView.h:
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView initWithFrame:]):
(-[WebDynamicScrollBarsView dealloc]):
(-[WebDynamicScrollBarsView finalize]):
(-[WebDynamicScrollBarsView setAllowsHorizontalScrolling:]):
(-[WebDynamicScrollBarsView setAllowsScrollersToOverlapContent:]):
(-[WebDynamicScrollBarsView setAlwaysHideHorizontalScroller:]):
(-[WebDynamicScrollBarsView setAlwaysHideVerticalScroller:]):
(-[WebDynamicScrollBarsView horizontalScrollingAllowed]):
(-[WebDynamicScrollBarsView verticalScrollingAllowed]):
(-[WebDynamicScrollBarsView contentViewFrame]):
(-[WebDynamicScrollBarsView tile]):
(-[WebDynamicScrollBarsView setSuppressLayout:]):
(-[WebDynamicScrollBarsView setScrollBarsSuppressed:repaintOnUnsuppress:]):
(-[WebDynamicScrollBarsView updateScrollers]):
(-[WebDynamicScrollBarsView reflectScrolledClipView:]):
(-[WebDynamicScrollBarsView allowsHorizontalScrolling]):
(-[WebDynamicScrollBarsView allowsVerticalScrolling]):
(-[WebDynamicScrollBarsView scrollingModes:WebCore::vertical:WebCore::]):
(-[WebDynamicScrollBarsView horizontalScrollingMode]):
(-[WebDynamicScrollBarsView verticalScrollingMode]):
(-[WebDynamicScrollBarsView setScrollingModes:vertical:andLock:]):
(-[WebDynamicScrollBarsView setHorizontalScrollingModeLocked:]):
(-[WebDynamicScrollBarsView setVerticalScrollingModeLocked:]):
(-[WebDynamicScrollBarsView setScrollingModesLocked:]):
(-[WebDynamicScrollBarsView horizontalScrollingModeLocked]):
(-[WebDynamicScrollBarsView verticalScrollingModeLocked]):
(-[WebDynamicScrollBarsView scrollWheel:]):
2010-04-07 David Hyatt <hyatt@apple.com>
Reviewed by Oliver Hunt.
https://bugs.webkit.org/show_bug.cgi?id=24300, don't expose history info via CSS
Add SPI so that layout tests can access computed style including :visited information.
* WebView/WebRenderNode.mm:
(copyRenderNode):
* WebView/WebView.mm:
(-[WebView _computedStyleIncludingVisitedInfo:forElement:]):
* WebView/WebViewInternal.h:
* WebView/WebViewPrivate.h:
2010-04-07 Dan Bernstein <mitz@apple.com>
Reviewed by Adele Peterson.
Refactor WebHTMLView printing code and add private methods to enter and exit printing mode.
https://bugs.webkit.org/show_bug.cgi?id=37246
* Misc/WebNSPrintOperationExtras.h: Declared -_web_availablePaperWidth and -_web_availablePaperHeight.
* Misc/WebNSPrintOperationExtras.m:
(-[NSPrintOperation _web_availablePaperWidth]): Turned -[WebHTMLView _availablePaperWidthForPrintOperation:]
into this method.
(-[NSPrintOperation _web_availablePaperHeight]): Turned -[WebHTMLView _calculatePrintHeight] into this
method.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _isInPrintMode]): Added this accessor.
(-[WebHTMLView _beginPrintModeWithPageWidth:shrinkToFit:]): Added. Moved the code from -knowsPageRange: that
computes the layout widths and enters printing mode into this private method.
(-[WebHTMLView _endPrintMode]): New private method (the old -_endPrintMode has been renamed).
(-[WebHTMLView _scaleFactorForPrintOperation:]): Use -[NSPrintOperation _web_availablePaperWidth].
(-[WebHTMLView _endPrintModeAndRestoreWindowAutodisplay]): Renamed -_endPrintMode to this, changed it to call
_endPrintMode.
(-[WebHTMLView _delayedEndPrintMode:]): Updated for rename.
(-[WebHTMLView knowsPageRange:]): Use -_beginPrintModeWithPageWidth:shrintToFit:,
-[NSPrintOperation _web_availablePaperWidth], and -[NSPrintOperation _web_availablePaperHeight]. Updated for
rename.
(-[WebHTMLView beginDocument]): Updated for rename.
(-[WebHTMLView endDocument]): Ditto.
* WebView/WebHTMLViewPrivate.h: Declared new private methods -_isInPrintMode,
-_beginPrintModeWithPageWidth:shrinkToFit: and -_endPrintMode.
2010-04-07 Andrey Kosyakov <caseq@chromium.org>
Reviewed by Yury Semikhatsky.
Removed redundant FrameLoaderClient::dispatchDidLoadResourceByXMLHttpRequest()
https://bugs.webkit.org/show_bug.cgi?id=36949
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
2010-04-06 Dan Bernstein <mitz@apple.com>
Tiger build fix after r57184.
* WebView/WebHTMLViewPrivate.h:
2010-04-06 Dan Bernstein <mitz@apple.com>
Tiger build fix after r57184.
* WebView/WebHTMLViewPrivate.h:
2010-04-06 Adam Barth <abarth@webkit.org>
Unreviewed.
Speculative build fix for Tiger.
* WebView/WebHTMLViewPrivate.h:
2010-04-06 Dan Bernstein <mitz@apple.com>
Reviewed by Sam Weinig and Anders Carlsson.
Expose WebHTMLView’s page breaking logic as SPI.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _adjustedBottomOfPageWithTop:bottom:limit:]): Factored out of -adjustPageHeightNew:top:bottom:limit:
(-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Call -_adjustedBottomOfPageWithTop:bottom:limit:
* WebView/WebHTMLViewPrivate.h: Declared -_adjustedBottomOfPageWithTop:bottom:limit:
2010-04-06 Mark Rowe <mrowe@apple.com>
Add an #if in order to make Tiger happy.
* WebView/WebViewData.mm:
(-[WebViewPrivate init]):
2010-04-06 Mark Rowe <mrowe@apple.com>
Build fix.
* WebView/WebViewData.mm:
(-[WebViewPrivate init]): Use objc_collectingEnabled like we do elsewhere in WebKit.
2010-04-05 Mark Rowe <mrowe@apple.com>
Reviewed by Adele Peterson.
Test case for <http://webkit.org/b/37115> / <rdar://problem/7829331>.
REGRESSION(r56989): Crash in Mail in WebCore::Position::isCandidate when deleting block using block deletion UI
* WebView/WebHTMLView.mm:
(-[WebHTMLView _updateFontPanel]): Ask the window whether it is the key window rather than doing the comparison
manually. This allows DumpRenderTree's override of isKeyWindow to force this code path to be taken during tests.
2010-04-05 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=37111
<rdar://problem/7790327> Draw replacement text when plug-in host crashes
* Plugins/Hosted/WebHostedNetscapePluginView.h: Removed _pluginDied - it was only used
for drawing replacement icon, and this information is now in WebCore.
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView pluginHostDied]): Tell RenderEmbeddedObject that the plug-in
has crashed.
(-[WebHostedNetscapePluginView drawRect:]): Removed the case for crashed plug-in host. It is
handled by WebCore now.
* WebCoreSupport/WebViewFactory.mm: (-[WebViewFactory crashedPluginText]): Added a string
for plug-in failure.
2010-04-03 yael aharon <yael.aharon@nokia.com>
Reviewed by Darin Adler.
Enable HTMLProgressElement for Safari on OSX
https://bugs.webkit.org/show_bug.cgi?id=36961
* Configurations/FeatureDefines.xcconfig:
2010-04-02 Jer Noble <jer.noble@apple.com>
Reviewed by Eric Carlson.
https://bugs.webkit.org/show_bug.cgi?id=36624
Add an INIT macro for the WebKitSystemInterface function wkQTMovieSelectPreferredAlternates.
* WebCoreSupport/WebSystemInterface.m:
(InitWebCoreSystemInterface):
2010-04-02 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=37043
Java regression tests spam stderr about being unable to set status message
With this change, there is still spam about "Attempt to access JavaScript from destroyed
applet, type 9." I haven't investigated if that indicates a problem or not.
* Plugins/WebPluginController.mm: (-[WebPluginController webPlugInContainerShowStatus:]):
Removed check for _documentView. We don't seem to care.
2010-04-01 Kinuko Yasuda <kinuko@chromium.org>
Reviewed by Dmitry Titov.
Add FileThread for async file operation support in FileReader and FileWriter
https://bugs.webkit.org/show_bug.cgi?id=36896
Add FILE_READER or FILE_WRITER feature defines.
* Configurations/FeatureDefines.xcconfig:
2010-04-01 Ada Chan <adachan@apple.com>
Reviewed by Darin Adler.
Change WebDatabaseManager::deleteOrigin() to return true if there are no errors in deleting the origin.
Ditto for WebDatabaseManager::deleteDatabase().
https://bugs.webkit.org/show_bug.cgi?id=36988
* Storage/WebDatabaseManager.mm:
(-[WebDatabaseManager deleteOrigin:]):
(-[WebDatabaseManager deleteDatabase:withOrigin:]):
* Storage/WebDatabaseManagerPrivate.h:
2010-04-01 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=36976
<rdar://problem/7817498>
REGRESSION(r54783): Silverlight plug-in causes Safari to crash if JavaScript is disabled
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::get): The HashTable assertions aren't
there to catch potential future attempts to store empty/deleted values before these happen -
it's actually wrong to try to look up these values. Added an early return.
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::forget): Ditto.
2010-04-01 Chris Marrin <cmarrin@apple.com>
Reviewed by Simon Fraser.
Added layerTreeAsText function to DRT (for Mac)
https://bugs.webkit.org/show_bug.cgi?id=36782
This is the WebKit side for Mac. It plumbs the
call from WebCore to DRT.
* WebView/WebFrame.mm:WebKit (Mac) side of plumbing
(-[WebFrame _layerTreeAsText]):
* WebView/WebFramePrivate.h:
2010-04-01 Alexey Proskuryakov <ap@apple.com>
Reviewed by Oliver Hunt.
https://bugs.webkit.org/show_bug.cgi?id=36976
<rdar://problem/7817498>
REGRESSION(r54783): Silverlight plug-in causes Safari to crash if JavaScript is disabled
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::get): Use find() instead of get(),
because the latter fails with an assertion when looking up 0 or -1.
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::forget): Be prepared for unexpected
object IDs coming from plug-in host.
2010-03-31 Chris Fleizach <cfleizach@apple.com>
Reviewed by Darin Adler.
Bug 36845 - AX: need a way to set the label of a AXWebArea through WebKit
https://bugs.webkit.org/show_bug.cgi?id=36845
Provide a way through WebKit to set an accessible label that describes the web area.
* WebView/WebFrame.mm:
(-[WebFrame setAccessibleName:]):
* WebView/WebFramePrivate.h:
2010-03-31 Marcus Bulach <bulach@chromium.org>
Reviewed by Jeremy Orlow.
Adds Geolocation param for cancelGeolocationPermissionRequestForFrame.
https://bugs.webkit.org/show_bug.cgi?id=35031
* WebCoreSupport/WebChromeClient.h:
(WebChromeClient::cancelGeolocationPermissionRequestForFrame):
2010-03-30 Gavin Barraclough <barraclough@apple.com>
Rubber stamped by Sam Weinig.
https://bugs.webkit.org/show_bug.cgi?id=36866
Move CString to WTF
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::getCookies):
(WebKit::NetscapePluginInstanceProxy::getProxy):
(WebKit::NetscapePluginInstanceProxy::getAuthenticationInfo):
(WebKit::NetscapePluginInstanceProxy::resolveURL):
* Plugins/WebBaseNetscapePluginView.h:
* Plugins/WebBaseNetscapePluginView.mm:
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView resolveURL:forTarget:]):
2010-03-30 John Sullivan <sullivan@apple.com>
Reviewed by Dan Bernstein.
https://bugs.webkit.org/show_bug.cgi?id=36848
<rdar://problem/7362913>
Menu items appropriate only for rich-content editing can appear in plain-text contexts
* WebView/WebHTMLView.mm:
(-[WebHTMLView validRequestorForSendType:returnType:]):
Don't return self for non-string content if _canEditRichly is false.
2010-03-29 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=36791
Add assertions for instance proxy validity
Add some assertions that the instance proxy hasn't been deleted. We sometimes keep a raw
pointer to one across complicated function calls, relying on the caller to protect the
reference.
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
(WebKit::NetscapePluginInstanceProxy::renderContextID):
(WebKit::NetscapePluginInstanceProxy::pluginView):
(WebKit::NetscapePluginInstanceProxy::hostProxy):
2010-03-30 Laszlo Gombos <laszlo.1.gombos@nokia.com>
Reviewed by David Kilzer.
Explicit guards for ENABLE_GEOLOCATION
https://bugs.webkit.org/show_bug.cgi?id=25756
* WebCoreSupport/WebGeolocationMock.mm:
(-[WebGeolocationMock setError:code:]): Make the body conditional on
ENABLE(GEOLOCATION)
(-[WebGeolocationMock setPosition:]): Ditto.
2010-03-26 Kenneth Rohde Christiansen <kenneth@webkit.org>
Reviewed by Antti Koivisto.
Change method name due to it dealing with both flattening
of frame sets and inner frames.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences isFrameFlatteningEnabled]):
(-[WebPreferences setFrameFlatteningEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2010-03-27 Darin Adler <darin@apple.com>
* Misc/WebNSFileManagerExtras.m:
(-[NSFileManager _webkit_pathWithUniqueFilenameForPath:]):
Removed stray "!". How did that get in there?
2010-03-27 Darin Adler <darin@apple.com>
Reviewed by Mark Rowe.
WebKit NSFileManager methods don't handle broken symlinks correctly.
Part of <rdar://problem/7574046>.
* Misc/WebNSFileManagerExtras.h: Removed unused defines and methods.
* Misc/WebNSFileManagerExtras.m: Removed unused methods.
(fileExists): Added. For use instead of fileExistsAtPath: for cases where we'd like
to treat a broken symlink as a file that does indeed exist.
(-[NSFileManager _webkit_pathWithUniqueFilenameForPath:]): Use fileExists.
2010-03-25 Alexey Proskuryakov <ap@apple.com>
Reviewed by Mark Rowe.
* Plugins/Hosted/NetscapePluginHostProxy.mm: (WKPCRunSyncOpenPanel): Re-fetch host proxy in
a way that works in a function that doesn't have a pluginID argument for some reason.
2010-03-25 Simon Fraser <simon.fraser@apple.com>
Build fix: no review.
Another c_str() -> data().
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::enumerate):
2010-03-25 Alexey Proskuryakov <ap@apple.com>
Reviewed by Mark Rowe.
Correctness fix after r56493.
* Plugins/Hosted/NetscapePluginHostProxy.mm: (WKPCRunSyncOpenPanel): We still need to update
our hostProxy reference, even though we didn't use to have instanceProxy. Nothing guarantees
that the host proxy won't go away while the open panel is up.
2010-03-24 Mark Rowe <mrowe@apple.com>
Build fix after r56474.
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WKPCRunSyncOpenPanel):
2010-03-24 Alexey Proskuryakov <ap@apple.com>
Reviewed by Anders Carlsson.
https://bugs.webkit.org/show_bug.cgi?id=36563
A plug-in makes Safari crash on http://www.itscodingtime.com/
* Plugins/Hosted/NetscapePluginHostProxy.h:
(WebKit::NetscapePluginHostProxy::port): Assert that the object is still alive. This isn't
beautifully systemic, but helped catch a bug, and may help catch more.
(WebKit::NetscapePluginHostProxy::clientPort): Ditto.
(WebKit::NetscapePluginHostProxy::isProcessingRequests): Changed m_processingRequests to a
static. This doesn't change behavior much, but helps avoid writing into deallocated memory.
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): Changed m_processingRequests
to a static.
(WebKit::NetscapePluginHostProxy::processRequests): Ditto. Changing m_processingRequests
after destroying the object in pluginHostDied() was wrong, but reasonably harmless, as there
wasn't much time for some other object to be allocated at this address.
(WKPCEvaluate): Refetch host proxy, as it may have been destroyed.
(WKPCInvoke): Ditto.
(WKPCInvokeDefault): Ditto.
(WKPCGetProperty): Ditto.
(WKPCSetProperty): Ditto.
(WKPCRemoveProperty): Ditto.
(WKPCHasProperty): Ditto.
(WKPCHasMethod): Ditto.
(WKPCEnumerate): Ditto.
(WKPCRunSyncOpenPanel): Ditto.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::processRequestsAndWaitForReply): Bail out of the
"event loop" if host proxy went away while processing a request.
2010-03-24 Hayato Ito <hayato@chromium.org>
Reviewed by Shinichiro Hamaji.
Refactor computePageRects so that Mac can make use of it.
https://bugs.webkit.org/show_bug.cgi?id=36159
Refactoring only, so no new tests.
* WebView/WebFrame.mm:
(-[WebFrame _computePageRectsWithPrintWidthScaleFactor:printHeight:]):
2010-03-24 Kent Tamura <tkent@chromium.org>
Reviewed by Darin Adler.
Make Icon::createIconForFiles() optional.
https://bugs.webkit.org/show_bug.cgi?id=35072
- Rename iconForFiles() to chooseIconForFiles().
- Call Icon::createIconForFiles() from chooseIconForFiles().
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::chooseIconForFiles):
2010-03-23 Dan Bernstein <mitz@apple.com>
Reverted accidental change from r56429.
* WebCoreSupport/WebContextMenuClient.mm:
(WebContextMenuClient::getCustomMenuFromDefaultItems):
2010-03-23 Dan Bernstein <mitz@apple.com>
Reviewed by John Sullivan.
WebKit part of
<rdar://problem/7197736> Plug-in clip rect does not update when overflow
clip changes
https://bugs.webkit.org/show_bug.cgi?id=36479.
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView visibleRectDidChange]): Added. Calls
WKSyncSurfaceToView().
* Plugins/WebBaseNetscapePluginView.h:
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView _windowClipRect]): Changed to use Widget::windowClipRect().
(-[WebBaseNetscapePluginView visibleRectDidChange]): Added. Invokes -renewGState.
2010-03-22 Kevin Decker <kdecker@apple.com>
Reviewed by Simon Fraser.
https://bugs.webkit.org/show_bug.cgi?id=36328
This patch entirely WebNullPluginView.
* Plugins/WebNetscapePluginView.mm:
* Plugins/WebNullPluginView.h: Removed.
* Plugins/WebNullPluginView.mm: Removed.
* Resources/nullplugin.tiff: Removed.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::createPlugin): Invoke the resource load delegate if the plug-in failed to load.
2010-03-22 Alexey Proskuryakov <ap@apple.com>
Reviewed by John Sullivan.
https://bugs.webkit.org/show_bug.cgi?id=36455
Make WebKit more resistant against plug-in crashes
No tests, because crashing on build bots isn't good, even if it's only helper processes
that crash.
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
(WebKit::NetscapePluginInstanceProxy::waitForReply): Protect "this", because this function
needs it after waiting for reply. Some callers used to do this, but not all, and we really
shouldn't depend on callers here.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::wheelEvent): Don't protect the plug-in instance proxy,
because this function doesn't use it after waiting for reply.
(WebKit::NetscapePluginInstanceProxy::createBindingsInstance): Ditto.
* Plugins/Hosted/ProxyInstance.mm: (WebKit::ProxyInstance::invoke): Added an m_instanceProxy
null check for another code path.
2010-03-22 Kevin Decker <kdecker@apple.com>
Reviewed by John Sullivan.
https://bugs.webkit.org/show_bug.cgi?id=36328
* WebCoreSupport/WebViewFactory.mm:
(-[WebViewFactory missingPluginText]): Added.
2010-03-18 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=36337
Log an error when an OOP plug-in sends an unknown object id
Making these LOG_ERROR and not ASSERTs, because I don't want early returns to look
temporary or redundant.
* 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):
2010-03-16 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=36184
YouTube video resizing doesn't work with OOP plug-ins
Test: plugins/resize-from-plugin.html
We were calling _WKPHResizePluginInstance synchronously or asynchronously, depending on
whether the size has changed. But sync and async messages are not necessarily delivered in
order - plug-in host listens only to the former while waiting for a response to a message it
sent (a call to invoke() in this case).
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::resize):
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView updateAndSetWindow]):
2010-03-16 Yury Semikhatsky <yurys@chromium.org>
Reviewed by Pavel Feldman.
Introduce InspectorFrontendClient that provides InspectorFrontend with an interface to the embedder. InspectorClient now serves as a delegate for InspectorController and does not contain methods for managing inspector frontend window. That allows to create remote InspectorFrontendHost.
Introduce InspectorFrontendClient that would provide InspectorFrontend with an interface to the embedder
https://bugs.webkit.org/show_bug.cgi?id=35036
* WebCoreSupport/WebInspectorClient.h:
* WebCoreSupport/WebInspectorClient.mm:
(WebInspectorClient::WebInspectorClient):
(WebInspectorClient::inspectorDestroyed):
(WebInspectorClient::openInspectorFrontend):
(WebInspectorClient::highlight):
(WebInspectorClient::hideHighlight):
(WebInspectorFrontendClient::WebInspectorFrontendClient):
(WebInspectorFrontendClient::frontendLoaded):
(WebInspectorFrontendClient::localizedStringsURL):
(WebInspectorFrontendClient::hiddenPanels):
(WebInspectorFrontendClient::bringToFront):
(WebInspectorFrontendClient::closeWindow):
(WebInspectorFrontendClient::attachWindow):
(WebInspectorFrontendClient::detachWindow):
(WebInspectorFrontendClient::setAttachedWindowHeight):
(WebInspectorFrontendClient::inspectedURLChanged):
(WebInspectorFrontendClient::updateWindowTitle):
(-[WebInspectorWindowController dealloc]):
(-[WebInspectorWindowController windowShouldClose:]):
(-[WebInspectorWindowController close]):
(-[WebInspectorWindowController showWindow:]):
(-[WebInspectorWindowController attach]):
(-[WebInspectorWindowController detach]):
(-[WebInspectorWindowController attached]):
(-[WebInspectorWindowController setFrontendClient:]):
(-[WebInspectorWindowController destroyInspectorView]):
(-[WebNodeHighlighter initWithInspectedWebView:]):
(-[WebNodeHighlighter dealloc]):
(-[WebNodeHighlighter highlightNode:]):
(-[WebNodeHighlighter hideHighlight]):
(-[WebNodeHighlighter didAttachWebNodeHighlight:]):
(-[WebNodeHighlighter willDetachWebNodeHighlight:]):
* WebInspector/WebInspector.mm:
(-[WebInspector attach:]):
(-[WebInspector detach:]):
2010-03-15 Andy Estes <aestes@apple.com>
Reviewed by John Sullivan.
Updated call to WKGetWheelEventDeltas() to match new method signature.
https://bugs.webkit.org/show_bug.cgi?id=29601
<rdar://problem/7453254>
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView scrollWheel:]):
2010-03-15 John Sullivan <sullivan@apple.com>
Reviewed by Adam Roben.
-[WebFrame setAlwaysHideHorizontal/VerticalScroller:] prevents keyboard scrolling
<https://bugs.webkit.org/show_bug.cgi?id=36125>
* WebView/WebDynamicScrollBarsView.h:
Added instance variables horizontalScrollingAllowedButScrollerHidden and
verticalScrollingAllowedButScrollerHidden. Renamed instance variables
hideHorizontal/VerticalScroller to alwaysHideHorizontal/VerticalScroller for clarity.
Declared methods -horizontalScrollingAllowed and -verticalScrollingAllowed.
Added comments.
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView setAlwaysHideHorizontalScroller:]):
Updated for instance variable renaming.
(-[WebDynamicScrollBarsView setAlwaysHideVerticalScroller:]):
Ditto.
(-[WebDynamicScrollBarsView horizontalScrollingAllowed]):
New method, returns YES if the scroller is showing or the only reason that the scroller
is not showing is that setAlwaysHideHorizontalScrolling has been called.
(-[WebDynamicScrollBarsView verticalScrollingAllowed]):
New method, returns YES if the scroller is showing or the only reason that the scroller
is not showing is that setAlwaysHideVerticalScrolling has been called.
(-[WebDynamicScrollBarsView updateScrollers]):
Updated for instance variable renamings. Now updates horizontalScrollingAllowedButScrollerHidden
and verticalScrollingAllowedButScrollerHidden. Now takes the always-hidden state into account
in the early-return code path, to avoid taking it into account twice in the regular code path.
* WebView/WebFrameView.mm:
(-[WebFrameView _scrollToBeginningOfDocument]):
Use _isScrollable instead of _hasScrollBars.
(-[WebFrameView _scrollToEndOfDocument]):
Ditto.
(-[WebFrameView scrollToBeginningOfDocument:]):
Use _largestScrollableChild instead of _largestChildWithScrollBars.
(-[WebFrameView scrollToEndOfDocument:]):
Ditto.
(-[WebFrameView _pageVertically:]):
Use _isScrollable and _largestScrollableChild instead of _hasScrollBars
and _largestChildWithScrollBars.
(-[WebFrameView _pageHorizontally:]):
Ditto.
(-[WebFrameView _scrollLineVertically:]):
Ditto.
(-[WebFrameView _scrollLineHorizontally:]):
Ditto.
(-[WebFrameView keyDown:]):
Use _largestScrollableChild instead of _largestChildWithScrollBars.
(-[WebFrameView _isScrollable]):
New method, calls -[WebDynamicScrollBarsView horizontalScrollingAllowed] and
-[WebDynamicScrollBarsView verticalScrollingAllowed]
(-[WebFrameView _largestScrollableChild]):
New method, like _largestChildWithScrollBars but uses _isScrollable.
(-[WebFrameView _hasScrollBars]):
Added a comment that this is no longer used by Safari, and can thus probably be
deleted once we no longer want to support it for nightly build compatibility with
old versions of Safari.
(-[WebFrameView _largestChildWithScrollBars]):
Ditto.
* WebView/WebFrameViewPrivate.h:
Declared -_isScrollable and -_largestScrollableChild. Added comments to
_hasScrollBars and _largestChildWithScrollBars saying that they are no longer
used by Safari, and can thus probably be deleted once we no longer want to
support them for nightly build compatibility with old versions of Safari.
2010-03-15 John Sullivan <sullivan@apple.com>
Method name and parameter name mistakes from recent SPI addition
<https://bugs.webkit.org/show_bug.cgi?id=36119>
Reviewed by Dan Bernstein.
* WebView/WebDynamicScrollBarsView.h:
Renamed instance variable and method name from "setAllowXXX" to "setAllowsXXX".
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView setAllowsScrollersToOverlapContent:]):
Updated for renamed instance variable and method.
(-[WebDynamicScrollBarsView setAlwaysHideHorizontalScroller:]):
Changed parameter name from shouldBeVisible to shouldBeHidden.
(-[WebDynamicScrollBarsView setAlwaysHideVerticalScroller:]):
Ditto.
(-[WebDynamicScrollBarsView contentViewFrame]):
Updated for renamed instance variable.
(-[WebDynamicScrollBarsView tile]):
Ditto.
(-[WebDynamicScrollBarsView reflectScrolledClipView:]):
Ditto.
* WebView/WebFrame.mm:
(-[WebFrame setAllowsScrollersToOverlapContent:]):
Renamed method from setAllowXXX, and updated for same change in WebDynamicScrollBarsView.
* WebView/WebFramePrivate.h:
Renamed method name from "setAllowXXX" to "setAllowsXXX".
2010-03-14 Darin Adler <darin@apple.com>
Reviewed by Mark Rowe.
Remove unneeded dependency on non-string identifier for an NSTableColumn
https://bugs.webkit.org/show_bug.cgi?id=36106
* WebView/WebTextCompletionController.mm:
(-[WebTextCompletionController _buildUI]): Use init instead of initWithIdentifier:
because the table has only one column and that column does not need an identifier.
2010-03-12 Beth Dakin <bdakin@apple.com>
Reviewed by Simon Fraser.
Fix for https://bugs.webkit.org/show_bug.cgi?id=34942 Fullscreen
API naming is inconsistent
-and corresponding-
<rdar://problem/7729165>
This patch changes all occurrences of "fullScreen" to the more
popular "fullscreen."
* Plugins/Hosted/NetscapePluginHostProxy.h:
(WebKit::NetscapePluginHostProxy::isFullscreenWindowShowing):
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy):
(WebKit::NetscapePluginHostProxy::didEnterFullscreen):
(WebKit::NetscapePluginHostProxy::didExitFullscreen):
(WebKit::NetscapePluginHostProxy::setFullscreenWindowIsShowing):
(WKPCSetFullscreenWindowIsShowing):
* Plugins/Hosted/WebKitPluginClient.defs:
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView _workaroundSilverlightFullscreenBug:]):
(-[WebNetscapePluginView _createPlugin]):
(-[WebNetscapePluginView _destroyPlugin]):
* WebView/WebVideoFullscreenHUDWindowController.mm:
(-[WebVideoFullscreenHUDWindowController windowDidLoad]):
2010-03-12 Andy Estes <aestes@apple.com>
Reviewed by Brady Eidson.
Expose WebPDFView's underlying PDFDocument.
https://bugs.webkit.org/show_bug.cgi?id=36045
* WebView/WebDocumentPrivate.h: Create a new protocol called
WebDocumentPDF.
* WebView/WebPDFView.h: Have WebPDFView implement said protocol.
* WebView/WebPDFView.mm:
(-[WebPDFView PDFDocument]): Expose WebPDFView's underlying
PDFDocument by implementing -(PDFDocument*)PDFDocument from
WebDocumentPDF.
2010-03-12 Andy Estes <aestes@apple.com>
Reviewed by Brady Eidson.
Remove an unused method.
https://bugs.webkit.org/show_bug.cgi?id=35940
* Plugins/WebPluginController.mm:
removed - (void)showURL:(NSURL *) inFrame:(NSString *)
2010-03-11 Mark Rowe <mrowe@apple.com>
Reviewed by David Kilzer.
<rdar://problem/7745082> Make it possible to build WebKit for older Mac OS X versions from the current Mac OS X version
Default to using the appropriate SDK if the target Mac OS X version is not the current Mac OS X version.
* Configurations/Base.xcconfig:
2010-03-11 Mark Rowe <mrowe@apple.com>
Reviewed by Tim Hatcher.
<rdar://problem/7745082> Make it possible to build WebKit for older Mac OS X versions from the current Mac OS X version
Introduce TARGET_MAC_OS_X_VERSION_MAJOR to represent the Mac OS X version that is being targeted. It defaults to the
current Mac OS X version unless otherwise specified.
Key off TARGET_MAC_OS_X_VERSION_MAJOR where we'd previously been keying off MAC_OS_X_VERSION_MAJOR.
Explicitly map from the target Mac OS X version to the preferred compiler since Xcode's default compiler choice
may not be usable when targetting a different Mac OS X version.
Key off TARGET_GCC_VERSION rather than MAC_OS_X_VERSION_MAJOR in locations where we'd previously been keying off
MAC_OS_X_VERSION_MAJOR but the decision is really related to the compiler version being used.
* Configurations/Base.xcconfig:
* Configurations/DebugRelease.xcconfig:
* Configurations/FeatureDefines.xcconfig:
* Configurations/Version.xcconfig:
2010-03-11 Anders Carlsson <andersca@apple.com>
Reviewed by David Hyatt.
Remove invalidateContents, it isn't used and it never makes sense to only invalidate the contents.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
2010-03-11 Alexey Proskuryakov <ap@apple.com>
Reviewed by Geoff Garen.
https://bugs.webkit.org/show_bug.cgi?id=35965
<rdar://problem/7742771> Crash when passing an object returned from plug-in back to the plug-in
Test: plugins/round-trip-npobject.html
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::retainLocalObject): Corrected the check - there is
now a separate ProxyRuntimeObject class for proxy pbjects.
(WebKit::NetscapePluginInstanceProxy::releaseLocalObject): Ditto.
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::invoke): Check if m_instanceProxy is still non-zero. The plug-in
could have crashed while we were waiting for response.
(WebKit::ProxyInstance::setFieldValue): Ditto.
2010-03-10 Simon Fraser <simon.fraser@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=35975
<rdar://problem/7739922> Flash 10.1b crashes when generating snapshots
Do a version check before sending a drawRect event to a Flash plugin,
since 10.1.d51 has a bug that crashes when called this way.
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView drawRect:]):
* Plugins/WebBaseNetscapePluginView.h:
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView supportsSnapshotting]):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView drawRect:]):
2010-03-10 John Sullivan <sullivan@apple.com>
Reviewed by Tim Hatcher.
<rdar://problem/7735387> input type other than text won't work with autofill
<https://bugs.webkit.org/show_bug.cgi?id=35963>
* WebView/WebHTMLRepresentation.mm:
(-[WebHTMLRepresentation elementDoesAutoComplete:]):
Return true for any text field that's not a password, rather than only
for TEXT type.
2010-03-09 Brady Eidson <beidson@apple.com>
Reviewed by Tim Hatcher.
REGRESSION: WebInspector docking busted on Windows
<rdar://problem/7728433> and https://bugs.webkit.org/show_bug.cgi?id=35953
* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController showWindow:]): Use the InspectorController:: copy of the should attach settings key.
(-[WebInspectorWindowController attach]): Ditto.
(-[WebInspectorWindowController detach]): Ditto.
2010-03-09 Geoffrey Garen <ggaren@apple.com>
Reviewed by Darin Adler.
Updated for FastMalloc reporting changes.
* Misc/WebCoreStatistics.mm:
(+[WebCoreStatistics memoryStatistics]):
2010-03-08 Simon Fraser <simon.fraser@apple.com>
Reviewed by Mark Rowe.
Move the new method to the end of the MIG definitions file, to avoid breaking
compatibility between WebKit and older versions of WebKitPluginHost.
* Plugins/Hosted/WebKitPluginHost.defs:
2010-03-08 Simon Fraser <simon.fraser@apple.com>
Reviewed by Kevin Decker.
<rdar://problem/7714340> Need to grab image snapshot of Core Animation plugins
Allow plug-ins using the Core Animation drawing model to be captured when doing a flattening paint,
by sending them a drawRect event as if they were software-painting.
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::snapshot):
New snapshot() method that calls over to the plugin host, and then draws the image that comes back.
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView drawRect:]): If we don't have a software renderer, but we're doing
a flattening paint, then call the snapshot method.
* Plugins/Hosted/WebKitPluginHost.defs: Added snapshot method.
* Plugins/WebBaseNetscapePluginView.h:
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView inFlatteningPaint]):
New utility method that asks the FrameView whether the current paint behavior is
flattening.
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView drawRect:]): If the plug-in is using CA but this is a flattening
paint, go ahead and send a drawRect event to the plug-in.
2010-03-08 Darin Adler <darin@apple.com>
Reviewed by Dan Bernstein.
Fix crash when you quit inside an unload handler.
rdar://problem/6958347
Test: manual-tests/quit-inside-unload.html
* WebView/WebView.mm:
(-[WebView _closeWithFastTeardown]): Removed code to set
_private->closed since _close now does this earlier, before
calling this method.
(-[WebView _close]): Moved code to set _private->closed to the
top of this method.
(-[WebView setHostWindow:]): Rewrote the code that forbade
setting the host window after closing so that it only forbids
non-nil host windows. That way, the code to clear away the host
window can run safely after setting _private->closed, yet client
code cannot set a new host window after closing.
2010-03-08 Darin Adler <darin@apple.com>
Roll out a file I checked in by accident.
* WebView/WebView.mm: Back to previous version.
2010-03-08 Chris Marrin <cmarrin@apple.com>
Reviewed by Darin Adler.
Turn on HW accel on Leopard even if coreVideoHas7228836Fix() is false, when WebGL is enabled
https://bugs.webkit.org/show_bug.cgi?id=35759
This allows WebGL to work on Leopard without the fix. It exposes these users to the crash
that happens because of the CoreVideo bug, but it limits the exposure to those who have
chosen to enable WebGL.
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2010-03-02 Adam Treat <atreat@rim.com>
Reviewed by Dave Hyatt.
Adapt the mac port to the refactoring of repaint methods.
https://bugs.webkit.org/show_bug.cgi?id=34214
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::invalidateContents):
(WebChromeClient::invalidateWindow):
(WebChromeClient::invalidateContentsAndWindow):
(WebChromeClient::invalidateContentsForSlowScroll):
2010-03-08 Jian Li <jianli@chromium.org>
Reviewed by Dmitry Titov.
Blob.slice support.
https://bugs.webkit.org/show_bug.cgi?id=32993
Add ENABLE_BLOB_SLICE feature define.
* Configurations/FeatureDefines.xcconfig:
2010-03-08 Eric Uhrhane <ericu@chromium.org>
Reviewed by David Levin.
Remove the now-redundant Settings fields for the Database
https://bugs.webkit.org/show_bug.cgi?id=35763
No new tests; this code isn't called.
* WebView/WebView.mm: Remove the call into Settings.
(-[WebView _preferencesChangedNotification:]):
2010-03-07 Mark Rowe <mrowe@apple.com>
Rubber-stamped by Cameron Zwarich.
Remove unnecessary includes from header files, adding them to the handful of implementation files that need them.
* Misc/WebIconDatabase.mm:
2010-03-07 Mark Rowe <mrowe@apple.com>
Rubber-stamped by Cameron Zwarich.
Remove unnecessary includes from header files, adding them to the handful of implementation files that need them.
* Misc/WebNSPasteboardExtras.mm:
2010-03-04 Mark Rowe <mrowe@apple.com>
Reviewed by Sam Weinig.
<rdar://problem/7717249> DOMSVG.h includes a non-existent DOMSVGFEMorphologyElement.h
* MigrateHeaders.make: Migrate DOMSVGFEMorphologyElement.h and DOMSVGFEMorphologyElementInternal.h.
2010-03-04 Mark Rowe <mrowe@apple.com>
Reviewed by Sam Weinig.
Use a framework-style include to pull in WebInspector.h for consistency
with other parts of WebKit.
* WebInspector/WebInspectorPrivate.h:
2010-03-04 Brady Eidson <beidson@apple.com>
Reviewed by Geoff Garen.
REGRESSION (31281): -[WebArchive initWithCoder:] leaks
<rdar://problem/7702420> and https://bugs.webkit.org/show_bug.cgi?id=35534
* WebView/WebArchive.mm:
(-[WebArchive initWithCoder:]): Don't retain objects we don't own.
2010-03-03 Alexey Proskuryakov <ap@apple.com>
Reviewed by Timothy Hatcher.
https://bugs.webkit.org/show_bug.cgi?id=35692
<rdar://problem/7703622> Crash when calling abort() on an XHR while in a windowless WebView
* Panels/WebAuthenticationPanel.m: (-[WebAuthenticationPanel runAsModalDialogWithChallenge:]):
Retain the challenge, just like it's done for sheet.
2010-03-02 Eric Uhrhane <ericu@chromium.org>
Reviewed by David Levin.
Move database enable bit fully out of settings
This is stage one of a three-stage commit [webkit, then chromium, then
webkit again]. In this change I'm adding calls to
Database::setIsAvailable inside Settings::setDatabaseEnabled and
anywhere else that called it, and switching webkit fully over to using
that flag [added in a previous checkin]. Phase two will remove
Chromium's use of Settings for the Database, and phase three will remove
the Setting for the Database enable entirely, leaving only
Database::isAvailable/setIsAvailable.
No new tests; tested by existing storage tests.
https://bugs.webkit.org/show_bug.cgi?id=35310
* WebView/WebView.mm: Added a call to Database::setIsAvailable.
(-[WebView _preferencesChangedNotification:]):
2010-03-02 Adam Roben <aroben@apple.com>
Add -[WebView _registerURLSchemeAsSecure:]
Fixes <http://webkit.org/b/35580> <rdar://problem/7706407> Expose
SecurityOrigin::registerURLSchemeAsSecure as WebKit SPI
Reviewed by Tim Hatcher.
* WebView/WebView.mm:
(+[WebView _registerURLSchemeAsSecure:]):
* WebView/WebViewPrivate.h:
Added. Calls through to SecurityOrigin::registerURLSchemeAsSecure.
2010-03-01 Jakob Petsovits <jpetsovits@rim.com>
Reviewed by Adam Barth.
Adapt to the new ZoomMode enum.
https://bugs.webkit.org/show_bug.cgi?id=35347
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
(-[WebView _setZoomMultiplier:isTextOnly:]):
(-[WebView _realZoomMultiplierIsTextOnly]):
2010-02-27 Jing Jin <jjin@apple.com>
Reviewed by Timothy Hatcher.
Move implementation of Bug 35449 into WebFramePrivate.
* WebView/WebFrame.h:
* WebView/WebFrame.mm:
(-[WebFrame setAllowScrollersToOverlapContent:]):
(-[WebFrame setAlwaysHideHorizontalScroller:]):
(-[WebFrame setAlwaysHideVerticalScroller:]):
* WebView/WebFramePrivate.h:
2010-02-26 Jing Jin <jjin@apple.com>
Reviewed by Timothy Hatcher.
https://bugs.webkit.org/show_bug.cgi?id=35449
Add ability to hide WebFrame scrollbars and to allow scrollbars to overlap with content.
* WebView/WebDynamicScrollBarsView.h:
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView setAllowScrollersToOverlapContent:]): Allows scrollbars to
overlap with the document and re-layouts the document.
(-[WebDynamicScrollBarsView setAlwaysHideHorizontalScroller:]): Hides the horizontal scrollbar.
(-[WebDynamicScrollBarsView setAlwaysHideVerticalScroller:]): Hides the vertical scrollbar.
(-[WebDynamicScrollBarsView contentViewFrame]): Calculates the appropriate frame based
on allowScrollersToOverlapContent.
(-[WebDynamicScrollBarsView tile]): If allowScrollersToOverlapContent is YES, set the
contentView's frame so it overlaps with the scrollbar.
(-[WebDynamicScrollBarsView updateScrollers]): Take into account hideHorizontalScroller
and hideVerticalScroller.
(-[WebDynamicScrollBarsView reflectScrolledClipView:]): set drawsBackground to NO when
scrollbars are overlapping with content, so we don't get trails during scrollbar draw updates.
* WebView/WebDynamicScrollBarsViewInternal.h:
* WebView/WebFrame.h:
* WebView/WebFrame.mm:
(-[WebFrame setAllowScrollersToOverlapContent:]): Hook for [WebDynamicScrollBarsView setAllowScrollersToOverlapContent:]
(-[WebFrame setAlwaysHideHorizontalScroller:]): Hook for [WebDynamicScrollBarsView setAlwaysHideHorizontalScroller:]
(-[WebFrame setAlwaysHideVerticalScroller:]): Hook for [WebDynamicScrollBarsView setAlwaysHideVerticalScroller:]
2010-02-26 Gavin Barraclough <barraclough@apple.com>
Reviewed by Alexey Proskuryakov.
Bug 35401 - Fix handling of errors in handling calls over bridge,
where base object bridge-type does not match method bridge-type.
The code assumes users will only attempt to invoke a Java method
on a Java base object, etc.
Add language specific subclasses of RuntimeMethod, and pass the
RuntimeMethod into invokeMethod, so we can typecheck before
casting. Throw an exception on type mismatch.
* Plugins/Hosted/ProxyInstance.h:
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::PluginRuntimeMethod::PluginRuntimeMethod): new class to distinguish this type of RuntimeMethod.
(WebKit::ProxyInstance::getMethod): create an appropriate sublclass of RuntimeMethod.
(WebKit::ProxyInstance::invokeMethod): dynamically check the type of the RuntimeMethod.
2010-02-25 Alexey Proskuryakov <ap@apple.com>
Reviewed by Geoffrey Garen.
https://bugs.webkit.org/show_bug.cgi?id=35394
<rdar://problem/7685262> Make passing objects between Java and plug-ins work
Added a ProxyInstance implementation of RuntimeObject.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::addValueToArray):
* Plugins/Hosted/ProxyInstance.h:
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::newRuntimeObject):
(WebKit::ProxyInstance::getClass):
* Plugins/Hosted/ProxyRuntimeObject.h: Added.
(WebKit::ProxyRuntimeObject::classInfo):
* Plugins/Hosted/ProxyRuntimeObject.mm: Added.
(WebKit::ProxyRuntimeObject::ProxyRuntimeObject):
(WebKit::ProxyRuntimeObject::~ProxyRuntimeObject):
(WebKit::ProxyRuntimeObject::getInternalProxyInstance):
2010-02-24 Adam Barth <abarth@webkit.org>
Reviewed by Darin Fisher.
[Chromium API] Disambiguate allowJavaScript from didNotAllowScript
https://bugs.webkit.org/show_bug.cgi?id=35205
Make these two callsites explicit about not running script immediately.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::getWindowNPObject):
(WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray):
2010-02-23 Brady Eidson <beidson@apple.com>
Reviewed by Tim Hatcher and Pavel Feldman.
Regression (r55107) - WebInspector docking is busted.
https://bugs.webkit.org/show_bug.cgi?id=35274
* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController showWindow:]): Swap the order of the "should attach?" check
to get the expected behavior.
2010-02-23 Dan Bernstein <mitz@apple.com>
Reviewed by Simon Fraser.
<rdar://problem/7611158> Incomplete repaint of YouTube timeline thumb while scrolling
https://bugs.webkit.org/show_bug.cgi?id=34381
Test: fast/repaint/repaint-during-scroll.html
NSClipView offsets any rects marked as needing display during scrolling
by the scroll offset. Compensate for this when -setNeedsDisplay: is called
during scrolling.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _frameOrBoundsChanged]): Set inScrollPositionChanged to YES
around to call to FrameView::scrollPositionChanged().
(-[WebHTMLView setNeedsDisplayInRect:]): When called beneath
scrollPositionChanged(), adjust the rect by the inverse of the scroll offset.
2010-02-23 Steve Block <steveblock@google.com>
Reviewed by Darin Adler.
Adds ChromeClient::cancelGeolocationPermissionRequestForFrame
https://bugs.webkit.org/show_bug.cgi?id=34962
This method is required so that a Geolocation object can cancel an
asynchronous permission request. This allows the chrome client to cancel
any UI it is showing for the permission request.
* WebCoreSupport/WebChromeClient.h:
(WebChromeClient::cancelGeolocationPermissionRequestForFrame):
2010-02-22 Alexey Proskuryakov <ap@apple.com>
Rubber-stamped by Geoff Garen.
Rename RuntimeObjectImp to RuntimeObject.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::addValueToArray):
(WebKit::NetscapePluginInstanceProxy::retainLocalObject):
(WebKit::NetscapePluginInstanceProxy::releaseLocalObject):
2010-02-22 Brady Eidson <beidson@apple.com>
Reviewed by Tim Hatcher.
Disable WebView docking to views that are too small.
<rdar://problem/7248409> and https://bugs.webkit.org/show_bug.cgi?id=35254
* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController showWindow:]): No matter the preference, don't open the inspector
window attached if WebCore says it shouldn't be attached.
2010-02-22 Simon Fraser <simon.fraser@apple.com>
Reviewed by John Sullivan.
<rdar://problem/7285392>
On Leopard, we have to disable hardware acceleration if we detect that the
installed Core Video framework has bug <rdar://problem/7228836>.
* WebView/WebView.mm:
(coreVideoHas7228836Fix):
(-[WebView _preferencesChangedNotification:]):
2010-02-21 Dan Bernstein <mitz@apple.com>
Reviewed by Darin Adler.
False warnings about needing layout in
-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
https://bugs.webkit.org/show_bug.cgi?id=35218
* WebView/WebHTMLView.mm:
(-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
Suppress the warning and the forced layout if the view is not being drawn
in this display operation.
2010-02-21 Kevin Decker <kdecker@apple.com>
Reviewed by Sam Weinig.
plugInViewWithArguments: API sends wrong parameter for WebPlugInBaseURLKey
https://bugs.webkit.org/show_bug.cgi?id=35215
<rdar://problem/7673157>
The plugInViewWithArguments: API passes a dictionary of plugin arguments. One of the parameters
is WebPlugInBaseURLKey, which is a key that represents the base URL of the document containing
the plug-in's view. Instead of sending the base URL, code in WebFrameLoaderClient::createPlugin
would incorrectly pass the source URL of the plug-in resource.
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::createPlugin): When building the plug-in arguments dictionary, pass the
real base URL for the WebPlugInBaseURLKey key.
2010-02-19 Maciej Stachowiak <mjs@apple.com>
Reviewed by David Levin.
Add an ENABLE flag for sandboxed iframes to make it possible to disable it in releases
https://bugs.webkit.org/show_bug.cgi?id=35147
* Configurations/FeatureDefines.xcconfig:
2010-02-19 Alexey Proskuryakov <ap@apple.com>
Reviewed by Maciej Stachowiak.
https://bugs.webkit.org/show_bug.cgi?id=35132
<rdar://problem/7664353> Mouse cursor sometimes flickers over Flash content (35132)
* Plugins/WebNetscapePluginEventHandlerCarbon.mm:
(WebNetscapePluginEventHandlerCarbon::mouseMoved): Send adjustCursor events on every mouse
move. This matches Firefox, and is actually required for plug-ins to manipulate cursor wihout
resorting to techniques such as fast firing timers.
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView handleMouseEntered:]): Some plug-ins handle mouse cursor internally,
but those that don't just need to get an arrow cursor (matching Firefox). This means that
e.g. a plugin inside <A> won't get a finger mouse pointer.
* Plugins/WebHostedNetscapePluginView.mm:
(-[WebNetscapePluginView handleMouseEntered:]):
(-[WebNetscapePluginView handleMouseExited:]):
Implement this behavior here, too. Also, out of process code didn't reset mouse pointer on
mouse exit, which it needed to do.
* WebView/WebHTMLView.mm:
(needsCursorRectsSupportAtPoint):
(setCursor):
(resetCursorRects):
Make sure that the same workaround we have for Web content also applies to Netscape plug-ins,
as AppKit would reset the mouse pointer to arrow if given a chance.
(+[WebHTMLViewPrivate initialize]): Renamed setCursorIMP on Leopard and higher to prevent
confusion - the method we override is completely different.
(-[WebHTMLView hitTest:]): Added a FIXME about a likely bug.
2010-02-19 Simon Fraser <simon.fraser@apple.com>
Reviewed by Dan Bernstein.
<rdar://problem/7535894> Page contents missing from snapshot on Newsweek.com article
Followup to avoid capturing compositing layers twice in snapshots. Add private
methods to WebView to specify whether drawing the WebView into an image will
include flattened compositing layers (the default behavior) or not.
* WebView/WebFrame.mm:
(-[WebFrame _drawRect:contentsOnly:]): Consult the WebView flag to see if we
want flattening.
* WebView/WebViewPrivate.h: New methods.
* WebView/WebView.mm: Ditto.
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
(-[WebView _setIncludesFlattenedCompositingLayersWhenDrawingToBitmap:]):
(-[WebView _includesFlattenedCompositingLayersWhenDrawingToBitmap]):
* WebView/WebViewData.h: New member variable.
2010-02-19 Alexey Proskuryakov <ap@apple.com>
Reviewed by Dan Bernstein.
https://bugs.webkit.org/show_bug.cgi?id=35165
plugins/set-status.html fails on Windows bot
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::status):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView status:]):
Match Windows port behavior (and also Firefox one, in a way) - pass null status messages as
empty ones to chrome.
2010-02-18 Simon Fraser <simon.fraser@apple.com>
Reviewed by Dan Bernstein.
<rdar://problem/7535894> Page contents missing from snapshot on Newsweek.com article
Add logic to determine when painting via the software rendering path will give an equivalent
result to the accelerated compositing presentation. This tests for the presence of 3D transforms.
Also have -[WebFrame _drawRect:contentsOnly:] set the PaintBehaviorFlattenCompositingLayers
paint behavior when painting into a bitmap context, so that snapshots contain composited layers.
* WebView/WebFrame.mm:
(-[WebFrame _drawRect:contentsOnly:]): Set the PaintBehaviorFlattenCompositingLayers flag
when painting into a bitmap context.
* WebView/WebView.mm:
(-[WebView _isSoftwareRenderable]): Returns YES if all frames can be software-rendered.
* WebView/WebViewPrivate.h: New _isSoftwareRenderable method.
2010-02-18 Alexey Proskuryakov <ap@apple.com>
Reviewed by Dan Bernstein.
https://bugs.webkit.org/show_bug.cgi?id=35134
<rdar://problem/7246280> Crash when a plugin calls NPN_SetStatus(0)
Test: plugins/set-status.html
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::status):
(WebKit::NetscapePluginInstanceProxy::loadURL):
Added null checks for CFStringCreateWithCString arguments.
2010-02-17 Dmitry Titov <dimich@chromium.org>
Reviewed by David Levin, Darin Fisher, Simon Hausmann.
When a live iframe element is moved between pages, it still depends on the old page.
https://bugs.webkit.org/show_bug.cgi?id=34382
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
Added empty implementation of a new virtual method.
(WebFrameLoaderClient::didTransferChildFrameToNewDocument):
2010-02-17 Kent Tamura <tkent@chromium.org>
Reviewed by Eric Seidel.
Introduces new Icon loading interface in order to support
asynchronous loading.
https://bugs.webkit.org/show_bug.cgi?id=32054
Add an empty implementation of ChromeClient::iconForFiles().
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::iconForFiles):
2010-02-17 Timothy Hatcher <timothy@apple.com>
Add a way for WebView and its dependancies to be selectively included
in WebKitStatistics leak tracking. By default WebView is not included and
you need to subclass WebView and implement +isIncludedInWebKitStatistics
to be included.
rdar://problem/7567677&7572900
https://webkit.org/b/35045
Reviewed by Adam Roben.
* WebView/WebDataSource.mm:
(-[WebDataSource _initWithDocumentLoader:]): Increment WebDataSourceCount if the WebFrame is included in statistics.
(-[WebDataSource dealloc]): Only --WebDataSourceCount if _private->includedInWebKitStatistics is YES.
(-[WebDataSource finalize]): Ditto.
* WebView/WebFrame.mm:
(-[WebFrame _isIncludedInWebKitStatistics]): Return _private->includedInWebKitStatistics.
(-[WebFrame _initWithWebFrameView:webView:]): Increment WebFrameCount if the WebView's class is included in statistics.
(-[WebFrame dealloc]): Only --WebFrameCount if _private->includedInWebKitStatistics is YES.
(-[WebFrame finalize]): Ditto.
* WebView/WebFrameInternal.h:
* WebView/WebFrameView.mm:
(-[WebFrameView _setWebFrame:]): Increment WebFrameViewCount if the WebFrame is included in statistics.
(-[WebFrameView initWithFrame:]): Move ++WebFrameViewCount from here since we don't
know what WebFrame we belong to yet.
(-[WebFrameView dealloc]): Only --WebFrameViewCount if _private->includedInWebKitStatistics is YES.
(-[WebFrameView finalize]): Ditto.
* WebView/WebHTMLRepresentation.mm:
(-[WebHTMLRepresentation init]): Move ++WebHTMLRepresentationCount from here since we don't
know what WebFrame we belong to yet.
(-[WebHTMLRepresentation dealloc]): Only --WebHTMLRepresentationCount if _private->includedInWebKitStatistics is YES.
(-[WebHTMLRepresentation finalize]): Ditto.
(-[WebHTMLRepresentation setDataSource:]): Increment WebHTMLRepresentationCount if the WebFrame of the dataSource is
included in statistics.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
(-[WebView dealloc]):
(+[WebView shouldIncludeInWebKitStatistics]): Return NO, so any WebView wont be included.
Subclasses that care can return YES to be included.
* WebView/WebViewInternal.h:
2010-02-16 Darin Adler <darin@apple.com>
Reviewed by Sam Weinig.
Generalize delayed plug-in start for background tabs for use for other media
https://bugs.webkit.org/show_bug.cgi?id=34981
* WebView/WebHTMLView.mm:
(-[WebHTMLView viewWillMoveToWindow:]): Added comment.
(-[WebHTMLView viewDidMoveToWindow]): Ditto.
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
Call setCanStartMedia right away so that if this view is not in a window, it
will not start any media.
(-[WebView viewWillMoveToWindow:]): Call setCanStartMedia(false) when moving
to a window of nil.
(-[WebView viewDidMoveToWindow]): Call setCanStartMedia(true) when moved to
a window that is non-nil.
2010-02-16 Eric Carlson <eric.carlson@apple.com>
Reviewed by Simon Fraser.
https://bugs.webkit.org/show_bug.cgi?id=34988
WebHTMLView.mm has two -willRemoveSubview: methods
* WebView/WebHTMLView.mm:
(-[WebHTMLView willRemoveSubview:]): Consolidate the two copies of this method.
2010-02-16 Alexey Proskuryakov <ap@apple.com>
Reviewed by Geoffrey Garen and Kevin Decker.
https://bugs.webkit.org/show_bug.cgi?id=34989
<rdar://problem/7417965> Cursor disappears on scroll bars that are over plugin content
This fixes event dispatch for both Cocoa and Carbon event models (mouseEntered/mouseExited
in the former case, and adjustCursor in the latter).
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView handleMouseEntered:]):
(-[WebHostedNetscapePluginView handleMouseExited:]):
* Plugins/WebBaseNetscapePluginView.h:
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView handleMouseEntered:]):
(-[WebBaseNetscapePluginView handleMouseExited:]):
* Plugins/WebNetscapePluginView.h:
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView handleMouseEntered:]):
(-[WebNetscapePluginView handleMouseExited:]):
AppKit cannot reliably dispatch events for overlapping views. We are now asking WebCore to
notify plug-in views of mouse entered/exited as part of DOM event dispatch.
* WebCoreSupport/WebFrameLoaderClient.mm: (NetscapePluginWidget::handleEvent): Besides
mouse moved, dispatch plugin mouse entered/exit events in HTMLPlugInElement default event
handler. Other mouse events are passed down by EventHandler.
2010-02-15 Alexey Proskuryakov <ap@apple.com>
More build fixing (for what is actually a 64-bit failure, as 32-bit apparently includes
headers that aren't included in 64-bit).
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::contains):
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::get):
Move inline functions to .cpp; also made the class Noncopyable.
2010-02-15 Alexey Proskuryakov <ap@apple.com>
Mac release build fix attempt.
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::~LocalObjectMap):
Implement destructor in .cpp file, where necessary headers are already included.
2010-02-12 Alexey Proskuryakov <ap@apple.com>
Reviewed by Kevin Decker.
<rdar://problem/7130641> Browser objects identity is not preserved by Safari
Out of process part.
To avoid excessive IPC, plugin process doesn't send each NPObject release/retain call to
Safari. It only sends one when the last one is removed, and it can destroy the proxy
NPObject.
However, the browser may be sending the same object out to plug-in as a function call
argument at the same time - neither side can know what the other one is up to. The solution
is to make the "destroying object" call return a boolean result, making it possible for
the browser to make plugin host keep the proxy with zero refcount for a little longer.
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WKPCForgetBrowserObject): This function (that used to be named ReleaseObject) is only
called when plug-in releases all of its references, so renamed it. Its boolean result
is returned as call success or failure.
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap): Made the numeric ID to JSObject map
two-way.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::idForObject): This method is tricky
in that it creates objects with refcount of 1, but doesn't increase refcount when returning
found objects. This extra count accounts for the "reference" kept by plugin process.
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::retain): Only retaining for the
duration of calls out to plug-in, which means that refcount is almost always equal to 1.
Note that we can't use "++" here, due to how std::pair works!
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::release): Ditto.
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::clear): Clear all references when
stopping plug-in.
(WebKit::NetscapePluginInstanceProxy::LocalObjectMap::forget): Like release(), but only
functional when recount is 1 (meaning that the object is not being sent out to plug-in at
the moment).
(WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy): Updated for other changes.
(WebKit::NetscapePluginInstanceProxy::cleanup): Ditto.
(WebKit::NetscapePluginInstanceProxy::getWindowNPObject): Ditto.
(WebKit::NetscapePluginInstanceProxy::getPluginElementNPObject): Ditto.
(WebKit::NetscapePluginInstanceProxy::forgetBrowserObjectID): Ditto.
(WebKit::NetscapePluginInstanceProxy::evaluate): Ditto.
(WebKit::NetscapePluginInstanceProxy::invoke): Ditto.
(WebKit::NetscapePluginInstanceProxy::invokeDefault): Ditto.
(WebKit::NetscapePluginInstanceProxy::construct): Ditto.
(WebKit::NetscapePluginInstanceProxy::getProperty): Ditto.
(WebKit::NetscapePluginInstanceProxy::setProperty): Ditto.
(WebKit::NetscapePluginInstanceProxy::removeProperty): Ditto.
(WebKit::NetscapePluginInstanceProxy::hasProperty): Ditto.
(WebKit::NetscapePluginInstanceProxy::hasMethod): Ditto.
(WebKit::NetscapePluginInstanceProxy::enumerate): Ditto.
(WebKit::NetscapePluginInstanceProxy::addValueToArray): Ditto.
(WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray): Ditto.
(WebKit::NetscapePluginInstanceProxy::retainLocalObject): Helper for calling retain when
making calls out to plug-in. No-op for objects that aren't wrapped to be sent (i.e. for
objects wrapping ProxyInstance wrappers for plug-in objects being sent bak).
(WebKit::NetscapePluginInstanceProxy::releaseLocalObject): Ditto.
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::invoke): Retain/release arguments during call.
(WebKit::ProxyInstance::setFieldValue): Ditto.
* Plugins/Hosted/WebKitPluginClient.defs: Renamed PCReleaseObject to PCForgetBrowserObject.
2010-02-12 Darin Adler <darin@apple.com>
Reviewed by Sam Weinig.
Removed unneeded custom implementation of isDescendantOf.
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView shouldClipOutPlugin]): Use the
-[NSView isDescendantOf:] method instead of our own method
named superviewsHaveSuperviews.
2010-02-12 Dan Bernstein <mitz@apple.com>
Reviewed by Darin Adler.
<rdar://problem/7615234> REGRESSION (r48586): Loading an HTML page causes
PDFKit to be loaded
* WebView/WebPDFDocumentExtras.h: Removed the category declaration and
addWebPDFDocumentExtras(). Declare allScriptsInPDFDocument().
* WebView/WebPDFDocumentExtras.mm:
(allScriptsInPDFDocument): Changed the -_web_allScripts method into this function.
* WebView/WebPDFRepresentation.mm: Removed +initialize.
(-[WebPDFRepresentation finishedLoadingWithDataSource:]): Use
allScriptsInPDFDocument() instead of -_web_allScripts.
2010-02-10 Geoffrey Garen <ggaren@apple.com>
Reviewed by Oliver Hunt.
Exported some new JavaScript heap introspection.
* Misc/WebCoreStatistics.h:
* Misc/WebCoreStatistics.mm:
(+[WebCoreStatistics javaScriptObjectTypeCounts]): Just like
javaScriptProtectedObjectTypeCounts, except this function enumerates all
live objects, not just protected objects.
2010-02-08 Maciej Stachowiak <mjs@apple.com>
Reviewed by Cameron Zwarich.
Restore ENABLE_RUBY flag so vendors can ship with Ruby disabled if they choose.
https://bugs.webkit.org/show_bug.cgi?id=34698
* Configurations/FeatureDefines.xcconfig:
2010-02-09 Alexey Proskuryakov <ap@apple.com>
Reviewed by Geoffrey Garen.
https://bugs.webkit.org/show_bug.cgi?id=34490
WebCore::ImageEventSender::dispatchPendingEvents() crashes in certain conditions
* ForwardingHeaders/wtf/ValueCheck.h: Added.
2010-02-10 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>
Reviewed by Kenneth Rohde Christiansen.
Support frameset flattening
https://bugs.webkit.org/show_bug.cgi?id=32717
Add support for enabling/disabling FrameSet Flattening on the Mac port.
* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences isFrameSetFlatteningEnabled]):
(-[WebPreferences setFrameSetFlatteningEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChangedNotification:]):
2010-02-09 Alexey Proskuryakov <ap@apple.com>
Reviewed by Anders Carlsson.
https://bugs.webkit.org/show_bug.cgi?id=34771
A stray mouse moved event is sent to plug-ins after mouse exit
* WebCoreSupport/WebFrameLoaderClient.mm: (NetscapePluginWidget::handleEvent): A mouseout
DOM event is dispatched while handling NSMouseMoved - but we shouldn't be sending a
mouse moved event to plug-ins at this point.
2010-02-09 Shinichiro Hamaji <hamaji@chromium.org>
Reviewed by Darin Adler.
Provide a way to get total number of pages to be printed
https://bugs.webkit.org/show_bug.cgi?id=34699
* Misc/WebCoreStatistics.h:
* Misc/WebCoreStatistics.mm:
(-[WebFrame numberOfPages:pageWidthInPixels:]):
2010-02-08 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
https://bugs.webkit.org/show_bug.cgi?id=34727
Assertion crashes and freezes when plug-in property access results in an exception
* Plugins/Hosted/WebKitPluginClient.defs: Made PCSetProperty and PCRemoveProperty async.
A plug-in can call back whil processing this call (e.g. for NPN_SetException), so we need
to listen for messages while waiting for reply.
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WKPCEvaluate): If there is no instance proxy, return KERN_FAILURE. This improves consistency
between method implementations, and leaves us with one less IPC call to make in failure case
(returning false with KERN_SUCCESS and returning KERN_FAILURE looks the same from plugin
host code).
(WKPCInvoke): Ditto.
(WKPCInvokeDefault): Ditto.
(WKPCGetProperty): Ditto.
(WKPCSetProperty): Send a reply once done.
(WKPCRemoveProperty): Ditto.
(WKPCHasProperty): If there is no instance proxy, return KERN_FAILURE.
(WKPCHasMethod): Ditto.
(WKPCEnumerate): Ditto.
2010-02-08 Alexey Proskuryakov <ap@apple.com>
Reviewed by Anders Carlsson.
<rdar://problem/6530010> OOP: Support NPN_SetException
Tested by plugins/netscape-throw-exception.html (removed it from skipped list).
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WKPCSetException):
* Plugins/Hosted/NetscapePluginInstanceProxy.h:
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::globalExceptionString):
(WebKit::NetscapePluginInstanceProxy::setGlobalException):
(WebKit::NetscapePluginInstanceProxy::moveGlobalExceptionToExecState):
* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::invoke):
(WebKit::ProxyInstance::getPropertyNames):
(WebKit::ProxyInstance::fieldValue):
(WebKit::ProxyInstance::setFieldValue):
* Plugins/Hosted/WebKitPluginClient.defs:
Route exception string to a global that's checked after calling into plug-in (just like in
in-process case).
2010-02-05 Kevin Decker <kdecker@apple.com>
Reviewed by Mark Rowe.
https://bugs.webkit.org/show_bug.cgi?id=34661
<rdar://problem/7614067> REGRESSION (Safari 4.0-> Safari 4.0.4): NPP_SetWindow no longer sets a clipRect of (0,0,0,0) when it becomes hidden
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView updateAndSetWindow]): When clipping out NPDrawingModelCoreAnimation plug-ins, provide a zero'd out clipRect.
* Plugins/WebBaseNetscapePluginView.h: Moved superviewsHaveSuperviews to the base class.
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView superviewsHaveSuperviews]): Added to the base class; extracted from WebNetscapePluginView.
(-[WebBaseNetscapePluginView shouldClipOutPlugin]): Added new method with code extracted from WebNetscapePluginView.
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]): When clipping out NPDrawingModelCoreAnimation plug-ins, provide a zero'd out clipRect.
2010-02-04 Mark Rowe <mrowe@apple.com>
Rubber-stamped by Dan Bernstein.
Fix the ability to #include <WebKit/DOMFile.h>.
* MigrateHeaders.make: Mark DOMBlob.h as a public header since the already-public DOMFile.h depends on it.
2010-02-04 John Sullivan <sullivan@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=34611
WebLocalizedString() could use an assertion that it is being called on the main thread
Reviewed by Tim Hatcher.
* Misc/WebLocalizableStrings.m: Removed.
* Misc/WebLocalizableStrings.mm: Copied from mac/Misc/WebLocalizableStrings.m.
Renamed to use .mm extension so it can include a C++ header.
(WebLocalizedString):
Added an assertion that this is being called on the main thread.
2010-02-04 Dan Bernstein <mitz@apple.com>
Reviewed by Simon Fraser.
REGRESSION (r53718): When scrolling a tall window by page, the overlap between pages is too big
https://bugs.webkit.org/show_bug.cgi?id=34371
* WebView/WebFrameView.mm:
(-[WebFrameView _verticalPageScrollDistance]): Use Scrollbar methods instead of
constants, and cap the scroll distance.
(-[WebFrameView initWithFrame:]): Use Scrollbar::pixelsPerLineStep() instead of
cScrollbarPixelsPerLineStep.
(-[WebFrameView _horizontalPageScrollDistance]):Use Scrollbar methods instead of
constants, and cap the scroll distance.
2010-02-01 Shinichiro Hamaji <hamaji@chromium.org>
Reviewed by Eric Seidel.
Provide a way to get page number with layoutTestController
https://bugs.webkit.org/show_bug.cgi?id=33840
* Misc/WebCoreStatistics.h:
* Misc/WebCoreStatistics.mm:
(-[WebFrame pageNumberForElement:element:pageWidth:]):
2010-01-29 Gavin Barraclough <barraclough@apple.com>
Reviewed by Sam Weinig + Oliver Hunt.
Bug 34346 - With JSC bindings, make processingUserGesture work with events in Isolated Worlds
Pass processeing user gensture flag to media play/pause methods.
* WebView/WebVideoFullscreenHUDWindowController.mm:
(-[WebVideoFullscreenHUDWindowController setPlaying:]):
2010-02-01 Dan Bernstein <mitz@apple.com>
Reviewed by Anders Carlsson.
<rdar://problem/7044385> Crash at NetscapePlugInStreamLoader::didReceiveResponse()
The crash was caused by having two streams with a streamID of 1.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy): Fixed a typo. Now
correctly increments m_currentURLRequestID to account for the manual stream.
(WebKit::NetscapePluginInstanceProxy::disconnectStream): If the stream is the manual stream,
null it out instead of trying to remove it from the map. Added an assertion.
(WebKit::NetscapePluginInstanceProxy::loadRequest): Added an assertion.
== Rolled over to ChangeLog-2010-01-29 ==